C++ part is done (without tests)