initial commit for 10031
copy from 10030
accepted in C++11