(CommandList
  children: [
    (AndOr
      ops: [Op_DPipe]
      children: [
        (C {(.)} {(sources/utility_functions.sh)})
        (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
      ]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (C {(Lit_Other '[')} {(KW_Bang '!')} {(-f)} {(DQ ($ VSub_Number '$1'))} {(Lit_Other ']')})
          ]
          action: [
            (SimpleCommand
              words: [
                {(echo)}
                {
                  (DQ ("Can't find control image at ") 
                    (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Number '$1') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>)
                  )
                }
              ]
              redirects: [(Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})]
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
          spids: [16777215 47]
        )
      ]
      spids: [16777215 67]
    )
    (C {(trap)} {(DQ ('killtree ') ($ VSub_Dollar '$$'))} {(EXIT)})
    (AndOr
      ops: [Op_DAmp]
      children: [
        (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$FORK'))} {(Lit_Other ']')})
        (SimpleCommand
          words: [
            {(more/for-each-target.sh)}
            {
              (SQ 
                <
'. sources/toys/make-hdb.sh; HDBMEGS=2048; HDB=build/system-image-$TARGET/hdb.img; echo "$HDB"; rm -f "$HDB"; make_hdb'
                >
              )
            }
          ]
          more_env: [(env_pair name:FORK val:{(EmptyPart)} spids:[101])]
        )
      ]
    )
    (AndOr ops:[Op_DPipe] children:[(C {(mkdir)} {(-p)} {(build/logs)}) (C {(dienow)})])
    (AndOr
      ops: [Op_DAmp]
      children: [
        (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$TIMEOUT'))} {(Lit_Other ']')})
        (C {(export)} {(Lit_VarLike 'TIMEOUT=') (60)})
      ]
    )
    (AndOr
      ops: [Op_DAmp]
      children: [
        (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$LOGFILE'))} {(Lit_Other ']')})
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:LOGFILE)
              op: Equal
              rhs: 
                {
                  (DQ 
                    (CommandSubPart
                      command_list: 
                        (CommandList
                          children: [
                            (Pipeline
                              children: [
                                (C {(echo)} {($ VSub_Number '$1')})
                                (C {(sed)} {(SQ <'s@.*/\\(.*\\)\\.hdc@\\1@'>)})
                              ]
                              negated: F
                            )
                          ]
                        )
                      left_token: <Left_CommandSub '$('>
                      spids: [162 174]
                    )
                  )
                }
              spids: [160]
            )
          ]
          spids: [160]
        )
      ]
    )
    (C {(more/for-each-target.sh)} 
      {
        (SQ 
          <
'ln -sfn .. build/system-image-$TARGET/upload && more/timeout.sh $TIMEOUT "HDB=hdb.img more/native-build-from-build.sh $TARGET '
          >
        ) (DQ ($ VSub_Number '$1') (' | tee build/logs/native-') ($ VSub_Name '$LOGFILE') (-)) 
        (SQ <'$TARGET.txt"'>)
      }
    )
  ]
)