(command.CommandList
  children: [
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.Sentence
              child: 
                (C {(Id.Lit_LBracket '[')} {($ Id.VSub_Pound '$#')} {(-eq)} {(0)} {(Id.Lit_RBracket ']')})
              terminator: (Token id:Id.Op_Semi val:';' span_id:136)
            )
          ]
          action: [
            (command.Simple
              words: [
                {(echo)}
                {
                  (DQ ('Usage: ') 
                    (command_sub
                      left_token: (Token id:Id.Left_Backtick val:'`' span_id:148)
                      command_list: 
                        (command.CommandList
                          children: [(C {(basename)} {($ Id.VSub_Number '$0')})]
                        )
                    ) (' [MAKEVAR=value...] path...')
                  )
                }
              ]
              redirects: [
                (redir.Redir
                  op: (Token id:Id.Redir_GreatAnd val:'1>&' span_id:143)
                  fd: 1
                  arg_word: {(2)}
                )
              ]
            )
            (command.ControlFlow
              token: (Token id:Id.ControlFlow_Exit val:exit span_id:159)
              arg_word: {(1)}
            )
          ]
          spids: [125 138]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:SUBDIR)
          op: assign_op.Equal
          rhs: (word.Empty)
          spids: [169]
        )
      ]
    )
    (command.ForEach
      iter_name: i
      iter_words: [{(DQ ($ Id.VSub_At '$@'))}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.Case
              to_match: {(DQ ($ Id.VSub_DollarName '$i'))}
              arms: [
                (case_arm
                  pat_list: [{(Id.Lit_Star '*') (Id.Lit_Equals '=') (Id.Lit_Star '*')}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:MAKE_ARGS)
                          op: assign_op.Equal
                          rhs: 
                            {
                              (DQ ($ Id.VSub_DollarName '$MAKE_ARGS') (' ') ($ Id.VSub_DollarName '$i'))
                            }
                          spids: [200]
                        )
                      ]
                    )
                  ]
                  spids: [194 197 208 -1]
                )
                (case_arm
                  pat_list: [{(Id.Lit_Star '*')}]
                  action: [
                    (command.ShAssignment
                      pairs: [
                        (assign_pair
                          lhs: (sh_lhs_expr.Name name:SUBDIR)
                          op: assign_op.Equal
                          rhs: 
                            {(DQ ($ Id.VSub_DollarName '$SUBDIR') (' ') ($ Id.VSub_DollarName '$i'))}
                          spids: [215]
                        )
                      ]
                    )
                  ]
                  spids: [211 212 223 -1]
                )
              ]
            )
          ]
        )
    )
    (C {(make)} {(tinderbox)} {(Id.Lit_VarLike 'UNIVERSE_TARGET=') (DQ ('_cleanobj _obj everything'))} 
      {($ Id.VSub_DollarName '$MAKE_ARGS')} {(Id.Lit_VarLike 'SUBDIR_OVERRIDE=') (DQ ($ Id.VSub_DollarName '$SUBDIR'))}
    )
  ]
)