Each line is of the form

   DATE; AUTHOR; STATE; REVISION (BRANCHES) (TAGS) PATH

The lines are sorted and lazily divided into commit groups.  (There
may be more commits than listed here, since the log messages were not
included, but those will come out in the wash as we verify the
output.)  Comments and problems are noted in "[]" brackets at the end
of each commit group.

Here we go:

*** end rev 0 ***

93.06.18.05.46.07;  jrandom;  Exp;  1.1 () () full-prune/Attic/first
93.06.18.05.46.07;  jrandom;  Exp;  1.1 () () full-prune-reappear/sub/Attic/first
93.06.18.05.46.07;  jrandom;  Exp;  1.1 () () partial-prune/sub/Attic/first

*** end rev 1 ***

93.06.18.05.46.08;  jrandom;  Exp;  1.1.1.1 () () full-prune/Attic/first
93.06.18.05.46.08;  jrandom;  Exp;  1.1.1.1 () () full-prune-reappear/sub/Attic/first
93.06.18.05.46.08;  jrandom;  Exp;  1.1.1.1 () () partial-prune/sub/Attic/first

    [Notes: these files had no 'vendortag' symbol for 1.1.1.1,
     so they go in an unlabeled branch.]

*** end rev 2 ***

94.06.18.05.46.08;  jrandom;  Exp;  1.1 () () partial-prune/permanent

*** end rev 3 ***

94.06.18.05.46.08;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) partial-prune/permanent

*** end rev 4 ***

95.03.31.07.44.01;  jrandom;  Exp;  1.1 () () full-prune/Attic/second
95.03.31.07.44.01;  jrandom;  Exp;  1.1 () () full-prune-reappear/sub/Attic/second
95.03.31.07.44.01;  jrandom;  Exp;  1.1 () () partial-prune/sub/Attic/second

*** end rev 5 ***

95.03.31.07.44.02;  jrandom;  Exp;  1.1.1.1 () () full-prune/Attic/second
95.03.31.07.44.02;  jrandom;  Exp;  1.1.1.1 () () full-prune-reappear/sub/Attic/second
95.03.31.07.44.02;  jrandom;  Exp;  1.1.1.1 () () partial-prune/sub/Attic/second
   [Again, these files had no 'vendortag' symbol for 1.1.1.1,
    so they go in an unlabeled branch.]

*** end rev 6 ***

95.12.11.00.27.53;  jrandom;  dead;  1.2 () () full-prune/Attic/first
95.12.11.00.27.53;  jrandom;  dead;  1.2 () () full-prune-reappear/sub/Attic/first
95.12.11.00.27.53;  jrandom;  dead;  1.2 () () partial-prune/sub/Attic/first

*** end rev 7 ***

95.12.30.18.37.22;  jrandom;  dead;  1.3 () () full-prune/Attic/first
95.12.30.18.37.22;  jrandom;  dead;  1.3 () () full-prune-reappear/sub/Attic/first
95.12.30.18.37.22;  jrandom;  dead;  1.3 () () partial-prune/sub/Attic/first

   [Note: If we change the behavior whereby redeletion causes an empty
    revision, then the numbering from here on may shift back by 1.]

*** end rev 8 (no-op, because redeletions) ***

96.08.20.23.53.47;  jrandom;  dead;  1.2 () () full-prune/Attic/second
96.08.20.23.53.47;  jrandom;  dead;  1.2 () () full-prune-reappear/sub/Attic/second
96.08.20.23.53.47;  jrandom;  dead;  1.2 () () partial-prune/sub/Attic/second

   [Note that the removal of these files causes pruning of directories
    higher up.  See also note in rev 8 about possible renumbering.]

*** end rev 9 ***

2002.09.29.00.00.00;  jrandom;  Exp;  1.1 () () single-files/twoquick

*** end rev 10 ***

2002.09.29.00.00.01;  jrandom;  Exp;  1.2 () (after) single-files/twoquick

*** end rev 11 ***

2002.11.30.19.27.42;  jrandom;  Exp;  1.1 () () single-files/space fname

*** end rev 12 ***

2002.11.30.19.27.42;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) single-files/space fname

*** end rev 13 ***

2003.01.25.13.43.57;  jrandom;  Exp;  1.1 () () single-files/attr-exec

*** end rev 14 ***

2003.01.25.13.43.57;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) single-files/attr-exec

*** end rev 15 ***

2003.05.22.23.20.19;  jrandom;  Exp;  1.1 () () proj/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1 () () proj/sub1/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1 () () proj/sub1/subsubA/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1 () () proj/sub1/subsubB/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1 () () proj/sub2/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1 () (T_MIXED) proj/sub2/subsubA/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1 () () proj/sub3/default

*** end rev 16 ***

2003.05.22.23.20.19;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag, T_ALL_INITIAL_FILES, T_ALL_INITIAL_FILES_BUT_ONE) proj/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag, T_ALL_INITIAL_FILES, T_ALL_INITIAL_FILES_BUT_ONE) proj/sub1/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag, T_ALL_INITIAL_FILES, T_ALL_INITIAL_FILES_BUT_ONE) proj/sub1/subsubA/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag, T_ALL_INITIAL_FILES) proj/sub1/subsubB/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag, T_ALL_INITIAL_FILES, T_ALL_INITIAL_FILES_BUT_ONE) proj/sub2/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag, T_ALL_INITIAL_FILES, T_ALL_INITIAL_FILES_BUT_ONE) proj/sub2/subsubA/default
2003.05.22.23.20.19;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag, T_ALL_INITIAL_FILES, T_ALL_INITIAL_FILES_BUT_ONE) proj/sub3/default

