(command.CommandList
  children: [
    (C {<Id.Lit_Colon ':'>} {<generate>} {<preroot>} {<features>})
    (command.Case
      to_match: {($ Id.VSub_Pound '#')}
      arms: [
        (case_arm pat_list:[{<0>}] action:[] spids:[77 78 80 -1])
        (case_arm
          pat_list: [{<Id.Lit_Star '*'>}]
          action: [(C {<eval>} {($ Id.VSub_Number 1)}) (C {<shift>})]
          spids: [82 83 93 -1]
        )
      ]
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Simple
                  words: [{<'/etc/preroot'>} {<'/'>} {<'/bin/echo'>}]
                  redirects: [
                    (redir
                      op: <Id.Redir_Great '>'>
                      loc: (redir_loc.Fd fd:1)
                      arg: {<'/dev/null'>}
                    )
                  ]
                  more_env: []
                  do_fork: T
                )
              ]
            )
          action: [
            (command.Simple
              words: [{<cat>}]
              redirects: [
                (redir
                  op: <Id.Redir_DLess '<<'>
                  loc: (redir_loc.Fd fd:0)
                  arg: 
                    (redir_param.HereDoc
                      here_begin: {<Id.KW_Bang '!'>}
                      here_end_span_id: 145
                      stdin_parts: [
                        <'#pragma prototyped\n'>
                        <'\n'>
                        <'#define FS_PREROOT\t1\t\t\t/* preroot enabled\t*/\n'>
                        <'#define PR_BASE\t\t'>
                        <Id.Right_DoubleQuote '"'>
                        <CCS>
                        <Id.Right_DoubleQuote '"'>
                        <'\t\t\t/* preroot base env var\t*/\n'>
                        <'#define PR_COMMAND\t'>
                        <Id.Right_DoubleQuote '"'>
                        <'/etc/preroot'>
                        <Id.Right_DoubleQuote '"'>
                        <'\t\t/* the preroot command\t*/\n'>
                        <'#define PR_REAL\t\t'>
                        <Id.Right_DoubleQuote '"'>
                        <'/dev/..'>
                        <Id.Right_DoubleQuote '"'>
                        <'\t\t/* real root pathname\t*/\n'>
                        <'#define PR_SILENT\t'>
                        <Id.Right_DoubleQuote '"'>
                        <CCSQUIET>
                        <Id.Right_DoubleQuote '"'>
                        <'\t\t/* no command trace\t*/\n'>
                        <'\n'>
                        <'extern char*\t\tgetpreroot(char*, const char*);\n'>
                        <'extern int\t\tispreroot(const char*);\n'>
                        <'extern int\t\trealopen(const char*, int, int);\n'>
                        <'extern void\t\tsetpreroot(char**, const char*);\n'>
                        <'\n'>
                      ]
                    )
                )
              ]
              more_env: []
              do_fork: T
            )
          ]
          spids: [97 108]
        )
      ]
      else_action: [(C {<echo>} {(DQ <'/* preroot not enabled */'>)})]
      redirects: []
    )
  ]
)