(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [6]
        )
      ]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-socket)} spids:[11])]
      spids: [11]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_name) op:Equal rhs:{(luasocket)} spids:[14])]
      spids: [14]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(3.0_rc1_git20160306)} spids:[17])]
      spids: [17]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(2)} spids:[20])]
      spids: [20]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_ver)
          op: Equal
          rhs: 
            {
              (BracedVarSub
                token: <VSub_Name pkgver>
                suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{("_git*")})
                spids: [24 28]
              )
            }
          spids: [23]
        )
      ]
      spids: [23]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_ver)
          op: Equal
          rhs: 
            {
              (BracedVarSub
                token: <VSub_Name _ver>
                suffix_op: 
                  (PatSub
                    pat: {(_rc)}
                    replace: {(-rc)}
                    do_all: False
                    do_prefix: False
                    do_suffix: False
                  )
                spids: [31 37]
              )
            }
          spids: [30]
        )
      ]
      spids: [30]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Networking library for Lua"))}
          spids: [39]
        )
      ]
      spids: [39]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://luaforge.net/projects/luasocket/"))}
          spids: [44]
        )
      ]
      spids: [44]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[49])]
      spids: [49]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[54])]
      spids: [54]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[59])]
      spids: [59]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[63])]
      spids: [63]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:makedepends) op:Equal rhs:{(DQ )} spids:[67])]
      spids: [67]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[71])]
      spids: [71]
    )
    (ForEach
      iter_name: _i
      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 "$_i") (-dev))}
                  spids: [87]
                )
              ]
              spids: [87]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:subpackages)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$subpackages") (" lua") ($ VSub_Name "$_i") ("-socket:split_") 
                        (BracedVarSub
                          token: <VSub_Name _i>
                          suffix_op: 
                            (PatSub
                              pat: {(.)}
                              replace: {(_)}
                              do_all: False
                              do_prefix: False
                              do_suffix: False
                            )
                          spids: [102 108]
                        )
                      )
                    }
                  spids: [96]
                )
              ]
              spids: [96]
            )
          ]
          spids: [84 111]
        )
      spids: [80 82]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ (luasocket-) ($ VSub_Name "$_ver") 
                (".tar.gz::https://github.com/diegonehab/luasocket/archive/v") ($ VSub_Name "$_ver") (".tar.gz\n") ("\tgit.patch\n") ("\tlua-cflags.patch\n") 
                ("\t0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch\n") ("\t")
              )
            }
          spids: [113]
        )
      ]
      spids: [113]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir") (/) ($ VSub_Name "$_name") (-) ($ VSub_Name "$_ver"))}
          spids: [130]
        )
      ]
      spids: [130]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(default_prepare)})
            (ForEach
              iter_name: _i
              iter_words: [{($ VSub_Name "$_luaversions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(cp)} {(-r)} {(DQ ($ VSub_Name "$builddir"))} 
                      {(DQ ($ VSub_Name "$srcdir")) (/build-) ($ VSub_Name "$_i")}
                    )
                  ]
                  spids: [159 177]
                )
              spids: [155 157]
            )
          ]
          spids: [144]
        )
      spids: [140 143]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (ForEach
              iter_name: _i
              iter_words: [{($ VSub_Name "$_luaversions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (AndOr
                      children: [
                        (C {(make)} {(-C)} 
                          {(DQ ($ VSub_Name "$srcdir")) (/build-) ($ VSub_Name "$_i") (/src)} {(Lit_VarLike "LUAV=") ($ VSub_Name "$_i")} {(all-unix)}
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [198 226]
                )
              spids: [194 196]
            )
          ]
          spids: [186]
        )
      spids: [182 185]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (ForEach
              iter_name: _i
              iter_words: [{($ VSub_Name "$_luaversions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(cd)} {(DQ ($ VSub_Name "$srcdir")) (/build-) ($ VSub_Name "$_i")})
                    (AndOr
                      children: [
                        (C {(make)} {(Lit_VarLike "prefix=") (/usr)} 
                          {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(Lit_VarLike "LUAV=") ($ VSub_Name "$_i")} {(install-unix)}
                        )
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [247 283]
                )
              spids: [243 245]
            )
          ]
          spids: [235]
        )
      spids: [231 234]
    )
    (FuncDef
      name: _split
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair lhs:(LhsName name:d) op:Equal rhs:{(SQ )} spids:[297])
                (assign_pair
                  lhs: (LhsName name:_ver)
                  op: Equal
                  rhs: {($ VSub_Number "$1")}
                  spids: [299]
                )
              ]
              spids: [295]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("Networking library for Lua ") ($ VSub_Name "$_ver"))}
                  spids: [303]
                )
              ]
              spids: [303]
            )
            (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: [310]
                )
              ]
              spids: [310]
            )
            (ForEach
              iter_name: d
              iter_words: [{(usr/lib/lua)} {(usr/share/lua)}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other "[")} {(-d)} 
                                  {(DQ ($ VSub_Name "$pkgdir")) (/) ($ VSub_Name "$d") (/) 
                                    ($ VSub_Name "$_ver")
                                  } {(Lit_Other "]")}
                                )
                              terminator: <Op_Semi ";">
                            )
                          ]
                          action: [
                            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/) ($ VSub_Name "$d")})
                            (AndOr
                              children: [
                                (C {(mv)} 
                                  {(DQ ($ VSub_Name "$pkgdir")) (/) ($ VSub_Name "$d") (/) 
                                    ($ VSub_Name "$_ver")
                                  } {(DQ ($ VSub_Name "$subpkgdir")) (/) ($ VSub_Name "$d") (/)}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [-1 354]
                        )
                      ]
                      spids: [-1 392]
                    )
                  ]
                  spids: [334 395]
                )
              spids: [328 332]
            )
          ]
          spids: [292]
        )
      spids: [288 291]
    )
    (ForEach
      iter_name: _i
      iter_words: [{($ VSub_Name "$_luaversions")}]
      do_arg_iter: False
      body: 
        (DoGroup
          children: [
            (C {(eval)} 
              {
                (DQ (split_) 
                  (BracedVarSub
                    token: <VSub_Name _i>
                    suffix_op: 
                      (PatSub
                        pat: {(.)}
                        replace: {(_)}
                        do_all: False
                        do_prefix: False
                        do_suffix: False
                      )
                    spids: [416 422]
                  ) ("() { _split ") ($ VSub_Name "$_i") ("; }")
                )
              }
            )
          ]
          spids: [409 428]
        )
      spids: [405 407]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ ("08bd2f265b244eb4bf5c2c36bf89b759  luasocket-3.0-rc1.tar.gz\n") 
                ("44c07dc3dd311541a50b21aaa40e36d7  git.patch\n") ("d4319e4a20d476ea8d77a3421fca1808  lua-cflags.patch\n") 
                (
"f91f7da1120e0c9f24d7df1fa31f2576  0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch"
                )
              )
            }
          spids: [431]
        )
      ]
      spids: [431]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"8b67d9b5b545e1b694753dab7bd6cdbc24c290f2b21ba1e14c77b32817ea1249  luasocket-3.0-rc1.tar.gz\n"
                ) ("414cfe53e4455fc2b416779d5eaa3ade6d97c01fa62dbffb6c9d4d4ad84bdd76  git.patch\n") 
                (
"77d77fe688b27ae51bcf9d3ae51d43141ab85d95fd322b3904b55dbc76900418  lua-cflags.patch\n"
                ) 
                (
"f8ef57a31c95076438f22eccfbbae16e8767033269fd748dce0d0f919c8d660b  0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch"
                )
              )
            }
          spids: [439]
        )
      ]
      spids: [439]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"f6efce259aaacaa11472911471f8a13b118fe009b8953a82c6aa18b9ec829cd1293180904e56935cb130d36d267e3f27c91db2d78e03f7488f3e100571ed0540  luasocket-3.0-rc1.tar.gz\n"
                ) 
                (
"45c80e488fedc879f0217bc8a654d80da003039f5d1ff21b0dea0eb769151787dbe793e44a3dfd72cb07ff2697eceaf4fc7b55b4634cd170fa71281f19f025a5  git.patch\n"
                ) 
                (
"fb482ad22b5caa2054b25c86edc01d1a666035930f6b55e7d12704dd78b9c31343c39eab5f13958941180d819aa37470c75fe27f1b206a4b431fb589663e2685  lua-cflags.patch\n"
                ) 
                (
"c45a12e17771a1b3b71154b5415421f524cd10b7969b4649a5f37b652cdc826721e117edb8fe64758d3520e59946e2f755b814f72cbb39ff42bf59bbcf9a64e9  0001-Create-socket-on-first-sendto-if-family-agnostic-udp.patch"
                )
              )
            }
          spids: [447]
        )
      ]
      spids: [447]
    )
  ]
)