(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(postgresql)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(9.6.5)} 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 ("A sophisticated object-relational DBMS"))}
          spids: [18]
        )
      ]
      spids: [18]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ("http://www.postgresql.org/"))}
          spids: [23]
        )
      ]
      spids: [23]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[28])]
      spids: [28]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (BSD))} spids:[33])]
      spids: [33]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:depends)
          op: Equal
          rhs: {(DQ (postgresql-client))}
          spids: [38]
        )
      ]
      spids: [38]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:install)
          op: Equal
          rhs: {(DQ ($ VSub_Name "$pkgname") (.pre-upgrade))}
          spids: [43]
        )
      ]
      spids: [43]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgusers) op:Equal rhs:{(DQ (postgres))} spids:[49])]
      spids: [49]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkggroups) op:Equal rhs:{(DQ (postgres))} spids:[54])]
      spids: [54]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:checkdepends)
          op: Equal
          rhs: {(DQ (diffutils))}
          spids: [59]
        )
      ]
      spids: [59]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:depends_dev)
          op: Equal
          rhs: {(DQ (libressl-dev))}
          spids: [64]
        )
      ]
      spids: [64]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:makedepends)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$depends_dev") (" libedit-dev zlib-dev libxml2-dev util-linux-dev\n") 
                ("\topenldap-dev tcl-dev perl-dev python2-dev python3-dev")
              )
            }
          spids: [69]
        )
      ]
      spids: [69]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name "$pkgname") ("-contrib ") ($ VSub_Name "$pkgname") ("-dev ") 
                ($ VSub_Name "$pkgname") ("-doc libpq ") ($ VSub_Name "$pkgname") ("-libs\n") ("\t") ($ VSub_Name "$pkgname") ("-client ") 
                ($ VSub_Name "$pkgname") ("-pltcl\n") ("\t") ($ VSub_Name "$pkgname") ("-plperl ") ($ VSub_Name "$pkgname") 
                ("-plperl-contrib:plperl_contrib\n") ("\t") ($ VSub_Name "$pkgname") ("-plpython2 ") ($ VSub_Name "$pkgname") 
                ("-plpython2-contrib:plpython2_contrib\n") ("\t") ($ VSub_Name "$pkgname") ("-plpython3 ") ($ VSub_Name "$pkgname") 
                ("-plpython3-contrib:plpython3_contrib")
              )
            }
          spids: [76]
        )
      ]
      spids: [76]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ("https://ftp.postgresql.org/pub/source/v") ($ VSub_Name "$pkgver") (/) 
                ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$pkgver") (".tar.bz2\n") ("\tinitdb.patch\n") ("\tperl-rpath.patch\n") 
                ("\tconf-unix_socket_directories.patch\n") ("\t") ($ VSub_Name "$pkgname") (".initd\n") ("\t") ($ VSub_Name "$pkgname") (".confd\n") 
                ("\tpg-restore.initd\n") ("\tpg-restore.confd\n") ("\tpltcl_create_tables.sql\n") ("\t")
              )
            }
          spids: [108]
        )
      ]
      spids: [108]
    )
    (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: [132]
        )
      ]
      spids: [132]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:options) op:Equal rhs:{(DQ ("!checkroot"))} spids:[141])]
      spids: [141]
    )
    (FuncDef
      name: prepare
      body: 
        (BraceGroup
          children: [
            (C {(default_prepare)})
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:file) op:Equal spids:[195])]
                  spids: [193]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: file
              iter_words: [{($ VSub_Name "$pkgname") (.initd)} {($ VSub_Name "$pkgname") (.confd)}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (SimpleCommand
                      words: [
                        {(sed)}
                        {
                          (DQ ("s|@VERSION@|") 
                            (BracedVarSub
                              token: <VSub_Name pkgver>
                              suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(".*")})
                              spids: [218 222]
                            ) ("|")
                          )
                        }
                        {(DQ ($ VSub_Name "$srcdir")) (/) ($ VSub_Name "$file")}
                      ]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: -1
                          arg_word: {($ VSub_Name "$file")}
                          spids: [232]
                        )
                      ]
                    )
                  ]
                  spids: [211 237]
                )
              spids: [203 209]
            )
            (C {(sed)} {(-Ei)} {(SQ <"s/^(REGRESS)/#\\1/">)} {(contrib/dblink/Makefile)} 
              {(contrib/postgres_fdw/Makefile)}
            )
            (C {(cp)} {(-al)} {(DQ ($ VSub_Name "$builddir"))} 
              {(DQ ($ VSub_Name "$builddir")) (Lit_Tilde "~") (py3)}
            )
          ]
          spids: [179]
        )
      spids: [175 178]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(msg)} {(DQ ("Building plpython3"))})
            (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (Lit_Tilde "~") (py3)})
            (C {(export)} {(Lit_VarLike "PYTHON=") (/usr/bin/python3)})
            (C {(_configure)})
            (C {(make)} {(-C)} {(src/backend)} {(submake-errcodes)})
            (C {(make)} {(-C)} {(src/pl/plpython)} {(all)})
            (C {(msg)} {(DQ ("Building all"))})
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(export)} {(Lit_VarLike "PYTHON=") (/usr/bin/python2)})
            (AndOr children:[(C {(_configure)})(C {(make)} {(world)})] op_id:Op_DAmp)
            (C {(unset)} {(PYTHON)})
          ]
          spids: [304]
        )
      spids: [300 303]
    )
    (FuncDef
      name: _configure
      body: 
        (Subshell
          child: 
            (CommandList
              children: [
                (C {(export)} 
                  {(Lit_VarLike "CFLAGS=") 
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name CFLAGS>
                        suffix_op: 
                          (PatSub
                            pat: {(-Os)}
                            replace: {(-O2)}
                            do_all: False
                            do_prefix: False
                            do_suffix: False
                          )
                        spids: [407 413]
                      )
                    )
                  }
                )
                (C {(export)} 
                  {(Lit_VarLike "CPPFLAGS=") 
                    (DQ 
                      (BracedVarSub
                        token: <VSub_Name CPPFLAGS>
                        suffix_op: 
                          (PatSub
                            pat: {(-Os)}
                            replace: {(-O2)}
                            do_all: False
                            do_prefix: False
                            do_suffix: False
                          )
                        spids: [421 427]
                      )
                    )
                  }
                )
                (C {(./configure)} {(--build) (Lit_Other "=") ($ VSub_Name "$CBUILD")} 
                  {(--host) (Lit_Other "=") ($ VSub_Name "$CHOST")} {(--prefix) (Lit_Other "=") (/usr)} {(--mandir) (Lit_Other "=") (/usr/share/man)} {(--with-ldap)} 
                  {(--with-libedit-preferred)} {(--with-libxml)} {(--with-openssl)} {(--with-uuid) (Lit_Other "=") (e2fs)} {(--disable-rpath)} 
                  {(--with-perl)} {(--with-python)} {(--with-tcl)}
                )
              ]
            )
          spids: [400 496]
        )
      spids: [396 399]
    )
    (FuncDef
      name: check
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(_run_tests)} {(src/test)})
            (C {(_run_tests)} {(src/pl)})
            (C {(_run_tests)} {(contrib)} {(-j1)})
          ]
          spids: [503]
        )
      spids: [499 502]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(make)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)} 
              {(install-docs)}
            )
            (C {(install)} {(-d)} {(-m750)} {(-o)} {(postgres)} {(-g)} {(postgres)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/var/lib/postgresql)} {(DQ ($ VSub_Name "$pkgdir")) (/var/log/) ($ VSub_Name "$pkgname")}
            )
            (C {(install)} {(-D)} {(-m755)} {(postgresql.initd)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/etc/init.d/postgresql)}
            )
            (C {(install)} {(-D)} {(-m644)} {(postgresql.confd)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/etc/conf.d/postgresql)}
            )
            (C {(install)} {(-D)} {(-m755)} {(DQ ($ VSub_Name "$srcdir")) (/pg-restore.initd)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/etc/init.d/pg-restore)}
            )
            (C {(install)} {(-D)} {(-m644)} {(DQ ($ VSub_Name "$srcdir")) (/pg-restore.confd)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/etc/conf.d/pg-restore)}
            )
          ]
          spids: [542]
        )
      spids: [538 541]
    )
    (FuncDef
      name: dev
      body: 
        (BraceGroup
          children: [
            (C {(default_dev)})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/postgresql)}
            )
            (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/pg_config)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/ecpg)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/)}
            )
            (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/postgresql/pgxs)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/postgresql/)}
            )
          ]
          spids: [674]
        )
      spids: [670 673]
    )
    (FuncDef
      name: libpq
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("PostgreSQL libraries"))}
                  spids: [740]
                )
              ]
              spids: [740]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[746])]
              spids: [746]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib)})
            (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/libpq.so.) (Lit_Other "*")} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/)}
            )
          ]
          spids: [737]
        )
      spids: [733 736]
    )
    (FuncDef
      name: libs
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[785])]
              spids: [785]
            )
            (C {(default_libs)})
          ]
          spids: [782]
        )
      spids: [778 781]
    )
    (FuncDef
      name: client
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("PostgreSQL client"))}
                  spids: [802]
                )
              ]
              spids: [802]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[808])]
              spids: [808]
            )
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin)})
            (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/clusterdb)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/createdb)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/createlang)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/createuser)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/dropdb)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/droplang)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/dropuser)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/pg_basebackup)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/pg_dump)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/pg_dumpall)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/pg_isready)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/pg_receivexlog)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/pg_recvlogical)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/pg_restore)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/psql)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/reindexdb)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/vacuumdb)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/)}
            )
          ]
          spids: [799]
        )
      spids: [795 798]
    )
    (FuncDef
      name: contrib
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("Extension modules distributed with PostgreSQL"))}
                  spids: [962]
                )
              ]
              spids: [962]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[968])]
              spids: [968]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(sed)} {(-Ei)} {(-e)} {(SQ <"s/(.*_plperl)/#\\1/">)} {(-e)} {(SQ <"s/(.*_plpython)/#\\1/">)} 
              {(contrib/Makefile)}
            )
            (C {(make)} {(-C)} {(contrib)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} 
              {(install)}
            )
            (C {(mv)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/doc/postgresql/extension)} 
              {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/doc/postgresql/)}
            )
            (AndOr
              children: [
                (C {(rmdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/doc/postgresql)})
                (C {(true)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [959]
        )
      spids: [955 958]
    )
    (FuncDef
      name: pltcl
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("PL/Tcl procedural language for PostgreSQL"))}
                  spids: [1067]
                )
              ]
              spids: [1067]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (pgtcl))}
                  spids: [1073]
                )
              ]
              spids: [1073]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$pkgdir"))})
            (C {(_submv)} {(usr/bin/pltcl) (Lit_Other "*")} {(usr/lib/postgresql/pltcl.so)} 
              {(usr/share/postgresql/unknown.pltcl)} {(usr/share/postgresql/extension/pltcl) (Lit_Other "*")}
            )
            (C {(install)} {(-m)} {(644)} {(DQ ($ VSub_Name "$srcdir")) (/pltcl_create_tables.sql)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/postgresql/)}
            )
          ]
          spids: [1064]
        )
      spids: [1060 1063]
    )
    (FuncDef
      name: plperl
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("PL/Perl procedural language for PostgreSQL"))}
                  spids: [1135]
                )
              ]
              spids: [1135]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ )} spids:[1141])]
              spids: [1141]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$pkgdir"))})
            (C {(_submv)} {(usr/lib/postgresql/plperl.so)} 
              {(usr/share/postgresql/extension/plperl) (Lit_Other "*")}
            )
          ]
          spids: [1132]
        )
      spids: [1128 1131]
    )
    (FuncDef
      name: plperl_contrib
      body: 
        (BraceGroup
          children: [
            (C {(_plcontrib)} {(plperl)} {(DQ (PL/Perl))})
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(make)} {(-C)} {(contrib/hstore_plperl)} 
              {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} {(install)}
            )
          ]
          spids: [1170]
        )
      spids: [1166 1169]
    )
    (FuncDef
      name: plpython2
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("PL/Python2 procedural language for PostgreSQL"))}
                  spids: [1213]
                )
              ]
              spids: [1213]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (python2))}
                  spids: [1219]
                )
              ]
              spids: [1219]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$pkgdir"))})
            (C {(_submv)} {(usr/lib/postgresql/plpython2.so)} 
              {(usr/share/postgresql/extension/plpython) (Lit_Other "*")}
            )
          ]
          spids: [1210]
        )
      spids: [1206 1209]
    )
    (FuncDef
      name: plpython2_contrib
      body: 
        (BraceGroup
          children: [
            (C {(_plcontrib)} {(plpython2)} {(DQ ("PL/Python 2"))})
            (C {(cd)} {(DQ ($ VSub_Name "$builddir"))})
            (C {(make)} {(-C)} {(contrib/hstore_plpython)} 
              {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} {(install)}
            )
            (C {(make)} {(-C)} {(contrib/ltree_plpython)} 
              {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} {(install)}
            )
            (C {(rm)} 
              {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/postgresql/extension/) (Lit_Other "*") 
                (plpython3) (Lit_Other "*")
              }
            )
          ]
          spids: [1249]
        )
      spids: [1245 1248]
    )
    (FuncDef
      name: plpython3
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ("PL/Python3 procedural language for PostgreSQL"))}
                  spids: [1318]
                )
              ]
              spids: [1318]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ (python3))}
                  spids: [1324]
                )
              ]
              spids: [1324]
            )
            (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (Lit_Tilde "~") (py3)})
            (C {(make)} {(-C)} {(src/pl/plpython)} 
              {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} {(install)}
            )
            (C {(rm)} {(-R)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/include)})
          ]
          spids: [1315]
        )
      spids: [1311 1314]
    )
    (FuncDef
      name: plpython3_contrib
      body: 
        (BraceGroup
          children: [
            (C {(_plcontrib)} {(plpython3)} {(DQ ("PL/Python 3"))})
            (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (Lit_Tilde "~") (py3)})
            (C {(make)} {(-C)} {(contrib/hstore_plpython)} 
              {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} {(install)}
            )
            (C {(make)} {(-C)} {(contrib/ltree_plpython)} 
              {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$subpkgdir"))} {(install)}
            )
            (C {(cd)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/postgresql/extension/)})
            (C {(rm)} {(Lit_Other "*") (plpython2) (Lit_Other "*")} 
              {(Lit_Other "*") (plpythonu) (Lit_Other "*")}
            )
          ]
          spids: [1370]
        )
      spids: [1366 1369]
    )
    (FuncDef
      name: _plcontrib
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:subname)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number "$1"))}
                  spids: [1451]
                )
              ]
              spids: [1449]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:pkgdesc)
                  op: Equal
                  rhs: {(DQ ($ VSub_Number "$2") (" extension modules distributed with PostgreSQL"))}
                  spids: [1457]
                )
              ]
              spids: [1457]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:depends)
                  op: Equal
                  rhs: {(DQ ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$subname"))}
                  spids: [1464]
                )
              ]
              spids: [1464]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:install_if)
                  op: Equal
                  rhs: 
                    {
                      (DQ ($ VSub_Name "$pkgname") (-) ($ VSub_Name "$subname") ("=") 
                        ($ VSub_Name "$pkgver") (-r) ($ VSub_Name "$pkgrel") (" ") ($ VSub_Name "$pkgname") ("-contrib=") ($ VSub_Name "$pkgver") (-r) 
                        ($ VSub_Name "$pkgrel")
                      )
                    }
                  spids: [1472]
                )
              ]
              spids: [1472]
            )
          ]
          spids: [1446]
        )
      spids: [1442 1445]
    )
    (FuncDef
      name: _run_tests
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:path)
                      op: Equal
                      rhs: {(DQ ($ VSub_Number "$1"))}
                      spids: [1501]
                    )
                  ]
                  spids: [1499]
                )
              terminator: <Op_Semi ";">
            )
            (C {(shift)})
            (C {(msg)} {(DQ ("Running test suite at ") ($ VSub_Name "$path") (...))})
            (AndOr
              children: [
                (C {(make)} {(-k)} {(-C)} {(DQ ($ VSub_Name "$path"))} {($ VSub_At "$@")} {(check)} 
                  {(Lit_VarLike "MAX_CONNECTIONS=") (5)}
                )
                (BraceGroup
                  children: [
                    (SimpleCommand
                      words: [
                        {(printf)}
                        {
                          (DQ (EscapedLiteralPart token:<Lit_EscapedChar "\\n">) ("%s") 
                            (EscapedLiteralPart
                              token: <Lit_EscapedChar "\\n">
                            ) (EscapedLiteralPart token:<Lit_EscapedChar "\\n">)
                          )
                        }
                        {(DQ ("Trying to find all regression.diffs files in build directory..."))}
                      ]
                      redirects: [(Redir op_id:Redir_GreatAnd fd:-1 arg_word:{(2)} spids:[1555])]
                    )
                    (Pipeline
                      children: [
                        (C {(find)} {(DQ ($ VSub_Name "$path"))} {(-name)} {(regression.diffs)})
                        (While
                          cond: [(Sentence child:(C {(read)} {(file)}) terminator:<Op_Semi ";">)]
                          body: 
                            (DoGroup
                              children: [
                                (SimpleCommand
                                  words: [
                                    {(echo)}
                                    {(DQ ("=== test failure: ") ($ VSub_Name "$file") (" ==="))}
                                  ]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_GreatAnd
                                      fd: -1
                                      arg_word: {(2)}
                                      spids: [1589]
                                    )
                                  ]
                                )
                                (SimpleCommand
                                  words: [{(cat)} {(DQ ($ VSub_Name "$file"))}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_GreatAnd
                                      fd: -1
                                      arg_word: {(2)}
                                      spids: [1599]
                                    )
                                  ]
                                )
                              ]
                              spids: [1578 1603]
                            )
                        )
                      ]
                      negated: False
                    )
                    (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
                  ]
                  spids: [1539]
                )
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [1496]
        )
      spids: [1492 1495]
    )
    (FuncDef
      name: _submv
      body: 
        (BraceGroup
          children: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_Local
                  pairs: [(assign_pair lhs:(LhsName name:path) op:Equal spids:[1625])]
                  spids: [1623]
                )
              terminator: <Op_Semi ";">
            )
            (ForEach
              iter_name: path
              iter_words: [{(DQ ($ VSub_At "$@"))}]
              do_arg_iter: False
              body: 
                (DoGroup
                  children: [
                    (C {(mkdir)} {(-p)} 
                      {
                        (DQ ($ VSub_Name "$subpkgdir") (/) 
                          (BracedVarSub
                            token: <VSub_Name path>
                            suffix_op: (StringUnary op_id:VOp1_Percent arg_word:{(Lit_Slash /) ("*")})
                            spids: [1649 1654]
                          )
                        )
                      }
                    )
                    (C {(mv)} {(DQ ($ VSub_Name "$path"))} 
                      {(DQ ($ VSub_Name "$subpkgdir") (/) ($ VSub_Name "$path"))}
                    )
                  ]
                  spids: [1639 1671]
                )
              spids: [1633 1637]
            )
          ]
          spids: [1620]
        )
      spids: [1616 1619]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
