(command.CommandList
  children: [
    (command.ShAssignment
      left: <Id.Lit_VarLike 'test_description='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'test_description='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'test_description='> name:test_description)
          op: assign_op.Equal
          rhs: {(SQ <'git svn property tests'>)}
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <.>
      more_env: []
      words: [{<.>} {<'./lib-git-svn.sh'>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <mkdir>
      more_env: []
      words: [{<mkdir>} {<Id.KW_Import import>}]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_crlf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_crlf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_crlf='> name:a_crlf)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_lf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_lf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_lf='> name:a_lf)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_cr='> name:a_cr)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_ne_crlf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_ne_crlf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_ne_crlf='> name:a_ne_crlf)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_ne_lf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_ne_lf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_ne_lf='> name:a_ne_lf)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_ne_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_ne_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_ne_cr='> name:a_ne_cr)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_empty='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_empty='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_empty='> name:a_empty)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_empty_lf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_empty_lf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_empty_lf='> name:a_empty_lf)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_empty_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_empty_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_empty_cr='> name:a_empty_cr)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_empty_crlf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_empty_crlf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_empty_crlf='> name:a_empty_crlf)
          op: assign_op.Equal
          rhs: (rhs_word__Empty)
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <cd>
      more_env: []
      words: [{<cd>} {<Id.KW_Import import>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <cat>
      more_env: []
      words: [{<cat>}]
      redirects: [
        (Redir op:<Id.Redir_DGreat '>>'> loc:(redir_loc.Fd fd:1) arg:{<kw.c>})
        (Redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\E'> ch:E) <OF>}
              here_end_tok: <Id.Undefined_Tok ''>
              stdin_parts: [
                <'/* Somebody prematurely put a keyword into this file */\n'>
                <'/* $Id$ */\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [
        {<printf>}
        {
          (DQ <Hello> <Id.Lit_BadBackslash '\\'> <r> <Id.Lit_BadBackslash '\\'> <nWorld> 
            <Id.Lit_BadBackslash '\\'> <r> <Id.Lit_BadBackslash '\\'> <n>
          )
        }
      ]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<crlf>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_crlf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_crlf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_crlf='> name:a_crlf)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<crlf>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [
        {<printf>}
        {(DQ <Hello> <Id.Lit_BadBackslash '\\'> <rWorld> <Id.Lit_BadBackslash '\\'> <r>)}
      ]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<cr>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_cr='> name:a_cr)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<cr>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [
        {<printf>}
        {(DQ <Hello> <Id.Lit_BadBackslash '\\'> <nWorld> <Id.Lit_BadBackslash '\\'> <n>)}
      ]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<lf>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_lf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_lf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_lf='> name:a_lf)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<lf>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [
        {<printf>}
        {(DQ <Hello> <Id.Lit_BadBackslash '\\'> <r> <Id.Lit_BadBackslash '\\'> <nWorld>)}
      ]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<ne_crlf>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_ne_crlf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_ne_crlf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_ne_crlf='> name:a_ne_crlf)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<ne_crlf>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [{<printf>} {(DQ <Hello> <Id.Lit_BadBackslash '\\'> <nWorld>)}]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<ne_lf>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_ne_lf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_ne_lf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_ne_lf='> name:a_ne_lf)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<ne_lf>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [{<printf>} {(DQ <Hello> <Id.Lit_BadBackslash '\\'> <rWorld>)}]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<ne_cr>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_ne_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_ne_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_ne_cr='> name:a_ne_cr)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<ne_cr>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <touch>
      more_env: []
      words: [{<touch>} {<empty>}]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_empty='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_empty='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_empty='> name:a_empty)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<empty>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [{<printf>} {(DQ <Id.Lit_BadBackslash '\\'> <n>)}]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<empty_lf>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_empty_lf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_empty_lf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_empty_lf='> name:a_empty_lf)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<empty_lf>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [{<printf>} {(DQ <Id.Lit_BadBackslash '\\'> <r>)}]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<empty_cr>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_empty_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_empty_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_empty_cr='> name:a_empty_cr)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<empty_cr>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [{<printf>} {(DQ <Id.Lit_BadBackslash '\\'> <r> <Id.Lit_BadBackslash '\\'> <n>)}]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<empty_crlf>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_empty_crlf='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_empty_crlf='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_empty_crlf='> name:a_empty_crlf)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Simple
                    blame_tok: <git>
                    more_env: []
                    words: [{<git>} {<hash-object>} {<-w>} {<empty_crlf>}]
                    redirects: []
                    do_fork: T
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <svn_cmd>
      more_env: []
      words: [
        {<svn_cmd>}
        {<Id.KW_Import import>}
        {<--no-auto-props>}
        {<-m>}
        {(SQ <'import for git svn'>)}
        {<.>}
        {(DQ ($ Id.VSub_DollarName svnrepo))}
      ]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<'/dev/null'>})]
      do_fork: T
    )
    (command.Simple blame_tok:<cd> more_env:[] words:[{<cd>} {<..>}] redirects:[] do_fork:T)
    (command.Simple
      blame_tok: <rm>
      more_env: []
      words: [{<rm>} {<-rf>} {<Id.KW_Import import>}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'checkout working copy from svn'>)}
        {(SQ <'svn co "$svnrepo" test_wc'>)}
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'setup some commits to svn'>)}
        {
          (SQ <'\n'> <'\t(\n'> <'\t\tcd test_wc &&\n'> <'\t\techo Greetings >> kw.c &&\n'> 
            <'\t\tpoke kw.c &&\n'> <'\t\tsvn_cmd commit -m "Not yet an Id" &&\n'> <'\t\techo Hello world >> kw.c &&\n'> 
            <'\t\tpoke kw.c &&\n'> <'\t\tsvn_cmd commit -m "Modified file, but still not yet an Id" &&\n'> 
            <'\t\tsvn_cmd propset svn:keywords Id kw.c &&\n'> <'\t\tpoke kw.c &&\n'> <'\t\tsvn_cmd commit -m "Propset Id"\n'> <'\t)\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [{<test_expect_success>} {(SQ <'initialize git svn'>)} {(SQ <'git svn init "$svnrepo"'>)}]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [{<test_expect_success>} {(SQ <'fetch revisions from svn'>)} {(SQ <'git svn fetch'>)}]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'name='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'name='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'name='> name:name)
          op: assign_op.Equal
          rhs: {(SQ <'test svn:keywords ignoring'>)}
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(DQ ($ Id.VSub_DollarName name))}
        {
          (SQ <'git checkout -b mybranch remotes/git-svn &&\n'> <'\techo Hi again >> kw.c &&\n'> 
            <'\tgit commit -a -m "test keywords ignoring" &&\n'> <'\tgit svn set-tree remotes/git-svn..mybranch &&\n'> <'\tgit pull . remotes/git-svn'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'expect='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'expect='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'expect='> name:expect)
          op: assign_op.Equal
          rhs: {(SQ <'/* $Id$ */'>)}
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'got='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'got='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'got='> name:got)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                (CommandSub
                  left_token: <Id.Left_DollarParen '$('>
                  child: 
                    (command.Simple
                      blame_tok: <sed>
                      more_env: []
                      words: [{<sed>} {<-ne>} {<2p>} {<kw.c>}]
                      redirects: []
                      do_fork: T
                    )
                  right: <Id.Eof_RParen _>
                )
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'raw $Id$ found in kw.c'>)}
        {(DQ <'test \''> ($ Id.VSub_DollarName expect) <'\' = \''> ($ Id.VSub_DollarName got) <'\''>)}
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(DQ <'propset CR on crlf files'>)}
        {
          (SQ <'\n'> <'\t(\n'> <'\t\tcd test_wc &&\n'> 
            <'\t\tsvn_cmd propset svn:eol-style CR empty &&\n'> <'\t\tsvn_cmd propset svn:eol-style CR crlf &&\n'> 
            <'\t\tsvn_cmd propset svn:eol-style CR ne_crlf &&\n'> <'\t\tsvn_cmd commit -m "propset CR on crlf files"\n'> <'\t )\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'fetch and pull latest from svn and checkout a new wc'>)}
        {
          (SQ <'git svn fetch &&\n'> <'\t git pull . remotes/git-svn &&\n'> 
            <'\t svn_cmd co "$svnrepo" new_wc'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.ForEach
      keyword: <Id.KW_For for>
      iter_names: [i]
      iterable: 
        (for_iter.Words
          words: [
            {<crlf>}
            {<ne_crlf>}
            {<lf>}
            {<ne_lf>}
            {<cr>}
            {<ne_cr>}
            {<empty_cr>}
            {<empty_lf>}
            {<empty>}
            {<empty_crlf>}
          ]
        )
      body: 
        (command.DoGroup
          left: <Id.KW_Do do>
          children: [
            (command.Simple
              blame_tok: <test_expect_success>
              more_env: []
              words: [
                {<test_expect_success>}
                {(DQ <'Comparing '> ($ Id.VSub_DollarName i))}
                {(DQ <'cmp '> ($ Id.VSub_DollarName i) <' new_wc/'> ($ Id.VSub_DollarName i))}
              ]
              redirects: []
              do_fork: T
            )
          ]
          right: <Id.KW_Done done>
        )
      redirects: []
    )
    (command.Simple blame_tok:<cd> more_env:[] words:[{<cd>} {<test_wc>}] redirects:[] do_fork:T)
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [{<printf>} {(SQ <'$Id$\\rHello\\rWorld\\r'>)}]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<cr>})]
      do_fork: T
    )
    (command.Simple
      blame_tok: <printf>
      more_env: []
      words: [{<printf>} {(SQ <'$Id$\\rHello\\rWorld'>)}]
      redirects: [(Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<ne_cr>})]
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_cr='> name:a_cr)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Pipeline
                    children: [
                      (command.Simple
                        blame_tok: <printf>
                        more_env: []
                        words: [{<printf>} {(SQ <'$Id$\\r\\nHello\\r\\nWorld\\r\\n'>)}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <git>
                        more_env: []
                        words: [{<git>} {<hash-object>} {<--stdin>}]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_Pipe _>]
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'a_ne_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'a_ne_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'a_ne_cr='> name:a_ne_cr)
          op: assign_op.Equal
          rhs: 
            {
              (CommandSub
                left_token: <Id.Left_DollarParen '$('>
                child: 
                  (command.Pipeline
                    children: [
                      (command.Simple
                        blame_tok: <printf>
                        more_env: []
                        words: [{<printf>} {(SQ <'$Id$\\r\\nHello\\r\\nWorld'>)}]
                        redirects: []
                        do_fork: T
                      )
                      (command.Simple
                        blame_tok: <git>
                        more_env: []
                        words: [{<git>} {<hash-object>} {<--stdin>}]
                        redirects: []
                        do_fork: T
                      )
                    ]
                    ops: [<Id.Op_Pipe _>]
                  )
                right: <Id.Eof_RParen _>
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'Set CRLF on cr files'>)}
        {
          (SQ <'svn_cmd propset svn:eol-style CRLF cr &&\n'> 
            <'\t svn_cmd propset svn:eol-style CRLF ne_cr &&\n'> <'\t svn_cmd propset svn:keywords Id cr &&\n'> <'\t svn_cmd propset svn:keywords Id ne_cr &&\n'> 
            <'\t svn_cmd commit -m "propset CRLF on cr files"'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple blame_tok:<cd> more_env:[] words:[{<cd>} {<..>}] redirects:[] do_fork:T)
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'fetch and pull latest from svn'>)}
        {(SQ <'git svn fetch && git pull . remotes/git-svn'>)}
      ]
      redirects: []
      do_fork: T
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'b_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'b_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'b_cr='> name:b_cr)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                (CommandSub
                  left_token: <Id.Left_DollarParen '$('>
                  child: 
                    (command.Simple
                      blame_tok: <git>
                      more_env: []
                      words: [{<git>} {<hash-object>} {<cr>}]
                      redirects: []
                      do_fork: T
                    )
                  right: <Id.Eof_RParen _>
                )
              )
            }
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      left: <Id.Lit_VarLike 'b_ne_cr='>
      pairs: [
        (AssignPair
          left: <Id.Lit_VarLike 'b_ne_cr='>
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'b_ne_cr='> name:b_ne_cr)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                (CommandSub
                  left_token: <Id.Left_DollarParen '$('>
                  child: 
                    (command.Simple
                      blame_tok: <git>
                      more_env: []
                      words: [{<git>} {<hash-object>} {<ne_cr>}]
                      redirects: []
                      do_fork: T
                    )
                  right: <Id.Eof_RParen _>
                )
              )
            }
        )
      ]
      redirects: []
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'CRLF + $Id$'>)}
        {(DQ <'test \''> ($ Id.VSub_DollarName a_cr) <'\' = \''> ($ Id.VSub_DollarName b_cr) <'\''>)}
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'CRLF + $Id$ (no newline)'>)}
        {
          (DQ <'test \''> ($ Id.VSub_DollarName a_ne_cr) <'\' = \''> ($ Id.VSub_DollarName b_ne_cr) 
            <'\''>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <cat>
      more_env: []
      words: [{<cat>}]
      redirects: [
        (Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<show-ignore.expect>})
        (Redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\E'> ch:E) <OF>}
              here_end_tok: <Id.Undefined_Tok ''>
              stdin_parts: [
                <'\n'>
                <'# /\n'>
                <'/no-such-file*\n'>
                <'\n'>
                <'# /deeply/\n'>
                <'/deeply/no-such-file*\n'>
                <'\n'>
                <'# /deeply/nested/\n'>
                <'/deeply/nested/no-such-file*\n'>
                <'\n'>
                <'# /deeply/nested/directory/\n'>
                <'/deeply/nested/directory/no-such-file*\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'test show-ignore'>)}
        {
          (DQ <'\n'> <'\t(\n'> <'\t\tcd test_wc &&\n'> <'\t\tmkdir -p deeply/nested/directory &&\n'> 
            <'\t\ttouch deeply/nested/directory/.keep &&\n'> <'\t\tsvn_cmd add deeply &&\n'> <'\t\tsvn_cmd up &&\n'> <'\t\tsvn_cmd propset -R svn:ignore \'\n'> 
            <'no-such-file*\n'> <'\' .\n'> <'\t\tsvn_cmd commit -m \'propset svn:ignore\'\n'> <'\t) &&\n'> 
            <'\tgit svn show-ignore > show-ignore.got &&\n'> <'\tcmp show-ignore.expect show-ignore.got\n'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <cat>
      more_env: []
      words: [{<cat>}]
      redirects: [
        (Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<create-ignore.expect>})
        (Redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\E'> ch:E) <OF>}
              here_end_tok: <Id.Undefined_Tok ''>
              stdin_parts: [<'/no-such-file*\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      blame_tok: <cat>
      more_env: []
      words: [{<cat>}]
      redirects: [
        (Redir
          op: <Id.Redir_Great '>'>
          loc: (redir_loc.Fd fd:1)
          arg: {<create-ignore-index.expect>}
        )
        (Redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\E'> ch:E) <OF>}
              here_end_tok: <Id.Undefined_Tok ''>
              stdin_parts: [
                <'100644 8c52e5dfcd0a8b6b6bcfe6b41b89bcbf493718a5 0\t.gitignore\n'>
                <'100644 8c52e5dfcd0a8b6b6bcfe6b41b89bcbf493718a5 0\tdeeply/.gitignore\n'>
                <'100644 8c52e5dfcd0a8b6b6bcfe6b41b89bcbf493718a5 0\tdeeply/nested/.gitignore\n'>
                <
'100644 8c52e5dfcd0a8b6b6bcfe6b41b89bcbf493718a5 0\tdeeply/nested/directory/.gitignore\n'
                >
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'test create-ignore'>)}
        {
          (DQ <'\n'> <'\tgit svn fetch && git pull . remotes/git-svn &&\n'> 
            <'\tgit svn create-ignore &&\n'> <'\tcmp ./.gitignore create-ignore.expect &&\n'> 
            <'\tcmp ./deeply/.gitignore create-ignore.expect &&\n'> <'\tcmp ./deeply/nested/.gitignore create-ignore.expect &&\n'> 
            <'\tcmp ./deeply/nested/directory/.gitignore create-ignore.expect &&\n'> <'\tgit ls-files -s | grep gitignore | cmp - create-ignore-index.expect\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <cat>
      more_env: []
      words: [{<cat>}]
      redirects: [
        (Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<prop.expect>})
        (Redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\E'> ch:E) <OF>}
              here_end_tok: <Id.Undefined_Tok ''>
              stdin_parts: [<'\n'> <'no-such-file*\n'> <'\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      blame_tok: <cat>
      more_env: []
      words: [{<cat>}]
      redirects: [
        (Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<prop2.expect>})
        (Redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\E'> ch:E) <OF>}
              here_end_tok: <Id.Undefined_Tok ''>
              stdin_parts: [<'8\n'>]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'test propget'>)}
        {
          (DQ <'\n'> <'\tgit svn propget svn:ignore . | cmp - prop.expect &&\n'> <'\tcd deeply &&\n'> 
            <'\tgit svn propget svn:ignore . | cmp - ../prop.expect &&\n'> <'\tgit svn propget svn:entry:committed-rev nested/directory/.keep '> 
            <'\t  | cmp - ../prop2.expect &&\n'> <'\tgit svn propget svn:ignore .. | cmp - ../prop.expect &&\n'> 
            <'\tgit svn propget svn:ignore nested/ | cmp - ../prop.expect &&\n'> <'\tgit svn propget svn:ignore ./nested | cmp - ../prop.expect &&\n'> 
            <'\tgit svn propget svn:ignore .././deeply/nested | cmp - ../prop.expect\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <cat>
      more_env: []
      words: [{<cat>}]
      redirects: [
        (Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<prop.expect>})
        (Redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\E'> ch:E) <OF>}
              here_end_tok: <Id.Undefined_Tok ''>
              stdin_parts: [
                <'Properties on \'.\':\n'>
                <'  svn:entry:committed-date\n'>
                <'  svn:entry:committed-rev\n'>
                <'  svn:entry:last-author\n'>
                <'  svn:entry:uuid\n'>
                <'  svn:ignore\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      blame_tok: <cat>
      more_env: []
      words: [{<cat>}]
      redirects: [
        (Redir op:<Id.Redir_Great '>'> loc:(redir_loc.Fd fd:1) arg:{<prop2.expect>})
        (Redir
          op: <Id.Redir_DLess '<<'>
          loc: (redir_loc.Fd fd:0)
          arg: 
            (redir_param.HereDoc
              here_begin: {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\E'> ch:E) <OF>}
              here_end_tok: <Id.Undefined_Tok ''>
              stdin_parts: [
                <'Properties on \'nested/directory/.keep\':\n'>
                <'  svn:entry:committed-date\n'>
                <'  svn:entry:committed-rev\n'>
                <'  svn:entry:last-author\n'>
                <'  svn:entry:uuid\n'>
              ]
            )
        )
      ]
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_expect_success>
      more_env: []
      words: [
        {<test_expect_success>}
        {(SQ <'test proplist'>)}
        {
          (DQ <'\n'> <'\tgit svn proplist . | cmp - prop.expect &&\n'> 
            <'\tgit svn proplist nested/directory/.keep | cmp - prop2.expect\n'> <'\t'>
          )
        }
      ]
      redirects: []
      do_fork: T
    )
    (command.Simple
      blame_tok: <test_done>
      more_env: []
      words: [{<test_done>}]
      redirects: []
      do_fork: T
    )
  ]
)