enable c++11 to use std::unordered_map