@NotNull
  public static <V> ListSelection<V> createAt(@NotNull List<? extends V> list, int selectedIndex) {
    if (list.contains(null)) {
      LOG.error("List selection should not contain nulls");
    }
    return new ListSelection<>(list, selectedIndex);
  }
@NotNull
  public static <V> ListSelection<V> createAt(@NotNull List<? extends V> list, int selectedIndex)