preserve parameterized type argument information when a collection is used for keys of a map