(command.CommandList
  children: [
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgname spids:[6])
          op: Equal
          rhs: {(esptool)}
          spids: [6]
        )
      ]
      spids: [6]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgver spids:[9])
          op: Equal
          rhs: {(2.1)}
          spids: [9]
        )
      ]
      spids: [9]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgrel spids:[12])
          op: Equal
          rhs: {(0)}
          spids: [12]
        )
      ]
      spids: [12]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:pkgdesc spids:[15])
          op: Equal
          rhs: {(DQ ('ESP8266 ROM Bootloader utility'))}
          spids: [15]
        )
      ]
      spids: [15]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:url spids:[20])
          op: Equal
          rhs: {(DQ ('https://github.com/themadinventor/esptool'))}
          spids: [20]
        )
      ]
      spids: [20]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:arch spids:[25])
          op: Equal
          rhs: {(DQ (noarch))}
          spids: [25]
        )
      ]
      spids: [25]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:license spids:[30])
          op: Equal
          rhs: {(DQ (GPLv2))}
          spids: [30]
        )
      ]
      spids: [30]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:depends spids:[35])
          op: Equal
          rhs: {(DQ ('python2 py-serial py-setuptools'))}
          spids: [35]
        )
      ]
      spids: [35]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:makedepends spids:[40])
          op: Equal
          rhs: {(DQ (python2-dev))}
          spids: [40]
        )
      ]
      spids: [40]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:install spids:[45])
          op: Equal
          rhs: {(DQ )}
          spids: [45]
        )
      ]
      spids: [45]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:subpackages spids:[49])
          op: Equal
          rhs: {(DQ ($ VSub_DollarName '$pkgname') (-doc))}
          spids: [49]
        )
      ]
      spids: [49]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:source spids:[55])
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_DollarName '$pkgname') (-) ($ VSub_DollarName '$pkgver') 
                ('.tar.gz::https://github.com/themadinventor/') (${ VSub_Name pkgname) (/archive/v) (${ VSub_Name pkgver) (.tar.gz)
              )
            }
          spids: [55]
        )
      ]
      spids: [55]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:builddir spids:[72])
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_DollarName '$srcdir') (/) ($ VSub_DollarName '$pkgname') (-) 
                ($ VSub_DollarName '$pkgver')
              )
            }
          spids: [72]
        )
      ]
      spids: [72]
    )
    (command.FuncDef
      name: build
      body: 
        (command.BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_DollarName '$builddir'))})
            (command.AndOr
              ops: [Op_DPipe]
              children: [
                (C {(python2)} {(setup.py)} {(build)})
                (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
          ]
          spids: [85]
        )
      spids: [81 84]
    )
    (command.FuncDef
      name: package
      body: 
        (command.BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_DollarName '$builddir'))})
            (command.AndOr
              ops: [Op_DPipe]
              children: [
                (C {(python2)} {(setup.py)} {(install)} {(--prefix) (Lit_Other '=') (/usr)} 
                  {(--root) (Lit_Other '=') (DQ ($ VSub_DollarName '$pkgdir'))}
                )
                (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
            (C {(mkdir)} {(-p)} 
              {(DQ ($ VSub_DollarName '$pkgdir')) (/usr/share/doc/) ($ VSub_DollarName '$pkgname') (/)}
            )
            (command.AndOr
              ops: [Op_DPipe]
              children: [
                (C {(install)} {(-m644)} {(CONTRIBUTING.md)} {(README.md)} 
                  {(DQ ($ VSub_DollarName '$pkgdir')) (/usr/share/doc/) 
                    ($ VSub_DollarName '$pkgname') (/)
                  }
                )
                (command.ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
          ]
          spids: [114]
        )
      spids: [110 113]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:sha512sums spids:[188])
          op: Equal
          rhs: 
            {
              (DQ 
                (
'859807f0d457f34196c8e024fd2ff63ea1a45836cd03e13c625719e368fc5a616930b7700d9a91c0ddea4fc64b150b04f154c8cc12178cc5a9ce7f08375f151a  esptool-2.1.tar.gz'
                )
              )
            }
          spids: [188]
        )
      ]
      spids: [188]
    )
  ]
)