improve new c++ client