(CommandList
  children: [
    (FuncDef
      name: cc_path
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LeftVar name:i) spids:[21])]
              spids: [19]
            )
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$MY_CROSS_PATH"))} 
                      {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LeftVar name:CC_PREFIX)
                              rhs: {(DQ ($ VSub_Name "$MY_CC_PREFIX"))}
                              spids: [43]
                            )
                          ]
                          spids: [43]
                        )
                        (AndOr
                          children: [
                            (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$CC_PREFIX"))} 
                              {(Lit_Other "]")}
                            )
                            (AndOr
                              children: [
                                (SimpleCommand
                                  words: [{(echo)} {(DQ ("MY_CROSS_PATH without MY_CC_PREFIX"))}]
                                  redirects: [
                                    (Redirect
                                      op_id: Redir_GreatAnd
                                      arg_word: {(2)}
                                      fd: -1
                                      spids: [68]
                                    )
                                  ]
                                )
                                (C {(dienow)})
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (C {(echo)} {(-n)} {(DQ ($ VSub_Name "$MY_CROSS_PATH") (":"))})
                        (C {(return)})
                      ]
                    )
                  spids: [-1 40]
                )
              ]
              spids: [-1 90]
            )
            (ForEach
              iter_name: i
              iter_words: [
                {(DQ ($ VSub_Name "$BUILD")) (/) (Lit_LBrace "{") (Lit_Comma ",") (simple-) 
                  (Lit_RBrace "}") (cross-compiler-) (DQ ($ VSub_Number "$1") (/bin))
                }
              ]
              do_arg_iter: False
              body: 
                (DoGroup
                  child: 
                    (AndOr
                      children: [
                        (C {(Lit_Other "[")} {(-e)} 
                          {(DQ ($ VSub_Name "$i") (/) ($ VSub_Number "$1") (-cc))} {(Lit_Other "]")}
                        )
                        (C {(break)})
                      ]
                      op_id: Op_DAmp
                    )
                  spids: [120 141]
                )
              spids: [104 -1]
            )
            (C {(echo)} {(-n)} {(DQ ($ VSub_Name "$i") (":"))})
          ]
          spids: [16]
        )
      spids: [12 15]
    )
    (FuncDef
      name: base_architecture
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:ARCH)
                  rhs: {(DQ ($ VSub_Number "$1"))}
                  spids: [163]
                )
              ]
              spids: [163]
            )
            (C {(source)} {(DQ ($ VSub_Name "$CONFIG_DIR") (/) ($ VSub_Number "$1"))})
          ]
          spids: [160]
        )
      spids: [156 159]
    )
    (FuncDef
      name: load_target
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:ARCH_NAME)
                  rhs: {(DQ ($ VSub_Number "$1"))}
                  spids: [192]
                )
              ]
              spids: [192]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:CONFIG_DIR)
                  rhs: {(DQ ($ VSub_Name "$SOURCES") (/targets))}
                  spids: [198]
                )
              ]
              spids: [198]
            )
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(-f)} 
                      {(DQ ($ VSub_Name "$CONFIG_DIR") (/) ($ VSub_Number "$1"))} {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (C {(base_architecture)} {(DQ ($ VSub_Name "$ARCH_NAME"))})
                        (Assignment
                          keyword: Assign_None
                          pairs: [(assign_pair lhs:(LeftVar name:CONFIG_DIR) rhs:{(SQ )} spids:[236])]
                          spids: [236]
                        )
                      ]
                    )
                  spids: [-1 226]
                )
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(-f)} 
                      {(DQ ($ VSub_Name "$CONFIG_DIR") (/) ($ VSub_Number "$1") (/settings))} {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (C {(source)} 
                          {(DQ ($ VSub_Name "$CONFIG_DIR") (/) ($ VSub_Number "$1") (/settings))}
                        )
                        (AndOr
                          children: [
                            (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$ARCH"))} {(Lit_Other "]")})
                            (C {(dienow)} {(DQ ("No base_architecture"))})
                          ]
                          op_id: Op_DAmp
                        )
                      ]
                    )
                  spids: [239 255]
                )
              ]
              else_action: 
                (CommandList
                  children: [
                    (C {(echo)} {(DQ ("Supported architectures: "))})
                    (C {(ls)} {(DQ ($ VSub_Name "$CONFIG_DIR"))})
                    (C {(exit)} {(1)})
                  ]
                )
              spids: [287 310]
            )
            (Assignment
              keyword: Assign_Export
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:WORK)
                  rhs: {(DQ (${ VSub_Name BUILD) (/temp-) ($ VSub_Name "$ARCH_NAME"))}
                  spids: [321]
                )
              ]
              spids: [319]
            )
            (C {(export_if_blank)} 
              {(Lit_VarLike "CROSS_HOST=") 
                (CommandSubPart command_list:(C {(uname)} {(-m)}) spids:[355359]) (-walrus-linux)
              }
            )
            (C {(export_if_blank)} {(Lit_VarLike "CROSS_TARGET=") (${ VSub_Name ARCH) (-unknown-linux)})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:STAGE_DIR)
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$BUILD") (/) (${ VSub_Name STAGE_NAME) (-) 
                        (${ VSub_Name ARCH_NAME)
                      )
                    }
                  spids: [378]
                )
              ]
              spids: [378]
            )
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$KEEP_STAGEDIR"))} {(Lit_Other "]")})
                  action: (C {(blank_tempdir)} {(DQ ($ VSub_Name "$STAGE_DIR"))})
                  spids: [-1 406]
                )
              ]
              else_action: 
                (AndOr
                  children: [(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$STAGE_DIR"))}) (C {(dienow)})]
                  op_id: Op_DPipe
                )
              spids: [416 432]
            )
            (SimpleCommand
              words: [{(blank_tempdir)} {(DQ ($ VSub_Name "$WORK"))}]
              more_env: [
                (env_pair
                  name: NO_CLEANUP
                  val: 
                    {
                      (BracedVarSub
                        token: <VSub_Name NO_CLEANUP>
                        suffix_op: 
                          (PatSub
                            pat: {(temp)}
                            replace: {(Lit_Slash /)}
                            do_all: False
                            do_prefix: False
                            do_suffix: False
                          )
                        spids: [436 442]
                      )
                    }
                  spids: [435]
                )
              ]
            )
            (Assignment
              keyword: Assign_Export
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:PATH)
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: (C {(cc_path)} {(DQ ($ VSub_Name "$ARCH"))})
                          spids: [456 462]
                        ) ($ VSub_Name "$PATH")
                      )
                    }
                  spids: [454]
                )
              ]
              spids: [452]
            )
            (AndOr
              children: [
                (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$HOST_ARCH"))} 
                  {(Lit_Other "]")}
                )
                (AndOr
                  children: [
                    (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$HOST_ARCH"))} 
                      {(KW_Bang "!") (Lit_Other "=")} {(DQ ($ VSub_Name "$ARCH"))} {(Lit_Other "]")}
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LeftVar name:PATH)
                          rhs: 
                            {
                              (DQ 
                                (CommandSubPart
                                  command_list: (C {(cc_path)} {(DQ ($ VSub_Name "$HOST_ARCH"))})
                                  spids: [501 507]
                                ) ($ VSub_Name "$PATH")
                              )
                            }
                          spids: [499]
                        )
                      ]
                      spids: [499]
                    )
                  ]
                  op_id: Op_DAmp
                )
              ]
              op_id: Op_DAmp
            )
            (C {(export_if_blank)} {(Lit_VarLike "CC_PREFIX=") (DQ (${ VSub_Name ARCH) (-))})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:DO_CROSS)
                  rhs: {(DQ ("CROSS_COMPILE=") ($ VSub_Name "$CC_PREFIX"))}
                  spids: [524]
                )
              ]
              spids: [524]
            )
            (C {(return)} {(0)})
          ]
          spids: [184]
        )
      spids: [180 183]
    )
    (FuncDef
      name: build_section
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(is_in_list)} {($ VSub_Number "$1")} {($ VSub_Name "$BUILD_STATIC")})
                (AndOr
                  children: [
                    (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$ARCH"))} 
                      {(Lit_Other "]")}
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LeftVar name:STATIC_FLAGS)
                          rhs: {(DQ (--static))}
                          spids: [587]
                        )
                      ]
                      spids: [587]
                    )
                  ]
                  op_id: Op_DAmp
                )
              ]
              op_id: Op_DAmp
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:OLDCPUS)
                  rhs: {($ VSub_Name "$CPUS")}
                  spids: [594]
                )
              ]
              spids: [594]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:OLDNOCLEAN)
                  rhs: {($ VSub_Name "$NO_CLEANUP")}
                  spids: [598]
                )
              ]
              spids: [598]
            )
            (AndOr
              children: [
                (C {(is_in_list)} {($ VSub_Number "$1")} {($ VSub_Name "$DEBUG_PACKAGE")})
                (AndOr
                  children: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LeftVar name:CPUS) rhs:{(1)} spids:[610])]
                      spids: [610]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LeftVar name:NO_CLEANUP) rhs:{(1)} spids:[615])]
                      spids: [615]
                    )
                  ]
                  op_id: Op_DAmp
                )
              ]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(-e)} 
                      {(DQ ($ VSub_Name "$SOURCES") (/sections/) ($ VSub_Number "$1")) (.build)} {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (C {(setupfor)} {(DQ ($ VSub_Number "$1"))})
                        (C {(.)} 
                          {(DQ ($ VSub_Name "$SOURCES") (/sections/) ($ VSub_Number "$1")) (.build)}
                        )
                        (C {(cleanup)})
                      ]
                    )
                  spids: [-1 636]
                )
              ]
              else_action: 
                (CommandList
                  children: [
                    (C {(announce)} {(DQ ($ VSub_Number "$1"))})
                    (C {(.)} 
                      {(DQ ($ VSub_Name "$SOURCES")) (/sections/) (DQ ($ VSub_Number "$1")) (.sh)}
                    )
                  ]
                )
              spids: [659 681]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:CPUS)
                  rhs: {($ VSub_Name "$OLDCPUS")}
                  spids: [684]
                )
              ]
              spids: [684]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:NO_CLEANUP)
                  rhs: {($ VSub_Name "$OLDNOCLEAN")}
                  spids: [688]
                )
              ]
              spids: [688]
            )
          ]
          spids: [550]
        )
      spids: [546 549]
    )
    (FuncDef
      name: getconfig
      body: 
        (BraceGroup
          children: [
            (ForEach
              iter_name: i
              iter_words: [
                {(Lit_LBrace "{") ($ VSub_Name "$ARCH_NAME") (Lit_Comma ",") ($ VSub_Name "$ARCH") 
                  (Lit_RBrace "}") (/miniconfig-) ($ VSub_Number "$1")
                }
              ]
              do_arg_iter: False
              body: 
                (DoGroup
                  child: 
                    (AndOr
                      children: [
                        (C {(Lit_Other "[")} {(-f)} 
                          {(DQ ($ VSub_Name "$CONFIG_DIR") (/) ($ VSub_Name "$i"))} {(Lit_Other "]")}
                        )
                        (AndOr
                          children: [
                            (C {(cat)} {(DQ ($ VSub_Name "$CONFIG_DIR") (/) ($ VSub_Name "$i"))})
                            (C {(return)})
                          ]
                          op_id: Op_DAmp
                        )
                      ]
                      op_id: Op_DAmp
                    )
                  spids: [720 750]
                )
              spids: [710 -1]
            )
            (C {(cat)} {(DQ ($ VSub_Name "$SOURCES") (/baseconfig-) ($ VSub_Number "$1"))})
            (C {(eval)} 
              {
                (DQ ("echo ") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">) 
                  (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("{") 
                  (CommandSubPart
                    command_list: 
                      (Pipeline
                        children: [(C {(echo)} {($ VSub_Number "$1")}) (C {(tr)} {(a-z)} {(A-Z)})]
                        negated: False
                      )
                    spids: [774 786]
                  ) ("_CONFIG}") (EscapedLiteralPart token:<Lit_EscapedChar "\\\"">)
                )
              }
            )
          ]
          spids: [702]
        )
      spids: [698 701]
    )
    (FuncDef
      name: recent_binary_files
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LeftVar name:PREVIOUS) rhs:{(SQ )} spids:[805])]
              spids: [805]
            )
            (Pipeline
              children: [
                (Subshell
                  children: [
                    (CommandList
                      children: [
                        (AndOr
                          children: [(C {(cd)} {(DQ ($ VSub_Name "$STAGE_DIR"))}) (C {(dienow)})]
                          op_id: Op_DPipe
                        )
                        (Pipeline
                          children: [
                            (C {(find)} {(.)} {(-depth)} {(-newer)} 
                              {(DQ ($ VSub_Name "$CURSRC") (/BUILD-TIMESTAMP))}
                            )
                            (C {(sed)} {(-e)} {(SQ <"s/^.//">)} {(-e)} {(SQ <"s/^.//">)} {(-e)} 
                              {(SQ <"/^$/d">)}
                            )
                          ]
                          negated: False
                        )
                      ]
                    )
                  ]
                  spids: [808 858]
                )
                (While
                  cond: (C {(read)} {(i)})
                  body: 
                    (DoGroup
                      child: 
                        (CommandList
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:TEMP)
                                  rhs: 
                                    {
                                      (DQ 
                                        (BracedVarSub
                                          token: <VSub_Name PREVIOUS>
                                          suffix_op: 
                                            (StringUnary
                                              op_id: VOp1_DPound
                                              arg_word: {(DQ ($ VSub_Name "$i")) (Lit_Slash /)}
                                            )
                                          spids: [874 881]
                                        )
                                      )
                                    }
                                  spids: [872]
                                )
                              ]
                              spids: [872]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: 
                                    (C {(Lit_Other "[")} 
                                      {
                                        (ArithSubPart
                                          anode: 
                                            (ArithBinary
                                              op_id: Arith_Minus
                                              left: 
                                                (ArithWord
                                                  w: 
                                                    {
                                                      (BracedVarSub
                                                        token: <VSub_Name PREVIOUS>
                                                        prefix_op: VSub_Pound
                                                        spids: [891 894]
                                                      )
                                                    }
                                                )
                                              right: 
                                                (ArithWord
                                                  w: 
                                                    {
                                                      (BracedVarSub
                                                        token: <VSub_Name TEMP>
                                                        prefix_op: VSub_Pound
                                                        spids: [896 899]
                                                      )
                                                    }
                                                )
                                            )
                                          spids: [890 900]
                                        )
                                      } {(-ne)} 
                                      {
                                        (ArithSubPart
                                          anode: 
                                            (ArithBinary
                                              op_id: Arith_Plus
                                              left: 
                                                (ArithWord
                                                  w: 
                                                    {
                                                      (BracedVarSub
                                                        token: <VSub_Name i>
                                                        prefix_op: VSub_Pound
                                                        spids: [905 908]
                                                      )
                                                    }
                                                )
                                              right: (ArithWord w:{(Lit_Digits 1)})
                                            )
                                          spids: [904 911]
                                        )
                                      } {(Lit_Other "]")}
                                    )
                                  action: 
                                    (CommandList
                                      children: [
                                        (C {(echo)} {(-n)} {(DQ ($ VSub_Name "$i"))})
                                        (C {(echo)} {(-ne)} {(SQ <"\\0">)})
                                      ]
                                    )
                                  spids: [-1 916]
                                )
                              ]
                              spids: [-1 941]
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:PREVIOUS)
                                  rhs: {(DQ ($ VSub_Name "$i"))}
                                  spids: [944]
                                )
                              ]
                              spids: [944]
                            )
                          ]
                        )
                      spids: [869 950]
                    )
                )
              ]
              negated: False
            )
          ]
          spids: [802]
        )
      spids: [798 801]
    )
    (FuncDef
      name: cleanup
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(Lit_Other "[")} {($ VSub_QMark "$?")} {(-ne)} {(0)} {(Lit_Other "]")})
                (C {(dienow)})
              ]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} 
                      {(DQ ($ VSub_Name "$BINARY_PACKAGE_TARBALLS"))} {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LeftVar name:TARNAME)
                              rhs: 
                                {
                                  (DQ ($ VSub_Name "$PACKAGE") (-) ($ VSub_Name "$STAGE_NAME") (-) 
                                    (${ VSub_Name ARCH_NAME)
                                  ) (.tar.gz)
                                }
                              spids: [1005]
                            )
                          ]
                          spids: [1005]
                        )
                        (AndOr
                          children: [
                            (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} 
                              {
                                (DQ 
                                  (CommandSubPart
                                    command_list: (C {(recent_binary_files)})
                                    spids: [1025 1027]
                                  )
                                )
                              } {(Lit_Other "]")}
                            )
                            (AndOr
                              children: [
                                (C {(echo)} {(-n)} {(Creating)} {(DQ ($ VSub_Name "$TARNAME"))})
                                (Pipeline
                                  children: [
                                    (BraceGroup
                                      children: [
                                        (AndOr
                                          children: [
                                            (Pipeline
                                              children: [
                                                (C {(recent_binary_files)})
                                                (C {(xargs)} {(-0)} {(tar)} {(-czvf)} 
                                                  {
                                                    (DQ ($ VSub_Name "$BUILD") (/) 
                                                      (${ VSub_Name TARNAME)
                                                    )
                                                  } {(-C)} {(DQ ($ VSub_Name "$STAGE_DIR"))}
                                                )
                                              ]
                                              negated: False
                                            )
                                            (C {(dienow)})
                                          ]
                                          op_id: Op_DPipe
                                        )
                                      ]
                                      spids: [1048]
                                    )
                                    (C {(dotprogress)})
                                  ]
                                  negated: False
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                      ]
                    )
                  spids: [-1 1002]
                )
              ]
              spids: [-1 1090]
            )
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$NO_CLEANUP"))} 
                      {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (C {(echo)} 
                          {(DQ ("skip cleanup ") ($ VSub_Name "$PACKAGE") (" ") ($ VSub_At "$@"))}
                        )
                        (C {(return)})
                      ]
                    )
                  spids: [-1 1109]
                )
              ]
              spids: [-1 1125]
            )
            (AndOr
              children: [(C {(cd)} {(DQ ($ VSub_Name "$WORK"))}) (C {(dienow)})]
              op_id: Op_DPipe
            )
            (ForEach
              iter_name: i
              iter_words: [{($ VSub_Name "$WORKDIR_LIST")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  child: 
                    (CommandList
                      children: [
                        (C {(echo)} {(DQ ("cleanup ") ($ VSub_Name "$i"))})
                        (AndOr
                          children: [(C {(rm)} {(-rf)} {(DQ ($ VSub_Name "$i"))}) (C {(dienow)})]
                          op_id: Op_DPipe
                        )
                      ]
                    )
                  spids: [1154 1178]
                )
              spids: [1150 -1]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LeftVar name:WORKDIR_LIST) rhs:{(SQ )} spids:[1181])]
              spids: [1181]
            )
          ]
          spids: [963]
        )
      spids: [959 962]
    )
    (FuncDef
      name: blank_workdir
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:WORKDIR_LIST)
                  rhs: {(DQ ($ VSub_Number "$1") (" ") ($ VSub_Name "$WORKDIR_LIST"))}
                  spids: [1200]
                )
              ]
              spids: [1200]
            )
            (SimpleCommand
              words: [{(blank_tempdir)} {(DQ ($ VSub_Name "$WORK") (/) ($ VSub_Number "$1"))}]
              more_env: [(env_pair name:NO_CLEANUP val:{(SQ )} spids:[1208])]
            )
            (AndOr
              children: [(C {(cd)} {(DQ ($ VSub_Name "$WORK") (/) ($ VSub_Number "$1"))}) (C {(dienow)})]
              op_id: Op_DPipe
            )
          ]
          spids: [1197]
        )
      spids: [1193 1196]
    )
    (FuncDef
      name: setupfor
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Export
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:WRAPPY_LOGPATH)
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$BUILD") (/logs/cmdlines.) (${ VSub_Name ARCH_NAME) (.) 
                        (${ VSub_Name STAGE_NAME) (.setupfor)
                      )
                    }
                  spids: [1247]
                )
              ]
              spids: [1245]
            )
            (AndOr
              children: [(C {(extract_package)} {(DQ ($ VSub_Number "$1"))}) (C {(exit)} {(1)})]
              op_id: Op_DPipe
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:SNAPFROM)
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: (C {(package_cache)} {(DQ ($ VSub_Number "$1"))})
                          spids: [1282 1288]
                        )
                      )
                    }
                  spids: [1280]
                )
              ]
              spids: [1280]
            )
            (C {(echo)} {(DQ ("Snapshot '") ($ VSub_Name "$PACKAGE") ("'..."))})
            (ForEach
              iter_name: LINKTYPE
              iter_words: [{(l)} {(s)} {(n)}]
              do_arg_iter: False
              body: 
                (DoGroup
                  child: 
                    (CommandList
                      children: [
                        (If
                          arms: [
                            (if_arm
                              cond: 
                                (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$REUSE_CURSRC"))} 
                                  {(Lit_Other "]")}
                                )
                              action: 
                                (CommandList
                                  children: [
                                    (C {(blank_workdir)} {(DQ ($ VSub_Name "$PACKAGE"))})
                                    (Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (LeftVar name:CURSRC)
                                          rhs: 
                                            {
                                              (DQ 
                                                (CommandSubPart
                                                  command_list: (C {(pwd)})
                                                  spids: [1357 1359]
                                                )
                                              )
                                            }
                                          spids: [1355]
                                        )
                                      ]
                                      spids: [1355]
                                    )
                                  ]
                                )
                              spids: [-1 1345]
                            )
                          ]
                          spids: [-1 1363]
                        )
                        (AndOr
                          children: [
                            (C {(cp)} {(-) (${ VSub_Name LINKTYPE) (fR)} 
                              {(DQ ($ VSub_Name "$SNAPFROM") (/)) (Lit_Other "*")} {(DQ ($ VSub_Name "$CURSRC"))}
                            )
                            (C {(break)})
                          ]
                          op_id: Op_DAmp
                        )
                      ]
                    )
                  spids: [1329 1390]
                )
              spids: [1321 -1]
            )
            (AndOr
              children: [(C {(cd)} {(DQ ($ VSub_Name "$CURSRC"))}) (C {(dienow)})]
              op_id: Op_DPipe
            )
            (Assignment
              keyword: Assign_Export
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:WRAPPY_LOGPATH)
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$BUILD") (/logs/cmdlines.) (${ VSub_Name ARCH_NAME) (.) 
                        (${ VSub_Name STAGE_NAME) (.) ($ VSub_Number "$1")
                      )
                    }
                  spids: [1407]
                )
              ]
              spids: [1405]
            )
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} 
                      {(DQ ($ VSub_Name "$BINARY_PACKAGE_TARBALLS"))} {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (AndOr
                          children: [
                            (C {(touch)} {(DQ ($ VSub_Name "$CURSRC") (/BUILD-TIMESTAMP))})
                            (C {(dienow)})
                          ]
                          op_id: Op_DPipe
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LeftVar name:TIME)
                              rhs: 
                                {
                                  (CommandSubPart
                                    command_list: (C {(date)} {(Lit_Other "+") (Lit_Other "%") (s)})
                                    spids: [1468 1474]
                                  )
                                }
                              spids: [1467]
                            )
                          ]
                          spids: [1467]
                        )
                        (While
                          cond: (C {(true)})
                          body: 
                            (DoGroup
                              child: 
                                (CommandList
                                  children: [
                                    (AndOr
                                      children: [
                                        (C {(Lit_Other "[")} {($ VSub_Name "$TIME")} 
                                          {(KW_Bang "!") (Lit_Other "=")} 
                                          {
                                            (DQ 
                                              (CommandSubPart
                                                command_list: 
                                                  (C {(date)} {(Lit_Other "+") (Lit_Other "%") (s)})
                                                spids: [1493 1499]
                                              )
                                            )
                                          } {(Lit_Other "]")}
                                        )
                                        (C {(break)})
                                      ]
                                      op_id: Op_DAmp
                                    )
                                    (C {(sleep)} {(.1)})
                                  ]
                                )
                              spids: [1482 1514]
                            )
                        )
                      ]
                    )
                  spids: [-1 1452]
                )
              ]
              spids: [-1 1517]
            )
          ]
          spids: [1242]
        )
      spids: [1238 1241]
    )
    (FuncDef
      name: getversion
      body: 
        (BraceGroup
          children: [
            (Pipeline
              children: [
                (C {(echo)} {(DQ ($ VSub_Number "$1"))})
                (C {(sed)} {(-e)} 
                  {
                    (SQ 
                      <
"s/.*-\\(\\([0-9\\.]\\)*\\([_-]rc\\)*\\(-pre\\)*\\([0-9][a-zA-Z]\\)*\\)*\\(\\.tar\\..z2*\\)$/"
                      >
                    ) (DQ ($ VSub_Number "$2")) (SQ <"\\1/">)
                  }
                )
              ]
              negated: False
            )
          ]
          spids: [1530]
        )
      spids: [1526 1529]
    )
    (FuncDef
      name: get_download_version
      body: 
        (BraceGroup
          children: [
            (C {(getversion)} 
              {
                (CommandSubPart
                  command_list: 
                    (Pipeline
                      children: [
                        (C {(sed)} {(-n)} {(SQ <"s@URL=.*/\\(.[^ ]*\\).*@\\1@p">)} 
                          {(DQ ($ VSub_Name "$TOP") (/download.sh))}
                        )
                        (C {(grep)} {(${ VSub_Number 1) (-)})
                      ]
                      negated: False
                    )
                  spids: [1571 1593]
                )
              }
            )
          ]
          spids: [1566]
        )
      spids: [1562 1565]
    )
    (FuncDef
      name: identify_release
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LeftVar name:DIR)
                  rhs: {(DQ ($ VSub_Name "$SRCDIR") (/) ($ VSub_Number "$1"))}
                  spids: [1609]
                )
              ]
              spids: [1609]
            )
            (If
              arms: [
                (if_arm
                  cond: (C {(Lit_Other "[")} {(-d)} {(DQ ($ VSub_Name "$DIR"))} {(Lit_Other "]")})
                  action: 
                    (Subshell
                      children: [
                        (CommandList
                          children: [
                            (AndOr
                              children: [(C {(cd)} {(DQ ($ VSub_Name "$DIR"))}) (C {(dienow)})]
                              op_id: Op_DPipe
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:ID)
                                  rhs: 
                                    {
                                      (DQ 
                                        (CommandSubPart
                                          command_list: 
                                            (SimpleCommand
                                              words: [
                                                {(git)}
                                                {(log)}
                                                {(-1)}
                                                {(--format) (Lit_Other "=") (Lit_Other "%") (H)}
                                              ]
                                              redirects: [
                                                (Redirect
                                                  op_id: Redir_Great
                                                  arg_word: {(/dev/null)}
                                                  fd: 2
                                                  spids: [1661]
                                                )
                                              ]
                                            )
                                          spids: [1649 1663]
                                        )
                                      )
                                    }
                                  spids: [1647]
                                )
                              ]
                              spids: [1647]
                            )
                            (AndOr
                              children: [
                                (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$ID"))} 
                                  {(Lit_Other "]")}
                                )
                                (AndOr
                                  children: [
                                    (C {(echo)} {(git)} {(DQ ($ VSub_Name "$ID"))})
                                    (C {(return)})
                                  ]
                                  op_id: Op_DAmp
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:ID)
                                  rhs: 
                                    {
                                      (DQ 
                                        (CommandSubPart
                                          command_list: 
                                            (SimpleCommand
                                              words: [{(hg)} {(identify)} {(-n)}]
                                              redirects: [
                                                (Redirect
                                                  op_id: Redir_Great
                                                  arg_word: {(/dev/null)}
                                                  fd: 2
                                                  spids: [1704]
                                                )
                                              ]
                                            )
                                          spids: [1697 1706]
                                        )
                                      )
                                    }
                                  spids: [1695]
                                )
                              ]
                              spids: [1695]
                            )
                            (AndOr
                              children: [
                                (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$ID"))} 
                                  {(Lit_Other "]")}
                                )
                                (AndOr
                                  children: [
                                    (C {(echo)} {(hg)} {(DQ ($ VSub_Name "$ID"))})
                                    (C {(return)})
                                  ]
                                  op_id: Op_DAmp
                                )
                              ]
                              op_id: Op_DAmp
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:ID)
                                  rhs: 
                                    {
                                      (DQ 
                                        (CommandSubPart
                                          command_list: 
                                            (Pipeline
                                              children: [
                                                (SimpleCommand
                                                  words: [{(svn)} {(info)}]
                                                  redirects: [
                                                    (Redirect
                                                      op_id: Redir_Great
                                                      arg_word: {(/dev/null)}
                                                      fd: 2
                                                      spids: [1745]
                                                    )
                                                  ]
                                                )
                                                (C {(sed)} {(-n)} {(DQ ("s/^Revision: //p"))})
                                              ]
                                              negated: False
                                            )
                                          spids: [1740 1757]
                                        )
                                      )
                                    }
                                  spids: [1738]
                                )
                              ]
                              spids: [1738]
                            )
                            (AndOr
                              children: [
                                (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$ID"))} 
                                  {(Lit_Other "]")}
                                )
                                (AndOr
                                  children: [
                                    (C {(echo)} {(svn)} {(DQ ($ VSub_Name "$ID"))})
                                    (C {(return)})
                                  ]
                                  op_id: Op_DAmp
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                        )
                      ]
                      spids: [1633 1788]
                    )
                  spids: [-1 1630]
                )
              ]
              spids: [-1 1791]
            )
            (C {(echo)} {(release)} {(version)} 
              {
                (CommandSubPart
                  command_list: (C {(get_download_version)} {($ VSub_Number "$1")})
                  spids: [1801 1805]
                )
              }
            )
          ]
          spids: [1606]
        )
      spids: [1602 1605]
    )
    (FuncDef
      name: do_manifest
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$SCRIPT_VERS"))} {(Lit_Other "]")})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LeftVar name:SCRIPT_VERS)
                      rhs: 
                        {
                          (DQ ("mercurial rev ") 
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [
                                    (Sentence
                                      command: (C {(cd)} {(DQ ($ VSub_Name "$TOP"))})
                                      terminator: <Op_Semi ";">
                                    )
                                    (SimpleCommand
                                      words: [{(hg)} {(identify)} {(-n)}]
                                      redirects: [
                                        (Redirect
                                          op_id: Redir_Great
                                          arg_word: {(/dev/null)}
                                          fd: 2
                                          spids: [1856]
                                        )
                                      ]
                                    )
                                  ]
                                )
                              spids: [1842 1858]
                            )
                          )
                        }
                      spids: [1839]
                    )
                  ]
                  spids: [1839]
                )
              ]
              op_id: Op_DAmp
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (HereDoc
                  op_id: Redir_DLess
                  arg_word: 
                    {
                      (DQ ("Built on ") 
                        (CommandSubPart
                          command_list: (C {(date)} {(Lit_Other "+") (Lit_Other "%") (F)})
                          spids: [-1 -1]
                        ) (" from:\n") ("\n") ("  Build script:\n") ("    Aboriginal Linux (http://landley.net/aboriginal) ") 
                        ($ VSub_Name "$SCRIPT_VERS") ("\n") ("\n") ("  Base packages:\n") ("    uClibc (http://uclibc.org) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(uClibc)})
                          spids: [-1 -1]
                        ) ("\n") ("    BusyBox (http://busybox.net) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(busybox)})
                          spids: [-1 -1]
                        ) ("\n") ("    Linux (http://kernel.org/pub/linux/kernel) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(linux)})
                          spids: [-1 -1]
                        ) ("\n") ("    toybox (http://landley.net/toybox) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(toybox)})
                          spids: [-1 -1]
                        ) ("\n") ("\n") ("  Toolchain packages:\n") ("    Binutils (http://www.gnu.org/software/binutils/) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(binutils)})
                          spids: [-1 -1]
                        ) ("\n") ("    GCC (http://gcc.gnu.org) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(gcc-core)})
                          spids: [-1 -1]
                        ) ("\n") ("    gmake (http://www.gnu.org/software/make) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(make)})
                          spids: [-1 -1]
                        ) ("\n") ("    bash (ftp://ftp.gnu.org/gnu/bash) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(bash)})
                          spids: [-1 -1]
                        ) ("\n") ("\n") ("  Optional packages:\n") ("    distcc (http://distcc.samba.org) ") 
                        (CommandSubPart
                          command_list: (C {(identify_release)} {(distcc)})
                          spids: [-1 -1]
                        ) ("\n") ("    uClibc++ (http://cxx.uclibc.org) ") 
                        (CommandSubPart
                          command_list: 
                            (C {(identify_release)} {(uClibc) (Lit_Other "+") (Lit_Other "+")})
                          spids: [-1 -1]
                        ) ("\n")
                      )
                    }
                  fd: -1
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [1865]
                )
              ]
            )
          ]
          spids: [1818]
        )
      spids: [1814 1817]
    )
    (FuncDef
      name: link_arch_name
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$ARCH"))} {(Lit_Other "=") (Lit_Other "=")} 
                  {(DQ ($ VSub_Name "$ARCH_NAME"))} {(Lit_Other "]")}
                )
                (C {(return)} {(0)})
              ]
              op_id: Op_DAmp
            )
            (AndOr
              children: [
                (C {(rm)} {(-rf)} {(DQ ($ VSub_Name "$BUILD") (/) ($ VSub_Number "$2"))})
                (AndOr
                  children: [
                    (C {(ln)} {(-s)} {(DQ ($ VSub_Number "$1"))} 
                      {(DQ ($ VSub_Name "$BUILD") (/) ($ VSub_Number "$2"))}
                    )
                    (C {(dienow)})
                  ]
                  op_id: Op_DPipe
                )
              ]
              op_id: Op_DAmp
            )
          ]
          spids: [1880]
        )
      spids: [1876 1879]
    )
    (FuncDef
      name: check_for_base_arch
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$ARCH"))} {(KW_Bang "!") (Lit_Other "=")} 
                      {(DQ ($ VSub_Name "$ARCH_NAME"))} {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (C {(link_arch_name)} 
                          {($ VSub_Name "$STAGE_NAME") (-) (Lit_LBrace "{") (DQ ($ VSub_Name "$ARCH")) 
                            (Lit_Comma ",") (DQ ($ VSub_Name "$ARCH_NAME")) (Lit_RBrace "}")
                          }
                        )
                        (AndOr
                          children: [
                            (C {(Lit_Other "[")} {(-e)} 
                              {($ VSub_Name "$STAGE_NAME") (-) (DQ ($ VSub_Name "$ARCH")) (.tar.gz)} {(Lit_Other "]")}
                            )
                            (C {(link_arch_name)} 
                              {($ VSub_Name "$STAGE_NAME") (-) (Lit_LBrace "{") 
                                (DQ ($ VSub_Name "$ARCH")) (Lit_Comma ",") (DQ ($ VSub_Name "$ARCH_NAME")) (Lit_RBrace "}") (.tar.gz)
                              }
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: 
                                (C {(Lit_Other "[")} {(-e)} 
                                  {
                                    (DQ ($ VSub_Name "$BUILD") (/) ($ VSub_Name "$STAGE_NAME") (-) 
                                      ($ VSub_Name "$ARCH")
                                    )
                                  } {(Lit_Other "]")}
                                )
                              action: 
                                (CommandList
                                  children: [
                                    (C {(announce)} 
                                      {
                                        (DQ ("Using existing ") (${ VSub_Name STAGE_NAME) (-) 
                                          ($ VSub_Name "$ARCH")
                                        )
                                      }
                                    )
                                    (C {(return)} {(1)})
                                  ]
                                )
                              spids: [-1 2049]
                            )
                          ]
                          else_action: 
                            (AndOr
                              children: [
                                (C {(mkdir)} {(-p)} 
                                  {
                                    (DQ ($ VSub_Name "$BUILD") (/) ($ VSub_Name "$STAGE_NAME") (-) 
                                      ($ VSub_Name "$ARCH")
                                    )
                                  }
                                )
                                (C {(dienow)})
                              ]
                              op_id: Op_DPipe
                            )
                          spids: [2070 2090]
                        )
                      ]
                    )
                  spids: [-1 1981]
                )
              ]
              spids: [-1 2093]
            )
          ]
          spids: [1951]
        )
      spids: [1947 1950]
    )
    (FuncDef
      name: create_stage_tarball
      body: 
        (BraceGroup
          children: [
            (SimpleCommand
              words: [{(rmdir)} {(DQ ($ VSub_Name "$WORK"))}]
              redirects: [(Redirect op_id:Redir_Great arg_word:{(/dev/null)} fd:2 spids:[2116])]
            )
            (AndOr
              children: [(C {(cd)} {(DQ ($ VSub_Name "$BUILD"))}) (C {(dienow)})]
              op_id: Op_DPipe
            )
            (C {(link_arch_name)} 
              {($ VSub_Name "$STAGE_NAME") (-) (Lit_LBrace "{") ($ VSub_Name "$ARCH") (Lit_Comma ",") 
                ($ VSub_Name "$ARCH_NAME") (Lit_RBrace "}")
              }
            )
            (If
              arms: [
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$NO_STAGE_TARBALLS"))} 
                      {(Lit_Other "]")}
                    )
                  action: 
                    (CommandList
                      children: [
                        (C {(echo)} {(-n)} {(creating)} 
                          {(DQ ($ VSub_Name "$STAGE_NAME") (-) (${ VSub_Name ARCH)) (.tar.gz)}
                        )
                        (Pipeline
                          children: [
                            (BraceGroup
                              children: [
                                (AndOr
                                  children: [
                                    (C {(tar)} {(czvf)} 
                                      {(DQ ($ VSub_Name "$STAGE_NAME") (-) (${ VSub_Name ARCH)) 
                                        (.tar.gz)
                                      } {(DQ ($ VSub_Name "$STAGE_NAME") (-) (${ VSub_Name ARCH))}
                                    )
                                    (C {(dienow)})
                                  ]
                                  op_id: Op_DPipe
                                )
                              ]
                              spids: [2182]
                            )
                            (C {(dotprogress)})
                          ]
                          negated: False
                        )
                        (C {(link_arch_name)} 
                          {($ VSub_Name "$STAGE_NAME") (-) (Lit_LBrace "{") ($ VSub_Name "$ARCH") 
                            (Lit_Comma ",") ($ VSub_Name "$ARCH_NAME") (Lit_RBrace "}") (.tar.gz)
                          }
                        )
                      ]
                    )
                  spids: [-1 2162]
                )
              ]
              spids: [-1 2230]
            )
          ]
          spids: [2102]
        )
      spids: [2098 2101]
    )
    (FuncDef
      name: hosttools_path
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LeftVar name:X) spids:[2251])]
              spids: [2249]
            )
            (C {(echo)} {(-n)} {(DQ ($ VSub_Name "$HOSTTOOLS"))})
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LeftVar name:X) rhs:{(1)} spids:[2264])]
              spids: [2264]
            )
            (While
              cond: 
                (C {(Lit_Other "[")} {(-e)} 
                  {(DQ ($ VSub_Name "$HOSTTOOLS") (/fallback-) ($ VSub_Name "$X"))} {(Lit_Other "]")}
                )
              body: 
                (DoGroup
                  child: 
                    (CommandList
                      children: [
                        (C {(echo)} {(-n)} 
                          {(DQ (":") ($ VSub_Name "$HOSTTOOLS") (/fallback-) ($ VSub_Name "$X"))}
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LeftVar name:X)
                              rhs: 
                                {
                                  (ArithSubPart
                                    anode: 
                                      (ArithBinary
                                        op_id: Arith_Plus
                                        left: (ArithWord w:{($ VSub_Name "$X")})
                                        right: (ArithWord w:{(Lit_Digits 1)})
                                      )
                                    spids: [2299 2303]
                                  )
                                }
                              spids: [2298]
                            )
                          ]
                          spids: [2298]
                        )
                      ]
                    )
                  spids: [2283 2306]
                )
            )
          ]
          spids: [2246]
        )
      spids: [2242 2245]
    )
    (FuncDef
      name: image_filesystem
      body: 
        (BraceGroup
          children: [
            (C {(echo)} {(DQ ("make ") ($ VSub_Name "$SYSIMAGE_TYPE") (" ") ($ VSub_Number "$2"))})
            (If
              arms: [
                (if_arm
                  cond: 
                    (AndOr
                      children: [
                        (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$SYSIMAGE_TYPE"))} 
                          {(Lit_Other "=") (Lit_Other "=")} {(DQ (cpio))} {(Lit_Other "]")}
                        )
                        (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$SYSIMAGE_TYPE"))} 
                          {(Lit_Other "=") (Lit_Other "=")} {(DQ (rootfs))} {(Lit_Other "]")}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  action: 
                    (CommandList
                      children: [
                        (AndOr
                          children: [
                            (C {(extract_package)} {(linux)})
                            (AndOr
                              children: [
                                (C {($ VSub_Name "$CC")} 
                                  {
                                    (DQ 
                                      (CommandSubPart
                                        command_list: (C {(package_cache)} {($ VSub_Name "$PACKAGE")})
                                        spids: [2390 2394]
                                      ) (/usr/gen_init_cpio.c)
                                    )
                                  } {(-o)} {(DQ ($ VSub_Name "$WORK")) (/my_gen_init_cpio)}
                                )
                                (C {(dienow)})
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (AndOr
                          children: [
                            (Pipeline
                              children: [
                                (C {(DQ ($ VSub_Name "$WORK")) (/my_gen_init_cpio)} 
                                  {
                                    (CommandSubPart
                                      command_list: 
                                        (CommandList
                                          children: [
                                            (AndOr
                                              children: [
                                                (C 
                                                  {(DQ ($ VSub_Name "$SOURCES")) 
                                                    (/toys/gen_initramfs_list.sh)
                                                  } {(DQ ($ VSub_Number "$1"))}
                                                )
                                                (C {(dienow)})
                                              ]
                                              op_id: Op_DPipe
                                            )
                                            (AndOr
                                              children: [
                                                (C {(Lit_Other "[")} {(KW_Bang "!")} {(-e)} 
                                                  {(DQ ($ VSub_Number "$1")) (/init)} {(Lit_Other "]")}
                                                )
                                                (C {(echo)} {(DQ ("slink /init /sbin/init.sh 755 0 0"))})
                                              ]
                                              op_id: Op_DAmp
                                            )
                                            (AndOr
                                              children: [
                                                (C {(Lit_Other "[")} {(KW_Bang "!")} {(-d)} 
                                                  {(DQ ($ VSub_Number "$1")) (/dev)} {(Lit_Other "]")}
                                                )
                                                (C {(echo)} {(DQ ("dir /dev 755 0 0"))})
                                              ]
                                              op_id: Op_DAmp
                                            )
                                            (C {(echo)} {(DQ ("nod /dev/console 660 0 0 c 5 1"))})
                                          ]
                                        )
                                      spids: [2416 2485]
                                    )
                                  }
                                )
                                (SimpleCommand
                                  words: [{(gzip)} {(-9)}]
                                  redirects: [
                                    (Redirect
                                      op_id: Redir_Great
                                      arg_word: {(DQ ($ VSub_Number "$2") (.cpio.gz))}
                                      fd: -1
                                      spids: [2493]
                                    )
                                  ]
                                )
                              ]
                              negated: False
                            )
                            (C {(dienow)})
                          ]
                          op_id: Op_DPipe
                        )
                        (C {(echo)} {(Initramfs)} {(generated.)})
                      ]
                    )
                  spids: [-1 2373]
                )
                (if_arm
                  cond: 
                    (AndOr
                      children: [
                        (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$SYSIMAGE_TYPE"))} 
                          {(Lit_Other "=") (Lit_Other "=")} {(DQ (ext2))} {(Lit_Other "]")}
                        )
                        (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$SYSIMAGE_TYPE"))} 
                          {(Lit_Other "=") (Lit_Other "=")} {(DQ (ext3))} {(Lit_Other "]")}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  action: 
                    (CommandList
                      children: [
                        (AndOr
                          children: [
                            (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$SYSIMAGE_HDA_MEGS"))} 
                              {(Lit_Other "]")}
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:SYSIMAGE_HDA_MEGS)
                                  rhs: {(64)}
                                  spids: [2572]
                                )
                              ]
                              spids: [2572]
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LeftVar name:BLOCKS)
                              rhs: 
                                {
                                  (ArithSubPart
                                    anode: 
                                      (ArithBinary
                                        op_id: Arith_Star
                                        left: (ArithWord w:{(Lit_Digits 1024)})
                                        right: 
                                          (ArithBinary
                                            op_id: Arith_Slash
                                            left: 
                                              (ArithBinary
                                                op_id: Arith_Star
                                                left: 
                                                  (ArithWord
                                                    w: 
                                                      {
                                                        (CommandSubPart
                                                          command_list: 
                                                            (Pipeline
                                                              children: [
                                                                (C {(du)} {(-m)} {(-s)} 
                                                                  {(DQ ($ VSub_Number "$1"))}
                                                                )
                                                                (C {(awk)} {(SQ <"{print $1}">)})
                                                              ]
                                                              negated: False
                                                            )
                                                          spids: [2592 2610]
                                                        )
                                                      }
                                                  )
                                                right: (ArithWord w:{(Lit_Digits 12)})
                                              )
                                            right: (ArithWord w:{(Lit_Digits 10)})
                                          )
                                      )
                                    spids: [2587 2617]
                                  )
                                }
                              spids: [2586]
                            )
                          ]
                          spids: [2586]
                        )
                        (AndOr
                          children: [
                            (C {(Lit_Other "[")} {($ VSub_Name "$BLOCKS")} {(-lt)} {(4096)} 
                              {(Lit_Other "]")}
                            )
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LeftVar name:BLOCKS)
                                  rhs: {(4096)}
                                  spids: [2632]
                                )
                              ]
                              spids: [2632]
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (LeftVar name:FILE)
                              rhs: {(DQ ($ VSub_Number "$2") (.) ($ VSub_Name "$SYSIMAGE_TYPE"))}
                              spids: [2636]
                            )
                          ]
                          spids: [2636]
                        )
                        (AndOr
                          children: [
                            (SimpleCommand
                              words: [{(echo)} {(DQ ("/dev d 755 0 0 - - - - -"))}]
                              redirects: [
                                (Redirect
                                  op_id: Redir_Great
                                  arg_word: {(DQ ($ VSub_Name "$WORK") (/devs))}
                                  fd: -1
                                  spids: [2651]
                                )
                              ]
                            )
                            (AndOr
                              children: [
                                (SimpleCommand
                                  words: [{(echo)} {(DQ ("/dev/console c 640 0 0 5 1 0 0 -"))}]
                                  redirects: [
                                    (Redirect
                                      op_id: Redir_DGreat
                                      arg_word: {(DQ ($ VSub_Name "$WORK") (/devs))}
                                      fd: -1
                                      spids: [2667]
                                    )
                                  ]
                                )
                                (AndOr
                                  children: [
                                    (C {(genext2fs)} {(-z)} {(-D)} {(DQ ($ VSub_Name "$WORK") (/devs))} 
                                      {(-d)} {(DQ ($ VSub_Number "$1"))} {(-b)} {($ VSub_Name "$BLOCKS")} {(-i)} {(1024)} {(DQ ($ VSub_Name "$FILE"))}
                                    )
                                    (AndOr
                                      children: [
                                        (C {(rm)} {(DQ ($ VSub_Name "$WORK") (/devs))})
                                        (C {(dienow)})
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              ]
                              op_id: Op_DAmp
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: 
                                (AndOr
                                  children: [
                                    (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} 
                                      {(DQ ($ VSub_Name "$SYSIMAGE_HDA_MEGS"))} {(Lit_Other "]")}
                                    )
                                    (C {(Lit_Other "[")} 
                                      {
                                        (ArithSubPart
                                          anode: 
                                            (ArithBinary
                                              op_id: Arith_Slash
                                              left: 
                                                (ArithWord
                                                  w: 
                                                    {
                                                      (CommandSubPart
                                                        command_list: 
                                                          (C {(stat)} {(-c)} {(Lit_Other "%") (s)} 
                                                            {(DQ ($ VSub_Name "$FILE"))}
                                                          )
                                                        spids: [2755 2766]
                                                      )
                                                    }
                                                )
                                              right: 
                                                (ArithBinary
                                                  op_id: Arith_Star
                                                  left: (ArithWord w:{(Lit_Digits 1024)})
                                                  right: (ArithWord w:{(Lit_Digits 1024)})
                                                )
                                            )
                                          spids: [2754 2777]
                                        )
                                      } {(-lt)} {(DQ ($ VSub_Name "$SYSIMAGE_HDA_MEGS"))} {(Lit_Other "]")}
                                    )
                                  ]
                                  op_id: Op_DAmp
                                )
                              action: 
                                (CommandList
                                  children: [
                                    (C {(echo)} {(resizing)} {(image)} {(to)} 
                                      {($ VSub_Name "$SYSIMAGE_HDA_MEGS")}
                                    )
                                    (AndOr
                                      children: [
                                        (C {(resize2fs)} {(DQ ($ VSub_Name "$FILE"))} 
                                          {(${ VSub_Name SYSIMAGE_HDA_MEGS) (M)}
                                        )
                                        (C {(dienow)})
                                      ]
                                      op_id: Op_DPipe
                                    )
                                  ]
                                )
                              spids: [-1 2788]
                            )
                          ]
                          spids: [-1 2818]
                        )
                        (AndOr
                          children: [
                            (C {(tune2fs)} {(-c)} {(0)} {(-i)} {(0)} 
                              {
                                (CommandSubPart
                                  command_list: 
                                    (AndOr
                                      children: [
                                        (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$SYS_IMAGE_TYPE"))} 
                                          {(Lit_Other "=")} {(DQ (ext3))} {(Lit_Other "]")}
                                        )
                                        (C {(echo)} {(-j)})
                                      ]
                                      op_id: Op_DAmp
                                    )
                                  spids: [2832 2852]
                                )
                              } {(DQ ($ VSub_Name "$FILE"))}
                            )
                            (C {(dienow)})
                          ]
                          op_id: Op_DPipe
                        )
                        (C {(echo)} {($ VSub_Name "$SYSIMAGE_TYPE")} {(generated)})
                      ]
                    )
                  spids: [2513 2548]
                )
                (if_arm
                  cond: 
                    (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$SYSIMAGE_TYPE"))} 
                      {(Lit_Other "=") (Lit_Other "=")} {(DQ (squashfs))} {(Lit_Other "]")}
                    )
                  action: 
                    (AndOr
                      children: [
                        (C {(mksquashfs)} {(DQ ($ VSub_Number "$1"))} {(DQ ($ VSub_Number "$2") (.sqf))} 
                          {(-noappend)} {(-all-root)} 
                          {
                            (BracedVarSub
                              token: <VSub_Name FORK>
                              suffix_op: (StringUnary op_id:VTest_ColonPlus arg_word:{(-no-progress)})
                              spids: [2907 2911]
                            )
                          }
                        )
                        (C {(dienow)})
                      ]
                      op_id: Op_DPipe
                    )
                  spids: [2871 2889]
                )
              ]
              else_action: 
                (CommandList
                  children: [
                    (SimpleCommand
                      words: [{(echo)} {(DQ ("Unknown image type ") ($ VSub_Name "$SYSIMAGE_TYPE"))}]
                      redirects: [(Redirect op_id:Redir_GreatAnd arg_word:{(2)} fd:-1 spids:[2928])]
                    )
                    (C {(dienow)})
                  ]
                )
              spids: [2918 2935]
            )
          ]
          spids: [2319]
        )
      spids: [2315 2318]
    )
  ]
)