code: @Override
  	public Iterator<? extends T> iterator(final long first, final long count)
  	{
  		List<T> ret = new ArrayList<>(filter(sort()));
  		if (ret.size() > (first + count))
  		{
  			ret = ret.subList((int)first, (int)first + (int)count);
  		}
  		else
  		{
  			ret = ret.subList((int)first, ret.size());
  		}
  		return ret.iterator();
  	}
docs: {@inheritDoc}