(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ('5.1 5.2 5.3'))}
          spids: [7]
        )
      ]
      spids: [7]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-ossl)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_pkgname) op:Equal rhs:{(luaossl)} spids:[15])]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(20161214)} spids:[18])]
      spids: [18]
    )
    (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: [22 26]
              )
            }
          spids: [21]
        )
      ]
      spids: [21]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[28])]
      spids: [28]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ('A comprehensive OpenSSL Lua module'))}
          spids: [31]
        )
      ]
      spids: [31]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ('http://25thandclement.com/~william/projects/luaossl.html'))}
          spids: [36]
        )
      ]
      spids: [36]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[41])]
      spids: [41]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[46])]
      spids: [46]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[51])]
      spids: [51]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ (libressl-dev))}
          spids: [55]
        )
      ]
      spids: [55]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[60])]
      spids: [60]
    )
    (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: [76]
                )
              ]
              spids: [76]
            )
            (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: [91 95]
                        ) (':_package')
                      )
                    }
                  spids: [85]
                )
              ]
              spids: [85]
            )
          ]
          spids: [73 99]
        )
      spids: [69 71]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ (luaossl-) ($ VSub_Name '$_ver') ('.tar.gz::https://github.com/wahern/') 
                ($ VSub_Name '$_pkgname') (/archive/rel-) ($ VSub_Name '$pkgver') (.tar.gz)
              )
            }
          spids: [101]
        )
      ]
      spids: [101]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name '$srcdir') (/) ($ VSub_Name '$_pkgname') (-rel-) ($ VSub_Name '$pkgver'))
            }
          spids: [112]
        )
      ]
      spids: [112]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name '$builddir'))})
            (AndOr
              children: [
                (C {(make)} {(config)} {(Lit_VarLike 'prefix=') (/usr)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[153])]
                  spids: [151]
                )
              terminator: <Op_Semi ';'>
            )
            (ForEach
              iter_name: lver
              iter_words: [{($ VSub_Name '$_luaversions')}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (AndOr
                      children: [
                        (C {(make)} {(openssl) ($ VSub_Name '$lver')})
                        (ControlFlow
                          token: <ControlFlow_Return return>
                          arg_word: {(1)}
                        )
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [165 180]
                )
              spids: [161 163]
            )
          ]
          spids: [126]
        )
      spids: [122 125]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name '$pkgdir'))})] spids:[189])
      spids: [185 188]
    )
    (FuncDef
      name: _package
      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: [214 220]
                        )
                      )
                    }
                  spids: [212]
                )
              ]
              spids: [210]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name '$pkgdesc') (' for Lua ') ($ VSub_Name '$lver'))}
                  spids: [224]
                )
              ]
              spids: [224]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (lua) ($ VSub_Name '$lver'))}
                  spids: [232]
                )
              ]
              spids: [232]
            )
            (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: [239]
                )
              ]
              spids: [239]
            )
            (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: [254]
                )
              ]
              spids: [252]
            )
            (C {(cd)} {(DQ ($ VSub_Name '$builddir'))})
            (C {(make)} {(Lit_VarLike 'DESTDIR=') (DQ ($ VSub_Name '$subpkgdir'))} 
              {(install) ($ VSub_Name '$lver')}
            )
            (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: [302]
                )
              ]
            )
          ]
          spids: [207]
        )
      spids: [203 206]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'4fd0685ae80fc6f999d806adb9e67016ddca5175e8ee0fedeaae3dace709157bfd87cdbeb6d808a0539c53be60193e1ac805358a7ea2f21246c19a8b6a7d7264  luaossl-20161214.tar.gz'
                )
              )
            }
          spids: [312]
        )
      ]
      spids: [312]
    )
  ]
)