(CommandList
  children: [
    (If
      arms: [
        (if_arm
          cond: (C {(Lit_Other "[")} {($ VSub_Pound "$#")} {(-ne)} {(2)} {(Lit_Other "]")})
          action: 
            (CommandList
              children: [
                (SimpleCommand
                  words: [
                    {(echo)}
                    {(DQ ("usage: ") ($ VSub_Number "$0") (" ")) (SQ <"$ARCH $CONTROL_IMAGE">)}
                  ]
                  redirects: [(Redirect op_id:Redir_GreatAnd arg_word:{(2)} fd:-1 spids:[37])]
                )
                (C {(exit)} {(1)})
              ]
            )
          spids: [-1 23]
        )
      ]
      spids: [-1 45]
    )
    (ForEach
      iter_name: i
      iter_words: [
        {(build/) (Lit_LBrace "{") (root-filesystem) (Lit_Comma ",") (native-compiler) (Lit_RBrace "}") 
          (-) (DQ ($ VSub_Number "$1"))
        }
        {(DQ ($ VSub_Number "$2"))}
      ]
      do_arg_iter: False
      body: 
        (DoGroup
          child: 
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(KW_Bang "!")} {(-e)} {(DQ ($ VSub_Name "$i"))} 
                      {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (SimpleCommand
                          words: [{(echo)} {(DQ ("No ") ($ VSub_Name "$i"))}]
                          redirects: [
                            (Redirect
                              op_id: Redir_GreatAnd
                              arg_word: {(2)}
                              fd: -1
                              spids: [101]
                            )
                          ]
                        )
                        (C {(exit)} {(1)})
                      ]
                    )
                  spids: [-1 91]
                )
              ]
              spids: [-1 110]
            )
          spids: [73 112]
        )
      spids: [57 -1]
    )
    (If
      arms: [
        (if_arm
          cond: 
            (C {(Lit_Other "[")} {(CommandSubPart command_list:(C {(id)} {(-u)}) spids:[119123])} 
              {(-ne)} {(0)} {(Lit_Other "]")}
            )
          action: 
            (CommandList
              children: [
                (SimpleCommand
                  words: [{(echo)} {(DQ ("Not root"))}]
                  redirects: [(Redirect op_id:Redir_GreatAnd arg_word:{(2)} fd:-1 spids:[139])]
                )
                (C {(exit)} {(1)})
              ]
            )
          spids: [-1 131]
        )
      ]
      spids: [-1 147]
    )
    (AndOr
      children: [
        (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$CHROOT"))} {(Lit_Other "]")})
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LeftVar name:CHROOT)
              rhs: {(DQ (build/chroot-) ($ VSub_Number "$1"))}
              spids: [166]
            )
          ]
          spids: [166]
        )
      ]
      op_id: Op_DAmp
    )
    (C {(trap)} {(SQ <"more/zapchroot.sh \"$CHROOT\"">)} {(EXIT)})
    (If
      arms: [
        (if_arm
          cond: (C {(Lit_Other "[")} {(-e)} {(DQ ($ VSub_Name "$CHROOT"))} {(Lit_Other "]")})
          action: 
            (AndOr
              children: [(C {(more/zapchroot.sh)} {(DQ ($ VSub_Name "$CHROOT"))}) (C {(exit)} {(1)})]
              op_id: Op_DPipe
            )
          spids: [-1 192]
        )
      ]
      spids: [-1 207]
    )
    (AndOr
      children: [
        (C {(cp)} {(-lan)} {(DQ (build/root-filesystem-) ($ VSub_Number "$1") (/.))} 
          {(DQ ($ VSub_Name "$CHROOT"))}
        )
        (C {(exit)} {(1)})
      ]
      op_id: Op_DPipe
    )
    (AndOr
      children: [
        (C {(cp)} {(-lan)} {(DQ (build/native-compiler-) ($ VSub_Number "$1") (/.))} 
          {(DQ ($ VSub_Name "$CHROOT"))}
        )
        (C {(exit)} {(1)})
      ]
      op_id: Op_DPipe
    )
    (If
      arms: [
        (if_arm
          cond: (C {(Lit_Other "[")} {(-d)} {(DQ ($ VSub_Number "$2"))} {(Lit_Other "]")})
          action: 
            (AndOr
              children: [
                (C {(mount)} {(-o)} {(bind)} {(DQ ($ VSub_Number "$2"))} 
                  {(DQ ($ VSub_Name "$CHROOT") (/mnt))}
                )
                (AndOr
                  children: [
                    (C {(mount)} {(-o)} {(remount) (Lit_Comma ",") (ro)} 
                      {(DQ ($ VSub_Name "$CHROOT") (/mnt))}
                    )
                    (C {(exit)} {(1)})
                  ]
                  op_id: Op_DPipe
                )
              ]
              op_id: Op_DAmp
            )
          spids: [-1 269]
        )
      ]
      else_action: 
        (AndOr
          children: [
            (C {(mount)} {(-o)} {(loop)} {(DQ ($ VSub_Number "$2"))} {(DQ ($ VSub_Name "$CHROOT") (/mnt))})
            (C {(exit)} {(1)})
          ]
          op_id: Op_DPipe
        )
      spids: [308 332]
    )
    (SimpleCommand
      words: [{(chroot)} {(DQ ($ VSub_Name "$CHROOT"))} {(/sbin/init.sh)}]
      more_env: [
        (env_pair name:CPUS val:{(1)} spids:[339])
        (env_pair name:HOST val:{(DQ ($ VSub_Number "$1"))} spids:[342])
      ]
    )
  ]
)