@Contract(pure = true)
  public static @Unmodifiable @NotNull <T, TT extends T> List<T> sorted(@NotNull Collection<TT> list, @NotNull Comparator<? super TT> comparator) {
    return sorted((Iterable<TT>)list, comparator);
  }
@Contract(pure = true)
  public static @Unmodifiable @NotNull <T, TT extends T> List<T> sorted(@NotNull Collection<TT> list, @NotNull Comparator<? super TT> comparator)