initial commit for 10027
accepted in C++11