(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-mediator)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_pkgname) op:Equal rhs:{(mediator_lua)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.1.2)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_pkgver)
          op: Equal
          rhs: {($ VSub_Name "$pkgver") (-0)}
          spids: [15]
        )
      ]
      spids: [15]
    )
    (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 ("Mediator pattern implementation for pub-sub management"))}
          spids: [22]
        )
      ]
      spids: [22]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://olivinelabs.com/mediator_lua/"))}
          spids: [27]
        )
      ]
      spids: [27]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[32])]
      spids: [32]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[37])]
      spids: [37]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[42])]
      spids: [42]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$_pkgname") (-) ($ VSub_Name "$pkgver") 
                (".tar.gz::https://github.com/Olivine-Labs/") ($ VSub_Name "$_pkgname") (/archive/v) ($ VSub_Name "$_pkgver") (.tar.gz)
              )
            }
          spids: [46]
        )
      ]
      spids: [46]
    )
    (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: [58]
        )
      ]
      spids: [58]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:options) op:Equal rhs:{(DQ ("!check"))} spids:[73])]
      spids: [73]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [79]
        )
      ]
      spids: [79]
    )
    (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:subpackages)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$subpackages") (" lua") ($ VSub_Name "$_v") (-) 
                        (BracedVarSub
                          token: <VSub_Name pkgname>
                          suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{(lua-)})
                          spids: [102 106]
                        ) (":_subpackage")
                      )
                    }
                  spids: [96]
                )
              ]
              spids: [96]
            )
          ]
          spids: [93 110]
        )
      spids: [89 91]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[117])
      spids: [113 116]
    )
    (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: [142 148]
                        )
                      )
                    }
                  spids: [140]
                )
              ]
              spids: [138]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (for Lua ") ($ VSub_Name "$lver") (")"))}
                  spids: [152]
                )
              ]
              spids: [152]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (lua) ($ VSub_Name "$lver"))}
                  spids: [161]
                )
              ]
              spids: [161]
            )
            (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: [168]
                )
              ]
              spids: [168]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:rockdir)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$subpkgdir") (/usr/lib/luarocks/rocks-) ($ VSub_Name "$lver") 
                        (/) ($ VSub_Name "$_pkgname") (/) ($ VSub_Name "$_pkgver")
                      )
                    }
                  spids: [182]
                )
              ]
              spids: [180]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(install)} {(-m)} {(644)} {(-D)} {(src/mediator.lua)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/lua/) ($ VSub_Name "$lver") (/mediator.lua)}
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$rockdir"))})
            (SimpleCommand
              words: [{(echo)} {(SQ <"rock_manifest = {}">)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: -1
                  arg_word: {(DQ ($ VSub_Name "$rockdir")) (/rock_manifest)}
                  spids: [238]
                )
              ]
            )
          ]
          spids: [135]
        )
      spids: [131 134]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"116d08a96fa0bd540ac4d3cac61a529a634cba3621c6f2e917b405462bbc0e2ab5b170dc6819e470105cdedf958a382945819eaff4affa63bc057824c163c8a0  mediator_lua-1.1.2.tar.gz"
                )
              )
            }
          spids: [248]
        )
      ]
      spids: [248]
    )
  ]
)