(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [6]
        )
      ]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-dbi)} spids:[11])]
      spids: [11]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_realname) op:Equal rhs:{(luadbi)} spids:[14])]
      spids: [14]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.5)} spids:[17])]
      spids: [17]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(7)} spids:[20])]
      spids: [20]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("A database interface library for Lua"))}
          spids: [23]
        )
      ]
      spids: [23]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://code.google.com/p/luadbi"))}
          spids: [28]
        )
      ]
      spids: [28]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[33])]
      spids: [33]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (GPL))} spids:[38])]
      spids: [38]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[43])]
      spids: [43]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ ("lua-dev mariadb-dev postgresql-dev sqlite-dev"))}
          spids: [47]
        )
      ]
      spids: [47]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[52])]
      spids: [52]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_subpackages)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$pkgname") ("-mysql ") ($ VSub_Name "$pkgname") ("-postgresql ") 
                ($ VSub_Name "$pkgname") (-sqlite3)
              )
            }
          spids: [56]
        )
      ]
      spids: [56]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/luadbi/luadbi."
                ) ($ VSub_Name "$pkgver") (".tar.gz\n") ("\tlua-dbi-0.5-sync-hg-47382fea7a9c.patch")
              )
            }
          spids: [66]
        )
      ]
      spids: [66]
    )
    (ForEach
      iter_name: _v
      iter_words: [{($ VSub_Name "$_luaversions")}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:makedepends)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$makedepends") (" lua") ($ VSub_Name "$_v") (-dev))}
                  spids: [87]
                )
              ]
              spids: [87]
            )
            (ForEach
              iter_name: subpkg
              iter_words: [{($ VSub_Name "$_subpackages")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:subpackages)
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_Name "$subpackages") (" lua") ($ VSub_Name "$_v") (-) 
                                (BracedVarSub
                                  token: <VSub_Name subpkg>
                                  suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{(lua-)})
                                  spids: [114 118]
                                ) (":_subpackage")
                              )
                            }
                          spids: [108]
                        )
                      ]
                      spids: [108]
                    )
                  ]
                  spids: [105 123]
                )
              spids: [101 103]
            )
          ]
          spids: [84 125]
        )
      spids: [80 82]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir"))}
          spids: [128]
        )
      ]
      spids: [128]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(default_prepare)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[152])]
                  spids: [150]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: lver
              iter_words: [{($ VSub_Name "$_luaversions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (AndOr
                      children: [
                        (C {(cp)} {(-r)} {(DQ ($ VSub_Name "$builddir"))} 
                          {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver"))}
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [164 188]
                )
              spids: [160 162]
            )
          ]
          spids: [138]
        )
      spids: [134 137]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[202])]
                  spids: [200]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: lver
              iter_words: [{($ VSub_Name "$_luaversions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(msg)} {(DQ ("Building for Lua ") ($ VSub_Name "$lver") (...))})
                    (C {(cd)} {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver"))})
                    (SimpleCommand
                      words: [{(echo)} {(Lit_VarLike "LUA_IMPL=") (lua) ($ VSub_Name "$lver")}]
                      redirects: [(Redir op_id:Redir_DGreat fd:-1 arg_word:{(.config)} spids:[241])]
                    )
                    (AndOr
                      children: [
                        (C {(make)} {(Lit_VarLike "LUA_VERSION=") ($ VSub_Name "$lver")})
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [214 258]
                )
              spids: [210 212]
            )
          ]
          spids: [197]
        )
      spids: [193 196]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[267])
      spids: [263 266]
    )
    (FuncDef
      name: _subpackage
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:lver)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Name subpkgname>
                          suffix_op: 
                            (Slice
                              begin: (ArithWord w:{(Lit_Digits 3)})
                              length: (ArithWord w:{(Lit_Digits 3)})
                            )
                          spids: [292 298]
                        )
                      )
                    }
                  spids: [290]
                )
              ]
              spids: [288]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (for Lua ") ($ VSub_Name "$lver") (")"))}
                  spids: [302]
                )
              ]
              spids: [302]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (lua) ($ VSub_Name "$lver"))}
                  spids: [311]
                )
              ]
              spids: [311]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:install_if)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$pkgname") ("=") ($ VSub_Name "$pkgver") (-r) 
                        ($ VSub_Name "$pkgrel") (" lua") ($ VSub_Name "$lver")
                      )
                    }
                  spids: [318]
                )
              ]
              spids: [318]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver"))})
            (AndOr
              children: [
                (C {(install)} {(-D)} {(-m755)} 
                  {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver")) (/DBI.lua)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/lua/) ($ VSub_Name "$lver") (/DBI.lua)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (ForEach
              iter_name: db
              iter_words: [{(sqlite3)} {(postgresql)} {(mysql)}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other "[")} 
                                  {
                                    (DQ 
                                      (BracedVarSub
                                        token: <VSub_Name subpkgname>
                                        suffix_op: 
                                          (StringUnary
                                            op_id: VOp1_Percent
                                            arg_word: {($ VSub_Name "$db")}
                                          )
                                        spids: [389 393]
                                      )
                                    )
                                  } {(KW_Bang "!") (Lit_Other "=")} {(DQ ($ VSub_Name "$subpkgname"))} {(Lit_Other "]")}
                                )
                              terminator: <Op_Semi ";">
                            )
                          ]
                          action: [
                            (C {(install)} {(-D)} {(-m644)} 
                              {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver")) (/dbd) 
                                (${ VSub_Name db) (.so)
                              } {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/lua/) ($ VSub_Name "$lver") (/dbd) (${ VSub_Name db) (.so)}
                            )
                          ]
                          spids: [-1 406]
                        )
                      ]
                      spids: [-1 440]
                    )
                  ]
                  spids: [381 443]
                )
              spids: [373 379]
            )
          ]
          spids: [285]
        )
      spids: [281 284]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ ("ede2b003aadddc151aac87050c3d926e  luadbi.0.5.tar.gz\n") 
                ("a1359b3a96a21a010310b505c667f8aa  lua-dbi-0.5-sync-hg-47382fea7a9c.patch")
              )
            }
          spids: [448]
        )
      ]
      spids: [448]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"49116458dd80052536bf5d7e2b2a1f5a0fa42a671ce77f1cb7355ef7faeb331e  luadbi.0.5.tar.gz\n"
                ) 
                (
"c6cd0587d789fa9af4687dac471e8b05aea63022224b0da482ec9dcfc7998dd2  lua-dbi-0.5-sync-hg-47382fea7a9c.patch"
                )
              )
            }
          spids: [454]
        )
      ]
      spids: [454]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"4ed641e113e90acc8a4f6b3b2d0f5d5044c0fbbef3b2fdfb84d15e17115e45c553a33b19bfb165e5af11a2adce501d66859963e3363d3ab1c6a39b0b2ae92e62  luadbi.0.5.tar.gz\n"
                ) 
                (
"e4f5dc5a75204e7fc1221b4322f1044889a417c6bf7f01bfc7249756a3739931423c66282b560f223f4ea8ef7e1d8311fbe5dfa281d0102a835c436ace7470e4  lua-dbi-0.5-sync-hg-47382fea7a9c.patch"
                )
              )
            }
          spids: [460]
        )
      ]
      spids: [460]
    )
  ]
)