@Contract(value = "_,_,_,_-> new", pure = true)
  public static @NotNull <K, V> ConcurrentMap<@NotNull K, @NotNull V> createConcurrentSoftMap(int initialCapacity,
                                                                                     float loadFactor,
                                                                                     int concurrencyLevel,
                                                                                     @NotNull HashingStrategy<? super K> hashingStrategy) {
    return new ConcurrentSoftHashMap<>(initialCapacity, loadFactor, concurrencyLevel, hashingStrategy);
  }
@Contract(value = "_,_,_,_-> new", pure = true)
  public static @NotNull <K, V> ConcurrentMap<@NotNull K, @NotNull V> createConcurrentSoftMap(int initialCapacity,
                                                                                     float loadFactor,
                                                                                     int concurrencyLevel,
                                                                                     @NotNull HashingStrategy<? super K> hashingStrategy)