(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<py-libnacl>}
          spids: [6]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:_pkgname)
          op: assign_op.Equal
          rhs: {<libnacl>}
          spids: [9]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<1.6.0>}
          spids: [12]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgrel)
          op: assign_op.Equal
          rhs: {<0>}
          spids: [15]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgdesc)
          op: assign_op.Equal
          rhs: {(DQ <'Python bindings for libsodium/tweetnacl'>)}
          spids: [18]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'https://libnacl.readthedocs.org/'>)}
          spids: [23]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:arch)
          op: assign_op.Equal
          rhs: {(DQ <noarch>)}
          spids: [28]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:license)
          op: assign_op.Equal
          rhs: {(DQ <'ASL 2.0'>)}
          spids: [33]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ <'python2-dev python3-dev py-setuptools'>)}
          spids: [38]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:subpackages)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <py2-> 
                (braced_var_sub
                  token: <Id.VSub_Name pkgname>
                  suffix_op: (suffix_op.Unary tok:<Id.VOp1_Pound '#'> arg_word:{<py->})
                ) <':_py2 py3-'> 
                (braced_var_sub
                  token: <Id.VSub_Name pkgname>
                  suffix_op: (suffix_op.Unary tok:<Id.VOp1_Pound '#'> arg_word:{<py->})
                ) <':_py3'>
              )
            }
          spids: [43]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ ($ Id.VSub_DollarName '$_pkgname') <-> ($ Id.VSub_DollarName '$pkgver') 
                <'.tar.gz::https://github.com/saltstack/libnacl/archive/v'> ($ Id.VSub_DollarName '$pkgver') <.tar.gz>
              )
            }
          spids: [60]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:builddir)
          op: assign_op.Equal
          rhs: 
            {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/'> ($ Id.VSub_DollarName '$_pkgname') <-> 
              ($ Id.VSub_DollarName '$pkgver')
            }
          spids: [70]
        )
      ]
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<python2>} {<setup.py>} {<build>})
            (C {<python3>} {<setup.py>} {<build>})
          ]
        )
    )
    (command.ShFunction
      name: package
      body: (BraceGroup children:[(C {<mkdir>} {<-p>} {(DQ ($ Id.VSub_DollarName '$pkgdir'))})])
    )
    (command.ShFunction
      name: _py2
      body: 
        (BraceGroup
          children: [
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:replaces)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$pkgname'))}
                  spids: [135]
                )
              ]
            )
            (C {<_py>} {<python2>})
          ]
        )
    )
    (command.ShFunction name:_py3 body:(BraceGroup children:[(C {<_py>} {<python3>})]))
    (command.ShFunction
      name: _py
      body: 
        (BraceGroup
          children: [
            (C {<local>} {<Id.Lit_VarLike 'python='> (DQ ($ Id.VSub_Number '$1'))})
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:pkgdesc)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName '$pkgdesc') <' (for '> ($ Id.VSub_DollarName '$python') 
                        <')'>
                      )
                    }
                  spids: [177]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:depends)
                  op: assign_op.Equal
                  rhs: {(DQ ($ Id.VSub_DollarName '$depends') <' '> ($ Id.VSub_DollarName '$python'))}
                  spids: [186]
                )
              ]
            )
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name name:install_if)
                  op: assign_op.Equal
                  rhs: 
                    {
                      (DQ ($ Id.VSub_DollarName '$pkgname') <'='> ($ Id.VSub_DollarName '$pkgver') <-r> 
                        ($ Id.VSub_DollarName '$pkgrel') <' '> ($ Id.VSub_DollarName '$python')
                      )
                    }
                  spids: [197]
                )
              ]
            )
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {($ Id.VSub_DollarName '$python')} {<setup.py>} {<install>} 
              {<--prefix> <Id.Lit_Equals '='> <'/usr'>} {<--root> <Id.Lit_Equals '='> (DQ ($ Id.VSub_DollarName '$subpkgdir'))}
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'6f5202ca50bf30526bc51e2c528fe86aa412eff4b912d0b09da7f019de2929d2be2a9a8f80340849cf77b3593eae4fa96f2c0920b5201c5786f5009ad5f32c34  libnacl-1.6.0.tar.gz'
                >
              )
            }
          spids: [236]
        )
      ]
    )
  ]
)