(command.CommandList
  children: [
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgname spids:[6])
          op: Equal
          rhs: {(lua-http)}
          spids: [6]
        )
      ]
      spids: [6]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgver spids:[9])
          op: Equal
          rhs: {(0.2)}
          spids: [9]
        )
      ]
      spids: [9]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgrel spids:[12])
          op: Equal
          rhs: {(0)}
          spids: [12]
        )
      ]
      spids: [12]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgdesc spids:[15])
          op: Equal
          rhs: {(DQ ('HTTP Library for Lua that supports HTTP(S) 1.0, 1.1 and 2.0'))}
          spids: [15]
        )
      ]
      spids: [15]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:url spids:[20])
          op: Equal
          rhs: {(DQ ('https://github.com/daurnimator/lua-http'))}
          spids: [20]
        )
      ]
      spids: [20]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:arch spids:[25])
          op: Equal
          rhs: {(DQ (noarch))}
          spids: [25]
        )
      ]
      spids: [25]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:license spids:[30])
          op: Equal
          rhs: {(DQ (MIT))}
          spids: [30]
        )
      ]
      spids: [30]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:depends spids:[35])
          op: Equal
          rhs: {(DQ ('lua-cqueues lua-basexx lua-fifo lua-lpeg lua-lpeg_patterns lua-ossl'))}
          spids: [35]
        )
      ]
      spids: [35]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:checkdepends spids:[40])
          op: Equal
          rhs: {(DQ ('lua-busted lua-compat53 lua5.1-bit32'))}
          spids: [40]
        )
      ]
      spids: [40]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:makedepends spids:[45])
          op: Equal
          rhs: {(DQ )}
          spids: [45]
        )
      ]
      spids: [45]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:subpackages spids:[49])
          op: Equal
          rhs: {(DQ )}
          spids: [49]
        )
      ]
      spids: [49]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:source spids:[53])
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_DollarName '$pkgname') (-) ($ VSub_DollarName '$pkgver') 
                ('.tar.gz::https://github.com/daurnimator/') ($ VSub_DollarName '$pkgname') (/archive/v) ($ VSub_DollarName '$pkgver') (.tar.gz)
              )
            }
          spids: [53]
        )
      ]
      spids: [53]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:builddir spids:[65])
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$pkgname') (-) 
                ($ VSub_DollarName '$pkgver')
              )
            }
          spids: [65]
        )
      ]
      spids: [65]
    )
    (command.Case
      to_match: {(DQ ($ VSub_DollarName '$CARCH'))}
      arms: [
        (case_arm
          pat_list: [{(s390x)}]
          action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:_luajit spids:[91])
                  op: Equal
                  rhs: {(DQ )}
                  spids: [91]
                )
              ]
              spids: [91]
            )
          ]
          spids: [88 89 94 16777215]
        )
        (case_arm
          pat_list: [{(aarch64)} {(armhf)}]
          action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:options spids:[108])
                  op: Equal
                  rhs: {(DQ ('!check'))}
                  spids: [108]
                )
              ]
              spids: [108]
            )
          ]
          spids: [101 106 112 16777215]
        )
        (case_arm
          pat_list: [{(Lit_Other '*')}]
          action: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:checkdepends spids:[118])
                  op: Equal
                  rhs: {(DQ ($ VSub_DollarName '$checkdepends') (' luajit'))}
                  spids: [118]
                )
                (assign_pair
                  lhs: (lhs_expr.LhsName name:_luajit spids:[124])
                  op: Equal
                  rhs: {(DQ (jit))}
                  spids: [124]
                )
              ]
              spids: [118]
            )
          ]
          spids: [115 116 128 16777215]
        )
      ]
      spids: [75 81 130]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:_luaversions spids:[133])
          op: Equal
          rhs: {(DQ ('5.1 5.2 5.3'))}
          spids: [133]
        )
      ]
      spids: [133]
    )
    (command.ForEach
      iter_name: _v
      iter_words: [{($ VSub_DollarName '$_luaversions')}]
      do_arg_iter: F
      body: 
        (command.DoGroup
          children: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:subpackages spids:[150])
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_DollarName '$subpackages') (' lua') ($ VSub_DollarName '$_v') (-) 
                        (word_part.BracedVarSub
                          token: <VSub_Name pkgname>
                          suffix_op: (suffix_op.StringUnary op_id:VOp1_Pound arg_word:{(lua-)})
                          spids: [156 160]
                        ) (':_subpackage')
                      )
                    }
                  spids: [150]
                )
              ]
              spids: [150]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:checkdepends spids:[165])
                  op: Equal
                  rhs: {(DQ ($ VSub_DollarName '$checkdepends') (' lua') ($ VSub_DollarName '$_v'))}
                  spids: [165]
                )
              ]
              spids: [165]
            )
          ]
          spids: [147 172]
        )
      spids: [143 145]
    )
    (command.FuncDef
      name: check
      body: 
        (command.BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_DollarName '$builddir'))})
            (command.Sentence
              child: 
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:lver spids:[192])
                      op: Equal
                      spids: [192]
                    )
                  ]
                  spids: [190]
                )
              terminator: <Op_Semi ';'>
            )
            (command.ForEach
              iter_name: lver
              iter_words: [{($ VSub_DollarName '$_luaversions')} {($ VSub_DollarName '$_luajit')}]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (C {(msg)} {(DQ ('Testing on lua') ($ VSub_DollarName '$lver'))})
                    (C {(lua) ($ VSub_DollarName '$lver')} {(/usr/bin/busted)})
                  ]
                  spids: [206 223]
                )
              spids: [200 204]
            )
          ]
          spids: [179]
        )
      spids: [175 178]
    )
    (command.FuncDef
      name: package
      body: 
        (command.BraceGroup
          children: [(C {(mkdir)} {(-p)} {(DQ ($ VSub_DollarName '$pkgdir'))})]
          spids: [232]
        )
      spids: [228 231]
    )
    (command.FuncDef
      name: _subpackage
      body: 
        (command.BraceGroup
          children: [
            (command.Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:lver spids:[255])
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (word_part.BracedVarSub
                          token: <VSub_Name subpkgname>
                          suffix_op: 
                            (suffix_op.Slice
                              begin: (arith_expr.ArithWord w:{(Lit_Digits 3)})
                              length: (arith_expr.ArithWord w:{(Lit_Digits 3)})
                            )
                          spids: [257 263]
                        )
                      )
                    }
                  spids: [255]
                )
              ]
              spids: [253]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:pkgdesc spids:[267])
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_DollarName '$pkgdesc') (' (for Lua ') ($ VSub_DollarName '$lver') 
                        (')')
                      )
                    }
                  spids: [267]
                )
              ]
              spids: [267]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:depends spids:[276])
                  op: Equal
                  rhs: 
                    {
                      (DQ (lua) ($ VSub_DollarName '$lver') (' ') 
                        (word_part.BracedVarSub
                          token: <VSub_Name depends>
                          suffix_op: 
                            (suffix_op.PatSub
                              pat: {(lua-)}
                              replace: {(lua) ($ VSub_DollarName '$lver') (-)}
                              replace_mode: Lit_Slash
                              spids: [283]
                            )
                          spids: [281 290]
                        )
                      )
                    }
                  spids: [276]
                )
              ]
              spids: [276]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:install_if spids:[294])
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_DollarName '$pkgname') ('=') ($ VSub_DollarName '$pkgver') (-r) 
                        ($ VSub_DollarName '$pkgrel') (' lua') ($ VSub_DollarName '$lver')
                      )
                    }
                  spids: [294]
                )
              ]
              spids: [294]
            )
            (command.Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:lmod_dir spids:[308])
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_DollarName '$subpkgdir') (/usr/share/lua/) 
                        ($ VSub_DollarName '$lver')
                      )
                    }
                  spids: [308]
                )
              ]
              spids: [306]
            )
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$lver'))} 
                          {(KW_Bang '!') (Lit_Other '=')} {(DQ (5.3))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (command.Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (lhs_expr.LhsName name:depends spids:[338])
                          op: Equal
                          rhs: 
                            {
                              (DQ ($ VSub_DollarName '$depends') (' lua') ($ VSub_DollarName '$lver') 
                                (-compat5.3)
                              )
                            }
                          spids: [338]
                        )
                      ]
                      spids: [338]
                    )
                  ]
                  spids: [16777215 335]
                )
              ]
              spids: [16777215 347]
            )
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ ($ VSub_DollarName '$lver'))} {(Lit_Other '=')} 
                          {(DQ (5.1))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (command.Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (lhs_expr.LhsName name:depends spids:[370])
                          op: Equal
                          rhs: {(DQ ($ VSub_DollarName '$depends') (' lua5.1-bit32'))}
                          spids: [370]
                        )
                      ]
                      spids: [370]
                    )
                  ]
                  spids: [16777215 367]
                )
              ]
              spids: [16777215 377]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_DollarName '$lmod_dir'))})
            (C {(cp)} {(-r)} {(DQ ($ VSub_DollarName '$builddir')) (/http)} 
              {(DQ ($ VSub_DollarName '$lmod_dir')) (/)}
            )
          ]
          spids: [250]
        )
      spids: [246 249]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:sha512sums spids:[407])
          op: Equal
          rhs: 
            {
              (DQ 
                (
'ed71ac09277e8602e3d4954541f06c09ef444db20e5b4e39a17b9ed4893046b1442969902c0ba84fc4c3c922a6d1c8ebf853fceda261b12bf10ea9aa24389587  lua-http-0.2.tar.gz'
                )
              )
            }
          spids: [407]
        )
      ]
      spids: [407]
    )
  ]
)