(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<py-ujson>}
          spids: [6]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:_pkgname)
          op: assign_op.Equal
          rhs: {<ujson>}
          spids: [9]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<1.35>}
          spids: [12]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgrel)
          op: assign_op.Equal
          rhs: {<2>}
          spids: [15]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgdesc)
          op: assign_op.Equal
          rhs: {(DQ <'A fast Python JSON encoder and decoder'>)}
          spids: [18]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'http://github.com/esnme/ultrajson'>)}
          spids: [23]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:arch)
          op: assign_op.Equal
          rhs: {(DQ <all>)}
          spids: [28]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:license)
          op: assign_op.Equal
          rhs: {(DQ <BSD>)}
          spids: [33]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ <'python2-dev py-setuptools python3-dev'>)}
          spids: [38]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:checkdepends)
          op: assign_op.Equal
          rhs: {(DQ <'py3-tz py3-six'>)}
          spids: [43]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:subpackages)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <py3-> 
                (braced_var_sub
                  token: <Id.VSub_Name pkgname>
                  suffix_op: (suffix_op.PatSub pat:{<py->} replace:{} replace_mode:Id.Undefined_Tok)
                ) <':_py3 py2-'> 
                (braced_var_sub
                  token: <Id.VSub_Name pkgname>
                  suffix_op: (suffix_op.PatSub pat:{<py->} replace:{} replace_mode:Id.Undefined_Tok)
                ) <':_py2'>
              )
            }
          spids: [48]
        )
      ]
    )
    (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/esnme/ultrajson/archive/v'> ($ Id.VSub_DollarName '$pkgver') <'.tar.gz\n'> <'       lower-stack-usage.patch'>
              )
            }
          spids: [67]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:builddir)
          op: assign_op.Equal
          rhs: 
            {(DQ ($ Id.VSub_DollarName '$srcdir')) <'/ultrajson-'> ($ Id.VSub_DollarName '$pkgver')}
          spids: [78]
        )
      ]
    )
    (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: [141]
                )
              ]
            )
            (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: [183]
                )
              ]
            )
            (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: [192]
                )
              ]
            )
            (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.ShFunction
      name: check
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<ln>} {<-s>} {<'./build/lib.'> <Id.Lit_Star '*'> <'/ujson.'> <Id.Lit_Star '*'> <.so>} 
              {<ujson.so>}
            )
            (command.Simple
              words: [{<python3>} {<'tests/tests.py'>}]
              more_env: [(env_pair name:PYTHONPATH val:{<.>} spids:[258])]
              do_fork: T
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'cd5dc8d08e072cf703aec7d689070713f7073c22f13167d7e10a89219179248d6668894c1d742ca658672bb82e1dccbf72e3fd69e036d8cb2ee0ee799d10db11  ujson-1.35.tar.gz\n'
                > 
                <
'e3755dea5845d735afc32c3fc6ee569f1a36d51203812409446c3cb62d207c1fea934935adaf1787b5ac549765e2dfdd18790f2eb0c15b28c5fec61a45874738  lower-stack-usage.patch'
                >
              )
            }
          spids: [268]
        )
      ]
    )
  ]
)