Changed to std::map