@Contract(value = "!null -> param1", pure = true)
  public @NotNull <T> T notNullize(@Nullable T value) {
    if (value == null) {
      return fakeNull();
    }
    else {
      return value;
    }
  }
@Contract(value = "!null -> param1", pure = true)
  public @NotNull <T> T notNullize(@Nullable T value)