switched to C++