docs: public static <K, V> V getOrPutGetNew(Map<K, V> map, K key,
              Supplier<V> newValueSupplier) {
          synchronized (map) {
              return map.computeIfAbsent(key, k -> newValueSupplier.get());
          }
      }