(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(exim)} spids:[18])]
      spids: [18]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(4.89)} spids:[21])]
      spids: [21]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(5)} spids:[24])]
      spids: [24]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: {(DQ ("A Message Transfer Agent"))}
          spids: [27]
        )
      ]
      spids: [27]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://www.exim.org/"))}
          spids: [32]
        )
      ]
      spids: [32]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[37])]
      spids: [37]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (GPL2))} spids:[42])]
      spids: [42]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:options) op:Equal rhs:{(DQ ("!check suid"))} spids:[47])]
      spids: [47]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:depends)
          op: Equal
          rhs: {(DQ (ca-certificates))}
          spids: [52]
        )
      ]
      spids: [52]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgusers) op:Equal rhs:{(DQ (exim))} spids:[57])]
      spids: [57]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkggroups) op:Equal rhs:{(DQ (exim))} spids:[62])]
      spids: [62]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: 
            {
              (DQ ("bash gawk perl ") ($ VSub_Name "$depends_dev") 
                (" db-dev pcre-dev libressl-dev libspf2-dev mariadb-dev\n") ("\tpostgresql-dev sqlite-dev libidn-dev linux-headers")
              )
            }
          spids: [67]
        )
      ]
      spids: [67]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:install)
          op: Equal
          rhs: {(DQ (exim.pre-install))}
          spids: [75]
        )
      ]
      spids: [75]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$pkgname") ("-cdb ") ($ VSub_Name "$pkgname") ("-dbmdb ") 
                ($ VSub_Name "$pkgname") ("-dnsdb ") ($ VSub_Name "$pkgname") ("-sqlite ") ($ VSub_Name "$pkgname") ("-mysql ") 
                ($ VSub_Name "$pkgname") ("-postgresql\n") ("\t") ($ VSub_Name "$pkgname") ("-utils ") ($ VSub_Name "$pkgname") 
                ("-scripts::noarch ") ($ VSub_Name "$pkgname") (-doc)
              )
            }
          spids: [80]
        )
      ]
      spids: [80]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ("ftp://ftp.exim.org/pub/exim/exim4/") ($ VSub_Name "$pkgname") (-) 
                ($ VSub_Name "$pkgver") (".tar.xz\n") ("\tCVE-2017-1000369.patch\n") ("\texim.Makefile\n") ("\texim.confd\n") ("\texim.initd\n") 
                ("\texim.logrotate\n") ("\texim.gencert")
              )
            }
          spids: [103]
        )
      ]
      spids: [103]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$srcdir") (/) ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver"))}
          spids: [118]
        )
      ]
      spids: [118]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(default_prepare)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (AndOr
              children: [
                (C {(cp)} {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$pkgname") (.Makefile)} 
                  {(Local/Makefile)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(sed)} {(-i)} {(-e)} {(SQ <s/-lnsl//g>)} {(-e)} {(SQ <"s/^HAVE_ICONV.*$//">)} 
              {(OS/Makefile-Linux)}
            )
          ]
          spids: [142]
        )
      spids: [138 141]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (AndOr
              children: [
                (C {(make)} {(makefile)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(make)} {(-j1)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [211]
        )
      spids: [207 210]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(install)} {(-m750)} {(-D)} {(-g)} {(mail)} {(-d)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/etc/mail)}
            )
            (AndOr
              children: [
                (C {(make)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} 
                  {(Lit_VarLike "INSTALL_ARG=") (DQ ("-no_symlink -no_chown exim"))} {(install)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(install)} {(-D)} {(-m644)} {(doc/exim.8)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/man/man8/exim.8)}
            )
            (C {(cd)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/sbin)})
            (C {(mv)} 
              {(exim-) 
                (BracedVarSub
                  token: <VSub_Name pkgver>
                  suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(".*")})
                  spids: [323 327]
                ) (Lit_Other "*")
              } {(exim)}
            )
            (C {(chmod)} {(u) (Lit_Other "+") (s)} {(exim)})
            (ForEach
              iter_name: i
              iter_words: [{(mailq)} {(rmail)} {(rsmtp)} {(runq)} {(sendmail)} {(newaliases)}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [(C {(ln)} {(-s)} {(exim)} {($ VSub_Name "$i")})]
                  spids: [361 373]
                )
              spids: [347 359]
            )
            (C {(install)} {(-Dm644)} 
              {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$pkgname") (.logrotate)} {(DQ ($ VSub_Name "$pkgdir")) (/etc/logrotate.d/) ($ VSub_Name "$pkgname")}
            )
            (C {(install)} {(-Dm644)} 
              {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$pkgname") (.confd)} {(DQ ($ VSub_Name "$pkgdir")) (/etc/conf.d/) ($ VSub_Name "$pkgname")}
            )
            (C {(install)} {(-Dm755)} 
              {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$pkgname") (.initd)} {(DQ ($ VSub_Name "$pkgdir")) (/etc/init.d/) ($ VSub_Name "$pkgname")}
            )
            (C {(sed)} {(-i)} {(-e)} 
              {
                (SQ 
                  <
"s~# av_scanner = clamd:/tmp/clamd~# av_scanner = clamd:/run/clamav/clamd.sock~"
                  >
                )
              } {(-e)} {(SQ <"/# spamd_address = 127.0.0.1 783/a# spamd_address = 127.0.0.1 11333 variant=rspamd">)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/etc/) ($ VSub_Name "$pkgname") (/) 
                ($ VSub_Name "$pkgname") (.conf)
              }
            )
          ]
          spids: [249]
        )
      spids: [245 248]
    )
    (FuncDef
      name: scripts
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("exim scripts"))}
                  spids: [475]
                )
              ]
              spids: [475]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ ("exim perl"))}
                  spids: [481]
                )
              ]
              spids: [481]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (AndOr
              children: [
                (C {(make)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} 
                  {(Lit_VarLike "INSTALL_ARG=") 
                    (DQ 
                      (
"exicyclog exim_checkaccess eximstats exiqgrep exigrep exinext exiqsumm exipick exiwhat convert4r3 convert4r4"
                      )
                    )
                  } {(install)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(rm)} {(-fr)} {(DQ ($ VSub_Name "$subpkgdir")) (/etc)})
          ]
          spids: [472]
        )
      spids: [468 471]
    )
    (FuncDef
      name: utils
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("exim utils"))}
                  spids: [538]
                )
              ]
              spids: [538]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ (exim))} spids:[544])]
              spids: [544]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (AndOr
              children: [
                (C {(make)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} 
                  {(Lit_VarLike "INSTALL_ARG=") 
                    (DQ ("exim_dbmbuild exim_dumpdb exim_tidydb exim_fixdb exim_lock"))
                  } {(install)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(install)} {(-m755)} {(DQ ($ VSub_Name "$srcdir")) (/exim.gencert)} 
                  {(DQ ($ VSub_Name "$subpkgdir")) (/usr/sbin/exim_gencert)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(rm)} {(-fr)} {(DQ ($ VSub_Name "$subpkgdir")) (/etc)})
          ]
          spids: [535]
        )
      spids: [531 534]
    )
    (FuncDef
      name: _mv_ext
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("EXIM extension: ") ($ VSub_Number "$1"))}
                  spids: [622]
                )
              ]
              spids: [622]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgname"))}
                  spids: [629]
                )
              ]
              spids: [629]
            )
            (C {(install)} {(-D)} {(-m755)} 
              {(DQ ($ VSub_Name "$builddir")) (/build-Linux-) (Lit_Other "*") (/lookups/) 
                ($ VSub_Number "$1") (.so)
              } {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/) ($ VSub_Name "$pkgname") (/) ($ VSub_Number "$1") (.so)}
            )
          ]
          spids: [619]
        )
      spids: [615 618]
    )
    (FuncDef
      name: sqlite
      body: 
        (BraceGroup
          children: [(Sentence child:(C {(_mv_ext)} {(sqlite)}) terminator:<Op_Semi ";">)]
          spids: [666]
        )
      spids: [662 665]
    )
    (FuncDef
      name: mysql
      body: 
        (BraceGroup
          children: [(Sentence child:(C {(_mv_ext)} {(mysql)}) terminator:<Op_Semi ";">)]
          spids: [679]
        )
      spids: [675 678]
    )
    (FuncDef
      name: postgresql
      body: 
        (BraceGroup
          children: [(Sentence child:(C {(_mv_ext)} {(pgsql)}) terminator:<Op_Semi ";">)]
          spids: [692]
        )
      spids: [688 691]
    )
    (FuncDef
      name: cdb
      body: 
        (BraceGroup
          children: [(Sentence child:(C {(_mv_ext)} {(cdb)}) terminator:<Op_Semi ";">)]
          spids: [705]
        )
      spids: [701 704]
    )
    (FuncDef
      name: dbmdb
      body: 
        (BraceGroup
          children: [(Sentence child:(C {(_mv_ext)} {(dbmdb)}) terminator:<Op_Semi ";">)]
          spids: [718]
        )
      spids: [714 717]
    )
    (FuncDef
      name: dnsdb
      body: 
        (BraceGroup
          children: [(Sentence child:(C {(_mv_ext)} {(dnsdb)}) terminator:<Op_Semi ";">)]
          spids: [731]
        )
      spids: [727 730]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"ce5faef3847a5baf1b4fec1ffe46ce7efaafb24e63bcc52a61f38e8312a88eccaa816c3947ba428bef3eed38b1e91e606f6ed07bc0a3e14c6a6ed0ecb41eb9fa  exim-4.89.tar.xz\n"
                ) 
                (
"cffe895974e9f570e2f60583206e0c2865e9ca400636e5ed2117c531fc62b03753f41286565ee253c11610e61589275cb5235b34cae052b5dcc6e5c37fbc7ece  CVE-2017-1000369.patch\n"
                ) 
                (
"e9524d3a2cc230b4ecb3b098f53247121b9582fc7807b1549c5a3fd54bb416b837c4e09476f2e01dca03d590a968c40bf90d4b6a9f8a4abad082fdec91916a0f  exim.Makefile\n"
                ) 
                (
"bb6f5ead067af19ace661cc92bcd428da97570aedd1f9dc5b61a34e7e3fb3e028be6c96d51df73353bdfcaf69a3ee053fb03d245f868d63ebf518aa96ec82d66  exim.confd\n"
                ) 
                (
"8d0c594c5e3834ddd3a7743c025caf3f5c04f6ac17e25f2278e7a36b726150f0f8e36a1c76cd1a4b454edcb163181ee05ea40a6b61a0e9172c600e4808ccc80f  exim.initd\n"
                ) 
                (
"28e748693a6a72d9943fa9c342ff041fe650fa6977f468dee127e845e6c2a91872ce33fb6f5698838906bde3ed92de7a91cdb0349cedc40b806261867e8c06cb  exim.logrotate\n"
                ) 
                (
"abdaf749ed3947a75b997caa300bf9f27ef82760f1854aa4521a9ac0f322f1655b65a375bc7a709259daea88bf93cfab5289997fa8e376fac9a3477f09bab642  exim.gencert"
                )
              )
            }
          spids: [741]
        )
      ]
      spids: [741]
    )
  ]
)