don't use HashMap, just use Map.