private static <I, O> O convert(I object, @NotNull Function<? super I, ? extends O> converter) {
    return object == null ? null : converter.apply(object);
  }
private static <I, O> O convert(I object, @NotNull Function<? super I, ? extends O> converter)