(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(lua-rapidjson)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_rockname) op:Equal rhs:{(rapidjson)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.5.1)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[15])]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("A JSON module for Lua based on the very fast RapidJSON library"))}
          spids: [18]
        )
      ]
      spids: [18]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("https://github.com/xpol/lua-rapidjson"))}
          spids: [23]
        )
      ]
      spids: [23]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[28])]
      spids: [28]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[33])]
      spids: [33]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ ("cmake rapidjson-dev"))}
          spids: [38]
        )
      ]
      spids: [38]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[43])]
      spids: [43]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:checkdepends)
          op: Equal
          rhs: {(DQ ("lua-busted lua-dromozoa-utf8"))}
          spids: [47]
        )
      ]
      spids: [47]
    )
    (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/xpol/") ($ VSub_Name "$pkgname") (/archive/v) ($ VSub_Name "$pkgver") (".tar.gz\n") 
                ("\tdisable-c-cxx-flag-march.patch\n") ("\tfix-json_encode_spec.patch")
              )
            }
          spids: [52]
        )
      ]
      spids: [52]
    )
    (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: [66]
        )
      ]
      spids: [66]
    )
    (Case
      to_match: {(DQ ($ VSub_Name "$CARCH"))}
      arms: [
        (case_arm
          pat_list: [{(s390x)}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:_luajit) op:Equal rhs:{(DQ )} spids:[91])]
              spids: [91]
            )
          ]
          spids: [88 89 94 -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: [100]
                )
                (assign_pair
                  lhs: (LhsName name:_luajit)
                  op: Equal
                  rhs: {(DQ (jit))}
                  spids: [106]
                )
              ]
              spids: [100]
            )
          ]
          spids: [97 98 110 -1]
        )
      ]
      spids: [79 85 112]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_luaversions)
          op: Equal
          rhs: {(DQ ("5.1 5.2 5.3"))}
          spids: [115]
        )
      ]
      spids: [115]
    )
    (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: [132]
                )
              ]
              spids: [132]
            )
            (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: [147 151]
                        ) (":_subpackage")
                      )
                    }
                  spids: [141]
                )
              ]
              spids: [141]
            )
          ]
          spids: [129 155]
        )
      spids: [125 127]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(default_prepare)})
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(rm)} {(-r)} {(rapidjson/include)})
          ]
          spids: [162]
        )
      spids: [158 161]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[202])]
                  spids: [200]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: lver
              iter_words: [{($ VSub_Name "$_luaversions")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$builddir")) (/build-) ($ VSub_Name "$lver")})
                    (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/build-) ($ VSub_Name "$lver")})
                    (C {(msg)} {(DQ ("Building against Lua ") ($ VSub_Name "$lver") (...))})
                    (C {(cmake)} {(..)} {(-DCMAKE_BUILD_TYPE) (Lit_Other "=") (MinSizeRel)} 
                      {(-DCMAKE_INSTALL_PREFIX) (Lit_Other "=") (/usr)} {(-DCMAKE_CXX_FLAGS) (Lit_Other "=") (DQ ($ VSub_Name "$CXXFLAGS"))} 
                      {(-DCMAKE_C_FLAGS) (Lit_Other "=") (DQ ($ VSub_Name "$CFLAGS"))} {(-DCMAKE_VERBOSE_MAKEFILE) (Lit_Other "=") (ON)} {(-DBUILD_SHARED_LIBS) (Lit_Other "=") (ON)} 
                      {(-DLUA_INCLUDE_DIR) (Lit_Other "=") 
                        (DQ 
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (C {(pkg-config)} {(--variable) (Lit_Other "=") (includedir)} 
                                    {(lua) ($ VSub_Name "$lver")}
                                  )
                                ]
                              )
                            left_token: <Left_CommandSub "$(">
                            spids: [296 305]
                          )
                        )
                      } {(-DLUA_RAPIDJSON_VERSION) (Lit_Other "=") (DQ ($ VSub_Name "$pkgver"))}
                    )
                    (C {(make)})
                  ]
                  spids: [214 320]
                )
              spids: [210 212]
            )
          ]
          spids: [197]
        )
      spids: [193 196]
    )
    (FuncDef
      name: check
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:lver) op:Equal spids:[334])]
                  spids: [332]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: lver
              iter_words: [{($ VSub_Name "$_luaversions")} {($ VSub_Name "$_luajit")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(cd)} 
                      {(DQ ($ VSub_Name "$builddir")) (/build-) 
                        (BracedVarSub
                          token: <VSub_Name lver>
                          suffix_op: 
                            (PatSub
                              pat: {(jit)}
                              replace: {(5.1)}
                              do_all: False
                              do_prefix: False
                              do_suffix: False
                            )
                          spids: [357 363]
                        )
                      }
                    )
                    (C {(ln)} {(-sf)} {(../rapidjson)} {(../spec)} {(.)})
                    (C {(msg)} {(DQ ("Testing on lua") ($ VSub_Name "$lver"))})
                    (C {(lua) ($ VSub_Name "$lver")} {(/usr/bin/busted)})
                  ]
                  spids: [348 392]
                )
              spids: [342 346]
            )
          ]
          spids: [329]
        )
      spids: [325 328]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[401])
      spids: [397 400]
    )
    (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: [426 432]
                        )
                      )
                    }
                  spids: [424]
                )
              ]
              spids: [422]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (for Lua ") ($ VSub_Name "$lver") (")"))}
                  spids: [436]
                )
              ]
              spids: [436]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (lua) ($ VSub_Name "$lver"))}
                  spids: [445]
                )
              ]
              spids: [445]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:install_if)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$pkgname") ("=") ($ VSub_Name "$pkgver") (-r) 
                        ($ VSub_Name "$pkgrel") (" lua") ($ VSub_Name "$lver")
                      )
                    }
                  spids: [452]
                )
              ]
              spids: [452]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:install_cmod)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(pkg-config)} {(--variable) (Lit_Other "=") (INSTALL_CMOD)} 
                                {(lua) ($ VSub_Name "$lver")}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub "$(">
                        spids: [467 476]
                      )
                    }
                  spids: [466]
                )
              ]
              spids: [464]
            )
            (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 "$_rockname") (/) ($ VSub_Name "$pkgver") (-1)
                      )
                    }
                  spids: [481]
                )
              ]
              spids: [479]
            )
            (C {(install)} {(-D)} {(-m)} {(755)} 
              {(DQ ($ VSub_Name "$builddir")) (/build-) ($ VSub_Name "$lver") (/rapidjson.so)} {(DQ ($ VSub_Name "$subpkgdir")) (/) ($ VSub_Name "$install_cmod") (/rapidjson.so)}
            )
            (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: [536]
                )
              ]
            )
          ]
          spids: [419]
        )
      spids: [415 418]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"281a7f98212d1648f270180a2f7475884c5cb9c9b1ee901113fc2a96bff86b4897c8d9cc0e40f7cf1b9edd09540119734118f7e06879eaaecf3f3d6f7f5f84e0  lua-rapidjson-0.5.1.tar.gz\n"
                ) 
                (
"9bfe86c75765d0684f33b660129c3ab90629b8518b05d14aa99ea15e6eb39dcb0a56e9a705f2dcae0f463e7ed92c8759628b0fbdaeee43aff34ac7e5b6c6bf10  disable-c-cxx-flag-march.patch\n"
                ) 
                (
"ad66d29f6dd1ed1a3eafff79b77567a28c0b5d746a2564e0ce5fa8a26bf792d788b96ec63bacd907f85c89a561ada690c526e6be36246cd50f8ea45180977cc0  fix-json_encode_spec.patch"
                )
              )
            }
          spids: [546]
        )
      ]
      spids: [546]
    )
  ]
)