removed c++11 requirement