static LPair filterPairA(Iterable> c, O pred) { new LPair x; if (c != null) for (Pair p : c) if (p != null && isTrue(callF(pred, p.a))) x.add(p); ret x; } static LPair lambdaMapLike filterPairA(IF1 pred, Iterable> c) { ret filterPairA(c, pred); } static LPair lambdaMapLike filterPairA(Iterable> c, IF1 pred) { ret filterPairA(c, (O) pred); }