optimized speed, removed std::stringstream