docs: public static Map createMap(Class<?> mapType, int initialCapacity) {
  		if (mapType.isInterface()) {
  			if (Map.class.equals(mapType)) {
  				return new LinkedHashMap(initialCapacity);
  			}
  			else if (SortedMap.class.equals(mapType) || mapType.equals(navigableMapClass)) {
  				return new TreeMap();
  			}
  			else if (MultiValueMap.class.equals(mapType)) {
  				return new LinkedMultiValueMap();
  			}
  			else {
  				throw new IllegalArgumentException("Unsupported Map interface: " + mapType.getName());
  			}
  		}
  		else {
  			if (!Map.class.isAssignableFrom(mapType)) {
  				throw new IllegalArgumentException("Unsupported Map type: " + mapType.getName());
  			}
  			try {
  				return (Map) mapType.newInstance();
  			}
  			catch (Exception ex) {
  				throw new IllegalArgumentException("Could not instantiate Map type: " +
  						mapType.getName(), ex);
  			}
  		}
  	}