code: public <T> ResultSetIterable<T> executeAndFetchLazy(final ResultSetHandlerFactory<T> resultSetHandlerFactory) {
          final Quirks quirks = getConnection().getSql2o().getQuirks();
          return new ResultSetIterableBase<T>() {
              public Iterator<T> iterator() {
                  return new PojoResultSetIterator<>(rs, isCaseSensitive(), quirks, resultSetHandlerFactory);
              }
          };
      }
docs: Read a collection lazily. Generally speaking, this should only be used if you are reading MANY
  results and keeping them all in a Collection would cause memory issues. You MUST call
  {@link org.sql2o.ResultSetIterable#close()} when you are done iterating.
  
  @param resultSetHandlerFactory factory to provide ResultSetHandler
  @return iterable results