(command.CommandList
  children: [
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<source>} {<sources/include.sh>})
        (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<1>})
      ]
    )
    (C {<load_target>} {(DQ ($ Id.VSub_Number '$1'))})
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<check_for_base_arch>})
        (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
      ]
    )
    (C {<check_prerequisite>} {(DQ (${ Id.VSub_Name CC_PREFIX) <cc>)})
    (command.AndOr
      ops: [Id.Op_DAmp Id.Op_DPipe]
      children: [
        (C {<mkdir>} {<-p>} 
          (word.BracedTree
            parts: [
              (DQ ($ Id.VSub_DollarName '$STAGE_DIR'))
              </>
              (word_part.BracedTuple
                words: [{<tmp>} {<Id.KW_Proc proc>} {<sys>} {<dev>} {<home>} {<mnt>} {<root>}]
              )
            ]
          )
        )
        (C {<chmod>} {<a> <Id.Lit_Other '+'> <rwxt>} {(DQ ($ Id.VSub_DollarName '$STAGE_DIR') </tmp>)})
        (C {<dienow>})
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:STAGE_USR)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$STAGE_DIR') </usr>)}
          spids: [101]
        )
      ]
    )
    (command.ForEach
      iter_name: i
      iter_words: [{<bin>} {<sbin>} {<lib>} {<etc>}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.AndOr
              ops: [Id.Op_DAmp Id.Op_DPipe]
              children: [
                (C {<mkdir>} {<-p>} 
                  {(DQ ($ Id.VSub_DollarName '$STAGE_USR') </> ($ Id.VSub_DollarName '$i'))}
                )
                (C {<ln>} {<-s>} {(DQ <usr/> ($ Id.VSub_DollarName '$i'))} 
                  {(DQ ($ Id.VSub_DollarName '$STAGE_DIR') </> ($ Id.VSub_DollarName '$i'))}
                )
                (C {<dienow>})
              ]
            )
          ]
        )
    )
    (command.AndOr
      ops: [Id.Op_DAmp Id.Op_DAmp Id.Op_DPipe]
      children: [
        (C {<cp>} {<-r>} {(DQ ($ Id.VSub_DollarName '$SOURCES') </root-filesystem/.>)} 
          {(DQ ($ Id.VSub_DollarName '$STAGE_USR') </>)}
        )
        (command.Simple
          words: [
            {<echo>}
            {<-e>}
            {
              (DQ <'CROSS_TARGET='> ($ Id.VSub_DollarName '$CROSS_TARGET') <Id.Lit_Other '\\'> 
                <'nKARCH='> ($ Id.VSub_DollarName '$KARCH')
              )
            }
          ]
          redirects: [
            (redir.Redir
              op: <Id.Redir_Great '>'>
              fd: -1
              arg_word: {(DQ ($ Id.VSub_DollarName '$STAGE_USR') </src/host-info>)}
            )
          ]
        )
        (C {<cp>} {(DQ ($ Id.VSub_DollarName '$SRCDIR')) </MANIFEST>} 
          {(DQ ($ Id.VSub_DollarName '$STAGE_USR') </src>)}
        )
        (C {<dienow>})
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (C {<Id.Lit_LBracket '['>} {<Id.KW_Bang '!'>} {<-z>} 
              {(DQ ($ Id.VSub_DollarName '$MY_ROOT_OVERLAY'))} {<Id.Lit_RBracket ']'>}
            )
          ]
          action: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$TOP'))})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Pipeline
                  children: [
                    (C {<tar>} {<-c>} {<-C>} {(DQ ($ Id.VSub_DollarName '$MY_ROOT_OVERLAY'))} {<.>})
                    (C {<tar>} {<-x>} {<-C>} {(DQ ($ Id.VSub_DollarName '$STAGE_DIR'))})
                  ]
                  negated: F
                )
                (C {<dienow>})
              ]
            )
          ]
          spids: [241 255]
        )
      ]
    )
    (command.Simple
      words: [{<build_section>} {<busybox>}]
      more_env: [(env_pair name:STAGE_DIR val:{(DQ ($ Id.VSub_DollarName '$STAGE_USR'))} spids:[300])]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<cp>} {(DQ ($ Id.VSub_DollarName '$WORK')) </config-busybox>} 
          {(DQ ($ Id.VSub_DollarName '$STAGE_USR')) </src>}
        )
        (C {<dienow>})
      ]
    )
    (C {<build_section>} {<toybox>})
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {(DQ (${ Id.VSub_Name CC_PREFIX) <cc>)} 
          {(DQ (${ Id.VSub_Name SOURCES) </root-filesystem/src/hello.c>)} {<-Os>} {($ Id.VSub_DollarName '$CFLAGS')} {<-o>} 
          {(DQ ($ Id.VSub_DollarName '$STAGE_USR') </bin/hello-dynamic>)}
        )
        (C {<dienow>})
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (C {<Id.Lit_LBracket '['>} {(DQ ($ Id.VSub_DollarName '$BUILD_STATIC'))} 
              {<Id.KW_Bang '!'> <Id.Lit_Equals '='>} {<none>} {<Id.Lit_RBracket ']'>}
            )
          ]
          action: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {(DQ (${ Id.VSub_Name CC_PREFIX) <cc>)} 
                  {(DQ (${ Id.VSub_Name SOURCES) </root-filesystem/src/hello.c>)} {<-Os>} {($ Id.VSub_DollarName '$CFLAGS')} {<-static>} {<-o>} 
                  {(DQ ($ Id.VSub_DollarName '$STAGE_USR') </bin/hello-static>)}
                )
                (C {<dienow>})
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:STATIC)
                  op: assign_op.Equal
                  rhs: {<--static>}
                  spids: [421]
                )
              ]
            )
          ]
          spids: [369 384]
        )
      ]
      else_action: [
        (command.ShAssignment
          pairs: [
            (assign_pair
              lhs: (sh_lhs_expr.Name name:STATIC)
              op: assign_op.Equal
              rhs: (word.Empty)
              spids: [427]
            )
          ]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {(DQ (${ Id.VSub_Name CC_PREFIX) <cc>)} 
          {(DQ ($ Id.VSub_DollarName '$SOURCES') </toys/wrappy.c>)} {<-Os>} {($ Id.VSub_DollarName '$CFLAGS')} {($ Id.VSub_DollarName '$STATIC')} {<-o>} 
          {(DQ ($ Id.VSub_DollarName '$STAGE_USR') </bin/record-commands-wrapper>)}
        )
        (C {<dienow>})
      ]
    )
    (command.If
      arms: [
        (if_arm
          cond: [
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (command.Pipeline
                  children: [(C {<is_in_list>} {<toybox>} {($ Id.VSub_DollarName '$BUILD_STATIC')})]
                  negated: T
                )
                (command.Pipeline
                  children: [(C {<is_in_list>} {<busybox>} {($ Id.VSub_DollarName '$BUILD_STATIC')})]
                  negated: T
                )
              ]
            )
          ]
          action: [
            (C {<echo>} {<Copying>} {<compiler>} {<libraries...>})
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$STAGE_USR') </lib>)})
                (C {<dienow>})
              ]
            )
            (command.Pipeline
              children: [
                (command.Subshell
                  command_list: 
                    (command.CommandList
                      children: [
                        (command.AndOr
                          ops: [Id.Op_DPipe]
                          children: [
                            (C {<path_search>} 
                              {
                                (DQ 
                                  (command_sub
                                    left_token: <Id.Left_DollarParen '$('>
                                    command_list: 
                                      (command.CommandList
                                        children: [
                                          (command.Pipeline
                                            children: [
                                              (C {(DQ (${ Id.VSub_Name CC_PREFIX) <cc>)} 
                                                {<--print-search-dirs>}
                                              )
                                              (C {<sed>} {<-n>} {(SQ <'s/^libraries: =*//p'>)})
                                            ]
                                            negated: F
                                          )
                                        ]
                                      )
                                  )
                                )
                              } {(DQ <'*.so*'>)} {(SQ <'cp -H "$DIR/$FILE" "$STAGE_USR/lib/$FILE"'>)}
                            )
                            (C {<dienow>})
                          ]
                        )
                      ]
                    )
                )
                (C {<dotprogress>})
              ]
              negated: F
            )
            (command.AndOr
              ops: [Id.Op_DAmp]
              children: [
                (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$SKIP_STRIP'))} 
                  {<Id.Lit_RBracket ']'>}
                )
                (C {(DQ (${ Id.VSub_Name CC_PREFIX) <strip>)} {<--strip-unneeded>} 
                  {(DQ ($ Id.VSub_DollarName '$STAGE_USR')) </lib/> <Id.Lit_Star '*'> <.so>}
                )
              ]
            )
          ]
          spids: [472 492]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DAmp]
      children: [
        (C {<Id.Lit_LBracket '['>} {<-z>} {(DQ ($ Id.VSub_DollarName '$SKIP_STRIP'))} 
          {<Id.Lit_RBracket ']'>}
        )
        (C {(DQ (${ Id.VSub_Name CC_PREFIX) <strip>)} 
          (word.BracedTree
            parts: [
              (DQ ($ Id.VSub_DollarName '$STAGE_USR'))
              </>
              (word_part.BracedTuple
                words: [{<bin/> <Id.Lit_Star '*'>} {<sbin/> <Id.Lit_Star '*'>}]
              )
            ]
          )
        )
      ]
    )
    (C {<create_stage_tarball>})
    (C {<echo>} {<-e>} {(DQ <Id.Lit_Other '\\'> <'e[0mBuild complete'>)})
  ]
)