docs: public static <T> Collection<T> tail(Iterable<T> self) {
          if (!self.iterator().hasNext()) {
              throw new NoSuchElementException("Cannot access tail() for an empty iterable");
          }
          Collection<T> result = createSimilarCollection(self);
          addAll(result, tail(self.iterator()));
          return result;
      }