(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(luarocks)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(2.4.3)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Deployment and management system for Lua modules"))}
          spids: [15]
        )
      ]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://www.luarocks.org/"))}
          spids: [20]
        )
      ]
      spids: [20]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[25])]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[30])]
      spids: [30]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ (curl))} spids:[35])]
      spids: [35]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ )} spids:[40])]
      spids: [40]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[44])]
      spids: [44]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:triggers) op:Equal rhs:{(DQ )} spids:[48])]
      spids: [48]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ("http://luarocks.org/releases/") ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver") 
                (".tar.gz\n") ("\tconfig.lua")
              )
            }
          spids: [52]
        )
      ]
      spids: [52]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir") (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver"))}
          spids: [62]
        )
      ]
      spids: [62]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_lua_versions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [72]
        )
      ]
      spids: [72]
    )
    (ForEach
      iter_name: _v
      iter_words: [{($ VSub_Name "$_lua_versions")}]
      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: [89]
                )
              ]
              spids: [89]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:subpackages)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$subpackages") (" ") ($ VSub_Name "$pkgname") (${ VSub_Name _v) 
                        (":_subpackage")
                      )
                    }
                  spids: [98]
                )
              ]
              spids: [98]
            )
          ]
          spids: [86 109]
        )
      spids: [82 84]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(default_prepare)})
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[129])]
                  spids: [127]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: lver
              iter_words: [{($ VSub_Name "$_lua_versions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(cp)} {(-r)} {(DQ ($ VSub_Name "$builddir"))} 
                      {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver"))}
                    )
                  ]
                  spids: [141 159]
                )
              spids: [137 139]
            )
          ]
          spids: [116]
        )
      spids: [112 115]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[173])]
                  spids: [171]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: lver
              iter_words: [{($ VSub_Name "$_lua_versions")}]
              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"))})
                    (C {(./configure)} {(--prefix) (Lit_Other "=") (/usr)} 
                      {(--sysconfdir) (Lit_Other "=") (/etc/luarocks)} {(--rocks-tree) (Lit_Other "=") (/usr/local)} 
                      {(--lua-version) (Lit_Other "=") (DQ ($ VSub_Name "$lver"))} {(--lua-suffix) (Lit_Other "=") (DQ ($ VSub_Name "$lver"))} 
                      {(--with-lua-include) (Lit_Other "=") 
                        (DQ 
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (C {(pkg-config)} {(--variable) (Lit_Other "=") (includedir)} 
                                    {(lua) ($ VSub_Name "$lver")}
                                  )
                                ]
                              )
                            left_token: <Left_CommandSub "$(">
                            spids: [248 257]
                          )
                        )
                      } 
                      {(--with-lua-lib) (Lit_Other "=") 
                        (DQ 
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (C {(pkg-config)} {(--variable) (Lit_Other "=") (libdir)} 
                                    {(lua) ($ VSub_Name "$lver")}
                                  )
                                ]
                              )
                            left_token: <Left_CommandSub "$(">
                            spids: [265 274]
                          )
                        )
                      } {(--with-downloader) (Lit_Other "=") (curl)} {(--with-md5-checker) (Lit_Other "=") (md5sum)} 
                      {(--versioned-rocks-dir)}
                    )
                    (C {(make)})
                  ]
                  spids: [185 297]
                )
              spids: [181 183]
            )
          ]
          spids: [168]
        )
      spids: [164 167]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[306])
      spids: [302 305]
    )
    (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: (StringUnary op_id:VOp1_Pound arg_word:{($ VSub_Name "$pkgname")})
                          spids: [331 335]
                        )
                      )
                    }
                  spids: [329]
                )
              ]
              spids: [327]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: 
                    {
                      (DQ ("Deployment and management system for Lua ") ($ VSub_Name "$lver") 
                        (" modules")
                      )
                    }
                  spids: [339]
                )
              ]
              spids: [339]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:install_if)
                  op: Equal
                  rhs: 
                    {
                      (DQ (lua) ($ VSub_Name "$lver") (" ") ($ VSub_Name "$pkgname") ("=") 
                        ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel")
                      )
                    }
                  spids: [347]
                )
              ]
              spids: [347]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (lua) ($ VSub_Name "$lver"))}
                  spids: [360]
                )
              ]
              spids: [360]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:triggers)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$subpkgname") (".trigger=/usr/lib/luarocks/rocks-") 
                        ($ VSub_Name "$lver") ("/*")
                      )
                    }
                  spids: [367]
                )
              ]
              spids: [367]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir") (-) ($ VSub_Name "$lver"))})
            (C {(make)} {(install)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))})
            (C {(rm)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/luarocks)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/luarocks-admin)}
            )
            (C {(sed)} {(-i)} {(DQ ("s/env lua/env lua") (${ VSub_Name lver) (/))} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/luarocks-) ($ VSub_Name "$lver")} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/luarocks-admin-) ($ VSub_Name "$lver")}
            )
            (C {(install)} {(-D)} {(-m)} {(644)} {(DQ ($ VSub_Name "$srcdir")) (/config.lua)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/etc/) ($ VSub_Name "$pkgname") (/config-) 
                ($ VSub_Name "$lver") (.lua)
              }
            )
          ]
          spids: [324]
        )
      spids: [320 323]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"a4efe19e650772594db107218422333d462a843561f37787744244d359bb6337dfbcfd143f5f7c407725409f54754f3bf7552423cbb31c4633d9960af1d2f9bf  luarocks-2.4.3.tar.gz\n"
                ) 
                (
"c41bf3f8491e25d69ce0fee379203cc3721f2c79bb9ff652488aa2d66bc1e4613bd59d331cf17b9f18521d4f63539ce946b6a39038dc844083463c2c96f71811  config.lua"
                )
              )
            }
          spids: [485]
        )
      ]
      spids: [485]
    )
  ]
)