finished c++ 1