(command.If
  arms: [
    (if_arm
      cond: [(command.Sentence child:(C {(true)}) terminator:<Op_Semi ';'>)]
      action: [
        (command.AndOr
          ops: [Op_DAmp]
          children: [
            (C {(test)} 
              {
                (DQ 
                  (word_part.BracedVarSub
                    token: <VSub_Number 0>
                    suffix_op: 
                      (suffix_op.StringUnary
                        op_id: VOp1_Percent
                        arg_word: {(Lit_Slash /) ('*')}
                      )
                    spids: [155 160]
                  )
                )
              } {(KW_Bang '!') (Lit_Other '=')} {(DQ ($ VSub_Number '$0'))}
            )
            (C {(cd)} 
              {
                (DQ 
                  (word_part.BracedVarSub
                    token: <VSub_Number 0>
                    suffix_op: 
                      (suffix_op.StringUnary
                        op_id: VOp1_Percent
                        arg_word: {(Lit_Slash /) ('*')}
                      )
                    spids: [175 180]
                  )
                )
              }
            )
          ]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:UNAME spids:[184])
              op: Equal
              rhs: 
                {
                  (word_part.CommandSubPart
                    command_list: 
                      (command.CommandList
                        children: [
                          (command.AndOr
                            ops: [Op_DPipe Op_DPipe]
                            children: [
                              (command.SimpleCommand
                                words: [{(./busybox)} {(uname)}]
                                redirects: [
                                  (redir.Redir
                                    op: <Redir_Great '2>'>
                                    fd: 2
                                    arg_word: {(/dev/null)}
                                  )
                                ]
                              )
                              (C {(uname)})
                              (C {(true)})
                            ]
                          )
                        ]
                      )
                    left_token: <Left_CommandSub '$('>
                    spids: [185 200]
                  )
                }
              spids: [184]
            )
          ]
          spids: [184]
        )
        (C {(unset)} {(PYTHONPATH)} {(PYTHONSTARTUP)} {(PYTHONHOME)} {(PYTHONCASEOK)} {(PYTHONIOENCODING)})
        (command.If
          arms: [
            (if_arm
              cond: [
                (command.Sentence
                  child: 
                    (command.AndOr
                      ops: [Op_DPipe]
                      children: [
                        (C {(test)} {(DQ ($ VSub_Name '$NO_BUSYBOX'))})
                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Darwin)})
                      ]
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              action: [
                (command.Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:BUSYBOX spids:[246])
                      op: Equal
                      rhs: (word.EmptyWord)
                      spids: [246]
                    )
                  ]
                  spids: [246]
                )
                (command.Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:PATCH spids:[249])
                      op: Equal
                      rhs: {(SQ <'patch -t'>)}
                      spids: [249]
                    )
                  ]
                  spids: [249]
                )
              ]
              spids: [16777215 240]
            )
            (if_arm
              cond: [
                (command.Sentence
                  child: 
                    (command.AndOr
                      ops: [Op_DPipe]
                      children: [
                        (C {(test)} {(DQ ($ VSub_Name '$BASH_VERSION'))})
                        (C {(test)} {(-z)} {(DQ ($ VSub_Name '$STATICPYTHON_IN_BUSYBOX'))})
                      ]
                    )
                  terminator: <Op_Semi ';'>
                )
              ]
              action: [
                (C {(unset)} {(BASH_VERSION)})
                (C {(export)} {(Lit_VarLike 'STATICPYTHON_IN_BUSYBOX=') (1)})
                (C {(exec)} {(./busybox)} {(sh)} {(--)} {(DQ ($ VSub_Number '$0'))} {(DQ ($ VSub_At '$@'))})
              ]
              spids: [257 276]
            )
          ]
          else_action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:BUSYBOX spids:[309])
                  op: Equal
                  rhs: {(./busybox)}
                  spids: [309]
                )
              ]
              spids: [309]
            )
            (C {(export)} {(Lit_VarLike 'PATH=') (/dev/null)})
            (C {(set)} {(-e)})
            (command.AndOr
              ops: [Op_DPipe]
              children: [(C {(test)} {(-d)} {(busybox.bin)}) (C {(./busybox)} {(mkdir)} {(busybox.bin)})]
            )
            (command.ForEach
              iter_name: F
              iter_words: [
                {(cp)}
                {(mv)}
                {(rm)}
                {(sleep)}
                {(touch)}
                {(mkdir)}
                {(tar)}
                {(expr)}
                {(sed)}
                {(awk)}
                {(ls)}
                {(pwd)}
                {(test)}
                {(cmp)}
                {(diff)}
                {(patch)}
                {(xz)}
                {(sort)}
                {(cat)}
                {(head)}
                {(tail)}
                {(chmod)}
                {(chown)}
                {(uname)}
                {(basename)}
                {(tr)}
                {(find)}
                {(grep)}
                {(ln)}
              ]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (C {(./busybox)} {(rm)} {(-f)} {(busybox.bin/) (DQ ($ VSub_Name '$F'))})
                    (C {(./busybox)} {(ln)} {(-s)} {(../busybox)} {(busybox.bin/) (DQ ($ VSub_Name '$F'))})
                  ]
                  spids: [415 444]
                )
              spids: [351 413]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:PATCH spids:[447])
                  op: Equal
                  rhs: {(patch)}
                  spids: [447]
                )
              ]
              spids: [447]
            )
            (command.Sentence
              child: (C {(./busybox)} {(rm)} {(-f)} {(busybox.bin/make)})
              terminator: <Op_Semi ';'>
            )
            (C {(./busybox)} {(ln)} {(-s)} {(../make)} {(busybox.bin/make)})
            (command.Sentence
              child: (C {(./busybox)} {(rm)} {(-f)} {(busybox.bin/perl)})
              terminator: <Op_Semi ';'>
            )
            (C {(./busybox)} {(ln)} {(-s)} {(../perl)} {(busybox.bin/perl)})
            (C {(export)} {(Lit_VarLike 'PATH=') (DQ ($ VSub_Name '$PWD') (/busybox.bin))})
            (C {(export)} {(Lit_VarLike 'SHELL=') (DQ ($ VSub_Name '$PWD') (/busybox.bin/sh))})
          ]
          spids: [306 511]
        )
        (C {(set)} {(-e)})
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:INSTS_BASE spids:[526])
              op: Equal
              rhs: 
                {
                  (DQ 
                    (
'bzip2-1.0.5.inst.tbz2 ncurses-5.6.inst.tbz2 readline-5.2.inst.tbz2 sqlite-3.7.0.1.inst.tbz2 zlib-1.2.3.3.inst.tbz2'
                    )
                  )
                }
              spids: [526]
            )
          ]
          spids: [526]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:STEPS spids:[532])
              op: Equal
              rhs: (word.EmptyWord)
              spids: [532]
            )
          ]
          spids: [532]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:USE_SSL spids:[534])
              op: Equal
              rhs: (word.EmptyWord)
              spids: [534]
            )
          ]
          spids: [534]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:USE_TC spids:[536])
              op: Equal
              rhs: (word.EmptyWord)
              spids: [536]
            )
          ]
          spids: [536]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:USE_LMDB spids:[538])
              op: Equal
              rhs: (word.EmptyWord)
              spids: [538]
            )
          ]
          spids: [538]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:TARGET spids:[540])
              op: Equal
              rhs: {(python2.7-static)}
              spids: [540]
            )
          ]
          spids: [540]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:PYTHONTBZ2 spids:[543])
              op: Equal
              rhs: {(Python-2.7.12.tar.xz)}
              spids: [543]
            )
          ]
          spids: [543]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:IS_CO spids:[546])
              op: Equal
              rhs: (word.EmptyWord)
              spids: [546]
            )
          ]
          spids: [546]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:IS_PY3 spids:[548])
              op: Equal
              rhs: (word.EmptyWord)
              spids: [548]
            )
          ]
          spids: [548]
        )
        (command.ForEach
          iter_name: ARG
          iter_words: [{(DQ ($ VSub_At '$@'))}]
          do_arg_iter: F
          body: 
            (command.DoGroup
              children: [
                (command.Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:ARG spids:[565])
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (word_part.BracedVarSub
                              token: <VSub_Name ARG>
                              suffix_op: 
                                (suffix_op.StringUnary
                                  op_id: VOp1_Percent
                                  arg_word: {(-static)}
                                )
                              spids: [567 571]
                            )
                          )
                        }
                      spids: [565]
                    )
                  ]
                  spids: [565]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(stackless)})
                                (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} 
                                  {(stackless2.7)}
                                )
                              ]
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:TARGET spids:[606])
                              op: Equal
                              rhs: {(stackless2.7-static)}
                              spids: [606]
                            )
                          ]
                          spids: [606]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:PYTHONTBZ2 spids:[610])
                              op: Equal
                              rhs: {(stackless-2712-export.tar.xz)}
                              spids: [610]
                            )
                          ]
                          spids: [610]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_CO spids:[614])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [614]
                            )
                          ]
                          spids: [614]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_XX spids:[617])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [617]
                            )
                          ]
                          spids: [617]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_PY3 spids:[620])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [620]
                            )
                          ]
                          spids: [620]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[623])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [623]
                            )
                          ]
                          spids: [623]
                        )
                      ]
                      spids: [16777215 603]
                    )
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(stacklessco)})
                                (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} 
                                  {(stacklessco2.7)}
                                )
                              ]
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:TARGET spids:[654])
                              op: Equal
                              rhs: {(stacklessco2.7-static)}
                              spids: [654]
                            )
                          ]
                          spids: [654]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:PYTHONTBZ2 spids:[658])
                              op: Equal
                              rhs: {(stackless-2712-export.tar.xz)}
                              spids: [658]
                            )
                          ]
                          spids: [658]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_CO spids:[662])
                              op: Equal
                              rhs: {(1)}
                              spids: [662]
                            )
                          ]
                          spids: [662]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_XX spids:[666])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [666]
                            )
                          ]
                          spids: [666]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:ISP_PY3 spids:[669])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [669]
                            )
                          ]
                          spids: [669]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[672])
                              op: Equal
                              rhs: {(1)}
                              spids: [672]
                            )
                          ]
                          spids: [672]
                        )
                      ]
                      spids: [626 651]
                    )
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(stacklessxx)})
                                (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} 
                                  {(stacklessxx2.7)}
                                )
                              ]
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:TARGET spids:[704])
                              op: Equal
                              rhs: {(stacklessxx2.7-static)}
                              spids: [704]
                            )
                          ]
                          spids: [704]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:PYTHONTBZ2 spids:[708])
                              op: Equal
                              rhs: {(stackless-2712-export.tar.xz)}
                              spids: [708]
                            )
                          ]
                          spids: [708]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_CO spids:[712])
                              op: Equal
                              rhs: {(1)}
                              spids: [712]
                            )
                          ]
                          spids: [712]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_XX spids:[716])
                              op: Equal
                              rhs: {(1)}
                              spids: [716]
                            )
                          ]
                          spids: [716]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:ISP_PY3 spids:[723])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [723]
                            )
                          ]
                          spids: [723]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[726])
                              op: Equal
                              rhs: {(1)}
                              spids: [726]
                            )
                          ]
                          spids: [726]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_TC spids:[730])
                              op: Equal
                              rhs: {(1)}
                              spids: [730]
                            )
                          ]
                          spids: [730]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_LMDB spids:[734])
                              op: Equal
                              rhs: {(1)}
                              spids: [734]
                            )
                          ]
                          spids: [734]
                        )
                      ]
                      spids: [676 701]
                    )
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(python)})
                                (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(python2.7)})
                              ]
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:TARGET spids:[766])
                              op: Equal
                              rhs: {(python2.7-static)}
                              spids: [766]
                            )
                          ]
                          spids: [766]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:PYTHONTBZ2 spids:[770])
                              op: Equal
                              rhs: {(Python-2.7.12.tar.xz)}
                              spids: [770]
                            )
                          ]
                          spids: [770]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_CO spids:[774])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [774]
                            )
                          ]
                          spids: [774]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_XX spids:[777])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [777]
                            )
                          ]
                          spids: [777]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_PY3 spids:[780])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [780]
                            )
                          ]
                          spids: [780]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[783])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [783]
                            )
                          ]
                          spids: [783]
                        )
                      ]
                      spids: [738 763]
                    )
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(python3.2)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:TARGET spids:[802])
                              op: Equal
                              rhs: {(python3.2-static)}
                              spids: [802]
                            )
                          ]
                          spids: [802]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:PYTHONTBZ2 spids:[806])
                              op: Equal
                              rhs: {(Python-3.2.tar.bz2)}
                              spids: [806]
                            )
                          ]
                          spids: [806]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_CO spids:[810])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [810]
                            )
                          ]
                          spids: [810]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_XX spids:[813])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [813]
                            )
                          ]
                          spids: [813]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_PY3 spids:[816])
                              op: Equal
                              rhs: {(1)}
                              spids: [816]
                            )
                          ]
                          spids: [816]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[820])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [820]
                            )
                          ]
                          spids: [820]
                        )
                      ]
                      spids: [786 799]
                    )
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(stackless3.2)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:TARGET spids:[839])
                              op: Equal
                              rhs: {(stackless3.2-static)}
                              spids: [839]
                            )
                          ]
                          spids: [839]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:PYTHONTBZ2 spids:[843])
                              op: Equal
                              rhs: {(stackless-32-export.tar.bz2)}
                              spids: [843]
                            )
                          ]
                          spids: [843]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_CO spids:[847])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [847]
                            )
                          ]
                          spids: [847]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_XX spids:[850])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [850]
                            )
                          ]
                          spids: [850]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_PY3 spids:[853])
                              op: Equal
                              rhs: {(1)}
                              spids: [853]
                            )
                          ]
                          spids: [853]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[857])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [857]
                            )
                          ]
                          spids: [857]
                        )
                      ]
                      spids: [823 836]
                    )
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(stacklessxl3.2)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:TARGET spids:[876])
                              op: Equal
                              rhs: {(stacklessxl3.2-static)}
                              spids: [876]
                            )
                          ]
                          spids: [876]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:PYTHONTBZ2 spids:[880])
                              op: Equal
                              rhs: {(stackless-32-export.tar.bz2)}
                              spids: [880]
                            )
                          ]
                          spids: [880]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_CO spids:[884])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [884]
                            )
                          ]
                          spids: [884]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_XX spids:[887])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [887]
                            )
                          ]
                          spids: [887]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:IS_PY3 spids:[890])
                              op: Equal
                              rhs: {(1)}
                              spids: [890]
                            )
                          ]
                          spids: [890]
                        )
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[894])
                              op: Equal
                              rhs: {(1)}
                              spids: [894]
                            )
                          ]
                          spids: [894]
                        )
                      ]
                      spids: [860 873]
                    )
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(usessl)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[914])
                              op: Equal
                              rhs: {(1)}
                              spids: [914]
                            )
                          ]
                          spids: [914]
                        )
                      ]
                      spids: [898 911]
                    )
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: (C {(test)} {(DQ ($ VSub_Name '$ARG'))} {(Lit_Other '=')} {(nossl)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.Assignment
                          keyword: Assign_None
                          pairs: [
                            (assign_pair
                              lhs: (lhs_expr.LhsName name:USE_SSL spids:[934])
                              op: Equal
                              rhs: (word.EmptyWord)
                              spids: [934]
                            )
                          ]
                          spids: [934]
                        )
                      ]
                      spids: [918 931]
                    )
                  ]
                  else_action: [
                    (command.Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (lhs_expr.LhsName name:STEPS spids:[940])
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$STEPS') (' ') ($ VSub_Name '$ARG'))}
                          spids: [940]
                        )
                      ]
                      spids: [940]
                    )
                  ]
                  spids: [937 948]
                )
              ]
              spids: [561 950]
            )
          spids: [555 559]
        )
        (command.If
          arms: [
            (if_arm
              cond: [
                (command.Sentence
                  child: (C {(test)} {(-z)} {(DQ ($ VSub_Name '$STEPS'))})
                  terminator: <Op_Semi ';'>
                )
              ]
              action: [
                (command.Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:STEPS spids:[978])
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (
'initbuilddir initdeps buildlibssl buildlibevent2 buildlibtc configure fixsemaphore patchsetup fixsetup patchimport patchgetpath patchsqlite patchssl patchlocale fixsetup makeminipython extractpyrex patchsyncless patchgevent patchgeventmysql patchmsgpack patchpythontokyocabinet patchpythonlmdb patchconcurrence patchpycrypto patchaloaes fixsetup makepython buildpythonlibzip buildtarget'
                            )
                          )
                        }
                      spids: [978]
                    )
                  ]
                  spids: [978]
                )
              ]
              spids: [16777215 963]
            )
          ]
          spids: [16777215 983]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:INSTS spids:[986])
              op: Equal
              rhs: {(DQ ($ VSub_Name '$INSTS_BASE'))}
              spids: [986]
            )
          ]
          spids: [986]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:BUILDDIR spids:[991])
              op: Equal
              rhs: {(DQ ($ VSub_Name '$TARGET') (.build))}
              spids: [991]
            )
          ]
          spids: [991]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:PBUILDDIR spids:[997])
              op: Equal
              rhs: {(DQ ($ VSub_Name '$PWD') (/) ($ VSub_Name '$BUILDDIR'))}
              spids: [997]
            )
          ]
          spids: [997]
        )
        (command.If
          arms: [
            (if_arm
              cond: [
                (command.Sentence
                  child: (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Darwin)})
                  terminator: <Op_Semi ';'>
                )
              ]
              action: [
                (C {(export)} 
                  {(Lit_VarLike 'CC=') 
                    (DQ ('gcc-mp-4.4 -m32 -static-libgcc -I') ($ VSub_Name '$PBUILDDIR') 
                      (/build-include)
                    )
                  }
                )
                (C {(export)} {(Lit_VarLike 'AR=') (ar)})
                (C {(export)} {(Lit_VarLike 'RANLIB=') (ranlib)})
                (C {(export)} {(Lit_VarLike 'LD=') (ld)})
                (C {(export)} 
                  {(Lit_VarLike 'LDFLAGS=') (DQ (-L) ($ VSub_Name '$PBUILDDIR') (/build-lib))}
                )
                (C {(export)} {(Lit_VarLike 'STRIP=') (strip)})
              ]
              spids: [16777215 1024]
            )
          ]
          else_action: [
            (C {(export)} 
              {(Lit_VarLike 'CC=') 
                (DQ ($ VSub_Name '$PBUILDDIR') 
                  ('/cross-compiler-i686/bin/i686-gcc -static -fno-stack-protector')
                )
              }
            )
            (C {(export)} 
              {(Lit_VarLike 'AR=') (DQ ($ VSub_Name '$PBUILDDIR') (/cross-compiler-i686/bin/i686-ar))}
            )
            (C {(export)} 
              {(Lit_VarLike 'RANLIB=') 
                (DQ ($ VSub_Name '$PBUILDDIR') (/cross-compiler-i686/bin/i686-ranlib))
              }
            )
            (C {(export)} 
              {(Lit_VarLike 'LD=') (DQ ($ VSub_Name '$PBUILDDIR') (/cross-compiler-i686/bin/i686-ld))}
            )
            (C {(export)} {(Lit_VarLike 'LDFLAGS=') (DQ )})
            (C {(export)} 
              {(Lit_VarLike 'STRIP=') 
                (DQ ($ VSub_Name '$PBUILDDIR') ('/cross-compiler-i686/bin/i686-strip -s'))
              }
            )
          ]
          spids: [1075 1133]
        )
        (C {(echo)} {(DQ ('Running in directory: ') ($ VSub_Name '$PWD'))})
        (C {(echo)} {(DQ ('Building target: ') ($ VSub_Name '$TARGET'))})
        (C {(echo)} {(DQ ('Building in directory: ') ($ VSub_Name '$BUILDDIR'))})
        (C {(echo)} {(DQ ('Using Python source distribution: ') ($ VSub_Name '$PYTHONTBZ2'))})
        (C {(echo)} {(DQ ('Will run steps: ') ($ VSub_Name '$STEPS'))})
        (C {(echo)} {(DQ ('Is adding coroutine libraries: ') ($ VSub_Name '$IS_CO'))})
        (C {(echo)} {(DQ ('Is using OpenSSL for SSL functionality: ') ($ VSub_Name '$USE_SSL'))})
        (C {(echo)} {(DQ ('Is using Tokyo Cabinet database: ') ($ VSub_Name '$USE_TC'))})
        (C {(echo)} {(DQ ('Is using LMDB (database): ') ($ VSub_Name '$USE_LMDB'))})
        (C {(echo)} {(DQ ('Operating system UNAME: ') ($ VSub_Name '$UNAME'))})
        (C {(echo)})
        (command.FuncDef
          name: initbuilddir
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(rm)} {(-rf)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(mkdir)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Linux)})
                                (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Darwin)})
                              ]
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [(C {(Lit_Other ':')})]
                      spids: [16777215 1274]
                    )
                  ]
                  else_action: [
                    (C {(set)} {(Lit_Other '+') (x)})
                    (command.SimpleCommand
                      words: [
                        {(echo)}
                        {(DQ ('fatal: unsupported operating system: ') ($ VSub_Name '$UNAME'))}
                      ]
                      redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(2)}
                    )
                  ]
                  spids: [1280 1305]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Darwin)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (C {(mkdir)} {(DQ ($ VSub_Name '$BUILDDIR') (/build-include))})
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (C {(mkdir)} {(DQ ($ VSub_Name '$BUILDDIR') (/build-lib))})
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [16777215 1322]
                    )
                  ]
                  else_action: [
                    (command.AndOr
                      ops: [Op_DPipe]
                      children: [
                        (command.Subshell
                          child: 
                            (command.CommandList
                              children: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(mkdir)} {(cross-compiler-i686)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(cd)} {(cross-compiler-i686)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(tar)} {(xjvf)} {(../../gcxbase.inst.tbz2)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(tar)} {(xjvf)} {(../../gcc.inst.tbz2)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(tar)} {(xjvf)} {(../../gcxtool.inst.tbz2)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                            )
                          spids: [1360 1448]
                        )
                        (command.ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                        )
                      ]
                    )
                  ]
                  spids: [1357 1459]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Darwin)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (command.Subshell
                              child: 
                                (command.CommandList
                                  children: [
                                    (command.Sentence
                                      child: (C {(echo)} {(SQ <'#!/bin/sh'>)})
                                      terminator: <Op_Semi ';'>
                                    )
                                    (C {(echo)} {(SQ <'echo i386-apple-darwin9.8.0'>)})
                                  ]
                                )
                              redirects: [
                                (redir.Redir
                                  op: <Redir_Great '>'>
                                  fd: 16777215
                                  arg_word: {(DQ ($ VSub_Name '$BUILDDIR') (/config.guess.fake))}
                                )
                              ]
                              spids: [1491 1504]
                            )
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [16777215 1488]
                    )
                  ]
                  else_action: [
                    (command.AndOr
                      ops: [Op_DPipe]
                      children: [
                        (command.Subshell
                          child: 
                            (command.CommandList
                              children: [
                                (command.Sentence
                                  child: (C {(echo)} {(SQ <'#!/bin/sh'>)})
                                  terminator: <Op_Semi ';'>
                                )
                                (C {(echo)} {(SQ <'echo i686-pc-linux-gnu'>)})
                              ]
                            )
                          redirects: [
                            (redir.Redir
                              op: <Redir_Great '>'>
                              fd: 16777215
                              arg_word: {(DQ ($ VSub_Name '$BUILDDIR') (/config.guess.fake))}
                            )
                          ]
                          spids: [1524 1537]
                        )
                        (command.ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                        )
                      ]
                    )
                  ]
                  spids: [1521 1554]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(chmod)} {(Lit_Other '+') (x)} 
                      {(DQ ($ VSub_Name '$BUILDDIR') (/config.guess.fake))}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (C {(echo)} {(SQ <'#include <stdio.h>'>)})
                            (C {(echo)} {(SQ <'main() { return!printf("Hello, World!\\n"); }'>)})
                          ]
                        )
                      redirects: [
                        (redir.Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(DQ ($ VSub_Name '$BUILDDIR') (/hello.c))}
                        )
                      ]
                      spids: [1581 1596]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              children: [
                                (C {($ VSub_Name '$CC')} {(-o)} {(DQ ($ VSub_Name '$BUILDDIR') (/hello))} 
                                  {(DQ ($ VSub_Name '$BUILDDIR') (/hello.c))}
                                )
                              ]
                              negated: T
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (C {(set)} {(Lit_Other '+') (x)})
                        (command.SimpleCommand
                          words: [{(echo)} {(DQ ("fatal: the C compiler doesn't work"))}]
                          redirects: [(redir.Redir op:<Redir_GreatAnd '>&'> fd:16777215 arg_word:{(2)})]
                        )
                        (command.If
                          arms: [
                            (if_arm
                              cond: [
                                (command.Sentence
                                  child: 
                                    (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                      {(Darwin)}
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (command.SimpleCommand
                                  words: [
                                    {(echo)}
                                    {
                                      (DQ 
                                        (
'info: did you install MacPorts and run: sudo port install gcc44'
                                        )
                                      )
                                    }
                                  ]
                                  redirects: [
                                    (redir.Redir
                                      op: <Redir_GreatAnd '>&'>
                                      fd: 16777215
                                      arg_word: {(2)}
                                    )
                                  ]
                                )
                              ]
                              spids: [16777215 1664]
                            )
                          ]
                          spids: [16777215 1677]
                        )
                        (command.ControlFlow
                          token: <ControlFlow_Exit exit>
                          arg_word: {(2)}
                        )
                      ]
                      spids: [16777215 1632]
                    )
                  ]
                  spids: [16777215 1685]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {($ VSub_Name '$STRIP')} {(DQ ($ VSub_Name '$BUILDDIR') (/hello))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:OUT spids:[1706])
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (word_part.CommandSubPart
                              command_list: 
                                (command.CommandList
                                  children: [(C {(DQ ($ VSub_Name '$BUILDDIR') (/hello))})]
                                )
                              left_token: <Left_CommandSub '$('>
                              spids: [1708 1713]
                            )
                          )
                        }
                      spids: [1706]
                    )
                  ]
                  spids: [1704]
                )
                (C {(test)} {(DQ ($ VSub_QMark '$?'))} {(Lit_Other '=')} {(0)})
                (C {(test)} {(DQ ($ VSub_Name '$OUT'))} {(Lit_Other '=')} {(DQ ('Hello, World!'))})
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} 
                                          {
                                            (DQ 
                                              (word_part.BracedVarSub
                                                token: <VSub_Name PYTHONTBZ2>
                                                suffix_op: 
                                                  (suffix_op.StringUnary
                                                    op_id: VOp1_Percent
                                                    arg_word: {(.xz)}
                                                  )
                                                spids: [1764 1768]
                                              )
                                            )
                                          } {(KW_Bang '!') (Lit_Other '=')} {(DQ (${ VSub_Name PYTHONTBZ2))}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (command.Pipeline
                                          children: [
                                            (command.SimpleCommand
                                              words: [{(xz)} {(-d)}]
                                              redirects: [
                                                (redir.Redir
                                                  op: <Redir_Less '<'>
                                                  fd: 16777215
                                                  arg_word: {(../) (DQ ($ VSub_Name '$PYTHONTBZ2'))}
                                                )
                                              ]
                                            )
                                            (C {(tar)} {(xv)})
                                          ]
                                          negated: F
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 1781]
                                )
                              ]
                              else_action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(tar)} {(xjvf)} {(../) (DQ ($ VSub_Name '$PYTHONTBZ2'))})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [1809 1830]
                            )
                          ]
                        )
                      spids: [1742 1833]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: (C {(test)} {(-d)} {(Python-) (Lit_Other '*')})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(mv)} {(Python-) (Lit_Other '*') (/) (Lit_Other '*')} {(.)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 1871]
                                )
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: (C {(test)} {(-d)} {(python-) (Lit_Other '*')})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(mv)} {(python-) (Lit_Other '*') (/) (Lit_Other '*')} {(.)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1892 1902]
                                )
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: (C {(test)} {(-d)} {(stackless-) (Lit_Other '*')})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(mv)} {(stackless-) (Lit_Other '*') (/) (Lit_Other '*')} 
                                          {(.)}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [1923 1933]
                                )
                              ]
                              spids: [16777215 1954]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {(SQ <'s@^(Parser/pgenmain[.]o:)@disabled_$1@'>)} {(Makefile.pre.in)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [1844 1983]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR') (/Modules))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../../greenlet-0.3.1.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: (C {(test)} {(DQ ($ VSub_Name '$IS_PY3'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (command.SimpleCommand
                                          words: [{($ VSub_Name '$PATCH')} {(-p0)}]
                                          redirects: [
                                            (redir.Redir
                                              op: <Redir_Less '<'>
                                              fd: 16777215
                                              arg_word: {(../../greenlet-0.3.1-pycapsule.patch)}
                                            )
                                          ]
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 2037]
                                )
                              ]
                              spids: [16777215 2060]
                            )
                          ]
                        )
                      spids: [1995 2063]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(-p)} {(advzip)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(advzip)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                          {(Darwin)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(tar)} {(xjvf)} {(../../advzip.darwin.inst.tbz2)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 2133]
                                )
                              ]
                              else_action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(tar)} {(xjvf)} {(../../advzip.inst.tbz2)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [2151 2169]
                            )
                          ]
                        )
                      spids: [2075 2172]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (C {(cp)} {(-f)} {(DQ ($ VSub_Name '$BUILDDIR') (/config.guess.fake))} 
                  {(DQ ($ VSub_Name '$BUILDDIR') (/config.guess))}
                )
              ]
              spids: [1213]
            )
          spids: [1209 1212]
        )
        (command.FuncDef
          name: initdeps
          body: 
            (command.BraceGroup
              children: [
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Darwin)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (C {(builddeps)})
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [16777215 2221]
                    )
                  ]
                  else_action: [
                    (command.AndOr
                      ops: [Op_DPipe]
                      children: [
                        (C {(extractinsts)})
                        (command.ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                        )
                      ]
                    )
                  ]
                  spids: [2238 2255]
                )
              ]
              spids: [2205]
            )
          spids: [2201 2204]
        )
        (command.FuncDef
          name: builddeps
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(buildlibz)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(buildlibbz2)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(buildlibreadline)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(buildlibsqlite3)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(buildlibevent2)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [2280]
            )
          spids: [2276 2279]
        )
        (command.FuncDef
          name: buildlibbz2
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(bzip2-1.0.6)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../bzip2-1.0.6.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(bzip2-1.0.6)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-g(?!\\S)@@g, s@\\s-O\\d*(?!\\S)@ -O3@g if s@^CFLAGS\\s*=@CFLAGS = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(make)} {(Lit_VarLike 'CC=') (DQ ($ VSub_Name '$CC'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(libbz2.a)} {(../build-lib/libbz2-staticpython.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(bzlib.h)} {(../build-include/)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [2355 2483]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [2352]
            )
          spids: [2348 2351]
        )
        (command.FuncDef
          name: buildlibtc
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$USE_TC'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(tokyocabinet-1.4.47)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../tokyocabinet-1.4.47.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(tokyocabinet-1.4.47)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                          {(Darwin)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                          {(SQ <'s@^ *(LIBS="-l(?:z|bz2))@$1-staticpython @'>)} {(configure)}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 2617]
                                )
                              ]
                              spids: [16777215 2650]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {(SQ <'s@nanl\\([^()]*\\)@NAN@g'>)} {(Lit_Other '*') (.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(./configure)} {(--prefix) (Lit_Other '=') (/dev/null/missing)} 
                                  {(--disable-shared)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-g(?!\\S)@@g, s@\\s-O\\d*(?!\\S)@ -O2@g if s@^CFLAGS\\s*=@CFLAGS = @; s@ -I\\S+@ @g, s@=@= -I.@ if s@^CPPFLAGS\\s*=\\s*@CPPFLAGS = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(make)} {(libtokyocabinet.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {($ VSub_Name '$RANLIB')} {(libtokyocabinet.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(libtokyocabinet.a)} 
                                  {(../build-lib/libtokyocabinet-staticpython.a)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(tc) (Lit_Other '*') (.h)} {(../build-include/)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [2516 2788]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [2500]
            )
          spids: [2496 2499]
        )
        (command.FuncDef
          name: buildlibreadline
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(readline-5.2)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../readline-5.2.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(readline-5.2)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(./configure)} {(--disable-shared)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-g(?!\\S)@@g, s@\\s-O\\d*(?!\\S)@ -O2@g if s@^CFLAGS\\s*=@CFLAGS = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(make)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(libreadline.a)} {(../build-lib/libreadline-staticpython.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(../build-include/readline)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(../build-include/readline)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(rlstdc.h)} {(rltypedefs.h)} {(keymaps.h)} {(tilde.h)} 
                                  {(readline.h)} {(history.h)} {(chardefs.h)} {(../build-include/readline/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [2808 2988]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [2805]
            )
          spids: [2801 2804]
        )
        (command.FuncDef
          name: buildlibsqlite3
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(sqlite-amalgamation-3070603)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(unzip)} {(../sqlite-amalgamation-3070603.zip)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(sqlite-amalgamation-3070603)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {($ VSub_Name '$CC')} {(-c)} {(-O2)} {(-DSQLITE_ENABLE_STAT2)} 
                                  {(-DSQLITE_ENABLE_FTS3)} {(-DSQLITE_ENABLE_FTS4)} {(-DSQLITE_ENABLE_RTREE)} {(-W)} {(-Wall)} {(sqlite3.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {($ VSub_Name '$AR')} {(cr)} {(libsqlite3.a)} {(sqlite3.o)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {($ VSub_Name '$RANLIB')} {(libsqlite3.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(libsqlite3.a)} {(../build-lib/libsqlite3-staticpython.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(sqlite3.h)} {(../build-include/)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [3008 3155]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [3005]
            )
          spids: [3001 3004]
        )
        (command.FuncDef
          name: buildlibz
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(zlib-1.2.5)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xjvf)} {(../zlib-1.2.5.tar.bz2)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(zlib-1.2.5)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(./configure)} {(--static)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-g(?!\\S)@@g, s@\\s-O\\d*(?!\\S)@ -O3@g if s@^CFLAGS\\s*=@CFLAGS = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(make)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(libz.a)} {(../build-lib/libz-staticpython.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(zconf.h)} {(zlib.h)} {(../build-include/)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [3175 3313]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [3172]
            )
          spids: [3168 3171]
        )
        (command.FuncDef
          name: buildlibssl
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$USE_SSL'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(openssl-0.9.8zh.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../openssl-0.9.8zh.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(openssl-0.9.8zh)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                          {(Linux)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(./Configure)} {(no-shared)} {(linux-elf)} {(no-dso)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 3419]
                                )
                              ]
                              else_action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(./Configure)} {(no-shared)} {(darwin-i386-cc)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [3439 3464]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s(?:-g|-arch\\s+\\S+)(?!\\S)@@g, s@\\s-O\\d*(?!\\S)@ -O2@g, s@\\s-D(DSO_DLFCN|HAVE_DLFCN_H)(?!\\S)@@g if s@^CFLAG\\s*=\\s*@CFLAG = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(ln)} {(-s)} {(.)} {(crypto/des/asm/perlasm)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(make)} {(build_libs)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(libssl.a)} {(../build-lib/libssl-staticpython.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(libcrypto.a)} {(../build-lib/libcrypto-staticpython.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(../build-include/openssl)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(include/openssl/) (Lit_Other '*') (.h)} 
                                  {(../build-include/openssl/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [3346 3599]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [3330]
            )
          spids: [3326 3329]
        )
        (command.FuncDef
          name: buildlibevent2
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(libevent-2.0.16-stable)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(build-include/event2)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(build-lib/libevent) (Lit_Other '*')})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../libevent-2.0.16-stable.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(libevent-2.0.16-stable)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.Assignment
                              keyword: Assign_Local
                              pairs: [
                                (assign_pair
                                  lhs: (lhs_expr.LhsName name:SSL_FLAGS spids:[3725])
                                  op: Equal
                                  rhs: {(--disable-openssl)}
                                  spids: [3725]
                                )
                              ]
                              spids: [3723]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: (C {(test)} {(DQ ($ VSub_Name '$USE_SSL'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (lhs_expr.LhsName name:SSL_FLAGS spids:[3741])
                                          op: Equal
                                          rhs: {(--enable-openssl)}
                                          spids: [3741]
                                        )
                                      ]
                                      spids: [3741]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                          {
                                            (SQ 
                                              <
's@^for ac_lib in \\x27\\x27 ssl;@for ac_lib in \\x27\\x27 \\x27ssl-staticpython -lcrypto-staticpython\\x27;@;\n'
                                              > <'                    s@ -lcrypto(?= )@ -lcrypto-staticpython@g'>
                                            )
                                          } {(configure)}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 3738]
                                )
                              ]
                              spids: [16777215 3768]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(./configure)} {($ VSub_Name '$SSL_FLAGS')} {(--disable-debug-mode)} 
                                  {(--disable-shared)} {(--disable-libevent-regress)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: (C {(test)} {(DQ ($ VSub_Name '$USE_SSL'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(grep)} {(SQ <'^#define HAVE_OPENSSL 1$'>)} {(config.h)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 3799]
                                )
                              ]
                              spids: [16777215 3819]
                            )
                            (C {(cp)} {(-f)} {(../config.guess.fake)} {(config.guess)})
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-g(?!\\S)@@g, s@\\s-O\\d*(?!\\S)@ -O2@g if s@^CFLAGS\\s*=@CFLAGS = @'
                                      >
                                    )
                                  } {(Makefile)} {(Lit_Other '*') (/Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(make)} {(./include/event2/event-config.h)} {(libevent_core.la)} 
                                  {(libevent.la)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {($ VSub_Name '$AR')} {(cr)} {(libevent_evhttp.a)} 
                                  {(bufferevent_sock.o)} {(http.o)} {(listener.o)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {($ VSub_Name '$RANLIB')} {(libevent_evhttp.a)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(.libs/libevent_core.a)} 
                                  {(../build-lib/libevent_core-staticpython.a)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(libevent_evhttp.a)} 
                                  {(../build-lib/libevent_evhttp-staticpython.a)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(../build-include/event2)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(include/event2/) (Lit_Other '*') (.h)} 
                                  {(../build-include/event2/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [3632 3967]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [3616]
            )
          spids: [3612 3615]
        )
        (command.FuncDef
          name: extractinsts
          body: 
            (command.BraceGroup
              children: [
                (command.ForEach
                  iter_name: INSTTBZ2
                  iter_words: [{($ VSub_Name '$INSTS')}]
                  do_arg_iter: F
                  body: 
                    (command.DoGroup
                      children: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (command.Subshell
                              child: 
                                (command.CommandList
                                  children: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(cd)} 
                                          {(DQ ($ VSub_Name '$BUILDDIR') (/cross-compiler-i686))}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(tar)} {(xjvf)} {(../../) (DQ ($ VSub_Name '$INSTTBZ2'))})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                )
                              spids: [3999 4035]
                            )
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [3996 4046]
                    )
                  spids: [3992 3994]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Linux)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (C {(ln)} {(-s)} {(cross-compiler-i686/lib)} 
                          {(DQ ($ VSub_Name '$BUILDDIR') (/build-lib))}
                        )
                        (C {(ln)} {(-s)} {(cross-compiler-i686/include)} 
                          {(DQ ($ VSub_Name '$BUILDDIR') (/build-include))}
                        )
                      ]
                      spids: [16777215 4066]
                    )
                  ]
                  spids: [16777215 4093]
                )
              ]
              spids: [3984]
            )
          spids: [3980 3983]
        )
        (command.FuncDef
          name: configure
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (C {(perl)} {(-pi)} {(-e)} {(SQ <'$_="" if /ASDLGEN/'>)} {(Makefile.pre.in)})
                            (command.Assignment
                              keyword: Assign_Local
                              pairs: [
                                (assign_pair
                                  lhs: (lhs_expr.LhsName name:REGSFLAGS spids:[4149])
                                  op: Equal
                                  rhs: (word.EmptyWord)
                                  spids: [4149]
                                )
                              ]
                              spids: [4147]
                            )
                            (command.AndOr
                              ops: [Op_DAmp]
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Darwin)})
                                (command.Assignment
                                  keyword: Assign_None
                                  pairs: [
                                    (assign_pair
                                      lhs: (lhs_expr.LhsName name:REGSFLAGS spids:[4172])
                                      op: Equal
                                      rhs: {(--enable-stacklessfewerregisters)}
                                      spids: [4172]
                                    )
                                  ]
                                  spids: [4172]
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(./configure)} {(--disable-shared)} {(--disable-ipv6)} 
                                  {($ VSub_Name '$REGSFLAGS')}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [4105 4193]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (C {(fixmakefile)})
              ]
              spids: [4102]
            )
          spids: [4098 4101]
        )
        (command.FuncDef
          name: fixsemaphore
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                          {(Linux)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(perl)} {(-pi)} {(-e)} 
                                          {
                                            (SQ 
                                              <
's@^#define POSIX_SEMAPHORES_NOT_ENABLED 1$@/* #undef POSIX_SEMAPHORES_NOT_ENABLED */@'
                                              >
                                            )
                                          } {(pyconfig.h)}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 4246]
                                )
                              ]
                              spids: [16777215 4284]
                            )
                          ]
                        )
                      spids: [4216 4287]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [4213]
            )
          spids: [4209 4212]
        )
        (command.FuncDef
          name: fixmakefile
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-(?:ldl|framework\\s+CoreFoundation)(?!\\S)@@g if s@^LIBS\\s*=@LIBS = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-(?:g|O\\d*)(?!\\S)@@g, s@$@ -O2@ if s@^OPT\\s*=@OPT = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-(?:g|O\\d*)(?!\\S)@@g, s@$@ -O2@ if s@^SLPFLAGS\\s*=@SLPFLAGS = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {
                                    (SQ 
                                      <
's@\\s-g(?!\\S)@@g, s@\\s-O\\d*(?!\\S)@@g if s@^CFLAGS\\s*=@CFLAGS = @'
                                      >
                                    )
                                  } {(Makefile)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: (C {(test)} {(DQ ($ VSub_Name '$IS_PY3'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (command.Sentence
                                              child: 
                                                (command.Pipeline
                                                  children: [
                                                    (C {(grep)} {(SQ <'@SLPFLAGS@'>)} {(Makefile)})
                                                  ]
                                                  negated: T
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [(C {(Lit_Other ':')})]
                                          spids: [16777215 4461]
                                        )
                                        (if_arm
                                          cond: [
                                            (command.Sentence
                                              child: 
                                                (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} 
                                                  {(Lit_Other '=')} {(Darwin)}
                                                )
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (command.AndOr
                                              ops: [Op_DPipe]
                                              children: [
                                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                                  {
                                                    (SQ 
                                                      <
's~\\@SLPFLAGS\\@~-fomit-frame-pointer -DSTACKLESS_FRHACK=1 -O2~g'
                                                      >
                                                    )
                                                  } {(Makefile)}
                                                )
                                                (command.ControlFlow
                                                  token: <ControlFlow_Return return>
                                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                                )
                                              ]
                                            )
                                          ]
                                          spids: [4467 4480]
                                        )
                                      ]
                                      else_action: [
                                        (command.AndOr
                                          ops: [Op_DPipe]
                                          children: [
                                            (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                              {
                                                (SQ 
                                                  <
's~\\@SLPFLAGS\\@~-fno-omit-frame-pointer -O2~g'
                                                  >
                                                )
                                              } {(Makefile)}
                                            )
                                            (command.ControlFlow
                                              token: <ControlFlow_Return return>
                                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                                            )
                                          ]
                                        )
                                      ]
                                      spids: [4513 4538]
                                    )
                                  ]
                                  spids: [16777215 4445]
                                )
                              ]
                              spids: [16777215 4541]
                            )
                          ]
                        )
                      spids: [4307 4544]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [4304]
            )
          spids: [4300 4303]
        )
        (command.FuncDef
          name: patchsetup
          body: 
            (command.BraceGroup
              children: [
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: (C {(test)} {(DQ ($ VSub_Name '$IS_PY3'))})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (C {(cp)} {(Modules.Setup.3.2.static)} 
                              {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/Setup))}
                            )
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [16777215 4581]
                    )
                  ]
                  else_action: [
                    (command.AndOr
                      ops: [Op_DPipe]
                      children: [
                        (C {(cp)} {(Modules.Setup.2.7.static)} 
                          {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/Setup))}
                        )
                        (command.ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                        )
                      ]
                    )
                  ]
                  spids: [4602 4623]
                )
              ]
              spids: [4561]
            )
          spids: [4557 4560]
        )
        (command.FuncDef
          name: fixsetup
          body: 
            (command.BraceGroup
              children: [
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Darwin)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                              {
                                (SQ <'\n'> <'        s@\\s-lncurses\\S*@ -lncurses.5@g;\n'> 
                                  <
'        s@^(?:_locale|spwd)(?!\\S)@#@; s@\\s-(?:lcrypt|lm)(?!\\S)@@g;\n'
                                  > <'        s@\\s-(lz|lsqlite3|lreadline|lbz2)(?!\\S)@ -$1-staticpython@g;\n'> <'        '>
                                )
                              } {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/Setup))}
                            )
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [16777215 4656]
                    )
                  ]
                  spids: [16777215 4724]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                      {(SQ <'s@\\s-(levent_core|levent_evhttp)(?!\\S)@ -$1-staticpython@g'>)} {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/Setup))}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(sleep)} {(2)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(touch)} {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/Setup))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(make)} {(Makefile)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [4788 4818]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (C {(fixmakefile)})
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: (C {(test)} {(DQ ($ VSub_Name '$IS_PY3'))})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (command.Subshell
                              child: 
                                (command.CommandList
                                  children: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(grep)} {(SQ <'^_thread '>)} {(Modules/Setup.config)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(grep)} {(SQ <signal>)} {(Modules/Setup.config)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                )
                              spids: [4844 4895]
                            )
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [16777215 4841]
                    )
                  ]
                  spids: [16777215 4906]
                )
              ]
              spids: [4640]
            )
          spids: [4636 4639]
        )
        (command.FuncDef
          name: patchimport
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                      {
                        (SQ 
                          <
's@#ifdef HAVE_DYNAMIC_LOADING(?!_NOT)@#ifdef HAVE_DYNAMIC_LOADING_NOT  /* StaticPython */@g'
                          >
                        )
                      } {(DQ ($ VSub_Name '$BUILDDIR')) (/Python/import.c)} 
                      {(DQ ($ VSub_Name '$BUILDDIR')) (/Python/importdl.c)}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [4915]
            )
          spids: [4911 4914]
        )
        (command.FuncDef
          name: patchgetpath
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-0777)} {(-e)} 
                      {
                        (SQ 
                          <
's@\\s+static\\s+void\\s+calculate_path(?!   )\\s*\\(\\s*void\\s*\\)\\s*{@\\n\\nstatic void calculate_path(void);  /* StaticPython */\\nstatic void calculate_path_not(void) {@g'
                          >
                        )
                      } {(DQ ($ VSub_Name '$BUILDDIR')) (/Modules/getpath.c)}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              children: [
                                (C {(grep)} {(-q)} {(StaticPython-appended)} 
                                  {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/getpath.c))}
                                )
                              ]
                              negated: T
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.If
                          arms: [
                            (if_arm
                              cond: [
                                (command.Sentence
                                  child: (C {(test)} {(DQ ($ VSub_Name '$IS_PY3'))})
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (command.SimpleCommand
                                      words: [{(cat)} {(calculate_path.3.2.c)}]
                                      redirects: [
                                        (redir.Redir
                                          op: <Redir_DGreat '>>'>
                                          fd: 16777215
                                          arg_word: 
                                            {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/getpath.c))}
                                        )
                                      ]
                                    )
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [16777215 5028]
                            )
                          ]
                          else_action: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (command.SimpleCommand
                                  words: [{(cat)} {(calculate_path.2.7.c)}]
                                  redirects: [
                                    (redir.Redir
                                      op: <Redir_DGreat '>>'>
                                      fd: 16777215
                                      arg_word: {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/getpath.c))}
                                    )
                                  ]
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                          spids: [5050 5072]
                        )
                      ]
                      spids: [16777215 5016]
                    )
                  ]
                  spids: [16777215 5075]
                )
              ]
              spids: [4958]
            )
          spids: [4954 4957]
        )
        (command.FuncDef
          name: patchsqlite
          body: 
            (command.BraceGroup
              children: [
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: 
                            (command.Pipeline
                              children: [
                                (C {(grep)} {(SQ <'^#define MODULE_NAME '>)} 
                                  {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/_sqlite/util.h))}
                                )
                              ]
                              negated: T
                            )
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-0777)} {(-e)} 
                              {
                                (SQ 
                                  <
's@\\n#define PYSQLITE_UTIL_H\\n@\\n#define PYSQLITE_UTIL_H\\n#define MODULE_NAME "_sqlite3"  /* StaticPython */\\n@'
                                  >
                                )
                              } {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/_sqlite/util.h))}
                            )
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [16777215 5107]
                    )
                  ]
                  spids: [16777215 5137]
                )
                (command.ForEach
                  iter_name: F
                  iter_words: [
                    {(DQ ($ VSub_Name '$BUILDDIR') (/Modules/_sqlite/)) (Lit_Other '*') (.c)}
                  ]
                  do_arg_iter: F
                  body: 
                    (command.DoGroup
                      children: [
                        (command.If
                          arms: [
                            (if_arm
                              cond: [
                                (command.Sentence
                                  child: 
                                    (command.Pipeline
                                      children: [
                                        (C {(grep)} {(-q)} {(SQ <'^#include "util.h"'>)} 
                                          {(DQ ($ VSub_Name '$F'))}
                                        )
                                      ]
                                      negated: T
                                    )
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-0777)} {(-e)} 
                                      {(SQ <'s@\\A@#include "util.h"  /* StaticPython */\\n@'>)} {(DQ ($ VSub_Name '$F'))}
                                    )
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [16777215 5175]
                            )
                          ]
                          spids: [16777215 5204]
                        )
                      ]
                      spids: [5155 5208]
                    )
                  spids: [5146 5153]
                )
              ]
              spids: [5084]
            )
          spids: [5080 5083]
        )
        (command.FuncDef
          name: generate_loader_py
          body: 
            (command.BraceGroup
              children: [
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:CEXT_MODNAME spids:[5222])
                      op: Equal
                      rhs: {(DQ ($ VSub_Number '$1'))}
                      spids: [5222]
                    )
                  ]
                  spids: [5220]
                )
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:PY_MODNAME spids:[5230])
                      op: Equal
                      rhs: {(DQ ($ VSub_Number '$2'))}
                      spids: [5230]
                    )
                  ]
                  spids: [5228]
                )
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:PY_FILENAME spids:[5238])
                      op: Equal
                      rhs: 
                        {
                          (DQ (Lib/) 
                            (word_part.BracedVarSub
                              token: <VSub_Name PY_MODNAME>
                              suffix_op: 
                                (suffix_op.PatSub
                                  pat: {(.)}
                                  replace: {(Lit_Slash /)}
                                  replace_mode: Lit_Slash
                                  spids: [5243]
                                )
                              spids: [5241 5248]
                            ) (.py)
                          )
                        }
                      spids: [5238]
                    )
                  ]
                  spids: [5236]
                )
                (C {(Lit_Other ':')} {(Generating)} {(loader)} {(DQ ($ VSub_Name '$PY_FILENAME'))})
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.SimpleCommand
                      words: [
                        {(echo)}
                        {
                          (DQ ('import sys; import ') ($ VSub_Name '$CEXT_MODNAME') 
                            ('; sys.modules[__name__] = ') ($ VSub_Name '$CEXT_MODNAME')
                          )
                        }
                      ]
                      redirects: [
                        (redir.Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(DQ ($ VSub_Name '$PY_FILENAME'))}
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [5217]
            )
          spids: [5213 5216]
        )
        (command.FuncDef
          name: patch_and_copy_cext
          body: 
            (command.BraceGroup
              children: [
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:SOURCE_C spids:[5298])
                      op: Equal
                      rhs: {(DQ ($ VSub_Number '$1'))}
                      spids: [5298]
                    )
                  ]
                  spids: [5296]
                )
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:TARGET_C spids:[5306])
                      op: Equal
                      rhs: {(DQ ($ VSub_Number '$2'))}
                      spids: [5306]
                    )
                  ]
                  spids: [5304]
                )
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:CEXT_MODNAME spids:[5314])
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (word_part.BracedVarSub
                              token: <VSub_Name TARGET_C>
                              suffix_op: (suffix_op.StringUnary op_id:VOp1_Percent arg_word:{(.c)})
                              spids: [5316 5320]
                            )
                          )
                        }
                      spids: [5314]
                    )
                  ]
                  spids: [5312]
                )
                (C {(export)} 
                  {(Lit_VarLike 'CEXT_MODNAME=') 
                    (DQ 
                      (word_part.BracedVarSub
                        token: <VSub_Name CEXT_MODNAME>
                        suffix_op: 
                          (suffix_op.StringUnary
                            op_id: VOp1_DPound
                            arg_word: {('*') (Lit_Slash /)}
                          )
                        spids: [5328 5333]
                      )
                    )
                  }
                )
                (C {(export)} 
                  {(Lit_VarLike 'CEXT_MODNAME=') 
                    (DQ 
                      (word_part.BracedVarSub
                        token: <VSub_Name CEXT_MODNAME>
                        suffix_op: 
                          (suffix_op.PatSub
                            pat: {(._)}
                            replace: {(_)}
                            replace_mode: Lit_Slash
                            spids: [5343]
                          )
                        spids: [5341 5348]
                      )
                    )
                  }
                )
                (C {(export)} 
                  {(Lit_VarLike 'CEXT_MODNAME=') 
                    (DQ 
                      (word_part.BracedVarSub
                        token: <VSub_Name CEXT_MODNAME>
                        suffix_op: 
                          (suffix_op.PatSub
                            pat: {(.)}
                            replace: {(_)}
                            replace_mode: Lit_Slash
                            spids: [5358]
                          )
                        spids: [5356 5363]
                      )
                    )
                  }
                )
                (C {(export)} 
                  {(Lit_VarLike 'CEXT_MODNAME=') (_) 
                    (DQ 
                      (word_part.BracedVarSub
                        token: <VSub_Name CEXT_MODNAME>
                        suffix_op: (suffix_op.StringUnary op_id:VOp1_Pound arg_word:{(_)})
                        spids: [5372 5376]
                      )
                    )
                  }
                )
                (C {(Lit_Other ':')} {(Copying)} {(and)} {(patching)} {(DQ ($ VSub_Name '$SOURCE_C'))} 
                  {(to)} {(DQ ($ VSub_Name '$TARGET_C')) (Lit_Comma ',')} 
                  {(Lit_VarLike 'CEXT_MODNAME=') (DQ ($ VSub_Name '$CEXT_MODNAME'))}
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.SimpleCommand
                      words: [
                        {(perl)}
                        {(-0777)}
                        {(-pe)}
                        {
                          (SQ <'\n'> 
                            <'    s@^(PyMODINIT_FUNC)\\s+\\w+\\(@$1 init$ENV{CEXT_MODNAME}(@mg;\n'> <'    s@( Py_InitModule\\d*)\\(\\s*"\\w[\\w.]*",@$1("$ENV{CEXT_MODNAME}",@g;\n'> 
                            <'    # Cython version of the one below.\n'> <'    s@( Py_InitModule\\d*\\(\\s*__Pyx_NAMESTR\\()"\\w[\\w.]*"\\),@$1"$ENV{CEXT_MODNAME}"),@g;\n'> 
                            <'    # For PyCrypto.\n'> 
                            <
'    s@^[ \\t]*(#[ \\t]*define\\s+MODULE_NAME\\s+\\S+)@#define MODULE_NAME $ENV{CEXT_MODNAME}@mg;\n'
                            > 
                            <
'    s@^[ \\t]*(#[ \\t]*define\\s+MODULE_NAME\\s+\\S+.*triple DES.*)@#define MODULE_NAME _Crypto_Cipher_DES3@mg;\n'
                            > <'  '>
                          )
                        }
                      ]
                      redirects: [
                        (redir.Redir
                          op: <Redir_Less '<'>
                          fd: 16777215
                          arg_word: {(DQ ($ VSub_Name '$SOURCE_C'))}
                        )
                        (redir.Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(DQ ($ VSub_Name '$TARGET_C'))}
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [5293]
            )
          spids: [5289 5292]
        )
        (command.FuncDef
          name: enable_module
          body: 
            (command.BraceGroup
              children: [
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:CEXT_MODNAME spids:[5453])
                      op: Equal
                      rhs: {(DQ ($ VSub_Number '$1'))}
                      spids: [5453]
                    )
                  ]
                  spids: [5451]
                )
                (C {(export)} {(CEXT_MODNAME)})
                (C {(Lit_Other ':')} {(Enabling)} {(module) (Lit_Other ':')} 
                  {(DQ ($ VSub_Name '$CEXT_MODNAME'))}
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(grep)} {(-qE)} {(DQ ('^#?') ($ VSub_Name '$CEXT_MODNAME') (' '))} 
                      {(Modules/Setup)}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(perl)} {(-0777)} {(-pi)} {(-e)} 
                      {(SQ <'s@^#$ENV{CEXT_MODNAME} @$ENV{CEXT_MODNAME} @mg'>)} {(Modules/Setup)}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [5448]
            )
          spids: [5444 5447]
        )
        (command.FuncDef
          name: patchssl
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$USE_SSL'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_ssl)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_hashlib)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [5542 5585]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [5526]
            )
          spids: [5522 5525]
        )
        (command.FuncDef
          name: patchsyncless
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(syncless-) (Lit_Other '*')} {(syncless.dir)} 
                                  {(Lib/syncless)} {(Modules/syncless)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../syncless-0.25.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(syncless-0.25)} {(syncless.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/syncless)} {(Modules/syncless)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(syncless.dir/syncless/) (Lit_Other '*') (.py)} 
                                  {(Lib/syncless/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(generate_loader_py)} {(_syncless_coio)} {(syncless.coio)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(patch_and_copy_cext)} {(syncless.dir/coio_src/coio.c)} 
                                  {(Modules/syncless/_syncless_coio.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(syncless.dir/coio_src/coio_minihdns.c)} 
                                  {(syncless.dir/coio_src/coio_minihdns.h)} {(syncless.dir/coio_src/coio_c_) (Lit_Other '*') (.h)} {(Modules/syncless/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_syncless_coio)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [5618 5789]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [5602]
            )
          spids: [5598 5601]
        )
        (command.FuncDef
          name: patchgevent
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(gevent-) (Lit_Other '*')} {(gevent.dir)} 
                                  {(Lib/gevent)} {(Modules/gevent)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../gevent-0.13.6.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(gevent-0.13.6)} {(gevent.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/gevent)} {(Modules/gevent)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(gevent.dir/gevent/) (Lit_Other '*') (.py)} {(Lib/gevent/)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-f)} {(gevent.dir/gevent/win32util.py)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(generate_loader_py)} {(_gevent_core)} {(gevent.core)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(patch_and_copy_cext)} {(gevent.dir/gevent/core.c)} 
                                  {(Modules/gevent/_gevent_core.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (command.SimpleCommand
                                  words: [{(cat)}]
                                  redirects: [
                                    (redir.Redir
                                      op: <Redir_Great '>'>
                                      fd: 16777215
                                      arg_word: {(Modules/gevent/libevent.h)}
                                    )
                                    (redir.HereDoc
                                      op: <Redir_DLess '<<'>
                                      fd: 16777215
                                      here_begin: {(SQ <END>)}
                                      here_end_span_id: 6005
                                      stdin_parts: [
                                        ('/**** pts ****/\n')
                                        ('#include "sys/queue.h"\n')
                                        ('#define LIBEVENT_HTTP_MODERN\n')
                                        ('#include "event2/event.h"\n')
                                        ('#include "event2/event_struct.h"\n')
                                        ('#include "event2/event_compat.h"\n')
                                        ('#include "event2/http.h"\n')
                                        ('#include "event2/http_compat.h"\n')
                                        ('#include "event2/http_struct.h"\n')
                                        ('#include "event2/buffer.h"\n')
                                        ('#include "event2/buffer_compat.h"\n')
                                        ('#include "event2/dns.h"\n')
                                        ('#include "event2/dns_compat.h"\n')
                                        ('#define EVBUFFER_DRAIN evbuffer_drain\n')
                                        ('#define EVHTTP_SET_CB  evhttp_set_cb\n')
                                        (
'#define EVBUFFER_PULLUP(BUF, SIZE) evbuffer_pullup(BUF, SIZE)\n'
                                        )
                                        ('#define current_base event_global_current_base_\n')
                                        ('#define TAILQ_GET_NEXT(X) TAILQ_NEXT((X), next)\n')
                                        ('extern void *current_base;\n')
                                      ]
                                    )
                                  ]
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_gevent_core)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [5822 6020]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [5806]
            )
          spids: [5802 5805]
        )
        (command.FuncDef
          name: patchgeventmysql
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(geventmysql-) (Lit_Other '*')} {(geventmysql.dir)} 
                                  {(Lib/geventmysql)} {(Modules/geventmysql)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xjvf)} {(../geventmysql-20110201.tbz2)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(gevent-MySQL)} {(geventmysql.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/geventmysql)} {(Modules/geventmysql)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(geventmysql.dir/lib/geventmysql/) (Lit_Other '*') (.py)} 
                                  {(Lib/geventmysql/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(generate_loader_py)} {(_geventmysql_mysql)} {(geventmysql._mysql)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(patch_and_copy_cext)} 
                                  {(geventmysql.dir/lib/geventmysql/geventmysql._mysql.c)} {(Modules/geventmysql/geventmysql._mysql.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_geventmysql_mysql)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [6053 6197]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [6037]
            )
          spids: [6033 6036]
        )
        (command.FuncDef
          name: run_pyrexc
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.SimpleCommand
                      words: [
                        {(DQ ($ VSub_Name '$PBUILDDIR')) (/minipython)}
                        {(-S)}
                        {(-W)}
                        {(ignore) (Lit_Other ':') (Lit_Other ':') (DeprecationWarning)}
                        {(-c)}
                        {(DQ ('from Pyrex.Compiler.Main import main; main(command_line=1)'))}
                        {(DQ ($ VSub_At '$@'))}
                      ]
                      more_env: [
                        (env_pair
                          name: PYTHONPATH
                          val: 
                            {
                              (DQ ($ VSub_Name '$PBUILDDIR') ('/Lib:') ($ VSub_Name '$PWD') (/pyrex.dir))
                            }
                          spids: [6217]
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [6214]
            )
          spids: [6210 6213]
        )
        (command.FuncDef
          name: run_mkzip
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(rm)} {(-f)} {(DQ ($ VSub_Number '$1'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(DQ ($ VSub_Name '$PBUILDDIR') (/advzip/bin/advzip))} {(-a)} {(-4)} 
                      {(DQ ($ VSub_At '$@'))}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [6270]
            )
          spids: [6266 6269]
        )
        (command.FuncDef
          name: old_run_mkzip
          body: 
            (command.BraceGroup
              children: [
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:PYTHON spids:[6337])
                      op: Equal
                      rhs: {(DQ ($ VSub_Name '$PBUILDDIR')) (/python.exe)}
                      spids: [6337]
                    )
                  ]
                  spids: [6335]
                )
                (command.AndOr
                  ops: [Op_DAmp]
                  children: [
                    (C {(test)} {(-f)} {(DQ ($ VSub_Name '$PBUILDDIR')) (/minipython)})
                    (command.Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (lhs_expr.LhsName name:PYTHON spids:[6355])
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$PBUILDDIR')) (/minipython)}
                          spids: [6355]
                        )
                      ]
                      spids: [6355]
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.SimpleCommand
                      words: [
                        {(DQ ($ VSub_Name '$PYTHON'))}
                        {(-S)}
                        {(-c)}
                        {
                          (SQ <'if 1:\n'> <'  import os\n'> <'  import os.path\n'> <'  import stat\n'> 
                            <'  import sys\n'> <'  import zipfile\n'> <'  def All(filename):\n'> <'    s = os.lstat(filename)\n'> 
                            <'    assert not stat.S_ISLNK(s.st_mode), filename\n'> <'    if stat.S_ISDIR(s.st_mode):\n'> <'      for entry in os.listdir(filename):\n'> 
                            <'        for filename2 in All(os.path.join(filename, entry)):\n'> <'          yield filename2\n'> <'    else:\n'> <'      yield filename\n'> 
                            <'  zip_filename = sys.argv[1]\n'> <'  zipfile.zlib.Z_DEFAULT_COMPRESSION = 9  # Maximum effort.\n'> 
                            <
'  z = zipfile.ZipFile(zip_filename, "w", compression=zipfile.ZIP_DEFLATED)\n'
                            > <'  for filename in sys.argv[2:]:\n'> <'    for filename2 in All(filename):\n'> 
                            <'      z.write(filename2)\n'> <'  z.close()'>
                          )
                        }
                        {(DQ ($ VSub_At '$@'))}
                      ]
                      more_env: [
                        (env_pair
                          name: PYTHONPATH
                          val: {(DQ ($ VSub_Name '$PBUILDDIR') (/Lib))}
                          spids: [6366]
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [6332]
            )
          spids: [6328 6331]
        )
        (command.FuncDef
          name: patchpythontokyocabinet
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$USE_TC'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(python-tokyocabinet-) (Lit_Other '*')} 
                                  {(tokyocabinet.dir)} {(Lib/tokyocabinet)} {(Modules/tokyocabinet)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xjvf)} {(../python-tokyocabinet-20111221.tar.bz2)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(python-tokyocabinet-20111221)} {(tokyocabinet.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/tokyocabinet)} {(Modules/tokyocabinet)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (command.Subshell
                                  child: 
                                    (command.AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (C {(cd)} {(tokyocabinet.dir/tokyocabinet)})
                                        (command.SimpleCommand
                                          words: [{($ VSub_Name '$PATCH')} {(-p0)}]
                                          redirects: [
                                            (redir.Redir
                                              op: <Redir_Less '<'>
                                              fd: 16777215
                                              arg_word: {(../../../tokyocabinet_hash_c.patch)}
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  spids: [6528 6541]
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(tokyocabinet.dir/tokyocabinet/) (Lit_Other '*') (.py)} 
                                  {(Lib/tokyocabinet/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.Assignment
                              keyword: Assign_Local
                              pairs: [
                                (assign_pair
                                  lhs: (lhs_expr.LhsName name:M spids:[6575])
                                  op: Equal
                                  spids: [6575]
                                )
                              ]
                              spids: [6573]
                            )
                            (command.ForEach
                              iter_name: M
                              iter_words: [{(btree)} {(hash)} {(table)}]
                              do_arg_iter: F
                              body: 
                                (command.DoGroup
                                  children: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(patch_and_copy_cext)} 
                                          {(tokyocabinet.dir/tokyocabinet/) ($ VSub_Name '$M') (.c)} {(Modules/tokyocabinet/_tokyocabinet_) ($ VSub_Name '$M') (.c)}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(generate_loader_py)} {(_tokyocabinet_) ($ VSub_Name '$M')} 
                                          {(tokyocabinet.) ($ VSub_Name '$M')}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(enable_module)} {(_tokyocabinet_) ($ VSub_Name '$M')})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [6591 6644]
                                )
                              spids: [6583 6589]
                            )
                          ]
                        )
                      spids: [6440 6647]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [6424]
            )
          spids: [6420 6423]
        )
        (command.FuncDef
          name: patchpythonlmdb
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$USE_LMDB'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(lmdb-) (Lit_Other '*')} {(lmdb.dir)} {(Lib/lmdb)} 
                                  {(Modules/lmdb)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../lmdb-0.92.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(lmdb-0.92)} {(lmdb.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/lmdb)} {(Modules/lmdb)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.SimpleCommand
                              words: [
                                {(echo)}
                                {
                                  (SQ <'from _lmdb_cpython import *\n'> 
                                    <'from _lmdb_cpython import open\n'> <'from _lmdb_cpython import __all__'>
                                  )
                                }
                              ]
                              redirects: [
                                (redir.Redir
                                  op: <Redir_Great '>'>
                                  fd: 16777215
                                  arg_word: {(Lib/lmdb/__init__.py)}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(lmdb.dir/lmdb/tool.py)} {(Lib/lmdb/)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(lmdb.dir/lib/mdb.c)} {(Modules/lmdb/lmdb_mdb.c)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(lmdb.dir/lib/midl.c)} {(Modules/lmdb/lmdb_midl.c)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-pi) (Lit_TildeLike '~')} {(-e)} 
                                  {(SQ <'s@(pthread_mutexattr_setpshared\\()@0&&$1@g'>)} {(Modules/lmdb/lmdb_mdb.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(patch_and_copy_cext)} {(lmdb.dir/lmdb/cpython.c)} 
                                  {(Modules/lmdb/_lmdb_cpython.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_lmdb_cpython)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [6680 6879]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [6664]
            )
          spids: [6660 6663]
        )
        (command.FuncDef
          name: extractpyrex
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (C {(rm)} {(-rf)} {(pyrex.dir)})
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../Pyrex-0.9.9.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(Pyrex-0.9.9)} {(pyrex.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [6912 6966]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [6896]
            )
          spids: [6892 6895]
        )
        (command.FuncDef
          name: patchmsgpack
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_XX'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(msgpack-) (Lit_Other '*')} {(msgpack.dir)} 
                                  {(Lib/msgpack)} {(Modules/msgpack)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xjvf)} {(../msgpack-python-20111221.tar.bz2)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(msgpack-python-20111221)} {(msgpack.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.Assignment
                              keyword: Assign_Local
                              pairs: [
                                (assign_pair
                                  lhs: (lhs_expr.LhsName name:VERSION spids:[7073])
                                  op: Equal
                                  rhs: 
                                    {
                                      (word_part.CommandSubPart
                                        command_list: 
                                          (command.CommandList
                                            children: [
                                              (C {(grep)} {(SQ <'^version = '>)} 
                                                {(msgpack.dir/setup.py)}
                                              )
                                            ]
                                          )
                                        left_token: <Left_CommandSub '$('>
                                        spids: [7074 7082]
                                      )
                                    }
                                  spids: [7073]
                                )
                              ]
                              spids: [7071]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(test)} {(DQ ($ VSub_Name '$VERSION'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (command.Subshell
                                  child: 
                                    (command.AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (C {(cd)} {(msgpack.dir/msgpack)})
                                        (command.SimpleCommand
                                          words: [{($ VSub_Name '$PATCH')} {(-p0)}]
                                          redirects: [
                                            (redir.Redir
                                              op: <Redir_Less '<'>
                                              fd: 16777215
                                              arg_word: {(../../../msgpack_pyx.patch)}
                                            )
                                          ]
                                        )
                                      ]
                                    )
                                  spids: [7100 7113]
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(msgpack.dir/msgpack/_msgpack.pyx)} 
                                  {(msgpack.dir/msgpack/_msgpack_msgpack.pyx)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(run_pyrexc)} {(msgpack.dir/msgpack/_msgpack_msgpack.pyx)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/msgpack)} {(Modules/msgpack)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (command.SimpleCommand
                                  words: [{(echo)} {(DQ ($ VSub_Name '$VERSION'))}]
                                  redirects: [
                                    (redir.Redir
                                      op: <Redir_Great '>'>
                                      fd: 16777215
                                      arg_word: {(Lib/msgpack/__version__.py)}
                                    )
                                  ]
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(msgpack.dir/msgpack/__init__.py)} {(Lib/msgpack/)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(msgpack.dir/msgpack/_msgpack_msgpack.c)} 
                                  {(msgpack.dir/msgpack/) (Lit_Other '*') (.h)} {(Modules/msgpack/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(generate_loader_py)} {(_msgpack_msgpack)} {(msgpack._msgpack)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_msgpack_msgpack)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [7002 7247]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [6986]
            )
          spids: [6982 6985]
        )
        (command.FuncDef
          name: patchconcurrence
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(concurrence-) (Lit_Other '*')} {(concurrence.dir)} 
                                  {(Lib/concurrence)} {(Modules/concurrence)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../concurrence-0.3.1.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(concurrence-0.3.1)} {(concurrence.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/concurrence)} {(Modules/concurrence)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (command.Pipeline
                                  children: [
                                    (command.Subshell
                                      child: 
                                        (command.AndOr
                                          ops: [Op_DAmp]
                                          children: [
                                            (C {(cd)} {(concurrence.dir/lib)})
                                            (C {(tar)} {(c)} 
                                              {
                                                (word_part.CommandSubPart
                                                  command_list: 
                                                    (command.CommandList
                                                      children: [
                                                        (C {(find)} {(concurrence)} {(-type)} {(f)} 
                                                          {(-iname)} {(SQ <'*.py'>)}
                                                        )
                                                      ]
                                                    )
                                                  left_token: <Left_CommandSub '$('>
                                                  spids: [7382 7396]
                                                )
                                              }
                                            )
                                          ]
                                        )
                                      spids: [7371 7397]
                                    )
                                    (command.Subshell
                                      child: 
                                        (command.AndOr
                                          ops: [Op_DAmp]
                                          children: [(C {(cd)} {(Lib)}) (C {(tar)} {(x)})]
                                        )
                                      spids: [7402 7412]
                                    )
                                  ]
                                  negated: F
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(generate_loader_py)} {(_concurrence_event)} {(concurrence._event)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.SimpleCommand
                              words: [{(cat)}]
                              redirects: [
                                (redir.Redir
                                  op: <Redir_Great '>'>
                                  fd: 16777215
                                  arg_word: {(Modules/concurrence/event.h)}
                                )
                                (redir.HereDoc
                                  op: <Redir_DLess '<<'>
                                  fd: 16777215
                                  here_begin: {(SQ <END>)}
                                  here_end_span_id: 7453
                                  stdin_parts: [
                                    ('/**** pts ****/\n')
                                    ('#include <event2/event.h>\n')
                                    ('#include <event2/event_struct.h>\n')
                                    ('#include <event2/event_compat.h>\n')
                                  ]
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(run_pyrexc)} 
                                  {(concurrence.dir/lib/concurrence/concurrence._event.pyx)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(patch_and_copy_cext)} 
                                  {(concurrence.dir/lib/concurrence/concurrence._event.c)} {(Modules/concurrence/concurrence._event.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_concurrence_event)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(generate_loader_py)} {(_concurrence_io_io)} {(concurrence.io._io)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(run_pyrexc)} 
                                  {(concurrence.dir/lib/concurrence/io/concurrence.io._io.pyx)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(patch_and_copy_cext)} 
                                  {(concurrence.dir/lib/concurrence/io/concurrence.io._io.c)} {(Modules/concurrence/concurrence.io._io.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(concurrence.dir/lib/concurrence/io/io_base.c)} 
                                  {(concurrence.dir/lib/concurrence/io/io_base.h)} {(Modules/concurrence/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_concurrence_io_io)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(generate_loader_py)} {(_concurrence_database_mysql_mysql)} 
                                  {(concurrence.database.mysql._mysql)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(run_pyrexc)} {(-I)} {(concurrence.dir/lib/concurrence/io)} 
                                  {
                                    (
concurrence.dir/lib/concurrence/database/mysql/concurrence.database.mysql._mysql.pyx
                                    )
                                  }
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(patch_and_copy_cext)} 
                                  {
                                    (
concurrence.dir/lib/concurrence/database/mysql/concurrence.database.mysql._mysql.c
                                    )
                                  } {(Modules/concurrence/concurrence.database.mysql._mysql.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_concurrence_database_mysql_mysql)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [7283 7636]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [7267]
            )
          spids: [7263 7266]
        )
        (command.FuncDef
          name: patchpycrypto
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(pycrypto-) (Lit_Other '*')} {(pycrypto.dir)} 
                                  {(Lib/Crypto)} {(Modules/pycrypto)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../pycrypto-2.3.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(pycrypto-2.3)} {(pycrypto.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/Crypto)} {(Modules/pycrypto)} 
                                  {(Modules/pycrypto/libtom)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (command.Pipeline
                                  children: [
                                    (command.Subshell
                                      child: 
                                        (command.AndOr
                                          ops: [Op_DAmp]
                                          children: [
                                            (C {(cd)} {(pycrypto.dir/lib)})
                                            (C {(tar)} {(c)} 
                                              {
                                                (word_part.CommandSubPart
                                                  command_list: 
                                                    (command.CommandList
                                                      children: [
                                                        (C {(find)} {(Crypto)} {(-type)} {(f)} {(-iname)} 
                                                          {(SQ <'*.py'>)}
                                                        )
                                                      ]
                                                    )
                                                  left_token: <Left_CommandSub '$('>
                                                  spids: [7770 7784]
                                                )
                                              }
                                            )
                                          ]
                                        )
                                      spids: [7759 7785]
                                    )
                                    (command.Subshell
                                      child: 
                                        (command.AndOr
                                          ops: [Op_DAmp]
                                          children: [(C {(cd)} {(Lib)}) (C {(tar)} {(x)})]
                                        )
                                      spids: [7790 7800]
                                    )
                                  ]
                                  negated: F
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(ln)} {(-s)} {(_Crypto_Cipher_DES.c)} {(Modules/pycrypto/DES.c)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(pycrypto.dir/src/hash_template.c)} 
                                  {(pycrypto.dir/src/block_template.c)} {(pycrypto.dir/src/stream_template.c)} {(pycrypto.dir/src/pycrypto_compat.h)} 
                                  {(pycrypto.dir/src/_counter.h)} {(pycrypto.dir/src/Blowfish-tables.h)} {(pycrypto.dir/src/cast5.c)} {(Modules/pycrypto/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(pycrypto.dir/src/libtom/tomcrypt_des.c)} 
                                  {(pycrypto.dir/src/libtom/) (Lit_Other '*') (.h)} {(Modules/pycrypto/libtom/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.Assignment
                              keyword: Assign_Local
                              pairs: [
                                (assign_pair
                                  lhs: (lhs_expr.LhsName name:M spids:[7896])
                                  op: Equal
                                  spids: [7896]
                                )
                                (assign_pair
                                  lhs: (lhs_expr.LhsName name:CEXT_MODNAME spids:[7898])
                                  op: Equal
                                  spids: [7898]
                                )
                              ]
                              spids: [7894]
                            )
                            (command.ForEach
                              iter_name: M
                              iter_words: [
                                {(Crypto.Hash.MD2)}
                                {(Crypto.Hash.MD4)}
                                {(Crypto.Hash.SHA256)}
                                {(Crypto.Hash.RIPEMD160)}
                                {(Crypto.Cipher.AES)}
                                {(Crypto.Cipher.ARC2)}
                                {(Crypto.Cipher.Blowfish)}
                                {(Crypto.Cipher.CAST)}
                                {(Crypto.Cipher.DES)}
                                {(Crypto.Cipher.DES3)}
                                {(Crypto.Cipher.ARC4)}
                                {(Crypto.Cipher.XOR)}
                                {(Crypto.Util.strxor)}
                                {(Crypto.Util._counter)}
                              ]
                              do_arg_iter: F
                              body: 
                                (command.DoGroup
                                  children: [
                                    (command.Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (lhs_expr.LhsName name:CEXT_MODNAME spids:[7950])
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ 
                                                (word_part.BracedVarSub
                                                  token: <VSub_Name M>
                                                  suffix_op: 
                                                    (suffix_op.StringUnary
                                                      op_id: VOp1_DPound
                                                      arg_word: {('*') (Lit_Slash /)}
                                                    )
                                                  spids: [7952 7957]
                                                )
                                              )
                                            }
                                          spids: [7950]
                                        )
                                      ]
                                      spids: [7950]
                                    )
                                    (command.Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (lhs_expr.LhsName name:CEXT_MODNAME spids:[7961])
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ 
                                                (word_part.BracedVarSub
                                                  token: <VSub_Name CEXT_MODNAME>
                                                  suffix_op: 
                                                    (suffix_op.PatSub
                                                      pat: {(._)}
                                                      replace: {(_)}
                                                      replace_mode: Lit_Slash
                                                      spids: [7965]
                                                    )
                                                  spids: [7963 7970]
                                                )
                                              )
                                            }
                                          spids: [7961]
                                        )
                                      ]
                                      spids: [7961]
                                    )
                                    (command.Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (lhs_expr.LhsName name:CEXT_MODNAME spids:[7974])
                                          op: Equal
                                          rhs: 
                                            {
                                              (DQ 
                                                (word_part.BracedVarSub
                                                  token: <VSub_Name CEXT_MODNAME>
                                                  suffix_op: 
                                                    (suffix_op.PatSub
                                                      pat: {(.)}
                                                      replace: {(_)}
                                                      replace_mode: Lit_Slash
                                                      spids: [7978]
                                                    )
                                                  spids: [7976 7983]
                                                )
                                              )
                                            }
                                          spids: [7974]
                                        )
                                      ]
                                      spids: [7974]
                                    )
                                    (command.Assignment
                                      keyword: Assign_None
                                      pairs: [
                                        (assign_pair
                                          lhs: (lhs_expr.LhsName name:CEXT_MODNAME spids:[7987])
                                          op: Equal
                                          rhs: 
                                            {(_) 
                                              (DQ 
                                                (word_part.BracedVarSub
                                                  token: <VSub_Name CEXT_MODNAME>
                                                  suffix_op: 
                                                    (suffix_op.StringUnary
                                                      op_id: VOp1_Pound
                                                      arg_word: {(_)}
                                                    )
                                                  spids: [7990 7994]
                                                )
                                              )
                                            }
                                          spids: [7987]
                                        )
                                      ]
                                      spids: [7987]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(generate_loader_py)} {(DQ ($ VSub_Name '$CEXT_MODNAME'))} 
                                          {(DQ ($ VSub_Name '$M'))}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(patch_and_copy_cext)} 
                                          {
                                            (DQ (pycrypto.dir/src/) 
                                              (word_part.BracedVarSub
                                                token: <VSub_Name M>
                                                suffix_op: 
                                                  (suffix_op.StringUnary
                                                    op_id: VOp1_DPound
                                                    arg_word: {('*.')}
                                                  )
                                                spids: [8021 8025]
                                              ) (.c)
                                            )
                                          } {(Modules/pycrypto/) (DQ ($ VSub_Name '$CEXT_MODNAME')) (.c)}
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(enable_module)} {(DQ ($ VSub_Name '$CEXT_MODNAME'))})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [7946 8059]
                                )
                              spids: [7906 7944]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(perl)} {(-0777)} {(-pi)} {(-e)} 
                                  {
                                    (SQ <'s@ Py_InitModule\\("Crypto[.]\\w+[.]"@ Py_InitModule(""@g'>)
                                  } {(Modules/pycrypto/hash_template.c)} {(Modules/pycrypto/stream_template.c)} 
                                  {(Modules/pycrypto/block_template.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [7669 8097]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [7653]
            )
          spids: [7649 7652]
        )
        (command.FuncDef
          name: patchaloaes
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(aloaes-) (Lit_Other '*')} {(aloaes.dir)} {(Lib/aes)} 
                                  {(Modules/aloaes)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(tar)} {(xzvf)} {(../alo-aes-0.3.tar.gz)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mv)} {(alo-aes-0.3)} {(aloaes.dir)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(mkdir)} {(Lib/aes)} {(Modules/aloaes)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(aloaes.dir/aes/) (Lit_Other '*') (.py)} {(Lib/aes/)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(generate_loader_py)} {(_aes_aes)} {(aes._aes)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(patch_and_copy_cext)} {(aloaes.dir/aes/aesmodule.c)} 
                                  {(Modules/aloaes/_aes_aes.c)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(aloaes.dir/aes/rijndael-alg-fst.c)} 
                                  {(aloaes.dir/aes/rijndael-alg-fst.h)} {(Modules/aloaes/)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(enable_module)} {(_aes_aes)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [8130 8295]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [8114]
            )
          spids: [8110 8113]
        )
        (command.FuncDef
          name: patchlocale
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                          {(Darwin)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.If
                                      arms: [
                                        (if_arm
                                          cond: [
                                            (command.Sentence
                                              child: (C {(test)} {(DQ ($ VSub_Name '$IS_PY3'))})
                                              terminator: <Op_Semi ';'>
                                            )
                                          ]
                                          action: [
                                            (command.AndOr
                                              ops: [Op_DPipe]
                                              children: [
                                                (command.Subshell
                                                  child: 
                                                    (command.AndOr
                                                      ops: [Op_DAmp]
                                                      children: [
                                                        (C {(cd)} {(Lib)})
                                                        (command.SimpleCommand
                                                          words: [{($ VSub_Name '$PATCH')} {(-p1)}]
                                                          redirects: [
                                                            (redir.Redir
                                                              op: <Redir_Less '<'>
                                                              fd: 16777215
                                                              arg_word: 
                                                                {(../../locale.darwin.3.2.patch)}
                                                            )
                                                          ]
                                                        )
                                                      ]
                                                    )
                                                  spids: [8372 8385]
                                                )
                                                (command.ControlFlow
                                                  token: <ControlFlow_Return return>
                                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                                )
                                              ]
                                            )
                                          ]
                                          spids: [16777215 8369]
                                        )
                                      ]
                                      else_action: [
                                        (command.AndOr
                                          ops: [Op_DPipe]
                                          children: [
                                            (command.Subshell
                                              child: 
                                                (command.AndOr
                                                  ops: [Op_DAmp]
                                                  children: [
                                                    (C {(cd)} {(Lib)})
                                                    (command.SimpleCommand
                                                      words: [{($ VSub_Name '$PATCH')} {(-p1)}]
                                                      redirects: [
                                                        (redir.Redir
                                                          op: <Redir_Less '<'>
                                                          fd: 16777215
                                                          arg_word: {(../../locale.darwin.2.7.patch)}
                                                        )
                                                      ]
                                                    )
                                                  ]
                                                )
                                              spids: [8403 8416]
                                            )
                                            (command.ControlFlow
                                              token: <ControlFlow_Return return>
                                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                                            )
                                          ]
                                        )
                                      ]
                                      spids: [8396 8427]
                                    )
                                  ]
                                  spids: [16777215 8349]
                                )
                              ]
                              spids: [16777215 8430]
                            )
                          ]
                        )
                      spids: [8319 8433]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [8312]
            )
          spids: [8308 8311]
        )
        (command.FuncDef
          name: makeminipython
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(test)} {(DQ ($ VSub_Name '$IS_CO'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(0)}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                          {(Darwin)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(make)} {(python.exe)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(mv)} {(-f)} {(python.exe)} {(minipython)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 8500]
                                )
                              ]
                              else_action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(make)} {(python)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(mv)} {(-f)} {(python)} {(minipython)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [8533 8566]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {($ VSub_Name '$STRIP')} {(minipython)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [8466 8582]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [8450]
            )
          spids: [8446 8449]
        )
        (command.FuncDef
          name: makepython
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                          {(Darwin)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(make)} {(python.exe)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 8632]
                                )
                              ]
                              else_action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(make)} {(python)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(rm)} {(-f)} {(python.exe)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(ln)} {(-s)} {(python)} {(python.exe)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [8648 8696]
                            )
                          ]
                        )
                      spids: [8602 8699]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [8599]
            )
          spids: [8595 8598]
        )
        (command.FuncDef
          name: buildpythonlibzip
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: 
                        (command.CommandList
                          children: [
                            (C {(set)} {(-ex)})
                            (command.Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (lhs_expr.LhsName name:IFS spids:[8730])
                                  op: Equal
                                  rhs: {(SQ <'\n'>)}
                                  spids: [8730]
                                )
                              ]
                              spids: [8730]
                            )
                            (command.AndOr
                              ops: [Op_DPipe Op_DPipe]
                              children: [
                                (C {(cd)} {(DQ ($ VSub_Name '$BUILDDIR'))})
                                (command.Subshell
                                  child: 
                                    (command.AndOr
                                      ops: [Op_DAmp]
                                      children: [
                                        (C {(test)} {(-f)} {(xlib.zip)})
                                        (C {(mv)} {(xlib.zip)} {(xlib.zip.old)})
                                      ]
                                    )
                                  spids: [8745 8759]
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(xlib)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cp)} {(-R)} {(Lib)} {(xlib)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-f)} 
                                  {
                                    (word_part.CommandSubPart
                                      command_list: 
                                        (command.CommandList
                                          children: [(C {(find)} {(xlib)} {(-iname)} {(SQ <'*.pyc'>)})]
                                        )
                                      left_token: <Left_CommandSub '$('>
                                      spids: [8814 8824]
                                    )
                                  }
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (C {(rm)} {(-f)} {(xlib/plat-) (Lit_Other '*') (/regen)})
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-rf)} {(xlib/email/test)} {(xlib/bdddb)} {(xlib/ctypes)} 
                                  {(xlib/distutils)} {(xlib/idlelib)} {(xlib/lib-tk)} {(xlib/lib2to3)} {(xlib/msilib)} {(xlib/plat-aix) (Lit_Other '*')} 
                                  {(xlib/plat-atheos)} {(xlib/plat-beos) (Lit_Other '*')} {(xlib/plat-freebsd) (Lit_Other '*')} 
                                  {(xlib/plat-irix) (Lit_Other '*')} {(xlib/plat-unixware) (Lit_Other '*')} {(xlib/plat-mac)} {(xlib/plat-netbsd) (Lit_Other '*')} 
                                  {(xlib/plat-next) (Lit_Other '*')} {(xlib/plat-os2) (Lit_Other '*')} {(xlib/plat-riscos)} {(xlib/plat-sunos) (Lit_Other '*')} 
                                  {(xlib/site-packages) (Lit_Other '*')} {(xlib/sqlite3/test/) (Lit_Other '*')} {(xlib/turtle) (Lit_Other '*')} {(xlib/tkinter)} 
                                  {(xlib/bsddb/test)} {(xlib/test)} {(xlib/) (Lit_Other '*') (.egg-info)}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: 
                                        (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} 
                                          {(Darwin)}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(rm)} {(-rf)} {(xlib/plat-linux2)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 8954]
                                )
                              ]
                              else_action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(rm)} {(-rf)} {(xlib/plat-darwin)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [8972 8990]
                            )
                            (command.If
                              arms: [
                                (if_arm
                                  cond: [
                                    (command.Sentence
                                      child: (C {(test)} {(DQ ($ VSub_Name '$IS_PY3'))})
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (C {(cp)} {(../site.3.2.py)} {(xlib/site.py)})
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                    (command.AndOr
                                      ops: [Op_DPipe]
                                      children: [
                                        (command.Subshell
                                          child: 
                                            (command.AndOr
                                              ops: [Op_DAmp]
                                              children: [
                                                (C {(cd)} {(xlib)})
                                                (command.SimpleCommand
                                                  words: [{($ VSub_Name '$PATCH')} {(-p1)}]
                                                  redirects: [
                                                    (redir.Redir
                                                      op: <Redir_Less '<'>
                                                      fd: 16777215
                                                      arg_word: 
                                                        {
                                                          (
../../encodings_idna_missing_unicodedata.3.2.patch
                                                          )
                                                        }
                                                    )
                                                  ]
                                                )
                                              ]
                                            )
                                          spids: [9028 9041]
                                        )
                                        (command.ControlFlow
                                          token: <ControlFlow_Return return>
                                          arg_word: {(DQ ($ VSub_QMark '$?'))}
                                        )
                                      ]
                                    )
                                  ]
                                  spids: [16777215 9002]
                                )
                              ]
                              else_action: [
                                (command.AndOr
                                  ops: [Op_DPipe]
                                  children: [
                                    (C {(cp)} {(../site.2.7.py)} {(xlib/site.py)})
                                    (command.ControlFlow
                                      token: <ControlFlow_Return return>
                                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                                    )
                                  ]
                                )
                              ]
                              spids: [9052 9070]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(cd)} {(xlib)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-f)} {(Lit_Other '*') (Lit_TildeLike '~')} 
                                  {(Lit_Other '*') (/) (Lit_Other '*') (Lit_TildeLike '~')}
                                )
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(rm)} {(-f)} {(../xlib.zip)})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                            (command.AndOr
                              ops: [Op_DPipe]
                              children: [
                                (C {(run_mkzip)} {(../xlib.zip)} {(Lit_Other '*')})
                                (command.ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(DQ ($ VSub_QMark '$?'))}
                                )
                              ]
                            )
                          ]
                        )
                      spids: [8723 9137]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [8716]
            )
          spids: [8712 8715]
        )
        (command.FuncDef
          name: do_elfosfix
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(perl)} 
                      {(-e) 
                        (SQ <'\n'> <'use integer;\n'> <'use strict;\n'> <'\n'> 
                          <'#** ELF operating system codes from FreeBSDs /usr/share/misc/magic\n'> <'my %ELF_os_codes=qw{\n'> <'SYSV 0\n'> <'HP-UX 1\n'> <'NetBSD 2\n'> <'GNU/Linux 3\n'> <'GNU/Hurd 4\n'> 
                          <'86Open 5\n'> <'Solaris 6\n'> <'Monterey 7\n'> <'IRIX 8\n'> <'FreeBSD 9\n'> <'Tru64 10\n'> <'Novell 11\n'> 
                          <'OpenBSD 12\n'> <'ARM 97\n'> <'embedded 255\n'> <'};\n'> <'my $from_oscode=$ELF_os_codes{"SYSV"};\n'> 
                          <'my $to_oscode=$ELF_os_codes{"GNU/Linux"};\n'> <'\n'> <'for my $fn (@ARGV) {\n'> <'  my $f;\n'> <'  if (!open $f, "+<", $fn) {\n'> 
                          <'    print STDERR "$0: $fn: $!\\n";\n'> <'    exit 2  # next\n'> <'  }\n'> <'  my $head;\n'> 
                          <'  # vvv Imp: continue on next file instead of die()ing\n'> <'  die if 8!=sysread($f,$head,8);\n'> <'  if (substr($head,0,4)ne"\\177ELF") {\n'> 
                          <'    print STDERR "$0: $fn: not an ELF file\\n";\n'> <'    close($f); next;\n'> <'  }\n'> <'  if (vec($head,7,8)==$to_oscode) {\n'> 
                          <'    print STDERR "$0: info: $fn: already fixed\\n";\n'> <'  }\n'> <'  if ($from_oscode!=$to_oscode && vec($head,7,8)==$from_oscode) {\n'> 
                          <'    vec($head,7,8)=$to_oscode;\n'> <'    die if 0!=sysseek($f,0,0);\n'> <'    die if length($head)!=syswrite($f,$head);\n'> <'  }\n'> 
                          <'  die "file error\\n" if !close($f);\n'> <'}'>
                        )
                      } {(--)} {(DQ ($ VSub_At '$@'))}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [9160]
            )
          spids: [9156 9159]
        )
        (command.FuncDef
          name: buildtarget
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(cp)} {(DQ ($ VSub_Name '$BUILDDIR')) (/python.exe)} 
                      {(DQ ($ VSub_Name '$BUILDDIR') (/) ($ VSub_Name '$TARGET'))}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {($ VSub_Name '$STRIP')} 
                      {(DQ ($ VSub_Name '$BUILDDIR') (/) ($ VSub_Name '$TARGET'))}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: (C {(test)} {(DQ ($ VSub_Name '$UNAME'))} {(Lit_Other '=')} {(Linux)})
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (command.AndOr
                          ops: [Op_DPipe]
                          children: [
                            (C {(do_elfosfix)} 
                              {(DQ ($ VSub_Name '$BUILDDIR') (/) ($ VSub_Name '$TARGET'))}
                            )
                            (command.ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(DQ ($ VSub_QMark '$?'))}
                            )
                          ]
                        )
                      ]
                      spids: [16777215 9293]
                    )
                  ]
                  spids: [16777215 9313]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.SimpleCommand
                      words: [{(cat)} {(DQ ($ VSub_Name '$BUILDDIR')) (/xlib.zip)}]
                      redirects: [
                        (redir.Redir
                          op: <Redir_DGreat '>>'>
                          fd: 16777215
                          arg_word: {(DQ ($ VSub_Name '$BUILDDIR') (/) ($ VSub_Name '$TARGET'))}
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(cp)} {(DQ ($ VSub_Name '$BUILDDIR') (/) ($ VSub_Name '$TARGET'))} 
                      {(DQ ($ VSub_Name '$TARGET'))}
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(ls)} {(-l)} {(DQ ($ VSub_Name '$TARGET'))})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [9238]
            )
          spids: [9234 9237]
        )
        (command.FuncDef
          name: betry
          body: 
            (command.BraceGroup
              children: [
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(mkdir)} {(-p)} {(bch)} {(be/bardir)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.SimpleCommand
                      words: [{(echo)} {(DQ ("print 'FOO'"))}]
                      redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(be/foo.py)})]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.SimpleCommand
                      words: [{(echo)} {(DQ ("print 'BAR'"))}]
                      redirects: [
                        (redir.Redir
                          op: <Redir_Great '>'>
                          fd: 16777215
                          arg_word: {(be/bardir/bar.py)}
                        )
                      ]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(cp)} {(DQ ($ VSub_Name '$TARGET'))} {(be/sp)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (C {(cp)} {(DQ ($ VSub_Name '$TARGET'))} {(bch/sp)})
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
                (C {(export)} {(Lit_VarLike 'PYTHONPATH=') (bardir)})
                (C {(unset)} {(PYTHONHOME)})
                (command.AndOr
                  ops: [Op_DPipe]
                  children: [
                    (command.Subshell
                      child: (command.AndOr ops:[Op_DAmp] children:[(C {(cd)} {(be)}) (C {(./sp)})])
                      spids: [9492 9500]
                    )
                    (command.ControlFlow
                      token: <ControlFlow_Return return>
                      arg_word: {(DQ ($ VSub_QMark '$?'))}
                    )
                  ]
                )
              ]
              spids: [9383]
            )
          spids: [9379 9382]
        )
        (command.FuncDef
          name: fail_step
          body: 
            (command.BraceGroup
              children: [
                (C {(set)} {(Lit_Other '+') (ex)})
                (C {(echo)} 
                  {
                    (DQ ('Failed in step ') ($ VSub_Number '$2') (' with code ') ($ VSub_Number '$1'))
                  }
                )
                (C {(echo)} 
                  {
                    (DQ ('Fix and retry with: ') ($ VSub_Number '$0') (' ') 
                      (word_part.BracedVarSub
                        token: <VSub_Name TARGET>
                        suffix_op: (suffix_op.StringUnary op_id:VOp1_Percent arg_word:{(-static)})
                        spids: [9542 9546]
                      ) (' ') ($ VSub_Number '$2') (' ') ($ VSub_Number '$3')
                    )
                  }
                )
                (command.ControlFlow
                  token: <ControlFlow_Exit exit>
                  arg_word: {(DQ ($ VSub_Number '$1'))}
                )
              ]
              spids: [9517]
            )
          spids: [9513 9516]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:XSTEPS spids:[9563])
              op: Equal
              rhs: 
                {
                  (DQ 
                    (word_part.CommandSubPart
                      command_list: 
                        (command.CommandList
                          children: [(C {(echo)} {($ VSub_Name '$STEPS')})]
                        )
                      left_token: <Left_CommandSub '$('>
                      spids: [9565 9569]
                    ) (' ')
                  )
                }
              spids: [9563]
            )
          ]
          spids: [9563]
        )
        (command.Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (lhs_expr.LhsName name:XSTEPS0 spids:[9576])
              op: Equal
              rhs: {(DQ ($ VSub_Name '$XSTEPS'))}
              spids: [9576]
            )
          ]
          spids: [9576]
        )
        (command.ForEach
          iter_name: STEP
          iter_words: [{($ VSub_Name '$XSTEPS')}]
          do_arg_iter: F
          body: 
            (command.DoGroup
              children: [
                (C {(echo)} {(DQ ('Running step: ') ($ VSub_Name '$STEP'))})
                (command.Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:XSTEPS spids:[9602])
                      op: Equal
                      rhs: 
                        {
                          (DQ 
                            (word_part.BracedVarSub
                              token: <VSub_Name XSTEPS>
                              suffix_op: (suffix_op.StringUnary op_id:VOp1_Pound arg_word:{('* ')})
                              spids: [9604 9608]
                            )
                          )
                        }
                      spids: [9602]
                    )
                  ]
                  spids: [9602]
                )
                (C {(echo)} {(DQ ('Steps remaining: ') ($ VSub_Name '$XSTEPS'))})
                (C {(set)} {(-x)})
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: (command.Pipeline children:[(C {($ VSub_Name '$STEP')})] negated:T)
                          terminator: <Op_Semi ';'>
                        )
                      ]
                      action: [
                        (C {(set)} {(Lit_Other '+') (x)})
                        (C {(fail_step)} {(DQ ($ VSub_QMark '$?'))} {(DQ ($ VSub_Name '$STEP'))} 
                          {(DQ ($ VSub_Name '$XSTEPS'))}
                        )
                      ]
                      spids: [16777215 9640]
                    )
                  ]
                  spids: [16777215 9664]
                )
                (C {(set)} {(Lit_Other '+') (x)})
              ]
              spids: [9591 9672]
            )
          spids: [9587 9589]
        )
        (C {(echo)} 
          {
            (DQ ('OK running ') ($ VSub_Number '$0') (' ') 
              (word_part.BracedVarSub
                token: <VSub_Name TARGET>
                suffix_op: (suffix_op.StringUnary op_id:VOp1_Percent arg_word:{(-static)})
                spids: [9680 9684]
              ) (' ') ($ VSub_Name '$XSTEPS0')
            )
          }
        )
        (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
      ]
      spids: [16777215 146]
    )
  ]
  spids: [16777215 9695]
)