+ avoid  std::string->C-string->std::string round trip