sclass AllOnAllWithOperation extends AllOnAll implements Steppable { swappable void operation(A a, B b) {} *() {} *(IVF2 *operation) {} public bool step() { Pair p = next(); if (p == null) false; operation(p.a, p.b); true; } }