(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [4]
        )
      ]
      spids: [4]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-hiredis)} spids:[10])]
      spids: [10]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.2.1)} spids:[13])]
      spids: [13]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(2)} spids:[16])]
      spids: [16]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Binding to hiredis for Lua"))}
          spids: [19]
        )
      ]
      spids: [19]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("https://github.com/agladysh/lua-hiredis"))}
          spids: [24]
        )
      ]
      spids: [24]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[29])]
      spids: [29]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[34])]
      spids: [34]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ (hiredis))} spids:[39])]
      spids: [39]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends_dev) op:Equal rhs:{(DQ )} spids:[44])]
      spids: [44]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$depends_dev") (" hiredis-dev"))}
          spids: [48]
        )
      ]
      spids: [48]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[54])]
      spids: [54]
    )
    (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))}
                  spids: [71]
                )
              ]
              spids: [71]
            )
            (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: [86 90]
                        ) (":split_") 
                        (BracedVarSub
                          token: <VSub_Name _v>
                          suffix_op: 
                            (PatSub
                              pat: {(.)}
                              replace: {(_)}
                              do_all: False
                              do_prefix: False
                              do_suffix: False
                            )
                          spids: [92 98]
                        )
                      )
                    }
                  spids: [80]
                )
              ]
              spids: [80]
            )
            (C {(eval)} 
              {
                (DQ (split_) 
                  (BracedVarSub
                    token: <VSub_Name _v>
                    suffix_op: 
                      (PatSub
                        pat: {(.)}
                        replace: {(_)}
                        do_all: False
                        do_prefix: False
                        do_suffix: False
                      )
                    spids: [106 112]
                  ) ("() { _split ") ($ VSub_Name "$_v") ("; }")
                )
              }
            )
          ]
          spids: [68 118]
        )
      spids: [64 66]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[121])]
      spids: [121]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ (lua-hiredis-) ($ VSub_Name "$pkgver") 
                (".tar.gz::https://github.com/agladysh/lua-hiredis/archive/v") ($ VSub_Name "$pkgver") (".tar.gz\n") ("\t0002-lua-hiredis-master.patch\n") 
                ("\t0003-lua-5-2-compatibility.patch\n") ("\t0004-lua-5-3-compatibility.patch")
              )
            }
          spids: [125]
        )
      ]
      spids: [125]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir")) (/lua-hiredis-) ($ VSub_Name "$pkgver")}
          spids: [137]
        )
      ]
      spids: [137]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:i) op:Equal spids:[153])]
              spids: [151]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (ForEach
              iter_name: i
              iter_words: [{($ VSub_Name "$source")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name "$i")}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other "*") (.patch)}]
                          action: [
                            (Sentence
                              child: (C {(msg)} {($ VSub_Name "$i")})
                              terminator: <Op_Semi ";">
                            )
                            (AndOr
                              children: [
                                (C {(patch)} {(-p1)} {(-i)} 
                                  {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$i")}
                                )
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [182 184 208 -1]
                        )
                      ]
                      spids: [175 179 211]
                    )
                  ]
                  spids: [172 214]
                )
              spids: [168 170]
            )
            (ForEach
              iter_name: _v
              iter_words: [{($ VSub_Name "$_luaversions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(cp)} {(-r)} {($ VSub_Name "$_builddir")} 
                      {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$pkgname") (-) 
                        ($ VSub_Name "$_v")
                      }
                    )
                  ]
                  spids: [226 244]
                )
              spids: [222 224]
            )
          ]
          spids: [148]
        )
      spids: [144 147]
    )
    (FuncDef
      name: build
      body: (BraceGroup children:[(C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})] spids:[253])
      spids: [249 252]
    )
    (FuncDef
      name: check
      body: 
        (BraceGroup
          children: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})]
          spids: [269]
        )
      spids: [265 268]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[287])
      spids: [283 286]
    )
    (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: [310]
                )
              ]
              spids: [308]
            )
            (AndOr
              children: [
                (C {(cd)} 
                  {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$_ver")}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (Lua ") ($ VSub_Name "$_ver") (")"))}
                  spids: [333]
                )
              ]
              spids: [333]
            )
            (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: [342]
                )
              ]
              spids: [342]
            )
            (AndOr
              children: [
                (C 
                  {
                    (BracedVarSub
                      token: <VSub_Name CC>
                      suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(gcc)})
                      spids: [355 359]
                    )
                  } {(src/lua-hiredis.c)} {(${ VSub_Name CFLAGS)} {(-shared)} {(-fPIC)} 
                  {
                    (CommandSubPart
                      command_list: 
                        (CommandList
                          children: [
                            (C {(pkg-config)} {(--cflags)} {(hiredis)} {(lua) ($ VSub_Name "$_ver")})
                          ]
                        )
                      left_token: <Left_CommandSub "$(">
                      spids: [373 382]
                    )
                  } 
                  {
                    (CommandSubPart
                      command_list: 
                        (CommandList
                          children: [
                            (C {(pkg-config)} {(--libs)} {(hiredis)} {(lua) ($ VSub_Name "$_ver")})
                          ]
                        )
                      left_token: <Left_CommandSub "$(">
                      spids: [386 395]
                    )
                  } {(-I/usr/include/lua) ($ VSub_Name "$_ver")} {(-I/usr/include/hiredis)} {(-o)} {(hiredis.so)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(install)} {(-Dm755)} {(hiredis.so)} 
                  {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/lua/) ($ VSub_Name "$_ver") (/hiredis.so)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [305]
        )
      spids: [301 304]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"b53eea8b51ddfbfa4592e7a3bb004416edd6240a860656ec809b603349357d3e754a2b5f2a92cb33d0a46259beae86f1c99981e848193f112888982d97cb94b7  lua-hiredis-0.2.1.tar.gz\n"
                ) 
                (
"0017a218a126e0b96a5cc4126a0b8dc7600ef6029af24f3ca685e46cabade03d25a3c318b3d80c907785f2f2abc7dfb2c9a047e6a7c53e082ab682a3ac5ca18b  0002-lua-hiredis-master.patch\n"
                ) 
                (
"9cf63994de040d8818c3db3053d506244e7a4a647ae71609533b5c889517d6addf01dde185f83d7472f4580dea4d26dce69e5e5ad86ca7c70343eaffe0d7e137  0003-lua-5-2-compatibility.patch\n"
                ) 
                (
"5603ee2e6566e79c6760160082cc3fa87b44a0dc34c10932bfddcb04375c78f280742e91a343185931da8d241753c2c3e0e3514f48f1347eed8b0ee711865f1b  0004-lua-5-3-compatibility.patch"
                )
              )
            }
          spids: [441]
        )
      ]
      spids: [441]
    )
  ]
)