static A nextToLastThat(L l, O pred) { int found = 0; for (int i = l(l)-1; i >= 0; i--) { A a = l.get(i); if (checkCondition(pred, a)) if (++found >= 2) ret a; } null; } static A mapLike nextToLastThat(O pred, L l) { ret nextToLastThat(l, pred); }