docs: public static <E, T extends Comparable<? super T>> List<E> sortBy(final Iterable<E> iterable,
          final Function<E, T> func) {
          final List<E> sortedList = newArrayList(iterable);
          Collections.sort(sortedList, new Comparator<E>() {
              @Override
              public int compare(E o1, E o2) {
                  return func.apply(o1).compareTo(func.apply(o2));
              }
          });
          return sortedList;
      }