code: public static <T> CloseableIterator<T> filter(final CloseableIterator<T> iterator, final Predicate<T> filter) {
          return wrap(Iterators.filter(iterator, filter::test), iterator);
      }
docs: Returns the elements of {@code unfiltered} that satisfy a predicate.