add GP.cpp