dynEnv.setFocus(focus); // change focus
Sequence cond = predicate.eval(it, dynEnv);
dynEnv.setFocus(baseFocus);
// workaround for fn:last()
dynEnv.popSequence();
if(cond instanceof XInteger) { // positional filtering
final long pos = ((XInteger) cond).getValue();
if(curidx == pos) {
return true;