(command.CommandList
  children: [
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgname spids:[6])
          op: Equal
          rhs: {(opensubdiv)}
          spids: [6]
        )
      ]
      spids: [6]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:_pkgname spids:[9])
          op: Equal
          rhs: {(OpenSubdiv)}
          spids: [9]
        )
      ]
      spids: [9]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgver spids:[12])
          op: Equal
          rhs: {(3.0.5)}
          spids: [12]
        )
      ]
      spids: [12]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:_pkgver spids:[15])
          op: Equal
          rhs: 
            {
              (word_part.BracedVarSub
                token: <VSub_Name pkgver>
                suffix_op: 
                  (suffix_op.PatSub
                    pat: {(.)}
                    replace: {(_)}
                    replace_mode: Lit_Slash
                    spids: [18]
                  )
                spids: [16 23]
              )
            }
          spids: [15]
        )
      ]
      spids: [15]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgrel spids:[25])
          op: Equal
          rhs: {(2)}
          spids: [25]
        )
      ]
      spids: [25]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgdesc spids:[28])
          op: Equal
          rhs: {(DQ ('An Open-Source subdivision surface library'))}
          spids: [28]
        )
      ]
      spids: [28]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:url spids:[33])
          op: Equal
          rhs: {(DQ ('http://graphics.pixar.com/opensubdiv'))}
          spids: [33]
        )
      ]
      spids: [33]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:arch spids:[38])
          op: Equal
          rhs: {(DQ (all))}
          spids: [38]
        )
      ]
      spids: [38]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:license spids:[43])
          op: Equal
          rhs: {(DQ (ASL-2.0))}
          spids: [43]
        )
      ]
      spids: [43]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:depends spids:[48])
          op: Equal
          rhs: {(DQ )}
          spids: [48]
        )
      ]
      spids: [48]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:makedepends spids:[52])
          op: Equal
          rhs: {(DQ ('cmake glew-dev glfw-dev doxygen py-docutils libxcursor-dev'))}
          spids: [52]
        )
      ]
      spids: [52]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:subpackages spids:[57])
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_DollarName '$pkgname') ('-dev ') ($ VSub_DollarName '$pkgname') ('-doc ') 
                ($ VSub_DollarName '$pkgname') ('-tutorials ') ($ VSub_DollarName '$pkgname') (-tools)
              )
            }
          spids: [57]
        )
      ]
      spids: [57]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:source spids:[69])
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_DollarName '$pkgname') (-) ($ VSub_DollarName '$pkgver') 
                ('.tar.gz::https://github.com/PixarAnimationStudios/') ($ VSub_DollarName '$_pkgname') (/archive/v) ($ VSub_DollarName '$_pkgver') (.tar.gz)
              )
            }
          spids: [69]
        )
      ]
      spids: [69]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:builddir spids:[81])
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$_pkgname') (-) 
                ($ VSub_DollarName '$_pkgver')
              )
            }
          spids: [81]
        )
      ]
      spids: [81]
    )
    (command.FuncDef
      name: build
      body: 
        (command.BraceGroup
          children: [
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_DollarName '$builddir')) (/build)})
            (C {(cd)} {(DQ ($ VSub_DollarName '$builddir')) (/build)})
            (command.AndOr
              ops: [Op_DPipe]
              children: [
                (C {(cmake)} {(..)} {(-DCMAKE_BUILD_TYPE) (Lit_Other '=') (Release)} 
                  {(-DCMAKE_INSTALL_PREFIX) (Lit_Other '=') (/usr)} {(-DCMAKE_SKIP_RPATH) (Lit_Other '=') (TRUE)} 
                  {(-DCMAKE_C_FLAGS) (Lit_Other '=') (DQ ($ VSub_DollarName '$CFLAGS'))} {(-DCMAKE_CXX_FLAGS) (Lit_Other '=') (DQ ($ VSub_DollarName '$CXXFLAGS'))} 
                  {(-DNO_TBB) (Lit_Other '=') (TRUE)} {(-DNO_PTEX) (Lit_Other '=') (TRUE)} {(-DNO_MAYA) (Lit_Other '=') (TRUE)} 
                  {(-DNO_CUDA) (Lit_Other '=') (TRUE)} {(-DNO_OPENCL) (Lit_Other '=') (TRUE)}
                )
                (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
            (command.AndOr
              ops: [Op_DPipe]
              children: [
                (C {(make)})
                (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
          ]
          spids: [95]
        )
      spids: [91 94]
    )
    (command.FuncDef
      name: package
      body: 
        (command.BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_DollarName '$builddir')) (/build)})
            (C {(make)} {(Lit_VarLike 'DESTDIR=') (DQ ($ VSub_DollarName '$pkgdir'))} {(install)})
          ]
          spids: [209]
        )
      spids: [205 208]
    )
    (command.FuncDef
      name: tutorials
      body: 
        (command.BraceGroup
          children: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:pkgdesc spids:[239])
                  op: Equal
                  rhs: {(DQ ($ VSub_DollarName '$pkgdesc') (' (tutorials)'))}
                  spids: [239]
                )
              ]
              spids: [239]
            )
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:depends spids:[246])
                  op: Equal
                  rhs: {(DQ ($ VSub_DollarName '$pkgname'))}
                  spids: [246]
                )
              ]
              spids: [246]
            )
            (C {(cd)} {(DQ ($ VSub_DollarName '$pkgdir'))})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_DollarName '$subpkgdir')) (/usr/bin/)})
            (command.Sentence
              child: 
                (command.Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (lhs_expr.LhsName name:tut spids:[273])
                      op: Equal
                      spids: [273]
                    )
                  ]
                  spids: [271]
                )
              terminator: <Op_Semi ';'>
            )
            (command.ForEach
              iter_name: tut
              iter_words: [{(./usr/bin/tutorials/) (Lit_Other '*')}]
              do_arg_iter: F
              body: 
                (command.DoGroup
                  children: [
                    (C {(mv)} {($ VSub_DollarName '$tut')} 
                      {(DQ ($ VSub_DollarName '$subpkgdir')) (/usr/bin/opensubdiv_) 
                        (word_part.BracedVarSub
                          token: <VSub_Name tut>
                          suffix_op: 
                            (suffix_op.StringUnary
                              op_id: VOp1_DPound
                              arg_word: {('*') (Lit_Slash /)}
                            )
                          spids: [297 302]
                        )
                      }
                    )
                  ]
                  spids: [286 305]
                )
              spids: [281 284]
            )
            (C {(rmdir)} {(./usr/bin/tutorials)})
          ]
          spids: [236]
        )
      spids: [232 235]
    )
    (command.FuncDef
      name: tools
      body: 
        (command.BraceGroup
          children: [
            (command.Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (lhs_expr.LhsName name:pkgdesc spids:[322])
                  op: Equal
                  rhs: {(DQ ($ VSub_DollarName '$pkgdesc') (' (tools)'))}
                  spids: [322]
                )
              ]
              spids: [322]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_DollarName '$subpkgdir')) (/usr)})
            (C {(mv)} {(DQ ($ VSub_DollarName '$pkgdir')) (/usr/bin)} 
              {(DQ ($ VSub_DollarName '$subpkgdir')) (/usr/)}
            )
          ]
          spids: [319]
        )
      spids: [315 318]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:md5sums spids:[355])
          op: Equal
          rhs: {(DQ ('f16fa309b3fa3d400e6dcbf59d316dfe  opensubdiv-3.0.5.tar.gz'))}
          spids: [355]
        )
      ]
      spids: [355]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:sha256sums spids:[360])
          op: Equal
          rhs: 
            {
              (DQ 
                (
'60bb7d709adfd949ff865864b68ff3b7e97a682a1841ccc70cd60a6c5a28ff30  opensubdiv-3.0.5.tar.gz'
                )
              )
            }
          spids: [360]
        )
      ]
      spids: [360]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:sha512sums spids:[365])
          op: Equal
          rhs: 
            {
              (DQ 
                (
'cee4c13fd0ef0a8dac6f880bdda8b6eed1ac3c17f7eadbd5f00bb8fe0140ca12a244b7e51edc98186af0551a26ac88e402651837f3f49195d3a9697437b86bf8  opensubdiv-3.0.5.tar.gz'
                )
              )
            }
          spids: [365]
        )
      ]
      spids: [365]
    )
  ]
)