static IterableIterator dropLastFromIterator(Iterator it) { ret iteratorFF(new F0 { A a, b; O get() { if (!it.hasNext()) } }); }