(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-say)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_rockname) op:Equal rhs:{(say)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.3)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_pkgver)
          op: Equal
          rhs: {($ VSub_Name "$pkgver") (-1)}
          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 ("Lua string hashing library, useful for internationalization"))}
          spids: [22]
        )
      ]
      spids: [22]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("https://github.com/Olivine-Labs/say"))}
          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/say/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") (/) 
                (BracedVarSub
                  token: <VSub_Name pkgname>
                  suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{(lua-)})
                  spids: [60 64]
                ) (-) ($ VSub_Name "$_pkgver")
              )
            }
          spids: [56]
        )
      ]
      spids: [56]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:options) op:Equal rhs:{(DQ ("!check"))} spids:[75])]
      spids: [75]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [81]
        )
      ]
      spids: [81]
    )
    (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: [104 108]
                        ) (":_subpackage")
                      )
                    }
                  spids: [98]
                )
              ]
              spids: [98]
            )
          ]
          spids: [95 112]
        )
      spids: [91 93]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[119])
      spids: [115 118]
    )
    (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: [144 150]
                        )
                      )
                    }
                  spids: [142]
                )
              ]
              spids: [140]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (for Lua ") ($ VSub_Name "$lver") (")"))}
                  spids: [154]
                )
              ]
              spids: [154]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (lua) ($ VSub_Name "$lver"))}
                  spids: [163]
                )
              ]
              spids: [163]
            )
            (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: [170]
                )
              ]
              spids: [170]
            )
            (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 "$_rockname") (/) ($ VSub_Name "$_pkgver")
                      )
                    }
                  spids: [184]
                )
              ]
              spids: [182]
            )
            (C {(install)} {(-m)} {(644)} {(-D)} {(DQ ($ VSub_Name "$builddir")) (/src/init.lua)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/lua/) ($ VSub_Name "$lver") (/say.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: [236]
                )
              ]
            )
          ]
          spids: [137]
        )
      spids: [133 136]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"8d4a360bf0731c2a70c23edb9e6e81cab1e7d9b861aa35103a5c6e521633410860d76c46dc2ea62a06ac8ab3b522bc71c11143d6fe7e26e7fa24dd3f5ea1e5f6  lua-say-1.3.tar.gz"
                )
              )
            }
          spids: [246]
        )
      ]
      spids: [246]
    )
  ]
)