sclass AllOnAll { new L aList; new L bList; new LPair, L> todo; void newA(A a) { add(aList, a); addPair(todo, ll(a), cloneList(bList)); } void newB(B b, long date) { add(bList, b); addPair(todo, cloneList(aList), ll(b)); } }