(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgname)
          op: assign_op.Equal
          rhs: {<perl-module-install>}
          spids: [6]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:_pkgreal)
          op: assign_op.Equal
          rhs: {<Module-Install>}
          spids: [9]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:pkgver)
          op: assign_op.Equal
          rhs: {<1.18>}
          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 <'Perl module for Module-Install'>)}
          spids: [18]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:url)
          op: assign_op.Equal
          rhs: {(DQ <'http://search.cpan.org/dist/Module-Install/'>)}
          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 <'GPL PerlArtistic'>)}
          spids: [33]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:cpanmakedepends)
          op: assign_op.Equal
          rhs: {(DQ <'perl-file-remove perl-module-build perl-module-scandeps perl-yaml-tiny'>)}
          spids: [38]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:depends)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$cpandepends'))}
          spids: [43]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:makedepends)
          op: assign_op.Equal
          rhs: {(DQ <'perl-dev '> ($ Id.VSub_DollarName '$cpanmakedepends'))}
          spids: [48]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:subpackages)
          op: assign_op.Equal
          rhs: {(DQ ($ Id.VSub_DollarName '$pkgname') <-doc>)}
          spids: [54]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:source)
          op: assign_op.Equal
          rhs: 
            {
              (DQ <'http://search.cpan.org/CPAN/authors/id/E/ET/ETHER/'> 
                ($ Id.VSub_DollarName '$_pkgreal') <-> ($ 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 '$_pkgreal') <-> 
                ($ Id.VSub_DollarName '$pkgver')
              )
            }
          spids: [69]
        )
      ]
    )
    (command.ShFunction
      name: check
      body: 
        (BraceGroup
          children: [(C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))}) (C {<make>} {<test>})]
        )
    )
    (command.ShFunction
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (command.Simple
              words: [{<perl>} {<Makefile.PL>} {<Id.Lit_VarLike 'INSTALLDIRS='> <vendor>}]
              more_env: [(env_pair name:PERL_MM_USE_DEFAULT val:{<1>} spids:[114])]
              do_fork: T
            )
          ]
        )
    )
    (command.ShFunction
      name: build
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<export>} 
              {<Id.Lit_VarLike 'CFLAGS='> 
                (command_sub
                  left_token: <Id.Left_Backtick '`'>
                  child: (C {<perl>} {<-MConfig>} {<-E>} {(SQ <'say $Config{ccflags}'>)})
                )
              }
            )
            (C {<make>})
          ]
        )
    )
    (command.ShFunction
      name: package
      body: 
        (BraceGroup
          children: [
            (C {<cd>} {(DQ ($ Id.VSub_DollarName '$builddir'))})
            (C {<make>} {<Id.Lit_VarLike 'DESTDIR='> (DQ ($ Id.VSub_DollarName '$pkgdir'))} {<install>})
            (C {<find>} {(DQ ($ Id.VSub_DollarName '$pkgdir'))} 
              {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\('>)} {<-name>} {<perllocal.pod>} {<-o>} {<-name>} {<.packlist>} 
              {(word_part.EscapedLiteral token:<Id.Lit_EscapedChar '\\)'>)} {<-delete>}
            )
          ]
        )
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:sha512sums)
          op: assign_op.Equal
          rhs: 
            {
              (DQ 
                <
'2126d35c9bab151548551629e6a470f9a7b90fd901f32cdc15e9aa83b931178f99e28e2de32ce7b8a677d187474efc428839d7e7254074f26fcfcfe18fa297a9  Module-Install-1.18.tar.gz'
                >
              )
            }
          spids: [213]
        )
      ]
    )
  ]
)