deprecating C++ implementation