And use boost to keep dependencies straightforward, because not all c++ versions have unordered map yet