added c++ communication