add code and CMakeLists.txt.