(CommandList
  children: [
    (C {(rm)} {(-f)} {(tags)} {(tags.tmp)} {(tags.cfiles)} {(tags.sfiles)} {(tags.hfiles)})
    (Pipeline
      children: [
        (C {(sed)} {(-e)} {(DQ ('s, machine/, ../../include/,g'))} {(-e)} 
          {(SQ <'s,[a-z][^/    ]*/\\.\\./,,g'>)} {(.depend)}
        )
        (C {(awk)} 
          {
            (SQ <'{\n'> <'\t\tfor (i = 1; i <= NF; ++i) {\n'> 
              <'\t\t\tt = substr($i, length($i) - 1)\n'> <'\t\t\tif (t == ".c")\n'> <'\t\t\t\tcfiles[$i] = 1;\n'> <'\t\t\telse if (t == ".h")\n'> 
              <'\t\t\t\thfiles[$i] = 1;\n'> <'\t\t\telse if (t == ".s")\n'> <'\t\t\t\tsfiles[$i] = 1;\n'> <'\t\t}\n'> <'\t};\n'> <'\tEND {\n'> 
              <'\t\tfor (i in cfiles)\n'> <'\t\t\tprint i > "tags.cfiles";\n'> <'\t\tfor (i in sfiles)\n'> <'\t\t\tprint i > "tags.sfiles";\n'> 
              <'\t\tfor (i in hfiles)\n'> <'\t\t\tprint i > "tags.hfiles";\n'> <'\t}'>
            )
          }
        )
      ]
      negated: False
    )
    (C {(ctags)} {(-t)} {(-d)} {(-w)} 
      {
        (CommandSubPart
          command_list: 
            (CommandList
              children: [(C {(cat)} {(tags.cfiles)} {(tags.hfiles)} {(tags.sfiles)})]
            )
          left_token: <Left_Backtick '`'>
          spids: [176 184]
        )
      }
    )
    (Pipeline
      children: [
        (C {(egrep)} 
          {
            (DQ ('^ENTRY') (EscapedLiteralPart token:<Lit_EscapedChar '\\('>) ('.*') 
              (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>) ('|^ALTENTRY') (EscapedLiteralPart token:<Lit_EscapedChar '\\('>) ('.*') 
              (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>)
            )
          } 
          {
            (CommandSubPart
              command_list: (CommandList children:[(C {(cat)} {(tags.sfiles)})])
              left_token: <Left_Backtick '`'>
              spids: [199 203]
            )
          }
        )
        (SimpleCommand
          words: [
            {(sed)}
            {
              (DQ ('s;') (EscapedLiteralPart token:<Lit_EscapedChar '\\('>) ('[^:]*') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>) (':') (EscapedLiteralPart token:<Lit_EscapedChar '\\('>) ('[^(]*') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>) ('(') (EscapedLiteralPart token:<Lit_EscapedChar '\\('>) ('[^, )]*') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\('>) ('.*') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\)'>) (';') (EscapedLiteralPart token:<Lit_EscapedChar '\\3'>) ('\t') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\1'>) ('\t/^') (EscapedLiteralPart token:<Lit_EscapedChar '\\2'>) ('(') 
                (EscapedLiteralPart token:<Lit_EscapedChar '\\3'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\4'>) (Lit_Other '$') ('/;')
              )
            }
          ]
          redirects: [(Redir op_id:Redir_DGreat fd:-1 arg_word:{(tags)} spids:[240])]
        )
      ]
      negated: False
    )
    (C {(mv)} {(tags)} {(tags.tmp)})
    (SimpleCommand
      words: [{(sort)} {(-u)} {(tags.tmp)}]
      redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(tags)} spids:[257])]
    )
    (C {(rm)} {(tags.tmp)} {(tags.cfiles)} {(tags.sfiles)} {(tags.hfiles)})
  ]
)