public <T> Object @NotNull [] createVariants(Collection<? extends T> elements, Function<? super T, String> namer) {
    return createVariants(elements, namer, 0);
  }
public <T> Object @NotNull [] createVariants(Collection<? extends T> elements, Function<? super T, String> namer)