docs: public static <T, R> Iterable<R> map(final Iterable<T> iterable, final IFunction<T, R> mapper) {
          return new Iterable<R>() {
              @Override
              public Iterator<R> iterator() {
                  return map(iterable.iterator(), mapper);
              }
          };
      }