Use std::map instead of std::unordered_map