throws EvaluationException {
Object result;
try {
JSPList leftSide =
Convert.toJSPList(((Introspectable) jjtGetChild(0))
.evaluate(pageContext, icontext, parent));
Predicate predicate = (Predicate) jjtGetChild(1);
boolean oneItem = leftSide.applyPredicate(pageContext, predicate);
if (oneItem) {
if (leftSide.getLast() == 1) {
result = leftSide.next();
} else {
result = null;
}
} else {
result = leftSide;