(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [3]
        )
      ]
      spids: [3]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-penlight)} spids:[8])]
      spids: [8]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.5.4)} spids:[11])]
      spids: [11]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[14])]
      spids: [14]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Lua libraries for extended operations on tables, lists and strings"))}
          spids: [17]
        )
      ]
      spids: [17]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://stevedonovan.github.io/Penlight"))}
          spids: [22]
        )
      ]
      spids: [22]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[27])]
      spids: [27]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[32])]
      spids: [32]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[37])]
      spids: [37]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ )} spids:[41])]
      spids: [41]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(SQ )} spids:[45])]
      spids: [45]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$pkgname") ("-doc ") ($ VSub_Name "$pkgname") (-shared))}
          spids: [47]
        )
      ]
      spids: [47]
    )
    (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 lua") 
                        ($ VSub_Name "$_v") (-filesystem)
                      )
                    }
                  spids: [67]
                )
              ]
              spids: [67]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:subpackages)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$subpackages") (" lua") ($ VSub_Name "$_v") ("-penlight:split_") 
                        (BracedVarSub
                          token: <VSub_Name _v>
                          suffix_op: 
                            (PatSub
                              pat: {(.)}
                              replace: {(_)}
                              do_all: False
                              do_prefix: False
                              do_suffix: False
                            )
                          spids: [84 90]
                        )
                      )
                    }
                  spids: [78]
                )
              ]
              spids: [78]
            )
          ]
          spids: [64 93]
        )
      spids: [60 62]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ (penlight-) ($ VSub_Name "$pkgver") 
                (".tar.gz::https://github.com/stevedonovan/Penlight/archive/") ($ VSub_Name "$pkgver") (.tar.gz)
              )
            }
          spids: [96]
        )
      ]
      spids: [96]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir")) (/Penlight-) ($ VSub_Name "$pkgver")}
          spids: [106]
        )
      ]
      spids: [106]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (C {(chmod)} {(-x)} {(lua/pl/) (Lit_Other "*") (.lua)})
          ]
          spids: [118]
        )
      spids: [114 117]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/lua/common/)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/doc/) ($ VSub_Name "$pkgname")}
            )
            (AndOr
              children: [
                (C {(cp)} {(-r)} {(lua/pl)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/lua/common/)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(cp)} {(-r)} {(examples)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/doc/) ($ VSub_Name "$pkgname") (/)}
            )
            (ForEach
              iter_name: i
              iter_words: [{($ VSub_Name "$_luaversions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (AndOr
                      children: [
                        (C {(mkdir)} {(-p)} 
                          {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/lua/) ($ VSub_Name "$i")}
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                    (AndOr
                      children: [
                        (C {(ln)} {(-s)} {(../common/pl)} 
                          {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/lua/) ($ VSub_Name "$i") (/pl)}
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [216 256]
                )
              spids: [212 214]
            )
          ]
          spids: [147]
        )
      spids: [143 146]
    )
    (FuncDef
      name: shared
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("penlight files that are shared for all supported Lua versions"))}
                  spids: [268]
                )
              ]
              spids: [268]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(SQ )} spids:[274])]
              spids: [274]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/lua/)})
            (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/lua/common)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/lua/)}
            )
          ]
          spids: [265]
        )
      spids: [261 264]
    )
    (FuncDef
      name: _split
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_ver)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number "$1"))}
                  spids: [311]
                )
              ]
              spids: [309]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: 
                    {
                      (DQ ("Lua ") ($ VSub_Name "$_ver") 
                        (" libraries for extended operations on tables, lists and strings")
                      )
                    }
                  spids: [317]
                )
              ]
              spids: [317]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ ("lua-penlight-shared lua") ($ VSub_Name "$_ver") (-filesystem))}
                  spids: [325]
                )
              ]
              spids: [325]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:install_if)
                  op: Equal
                  rhs: 
                    {
                      (DQ (lua) ($ VSub_Name "$_ver") (" ") ($ VSub_Name "$pkgname") ("=") 
                        ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel")
                      )
                    }
                  spids: [333]
                )
              ]
              spids: [333]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/lua/)})
            (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/lua/) ($ VSub_Name "$_ver")} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/lua/)}
            )
          ]
          spids: [306]
        )
      spids: [302 305]
    )
    (ForEach
      iter_name: _v
      iter_words: [{($ VSub_Name "$_luaversions")}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (C {(eval)} 
              {
                (DQ (split_) 
                  (BracedVarSub
                    token: <VSub_Name _v>
                    suffix_op: 
                      (PatSub
                        pat: {(.)}
                        replace: {(_)}
                        do_all: False
                        do_prefix: False
                        do_suffix: False
                      )
                    spids: [388 394]
                  ) ("() { _split ") ($ VSub_Name "$_v") ("; }")
                )
              }
            )
          ]
          spids: [381 400]
        )
      spids: [377 379]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"c46e7875410a90390bfbf010a53f1d536475e2094668722618d03951caad0fcb0674c9bc7119a0753e4ed3df9e4d70fef828ba4c6c24e8ada4036948d2432519  penlight-1.5.4.tar.gz"
                )
              )
            }
          spids: [403]
        )
      ]
      spids: [403]
    )
  ]
)