(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:PERF_DATA)
          op: assign_op.Equal
          rhs: {<perf.data>}
          spids: [10]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {($ Id.VSub_Pound '$#')} {<-ne>} {<0>} 
                      {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:PERF_DATA)
                  op: assign_op.Equal
                  rhs: {($ Id.VSub_Number '$1')}
                  spids: [30]
                )
              ]
            )
          ]
          spids: [13 27]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {<-z>} {($ Id.VSub_DollarName '$PERF_BUILDID_DIR')} 
                      {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:PERF_BUILDID_DIR)
                  op: assign_op.Equal
                  rhs: {(word_part.TildeSub token:<Id.Lit_TildeLike '~'>) <'/.debug/'>}
                  spids: [62]
                )
              ]
            )
          ]
          spids: [48 59]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:PERF_BUILDID_DIR)
              op: assign_op.Equal
              rhs: {($ Id.VSub_DollarName '$PERF_BUILDID_DIR') <'/'>}
              spids: [73]
            )
          ]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:BUILDIDS)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                child: (C {<mktemp>} {<'/tmp/perf-archive-buildids.XXXXXX'>})
              )
            }
          spids: [80]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:NOBUILDID)
          op: assign_op.Equal
          rhs: {<0000000000000000000000000000000000000000>}
          spids: [87]
        )
      ]
    )
    (command.Pipeline
      children: [
        (C {<perf>} {<buildid-list>} {<-i>} {($ Id.VSub_DollarName '$PERF_DATA')} {<--with-hits>})
        (command.Simple
          words: [{<grep>} {<-v>} {(DQ <'^'> ($ Id.VSub_DollarName '$NOBUILDID') <' '>)}]
          redirects: [
            (redir
              op: <Id.Redir_Great '>'>
              loc: (redir_loc.Fd fd:1)
              arg: {($ Id.VSub_DollarName '$BUILDIDS')}
            )
          ]
          do_fork: T
        )
      ]
      negated: F
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-s>} 
                      {($ Id.VSub_DollarName '$BUILDIDS')} {<Id.Lit_RBracket ']'>}
                    )
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [
            (C {<echo>} {(DQ <'perf archive: no build-ids found'>)})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [(C {<rm>} {($ Id.VSub_DollarName '$BUILDIDS')}) (C {<true>})]
            )
            (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>})
          ]
          spids: [117 131]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:MANIFEST)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                child: (C {<mktemp>} {<'/tmp/perf-archive-manifest.XXXXXX'>})
              )
            }
          spids: [157]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:PERF_BUILDID_LINKDIR)
          op: assign_op.Equal
          rhs: 
            {
              (command_sub
                left_token: <Id.Left_DollarParen '$('>
                child: (C {<readlink>} {<-f>} {($ Id.VSub_DollarName '$PERF_BUILDID_DIR')})
              ) <'/'>
            }
          spids: [164]
        )
      ]
    )
    (command.Pipeline
      children: [
        (C {<cut>} {<-d>} {(SQ <' '>)} {<-f>} {<1>} {($ Id.VSub_DollarName '$BUILDIDS')})
        (command.WhileUntil
          keyword: <Id.KW_While while>
          cond: 
            (condition.Shell
              commands: [(command.Sentence child:(C {<read>} {<build_id>}) terminator:<Id.Op_Semi _>)]
            )
          body: 
            (command.DoGroup
              children: [
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:linkname)
                      op: assign_op.Equal
                      rhs: 
                        {($ Id.VSub_DollarName '$PERF_BUILDID_DIR') <'.build-id/'> 
                          (braced_var_sub
                            token: <Id.VSub_Name build_id>
                            suffix_op: 
                              (suffix_op.Slice
                                begin: {<Id.Lit_Digits 0>}
                                length: {<Id.Lit_Digits 2>}
                              )
                          ) <'/'> 
                          (braced_var_sub
                            token: <Id.VSub_Name build_id>
                            suffix_op: (suffix_op.Slice begin:{<Id.Lit_Digits 2>})
                          )
                        }
                      spids: [203]
                    )
                  ]
                )
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name name:filename)
                      op: assign_op.Equal
                      rhs: 
                        {
                          (command_sub
                            left_token: <Id.Left_DollarParen '$('>
                            child: (C {<readlink>} {<-f>} {($ Id.VSub_DollarName '$linkname')})
                          )
                        }
                      spids: [221]
                    )
                  ]
                )
                (command.Simple
                  words: [
                    {<echo>}
                    {
                      (braced_var_sub
                        token: <Id.VSub_Name linkname>
                        suffix_op: 
                          (suffix_op.Unary
                            op_id: Id.VOp1_Pound
                            arg_word: {($ Id.VSub_DollarName '$PERF_BUILDID_DIR')}
                          )
                      )
                    }
                  ]
                  redirects: [
                    (redir
                      op: <Id.Redir_DGreat '>>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {($ Id.VSub_DollarName '$MANIFEST')}
                    )
                  ]
                  do_fork: T
                )
                (command.Simple
                  words: [
                    {<echo>}
                    {
                      (braced_var_sub
                        token: <Id.VSub_Name filename>
                        suffix_op: 
                          (suffix_op.Unary
                            op_id: Id.VOp1_Pound
                            arg_word: {($ Id.VSub_DollarName '$PERF_BUILDID_LINKDIR')}
                          )
                      )
                    }
                  ]
                  redirects: [
                    (redir
                      op: <Id.Redir_DGreat '>>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {($ Id.VSub_DollarName '$MANIFEST')}
                    )
                  ]
                  do_fork: T
                )
              ]
            )
        )
      ]
      negated: F
    )
    (C {<tar>} {<cjf>} {($ Id.VSub_DollarName '$PERF_DATA') <.tar.bz2>} {<-C>} 
      {($ Id.VSub_DollarName '$PERF_BUILDID_DIR')} {<-T>} {($ Id.VSub_DollarName '$MANIFEST')}
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<rm>} {($ Id.VSub_DollarName '$MANIFEST')} {($ Id.VSub_DollarName '$BUILDIDS')})
        (C {<true>})
      ]
    )
    (C {<echo>} {<-e>} {(DQ <'Now please run:'> <Id.Lit_BadBackslash '\\'> <n>)})
    (C {<echo>} {<-e>} 
      {
        (DQ <Id.Lit_Dollar '$'> <' tar xvf '> ($ Id.VSub_DollarName '$PERF_DATA') 
          <'.tar.bz2 -C ~/.debug'> <Id.Lit_BadBackslash '\\'> <n>
        )
      }
    )
    (C {<echo>} {(DQ <'wherever you need to run \'perf report\' on.'>)})
    (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)