Cpp Providers