SequenceIterator forwards = operand.iterate(context);
if ((forwards.getProperties() & SequenceIterator.GROUNDED) != 0) {
ValueRepresentation repr = ((GroundedIterator)forwards).materialize();
Value val = Value.asValue(repr);
int length = val.getLength();
return val.itemAt(length - 1);
} else {
Item current = null;
while (true) {
Item item = forwards.next();
if (item == null) {