(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-copas)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_pkgname) op:Equal rhs:{(copas)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(2.0.2)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_pkgver)
          op: Equal
          rhs: 
            {
              (BracedVarSub
                token: <VSub_Name pkgver>
                suffix_op: 
                  (PatSub
                    pat: {(.)}
                    replace: {(_)}
                    do_all: True
                    do_prefix: False
                    do_suffix: False
                  )
                spids: [16 23]
              )
            }
          spids: [15]
        )
      ]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[25])]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Coroutine Oriented Portable Asynchronous Services for Lua"))}
          spids: [28]
        )
      ]
      spids: [28]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://keplerproject.github.io/copas/"))}
          spids: [33]
        )
      ]
      spids: [33]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[38])]
      spids: [38]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[43])]
      spids: [43]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ (lua-socket))} spids:[48])]
      spids: [48]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:checkdepends)
          op: Equal
          rhs: {(DQ ("lua5.1-coxpcall lua-sec"))}
          spids: [53]
        )
      ]
      spids: [53]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[58])]
      spids: [58]
    )
    (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/keplerproject/") ($ VSub_Name "$_pkgname") (/archive/v) ($ VSub_Name "$_pkgver") (".tar.gz\n") ("\tipv4-only.patch")
              )
            }
          spids: [62]
        )
      ]
      spids: [62]
    )
    (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: [75]
        )
      ]
      spids: [75]
    )
    (Case
      to_match: {(DQ ($ VSub_Name "$CARCH"))}
      arms: [
        (case_arm
          pat_list: [{(s390x)} {(ppc64le)}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:_luajit) op:Equal rhs:{(DQ )} spids:[107])]
              spids: [107]
            )
          ]
          spids: [100 105 110 -1]
        )
        (case_arm
          pat_list: [{(Lit_Other "*")}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:checkdepends)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$checkdepends") (" luajit"))}
                  spids: [116]
                )
                (assign_pair
                  lhs: (LhsName name:_luajit)
                  op: Equal
                  rhs: {(DQ (jit))}
                  spids: [122]
                )
              ]
              spids: [116]
            )
          ]
          spids: [113 114 126 -1]
        )
      ]
      spids: [91 97 128]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [131]
        )
      ]
      spids: [131]
    )
    (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") (-) 
                        ($ VSub_Name "$_pkgname") (":_subpackage")
                      )
                    }
                  spids: [148]
                )
              ]
              spids: [148]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:checkdepends)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$checkdepends") (" lua") ($ VSub_Name "$_v"))}
                  spids: [159]
                )
              ]
              spids: [159]
            )
          ]
          spids: [145 166]
        )
      spids: [141 143]
    )
    (FuncDef
      name: check
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[186])]
                  spids: [184]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: lver
              iter_words: [{($ VSub_Name "$_luaversions")} {($ VSub_Name "$_luajit")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(msg)} {(DQ ("Testing on lua") ($ VSub_Name "$lver"))})
                    (C {(make)} {(test)} {(Lit_VarLike "LUA=") (lua) ($ VSub_Name "$lver")})
                  ]
                  spids: [200 220]
                )
              spids: [194 198]
            )
          ]
          spids: [173]
        )
      spids: [169 172]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[229])
      spids: [225 228]
    )
    (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: [254 260]
                        )
                      )
                    }
                  spids: [252]
                )
              ]
              spids: [250]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" ") ($ VSub_Name "$lver"))}
                  spids: [264]
                )
              ]
              spids: [264]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: 
                    {
                      (DQ (lua) ($ VSub_Name "$lver") (" ") 
                        (BracedVarSub
                          token: <VSub_Name depends>
                          suffix_op: 
                            (PatSub
                              pat: {(lua-)}
                              replace: {(lua) ($ VSub_Name "$lver") (-)}
                              do_all: True
                              do_prefix: False
                              do_suffix: False
                            )
                          spids: [277 286]
                        )
                      )
                    }
                  spids: [272]
                )
              ]
              spids: [272]
            )
            (AndOr
              children: [
                (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$lver"))} {(Lit_Other "=")} {(5.1)} 
                  {(Lit_Other "]")}
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:depends)
                      op: Equal
                      rhs: {(DQ ($ VSub_Name "$depends") (" lua5.1-coxpcall"))}
                      spids: [304]
                    )
                  ]
                  spids: [304]
                )
              ]
              op_id: Op_DAmp
            )
            (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: [311]
                )
              ]
              spids: [311]
            )
            (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") (-1)
                      )
                    }
                  spids: [326]
                )
              ]
              spids: [324]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(make)} 
              {(Lit_VarLike "LUA_DIR=") 
                (DQ ($ VSub_Name "$subpkgdir") (/usr/share/lua/) ($ VSub_Name "$lver"))
              } {(install)}
            )
            (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: [375]
                )
              ]
            )
          ]
          spids: [247]
        )
      spids: [243 246]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"dd83a513fbddb2f0164c3573b417623f5cc556413c4937be7e362f4c1667bad83391143e1bf609480726730ce488c4080e810f2ce12a98a7abb5293993c10182  lua-copas-2.0.2.tar.gz\n"
                ) 
                (
"4fb2b65f41869b9729cc4672eebbfb2745a2d01af1cd54341b8306f57510f98e118eac77c77a980f4c8e8b181b6fda150061dc39819269e9ee64bf07656dfd54  ipv4-only.patch"
                )
              )
            }
          spids: [385]
        )
      ]
      spids: [385]
    )
  ]
)