code: @SuppressWarnings({"unchecked", "rawtypes"})
    private static <K, V> ImmutableMap<K, V> copyOfEnumMapUnsafe(Map<? extends K, ? extends V> map) {
      return copyOfEnumMap((EnumMap) map);
    }
docs: If the map is an EnumMap, it must have key type K for some <K extends Enum<K>>.