(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(perl-string-random)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:_realname) op:Equal rhs:{(String-Random)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(0.29)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(0)} spids:[15])]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ('Perl extension to generate random strings'))}
          spids: [18]
        )
      ]
      spids: [18]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ('http://search.cpan.org/~shlomif/String-Random-0.29/'))}
          spids: [23]
        )
      ]
      spids: [23]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (noarch))} spids:[28])]
      spids: [28]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (PerlArtistic))} spids:[33])]
      spids: [33]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ (perl))} spids:[38])]
      spids: [38]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: {(DQ ('perl-dev perl-module-build'))}
          spids: [43]
        )
      ]
      spids: [43]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: {(DQ ($ VSub_Name '$pkgname') (-doc))}
          spids: [48]
        )
      ]
      spids: [48]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ('http://search.cpan.org/CPAN/authors/id/S/SH/SHLOMIF/') ($ VSub_Name '$_realname') 
                (-) ($ VSub_Name '$pkgver') (.tar.gz)
              )
            }
          spids: [54]
        )
      ]
      spids: [54]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: 
            {(DQ ($ VSub_Name '$srcdir')) (/) ($ VSub_Name '$_realname') (-) ($ VSub_Name '$pkgver')}
          spids: [63]
        )
      ]
      spids: [63]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name '$builddir'))})
            (AndOr
              ops: [Op_DPipe]
              children: [
                (C {(perl)} {(Build.PL)} {(Lit_VarLike 'installdirs=') (vendor)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
            (AndOr
              ops: [Op_DPipe]
              children: [(C {(./Build)}) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})]
            )
          ]
          spids: [77]
        )
      spids: [73 76]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name '$builddir'))})
            (AndOr
              ops: [Op_DPipe]
              children: [
                (C {(./Build)} {(install)} {(Lit_VarLike 'destdir=') (DQ ($ VSub_Name '$pkgdir'))})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
            )
            (C {(find)} {(DQ ($ VSub_Name '$pkgdir'))} 
              {(EscapedLiteralPart token:<Lit_EscapedChar '\\('>)} {(-name)} {(perllocal.pod)} {(-o)} {(-name)} {(.packlist)} 
              {(EscapedLiteralPart token:<Lit_EscapedChar '\\)'>)} {(-delete)}
            )
          ]
          spids: [116]
        )
      spids: [112 115]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: {(DQ ('2fedadd106e6f9fd3ecb18a264816b51  String-Random-0.29.tar.gz'))}
          spids: [167]
        )
      ]
      spids: [167]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'1da4a65e66ab1db23fedca018355b597cf69c94dd73dec657212820055515a5c  String-Random-0.29.tar.gz'
                )
              )
            }
          spids: [172]
        )
      ]
      spids: [172]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'0a939c874962d49d167ce91fe943fdb8dc1e7d506c086750600af9d5f8c40b2e679358f73554e51673a7663dfcf5439ef101096fca8c771e3de654a91c802525  String-Random-0.29.tar.gz'
                )
              )
            }
          spids: [177]
        )
      ]
      spids: [177]
    )
  ]
)