(command.CommandList
  children: [
    (command.CommandList
      children: [
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:opt_count)
                  op: assign_op.Equal
                  rhs: {(0)}
                  spids: [163]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:165)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:opt_pid)
                  op: assign_op.Equal
                  rhs: {(0)}
                  spids: [167]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:169)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:opt_verbose)
                  op: assign_op.Equal
                  rhs: {(0)}
                  spids: [171]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:173)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:opt_cmd)
                  op: assign_op.Equal
                  rhs: {(0)}
                  spids: [175]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:177)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:opt_duration)
                  op: assign_op.Equal
                  rhs: {(0)}
                  spids: [179]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:181)
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:opt_tail)
              op: assign_op.Equal
              rhs: {(0)}
              spids: [183]
            )
          ]
        )
      ]
    )
    (command.CommandList
      children: [
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:tnum)
                  op: assign_op.Equal
                  rhs: (word.Empty)
                  spids: [186]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:187)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:pid)
                  op: assign_op.Equal
                  rhs: (word.Empty)
                  spids: [189]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:190)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:duration)
                  op: assign_op.Equal
                  rhs: (word.Empty)
                  spids: [192]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:193)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:cmd)
                  op: assign_op.Equal
                  rhs: (word.Empty)
                  spids: [195]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:196)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:cpus)
                  op: assign_op.Equal
                  rhs: {(-a)}
                  spids: [198]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:200)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:opts)
                  op: assign_op.Equal
                  rhs: (word.Empty)
                  spids: [202]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:203)
        )
        (command.Sentence
          child: 
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:tcmd)
                  op: assign_op.Equal
                  rhs: {(cat)}
                  spids: [205]
                )
              ]
            )
          terminator: (Token id:Id.Op_Semi val:';' span_id:207)
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:ttext)
              op: assign_op.Equal
              rhs: (word.Empty)
              spids: [209]
            )
          ]
        )
      ]
    )
    (C {(trap)} {(SQ )} {(INT)} {(QUIT)} {(TERM)} {(PIPE)} {(HUP)})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:stdout_workaround)
          op: assign_op.Equal
          rhs: {(1)}
          spids: [227]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:write_workaround)
          op: assign_op.Equal
          rhs: {(1)}
          spids: [233]
        )
      ]
    )
    (command.WhileUntil
      keyword: (Token id:Id.KW_While val:while span_id:243)
      cond: [
        (C {(getopts)} {(cd) (Id.Lit_Other ':') (hp) (Id.Lit_Other ':') (t) (Id.Lit_Other ':') (v)} 
          {(opt)}
        )
      ]
      body: 
        (command.DoGroup
          children: [
            (command.Case
              to_match: {($ Id.VSub_DollarName '$opt')}
              arms: [
                (case_arm
                  pat_list: [{(c)}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:opt_count)
                          op: assign_op.Equal
                          rhs: {(1)}
                          spids: [270]
                        )
                      ]
                    )
                  ]
                  spids: [267 268 273 -1]
                )
                (case_arm
                  pat_list: [{(d)}]
                  action: [
                    (command.Sentence
                      child: 
                        (command.ShAssignment
                          pairs: [
                            (assign_pair
                              lhs: (sh_lhs_expr.Name name:opt_duration)
                              op: assign_op.Equal
                              rhs: {(1)}
                              spids: [279]
                            )
                          ]
                        )
                      terminator: (Token id:Id.Op_Semi val:';' span_id:281)
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:duration)
                          op: assign_op.Equal
                          rhs: {($ Id.VSub_DollarName '$OPTARG')}
                          spids: [283]
                        )
                      ]
                    )
                  ]
                  spids: [276 277 286 -1]
                )
                (case_arm
                  pat_list: [{(p)}]
                  action: [
                    (command.Sentence
                      child: 
                        (command.ShAssignment
                          pairs: [
                            (assign_pair
                              lhs: (sh_lhs_expr.Name name:opt_pid)
                              op: assign_op.Equal
                              rhs: {(1)}
                              spids: [292]
                            )
                          ]
                        )
                      terminator: (Token id:Id.Op_Semi val:';' span_id:294)
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:pid)
                          op: assign_op.Equal
                          rhs: {($ Id.VSub_DollarName '$OPTARG')}
                          spids: [296]
                        )
                      ]
                    )
                  ]
                  spids: [289 290 299 -1]
                )
                (case_arm
                  pat_list: [{(t)}]
                  action: [
                    (command.Sentence
                      child: 
                        (command.ShAssignment
                          pairs: [
                            (assign_pair
                              lhs: (sh_lhs_expr.Name name:opt_tail)
                              op: assign_op.Equal
                              rhs: {(1)}
                              spids: [305]
                            )
                          ]
                        )
                      terminator: (Token id:Id.Op_Semi val:';' span_id:307)
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:tnum)
                          op: assign_op.Equal
                          rhs: {($ Id.VSub_DollarName '$OPTARG')}
                          spids: [309]
                        )
                      ]
                    )
                  ]
                  spids: [302 303 312 -1]
                )
                (case_arm
                  pat_list: [{(v)}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:opt_verbose)
                          op: assign_op.Equal
                          rhs: {(1)}
                          spids: [318]
                        )
                      ]
                    )
                  ]
                  spids: [315 316 321 -1]
                )
                (case_arm
                  pat_list: [{(h)} {(Id.Lit_QMark '?')}]
                  action: [
                    (command.Simple
                      words: [{(cat)}]
                      redirects: [
                        (redir.HereDoc
                          op: (Token id:Id.Redir_DLessDash val:'<<-' span_id:331)
                          fd: -1
                          here_begin: {(END)}
                          here_end_span_id: 359
                          stdin_parts: [
                            ('USAGE: syscount [-chv] [-t top] {-p PID|-d seconds|command}\n')
                            ('       syscount                  # count by process name\n')
                            ('                -c               # show counts by syscall name\n')
                            ('                -h               # this usage message\n')
                            ('                -v               # verbose: shows PID\n')
                            ('                -p PID           # trace this PID only\n')
                            ('                -d seconds       # duration of trace\n')
                            ('                -t num           # show top number only\n')
                            ('                command          # run and trace this command\n')
                            ('  eg,\n')
                            ('        syscount                 # syscalls by process name\n')
                            ('        syscount -c              # syscalls by syscall name\n')
                            ('        syscount -d 5            # trace for 5 seconds\n')
                            ('        syscount -cp 923         # syscall names for PID 923\n')
                            ('        syscount -c ls           # syscall names for ')
                            (Id.Right_DoubleQuote '"')
                            (ls)
                            (Id.Right_DoubleQuote '"')
                            ('\n')
                            ('\n')
                            ('See the man page and example file for more info.\n')
                          ]
                        )
                        (redir.Redir
                          op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:334)
                          fd: -1
                          arg_word: {(2)}
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Exit val:exit span_id:361)
                      arg_word: {(1)}
                    )
                  ]
                  spids: [324 327 -1 366]
                )
              ]
            )
          ]
        )
    )
    (C {(shift)} 
      {
        (word_part.ArithSub
          anode: 
            (arith_expr.Binary
              op_id: Id.Arith_Minus
              left: (arith_expr.ArithWord w:{($ Id.VSub_DollarName '$OPTIND')})
              right: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)})
            )
        )
      }
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.Binary
                      op_id: Id.Arith_Great
                      left: (arith_expr.ArithWord w:{($ Id.VSub_Pound '$#')})
                      right: (arith_expr.ArithWord w:{(Id.Lit_Digits 0)})
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:399)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:opt_cmd)
                  op: assign_op.Equal
                  rhs: {(1)}
                  spids: [404]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:cmd)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_At '$@'))}
                  spids: [408]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:cpus)
                  op: assign_op.Equal
                  rhs: (word.Empty)
                  spids: [414]
                )
              ]
            )
          ]
          spids: [387 401]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.Binary
                      op_id: Id.Arith_Great
                      left: 
                        (arith_expr.Binary
                          op_id: Id.Arith_Plus
                          left: 
                            (arith_expr.Binary
                              op_id: Id.Arith_Plus
                              left: 
                                (arith_expr.VarRef
                                  token: (Token id:Id.Lit_ArithVarLike val:opt_pid span_id:422)
                                )
                              right: 
                                (arith_expr.VarRef
                                  token: (Token id:Id.Lit_ArithVarLike val:opt_duration span_id:426)
                                )
                            )
                          right: 
                            (arith_expr.VarRef
                              token: (Token id:Id.Lit_ArithVarLike val:opt_cmd span_id:430)
                            )
                        )
                      right: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)})
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:438)
            )
          ]
          action: [
            (command.Simple
              words: [{(echo)} {(DQ ('ERROR: Pick one of {-p PID|-n name|-d seconds|command}'))}]
              redirects: [
                (redir.Redir
                  op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:445)
                  fd: -1
                  arg_word: {(2)}
                )
              ]
            )
            (command.ControlFlow
              token: (Token id:Id.ControlFlow_Exit val:exit span_id:453)
              arg_word: {(1)}
            )
          ]
          spids: [418 440]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.VarRef
                      token: (Token id:Id.Lit_ArithVarLike val:opt_tail span_id:463)
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:467)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:tcmd)
                  op: assign_op.Equal
                  rhs: {(DQ ('tail -') ($ Id.VSub_DollarName '$tnum'))}
                  spids: [472]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:ttext)
                  op: assign_op.Equal
                  rhs: {(DQ (' Top ') ($ Id.VSub_DollarName '$tnum') (' only.'))}
                  spids: [479]
                )
              ]
            )
          ]
          spids: [459 469]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.VarRef
                      token: (Token id:Id.Lit_ArithVarLike val:opt_duration span_id:492)
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:496)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:cmd)
                  op: assign_op.Equal
                  rhs: {(DQ ('sleep ') ($ Id.VSub_DollarName '$duration'))}
                  spids: [501]
                )
              ]
            )
            (C {(echo)} 
              {
                (DQ ('Tracing for ') ($ Id.VSub_DollarName '$duration') (' seconds.') 
                  ($ Id.VSub_DollarName '$ttext') (..)
                )
              }
            )
          ]
          spids: [488 498]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.VarRef
                      token: (Token id:Id.Lit_ArithVarLike val:opt_pid span_id:524)
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:528)
            )
          ]
          action: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:cpus)
                  op: assign_op.Equal
                  rhs: (word.Empty)
                  spids: [533]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:cmd)
                  op: assign_op.Equal
                  rhs: {(DQ ('-p ') ($ Id.VSub_DollarName '$pid'))}
                  spids: [536]
                )
              ]
            )
            (C {(echo)} 
              {
                (DQ ('Tracing PID ') ($ Id.VSub_DollarName '$pid') (.) ($ Id.VSub_DollarName '$ttext') 
                  ('.. Ctrl-C to end.')
                )
              }
            )
          ]
          spids: [520 530]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (command.DParen
          child: (arith_expr.VarRef token:(Token id:Id.Lit_ArithVarLike val:opt_cmd span_id:557))
        )
        (C {(echo)} 
          {
            (DQ ('Tracing while running: ') 
              (word_part.EscapedLiteral
                token: (Token id:Id.Lit_EscapedChar val:'\\"' span_id:568)
              ) ($ Id.VSub_DollarName '$cmd') 
              (word_part.EscapedLiteral
                token: (Token id:Id.Lit_EscapedChar val:'\\"' span_id:570)
              ) (.) ($ Id.VSub_DollarName '$ttext') (..)
            )
          }
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (command.DParen
          child: 
            (arith_expr.Binary
              op_id: Id.Arith_DEqual
              left: 
                (arith_expr.Binary
                  op_id: Id.Arith_Plus
                  left: 
                    (arith_expr.Binary
                      op_id: Id.Arith_Plus
                      left: 
                        (arith_expr.VarRef
                          token: (Token id:Id.Lit_ArithVarLike val:opt_pid span_id:578)
                        )
                      right: 
                        (arith_expr.VarRef
                          token: (Token id:Id.Lit_ArithVarLike val:opt_duration span_id:582)
                        )
                    )
                  right: 
                    (arith_expr.VarRef
                      token: (Token id:Id.Lit_ArithVarLike val:opt_cmd span_id:586)
                    )
                )
              right: (arith_expr.ArithWord w:{(Id.Lit_Digits 0)})
            )
        )
        (C {(echo)} {(DQ (Tracing.) ($ Id.VSub_DollarName '$ttext') ('.. Ctrl-C to end.'))})
      ]
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (command.DParen
          child: 
            (arith_expr.VarRef
              token: (Token id:Id.Lit_ArithVarLike val:stdout_workaround span_id:609)
            )
        )
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:opts)
              op: assign_op.Equal
              rhs: {(DQ ('-o /dev/stdout'))}
              spids: [616]
            )
          ]
        )
      ]
    )
    (C {(ulimit)} {(-n)} {(32768)})
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.Binary
                      op_id: Id.Arith_DAmp
                      left: 
                        (arith_expr.VarRef
                          token: (Token id:Id.Lit_ArithVarLike val:opt_count span_id:639)
                        )
                      right: 
                        (arith_expr.Unary
                          op_id: Id.Arith_Bang
                          child: 
                            (arith_expr.VarRef
                              token: (Token id:Id.Lit_ArithVarLike val:opt_verbose span_id:645)
                            )
                        )
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:649)
            )
          ]
          action: [
            (C {(Id.Lit_Other ':')} 
              {
                (braced_var_sub
                  token: (Token id:Id.VSub_Name val:cmd span_id:657)
                  suffix_op: (suffix_op.Unary op_id:Id.VTest_ColonEquals arg_word:{('sleep 999999')})
                )
              }
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:out)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (command_sub
                        left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:664)
                        command_list: 
                          (command.CommandList
                            children: [
                              (C {(perf)} {(stat)} {($ Id.VSub_DollarName '$opts')} {(-e)} 
                                {(SQ (Token id:Id.Lit_Chars val:'syscalls:sys_enter_*' span_id:674))} {($ Id.VSub_DollarName '$cpus')} {($ Id.VSub_DollarName '$cmd')}
                              )
                            ]
                          )
                      )
                    }
                  spids: [663]
                )
              ]
            )
            (C {(printf)} {(DQ ('%-17s %8s') (Id.Lit_Other '\\') (n))} {(DQ (SYSCALL))} {(DQ (COUNT))})
            (command.Pipeline
              children: [
                (C {(echo)} {(DQ ($ Id.VSub_DollarName '$out'))})
                (C {(awk)} 
                  {
                    (SQ (Token id:Id.Lit_Chars val:'\n' span_id:711) 
                      (Token
                        id: Id.Lit_Chars
                        val: '\t$1 && $2 ~ /syscalls:/ {\n'
                        span_id: 712
                      ) (Token id:Id.Lit_Chars val:'\t\tsub("syscalls:sys_enter_", ""); sub(":", "")\n' span_id:713) 
                      (Token
                        id: Id.Lit_Chars
                        val: '\t\tgsub(",", "")\n'
                        span_id: 714
                      ) (Token id:Id.Lit_Chars val:'\t\tprintf "%-17s %8s\\n", $2, $1\n' span_id:715) 
                      (Token id:Id.Lit_Chars val:'\t}' span_id:716)
                    )
                  }
                )
                (C {(sort)} {(-n)} {(-k2)})
                (C {($ Id.VSub_DollarName '$tcmd')})
              ]
              negated: F
            )
            (command.ControlFlow
              token: (Token id:Id.ControlFlow_Exit val:exit span_id:732)
            )
          ]
          spids: [635 651]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.Binary
                      op_id: Id.Arith_DAmp
                      left: 
                        (arith_expr.VarRef
                          token: (Token id:Id.Lit_ArithVarLike val:opt_count span_id:744)
                        )
                      right: 
                        (arith_expr.VarRef
                          token: (Token id:Id.Lit_ArithVarLike val:opt_verbose span_id:748)
                        )
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:752)
            )
          ]
          action: [
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (command.DParen
                          child: 
                            (arith_expr.VarRef
                              token: (Token id:Id.Lit_ArithVarLike val:write_workaround span_id:761)
                            )
                        )
                      terminator: (Token id:Id.Op_Semi val:';' span_id:765)
                    )
                  ]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:tp)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (command_sub
                                left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:775)
                                command_list: 
                                  (command.CommandList
                                    children: [
                                      (command.Pipeline
                                        children: [
                                          (C {(perf)} {(list)} 
                                            {(syscalls) (Id.Lit_Other ':') (sys_enter_) 
                                              (Id.Lit_Star '*')
                                            }
                                          )
                                          (C {(awk)} 
                                            {
                                              (SQ (Token id:Id.Lit_Chars val:'\n' span_id:790) 
                                                (Token
                                                  id: Id.Lit_Chars
                                                  val: 
'\t\t    $1 != "syscalls:sys_enter_write" &&  $1 ~ /syscalls:/ { printf "-e %s ", $1 }'
                                                  span_id: 791
                                                )
                                              )
                                            }
                                          )
                                        ]
                                        negated: F
                                      )
                                    ]
                                  )
                              )
                            }
                          spids: [774]
                        )
                      ]
                    )
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:tp)
                          op: assign_op.Equal
                          rhs: {(DQ ($ Id.VSub_DollarName '$tp') (' -e syscalls:sys_enter_write'))}
                          spids: [796]
                        )
                      ]
                    )
                    (C {(sh)} {(-c)} 
                      {
                        (DQ ('perf record ') ($ Id.VSub_DollarName '$tp') 
                          (" --filter 'common_pid != '") (word_part.EscapedLiteral token:(Token id:Id.Lit_EscapedChar val:'\\$' span_id:811)) 
                          (word_part.EscapedLiteral
                            token: (Token id:Id.Lit_EscapedChar val:'\\$' span_id:812)
                          ) (' ') ($ Id.VSub_DollarName '$cpus') (' ') ($ Id.VSub_DollarName '$cmd')
                        )
                      }
                    )
                  ]
                  spids: [757 767]
                )
              ]
              else_action: [
                (C {(perf)} {(record)} 
                  {(SQ (Token id:Id.Lit_Chars val:'syscalls:sys_enter_*' span_id:828))} {($ Id.VSub_DollarName '$cpus')} {($ Id.VSub_DollarName '$cmd')}
                )
              ]
            )
            (C {(printf)} {(DQ ('%-6s %-16s %-17s %8s') (Id.Lit_Other '\\') (n))} {(DQ (PID))} 
              {(DQ (COMM))} {(DQ (SYSCALL))} {(DQ (COUNT))}
            )
            (command.Pipeline
              children: [
                (C {(perf)} {(script)} {(--fields)} 
                  {(pid) (Id.Lit_Comma ',') (comm) (Id.Lit_Comma ',') (event)}
                )
                (C {(awk)} 
                  {
                    (SQ (Token id:Id.Lit_Chars val:'$1 != "#" {\n' span_id:886) 
                      (Token
                        id: Id.Lit_Chars
                        val: '\t\tsub("syscalls:sys_enter_", ""); sub(":", "")\n'
                        span_id: 887
                      ) (Token id:Id.Lit_Chars val:'\t\ta[$1 ";" $2 ";" $3]++\n' span_id:888) 
                      (Token id:Id.Lit_Chars val:'\t}\n' span_id:889) (Token id:Id.Lit_Chars val:'\tEND {\n' span_id:890) 
                      (Token
                        id: Id.Lit_Chars
                        val: '\t\tfor (k in a) {\n'
                        span_id: 891
                      ) (Token id:Id.Lit_Chars val:'\t\t\tsplit(k, b, ";");\n' span_id:892) 
                      (Token
                        id: Id.Lit_Chars
                        val: '\t\t\tprintf "%-6s %-16s %-17s %8d\\n", b[2], b[1], b[3], a[k]\n'
                        span_id: 893
                      ) (Token id:Id.Lit_Chars val:'\t\t}\n' span_id:894) (Token id:Id.Lit_Chars val:'\t}' span_id:895)
                    )
                  }
                )
                (C {(sort)} {(-n)} {(-k4)})
                (C {($ Id.VSub_DollarName '$tcmd')})
              ]
              negated: F
            )
            (command.ControlFlow
              token: (Token id:Id.ControlFlow_Exit val:exit span_id:911)
            )
          ]
          spids: [740 754]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:tp)
          op: assign_op.Equal
          rhs: {(DQ ('-e raw_syscalls:sys_enter'))}
          spids: [919]
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.VarRef
                      token: (Token id:Id.Lit_ArithVarLike val:write_workaround span_id:928)
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:932)
            )
          ]
          action: [
            (C {(sh)} {(-c)} 
              {
                (DQ ('perf record ') ($ Id.VSub_DollarName '$tp') (" --filter 'common_pid != '") 
                  (word_part.EscapedLiteral
                    token: (Token id:Id.Lit_EscapedChar val:'\\$' span_id:945)
                  ) (word_part.EscapedLiteral token:(Token id:Id.Lit_EscapedChar val:'\\$' span_id:946)) (' ') 
                  ($ Id.VSub_DollarName '$cpus') (' ') ($ Id.VSub_DollarName '$cmd')
                )
              }
            )
          ]
          spids: [924 934]
        )
      ]
      else_action: [
        (C {(perf)} {(record)} {($ Id.VSub_DollarName '$tp')} {($ Id.VSub_DollarName '$cpus')} 
          {($ Id.VSub_DollarName '$cmd')}
        )
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (command.DParen
                  child: 
                    (arith_expr.VarRef
                      token: (Token id:Id.Lit_ArithVarLike val:opt_verbose span_id:973)
                    )
                )
              terminator: (Token id:Id.Op_Semi val:';' span_id:977)
            )
          ]
          action: [
            (C {(printf)} {(DQ ('%-6s %-16s %8s') (Id.Lit_Other '\\') (n))} {(DQ (PID))} {(DQ (COMM))} 
              {(DQ (COUNT))}
            )
            (command.Pipeline
              children: [
                (C {(perf)} {(script)} {(--fields)} {(pid) (Id.Lit_Comma ',') (comm)})
                (C {(awk)} 
                  {
                    (SQ (Token id:Id.Lit_Chars val:'$1 != "#" { a[$1 ";" $2]++ }\n' span_id:1018) 
                      (Token id:Id.Lit_Chars val:'\tEND {\n' span_id:1019) (Token id:Id.Lit_Chars val:'\t\tfor (k in a) {\n' span_id:1020) 
                      (Token
                        id: Id.Lit_Chars
                        val: '\t\t\tsplit(k, b, ";");\n'
                        span_id: 1021
                      ) (Token id:Id.Lit_Chars val:'\t\t\tprintf "%-6s %-16s %8d\\n", b[2], b[1],  a[k]\n' span_id:1022) 
                      (Token id:Id.Lit_Chars val:'\t\t}\n' span_id:1023) (Token id:Id.Lit_Chars val:'\t}' span_id:1024)
                    )
                  }
                )
                (C {(sort)} {(-n)} {(-k3)})
                (C {($ Id.VSub_DollarName '$tcmd')})
              ]
              negated: F
            )
          ]
          spids: [969 979]
        )
      ]
      else_action: [
        (C {(printf)} {(DQ ('%-16s %8s') (Id.Lit_Other '\\') (n))} {(DQ (COMM))} {(DQ (COUNT))})
        (command.Pipeline
          children: [
            (C {(perf)} {(script)} {(--fields)} {(comm)})
            (C {(awk)} 
              {
                (SQ (Token id:Id.Lit_Chars val:'$1 != "#" { a[$1]++ }\n' span_id:1072) 
                  (Token id:Id.Lit_Chars val:'\tEND {\n' span_id:1073) (Token id:Id.Lit_Chars val:'\t\tfor (k in a) {\n' span_id:1074) 
                  (Token
                    id: Id.Lit_Chars
                    val: '\t\t\tprintf "%-16s %8d\\n", k,  a[k]\n'
                    span_id: 1075
                  ) (Token id:Id.Lit_Chars val:'\t\t}\n' span_id:1076) (Token id:Id.Lit_Chars val:'\t}' span_id:1077)
                )
              }
            )
            (C {(sort)} {(-n)} {(-k2)})
            (C {($ Id.VSub_DollarName '$tcmd')})
          ]
          negated: F
        )
      ]
    )
  ]
)