sclass AllOnAll<A, B> {
  new L<A> aList;
  new L<B> bList;
  new LPair<L<A>, L<B>> 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));
  }
}