Once again this looks like a good candidate for a BiMap? Or is there some reason you're ordering allStates?