code: public static <T> CloseableIterable<T> limit(final CloseableIterable<T> iterable, final int limitSize) {
          return wrap(Iterables.limit(iterable, limitSize), iterable);
      }
docs: Creates a closeable iterable with the first {@code limitSize} elements of the given
  closeable iterable. If the original closeable iterable does not contain that many
  elements, the returned iterator will have the same behavior as the original
  closeable iterable. The returned closeable iterable's iterator supports {@code remove()}
  if the original iterator does.