(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(libtbb)} spids:[7])]
      spids: [7]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(4.4.4)} spids:[10])]
      spids: [10]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_pkgverstr)
          op: Equal
          rhs: {(tbb44_20160413oss)}
          spids: [13]
        )
      ]
      spids: [13]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[16])]
      spids: [16]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Intel\u00ae TBB, a widely used C++ template library for task parallelism"))}
          spids: [19]
        )
      ]
      spids: [19]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("https://threadingbuildingblocks.org"))}
          spids: [24]
        )
      ]
      spids: [24]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ ("x86 x86_64"))} spids:[29])]
      spids: [29]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (GPL2))} spids:[34])]
      spids: [34]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$pkgname") ("-debug ") ($ VSub_Name "$pkgname") ("-dev ") 
                ($ VSub_Name "$pkgname") (-doc)
              )
            }
          spids: [39]
        )
      ]
      spids: [39]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"https://www.threadingbuildingblocks.org/sites/default/files/software_releases/source/"
                ) (${ VSub_Name _pkgverstr) (_src.tgz)
              )
            }
          spids: [49]
        )
      ]
      spids: [49]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:_builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir") (/) ($ VSub_Name "$_pkgverstr"))}
          spids: [59]
        )
      ]
      spids: [59]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:i) op:Equal spids:[75])]
              spids: [73]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (ForEach
              iter_name: i
              iter_words: [{(DQ ($ VSub_Name "$startdir")) (/) (Lit_Other "*")}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (Case
                      to_match: {($ VSub_Name "$i")}
                      arms: [
                        (case_arm
                          pat_list: [{(Lit_Other "*") (.patch)}]
                          action: [
                            (Sentence
                              child: (C {(msg)} {($ VSub_Name "$i")})
                              terminator: <Op_Semi ";">
                            )
                            (AndOr
                              children: [
                                (C {(patch)} {(--verbose)} {(-p1)} {(-i)} {($ VSub_Name "$i")})
                                (ControlFlow
                                  token: <ControlFlow_Return return>
                                  arg_word: {(1)}
                                )
                              ]
                              op_id: Op_DPipe
                            )
                          ]
                          spids: [108 110 132 -1]
                        )
                      ]
                      spids: [101 105 135]
                    )
                  ]
                  spids: [98 138]
                )
              spids: [90 96]
            )
          ]
          spids: [70]
        )
      spids: [66 69]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (AndOr
              children: [(C {(make)}) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})]
              op_id: Op_DPipe
            )
          ]
          spids: [147]
        )
      spids: [143 146]
    )
    (FuncDef
      name: _install_libs
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair lhs:(LhsName name:buildtype) op:Equal spids:[177])
                (assign_pair lhs:(LhsName name:libsuffix) op:Equal spids:[179])
                (assign_pair lhs:(LhsName name:lib) op:Equal spids:[181])
                (assign_pair lhs:(LhsName name:builddir) op:Equal spids:[183])
              ]
              spids: [175]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:buildtype)
                  op: Equal
                  rhs: {(DQ (_) ($ VSub_Number "$1"))}
                  spids: [186]
                )
              ]
              spids: [186]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:libsuffix)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number "$2"))}
                  spids: [193]
                )
              ]
              spids: [193]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:lib)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Number 3>
                          suffix_op: 
                            (StringUnary
                              op_id: VTest_ColonHyphen
                              arg_word: {($ VSub_Name "$subpkgdir")}
                            )
                          spids: [201 205]
                        ) (/usr/lib)
                      )
                    }
                  spids: [199]
                )
              ]
              spids: [199]
            )
            (AndOr
              children: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:builddir)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (C {(find)} {(DQ ($ VSub_Name "$_builddir") (/build))} {(-maxdepth)} 
                                    {(1)} {(-name)} {(DQ ("*") ($ VSub_Name "$buildtype"))} {(-type)} {(d)}
                                  )
                                ]
                              )
                            left_token: <Left_CommandSub "$(">
                            spids: [211 233]
                          )
                        }
                      spids: [210]
                    )
                  ]
                  spids: [210]
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$buildtype"))} {(KW_Bang "!") (Lit_Other "=")} 
                  {(DQ (_debug))} {(Lit_Other "]")}
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [(assign_pair lhs:(LhsName name:buildtype) op:Equal rhs:{(SQ )} spids:[259])]
                  spids: [259]
                )
              ]
              op_id: Op_DAmp
            )
            (AndOr
              children: [
                (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$lib"))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(mv)} 
                  {
                    (DQ ($ VSub_Name "$builddir") (/libtbb) (${ VSub_Name buildtype) (.so) 
                      ($ VSub_Name "$libsuffix")
                    )
                  } 
                  {
                    (DQ ($ VSub_Name "$builddir") (/libtbbmalloc) (${ VSub_Name buildtype) (.so) 
                      ($ VSub_Name "$libsuffix")
                    )
                  } 
                  {
                    (DQ ($ VSub_Name "$builddir") (/libtbbmalloc_proxy) (${ VSub_Name buildtype) (.so) 
                      ($ VSub_Name "$libsuffix")
                    )
                  } {(DQ ($ VSub_Name "$lib") (/))}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [172]
        )
      spids: [168 171]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(_install_libs)} {(release)} {(.2)} {(DQ ($ VSub_Name "$pkgdir"))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [335]
        )
      spids: [331 334]
    )
    (FuncDef
      name: debug
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (debug symbols)"))}
                  spids: [364]
                )
              ]
              spids: [364]
            )
            (AndOr
              children: [
                (C {(_install_libs)} {(debug)} {(.2)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [361]
        )
      spids: [357 360]
    )
    (FuncDef
      name: dev
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (development files)"))}
                  spids: [394]
                )
              ]
              spids: [394]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [(assign_pair lhs:(LhsName name:prefix) op:Equal spids:[404])]
              spids: [402]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:prefix)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$subpkgdir") (/usr))}
                  spids: [407]
                )
              ]
              spids: [407]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (AndOr
              children: [
                (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$prefix"))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(rm)} {(include/index.html)})
                (AndOr
                  children: [
                    (C {(mv)} {(include)} {(DQ ($ VSub_Name "$prefix") (/))})
                    (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
                  ]
                  op_id: Op_DPipe
                )
              ]
              op_id: Op_DAmp
            )
            (AndOr
              children: [
                (C {(_install_libs)} {(release)})
                (AndOr
                  children: [
                    (C {(_install_libs)} {(debug)})
                    (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
                  ]
                  op_id: Op_DPipe
                )
              ]
              op_id: Op_DAmp
            )
          ]
          spids: [391]
        )
      spids: [387 390]
    )
    (FuncDef
      name: doc
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[484])]
              spids: [484]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (documentation)"))}
                  spids: [490]
                )
              ]
              spids: [490]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair lhs:(LhsName name:share) op:Equal spids:[500])
                (assign_pair lhs:(LhsName name:doc) op:Equal spids:[502])
                (assign_pair lhs:(LhsName name:licenses) op:Equal spids:[504])
              ]
              spids: [498]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:share)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$subpkgdir") (/usr/share))}
                  spids: [507]
                )
              ]
              spids: [507]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:doc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$share") (/doc))}
                  spids: [514]
                )
              ]
              spids: [514]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:licensesdir)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$share") (/licenses/) ($ VSub_Name "$pkgname"))}
                  spids: [521]
                )
              ]
              spids: [521]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$_builddir"))})
            (AndOr
              children: [
                (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$doc"))} {(DQ ($ VSub_Name "$licensesdir"))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(mv)} {(doc/)} 
                  {
                    (DQ ($ VSub_Name "$doc") (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver"))
                  }
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(mv)} {(COPYING)} {(DQ ($ VSub_Name "$licensesdir") (/))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [481]
        )
      spids: [477 480]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: {(DQ ("95999ccff3470f6565c516e67fb37019  tbb44_20160413oss_src.tgz"))}
          spids: [592]
        )
      ]
      spids: [592]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"3fecffef5e42f9f22e51a81a1bfa89ea40cefb439d168c285c9d5f0128353644  tbb44_20160413oss_src.tgz"
                )
              )
            }
          spids: [597]
        )
      ]
      spids: [597]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"93424dbb42da10dc2ffdcc0c04738112bc0c96bc9c8563b3aa931b1f118fcec480957447673d85f8a6ea0e9f0b233460036204ad6e4dad815203375b45679943  tbb44_20160413oss_src.tgz"
                )
              )
            }
          spids: [602]
        )
      ]
      spids: [602]
    )
  ]
)