Flying pigeon source code C++ implementation