added C++ reference