(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ('5.3 5.2 5.1'))}
          spids: [3]
        )
      ]
      spids: [3]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_defaultlua) op:Equal rhs:{(DQ (5.3))} spids:[8])]
      spids: [8]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(haserl)} spids:[13])]
      spids: [13]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.9.35)} spids:[16])]
      spids: [16]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[19])]
      spids: [19]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ('Html And Shell Embedded Report Language'))}
          spids: [22]
        )
      ]
      spids: [22]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ('http://haserl.sourceforge.net/'))}
          spids: [27]
        )
      ]
      spids: [27]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[32])]
      spids: [32]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (GPL2))} spids:[37])]
      spids: [37]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[42])]
      spids: [42]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ ('automake autoconf'))}
          spids: [46]
        )
      ]
      spids: [46]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: {(DQ ($ VSub_Name '$pkgname') (-doc))}
          spids: [51]
        )
      ]
      spids: [51]
    )
    (ForEach
      iter_name: _i
      iter_words: [{($ VSub_Name '$_luaversions')}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$depends') (' haserl-lua') ($ VSub_Name '$_i'))}
                  spids: [69]
                )
              ]
              spids: [69]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:makedepends)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$makedepends') (' lua') ($ VSub_Name '$_i') (-dev))}
                  spids: [77]
                )
              ]
              spids: [77]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:subpackages)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name '$subpackages') (' haserl-lua') ($ VSub_Name '$_i') (':split_') 
                        (BracedVarSub
                          token: <VSub_Name _i>
                          suffix_op: 
                            (PatSub
                              pat: {(.)}
                              replace: {(_)}
                              do_all: False
                              do_prefix: False
                              do_suffix: False
                            )
                          spids: [92 98]
                        )
                      )
                    }
                  spids: [86]
                )
              ]
              spids: [86]
            )
          ]
          spids: [66 101]
        )
      spids: [62 64]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:options) op:Equal rhs:{(DQ (suid))} spids:[103])]
      spids: [103]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ('http://downloads.sourceforge.net/') ($ VSub_Name '$pkgname') (/) 
                ($ VSub_Name '$pkgname') (-) ($ VSub_Name '$pkgver') (.tar.gz)
              )
            }
          spids: [108]
        )
      ]
      spids: [108]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_sdir)
          op: Equal
          rhs: {(DQ ($ VSub_Name '$srcdir')) (/) ($ VSub_Name '$pkgname') (-) ($ VSub_Name '$pkgver')}
          spids: [120]
        )
      ]
      spids: [120]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name '$_sdir'))})
            (ForEach
              iter_name: i
              iter_words: [{($ VSub_Name '$source')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name '$i')}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other '*') (.patch)}]
                          action: [
                            (Sentence
                              child: (C {(msg)} {($ VSub_Name '$i')})
                              terminator: <Op_Semi ';'>
                            )
                            (AndOr
                              children: [
                                (C {(patch)} {(-p1)} {(-i)} 
                                  {(DQ ($ VSub_Name '$srcdir')) (/) ($ VSub_Name '$i')}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [162 164 188 16777215]
                        )
                      ]
                      spids: [155 159 191]
                    )
                  ]
                  spids: [152 194]
                )
              spids: [148 150]
            )
            (AndOr
              children: [
                (C {(sed)} {(-i)} {(-e)} {(SQ <'s/^        /\\t/'>)} {(src/Makefile.am)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(rm)} {(-f)} {(src/haserl_lualib.inc)})
            (AndOr
              children: [
                (C {(aclocal)})
                (AndOr
                  children: [
                    (C {(autoconf)})
                    (AndOr
                      children: [
                        (C {(autoheader)})
                        (AndOr
                          children: [
                            (C {(automake)} {(--add-missing)})
                            (ControlFlow
                              token: <ControlFlow_Return return>
                              arg_word: {(1)}
                            )
                          ]
                          op_id: Op_DPipe
                        )
                      ]
                      op_id: Op_DAmp
                    )
                  ]
                  op_id: Op_DAmp
                )
              ]
              op_id: Op_DAmp
            )
            (ForEach
              iter_name: _i
              iter_words: [{($ VSub_Name '$_luaversions')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(cp)} {(-r)} {(DQ ($ VSub_Name '$_sdir'))} 
                      {(DQ ($ VSub_Name '$srcdir')) (/build-) ($ VSub_Name '$_i')}
                    )
                  ]
                  spids: [257 275]
                )
              spids: [253 255]
            )
          ]
          spids: [133]
        )
      spids: [129 132]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (ForEach
              iter_name: _i
              iter_words: [{($ VSub_Name '$_luaversions')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(cd)} {(DQ ($ VSub_Name '$srcdir')) (/build-) ($ VSub_Name '$_i')})
                    (AndOr
                      children: [
                        (C {(./configure)} {(--build) (Lit_Other '=') ($ VSub_Name '$CBUILD')} 
                          {(--host) (Lit_Other '=') ($ VSub_Name '$CHOST')} {(--prefix) (Lit_Other '=') (/usr)} {(--with-lua) (Lit_Other '=') (lua) ($ VSub_Name '$_i')}
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                    (AndOr
                      children: [
                        (C {(make)})
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [296 353]
                )
              spids: [292 294]
            )
          ]
          spids: [284]
        )
      spids: [280 283]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (ForEach
              iter_name: _i
              iter_words: [{($ VSub_Name '$_luaversions')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(cd)} {(DQ ($ VSub_Name '$srcdir')) (/build-) ($ VSub_Name '$_i')})
                    (AndOr
                      children: [
                        (C {(make)} {(Lit_VarLike 'DESTDIR=') (DQ ($ VSub_Name '$pkgdir') (/))} 
                          {(install)}
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                    (C {(chmod)} {(4111)} {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/haserl)})
                    (C {(mv)} {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/haserl)} 
                      {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/haserl-lua) ($ VSub_Name '$_i')}
                    )
                  ]
                  spids: [374 427]
                )
              spids: [370 372]
            )
            (C {(ln)} {(-s)} {(haserl-lua) ($ VSub_Name '$_defaultlua')} 
              {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/haserl)}
            )
          ]
          spids: [362]
        )
      spids: [358 361]
    )
    (FuncDef
      name: _split
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair lhs:(LhsName name:d) op:Equal rhs:{(SQ )} spids:[454])
                (assign_pair
                  lhs: (LhsName name:_ver)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [456]
                )
              ]
              spids: [452]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: 
                    {
                      (DQ ('Html And Shell Embedded Report Language with Lua ') ($ VSub_Name '$_ver') 
                        (' support')
                      )
                    }
                  spids: [460]
                )
              ]
              spids: [460]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:replaces)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$pkgname'))}
                  spids: [468]
                )
              ]
              spids: [468]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(SQ )} spids:[474])]
              spids: [474]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-f)} 
                          {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/haserl-lua) ($ VSub_Name '$_ver')} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name '$subpkgdir')) (/usr/bin)})
                    (AndOr
                      children: [
                        (C {(mv)} 
                          {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/haserl-lua) ($ VSub_Name '$_ver')} {(DQ ($ VSub_Name '$subpkgdir')) (/usr/bin/)}
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [16777215 492]
                )
              ]
              spids: [16777215 525]
            )
          ]
          spids: [449]
        )
      spids: [445 448]
    )
    (ForEach
      iter_name: _i
      iter_words: [{($ VSub_Name '$_luaversions')}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (C {(eval)} 
              {
                (DQ (split_) 
                  (BracedVarSub
                    token: <VSub_Name _i>
                    suffix_op: 
                      (PatSub
                        pat: {(.)}
                        replace: {(_)}
                        do_all: False
                        do_prefix: False
                        do_suffix: False
                      )
                    spids: [546 552]
                  ) ('() { _split ') ($ VSub_Name '$_i') ('; }')
                )
              }
            )
          ]
          spids: [539 558]
        )
      spids: [535 537]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: {(DQ ('918f0b4f6cec0b438c8b5c78f2989010  haserl-0.9.35.tar.gz'))}
          spids: [561]
        )
      ]
      spids: [561]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'a1b633e80f3e2638e7f8f850786e95072cfd9877f88780092996fd6aaf7ae2da  haserl-0.9.35.tar.gz'
                )
              )
            }
          spids: [566]
        )
      ]
      spids: [566]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'f0f2fc46540223b4b5369fe13b3020bed5e0578b7ca1ed1688f01678ba5302c876540c0d58dde427f9180915fa38cfffd01f1a4cbbc0fce851789056b3665ab0  haserl-0.9.35.tar.gz'
                )
              )
            }
          spids: [571]
        )
      ]
      spids: [571]
    )
  ]
)