public Iterator<? extends Person> iterator(int first, int count) {
if(this.state == null || this.state.getSort() == null) {
return super.iterator(first, count);
} else {
SortParam sort = this.state.getSort();
SortInfo sortInfo = new SortInfo(sort.getProperty(), sort.isAscending()? SortOrder.asc: SortOrder.desc);
if(sortInfo != null)
QueryUtils.sortList(persons, sortInfo);
int toIndex = first + count;
if (toIndex > persons.size())
{