"ad35c27ea55b18005ea61b49d6994718df86519b3f99addd0ecb17ece1f1c34764eb5194f8961c45cfa75703d810baf54433f8538cfd43a70bd908e1e5878df9  postgresql-9.6.5.tar.bz2\n"
                ) 
                (
"0b88eee78380ed6cf543c851ac1cea5fc50bb6ef1bb51e03694003f43d2bf4e117ff06657f958d0e9c00ace3b8a6bab6ed0bd017d23f80cfd203dab33da81d46  initdb.patch\n"
                ) 
                (
"5f9d8bb4957194069d01af8ab3abc6d4d83a7e7f8bd7ebe1caae5361d621a3e58f91b14b952958138a794e0a80bc154fbb7e3e78d211e2a95b9b7901335de854  perl-rpath.patch\n"
                ) 
                (
"8439a6fdfdea0a4867daeb8bc23d6c825f30c00d91d4c39f48653f5ee77341f23282ce03a77aad94b5369700f11d2cb28d5aee360e59138352a9ab331a9f9d0f  conf-unix_socket_directories.patch\n"
                ) 
                (
"224e80f9e62843fd248e625abdd0d9fe477729ff3f9a64fc5c86dd37bb7176d3504107fbed7ce578e3a1db7f60b8cf2abf5fe4862c81f76b6d026e29ca495cfc  postgresql.initd\n"
                ) 
                (
"a6d9cba5c7270484b3a22083b2b37742faefb01b6643040050c92235840c601b2e206ebda32804937b729c6cf42c79a558b921900e52fc420df2a03b5f29e1f7  postgresql.confd\n"
                ) 
                (
"f5a1cba051e7d846c2d16703514601cb25729ed96b677c9bd0c199d64552120a8b14b238af01917fdb87106681e12dee6fff7447558155ba273e4f96be5e2892  pg-restore.initd\n"
                ) 
                (
"c14a5684e914abb3b0ee71bbf15eed71a9264deacaa404a6e3af6bfc330d93e7598624d0ed11a94263106cc660f7f54c8ff57e759033cf606a795f69ff6c1c7c  pg-restore.confd\n"
                ) 
                (
"5c9bfd9e295dcf678298bf0aa974347a7c311d6e7c2aa76a6920fcb751d01fd1ab77abbec11f3c672f927ad9deaa88e04e370c0b5cd1b60087554c474b748731  pltcl_create_tables.sql"
                )
              )
            }
          spids: [1676]
        )
      ]
      spids: [1676]
    )
  ]
)