(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:test_description)
          op: assign_op.Equal
          rhs: 
            {
              (SQ (Token id:Id.Lit_Chars val:'test parsing of svndiff0 files\n' span_id:6) 
                (Token id:Id.Lit_Chars val:'\n' span_id:7) 
                (Token
                  id: Id.Lit_Chars
                  val: 'Using the "test-svn-fe -d" helper, check that svn-fe correctly\n'
                  span_id: 8
                ) 
                (Token
                  id: Id.Lit_Chars
                  val: 'interprets deltas using various facilities (some from the spec,\n'
                  span_id: 9
                ) (Token id:Id.Lit_Chars val:'some only learned from practice).\n' span_id:10)
              )
            }
          spids: [4]
        )
      ]
    )
    (C {(.)} {(./test-lib.sh)})
    (command.Simple
      redirects: [
        (redir.Redir op:(Token id:Id.Redir_Great val:'>' span_id:18) fd:-1 arg_word:{(empty)})
      ]
    )
    (command.Simple
      words: [{(printf)} {(foo)}]
      redirects: [
        (redir.Redir
          op: (Token id:Id.Redir_Great val:'>' span_id:25)
          fd: -1
          arg_word: {(preimage)}
        )
      ]
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'reject empty delta' span_id:32))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:36) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage empty 0\n'
            span_id: 37
          )
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'delta can empty file' span_id:44))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:48) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ" | q_to_nul >clear.delta &&\n'
            span_id: 49
          ) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage clear.delta 4 >actual &&\n' span_id:50) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp empty actual\n' span_id:51)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'reject svndiff2' span_id:58))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:62) 
          (Token id:Id.Lit_Chars val:'\tprintf "SVN\\002" >bad.filetype &&\n' span_id:63) (Token id:Id.Lit_Chars val:'\ttest_must_fail test-svn-fe -d preimage bad.filetype 4\n' span_id:64)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'one-window empty delta' span_id:71))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:75) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%s" "QQQQQ" | q_to_nul >clear.onewindow &&\n'
            span_id: 76
          ) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage clear.onewindow 9 >actual &&\n' span_id:77) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp empty actual\n' span_id:78)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'reject incomplete window header' span_id:85))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:89) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%s" "QQQQQ" | q_to_nul >clear.onewindow &&\n'
            span_id: 90
          ) (Token id:Id.Lit_Chars val:'\tprintf "SVNQ%s" "QQ" | q_to_nul >clear.partialwindow &&\n' span_id:91) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.onewindow 6 &&\n'
            span_id: 92
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.partialwindow 6\n'
            span_id: 93
          )
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'reject declared delta longer than actual delta' span_id:100))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:104) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%s" "QQQQQ" | q_to_nul >clear.onewindow &&\n'
            span_id: 105
          ) (Token id:Id.Lit_Chars val:'\tprintf "SVNQ%s" "QQ" | q_to_nul >clear.partialwindow &&\n' span_id:106) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.onewindow 14 &&\n'
            span_id: 107
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.partialwindow 9\n'
            span_id: 108
          )
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'two-window empty delta' span_id:115))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:119) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%s%s" "QQQQQ" "QQQQQ" | q_to_nul >clear.twowindow &&\n'
            span_id: 120
          ) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage clear.twowindow 14 >actual &&\n' span_id:121) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.twowindow 13 &&\n'
            span_id: 122
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp empty actual\n' span_id:123)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'noisy zeroes' span_id:130))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:134) 
          (Token id:Id.Lit_Chars val:'\tprintf "SVNQ%s" \\\n' span_id:135) 
          (Token
            id: Id.Lit_Chars
            val: '\t\t"RRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRRQQQQQ" |\n'
            span_id: 136
          ) (Token id:Id.Lit_Chars val:'\t\ttr R "\\200" |\n' span_id:137) 
          (Token id:Id.Lit_Chars val:'\t\tq_to_nul >clear.noisy &&\n' span_id:138) (Token id:Id.Lit_Chars val:'\tlen=$(wc -c <clear.noisy) &&\n' span_id:139) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest-svn-fe -d preimage clear.noisy $len &&\n'
            span_id: 140
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp empty actual\n' span_id:141)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'reject variable-length int in magic' span_id:148))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:152) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNRQ" | tr R "\\200" | q_to_nul >clear.badmagic &&\n'
            span_id: 153
          ) (Token id:Id.Lit_Chars val:'\ttest_must_fail test-svn-fe -d preimage clear.badmagic 5\n' span_id:154)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'reject truncated integer' span_id:161))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:165) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%s%s" "QQQQQ" "QQQQRRQ" |\n'
            span_id: 166
          ) (Token id:Id.Lit_Chars val:'\t\ttr R "\\200" |\n' span_id:167) 
          (Token id:Id.Lit_Chars val:'\t\tq_to_nul >clear.fullint &&\n' span_id:168) (Token id:Id.Lit_Chars val:'\tprintf "SVNQ%s%s" "QQQQQ" "QQQQRR" |\n' span_id:169) 
          (Token id:Id.Lit_Chars val:'\t\ttr RT "\\201" |\n' span_id:170) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >clear.partialint &&\n' span_id:171) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.fullint 15 &&\n'
            span_id: 172
          ) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage clear.fullint 16 &&\n' span_id:173) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.partialint 15\n'
            span_id: 174
          )
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'nonempty (but unused) preimage view' span_id:181))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:185) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b" "Q\\003QQQ" | q_to_nul >clear.readpreimage &&\n'
            span_id: 186
          ) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage clear.readpreimage 9 >actual &&\n' span_id:187) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp empty actual\n' span_id:188)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'preimage view: right endpoint cannot backtrack' span_id:195))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:199) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b" "Q\\003QQQ" "Q\\002QQQ" |\n'
            span_id: 200
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >clear.backtrack &&\n' span_id:201) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.backtrack 14\n'
            span_id: 202
          )
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'preimage view: left endpoint can advance' span_id:209))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:213) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b" "Q\\003QQQ" "\\001\\002QQQ" |\n'
            span_id: 214
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >clear.preshrink &&\n' span_id:215) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b" "Q\\003QQQ" "\\001\\001QQQ" |\n'
            span_id: 216
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >clear.shrinkbacktrack &&\n' span_id:217) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest-svn-fe -d preimage clear.preshrink 14 >actual &&\n'
            span_id: 218
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.shrinkbacktrack 14 &&\n'
            span_id: 219
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp empty actual\n' span_id:220)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'preimage view: offsets compared by value' span_id:227))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:231) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b" "\\001\\001QQQ" "\\0200Q\\003QQQ" |\n'
            span_id: 232
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >clear.noisybacktrack &&\n' span_id:233) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b" "\\001\\001QQQ" "\\0200\\001\\002QQQ" |\n'
            span_id: 234
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >clear.noisyadvance &&\n' span_id:235) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.noisybacktrack 15 &&\n'
            span_id: 236
          ) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage clear.noisyadvance 15 &&\n' span_id:237) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp empty actual\n' span_id:238)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'preimage view: reject truncated preimage' span_id:245))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:249) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b" "\\010QQQQ" | q_to_nul >clear.lateemptyread &&\n'
            span_id: 250
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b" "\\010\\001QQQ" | q_to_nul >clear.latenonemptyread &&\n'
            span_id: 251
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b" "\\001\\010QQQ" | q_to_nul >clear.longread &&\n'
            span_id: 252
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.lateemptyread 9 &&\n'
            span_id: 253
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage clear.latenonemptyread 9 &&\n'
            span_id: 254
          ) (Token id:Id.Lit_Chars val:'\ttest_must_fail test-svn-fe -d preimage clear.longread 9\n' span_id:255)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'forbid unconsumed inline data' span_id:262))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:266) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%s%b%s" "QQQQ\\003" "bar" "QQQQ\\001" "x" |\n'
            span_id: 267
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >inline.clear &&\n' span_id:268) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage inline.clear 18 >actual\n'
            span_id: 269
          )
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'reject truncated inline data' span_id:276))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:280) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%s" "QQQQ\\003" "b" | q_to_nul >inline.trunc &&\n'
            span_id: 281
          ) (Token id:Id.Lit_Chars val:'\ttest_must_fail test-svn-fe -d preimage inline.trunc 10\n' span_id:282)
        )
      }
    )
    (C {(test_expect_success)} 
      {
        (SQ 
          (Token
            id: Id.Lit_Chars
            val: 'reject truncated inline data (after instruction section)'
            span_id: 289
          )
        )
      } 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:293) 
          (Token
            id: Id.Lit_Chars
            val: 
'\tprintf "SVNQ%b%b%s" "QQ\\001\\001\\003" "\\0201" "b" | q_to_nul >insn.trunc &&\n'
            span_id: 294
          ) (Token id:Id.Lit_Chars val:'\ttest_must_fail test-svn-fe -d preimage insn.trunc 11\n' span_id:295)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:copyfrom_data span_id:302))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:306) 
          (Token id:Id.Lit_Chars val:'\techo hi >expect &&\n' span_id:307) 
          (Token
            id: Id.Lit_Chars
            val: 
'\tprintf "SVNQ%b%b%b" "QQ\\003\\001\\003" "\\0203" "hi\\n" | q_to_nul >copydat &&\n'
            span_id: 308
          ) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage copydat 13 >actual &&\n' span_id:309) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:310)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'multiple copyfrom_data' span_id:317))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:321) 
          (Token id:Id.Lit_Chars val:'\techo hi >expect &&\n' span_id:322) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b%b%b%b" "QQ\\003\\002\\003" "\\0201\\0202" "hi\\n" \\\n'
            span_id: 323
          ) (Token id:Id.Lit_Chars val:'\t\t"QQQ\\002Q" "\\0200Q" | q_to_nul >copy.multi &&\n' span_id:324) 
          (Token id:Id.Lit_Chars val:'\tlen=$(wc -c <copy.multi) &&\n' span_id:325) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage copy.multi $len >actual &&\n' span_id:326) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:327)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'incomplete multiple insn' span_id:334))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:338) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b%b" "QQ\\003\\002\\003" "\\0203\\0200" "hi\\n" |\n'
            span_id: 339
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copy.partial &&\n' span_id:340) 
          (Token id:Id.Lit_Chars val:'\tlen=$(wc -c <copy.partial) &&\n' span_id:341) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage copy.partial $len\n'
            span_id: 342
          )
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'catch attempt to copy missing data' span_id:349))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:353) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b%s%b%s" "QQ\\002\\002\\001" "\\0201\\0201" "X" \\\n'
            span_id: 354
          ) (Token id:Id.Lit_Chars val:'\t\t\t"QQQQ\\002" "YZ" |\n' span_id:355) 
          (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copy.incomplete &&\n' span_id:356) (Token id:Id.Lit_Chars val:'\tlen=$(wc -c <copy.incomplete) &&\n' span_id:357) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage copy.incomplete $len\n'
            span_id: 358
          )
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'copyfrom target to repeat data' span_id:365))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:369) 
          (Token id:Id.Lit_Chars val:'\tprintf foofoo >expect &&\n' span_id:370) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b%s" "QQ\\006\\004\\003" "\\0203\\0100\\003Q" "foo" |\n'
            span_id: 371
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copytarget.repeat &&\n' span_id:372) 
          (Token id:Id.Lit_Chars val:'\tlen=$(wc -c <copytarget.repeat) &&\n' span_id:373) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest-svn-fe -d preimage copytarget.repeat $len >actual &&\n'
            span_id: 374
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:375)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'copyfrom target out of order' span_id:382))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:386) 
          (Token id:Id.Lit_Chars val:'\tprintf foooof >expect &&\n' span_id:387) (Token id:Id.Lit_Chars val:'\tprintf "SVNQ%b%b%s" \\\n' span_id:388) 
          (Token
            id: Id.Lit_Chars
            val: '\t\t"QQ\\006\\007\\003" "\\0203\\0101\\002\\0101\\001\\0101Q" "foo" |\n'
            span_id: 389
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copytarget.reverse &&\n' span_id:390) 
          (Token id:Id.Lit_Chars val:'\tlen=$(wc -c <copytarget.reverse) &&\n' span_id:391) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest-svn-fe -d preimage copytarget.reverse $len >actual &&\n'
            span_id: 392
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:393)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'catch copyfrom future' span_id:400))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:404) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b%s" "QQ\\004\\004\\003" "\\0202\\0101\\002\\0201" "XYZ" |\n'
            span_id: 405
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copytarget.infuture &&\n' span_id:406) 
          (Token
            id: Id.Lit_Chars
            val: '\tlen=$(wc -c <copytarget.infuture) &&\n'
            span_id: 407
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage copytarget.infuture $len\n'
            span_id: 408
          )
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'copy to sustain' span_id:415))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:419) 
          (Token id:Id.Lit_Chars val:'\tprintf XYXYXYXYXYXZ >expect &&\n' span_id:420) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b%s" "QQ\\014\\004\\003" "\\0202\\0111Q\\0201" "XYZ" |\n'
            span_id: 421
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copytarget.sustain &&\n' span_id:422) 
          (Token id:Id.Lit_Chars val:'\tlen=$(wc -c <copytarget.sustain) &&\n' span_id:423) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest-svn-fe -d preimage copytarget.sustain $len >actual &&\n'
            span_id: 424
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:425)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'catch copy that overflows' span_id:432))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:436) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b%s" "QQ\\003\\003\\001" "\\0201\\0177Q" X |\n'
            span_id: 437
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copytarget.overflow &&\n' span_id:438) 
          (Token
            id: Id.Lit_Chars
            val: '\tlen=$(wc -c <copytarget.overflow) &&\n'
            span_id: 439
          ) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest_must_fail test-svn-fe -d preimage copytarget.overflow $len\n'
            span_id: 440
          )
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'copyfrom source' span_id:447))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:451) 
          (Token id:Id.Lit_Chars val:'\tprintf foo >expect &&\n' span_id:452) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b" "Q\\003\\003\\002Q" "\\003Q" | q_to_nul >copysource.all &&\n'
            span_id: 453
          ) (Token id:Id.Lit_Chars val:'\ttest-svn-fe -d preimage copysource.all 11 >actual &&\n' span_id:454) 
          (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:455)
        )
      }
    )
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'copy backwards' span_id:462))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:466) 
          (Token id:Id.Lit_Chars val:'\tprintf oof >expect &&\n' span_id:467) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b" "Q\\003\\003\\006Q" "\\001\\002\\001\\001\\001Q" |\n'
            span_id: 468
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copysource.rev &&\n' span_id:469) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest-svn-fe -d preimage copysource.rev 15 >actual &&\n'
            span_id: 470
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:471)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'offsets are relative to window' span_id:478))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:482) 
          (Token id:Id.Lit_Chars val:'\tprintf fo >expect &&\n' span_id:483) (Token id:Id.Lit_Chars val:'\tprintf "SVNQ%b%b%b%b" "Q\\003\\001\\002Q" "\\001Q" \\\n' span_id:484) 
          (Token
            id: Id.Lit_Chars
            val: '\t\t"\\002\\001\\001\\002Q" "\\001Q" |\n'
            span_id: 485
          ) (Token id:Id.Lit_Chars val:'\t\tq_to_nul >copysource.two &&\n' span_id:486) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest-svn-fe -d preimage copysource.two 18 >actual &&\n'
            span_id: 487
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:488)
        )
      }
    )
    (C {(test_expect_success)} 
      {(SQ (Token id:Id.Lit_Chars val:'example from notes/svndiff' span_id:495))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:499) 
          (Token id:Id.Lit_Chars val:'\tprintf aaaaccccdddddddd >expect &&\n' span_id:500) (Token id:Id.Lit_Chars val:'\tprintf aaaabbbbcccc >source &&\n' span_id:501) 
          (Token
            id: Id.Lit_Chars
            val: '\tprintf "SVNQ%b%b%s" "Q\\014\\020\\007\\001" \\\n'
            span_id: 502
          ) (Token id:Id.Lit_Chars val:'\t\t"\\004Q\\004\\010\\0201\\0107\\010" d |\n' span_id:503) 
          (Token id:Id.Lit_Chars val:'\t\tq_to_nul >delta.example &&\n' span_id:504) (Token id:Id.Lit_Chars val:'\tlen=$(wc -c <delta.example) &&\n' span_id:505) 
          (Token
            id: Id.Lit_Chars
            val: '\ttest-svn-fe -d source delta.example $len >actual &&\n'
            span_id: 506
          ) (Token id:Id.Lit_Chars val:'\ttest_cmp expect actual\n' span_id:507)
        )
      }
    )
    (C {(test_done)})
  ]
)