(CommandList
  children: [
    (AndOr children:[(C {(source)} {(sources/include.sh)})(C {(exit)} {(1)})] op_id:Op_DPipe)
    (C {(load_target)} {(DQ ($ VSub_Number "$1"))})
    (AndOr children:[(C {(check_for_base_arch)})(C {(exit)} {(0)})] op_id:Op_DPipe)
    (C {(export)} {(Lit_VarLike "TOOLCHAIN_PREFIX=") (DQ (${ VSub_Name ARCH) (-))})
    (C {(build_section)} {(binutils)})
    (AndOr
      children: [
        (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$ELF2FLT"))} {(Lit_Other "]")})
        (C {(build_section)} {(elf2flt)})
      ]
      op_id: Op_DAmp
    )
    (C {(build_section)} {(gcc)})
    (C {(build_section)} {(ccwrap)})
    (If
      arms: [
        (if_arm
          cond: [
            (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$KARCH"))} {(Lit_Other "]")})
          ]
          action: [
            (C {(build_section)} {(linux-headers)})
            (If
              arms: [
                (if_arm
                  cond: [
                    (AndOr
                      children: [
                        (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$UCLIBC_CONFIG"))} 
                          {(Lit_Other "]")}
                        )
                        (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$MUSL"))} 
                          {(Lit_Other "]")}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  action: [(C {(build_section)} {(musl)})]
                  spids: [-1 167]
                )
              ]
              else_action: [(C {(build_section)} {(uClibc)})]
              spids: [175 183]
            )
          ]
          spids: [-1 125]
        )
      ]
      spids: [-1 185]
    )
    (AndOr
      children: [
        (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$KARCH"))} {(Lit_Other "]")})
        (SimpleCommand
          words: [{(cat)}]
          redirects: [
            (Redir
              op_id: Redir_Great
              fd: -1
              arg_word: {(DQ (${ VSub_Name STAGE_DIR)) (/README)}
              spids: [204]
            )
            (HereDoc
              op_id: Redir_DLess
              fd: -1
              body: 
                {
                  (DQ ("Cross compiler for ") ($ VSub_Name "$ARCH") 
                    (" from http://landley.net/aboriginal\n") ("\n") ("To use: Add the ") (Right_DoubleQuote "\"") (bin) (Right_DoubleQuote "\"") 
                    (" subdirectory to your ") (EscapedLiteralPart token:<Lit_EscapedChar "\\$">) ("PATH, and use ") (Right_DoubleQuote "\"") 
                    ($ VSub_Name "$ARCH") (-cc) (Right_DoubleQuote "\"") (" as\n") ("your compiler.\n") ("\n") 
                    ("The syntax used to build the Linux kernel is:\n") ("\n") ("  make ARCH=") (${ VSub_Name KARCH) (" CROSS_COMPILE=") (${ VSub_Name ARCH) ("-\n") ("\n")
                  )
                }
              do_expansion: True
              here_end: EOF
              was_filled: True
              spids: [213]
            )
          ]
        )
      ]
      op_id: Op_DAmp
    )
    (If
      arms: [
        (if_arm
          cond: [(C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$SKIP_STRIP"))} {(Lit_Other "]")})]
          action: [
            (C {(cd)} {(DQ ($ VSub_Name "$STAGE_DIR"))})
            (ForEach
              iter_name: i
              iter_words: [
                {
                  (CommandSubPart
                    command_list: (CommandList children:[(C {(find)} {(bin)} {(-type)} {(f)})])
                    left_token: <Left_Backtick "`">
                    spids: [280 288]
                  )
                }
                {
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [(C {(find)} {(DQ ($ VSub_Name "$CROSS_TARGET"))} {(-type)} {(f)})]
                      )
                    left_token: <Left_Backtick "`">
                    spids: [290 300]
                  )
                }
              ]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (SimpleCommand
                      words: [{(strip)} {(DQ ($ VSub_Name "$i"))}]
                      redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[312])]
                    )
                  ]
                  spids: [303 317]
                )
              spids: [279 -1]
            )
          ]
          spids: [-1 264]
        )
      ]
      spids: [-1 319]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$KARCH"))} {(Lit_Other "]")})
          ]
          action: [
            (C {(echo)} {(DQ ("Sanity test: building Hello World."))})
            (AndOr
              children: [
                (C {(DQ (${ VSub_Name ARCH) (-gcc))} {(-Os)} 
                  {(DQ (${ VSub_Name SOURCES) (/root-filesystem/src/hello.c))} {(-o)} {(DQ ($ VSub_Name "$WORK")) (/hello)}
                )
                (AndOr
                  children: [
                    (C {(DQ (${ VSub_Name ARCH) (-gcc))} {(-Os)} {(-static)} 
                      {(DQ (${ VSub_Name SOURCES) (/root-filesystem/src/hello.c))} {(-o)} {(DQ ($ VSub_Name "$WORK")) (/hello)}
                    )
                    (C {(dienow)})
                  ]
                  op_id: Op_DPipe
                )
              ]
              op_id: Op_DAmp
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (C {(Lit_Other "[")} {(KW_Bang "!")} {(-z)} {(DQ ($ VSub_Name "$CROSS_SMOKE_TEST"))} 
                      {(Lit_Other "]")}
                    )
                  ]
                  action: [
                    (AndOr
                      children: [
                        (C {(more/cross-smoke-test.sh)} {(DQ ($ VSub_Name "$ARCH"))})
                        (C {(exit)} {(1)})
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [-1 435]
                )
              ]
              spids: [-1 451]
            )
          ]
          spids: [-1 336]
        )
      ]
      spids: [-1 453]
    )
    (C {(create_stage_tarball)})
    (C {(echo)} {(-e)} 
      {
        (DQ (EscapedLiteralPart token:<Lit_EscapedChar "\\e">) 
          ("[32mCross compiler toolchain build complete.") (EscapedLiteralPart token:<Lit_EscapedChar "\\e">) ("[0m")
        )
      }
    )
  ]
)