(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_gemname) op:Equal rhs:{(treetop)} spids:[3])]
      spids: [3]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgname)
          op: Equal
          rhs: {(ruby-) ($ VSub_Name '$_gemname')}
          spids: [6]
        )
      ]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(1.4.15)} spids:[10])]
      spids: [10]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(2)} spids:[13])]
      spids: [13]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ('A Ruby-based text parsing and interpretation DSL'))}
          spids: [16]
        )
      ]
      spids: [16]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ('https://github.com/cjheath/treetop'))}
          spids: [21]
        )
      ]
      spids: [21]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[26])]
      spids: [26]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[31])]
      spids: [31]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:depends)
          op: Equal
          rhs: {(DQ ('ruby ruby-polyglot'))}
          spids: [36]
        )
      ]
      spids: [36]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends_dev) op:Equal rhs:{(SQ )} spids:[41])]
      spids: [41]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ ($ VSub_Name '$depends_dev') (' ruby'))}
          spids: [43]
        )
      ]
      spids: [43]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[49])]
      spids: [49]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:subpackages) op:Equal rhs:{(DQ )} spids:[53])]
      spids: [53]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ('http://gems.rubyforge.org/gems/') ($ VSub_Name '$_gemname') (-) 
                ($ VSub_Name '$pkgver') (.gem)
              )
            }
          spids: [57]
        )
      ]
      spids: [57]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_builddir)
          op: Equal
          rhs: 
            {(DQ ($ VSub_Name '$srcdir')) (/) ($ VSub_Name '$_realname') (-) ($ VSub_Name '$pkgver')}
          spids: [67]
        )
      ]
      spids: [67]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})]
          spids: [80]
        )
      spids: [76 79]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_gemdir)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [(C {(ruby)} {(-rubygems)} {(-e) (SQ <'puts Gem.default_dir'>)})]
                            )
                          left_token: <Left_CommandSub '$('>
                          spids: [101 110]
                        )
                      )
                    }
                  spids: [99]
                )
              ]
              spids: [97]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:_geminstdir)
                  op: Equal
                  rhs: 
                    {($ VSub_Name '$_gemdir') (/gems/) ($ VSub_Name '$_gemname') (-) 
                      ($ VSub_Name '$pkgver')
                    }
                  spids: [116]
                )
              ]
              spids: [114]
            )
            (AndOr
              children: [
                (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name '$pkgdir'))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(gem)} {(install)} {(--local)} {(--install-dir)} 
                  {(DQ ($ VSub_Name '$pkgdir')) (/) ($ VSub_Name '$_gemdir')} {(--ignore-dependencies)} {(--verbose)} {(--no-rdoc)} {(--no-ri)} 
                  {(DQ ($ VSub_Name '$srcdir')) (/) ($ VSub_Name '$_gemname') (-) 
                    ($ VSub_Name '$pkgver') (.gem)
                  }
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(rm)} {(-rf)} {(DQ ($ VSub_Name '$pkgdir')) (/) ($ VSub_Name '$_gemdir') (/cache)} 
              {(DQ ($ VSub_Name '$pkgdir')) (/) ($ VSub_Name '$_geminstdir') (/ext)} {(DQ ($ VSub_Name '$pkgdir')) (/) ($ VSub_Name '$_geminstdir') (/.require_paths)}
            )
          ]
          spids: [94]
        )
      spids: [90 93]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: {(DQ ('87f30c0684d7760dce9feac8ff8bd869  treetop-1.4.15.gem'))}
          spids: [214]
        )
      ]
      spids: [214]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'ffa68f201c0f62c26b0a1d13233d73194400596964696843f87ebb5d812f12ff  treetop-1.4.15.gem'
                )
              )
            }
          spids: [219]
        )
      ]
      spids: [219]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'350e3b4fc5236f5523e7ba7486699192a689d680e60687519ffdb8707241fce493a86713d1a0a1e243654c609e221b194e151c29bee9aa7cff71ab397223791b  treetop-1.4.15.gem'
                )
              )
            }
          spids: [224]
        )
      ]
      spids: [224]
    )
  ]
)