cpp-gd