(CommandList
  children: [
    (C {(set)} {(-u) ($ VSub_Name '$DX')})
    (Case
      to_match: {($ VSub_Pound '$#')}
      arms: [
        (case_arm
          pat_list: [{(2)}]
          action: [
            (Sentence
              child: 
                (Assignment
                  keyword: Assign_None
                  pairs: [
                    (assign_pair
                      lhs: (LhsName name:OLDTAB)
                      op: Equal
                      rhs: {($ VSub_Number '$1')}
                      spids: [115]
                    )
                  ]
                  spids: [115]
                )
              terminator: <Op_Semi ';'>
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:NEWTAB)
                  op: Equal
                  rhs: {($ VSub_Number '$2')}
                  spids: [120]
                )
              ]
              spids: [120]
            )
          ]
          spids: [111 113 123 16777215]
        )
        (case_arm
          pat_list: [{(Lit_Other '*')}]
          action: [
            (C {(echo)} 
              {
                (DQ ('Usage: ') 
                  (CommandSubPart
                    command_list: (CommandList children:[(C {(basename)} {($ VSub_Number '$0')})])
                    left_token: <Left_Backtick '`'>
                    spids: [134 138]
                  ) (' <Input> <Output>')
                )
              }
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
          spids: [126 128 16777215 147]
        )
      ]
      spids: [105 109 147]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (C {(Lit_Other '[')} {(KW_Bang '!')} {(-r)} {($ VSub_Name '$OLDTAB')} {(Lit_Other ']')})
          ]
          action: [
            (C {(echo)} 
              {
                (DQ 
                  (CommandSubPart
                    command_list: (CommandList children:[(C {(basename)} {($ VSub_Number '$0')})])
                    left_token: <Left_Backtick '`'>
                    spids: [168 172]
                  ) (': ') ($ VSub_Name '$OLDTAB') (' does not exist or is unreadable.')
                )
              }
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
          ]
          spids: [16777215 162]
        )
      ]
      spids: [16777215 183]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (SimpleCommand
              words: [{(touch)} {($ VSub_Name '$NEWTAB')}]
              redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[192])]
            )
          ]
          action: [(C {(Lit_Other ':')})]
          spids: [16777215 196]
        )
      ]
      else_action: [
        (C {(echo)} 
          {
            (DQ 
              (CommandSubPart
                command_list: (CommandList children:[(C {(basename)} {($ VSub_Number '$0')})])
                left_token: <Left_Backtick '`'>
                spids: [207 211]
              ) (': cannot write to ') ($ VSub_Name '$NEWTAB') (.)
            )
          }
        )
        (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
      ]
      spids: [201 222]
    )
    (SimpleCommand
      words: [{(cat)}]
      redirects: [
        (HereDoc
          op_id: Redir_DLess
          fd: 16777215
          body: 
            {
              (DQ ('# /etc/bootptab: database for bootp server (/etc/bootpd)\n') 
                ('# This file was generated automagically\n') ('\n') ("# Blank lines and lines beginning with '#' are ignored.\n") ('#\n') 
                ('# Legend:\t(see bootptab.5)\n') ('#\tfirst field -- hostname (not indented)\n') ('#\tbf -- bootfile\n') 
                ('#\tbs -- bootfile size in 512-octet blocks\n') ('#\tcs -- cookie servers\n') ('#\tdf -- dump file name\n') ('#\tdn -- domain name\n') 
                ('#\tds -- domain name servers\n') ('#\tef -- extension file\n') ('#\tgw -- gateways\n') ('#\tha -- hardware address\n') 
                ('#\thd -- home directory for bootfiles\n') ('#\thn -- host name set for client\n') ('#\tht -- hardware type\n') ('#\tim -- impress servers\n') 
                ('#\tip -- host IP address\n') ('#\tlg -- log servers\n') ('#\tlp -- LPR servers\n') ('#\tns -- IEN-116 name servers\n') 
                ('#\tra -- reply address\n') ('#\trl -- resource location protocol servers\n') ('#\trp -- root path\n') 
                ('#\tsa -- boot server address\n') ('#\tsm -- subnet mask\n') ('#\tsw -- swap server\n') 
                ('#\ttc -- template host (points to similar host entry)\n') ('#\ttd -- TFTP directory\n') ('#\tto -- time offset (seconds)\n') ('#\tts -- time servers\n') 
                ('#\tvm -- vendor magic number\n') ('#\tTn -- generic option tag n\n') ('#\n') 
                ("# Be careful about including backslashes where they're needed.  Weird (bad)\n") ('# things can happen when a backslash is omitted where one is intended.\n') 
                ('# Also, note that generic option data must be either a string or a\n') ('# sequence of bytes where each byte is a two-digit hex value.\n') ('\n') 
                ('# First, we define a global entry which specifies the stuff every host uses.\n') ('# (Host name lookups are relative to the domain: your.domain.name)\n') ('\n')
              )
            }
          do_expansion: True
          here_end: END_OF_HEADER
          was_filled: T
          spids: [228]
        )
        (Redir op_id:Redir_DGreat fd:16777215 arg_word:{($ VSub_Name '$NEWTAB')} spids:[232])
      ]
    )
    (Pipeline
      children: [
        (SimpleCommand
          words: [{(sed)} {(-e)} {(SQ <'s/[:-]//g'>)}]
          redirects: [
            (Redir
              op_id: Redir_Less
              fd: 16777215
              arg_word: {($ VSub_Name '$OLDTAB')}
              spids: [297]
            )
          ]
        )
        (SimpleCommand
          words: [
            {(nawk)}
            {
              (SQ <'BEGIN\t{ PART = 0 ; FIELD=0 ; BOOTPATH="unset" ; BOOTFILE="unset" }\n'> 
                <'\t/^%%/\t{\n'> <'\t\t\t\tPART = 1\n'> 
                <
'\t\t\t\tprintf ".default:\\\\\\n\\t:ht=ether:\\\\\\n\\t:hn:\\\\\\n\\t:dn=your.domain.name:\\\\\\n\\t:ds=your,dns,servers:\\\\\\n\\t:sm=255.255.0.0:\\\\\\n\\t:hd=%s:\\\\\\n\\t:rp=%s:\\\\\\n\\t:td=%s:\\\\\\n\\t:bf=%s:\\\\\\n\\t:to=auto:\\n\\n", BOOTPATH, BOOTPATH, BOOTPATH, BOOTFILE\n'
                > <'\t\t\t\tnext\n'> <'\t\t\t}\n'> <'\t/^$/\t{ next }\n'> <'\t/^#/\t{ next }\n'> <'\t\t{\n'> 
                <'\t\t\tif ( PART == 0 && FIELD < 2 )\n'> <'\t\t  \t{\n'> <'\t\t\t\tif ( FIELD == 0 ) BOOTPATH=$1\n'> <'\t\t\t\tif ( FIELD == 1 ) BOOTFILE=$1\n'> 
                <'\t\t\t\tFIELD++\n'> <'\t\t\t}\n'> <'\t\t}\n'> <'\t\t{\n'> <'\t\t\tif ( PART == 1 )\n'> <'\t\t\t{\n'> <'\t\t\t\tHOST=$1\n'> 
                <'\t\t\t\tHA=$3\n'> <'\t\t\t\tIP=$4\n'> <'\t\t\t\tBF=$5\n'> 
                <
'\t\t\t\tprintf "%s:\\\\\\n\\t:tc=.default:\\\\\\n\\t:ha=0x%s:\\\\\\n\\t:ip=%s:\\\\\\n\\t:bf=%s:\\n", HOST, HA, IP, BF\n'
                > <'\t\t\t}\n'> <'\t\t}'>
              )
            }
          ]
          redirects: [
            (Redir
              op_id: Redir_DGreat
              fd: 16777215
              arg_word: {($ VSub_Name '$NEWTAB')}
              spids: [335]
            )
          ]
        )
      ]
      negated: F
    )
    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
  ]
)