(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(py-testtools)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_pkgname) op:Equal rhs:{(DQ (testtools))} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(2.2.0)} spids:[14])]
      spids: [14]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[17])]
      spids: [17]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("Extensions to the Python standard library unit testing framework"))}
          spids: [20]
        )
      ]
      spids: [20]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("https://pypi.python.org/pypi/testtools"))}
          spids: [25]
        )
      ]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[30])]
      spids: [30]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (MIT))} spids:[35])]
      spids: [35]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ (python))} spids:[40])]
      spids: [40]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ ("python2-dev python3-dev py-setuptools"))}
          spids: [45]
        )
      ]
      spids: [45]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: 
            {
              (DQ (py2-) 
                (BracedVarSub
                  token: <VSub_Name pkgname>
                  suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{(py-)})
                  spids: [53 57]
                ) (":_py2 py3-") 
                (BracedVarSub
                  token: <VSub_Name pkgname>
                  suffix_op: (StringUnary op_id:VOp1_Pound arg_word:{(py-)})
                  spids: [59 63]
                ) (":_py3")
              )
            }
          spids: [50]
        )
      ]
      spids: [50]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ("https://files.pythonhosted.org/packages/source/") 
                (BracedVarSub
                  token: <VSub_Name _pkgname>
                  suffix_op: 
                    (Slice
                      begin: (ArithWord w:{(Lit_Digits 0)})
                      length: (ArithWord w:{(Lit_Digits 1)})
                    )
                  spids: [70 76]
                ) (/) ($ VSub_Name "$_pkgname") (/) ($ VSub_Name "$_pkgname") (-) ($ VSub_Name "$pkgver") (.tar.gz)
              )
            }
          spids: [67]
        )
      ]
      spids: [67]
    )
    (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: [86]
        )
      ]
      spids: [86]
    )
    (FuncDef
      name: check
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(python2)} {(setup.py)} {(check)})
            (C {(python3)} {(setup.py)} {(check)})
          ]
          spids: [100]
        )
      spids: [96 99]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(python2)} {(setup.py)} {(build)})
            (C {(python3)} {(setup.py)} {(build)})
          ]
          spids: [130]
        )
      spids: [126 129]
    )
    (FuncDef
      name: package
      body: (BraceGroup children:[(C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$pkgdir"))})] spids:[160])
      spids: [156 159]
    )
    (FuncDef
      name: _py2
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:replaces)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgname"))}
                  spids: [181]
                )
              ]
              spids: [181]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Name depends>
                          suffix_op: 
                            (PatSub
                              pat: {(py-)}
                              replace: {(py2-)}
                              do_all: True
                              do_prefix: False
                              do_suffix: False
                            )
                          spids: [189 196]
                        )
                      )
                    }
                  spids: [187]
                )
              ]
              spids: [187]
            )
            (C {(_py)} {(python2)})
          ]
          spids: [178]
        )
      spids: [174 177]
    )
    (FuncDef
      name: _py3
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (BracedVarSub
                          token: <VSub_Name depends>
                          suffix_op: 
                            (PatSub
                              pat: {(py-)}
                              replace: {(py3-)}
                              do_all: True
                              do_prefix: False
                              do_suffix: False
                            )
                          spids: [219 226]
                        )
                      )
                    }
                  spids: [217]
                )
              ]
              spids: [217]
            )
            (C {(_py)} {(python3)})
          ]
          spids: [214]
        )
      spids: [210 213]
    )
    (FuncDef
      name: _py
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:python)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number "$1"))}
                  spids: [249]
                )
              ]
              spids: [247]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgdesc") (" (for ") ($ VSub_Name "$python") (")"))}
                  spids: [255]
                )
              ]
              spids: [255]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$depends") (" ") ($ VSub_Name "$python"))}
                  spids: [264]
                )
              ]
              spids: [264]
            )
            (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") (" ") ($ VSub_Name "$python")
                      )
                    }
                  spids: [275]
                )
              ]
              spids: [275]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {($ VSub_Name "$python")} {(setup.py)} {(install)} {(--prefix) (Lit_Other "=") (/usr)} 
              {(--root) (Lit_Other "=") (DQ ($ VSub_Name "$subpkgdir"))}
            )
          ]
          spids: [244]
        )
      spids: [240 243]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"f5ba08971975aa1ccf923c4c997ca7b093d00615131f440a9a5aad96d63be5b9e72f3364f3185d523fce9b5a7055bd52f767b54f7f9f17a102c4166efec189c5  testtools-2.2.0.tar.gz"
                )
              )
            }
          spids: [313]
        )
      ]
      spids: [313]
    )
  ]
)