public static @NotNull <T, V> ConcurrentMap<T, V> createMap(final @NotNull Function<? super T, ? extends V> computeValue) {
    return new ConcurrentFactoryMap<T, V>() {
      @Override
      protected @Nullable V create(T key) {
        return computeValue.fun(key);
      }
    };
  }
public static @NotNull <T, V> ConcurrentMap<T, V> createMap(final @NotNull Function<? super T, ? extends V> computeValue)