static ItIt> iteratelistWithIndex(Cl l) { ret iff(new O { Iterator it = iterator(l); int i; public O get() { if (!it.hasNext()) ret endMarker(); ret pair(i++, it.next()); } }); }