@Override
  public V get(@NotNull Object key) {
    HardKey<K,V> hardKey = createHardKey(key);
    try {
      ValueReference<K, V> valueReference = myMap.get(hardKey);
      return valueReference == null ? null : valueReference.get();
    }
    finally {
      hardKey.clear();
    }
  }
@Override
  public V get(@NotNull Object key)