(CommandList
  children: [
    (C {(set)} {(-e)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:PATH)
          op: Equal
          rhs: {($ VSub_Name '$PATH') (Lit_Other ':') (/usr/local/bin)}
          spids: [9]
        )
      ]
      spids: [9]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:XBIN) op:Equal rhs:{(usr/xbin)} spids:[15])]
      spids: [15]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:SRC) op:Equal rhs:{(src)} spids:[18])]
      spids: [18]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:TMPKB) op:Equal rhs:{(32000)} spids:[25])]
      spids: [25]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:PACKAGEDIR)
          op: Equal
          rhs: {(/usr/bigports/Packages)}
          spids: [29]
        )
      ]
      spids: [29]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:PACKAGESOURCEDIR)
          op: Equal
          rhs: {(/usr/bigports/Sources)}
          spids: [32]
        )
      ]
      spids: [32]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:PACKAGELIST)
          op: Equal
          rhs: {(packages.install)}
          spids: [38]
        )
      ]
      spids: [38]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:PACKAGESOURCELIST)
          op: Equal
          rhs: {(package_sources.install)}
          spids: [44]
        )
      ]
      spids: [44]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:secs)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: (CommandList children:[(C {(expr)} {(32)} {(SQ <'*'>)} {(64)})])
                left_token: <Left_Backtick '`'>
                spids: [48 58]
              )
            }
          spids: [47]
        )
      ]
      spids: [47]
    )
    (C {(export)} {(Lit_VarLike 'SHELL=') (/bin/sh)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:TRUNK)
          op: Equal
          rhs: {(https) (Lit_Other ':') (//gforge.cs.vu.nl/svn/minix/trunk)}
          spids: [69]
        )
      ]
      spids: [69]
    )
    (FuncDef
      name: make_hdimage
      body: 
        (BraceGroup
          children: [
            (C {(dd)} {(Lit_VarLike 'if=') ($ VSub_Name '$TMPDISK1')} {(Lit_VarLike 'of=') (usrimage)} 
              {(Lit_VarLike 'bs=') ($ VSub_Name '$BS')} {(Lit_VarLike 'count=') ($ VSub_Name '$USRBLOCKS')}
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:rootsize)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: (CommandList children:[(C {(stat)} {(-size)} {(rootimage)})])
                        left_token: <Left_Backtick '`'>
                        spids: [99 105]
                      )
                    }
                  spids: [98]
                )
              ]
              spids: [98]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:usrsize)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: (CommandList children:[(C {(stat)} {(-size)} {(usrimage)})])
                        left_token: <Left_Backtick '`'>
                        spids: [109 115]
                      )
                    }
                  spids: [108]
                )
              ]
              spids: [108]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:rootsects)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [(C {(expr)} {($ VSub_Name '$rootsize')} {(/)} {(512)})]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [120 128]
                      )
                    }
                  spids: [119]
                )
              ]
              spids: [119]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:usrsects)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [(C {(expr)} {($ VSub_Name '$usrsize')} {(/)} {(512)})]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [132 140]
                      )
                    }
                  spids: [131]
                )
              ]
              spids: [131]
            )
            (SimpleCommand
              words: [{(dd)} {(Lit_VarLike 'count=') (2)}]
              redirects: [
                (Redir
                  op_id: Redir_Less
                  fd: 16777215
                  arg_word: {(/dev/zero)}
                  spids: [150]
                )
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {(tmpimage)}
                  spids: [154]
                )
              ]
            )
            (C {(partition)} {(-fm)} {(tmpimage)} {(2)} 
              {(81) (Lit_Other ':') ($ VSub_Name '$rootsects') (Lit_Other '*')} {(0) (Lit_Other ':') (0)} {(81) (Lit_Other ':') ($ VSub_Name '$usrsects')}
            )
            (C {(installboot)} {(-m)} {(tmpimage)} {(/usr/mdec/masterboot)})
            (SimpleCommand
              words: [{(dd)} {(Lit_VarLike 'count=') (1)}]
              redirects: [
                (Redir
                  op_id: Redir_Less
                  fd: 16777215
                  arg_word: {(tmpimage)}
                  spids: [194]
                )
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {(subpart)}
                  spids: [198]
                )
              ]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:primsects)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(expr)} {(1)} {(Lit_Other '+')} {($ VSub_Name '$rootsects')} 
                                {(Lit_Other '+')} {($ VSub_Name '$usrsects')}
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [208 220]
                      )
                    }
                  spids: [207]
                )
              ]
              spids: [207]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:cyl)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(expr)} {(SQ <'('>)} {($ VSub_Name '$primsects')} {(SQ <')'>)} {(/)} 
                                {($ VSub_Name '$secs')} {(Lit_Other '+')} {(1)}
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [224 244]
                      )
                    }
                  spids: [223]
                )
              ]
              spids: [223]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:padsects)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (C {(expr)} {($ VSub_Name '$cyl')} 
                                {(EscapedLiteralPart token:<Lit_EscapedChar '\\*'>)} {($ VSub_Name '$secs')} {(-)} {(1)} {(-)} {($ VSub_Name '$primsects')}
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [248 264]
                      )
                    }
                  spids: [247]
                )
              ]
              spids: [247]
            )
            (BraceGroup
              children: [
                (SimpleCommand
                  words: [{(dd)} {(Lit_VarLike 'count=') (1)}]
                  redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/zero)} spids:[272])]
                )
                (C {(cat)} {(subpart)})
                (C {(cat)} {(rootimage)})
                (C {(cat)} {(usrimage)})
                (SimpleCommand
                  words: [{(dd)} {(Lit_VarLike 'count=') ($ VSub_Name '$padsects')}]
                  redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/zero)} spids:[297])]
                )
              ]
              redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(hdimage)} spids:[307])]
              spids: [268]
            )
            (C {(partition)} {(-m)} {(hdimage)} 
              {(81) (Lit_Other ':') 
                (CommandSubPart
                  command_list: 
                    (CommandList
                      children: [
                        (C {(expr)} {($ VSub_Name '$primsects')} {(Lit_Other '+')} 
                          {($ VSub_Name '$padsects')}
                        )
                      ]
                    )
                  left_token: <Left_Backtick '`'>
                  spids: [320 328]
                ) (Lit_Other '*')
              }
            )
            (C {(installboot)} {(-m)} {(hdimage)} {(/usr/mdec/masterboot)})
          ]
          spids: [79]
        )
      spids: [75 78]
    )
    (FuncDef
      name: retrieve
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:dir)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [350]
                )
              ]
              spids: [350]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:list)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: (CommandList children:[(C {(pwd)})])
                        left_token: <Left_Backtick '`'>
                        spids: [355 357]
                      ) (/) ($ VSub_Number '$2')
                    }
                  spids: [354]
                )
              ]
              spids: [354]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:url)
                  op: Equal
                  rhs: {(http) (Lit_Other ':') (//www.minix3.org/) ($ VSub_Number '$3')}
                  spids: [362]
                )
              ]
              spids: [362]
            )
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:BIGPORTS) op:Equal rhs:{(bigports)} spids:[368])]
              spids: [368]
            )
            (Subshell
              child: 
                (CommandList
                  children: [
                    (AndOr
                      ops: [Op_DPipe]
                      children: [
                        (C {(cd)} {($ VSub_Name '$dir')})
                        (ControlFlow
                          token: <ControlFlow_Exit exit>
                          arg_word: {(1)}
                        )
                      ]
                    )
                    (C {(echo)} 
                      {
                        (DQ (' * Updating ') ($ VSub_Name '$dir') ('\n') ('   from ') 
                          ($ VSub_Name '$url') ('\n') ('   with ') ($ VSub_Name '$list')
                        )
                      }
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:files)
                          op: Equal
                          rhs: 
                            {
                              (CommandSubPart
                                command_list: 
                                  (CommandList
                                    children: [
                                      (SimpleCommand
                                        words: [
                                          {(awk)}
                                          {(SQ <'{ print "'>) ($ VSub_Name '$url') 
                                            (SQ <'/" $1 ".tar.bz2" }'>)
                                          }
                                        ]
                                        redirects: [
                                          (Redir
                                            op_id: Redir_Less
                                            fd: 16777215
                                            arg_word: {($ VSub_Name '$list')}
                                            spids: [405]
                                          )
                                        ]
                                      )
                                    ]
                                  )
                                left_token: <Left_Backtick '`'>
                                spids: [402 415]
                              )
                            }
                          spids: [401]
                        )
                      ]
                      spids: [401]
                    )
                    (AndOr
                      ops: [Op_DPipe]
                      children: [
                        (C {(wget)} {(-c)} {($ VSub_Name '$url') (/List)} {($ VSub_Name '$files')})
                        (C {(true)})
                      ]
                    )
                  ]
                )
              spids: [372 432]
            )
          ]
          spids: [347]
        )
      spids: [343 346]
    )
    (FuncDef
      name: hdemu_root_changes
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$RELEASEDIR') (/usr/bin/installboot)} {(-d)} {($ VSub_Name '$TMPDISK3')} 
              {($ VSub_Name '$RELEASEDIR') (/usr/mdec/bootblock)} {(boot/boot)}
            )
            (Pipeline
              children: [
                (C {(echo)} 
                  {
                    (SQ <'bootcd=2\n'> <'disable=inet\n'> <'bios_wini=yes\n'> <'bios_remap_first=1\n'> 
                      <'ramimagedev=c0d7p0s0\n'> <'bootbig(1, Regular MINIX 3) { image=/boot/image_big; boot }\n'> 
                      <'main() { trap 10000 boot ; menu; }\n'> <save>
                    )
                  }
                )
                (C {($ VSub_Name '$RELEASEDIR') (/usr/bin/edparams)} {($ VSub_Name '$TMPDISK3')})
              ]
              negated: F
            )
            (SimpleCommand
              words: [
                {(echo)}
                {(SQ <'root=/dev/c0d7p0s0\n'> <'usr=/dev/c0d7p0s2\n'> <'usr_roflag="-r"'>)}
              ]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$RELEASEDIR') (/etc/fstab)}
                  spids: [491]
                )
              ]
            )
          ]
          spids: [441]
        )
      spids: [437 440]
    )
    (FuncDef
      name: usb_root_changes
      body: 
        (BraceGroup
          children: [
            (C {($ VSub_Name '$RELEASEDIR') (/usr/bin/installboot)} {(-d)} {($ VSub_Name '$TMPDISK3')} 
              {($ VSub_Name '$RELEASEDIR') (/usr/mdec/bootblock)} {(boot/boot)}
            )
            (Pipeline
              children: [
                (C {(echo)} 
                  {(SQ <'bios_wini=yes\n'> <'bios_remap_first=1\n'> <'rootdev=c0d7p0s0\n'> <save>)}
                )
                (C {($ VSub_Name '$RELEASEDIR') (/usr/bin/edparams)} {($ VSub_Name '$TMPDISK3')})
              ]
              negated: F
            )
            (SimpleCommand
              words: [{(echo)} {(SQ <'root=/dev/c0d7p0s0\n'> <'usr=/dev/c0d7p0s2\n'>)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$RELEASEDIR') (/etc/fstab)}
                  spids: [548]
                )
              ]
            )
          ]
          spids: [503]
        )
      spids: [499 502]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:RELEASEDIR) op:Equal rhs:{(/usr/r)} spids:[556])]
      spids: [556]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:RELEASEPACKAGE)
          op: Equal
          rhs: {(${ VSub_Name RELEASEDIR) (/usr/install/packages)}
          spids: [559]
        )
      ]
      spids: [559]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:RELEASEPACKAGESOURCES)
          op: Equal
          rhs: {(${ VSub_Name RELEASEDIR) (/usr/install/package-sources)}
          spids: [565]
        )
      ]
      spids: [565]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:IMAGE) op:Equal rhs:{(../boot/boot)} spids:[571])]
      spids: [571]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:ROOTIMAGE) op:Equal rhs:{(rootimage)} spids:[574])]
      spids: [574]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:CDFILES)
          op: Equal
          rhs: {(/usr/tmp/cdreleasefiles)}
          spids: [577]
        )
      ]
      spids: [577]
    )
    (SimpleCommand
      words: [{(sh)} {(tell_config)} {(OS_RELEASE)} {(.)} {(OS_VERSION)}]
      redirects: [
        (Redir
          op_id: Redir_Great
          fd: 16777215
          arg_word: {(/tmp/rel.) ($ VSub_Dollar '$$')}
          spids: [590]
        )
      ]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:version_pretty)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (SimpleCommand
                        words: [{(sed)} {(SQ <'s/["      ]//g;/^$/d'>)}]
                        redirects: [
                          (Redir
                            op_id: Redir_Less
                            fd: 16777215
                            arg_word: {(/tmp/rel.) ($ VSub_Dollar '$$')}
                            spids: [602]
                          )
                        ]
                      )
                    ]
                  )
                left_token: <Left_Backtick '`'>
                spids: [595 605]
              )
            }
          spids: [594]
        )
      ]
      spids: [594]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:version)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Pipeline
                        children: [
                          (SimpleCommand
                            words: [{(sed)} {(SQ <'s/["      ]//g;/^$/d'>)}]
                            redirects: [
                              (Redir
                                op_id: Redir_Less
                                fd: 16777215
                                arg_word: {(/tmp/rel.) ($ VSub_Dollar '$$')}
                                spids: [615]
                              )
                            ]
                          )
                          (C {(tr)} {(.)} {(_)})
                        ]
                        negated: F
                      )
                    ]
                  )
                left_token: <Left_Backtick '`'>
                spids: [608 626]
              )
            }
          spids: [607]
        )
      ]
      spids: [607]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:IMG_BASE)
          op: Equal
          rhs: {(minix) (${ VSub_Name version) (_ide)}
          spids: [628]
        )
      ]
      spids: [628]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:BS) op:Equal rhs:{(4096)} spids:[635])]
      spids: [635]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:HDEMU) op:Equal rhs:{(0)} spids:[639])]
      spids: [639]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:COPY) op:Equal rhs:{(0)} spids:[642])]
      spids: [642]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:SVNREV) op:Equal rhs:{(DQ )} spids:[645])]
      spids: [645]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:REVTAG) op:Equal rhs:{(DQ )} spids:[649])]
      spids: [649]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:PACKAGES) op:Equal rhs:{(1)} spids:[653])]
      spids: [653]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:FILENAMEOUT) op:Equal rhs:{(DQ )} spids:[657])]
      spids: [657]
    )
    (While
      cond: [(C {(getopts)} {(DQ ('s:pchu?r:f:'))} {(c)})]
      body: 
        (DoGroup
          children: [
            (Case
              to_match: {(DQ ($ VSub_Name '$c'))}
              arms: [
                (case_arm
                  pat_list: [{(EscapedLiteralPart token:<Lit_EscapedChar '\\?'>)}]
                  action: [
                    (SimpleCommand
                      words: [
                        {(echo)}
                        {
                          (DQ ('Usage: ') ($ VSub_Number '$0') 
                            (' [-p] [-c] [-h] [-r <tag>] [-u] [-f <filename>] [-s <username>]')
                          )
                        }
                      ]
                      redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[696])]
                    )
                    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
                  ]
                  spids: [684 685 705 16777215]
                )
                (case_arm
                  pat_list: [{(h)}]
                  action: [
                    (C {(echo)} {(DQ (' * Making HD image'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:IMG_BASE)
                          op: Equal
                          rhs: {(minix) (${ VSub_Name version) (_bios)}
                          spids: [719]
                        )
                      ]
                      spids: [719]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:HDEMU) op:Equal rhs:{(1)} spids:[727])]
                      spids: [727]
                    )
                  ]
                  spids: [708 709 731 16777215]
                )
                (case_arm
                  pat_list: [{(c)}]
                  action: [
                    (C {(echo)} {(DQ (' * Copying, not SVN'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:COPY) op:Equal rhs:{(1)} spids:[745])]
                      spids: [745]
                    )
                  ]
                  spids: [734 735 749 16777215]
                )
                (case_arm
                  pat_list: [{(p)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:PACKAGES)
                          op: Equal
                          rhs: {(0)}
                          spids: [756]
                        )
                      ]
                      spids: [756]
                    )
                  ]
                  spids: [752 753 760 16777215]
                )
                (case_arm
                  pat_list: [{(r)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:SVNREV)
                          op: Equal
                          rhs: {(-r) ($ VSub_Name '$OPTARG')}
                          spids: [768]
                        )
                      ]
                      spids: [768]
                    )
                  ]
                  spids: [763 764 773 16777215]
                )
                (case_arm
                  pat_list: [{(u)}]
                  action: [
                    (C {(echo)} {(DQ (' * Making live USB-stick image'))})
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:IMG_BASE)
                          op: Equal
                          rhs: {(minix) (${ VSub_Name version) (_usb)}
                          spids: [787]
                        )
                      ]
                      spids: [787]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:HDEMU) op:Equal rhs:{(1)} spids:[795])]
                      spids: [795]
                    )
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:USB) op:Equal rhs:{(1)} spids:[799])]
                      spids: [799]
                    )
                  ]
                  spids: [776 777 803 16777215]
                )
                (case_arm
                  pat_list: [{(f)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:FILENAMEOUT)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$OPTARG'))}
                          spids: [810]
                        )
                      ]
                      spids: [810]
                    )
                  ]
                  spids: [806 807 816 16777215]
                )
                (case_arm
                  pat_list: [{(s)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:USERNAME)
                          op: Equal
                          rhs: {(DQ ('--username=') ($ VSub_Name '$OPTARG'))}
                          spids: [822]
                        )
                      ]
                      spids: [822]
                    )
                  ]
                  spids: [819 820 829 16777215]
                )
              ]
              spids: [675 681 832]
            )
          ]
          spids: [672 834]
        )
    )
    (If
      arms: [
        (if_arm
          cond: [(C {(Lit_Other '[')} {(KW_Bang '!')} {(DQ ($ VSub_Name '$USRMB'))} {(Lit_Other ']')})]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:USRMB) op:Equal rhs:{(600)} spids:[851])]
              spids: [851]
            )
          ]
          spids: [16777215 849]
        )
      ]
      spids: [16777215 854]
    )
    (If
      arms: [
        (if_arm
          cond: [(C {(Lit_Other '[')} {($ VSub_Name '$PACKAGES')} {(-ne)} {(0)} {(Lit_Other ']')})]
          action: [
            (AndOr
              ops: [Op_DPipe]
              children: [(C {(mkdir)} {(-p)} {($ VSub_Name '$PACKAGEDIR')}) (C {(true)})]
            )
            (AndOr
              ops: [Op_DPipe]
              children: [(C {(mkdir)} {(-p)} {($ VSub_Name '$PACKAGESOURCEDIR')}) (C {(true)})]
            )
            (C {(rm)} {(-f)} {($ VSub_Name '$PACKAGEDIR') (/List)})
            (C {(retrieve)} {($ VSub_Name '$PACKAGEDIR')} {($ VSub_Name '$PACKAGELIST')} 
              {(packages/) 
                (CommandSubPart
                  command_list: (CommandList children:[(C {(uname)} {(-p)})])
                  left_token: <Left_Backtick '`'>
                  spids: [908 912]
                ) (/) 
                (CommandSubPart
                  command_list: (CommandList children:[(C {(uname)} {(-r)})])
                  left_token: <Left_Backtick '`'>
                  spids: [914 918]
                ) (.) 
                (CommandSubPart
                  command_list: (CommandList children:[(C {(uname)} {(-v)})])
                  left_token: <Left_Backtick '`'>
                  spids: [920 924]
                )
              }
            )
            (C {(retrieve)} {($ VSub_Name '$PACKAGESOURCEDIR')} {($ VSub_Name '$PACKAGESOURCELIST')} 
              {(software)}
            )
          ]
          spids: [16777215 869]
        )
      ]
      spids: [16777215 935]
    )
    (C {(echo)} {($ VSub_Name '$USRMB')} {(MB)})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:USRKB)
          op: Equal
          rhs: 
            {
              (ArithSubPart
                anode: 
                  (ArithBinary
                    op_id: Arith_Star
                    left: (ArithWord w:{($ VSub_Name '$USRMB')})
                    right: (ArithWord w:{(Lit_Digits 1024)})
                  )
                spids: [946 951]
              )
            }
          spids: [945]
        )
      ]
      spids: [945]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:USRBLOCKS)
          op: Equal
          rhs: 
            {
              (ArithSubPart
                anode: 
                  (ArithBinary
                    op_id: Arith_Slash
                    left: 
                      (ArithBinary
                        op_id: Arith_Star
                        left: 
                          (ArithBinary
                            op_id: Arith_Star
                            left: (ArithWord w:{($ VSub_Name '$USRMB')})
                            right: (ArithWord w:{(Lit_Digits 1024)})
                          )
                        right: (ArithWord w:{(Lit_Digits 1024)})
                      )
                    right: (ArithWord w:{($ VSub_Name '$BS')})
                  )
                spids: [954 969]
              )
            }
          spids: [953]
        )
      ]
      spids: [953]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:USRSECTS)
          op: Equal
          rhs: 
            {
              (ArithSubPart
                anode: 
                  (ArithBinary
                    op_id: Arith_Star
                    left: 
                      (ArithBinary
                        op_id: Arith_Star
                        left: (ArithWord w:{($ VSub_Name '$USRMB')})
                        right: (ArithWord w:{(Lit_Digits 1024)})
                      )
                    right: (ArithWord w:{(Lit_Digits 2)})
                  )
                spids: [972 983]
              )
            }
          spids: [971]
        )
      ]
      spids: [971]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:ROOTKB) op:Equal rhs:{(8192)} spids:[985])]
      spids: [985]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:ROOTSECTS)
          op: Equal
          rhs: 
            {
              (ArithSubPart
                anode: 
                  (ArithBinary
                    op_id: Arith_Star
                    left: (ArithWord w:{($ VSub_Name '$ROOTKB')})
                    right: (ArithWord w:{(Lit_Digits 2)})
                  )
                spids: [989 996]
              )
            }
          spids: [988]
        )
      ]
      spids: [988]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:ROOTBLOCKS)
          op: Equal
          rhs: 
            {
              (ArithSubPart
                anode: 
                  (ArithBinary
                    op_id: Arith_Slash
                    left: 
                      (ArithBinary
                        op_id: Arith_Star
                        left: (ArithWord w:{($ VSub_Name '$ROOTKB')})
                        right: (ArithWord w:{(Lit_Digits 1024)})
                      )
                    right: (ArithWord w:{($ VSub_Name '$BS')})
                  )
                spids: [999 1010]
              )
            }
          spids: [998]
        )
      ]
      spids: [998]
    )
    (If
      arms: [
        (if_arm
          cond: [(C {(Lit_Other '[')} {(DQ ($ VSub_Name '$COPY'))} {(-ne)} {(1)} {(Lit_Other ']')})]
          action: [(C {(echo)} {(DQ ('Note: this script wants to do svn operations.'))})]
          spids: [16777215 1027]
        )
      ]
      spids: [16777215 1036]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:TMPDISK1) op:Equal rhs:{(/dev/ram0)} spids:[1039])]
      spids: [1039]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:TMPDISK2) op:Equal rhs:{(/dev/ram1)} spids:[1042])]
      spids: [1042]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:TMPDISK3) op:Equal rhs:{(/dev/ram2)} spids:[1045])]
      spids: [1045]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (C {(Lit_Other '[')} {(KW_Bang '!')} {(-b)} {($ VSub_Name '$TMPDISK1')} {(-o)} {(KW_Bang '!')} 
              {(-b)} {($ VSub_Name '$TMPDISK2')} {(-o)} {(KW_Bang '!')} {($ VSub_Name '$TMPDISK3')} {(Lit_Other ']')}
            )
          ]
          action: [
            (C {(echo)} 
              {
                (DQ ($ VSub_Name '$TMPDISK1') (', ') ($ VSub_Name '$TMPDISK2') (' or ') 
                  ($ VSub_Name '$TMPDISK3') (' is not a block device..')
                )
              }
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
          spids: [16777215 1075]
        )
      ]
      spids: [16777215 1093]
    )
    (AndOr ops:[Op_DPipe] children:[(C {(umount)} {($ VSub_Name '$TMPDISK1')}) (C {(true)})])
    (AndOr ops:[Op_DPipe] children:[(C {(umount)} {($ VSub_Name '$TMPDISK2')}) (C {(true)})])
    (AndOr ops:[Op_DPipe] children:[(C {(umount)} {($ VSub_Name '$TMPDISK3')}) (C {(true)})])
    (C {(ramdisk)} {($ VSub_Name '$USRKB')} {($ VSub_Name '$TMPDISK1')})
    (C {(ramdisk)} {($ VSub_Name '$TMPKB')} {($ VSub_Name '$TMPDISK2')})
    (C {(ramdisk)} {($ VSub_Name '$ROOTKB')} {($ VSub_Name '$TMPDISK3')})
    (If
      arms: [
        (if_arm
          cond: [
            (C {(Lit_Other '[')} {($ VSub_Name '$TMPDISK1')} {(Lit_Other '=')} 
              {($ VSub_Name '$TMPDISK2')} {(-o)} {($ VSub_Name '$TMPDISK1')} {(Lit_Other '=')} {($ VSub_Name '$TMPDISK3')} {(-o)} 
              {($ VSub_Name '$TMPDISK2')} {(Lit_Other '=')} {($ VSub_Name '$TMPDISK3')} {(Lit_Other ']')}
            )
          ]
          action: [
            (C {(echo)} {(DQ ("Temporary devices can't be equal."))})
            (ControlFlow token:<ControlFlow_Exit exit>)
          ]
          spids: [16777215 1168]
        )
      ]
      spids: [16777215 1180]
    )
    (C {(echo)} {(DQ (' * Cleanup old files'))})
    (C {(rm)} {(-rf)} {($ VSub_Name '$RELEASEDIR')} {($ VSub_Name '$IMG')} {($ VSub_Name '$ROOTIMAGE')} 
      {($ VSub_Name '$CDFILES')} {(image) (Lit_Other '*')}
    )
    (AndOr
      ops: [Op_DPipe]
      children: [
        (C {(mkdir)} {(-p)} {($ VSub_Name '$CDFILES')})
        (ControlFlow token:<ControlFlow_Exit exit>)
      ]
    )
    (C {(mkdir)} {(-p)} {($ VSub_Name '$RELEASEDIR')})
    (AndOr
      ops: [Op_DPipe]
      children: [
        (C {(mkfs)} {(-i)} {(2000)} {(-B)} {($ VSub_Name '$BS')} {(-b)} {($ VSub_Name '$ROOTBLOCKS')} 
          {($ VSub_Name '$TMPDISK3')}
        )
        (ControlFlow token:<ControlFlow_Exit exit>)
      ]
    )
    (AndOr
      ops: [Op_DPipe]
      children: [
        (C {(mkfs)} {(-B)} {(1024)} {(-b)} {($ VSub_Name '$TMPKB')} {($ VSub_Name '$TMPDISK2')})
        (ControlFlow token:<ControlFlow_Exit exit>)
      ]
    )
    (C {(echo)} {(DQ (' * mounting ') ($ VSub_Name '$TMPDISK3') (' as ') ($ VSub_Name '$RELEASEDIR'))})
    (AndOr
      ops: [Op_DPipe]
      children: [
        (C {(mount)} {($ VSub_Name '$TMPDISK3')} {($ VSub_Name '$RELEASEDIR')})
        (ControlFlow token:<ControlFlow_Exit exit>)
      ]
    )
    (C {(mkdir)} {(-m)} {(755)} {($ VSub_Name '$RELEASEDIR') (/usr)})
    (C {(mkdir)} {(-m)} {(1777)} {($ VSub_Name '$RELEASEDIR') (/tmp)})
    (C {(mount)} {($ VSub_Name '$TMPDISK2')} {($ VSub_Name '$RELEASEDIR') (/tmp)})
    (AndOr
      ops: [Op_DPipe]
      children: [
        (C {(mkfs)} {(-B)} {($ VSub_Name '$BS')} {(-i)} {(30000)} {(-b)} {($ VSub_Name '$USRBLOCKS')} 
          {($ VSub_Name '$TMPDISK1')}
        )
        (ControlFlow token:<ControlFlow_Exit exit>)
      ]
    )
    (C {(echo)} 
      {(DQ (' * Mounting ') ($ VSub_Name '$TMPDISK1') (' as ') ($ VSub_Name '$RELEASEDIR') (/usr))}
    )
    (AndOr
      ops: [Op_DPipe]
      children: [
        (C {(mount)} {($ VSub_Name '$TMPDISK1')} {($ VSub_Name '$RELEASEDIR') (/usr)})
        (ControlFlow token:<ControlFlow_Exit exit>)
      ]
    )
    (C {(mkdir)} {(-p)} {($ VSub_Name '$RELEASEDIR') (/tmp)})
    (C {(mkdir)} {(-p)} {($ VSub_Name '$RELEASEDIR') (/usr/tmp)})
    (C {(mkdir)} {(-p)} {($ VSub_Name '$RELEASEDIR') (/) ($ VSub_Name '$XBIN')})
    (C {(mkdir)} {(-p)} {($ VSub_Name '$RELEASEDIR') (/usr/bin)})
    (C {(mkdir)} {(-p)} {($ VSub_Name '$RELEASEDIR') (/bin)})
    (C {(mkdir)} {(-p)} {($ VSub_Name '$RELEASEPACKAGE')})
    (C {(mkdir)} {(-p)} {($ VSub_Name '$RELEASEPACKAGESOURCES')})
    (C {(echo)} {(DQ (' * Transfering bootstrap dirs to ') ($ VSub_Name '$RELEASEDIR'))})
    (C {(cp)} {(-p)} {(/bin/) (Lit_Other '*')} {(/usr/bin/) (Lit_Other '*')} 
      {($ VSub_Name '$RELEASEDIR') (/) ($ VSub_Name '$XBIN')}
    )
    (C {(cp)} {(-rp)} {(/usr/lib)} {($ VSub_Name '$RELEASEDIR') (/usr)})
    (C {(cp)} {(-rp)} {(/bin/bigsh)} {(/bin/sh)} {(/bin/echo)} {($ VSub_Name '$RELEASEDIR') (/bin)})
    (C {(cp)} {(-rp)} {(/usr/bin/make)} {(/usr/bin/install)} {(/usr/bin/yacc)} {(/usr/bin/flex)} 
      {($ VSub_Name '$RELEASEDIR') (/usr/bin)}
    )
    (If
      arms: [
        (if_arm
          cond: [
            (C {(Lit_Other '[')} {(-d)} {($ VSub_Name '$PACKAGEDIR')} {(-a)} {(-d)} 
              {($ VSub_Name '$PACKAGESOURCEDIR')} {(-a)} {(-f)} {($ VSub_Name '$PACKAGELIST')} {(-a)} {(-f)} {($ VSub_Name '$PACKAGESOURCELIST')} {(-a)} 
              {($ VSub_Name '$PACKAGES')} {(-ne)} {(0)} {(Lit_Other ']')}
            )
          ]
          action: [
            (C {(echo)} 
              {
                (DQ (' * Transfering ') ($ VSub_Name '$PACKAGEDIR') (' to ') 
                  ($ VSub_Name '$RELEASEPACKAGE')
                )
              }
            )
            (SimpleCommand
              words: [{(Lit_Other ':')}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$RELEASEPACKAGE') (/List)}
                  spids: [1500]
                )
              ]
            )
            (ForEach
              iter_name: p
              iter_words: [
                {
                  (CommandSubPart
                    command_list: (CommandList children:[(C {(cat)} {($ VSub_Name '$PACKAGELIST')})])
                    left_token: <Left_Backtick '`'>
                    spids: [1511 1515]
                  )
                }
              ]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (C {(Lit_Other '[')} {(-f)} 
                              {($ VSub_Name '$PACKAGEDIR') (/) ($ VSub_Name '$p') (.tar.bz2)} {(Lit_Other ']')}
                            )
                          ]
                          action: [
                            (C {(cp)} {($ VSub_Name '$PACKAGEDIR') (/) ($ VSub_Name '$p') (.tar.bz2)} 
                              {($ VSub_Name '$RELEASEPACKAGE') (/)}
                            )
                            (AndOr
                              ops: [Op_DPipe]
                              children: [
                                (SimpleCommand
                                  words: [
                                    {(grep)}
                                    {(DQ ('^') ($ VSub_Name '$p') ('|'))}
                                    {($ VSub_Name '$PACKAGEDIR') (/List)}
                                  ]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_DGreat
                                      fd: 16777215
                                      arg_word: {($ VSub_Name '$RELEASEPACKAGE') (/List)}
                                      spids: [1559]
                                    )
                                  ]
                                )
                                (C {(echo)} {(DQ ($ VSub_Name '$p') (' not found in List'))})
                              ]
                            )
                          ]
                          spids: [16777215 1534]
                        )
                      ]
                      else_action: [
                        (C {(echo)} 
                          {
                            (DQ ("Can't copy ") ($ VSub_Name '$PACKAGEDIR') (/) ($ VSub_Name '$p') 
                              ('.tar.bz2. Missing.')
                            )
                          }
                        )
                      ]
                      spids: [1573 1587]
                    )
                  ]
                  spids: [1518 1590]
                )
              spids: [1510 16777215]
            )
            (C {(echo)} 
              {
                (DQ (' * Transfering ') ($ VSub_Name '$PACKAGESOURCEDIR') (' to ') 
                  ($ VSub_Name '$RELEASEPACKAGESOURCES')
                )
              }
            )
            (ForEach
              iter_name: p
              iter_words: [
                {
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [(C {(cat)} {($ VSub_Name '$PACKAGESOURCELIST')})]
                      )
                    left_token: <Left_Backtick '`'>
                    spids: [1611 1615]
                  )
                }
              ]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (C {(Lit_Other '[')} {(-f)} 
                              {($ VSub_Name '$PACKAGESOURCEDIR') (/) ($ VSub_Name '$p') (.tar.bz2)} {(Lit_Other ']')}
                            )
                          ]
                          action: [
                            (C {(cp)} 
                              {($ VSub_Name '$PACKAGESOURCEDIR') (/) ($ VSub_Name '$p') (.tar.bz2)} {($ VSub_Name '$RELEASEPACKAGESOURCES') (/)}
                            )
                          ]
                          spids: [16777215 1635]
                        )
                      ]
                      else_action: [
                        (C {(echo)} 
                          {
                            (DQ ("Can't copy ") ($ VSub_Name '$PACKAGESOURCEDIR') (/) ($ VSub_Name '$p') 
                              ('.tar.bz2. Missing.')
                            )
                          }
                        )
                      ]
                      spids: [1649 1663]
                    )
                  ]
                  spids: [1618 1666]
                )
              spids: [1610 16777215]
            )
          ]
          spids: [16777215 1486]
        )
      ]
      spids: [16777215 1668]
    )
    (C {(chown)} {(-R)} {(bin)} {($ VSub_Name '$RELEASEDIR') (/usr/lib)})
    (C {(chmod)} {(-R)} {(u) (Lit_Other '+') (w)} {($ VSub_Name '$RELEASEDIR') (/usr/lib)})
    (If
      arms: [
        (if_arm
          cond: [(C {(Lit_Other '[')} {(DQ ($ VSub_Name '$COPY'))} {(-ne)} {(1)} {(Lit_Other ']')})]
          action: [
            (C {(echo)} {(DQ (' * Doing new svn export'))})
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:TOOLSREPO)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (Pipeline
                                  children: [
                                    (C {(svn)} {(info)})
                                    (C {(grep)} {(SQ <'^URL: '>)})
                                    (C {(awk)} {(SQ <'{ print $2 }'>)})
                                  ]
                                  negated: F
                                )
                              ]
                            )
                          left_token: <Left_Backtick '`'>
                          spids: [1721 1741]
                        )
                      )
                    }
                  spids: [1719]
                )
              ]
              spids: [1719]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:REPO)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (Pipeline
                                  children: [
                                    (C {(echo)} {($ VSub_Name '$TOOLSREPO')})
                                    (C {(sed)} {(SQ <'s/.tools$//'>)})
                                  ]
                                  negated: F
                                )
                              ]
                            )
                          left_token: <Left_Backtick '`'>
                          spids: [1747 1759]
                        )
                      )
                    }
                  spids: [1745]
                )
              ]
              spids: [1745]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:BRANCHNAME)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (Pipeline
                                  children: [
                                    (C {(echo)} {($ VSub_Name '$REPO')})
                                    (C {(awk)} {(-F/)} {(SQ <'{ print $NF }'>)})
                                  ]
                                  negated: F
                                )
                              ]
                            )
                          left_token: <Left_Backtick '`'>
                          spids: [1765 1779]
                        )
                      )
                    }
                  spids: [1763]
                )
              ]
              spids: [1763]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:REVISION)
                  op: Equal
                  rhs: 
                    {
                      (DQ 
                        (CommandSubPart
                          command_list: 
                            (CommandList
                              children: [
                                (Pipeline
                                  children: [
                                    (C {(svn)} {(info)} {($ VSub_Name '$USERNAME')} 
                                      {($ VSub_Name '$SVNREV')} {($ VSub_Name '$REPO')}
                                    )
                                    (C {(grep)} {(SQ <'^Revision: '>)})
                                    (C {(awk)} {(SQ <'{ print $2 }'>)})
                                  ]
                                  negated: F
                                )
                              ]
                            )
                          left_token: <Left_Backtick '`'>
                          spids: [1785 1811]
                        )
                      )
                    }
                  spids: [1783]
                )
              ]
              spids: [1783]
            )
            (C {(echo)} 
              {
                (DQ ('Doing export of revision ') ($ VSub_Name '$REVISION') (' from ') 
                  ($ VSub_Name '$REPO') (.)
                )
              }
            )
            (Subshell
              child: 
                (AndOr
                  ops: [Op_DAmp]
                  children: [
                    (C {(cd)} {($ VSub_Name '$RELEASEDIR') (/usr)})
                    (C {(svn)} {(-q)} {($ VSub_Name '$USERNAME')} {(export)} 
                      {(-r) ($ VSub_Name '$REVISION')} {($ VSub_Name '$REPO')} {($ VSub_Name '$SRC')}
                    )
                  ]
                )
              spids: [1826 1850]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (C {(Lit_Other '[')} {($ VSub_Name '$BRANCHNAME')} {(Lit_Other '=')} {(src)} 
                      {(Lit_Other ']')}
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:REVTAG)
                          op: Equal
                          rhs: {(r) ($ VSub_Name '$REVISION')}
                          spids: [1868]
                        )
                      ]
                      spids: [1868]
                    )
                  ]
                  spids: [16777215 1866]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:REVTAG)
                      op: Equal
                      rhs: {(branch-) ($ VSub_Name '$BRANCHNAME') (-r) ($ VSub_Name '$REVISION')}
                      spids: [1875]
                    )
                  ]
                  spids: [1875]
                )
              ]
              spids: [1873 1882]
            )
            (SimpleCommand
              words: [
                {(echo)}
                {
                  (DQ ('\n') ('\n') ('/* Added by release script  */\n') ('#ifndef _SVN_REVISION\n') 
                    ('#define _SVN_REVISION ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ($ VSub_Name '$REVTAG') 
                    (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ('\n') ('#endif')
                  )
                }
              ]
              redirects: [
                (Redir
                  op_id: Redir_DGreat
                  fd: 16777215
                  arg_word: {($ VSub_Name '$RELEASEDIR') (/usr/src/include/minix/sys_config.h)}
                  spids: [1902]
                )
              ]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$USB'))} {(-ne)} {(0)} {(Lit_Other ']')})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:IMG)
                          op: Equal
                          rhs: {(${ VSub_Name IMG_BASE) (_) (${ VSub_Name REVTAG) (.img)}
                          spids: [1928]
                        )
                      ]
                      spids: [1928]
                    )
                  ]
                  spids: [16777215 1925]
                )
              ]
              else_action: [
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:IMG)
                      op: Equal
                      rhs: {(${ VSub_Name IMG_BASE) (_) (${ VSub_Name REVTAG) (.iso)}
                      spids: [1941]
                    )
                  ]
                  spids: [1941]
                )
              ]
              spids: [1938 1951]
            )
          ]
          spids: [16777215 1709]
        )
      ]
      else_action: [
        (Subshell
          child: 
            (AndOr
              ops: [Op_DAmp Op_DAmp]
              children: [(C {(cd)} {(..)}) (C {(make)} {(depend)}) (C {(make)} {(clean)})]
            )
          spids: [1957 1975]
        )
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:srcdir)
              op: Equal
              rhs: {(/usr/) ($ VSub_Name '$SRC')}
              spids: [1978]
            )
          ]
          spids: [1978]
        )
        (Pipeline
          children: [
            (Subshell
              child: 
                (AndOr
                  ops: [Op_DAmp]
                  children: [(C {(cd)} {($ VSub_Name '$srcdir')}) (C {(tar)} {(cf)} {(-)} {(.)})]
                )
              spids: [1983 1999]
            )
            (Subshell
              child: 
                (AndOr
                  ops: [Op_DAmp Op_DAmp Op_DAmp]
                  children: [
                    (C {(cd)} {($ VSub_Name '$RELEASEDIR') (/usr)})
                    (C {(mkdir)} {($ VSub_Name '$SRC')})
                    (C {(cd)} {($ VSub_Name '$SRC')})
                    (C {(tar)} {(xf)} {(-)})
                  ]
                )
              spids: [2003 2030]
            )
          ]
          negated: F
        )
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:REVTAG) op:Equal rhs:{(copy)} spids:[2033])]
          spids: [2033]
        )
        (Assignment
          keyword: Assign_None
          pairs: [(assign_pair lhs:(LhsName name:REVISION) op:Equal rhs:{(unknown)} spids:[2037])]
          spids: [2037]
        )
        (Assignment
          keyword: Assign_None
          pairs: [
            (assign_pair
              lhs: (LhsName name:IMG)
              op: Equal
              rhs: {(${ VSub_Name IMG_BASE) (_copy.iso)}
              spids: [2041]
            )
          ]
          spids: [2041]
        )
      ]
      spids: [1954 2047]
    )
    (C {(echo)} {(DQ (' * Fixups for owners and modes of dirs and files'))})
    (C {(chown)} {(-R)} {(bin)} {($ VSub_Name '$RELEASEDIR') (/usr/) ($ VSub_Name '$SRC')})
    (C {(chmod)} {(-R)} {(u) (Lit_Other '+') (w)} 
      {($ VSub_Name '$RELEASEDIR') (/usr/) ($ VSub_Name '$SRC')}
    )
    (Pipeline
      children: [
        (C {(find)} {($ VSub_Name '$RELEASEDIR') (/usr/) ($ VSub_Name '$SRC')} {(-type)} {(d)})
        (C {(xargs)} {(chmod)} {(755)})
      ]
      negated: F
    )
    (Pipeline
      children: [
        (C {(find)} {($ VSub_Name '$RELEASEDIR') (/usr/) ($ VSub_Name '$SRC')} {(-type)} {(f)})
        (C {(xargs)} {(chmod)} {(644)})
      ]
      negated: F
    )
    (Pipeline
      children: [
        (C {(find)} {($ VSub_Name '$RELEASEDIR') (/usr/) ($ VSub_Name '$SRC')} {(-name)} {(configure)})
        (C {(xargs)} {(chmod)} {(755)})
      ]
      negated: F
    )
    (Pipeline
      children: [
        (C {(find)} {($ VSub_Name '$RELEASEDIR') (/usr/) ($ VSub_Name '$SRC') (/commands)} {(-name)} 
          {(build)}
        )
        (C {(xargs)} {(chmod)} {(755)})
      ]
      negated: F
    )
    (C {(rm)} {(-rf)} {($ VSub_Name '$RELEASEDIR') (/usr/) ($ VSub_Name '$SRC') (/doc/bugs)})
    (If
      arms: [
        (if_arm
          cond: [(C {(Lit_Other '[')} {(DQ ($ VSub_Name '$USB'))} {(-eq)} {(0)} {(Lit_Other ']')})]
          action: [
            (SimpleCommand
              words: [{(date)}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$RELEASEDIR') (/CD)}
                  spids: [2187]
                )
              ]
            )
          ]
          spids: [16777215 2183]
        )
      ]
      spids: [16777215 2191]
    )
    (C {(echo)} {(DQ (' * Chroot build'))})
    (C {(cp)} {(chrootmake.sh)} 
      {($ VSub_Name '$RELEASEDIR') (/usr/) ($ VSub_Name '$SRC') (/tools/chrootmake.sh)}
    )
    (AndOr
      ops: [Op_DPipe]
      children: [
        (C {(chroot)} {($ VSub_Name '$RELEASEDIR')} 
          {
            (DQ ('PATH=/') ($ VSub_Name '$XBIN') (' sh -x /usr/') ($ VSub_Name '$SRC') 
              (/tools/chrootmake.sh)
            )
          }
        )
        (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
      ]
    )
    (C {(cp)} {($ VSub_Name '$RELEASEDIR') (/boot/image_big)} {(image)})
    (C {(echo)} {(DQ (' * Chroot build done'))})
    (C {(echo)} {(DQ (' * Removing bootstrap files'))})
    (C {(rm)} {(-rf)} {($ VSub_Name '$RELEASEDIR') (/) ($ VSub_Name '$XBIN')})
    (C {(chown)} {(-R)} {(bin)} {($ VSub_Name '$RELEASEDIR') (/usr/src) (Lit_Other '*')})
    (C {(cp)} {(issue.install)} {($ VSub_Name '$RELEASEDIR') (/etc/issue)})
    (If
      arms: [
        (if_arm
          cond: [(C {(Lit_Other '[')} {(DQ ($ VSub_Name '$USB'))} {(-ne)} {(0)} {(Lit_Other ']')})]
          action: [(C {(usb_root_changes)})]
          spids: [16777215 2291]
        )
        (if_arm
          cond: [(C {(Lit_Other '[')} {(DQ ($ VSub_Name '$HDEMU'))} {(-ne)} {(0)} {(Lit_Other ']')})]
          action: [(C {(hdemu_root_changes)})]
          spids: [2296 2310]
        )
      ]
      spids: [16777215 2315]
    )
    (SimpleCommand
      words: [
        {(echo)}
        {($ VSub_Name '$version_pretty') (Lit_Comma ',')}
        {(SVN)}
        {(revision)}
        {($ VSub_Name '$REVISION') (Lit_Comma ',')}
        {(generated)}
        {
          (CommandSubPart
            command_list: (CommandList children:[(C {(date)})])
            left_token: <Left_Backtick '`'>
            spids: [2332 2334]
          )
        }
      ]
      redirects: [
        (Redir
          op_id: Redir_Great
          fd: 16777215
          arg_word: {($ VSub_Name '$RELEASEDIR') (/etc/version)}
          spids: [2336]
        )
      ]
    )
    (C {(echo)} {(DQ (' * Counting files'))})
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:extrakb)
          op: Equal
          rhs: 
            {
              (CommandSubPart
                command_list: 
                  (CommandList
                    children: [
                      (Pipeline
                        children: [
                          (C {(du)} {(-s)} {($ VSub_Name '$RELEASEDIR') (/usr/install)})
                          (C {(awk)} {(SQ <'{ print $1 }'>)})
                        ]
                        negated: F
                      )
                    ]
                  )
                left_token: <Left_Backtick '`'>
                spids: [2347 2362]
              )
            }
          spids: [2346]
        )
      ]
      spids: [2346]
    )
    (SimpleCommand
      words: [
        {(expr)}
        {
          (CommandSubPart
            command_list: 
              (CommandList
                children: [
                  (Pipeline
                    children: [
                      (C {(df)} {($ VSub_Name '$TMPDISK1')})
                      (C {(tail)} {(-1)})
                      (C {(awk)} {(SQ <'{ print $4 }'>)})
                    ]
                    negated: F
                  )
                ]
              )
            left_token: <Left_Backtick '`'>
            spids: [2366 2384]
          )
        }
        {(-)}
        {($ VSub_Name '$extrakb')}
      ]
      redirects: [
        (Redir
          op_id: Redir_Great
          fd: 16777215
          arg_word: {($ VSub_Name '$RELEASEDIR') (/.usrkb)}
          spids: [2390]
        )
      ]
    )
    (Pipeline
      children: [
        (C {(find)} {($ VSub_Name '$RELEASEDIR') (/usr)})
        (C {(fgrep)} {(-v)} {(/install/)})
        (SimpleCommand
          words: [{(wc)} {(-l)}]
          redirects: [
            (Redir
              op_id: Redir_Great
              fd: 16777215
              arg_word: {($ VSub_Name '$RELEASEDIR') (/.usrfiles)}
              spids: [2413]
            )
          ]
        )
      ]
      negated: F
    )
    (Pipeline
      children: [
        (C {(find)} {($ VSub_Name '$RELEASEDIR')} {(-xdev)})
        (SimpleCommand
          words: [{(wc)} {(-l)}]
          redirects: [
            (Redir
              op_id: Redir_Great
              fd: 16777215
              arg_word: {($ VSub_Name '$RELEASEDIR') (/.rootfiles)}
              spids: [2429]
            )
          ]
        )
      ]
      negated: F
    )
    (C {(echo)} {(DQ (' * Zeroing remainder of temporary areas'))})
    (C {(df)} {($ VSub_Name '$TMPDISK1')})
    (C {(df)} {($ VSub_Name '$TMPDISK3')})
    (AndOr
      ops: [Op_DPipe]
      children: [
        (SimpleCommand
          words: [{(cp)} {(/dev/zero)} {($ VSub_Name '$RELEASEDIR') (/usr/.x)}]
          redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[2454])]
        )
        (C {(true)})
      ]
    )
    (C {(rm)} {($ VSub_Name '$RELEASEDIR') (/usr/.x)})
    (AndOr
      ops: [Op_DPipe]
      children: [
        (SimpleCommand
          words: [{(cp)} {(/dev/zero)} {($ VSub_Name '$RELEASEDIR') (/.x)}]
          redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[2473])]
        )
        (C {(true)})
      ]
    )
    (C {(rm)} {($ VSub_Name '$RELEASEDIR') (/.x)})
    (AndOr
      ops: [Op_DPipe]
      children: [(C {(umount)} {($ VSub_Name '$TMPDISK1')}) (ControlFlow token:<ControlFlow_Exit exit>)]
    )
    (AndOr
      ops: [Op_DPipe]
      children: [(C {(umount)} {($ VSub_Name '$TMPDISK2')}) (ControlFlow token:<ControlFlow_Exit exit>)]
    )
    (AndOr
      ops: [Op_DPipe]
      children: [(C {(umount)} {($ VSub_Name '$TMPDISK3')}) (ControlFlow token:<ControlFlow_Exit exit>)]
    )
    (C {(edparams)} {($ VSub_Name '$TMPDISK3')} 
      {
        (SQ <'unset bootopts;\n'> <'unset servers;\n'> <'unset rootdev;\n'> <'unset leader;\n'> 
          <'unset image;\n'> <'disable=inet;\n'> <'bootcd=1;\n'> <'cdproberoot=1;\n'> <'ata_id_timeout=2;\n'> 
          <'bootbig(1, Regular MINIX 3) { unset image; boot }\n'> 
          <
'leader() { echo \\n--- Welcome to MINIX 3. This is the boot monitor. ---\\n\\nChoose an option from the menu or press ESC if you need to do anything special.\\nOtherwise I will boot with my defaults in 10 seconds.\\n\\n }; main(){trap 10000 boot; menu; };\n'
          > <save>
        )
      }
    )
    (Subshell
      child: (AndOr ops:[Op_DAmp] children:[(C {(cd)} {(../boot)}) (C {(make)})])
      spids: [2535 2543]
    )
    (C {(dd)} {(Lit_VarLike 'if=') ($ VSub_Name '$TMPDISK3')} 
      {(Lit_VarLike 'of=') ($ VSub_Name '$ROOTIMAGE')} {(Lit_VarLike 'bs=') ($ VSub_Name '$BS')} {(Lit_VarLike 'count=') ($ VSub_Name '$ROOTBLOCKS')}
    )
    (AndOr
      ops: [Op_DPipe]
      children: [(C {(cp)} {(release/cd/) (Lit_Other '*')} {($ VSub_Name '$CDFILES')}) (C {(true)})]
    )
    (SimpleCommand
      words: [
        {(echo)}
        {
          (DQ ('This is Minix version ') ($ VSub_Name '$version_pretty') (' prepared ') 
            (CommandSubPart
              command_list: (CommandList children:[(C {(date)})])
              left_token: <Left_Backtick '`'>
              spids: [2576 2578]
            ) (.)
          )
        }
      ]
      redirects: [
        (Redir
          op_id: Redir_Great
          fd: 16777215
          arg_word: {($ VSub_Name '$CDFILES') (/VERSION.TXT)}
          spids: [2582]
        )
      ]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:boottype) op:Equal rhs:{(-n)} spids:[2587])]
      spids: [2587]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:bootimage)
          op: Equal
          rhs: {($ VSub_Name '$IMAGE')}
          spids: [2590]
        )
      ]
      spids: [2590]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$HDEMU'))} {(-ne)} {(0)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(make_hdimage)})
            (Assignment
              keyword: Assign_None
              pairs: [(assign_pair lhs:(LhsName name:boottype) op:Equal rhs:{(SQ <-h>)} spids:[2614])]
              spids: [2614]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:bootimage)
                  op: Equal
                  rhs: {(hdimage)}
                  spids: [2620]
                )
              ]
              spids: [2620]
            )
          ]
          spids: [16777215 2608]
        )
      ]
      spids: [16777215 2623]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$USB'))} {(-ne)} {(0)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(mv)} {($ VSub_Name '$bootimage')} {($ VSub_Name '$IMG')})]
          spids: [16777215 2641]
        )
      ]
      else_action: [
        (AndOr
          ops: [Op_DPipe]
          children: [
            (C {(writeisofs)} {(-s0x1000)} {(-l)} {(MINIX)} {(-b)} {($ VSub_Name '$bootimage')} 
              {($ VSub_Name '$boottype')} {($ VSub_Name '$CDFILES')} {($ VSub_Name '$IMG')}
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
        )
        (If
          arms: [
            (if_arm
              cond: [
                (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$HDEMU'))} {(-eq)} {(0)} {(Lit_Other ']')})
              ]
              action: [
                (C {(echo)} {(DQ ('Appending Minix root and usr filesystem'))})
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:isobytes)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [(C {(stat)} {(-size)} {($ VSub_Name '$IMG')})]
                              )
                            left_token: <Left_Backtick '`'>
                            spids: [2709 2715]
                          )
                        }
                      spids: [2708]
                    )
                  ]
                  spids: [2708]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:isosects)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [(C {(expr)} {($ VSub_Name '$isobytes')} {(/)} {(512)})]
                              )
                            left_token: <Left_Backtick '`'>
                            spids: [2719 2727]
                          )
                        }
                      spids: [2718]
                    )
                  ]
                  spids: [2718]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:isopad)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (C {(expr)} {($ VSub_Name '$secs')} {(-)} {(SQ <'('>)} 
                                    {($ VSub_Name '$isosects')} {(Lit_Other '%')} {($ VSub_Name '$secs')} {(SQ <')'>)}
                                  )
                                ]
                              )
                            left_token: <Left_Backtick '`'>
                            spids: [2731 2751]
                          )
                        }
                      spids: [2730]
                    )
                  ]
                  spids: [2730]
                )
                (SimpleCommand
                  words: [
                    {(dd)}
                    {(Lit_VarLike 'if=') (/dev/zero)}
                    {(Lit_VarLike 'count=') ($ VSub_Name '$isopad')}
                  ]
                  redirects: [
                    (Redir
                      op_id: Redir_DGreat
                      fd: 16777215
                      arg_word: {($ VSub_Name '$IMG')}
                      spids: [2762]
                    )
                  ]
                )
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:isosects)
                      op: Equal
                      rhs: 
                        {
                          (CommandSubPart
                            command_list: 
                              (CommandList
                                children: [
                                  (C {(expr)} {($ VSub_Name '$isosects')} {(Lit_Other '+')} 
                                    {($ VSub_Name '$isopad')}
                                  )
                                ]
                              )
                            left_token: <Left_Backtick '`'>
                            spids: [2771 2779]
                          )
                        }
                      spids: [2770]
                    )
                  ]
                  spids: [2770]
                )
                (Subshell
                  child: 
                    (CommandList
                      children: [
                        (Sentence
                          child: (C {(cat)} {($ VSub_Name '$IMG')} {($ VSub_Name '$ROOTIMAGE')})
                          terminator: <Op_Semi ';'>
                        )
                        (C {(dd)} {(Lit_VarLike 'if=') ($ VSub_Name '$TMPDISK1')} 
                          {(Lit_VarLike 'bs=') ($ VSub_Name '$BS')} {(Lit_VarLike 'count=') ($ VSub_Name '$USRBLOCKS')}
                        )
                      ]
                    )
                  redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(m)} spids:[2806])]
                  spids: [2782 2804]
                )
                (C {(mv)} {(m)} {($ VSub_Name '$IMG')})
                (C {(installboot)} {(-m)} {($ VSub_Name '$IMG')} {(/usr/mdec/masterboot)})
                (C {(partition)} {(-m)} {($ VSub_Name '$IMG')} {(0)} 
                  {(81) (Lit_Other ':') ($ VSub_Name '$isosects')} {(81) (Lit_Other ':') ($ VSub_Name '$ROOTSECTS')} {(81) (Lit_Other ':') ($ VSub_Name '$USRSECTS')}
                )
              ]
              spids: [16777215 2694]
            )
          ]
          spids: [16777215 2859]
        )
      ]
      spids: [2650 2861]
    )
    (If
      arms: [
        (if_arm
          cond: [(C {(Lit_Other '[')} {(DQ ($ VSub_Name '$FILENAMEOUT'))} {(Lit_Other ']')})]
          action: [
            (SimpleCommand
              words: [{(echo)} {(DQ ($ VSub_Name '$IMG'))}]
              redirects: [
                (Redir
                  op_id: Redir_Great
                  fd: 16777215
                  arg_word: {($ VSub_Name '$FILENAMEOUT')}
                  spids: [2882]
                )
              ]
            )
          ]
          spids: [16777215 2874]
        )
      ]
      spids: [16777215 2885]
    )
  ]
)