(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 -1]
                        )
                      ]
                      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: [-1 492]
                )
              ]
              spids: [-1 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]
    )
  ]
)