*** end rev 17 ***

2003.05.23.00.15.26;  jrandom;  Exp;  1.2 () () proj/sub1/subsubA/default
2003.05.23.00.15.26;  jrandom;  Exp;  1.2 () (T_MIXED) proj/sub3/default

*** end rev 18 ***

2003.05.23.00.17.53;  jrandom;  Exp;  1.2 () (T_MIXED) proj/default
2003.05.23.00.17.53;  jrandom;  Exp;  1.2 () (T_MIXED) proj/sub1/default
2003.05.23.00.17.53;  jrandom;  Exp;  1.2 () (T_MIXED) proj/sub1/subsubB/default
2003.05.23.00.17.53;  jrandom;  Exp;  1.2 () (T_MIXED) proj/sub2/default
2003.05.23.00.17.53;  jrandom;  Exp;  1.2 () () proj/sub2/subsubA/default
2003.05.23.00.17.53;  jrandom;  Exp;  1.3 () (T_MIXED) proj/sub1/subsubA/default
2003.05.23.00.17.53;  jrandom;  Exp;  1.3 () () proj/sub3/default

*** end rev 19 ***

2003.05.23.00.25.26;  jrandom;  dead;  1.1 () () proj/sub2/Attic/branch_B_MIXED_only
2003.05.23.00.25.26;  jrandom;  Exp;  1.1.2.1 (B_MIXED) () proj/sub2/Attic/branch_B_MIXED_only

   [Okay, problem: This revision creates branch B_MIXED, by copying
   revision 19 of trunk.  But it fails to recopy 'proj/sub3/default'
   and 'proj/sub2/subsubA/default' from some revision earlier than
   19, which it needs to do because in those files, B_MIXED sprouts
   from 1.2 and 1.1 respectively, not 1.3 and 1.2 (the latter being
   what you get if you just copy from revision 19).  This means that
   the contents of those files are wrong in branches/B_MIXED/'s first
   incarnation.  Even if they get fixed up in some later revision,
   there is still a period of wrongness.]

*** end rev 20 ***

2003.05.23.00.31.36;  jrandom;  Exp;  1.1.2.1 (B_MIXED) () proj/sub2/subsubA/default
2003.05.23.00.31.36;  jrandom;  Exp;  1.2.2.1 (B_MIXED) () proj/default
2003.05.23.00.31.36;  jrandom;  Exp;  1.2.2.1 (B_MIXED) () proj/sub1/default

*** end of tentative commit group X ***

2003.05.23.00.48.51;  jrandom;  Exp;  1.1.2.2 (B_MIXED) () proj/sub2/Attic/branch_B_MIXED_only
2003.05.23.00.48.51;  jrandom;  Exp;  1.3 () () proj/sub2/default

*** end of tentative commit group X ***

2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/1
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/2
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/3
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/4
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/5
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/a
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/b
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/c
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/d
2003.05.24.01.02.01;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) interleaved/e

*** end of tentative commit group X ***

2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/1
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/2
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/3
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/4
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/5
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/a
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/b
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/c
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/d
2003.05.24.01.02.01;  jrandom;  Exp;  1.1 () () interleaved/e

*** end of tentative commit group X ***

2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/1
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/2
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/3
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/4
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/5
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/a
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/b
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/c
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/d
2003.06.03.00.20.01;  jrandom;  Exp;  1.2 () () interleaved/e

*** end of tentative commit group X ***

2003.06.03.03.20.31;  jrandom;  Exp;  1.2.2.1 (B_SPLIT) () proj/sub2/subsubA/default
2003.06.03.03.20.31;  jrandom;  Exp;  1.2.4.1 (B_SPLIT) () proj/default
2003.06.03.03.20.31;  jrandom;  Exp;  1.2.4.1 (B_SPLIT) () proj/sub1/default
2003.06.03.03.20.31;  jrandom;  Exp;  1.3.2.1 (B_SPLIT) () proj/sub2/default
2003.06.03.03.20.31;  jrandom;  Exp;  1.3.4.1 (B_SPLIT) () proj/sub1/subsubA/default

*** end of tentative commit group X ***

2003.06.03.04.29.14;  jrandom;  Exp;  1.3 () () proj/sub1/subsubB/default
2003.06.03.04.33.13;  jrandom;  Exp;  1.3.2.1 (B_SPLIT) () proj/sub1/subsubB/default
2003.06.03.04.33.13;  jrandom;  Exp;  1.3.2.1 (B_SPLIT) () proj/sub3/default

*** end of tentative commit group X ***

2003.06.10.20.19.48;  jrandom;  Exp;  1.1.1.1 (vendorbranch) (vendortag) full-prune-reappear/appears-later
2003.06.10.20.19.48;  jrandom;  Exp;  1.1 () () full-prune-reappear/appears-later

*** end of tentative commit group X ***
