(CommandList
  children: [
    (C {(set)} {(-e)})
    (C {(cd)} {(/sys)})
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:init) op:Equal rhs:{(false)} spids:[56])]
      spids: [56]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:kernels)
          op: Equal
          rhs: {(DQ ('LINT GENERIC GENERIC98'))}
          spids: [63]
        )
      ]
      spids: [63]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:NO_MODULES) op:Equal rhs:{(yes)} spids:[69])]
      spids: [69]
    )
    (C {(export)} {(NO_MODULES)})
    (If
      arms: [
        (if_arm
          cond: [(Sentence child:(C {($ VSub_Name '$init')}) terminator:<Op_Semi ';'>)]
          action: [
            (Subshell
              child: 
                (CommandList
                  children: [
                    (C {(echo)} {(DQ ('Cleaning modules'))})
                    (C {(cd)} {(modules)})
                    (SimpleCommand
                      words: [{(make)} {(clean)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: -1
                          arg_word: {(/dev/null)}
                          spids: [105]
                        )
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 2
                          arg_word: {(1)}
                          spids: [109]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(make)} {(cleandir)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: -1
                          arg_word: {(/dev/null)}
                          spids: [117]
                        )
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 2
                          arg_word: {(1)}
                          spids: [121]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(make)} {(cleandir)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: -1
                          arg_word: {(/dev/null)}
                          spids: [129]
                        )
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 2
                          arg_word: {(1)}
                          spids: [133]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(make)} {(clean)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: -1
                          arg_word: {(/dev/null)}
                          spids: [141]
                        )
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 2
                          arg_word: {(1)}
                          spids: [145]
                        )
                      ]
                    )
                    (SimpleCommand
                      words: [{(make)} {(clean)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: -1
                          arg_word: {(/dev/null)}
                          spids: [153]
                        )
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 2
                          arg_word: {(1)}
                          spids: [157]
                        )
                      ]
                    )
                  ]
                )
              spids: [86 161]
            )
            (Subshell
              child: 
                (CommandList
                  children: [
                    (C {(echo)} {(DQ ('Cleaning compile'))})
                    (C {(cd)} {(compile)})
                    (Pipeline
                      children: [(C {(ls)}) (C {(grep)} {(-v)} {(CVS)}) (C {(xargs)} {(rm)} {(-rf)})]
                      negated: False
                    )
                  ]
                )
              spids: [165 199]
            )
          ]
          spids: [-1 83]
        )
      ]
      spids: [-1 201]
    )
    (Subshell
      child: 
        (CommandList
          children: [
            (C {(echo)} {(DQ ('Cleaning temp files'))})
            (Pipeline
              children: [
                (C {(find)} {(.)} {(-name)} {(SQ <'*.h_'>)} {(-print)})
                (C {(xargs)} {(rm)} {(-f)})
              ]
              negated: False
            )
            (Pipeline
              children: [
                (C {(find)} {(.)} {(-name)} {(SQ <'::*'>)} {(-print)})
                (C {(xargs)} {(rm)} {(-f)})
              ]
              negated: False
            )
            (Pipeline
              children: [
                (C {(find)} {(.)} {(-name)} {(SQ <'*.o'>)} {(-size)} {(0)} {(-print)})
                (C {(xargs)} {(rm)} {(-f)})
              ]
              negated: False
            )
          ]
        )
      spids: [204 276]
    )
    (C {(echo)} {(DQ ('Configuring kernels'))})
    (Subshell
      child: 
        (CommandList
          children: [
            (C {(cd)} {(i386/conf)})
            (C {(make)} {(LINT)})
            (If
              arms: [
                (if_arm
                  cond: [(Sentence child:(C {($ VSub_Name '$init')}) terminator:<Op_Semi ';'>)]
                  action: [(C {(rm)} {(-rf)} {(../../compile/LINT)} {(../../compile/GENERIC)})]
                  spids: [-1 304]
                )
              ]
              spids: [-1 316]
            )
            (C {(config)} {(LINT)})
            (C {(config)} {(GENERIC)})
          ]
        )
      spids: [285 328]
    )
    (Subshell
      child: 
        (CommandList
          children: [
            (C {(cd)} {(pc98/conf)})
            (C {(cp)} {(-f)} {(GENERIC)} {(GENERIC98)})
            (If
              arms: [
                (if_arm
                  cond: [(Sentence child:(C {($ VSub_Name '$init')}) terminator:<Op_Semi ';'>)]
                  action: [(C {(rm)} {(-rf)} {(../../compile/GENERIC98)})]
                  spids: [-1 353]
                )
              ]
              spids: [-1 363]
            )
            (C {(config)} {(GENERIC98)})
          ]
        )
      spids: [330 370]
    )
    (ForEach
      iter_name: i
      iter_words: [{($ VSub_Name '$kernels')}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (Subshell
              child: 
                (CommandList
                  children: [
                    (C {(echo)} {(DQ ('Compiling ') ($ VSub_Name '$i'))})
                    (C {(cd)} {(compile/) ($ VSub_Name '$i')})
                    (SimpleCommand
                      words: [{(make)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: -1
                          arg_word: {(x.0)}
                          spids: [403]
                        )
                        (Redir
                          op_id: Redir_GreatAnd
                          fd: 2
                          arg_word: {(1)}
                          spids: [407]
                        )
                      ]
                    )
                    (C {(tail)} {(-4)} {(x.0)})
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {(kernel)} {(Lit_Other ']')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(echo)} {(DQ ('Error: No ') ($ VSub_Name '$i') (' kernel built'))})
                            (C {(exit)} {(1)})
                          ]
                          spids: [-1 432]
                        )
                      ]
                      spids: [-1 449]
                    )
                  ]
                )
              spids: [384 452]
            )
          ]
          spids: [381 454]
        )
      spids: [378 -1]
    )
    (Subshell
      child: 
        (CommandList
          children: [
            (C {(echo)} {(DQ ('Compiling modules'))})
            (C {(cd)} {(modules)})
            (SimpleCommand
              words: [{(make)}]
              redirects: [
                (Redir op_id:Redir_Great fd:-1 arg_word:{(x.0)} spids:[471])
                (Redir op_id:Redir_GreatAnd fd:2 arg_word:{(1)} spids:[475])
              ]
            )
          ]
        )
      spids: [457 479]
    )
    (Pipeline
      children: [
        (Subshell
          child: 
            (CommandList
              children: [
                (C {(cd)} {(modules)})
                (ForEach
                  iter_name: i
                  iter_words: [{(Lit_Other '*')}]
                  do_arg_iter: False
                  body: 
                    (DoGroup
                      children: [
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(Lit_Other '[')} {(-d)} {($ VSub_Name '$i')} {(-a)} 
                                      {($ VSub_Name '$i')} {(KW_Bang '!') (Lit_Other '=')} {(CVS)} {(Lit_Other ']')}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (Subshell
                                  child: 
                                    (CommandList
                                      children: [
                                        (Sentence
                                          child: (C {(cd)} {($ VSub_Name '$i')})
                                          terminator: <Op_Semi ';'>
                                        )
                                        (AndOr
                                          children: [
                                            (SimpleCommand
                                              words: [{(ls)} {(Lit_Other '*') (.o)}]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: 2
                                                  arg_word: {(/dev/null)}
                                                  spids: [545]
                                                )
                                              ]
                                            )
                                            (C {(true)})
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      ]
                                    )
                                  spids: [532 551]
                                )
                              ]
                              spids: [-1 529]
                            )
                          ]
                          spids: [-1 554]
                        )
                      ]
                      spids: [505 556]
                    )
                  spids: [502 -1]
                )
                (C {(cd)} {(../compile)})
                (ForEach
                  iter_name: i
                  iter_words: [{($ VSub_Name '$kernels')}]
                  do_arg_iter: False
                  body: 
                    (DoGroup
                      children: [
                        (Subshell
                          child: 
                            (CommandList
                              children: [
                                (Sentence
                                  child: (C {(cd)} {($ VSub_Name '$i')})
                                  terminator: <Op_Semi ';'>
                                )
                                (SimpleCommand
                                  words: [{(ls)} {(Lit_Other '*') (.o)}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 2
                                      arg_word: {(/dev/null)}
                                      spids: [586]
                                    )
                                  ]
                                )
                              ]
                            )
                          spids: [573 589]
                        )
                      ]
                      spids: [570 591]
                    )
                  spids: [567 -1]
                )
              ]
            )
          spids: [491 593]
        )
        (C {(sed)} 
          {
            (SQ <'\n'> <'/aicasm/d\t\n'> <'/genassym/d\n'> <'/vers.o/d\n'> <'/setdef0.o/d\n'> 
              <'/setdef1.o/d\n'>
            )
          }
        )
        (SimpleCommand
          words: [{(sort)} {(-u)}]
          redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(_)} spids:[614])]
        )
      ]
      negated: False
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:objlist)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: (CommandList children:[(C {(cat)} {(_)})])
                left_token: <Left_Backtick '`'>
                spids: [620 624]
              )
            }
          spids: [619]
        )
      ]
      spids: [619]
    )
    (ForEach
      iter_name: o
      iter_words: [{($ VSub_Name '$objlist')}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:l) op:Equal rhs:{(DQ )} spids:[639])]
              spids: [639]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:src) op:Equal rhs:{(DQ )} spids:[644])]
              spids: [644]
            )
            (ForEach
              iter_name: k
              iter_words: [{($ VSub_Name '$kernels')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} 
                                  {(compile/) ($ VSub_Name '$k') (/) ($ VSub_Name '$o')} {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Sentence
                              child: (ControlFlow token:<ControlFlow_Continue continue>)
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          spids: [-1 678]
                        )
                      ]
                      spids: [-1 685]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:l)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$l') (' compile/') ($ VSub_Name '$k'))}
                          spids: [688]
                        )
                      ]
                      spids: [688]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$src'))} {(Lit_Other '=')} 
                                  {(DQ (x))} {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(cd)} {(compile/) ($ VSub_Name '$k')})
                            (C {(mv)} {($ VSub_Name '$o')} {(${ VSub_Name o) (_)})
                            (SimpleCommand
                              words: [{(make)} {(-n)} {($ VSub_Name '$o')}]
                              redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(_)} spids:[740])]
                            )
                            (C {(mv)} {(${ VSub_Name o) (_)} {($ VSub_Name '$o')})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:src)
                                  op: Equal
                                  rhs: 
                                    {(compile/) ($ VSub_Name '$k') (/) 
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (C {(awk)} {(SQ <'$1 == "cc" {print $NF}'>)} {(_)})
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [759 767]
                                      )
                                    }
                                  spids: [755]
                                )
                              ]
                              spids: [755]
                            )
                            (C {(cd)} {(../..)})
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (SimpleCommand
                                          words: [
                                            {(expr)}
                                            {(DQ (x) ($ VSub_Name '$src'))}
                                            {(Lit_Other ':')}
                                            {(SQ <'x.*\\.c$'>)}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: -1
                                              arg_word: {(/dev/null)}
                                              spids: [790]
                                            )
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [(C {(true)})]
                                  spids: [-1 796]
                                )
                              ]
                              else_action: [
                                (C {(echo)} {(NO)} {(SRC)} {($ VSub_Name '$o')})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:src)
                                      op: Equal
                                      rhs: {(DQ )}
                                      spids: [814]
                                    )
                                  ]
                                  spids: [814]
                                )
                              ]
                              spids: [802 819]
                            )
                          ]
                          spids: [-1 715]
                        )
                      ]
                      spids: [-1 822]
                    )
                  ]
                  spids: [658 825]
                )
              spids: [654 -1]
            )
            (ForEach
              iter_name: m
              iter_words: [{(modules/) (Lit_Other '*')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(KW_Bang '!')} {(-d)} {($ VSub_Name '$m')} {(-o)} 
                                  {(KW_Bang '!')} {(-f)} {($ VSub_Name '$m') (/) ($ VSub_Name '$o')} {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Sentence
                              child: (ControlFlow token:<ControlFlow_Continue continue>)
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          spids: [-1 865]
                        )
                      ]
                      spids: [-1 872]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:l)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$l') (' ') ($ VSub_Name '$m'))}
                          spids: [875]
                        )
                      ]
                      spids: [875]
                    )
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$src'))} {(Lit_Other '=')} 
                                  {(DQ (x))} {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(cd)} {($ VSub_Name '$m')})
                            (C {(mv)} {($ VSub_Name '$o')} {(${ VSub_Name o) (_)})
                            (SimpleCommand
                              words: [{(make)} {(-n)} {($ VSub_Name '$o')}]
                              redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(_)} spids:[926])]
                            )
                            (C {(mv)} {(${ VSub_Name o) (_)} {($ VSub_Name '$o')})
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:src)
                                  op: Equal
                                  rhs: 
                                    {
                                      (CommandSubPart
                                        command_list: 
                                          (CommandList
                                            children: [
                                              (C {(awk)} {(SQ <'$1 == "cc" {print $NF}'>)} {(_)})
                                            ]
                                          )
                                        left_token: <Left_Backtick '`'>
                                        spids: [942 950]
                                      )
                                    }
                                  spids: [941]
                                )
                              ]
                              spids: [941]
                            )
                            (C {(cd)} {(../..)})
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (SimpleCommand
                                          words: [
                                            {(expr)}
                                            {(DQ (x) ($ VSub_Name '$src'))}
                                            {(Lit_Other ':')}
                                            {(SQ <'x.*\\.c$'>)}
                                          ]
                                          redirects: [
                                            (Redir
                                              op_id: Redir_Great
                                              fd: -1
                                              arg_word: {(/dev/null)}
                                              spids: [973]
                                            )
                                          ]
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (Sentence
                                              child: 
                                                (C {(Lit_Other '[')} 
                                                  {
                                                    (DQ 
                                                      (CommandSubPart
                                                        command_list: 
                                                          (CommandList
                                                            children: [
                                                              (C {(dirname)} {($ VSub_Name '$src')})
                                                            ]
                                                          )
                                                        left_token: <Left_Backtick '`'>
                                                        spids: [987 991]
                                                      )
                                                    )
                                                  } {(Lit_Other '=')} {(DQ (.))} {(Lit_Other ']')}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:src)
                                                  op: Equal
                                                  rhs: 
                                                    {
                                                      (DQ ($ VSub_Name '$m') (/) ($ VSub_Name '$src'))
                                                    }
                                                  spids: [1007]
                                                )
                                              ]
                                              spids: [1007]
                                            )
                                          ]
                                          spids: [-1 1004]
                                        )
                                      ]
                                      spids: [-1 1015]
                                    )
                                    (C {(true)})
                                  ]
                                  spids: [-1 979]
                                )
                              ]
                              else_action: [
                                (C {(echo)} {(NO)} {(SRC)} {($ VSub_Name '$o')})
                                (Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (LhsName name:src)
                                      op: Equal
                                      rhs: {(DQ )}
                                      spids: [1033]
                                    )
                                  ]
                                  spids: [1033]
                                )
                              ]
                              spids: [1021 1038]
                            )
                          ]
                          spids: [-1 902]
                        )
                      ]
                      spids: [-1 1041]
                    )
                  ]
                  spids: [838 1044]
                )
              spids: [833 -1]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$src'))} {(Lit_Other '=')} {(DQ (x))} 
                          {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(echo)} {(DQ ('NO SOURCE ') ($ VSub_Name '$o'))})
                    (ControlFlow token:<ControlFlow_Continue continue>)
                  ]
                  spids: [-1 1066]
                )
              ]
              spids: [-1 1080]
            )
            (C {(echo)} {(DQ ('OBJ\t') ($ VSub_Name '$o'))})
            (C {(echo)} {(DQ ('\tSRC\t') ($ VSub_Name '$src'))})
            (Pipeline
              children: [
                (C {(grep)} {(-n)} {(SQ <'^[ \t]*#[ \t]*include'>)} {($ VSub_Name '$src')})
                (C {(sed)} 
                  {
                    (SQ <'\n'> <'\ts/^\\([0-9]*\\):[ \t]*#[ \t]*include[ \t]*[<"]/\\1 /\n'> 
                      <'\ts/[">].*//\n'> <'\t/ opt_/d\n'> <'\t'>
                    )
                  }
                )
                (C {(sort)} {(-rn)})
                (While
                  cond: [(C {(read)} {(lin)} {(incl)})]
                  body: 
                    (DoGroup
                      children: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LhsName name:S)
                              op: Equal
                              rhs: {(DQ )}
                              spids: [1142]
                            )
                          ]
                          spids: [1142]
                        )
                        (C {(echo)} 
                          {(DQ ('\t\tINCL\t') ($ VSub_Name '$lin') ('\t') ($ VSub_Name '$incl'))}
                        )
                        (C {(cp)} {($ VSub_Name '$src')} {(${ VSub_Name src) (_)})
                        (SimpleCommand
                          words: [{(sed)} {(DQ (${ VSub_Name lin) ('s/.*//'))} {(${ VSub_Name src) (_)}]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: -1
                              arg_word: {(${ VSub_Name src)}
                              spids: [1187]
                            )
                          ]
                        )
                        (ForEach
                          iter_name: t
                          iter_words: [{($ VSub_Name '$l')}]
                          do_arg_iter: False
                          body: 
                            (DoGroup
                              children: [
                                (C {(cd)} {($ VSub_Name '$t')})
                                (C {(mv)} {(${ VSub_Name o)} {(${ VSub_Name o) (_)})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (SimpleCommand
                                              words: [{(make)} {(${ VSub_Name o)}]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: -1
                                                  arg_word: {(_log)}
                                                  spids: [1231]
                                                )
                                                (Redir
                                                  op_id: Redir_GreatAnd
                                                  fd: 2
                                                  arg_word: {(1)}
                                                  spids: [1235]
                                                )
                                              ]
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(cmp)} {(-s)} {(${ VSub_Name o)} 
                                                      {(${ VSub_Name o) (_)}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (C {(echo)} 
                                                  {
                                                    (DQ ('\t\t\t') ($ VSub_Name '$t') ('\tsame object'))
                                                  }
                                                )
                                              ]
                                              spids: [-1 1260]
                                            )
                                          ]
                                          else_action: [
                                            (C {(echo)} 
                                              {
                                                (DQ ('\t\t\t') ($ VSub_Name '$t') ('\tchanged object'))
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:S)
                                                  op: Equal
                                                  rhs: {(TAG)}
                                                  spids: [1284]
                                                )
                                              ]
                                              spids: [1284]
                                            )
                                          ]
                                          spids: [1272 1288]
                                        )
                                      ]
                                      spids: [-1 1240]
                                    )
                                  ]
                                  else_action: [
                                    (C {(echo)} {(DQ ('\t\t\t') ($ VSub_Name '$t') ('\tused'))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:S)
                                          op: Equal
                                          rhs: {(TAG)}
                                          spids: [1303]
                                        )
                                      ]
                                      spids: [1303]
                                    )
                                  ]
                                  spids: [1291 1307]
                                )
                                (C {(mv)} {(${ VSub_Name o) (_)} {(${ VSub_Name o)})
                                (C {(cd)} {(../..)})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$S'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [(ControlFlow token:<ControlFlow_Break break>)]
                                      spids: [-1 1347]
                                    )
                                  ]
                                  spids: [-1 1353]
                                )
                              ]
                              spids: [1203 1356]
                            )
                          spids: [1199 -1]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$S'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (C {(mv)} {(${ VSub_Name src) (_)} {(${ VSub_Name src)})
                                (ControlFlow
                                  token: <ControlFlow_Continue continue>
                                )
                              ]
                              spids: [-1 1379]
                            )
                          ]
                          spids: [-1 1397]
                        )
                        (ForEach
                          iter_name: t
                          iter_words: [{($ VSub_Name '$l')}]
                          do_arg_iter: False
                          body: 
                            (DoGroup
                              children: [
                                (C {(cd)} {($ VSub_Name '$t')})
                                (C {(rm)} {(-rf)} {(foo)})
                                (C {(mkdir)} {(-p)} {(foo/) (${ VSub_Name incl)})
                                (C {(rmdir)} {(foo/) (${ VSub_Name incl)})
                                (C {(touch)} {(foo/) (${ VSub_Name incl)})
                                (C {(mv)} {(${ VSub_Name o)} {(${ VSub_Name o) (_)})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (SimpleCommand
                                              words: [
                                                {(make)}
                                                {(Lit_VarLike 'INCLMAGIC=') (-Ifoo)}
                                                {(${ VSub_Name o)}
                                              ]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: -1
                                                  arg_word: {(_log2)}
                                                  spids: [1478]
                                                )
                                                (Redir
                                                  op_id: Redir_GreatAnd
                                                  fd: 2
                                                  arg_word: {(1)}
                                                  spids: [1482]
                                                )
                                              ]
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: 
                                                    (C {(cmp)} {(-s)} {(${ VSub_Name o)} 
                                                      {(${ VSub_Name o) (_)}
                                                    )
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (C {(echo)} 
                                                  {
                                                    (DQ ('\t\t\t') ($ VSub_Name '$t') 
                                                      ('\tstill same object')
                                                    )
                                                  }
                                                )
                                              ]
                                              spids: [-1 1507]
                                            )
                                          ]
                                          else_action: [
                                            (C {(echo)} 
                                              {
                                                (DQ ('\t\t\t') ($ VSub_Name '$t') ('\tchanged object'))
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:S)
                                                  op: Equal
                                                  rhs: {(TAG)}
                                                  spids: [1531]
                                                )
                                              ]
                                              spids: [1531]
                                            )
                                          ]
                                          spids: [1519 1535]
                                        )
                                      ]
                                      spids: [-1 1487]
                                    )
                                  ]
                                  else_action: [
                                    (C {(echo)} 
                                      {(DQ ('\t\t\t') ($ VSub_Name '$t') ('\tnested include'))}
                                    )
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LhsName name:S)
                                          op: Equal
                                          rhs: {(TAG)}
                                          spids: [1550]
                                        )
                                      ]
                                      spids: [1550]
                                    )
                                  ]
                                  spids: [1538 1554]
                                )
                                (C {(rm)} {(-rf)} {(foo)})
                                (C {(mv)} {(${ VSub_Name o) (_)} {(${ VSub_Name o)})
                                (C {(cd)} {(../..)})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$S'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [(ControlFlow token:<ControlFlow_Break break>)]
                                      spids: [-1 1601]
                                    )
                                  ]
                                  spids: [-1 1607]
                                )
                              ]
                              spids: [1414 1610]
                            )
                          spids: [1410 -1]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$S'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (C {(mv)} {(${ VSub_Name src) (_)} {(${ VSub_Name src)})
                                (ControlFlow
                                  token: <ControlFlow_Continue continue>
                                )
                              ]
                              spids: [-1 1633]
                            )
                          ]
                          spids: [-1 1651]
                        )
                        (SimpleCommand
                          words: [
                            {(sed)}
                            {
                              (DQ (${ VSub_Name lin) ('s/.*/#error ') 
                                (EscapedLiteralPart
                                  token: <Lit_EscapedChar '\\"'>
                                ) (BARF) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (/)
                              )
                            }
                            {(${ VSub_Name src) (_)}
                          ]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: -1
                              arg_word: {(${ VSub_Name src)}
                              spids: [1678]
                            )
                          ]
                        )
                        (ForEach
                          iter_name: t
                          iter_words: [{($ VSub_Name '$l')}]
                          do_arg_iter: False
                          body: 
                            (DoGroup
                              children: [
                                (C {(cd)} {($ VSub_Name '$t')})
                                (C {(mv)} {(${ VSub_Name o)} {(${ VSub_Name o) (_)})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (SimpleCommand
                                              words: [{(make)} {(${ VSub_Name o)}]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: -1
                                                  arg_word: {(/dev/null)}
                                                  spids: [1722]
                                                )
                                                (Redir
                                                  op_id: Redir_GreatAnd
                                                  fd: 2
                                                  arg_word: {(1)}
                                                  spids: [1726]
                                                )
                                              ]
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (C {(echo)} 
                                          {(DQ ('\t\t\t') ($ VSub_Name '$t') ('\tline not read'))}
                                        )
                                        (Assignment
                                          keyword: Assign_None
                                          pairs: [
                                            (assign_pair
                                              lhs: (LhsName name:S)
                                              op: Equal
                                              rhs: {(TAG)}
                                              spids: [1743]
                                            )
                                          ]
                                          spids: [1743]
                                        )
                                      ]
                                      spids: [-1 1731]
                                    )
                                  ]
                                  spids: [-1 1747]
                                )
                                (C {(mv)} {(${ VSub_Name o) (_)} {(${ VSub_Name o)})
                                (C {(cd)} {(../..)})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$S'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [(ControlFlow token:<ControlFlow_Break break>)]
                                      spids: [-1 1787]
                                    )
                                  ]
                                  spids: [-1 1793]
                                )
                              ]
                              spids: [1694 1796]
                            )
                          spids: [1690 -1]
                        )
                        (C {(mv)} {(${ VSub_Name src) (_)} {(${ VSub_Name src)})
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$S'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                              spids: [-1 1832]
                            )
                          ]
                          spids: [-1 1838]
                        )
                        (ForEach
                          iter_name: t
                          iter_words: [{($ VSub_Name '$l')}]
                          do_arg_iter: False
                          body: 
                            (DoGroup
                              children: [
                                (C {(cd)} {($ VSub_Name '$t')})
                                (C {(mv)} {(${ VSub_Name o)} {(${ VSub_Name o) (_)})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (SimpleCommand
                                              words: [{(make)} {(${ VSub_Name o)}]
                                              redirects: [
                                                (Redir
                                                  op_id: Redir_Great
                                                  fd: -1
                                                  arg_word: {(_ref)}
                                                  spids: [1884]
                                                )
                                                (Redir
                                                  op_id: Redir_GreatAnd
                                                  fd: 2
                                                  arg_word: {(1)}
                                                  spids: [1888]
                                                )
                                              ]
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [
                                        (If
                                          arms: [
                                            (if_arm
                                              cond: [
                                                (Sentence
                                                  child: (C {(cmp)} {(-s)} {(_ref)} {(_log)})
                                                  terminator: <Op_Semi ';'>
                                                )
                                              ]
                                              action: [
                                                (C {(echo)} 
                                                  {
                                                    (DQ ('\t\t\t') ($ VSub_Name '$t') 
                                                      ('\tsame warnings')
                                                    )
                                                  }
                                                )
                                              ]
                                              spids: [-1 1908]
                                            )
                                          ]
                                          else_action: [
                                            (C {(echo)} 
                                              {
                                                (DQ ('\t\t\t') ($ VSub_Name '$t') 
                                                  ('\tchanged warnings')
                                                )
                                              }
                                            )
                                            (Assignment
                                              keyword: Assign_None
                                              pairs: [
                                                (assign_pair
                                                  lhs: (LhsName name:S)
                                                  op: Equal
                                                  rhs: {(TAG)}
                                                  spids: [1932]
                                                )
                                              ]
                                              spids: [1932]
                                            )
                                          ]
                                          spids: [1920 1936]
                                        )
                                      ]
                                      spids: [-1 1893]
                                    )
                                  ]
                                  else_action: [(C {(echo)} {(DQ ('ARGHH!!!'))}) (C {(exit)} {(9)})]
                                  spids: [1939 1954]
                                )
                                (C {(mv)} {(${ VSub_Name o) (_)} {(${ VSub_Name o)})
                                (C {(cd)} {(../..)})
                                (If
                                  arms: [
                                    (if_arm
                                      cond: [
                                        (Sentence
                                          child: 
                                            (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$S'))} 
                                              {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}
                                            )
                                          terminator: <Op_Semi ';'>
                                        )
                                      ]
                                      action: [(ControlFlow token:<ControlFlow_Break break>)]
                                      spids: [-1 1996]
                                    )
                                  ]
                                  spids: [-1 2002]
                                )
                              ]
                              spids: [1856 2005]
                            )
                          spids: [1852 -1]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(Lit_Other '[')} {(DQ (x) ($ VSub_Name '$S'))} 
                                      {(KW_Bang '!') (Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [(ControlFlow token:<ControlFlow_Continue continue>)]
                              spids: [-1 2028]
                            )
                          ]
                          spids: [-1 2034]
                        )
                        (C {(cp)} {($ VSub_Name '$src')} {(${ VSub_Name src) (_)})
                        (SimpleCommand
                          words: [{(sed)} {(DQ (${ VSub_Name lin) (d))} {(${ VSub_Name src) (_)}]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: -1
                              arg_word: {(${ VSub_Name src)}
                              spids: [2061]
                            )
                          ]
                        )
                        (C {(rm)} {(${ VSub_Name src) (_)})
                        (C {(touch)} {(_again)})
                        (C {(echo)} 
                          {
                            (DQ ('BINGO ') ($ VSub_Name '$src') (' ') ($ VSub_Name '$lin') (' ') 
                              ($ VSub_Name '$incl') (' ') ($ VSub_Name '$obj') (' ') ($ VSub_Name '$l')
                            )
                          }
                        )
                      ]
                      spids: [1139 2097]
                    )
                )
              ]
              negated: False
            )
          ]
          spids: [636 2099]
        )
      spids: [633 -1]
    )
  ]
)