added a TypedMap class.