private static void mycrossi(IntSeq i1, IntSeq i2) {
        IntSeqIt ii1 = new IntSeqIt(i1);
        boolean first = true;
        while ( ii1.hasNext() ) {
            try {
                int p1 = ii1.next();
                IntSeqIt ii2 = new IntSeqIt(i2);
                while ( ii2.hasNext() ) {
                    int p2 = ii2.next();
                    if ( first ) {
                        first = false;
                        System.out.println();
                    }
                    System.out.println("   " + p1 + " " + p2);
                }
     }
            catch (UsingIteratorPastEndException e) {
                System.out.println("mycrossi oops! caught UsingIteratorPastEndException");
            }
        }
    }