(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:'Tests log -L performance' span_id:6))}
          spids: [4]
        )
      ]
    )
    (C {(.)} {(./perf-lib.sh)})
    (C {(test_perf_default_repo)})
    (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'select a file' span_id:26))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:30) 
          (Token id:Id.Lit_Chars val:'\tgit ls-tree HEAD | grep ^100644 |\n' span_id:31) (Token id:Id.Lit_Chars val:'\tsort -k 3 | head -1 | cut -f 2 >filelist\n' span_id:32)
        )
      }
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:file)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:37)
                command_list: (command.CommandList children:[(C {(cat)} {(filelist)})])
              )
            }
          spids: [36]
        )
      ]
    )
    (C {(export)} {(file)})
    (C {(test_perf)} 
      {(SQ (Token id:Id.Lit_Chars val:'git rev-list --topo-order (baseline)' span_id:51))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:55) 
          (Token
            id: Id.Lit_Chars
            val: '\tgit rev-list --topo-order HEAD >/dev/null\n'
            span_id: 56
          )
        )
      }
    )
    (C {(test_perf)} {(SQ (Token id:Id.Lit_Chars val:'git log --follow (baseline for -M)' span_id:63))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:67) 
          (Token
            id: Id.Lit_Chars
            val: '\tgit log --oneline --follow -- "$file" >/dev/null\n'
            span_id: 68
          )
        )
      }
    )
    (C {(test_perf)} {(SQ (Token id:Id.Lit_Chars val:'git log -L (renames off)' span_id:75))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:79) 
          (Token
            id: Id.Lit_Chars
            val: '\tgit log --no-renames -L 1:"$file" >/dev/null\n'
            span_id: 80
          )
        )
      }
    )
    (C {(test_perf)} {(SQ (Token id:Id.Lit_Chars val:'git log -L (renames on)' span_id:87))} 
      {
        (SQ (Token id:Id.Lit_Chars val:'\n' span_id:91) 
          (Token id:Id.Lit_Chars val:'\tgit log -M -L 1:"$file" >/dev/null\n' span_id:92)
        )
      }
    )
    (C {(test_done)})
  ]
)