(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(psad)} spids:[6])]
      spids: [6]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(2.4.3)} spids:[9])]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(1)} spids:[12])]
      spids: [12]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:pkgdesc)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'3 lightweight system daemons that analyze iptables log messages to detect port scans and other suspicious traffic'
                )
              )
            }
          spids: [15]
        )
      ]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:url)
          op: Equal
          rhs: {(DQ ('http://cipherdyne.org/psad/'))}
          spids: [20]
        )
      ]
      spids: [20]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[25])]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (GPL))} spids:[30])]
      spids: [30]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:depends)
          op: Equal
          rhs: 
            {
              (DQ ('perl iptables ip6tables ssmtp mailx psmisc perl-bit-vector\n') 
                ('\tperl-date-calc perl-iptables-chainmgr perl-iptables-parse perl-net-ipv4addr\n') ('\tperl-unix-syslog net-tools whois')
              )
            }
          spids: [35]
        )
      ]
      spids: [35]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:subpackages)
          op: Equal
          rhs: {(DQ ($ VSub_Name '$pkgname') (-doc))}
          spids: [42]
        )
      ]
      spids: [42]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:source)
          op: Equal
          rhs: 
            {
              (DQ ('http://cipherdyne.org/psad/download/') ($ VSub_Name '$pkgname') (-nodeps-) 
                ($ VSub_Name '$pkgver') ('.tar.gz\n') ('\tpsad.initd\n') ('\tpsad.confd')
              )
            }
          spids: [48]
        )
      ]
      spids: [48]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:builddir)
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name '$srcdir') (/) ($ VSub_Name '$pkgname') (-nodeps-) ($ VSub_Name '$pkgver'))
            }
          spids: [59]
        )
      ]
      spids: [59]
    )
    (FuncDef
      name: build
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name '$builddir'))})
            (AndOr
              children: [
                (C {(sed)} {(-e)} {(DQ ("s|'/usr/sbin'|'") ($ VSub_Name '$pkgdir') ("/usr/sbin'|"))} 
                  {(-e)} {(DQ ("s|'/usr/bin'|'") ($ VSub_Name '$pkgdir') ("/usr/bin'|"))} {(-e)} 
                  {
                    (DQ ('s|my ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('mpath = ') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (/usr/share/man/man) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) (section) 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (';|my ') (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) ('mpath = ') 
                      (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$pkgdir') (/usr/share/man/man) (EscapedLiteralPart token:<Lit_EscapedChar '\\$'>) 
                      (section) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (';|')
                    )
                  } {(-i)} {(./install.pl)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(sed)} {(-e)} {(DQ ('s|/var/log/psad|') ($ VSub_Name '$pkgdir') ('&|'))} {(-e)} 
                  {(DQ ('s|/var/run/psad|') ($ VSub_Name '$pkgdir') ('/run/psad|'))} {(-e)} {(DQ ('s|/var/lib/psad|') ($ VSub_Name '$pkgdir') ('&|'))} {(-e)} 
                  {(DQ ('s|/usr/lib/psad|') ($ VSub_Name '$pkgdir') ('&|'))} {(-e)} {(DQ ('s|/etc/psad|') ($ VSub_Name '$pkgdir') ('&|'))} {(-e)} 
                  {(DQ ('s|/usr/bin/whois_psad|') ($ VSub_Name '$pkgdir') ('/usr/bin/whois|'))} {(-e)} {(DQ ('s|/usr/sbin/fwcheck_psad|') ($ VSub_Name '$pkgdir') ('&|'))} {(-e)} 
                  {(DQ ('s|/usr/sbin/kmsgsd|') ($ VSub_Name '$pkgdir') ('&|'))} {(-e)} {(DQ ('s|/usr/sbin/psad|') ($ VSub_Name '$pkgdir') ('&|'))} {(-i)} {(./psad.conf)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(sed)} {(-e)} {(SQ <'s|/bin/mail;|/usr/bin/mail;|g'>)} {(-i)} {(./psad.conf)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:start)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(sed)} {(-n)} {(SQ <'/if ($init_dir and &is_root()) {/='>)} 
                                {(./install.pl)}
                              )
                            ]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [286 296]
                      )
                    }
                  spids: [285]
                )
              ]
              spids: [283]
            )
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair
                  lhs: (LhsName name:end)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [(C {(expr)} {($ VSub_Name '$start')} {(Lit_Other '+')} {(7)})]
                          )
                        left_token: <Left_CommandSub '$('>
                        spids: [302 310]
                      )
                    }
                  spids: [301]
                )
              ]
              spids: [299]
            )
            (AndOr
              children: [
                (C {(sed)} {(SQ ) ($ VSub_Name '$start') (SQ <','>) ($ VSub_Name '$end') (SQ <d>)} 
                  {(./install.pl)} {(-i)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (SimpleCommand
              words: [{(cat)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: -1
                  arg_word: {(./install.answers)}
                  spids: [348]
                )
                (HereDoc
                  op_id: Redir_DLessDash
                  fd: -1
                  body: 
                    {
                      (DQ 
                        (
'Would you like to merge the config from the existing psad installation: y;\n'
                        ) ('Preserve any user modfications in etc psad signatures: y;\n') 
                        ('Preserve any user modfications in etc psad icmp_types: y;\n') ('Preserve any user modfications in etc psad icmp6_types: y;\n') 
                        ('Preserve any user modfications in etc psad posf: y;\n') ('Preserve any user modfications in etc psad auto_dl: y;\n') 
                        ('Preserve any user modfications in etc psad snort_rule_dl: y;\n') ('Preserve any user modfications in etc psad pf os: y;\n') 
                        ('Preserve any user modfications in etc psad ip_options: y;\n') ('Would you like alerts sent to a different address: y;\n') ('Email addresses: root@localhost;\n') 
                        (
'Would you like psad to only parse specific strings in iptables messages: n;\n'
                        ) ('First is it ok to leave the HOME_NET setting as any: y;\n') 
                        ('Would you like to enable DShield alerts: n;\n') 
                        (
'Would you like to install the latest signatures from http www cipherdyne org psad signatures: n;\n'
                        ) ('Enable psad at boot time:') (EscapedLiteralPart token:<Lit_EscapedChar '\\t'>) (' n;\n')
                      )
                    }
                  do_expansion: True
                  here_end: EOF
                  was_filled: True
                  spids: [351]
                )
              ]
            )
          ]
          spids: [73]
        )
      spids: [69 72]
    )
    (FuncDef
      name: package
      body: 
        (BraceGroup
          children: [
            (C {(cd)} {(DQ ($ VSub_Name '$builddir'))})
            (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name '$pkgdir')) (/etc/psad)} 
              {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin)} {(DQ ($ VSub_Name '$pkgdir')) (/usr/sbin)} {(DQ ($ VSub_Name '$pkgdir')) (/usr/share/man/man8)} 
              {(DQ ($ VSub_Name '$pkgdir')) (/var/lib/psad)} {(DQ ($ VSub_Name '$pkgdir')) (/var/log/psad)}
            )
            (AndOr
              children: [
                (C {(ln)} {(-s)} {(/bin/busybox)} {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/whois)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(./install.pl)} {(--runlevel)} {(1)} {(--Use-answers)} {(--Skip-mod-install)})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (C {(rm)} {(-Rf)} {(DQ ($ VSub_Name '$pkgdir')) (/var/run)})
            (C {(chmod)} {(-R)} {(o) (Lit_Other '+') (r)} {(DQ ($ VSub_Name '$pkgdir')) (/etc/psad)})
            (C {(chmod)} {(-R)} {(o) (Lit_Other '+') (r)} 
              {(DQ ($ VSub_Name '$pkgdir')) (/usr/sbin/) (Lit_Other '*')}
            )
            (C {(chmod)} {(0700)} {(DQ ($ VSub_Name '$pkgdir')) (/var/lib/psad)})
            (C {(rm)} {(-f)} {(DQ ($ VSub_Name '$pkgdir')) (/usr/bin/whois)})
            (AndOr
              children: [
                (C {(sed)} {(DQ ('s|') ($ VSub_Name '$pkgdir') ('||'))} {(-i)} 
                  {(DQ ($ VSub_Name '$pkgdir')) (/etc/psad/psad.conf)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(sed)} {(DQ ('s|') ($ VSub_Name '$pkgdir') ('||'))} {(-i)} 
                  {(DQ ($ VSub_Name '$pkgdir')) (/var/log/psad/install.log)}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(install)} {(-m755)} {(-D)} 
                  {(DQ ($ VSub_Name '$srcdir')) (/) ($ VSub_Name '$pkgname') (.initd)} {(DQ ($ VSub_Name '$pkgdir')) (/etc/init.d/) ($ VSub_Name '$pkgname')}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(install)} {(-m644)} {(-D)} 
                  {(DQ ($ VSub_Name '$srcdir')) (/) ($ VSub_Name '$pkgname') (.confd)} {(DQ ($ VSub_Name '$pkgdir')) (/etc/conf.d/) ($ VSub_Name '$pkgname')}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [380]
        )
      spids: [376 379]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:md5sums)
          op: Equal
          rhs: 
            {
              (DQ ('644e6094c5142f54cdca6e7429825307  psad-nodeps-2.4.3.tar.gz\n') 
                ('1b061d02d75d09537ef25e588c09583f  psad.initd\n') ('bc07efebb41cc23c4be129bbbacc874b  psad.confd')
              )
            }
          spids: [662]
        )
      ]
      spids: [662]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha256sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'c5a90f4c284c0eda3b24c5fcd9d0fd0e464ad8bf0fe7559ac6ecc41bb81e0b65  psad-nodeps-2.4.3.tar.gz\n'
                ) ('872152efdd6b5774ed0a11a44156ca5c4707af31ac4e998cfd20a3f47a81fefa  psad.initd\n') 
                ('74c72225fa37c367a458321b737050cacaf262f32b0cc13babc54468ff1988b9  psad.confd')
              )
            }
          spids: [669]
        )
      ]
      spids: [669]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:sha512sums)
          op: Equal
          rhs: 
            {
              (DQ 
                (
'9234a2ed534f571fb46d7566313802813076b9a3f2011695288b7b1a5c4f3f22cefc6ea99e087cbeb1072d61c278c11a28b5aaa4e4024d8bb459dda4873840d2  psad-nodeps-2.4.3.tar.gz\n'
                ) 
                (
'ec709b1ba1df36dad5c1c2cfb5fc45765ac4ccdd6fc7a3e2f23c972c7dfb8e5910aeb1ba42437abd0d2c766bb99bcb790301c7b8ba3ee7e6593dcae13e9efc3a  psad.initd\n'
                ) 
                (
'a80666f59356cc6157a9f5dca132991d4f1e0afda8f673d602de2557219d5521bec9ae148330e98d9483175d14d96e4cc2ccd11541d8b187b0e47f44ba4ada54  psad.confd'
                )
              )
            }
          spids: [676]
        )
      ]
      spids: [676]
    )
  ]
)