Why are these members useful? (`keyType` and `valueType`)