no need for C++11 features