(CommandList
  children: [
    (C {(.)} {(/etc/rc.subr)})
    (C {(load_rc_config)} {(SQ <XXX>)})
    (FuncDef
      name: usage
      body: 
        (BraceGroup
          children: [
            (C {(echo)} {(SQ )})
            (C {(echo)} {(SQ <'Usage:'>)})
            (C {(echo)} 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Number 0>
                    suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{('*') (Lit_Slash /)})
                    spids: [113 118]
                  ) (' -e')
                )
              }
            )
            (C {(echo)} 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Number 0>
                    suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{('*') (Lit_Slash /)})
                    spids: [126 131]
                  ) (' -R')
                )
              }
            )
            (C {(echo)} 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Number 0>
                    suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{('*') (Lit_Slash /)})
                    spids: [139 144]
                  ) (' [-v] -l | -r')
                )
              }
            )
            (C {(echo)} 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Number 0>
                    suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{('*') (Lit_Slash /)})
                    spids: [152 157]
                  ) (' [-v] <rc.d script> start|stop|etc.')
                )
              }
            )
            (C {(echo)} 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Number 0>
                    suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{('*') (Lit_Slash /)})
                    spids: [165 170]
                  ) (' -h')
                )
              }
            )
            (C {(echo)} {(SQ )})
            (C {(echo)} {(SQ <'-e\tShow services that are enabled'>)})
            (C {(echo)} 
              {(DQ ('-R\tStop and start enabled ') ($ VSub_Name '$local_startup') (' services'))}
            )
            (C {(echo)} {(DQ ('-l\tList all scripts in /etc/rc.d and ') ($ VSub_Name '$local_startup'))})
            (C {(echo)} {(SQ <'-r\tShow the results of boot time rcorder'>)})
            (C {(echo)} {(SQ <'-v\tVerbose'>)})
            (C {(echo)} {(SQ )})
          ]
          spids: [94]
        )
      spids: [89 93]
    )
    (While
      cond: [
        (Sentence
          child: (C {(getopts)} {(SQ <ehlrRv>)} {(COMMAND_LINE_ARGUMENT)})
          terminator: <Op_Semi ';'>
        )
      ]
      body: 
        (DoGroup
          children: [
            (Case
              to_match: {(DQ (${ VSub_Name COMMAND_LINE_ARGUMENT))}
              arms: [
                (case_arm
                  pat_list: [{(e)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:ENABLED)
                          op: Equal
                          rhs: {(eopt)}
                          spids: [256]
                        )
                      ]
                      spids: [256]
                    )
                  ]
                  spids: [253 254 259 16777215]
                )
                (case_arm
                  pat_list: [{(h)}]
                  action: [
                    (Sentence child:(C {(usage)}) terminator:<Op_Semi ';'>)
                    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
                  ]
                  spids: [262 263 273 16777215]
                )
                (case_arm
                  pat_list: [{(l)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [(assign_pair lhs:(LhsName name:LIST) op:Equal rhs:{(lopt)} spids:[279])]
                      spids: [279]
                    )
                  ]
                  spids: [276 277 282 16777215]
                )
                (case_arm
                  pat_list: [{(r)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:RCORDER)
                          op: Equal
                          rhs: {(ropt)}
                          spids: [288]
                        )
                      ]
                      spids: [288]
                    )
                  ]
                  spids: [285 286 291 16777215]
                )
                (case_arm
                  pat_list: [{(R)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:RESTART)
                          op: Equal
                          rhs: {(Ropt)}
                          spids: [297]
                        )
                      ]
                      spids: [297]
                    )
                  ]
                  spids: [294 295 300 16777215]
                )
                (case_arm
                  pat_list: [{(v)}]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:VERBOSE)
                          op: Equal
                          rhs: {(vopt)}
                          spids: [306]
                        )
                      ]
                      spids: [306]
                    )
                  ]
                  spids: [303 304 309 16777215]
                )
                (case_arm
                  pat_list: [{(Lit_Other '*')}]
                  action: [
                    (Sentence child:(C {(usage)}) terminator:<Op_Semi ';'>)
                    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
                  ]
                  spids: [312 313 323 16777215]
                )
              ]
              spids: [242 250 326]
            )
          ]
          spids: [239 328]
        )
    )
    (C {(shift)} 
      {
        (ArithSubPart
          anode: 
            (ArithBinary
              op_id: Arith_Minus
              left: (ArithWord w:{($ VSub_Name '$OPTIND')})
              right: (ArithWord w:{(Lit_Digits 1)})
            )
          spids: [332 341]
        )
      }
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$RESTART'))} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:skip)
                  op: Equal
                  rhs: {(DQ ('-s nostart'))}
                  spids: [360]
                )
              ]
              spids: [360]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} 
                          {
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [(C {(/sbin/sysctl)} {(-n)} {(security.jail.jailed)})]
                                )
                              left_token: <Left_Backtick '`'>
                              spids: [370 376]
                            )
                          } {(-eq)} {(1)} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:skip)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$skip') (' -s nojail'))}
                          spids: [388]
                        )
                      ]
                      spids: [388]
                    )
                  ]
                  spids: [16777215 385]
                )
              ]
              spids: [16777215 395]
            )
            (AndOr
              ops: [Op_DAmp]
              children: [
                (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$local_startup'))} {(Lit_Other ']')})
                (C {(find_local_scripts_new)})
              ]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:files)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (SimpleCommand
                                words: [{(rcorder)} {(${ VSub_Name skip)} {(${ VSub_Name local_rc)}]
                                redirects: [
                                  (Redir
                                    op_id: Redir_Great
                                    fd: 2
                                    arg_word: {(/dev/null)}
                                    spids: [425]
                                  )
                                ]
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [414 427]
                      )
                    }
                  spids: [413]
                )
              ]
              spids: [413]
            )
            (ForEach
              iter_name: file
              iter_words: [
                {
                  (CommandSubPart
                    command_list: 
                      (CommandList
                        children: [(C {(reverse_list)} {(${ VSub_Name files)})]
                      )
                    left_token: <Left_Backtick '`'>
                    spids: [437 443]
                  )
                }
              ]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(grep)} {(-q)} {(Lit_Other '^') (rcvar)} {($ VSub_Name '$file')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(eval)} 
                              {
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(grep)} {(Lit_Other '^') (Lit_VarLike 'name=')} 
                                          {($ VSub_Name '$file')}
                                        )
                                      ]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [466 473]
                                )
                              }
                            )
                            (C {(eval)} 
                              {
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(grep)} {(Lit_Other '^') (rcvar)} {($ VSub_Name '$file')})
                                      ]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [478 485]
                                )
                              }
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$rcvar'))} 
                                          {(Lit_Other ']')}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(load_rc_config_var)} {(${ VSub_Name name)} 
                                      {(${ VSub_Name rcvar)}
                                    )
                                  ]
                                  spids: [16777215 501]
                                )
                              ]
                              spids: [16777215 515]
                            )
                            (AndOr
                              ops: [Op_DAmp]
                              children: [
                                (SimpleCommand
                                  words: [{(checkyesno)} {($ VSub_Name '$rcvar')}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 2
                                      arg_word: {(/dev/null)}
                                      spids: [522]
                                    )
                                  ]
                                )
                                (C {(run_rc_script)} {(${ VSub_Name file)} {(stop)})
                              ]
                            )
                          ]
                          spids: [16777215 461]
                        )
                      ]
                      spids: [16777215 536]
                    )
                  ]
                  spids: [446 539]
                )
              spids: [436 444]
            )
            (ForEach
              iter_name: file
              iter_words: [{($ VSub_Name '$files')}]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(grep)} {(-q)} {(Lit_Other '^') (rcvar)} {($ VSub_Name '$file')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(eval)} 
                              {
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(grep)} {(Lit_Other '^') (Lit_VarLike 'name=')} 
                                          {($ VSub_Name '$file')}
                                        )
                                      ]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [571 578]
                                )
                              }
                            )
                            (C {(eval)} 
                              {
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(grep)} {(Lit_Other '^') (rcvar)} {($ VSub_Name '$file')})
                                      ]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [583 590]
                                )
                              }
                            )
                            (AndOr
                              ops: [Op_DAmp]
                              children: [
                                (SimpleCommand
                                  words: [{(checkyesno)} {($ VSub_Name '$rcvar')}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 2
                                      arg_word: {(/dev/null)}
                                      spids: [597]
                                    )
                                  ]
                                )
                                (C {(run_rc_script)} {(${ VSub_Name file)} {(start)})
                              ]
                            )
                          ]
                          spids: [16777215 566]
                        )
                      ]
                      spids: [16777215 611]
                    )
                  ]
                  spids: [551 614]
                )
              spids: [547 549]
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
          ]
          spids: [16777215 357]
        )
      ]
      spids: [16777215 622]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$ENABLED'))} {(-o)} {(-n)} 
                  {(DQ ($ VSub_Name '$RCORDER'))} {(Lit_Other ']')}
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:skip)
                  op: Equal
                  rhs: {(DQ ('-s nostart'))}
                  spids: [653]
                )
              ]
              spids: [653]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} 
                          {
                            (CommandSubPart
                              command_list: 
                                (CommandList
                                  children: [(C {(/sbin/sysctl)} {(-n)} {(security.jail.jailed)})]
                                )
                              left_token: <Left_Backtick '`'>
                              spids: [663 669]
                            )
                          } {(-eq)} {(1)} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:skip)
                          op: Equal
                          rhs: {(DQ ($ VSub_Name '$skip') (' -s nojail'))}
                          spids: [681]
                        )
                      ]
                      spids: [681]
                    )
                  ]
                  spids: [16777215 678]
                )
              ]
              spids: [16777215 688]
            )
            (AndOr
              ops: [Op_DAmp]
              children: [
                (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$local_startup'))} {(Lit_Other ']')})
                (C {(find_local_scripts_new)})
              ]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:files)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: 
                          (CommandList
                            children: [
                              (SimpleCommand
                                words: [
                                  {(rcorder)}
                                  {(${ VSub_Name skip)}
                                  {(/etc/rc.d/) (Lit_Other '*')}
                                  {(${ VSub_Name local_rc)}
                                ]
                                redirects: [
                                  (Redir
                                    op_id: Redir_Great
                                    fd: 2
                                    arg_word: {(/dev/null)}
                                    spids: [721]
                                  )
                                ]
                              )
                            ]
                          )
                        left_token: <Left_Backtick '`'>
                        spids: [707 723]
                      )
                    }
                  spids: [706]
                )
              ]
              spids: [706]
            )
          ]
          spids: [16777215 646]
        )
      ]
      spids: [16777215 725]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$ENABLED'))} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (ForEach
              iter_name: file
              iter_words: [{($ VSub_Name '$files')}]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(grep)} {(-q)} {(Lit_Other '^') (rcvar)} {($ VSub_Name '$file')})
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (C {(eval)} 
                              {
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(grep)} {(Lit_Other '^') (Lit_VarLike 'name=')} 
                                          {($ VSub_Name '$file')}
                                        )
                                      ]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [773 780]
                                )
                              }
                            )
                            (C {(eval)} 
                              {
                                (CommandSubPart
                                  command_list: 
                                    (CommandList
                                      children: [
                                        (C {(grep)} {(Lit_Other '^') (rcvar)} {($ VSub_Name '$file')})
                                      ]
                                    )
                                  left_token: <Left_Backtick '`'>
                                  spids: [785 792]
                                )
                              }
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$rcvar'))} 
                                          {(Lit_Other ']')}
                                        )
                                      terminator: <Op_Semi ';'>
                                    )
                                  ]
                                  action: [
                                    (C {(load_rc_config_var)} {(${ VSub_Name name)} 
                                      {(${ VSub_Name rcvar)}
                                    )
                                  ]
                                  spids: [16777215 808]
                                )
                              ]
                              spids: [16777215 822]
                            )
                            (AndOr
                              ops: [Op_DAmp]
                              children: [
                                (SimpleCommand
                                  words: [{(checkyesno)} {($ VSub_Name '$rcvar')}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: 2
                                      arg_word: {(/dev/null)}
                                      spids: [829]
                                    )
                                  ]
                                )
                                (C {(echo)} {($ VSub_Name '$file')})
                              ]
                            )
                          ]
                          spids: [16777215 768]
                        )
                      ]
                      spids: [16777215 839]
                    )
                  ]
                  spids: [753 842]
                )
              spids: [749 751]
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
          ]
          spids: [16777215 741]
        )
      ]
      spids: [16777215 849]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$LIST'))} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (ForEach
              iter_name: dir
              iter_words: [{(/etc/rc.d)} {($ VSub_Name '$local_startup')}]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (AndOr
                      ops: [Op_DAmp]
                      children: [
                        (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other ']')})
                        (C {(echo)} {(DQ ('From ') (${ VSub_Name dir) (':'))})
                      ]
                    )
                    (AndOr
                      ops: [Op_DAmp]
                      children: [
                        (C {(Lit_Other '[')} {(-d)} {(${ VSub_Name dir)} {(Lit_Other ']')})
                        (C {(/bin/ls)} {(-1)} {(${ VSub_Name dir)})
                      ]
                    )
                  ]
                  spids: [879 926]
                )
              spids: [873 877]
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
          ]
          spids: [16777215 865]
        )
      ]
      spids: [16777215 933]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$RCORDER'))} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (ForEach
              iter_name: file
              iter_words: [{($ VSub_Name '$files')}]
              do_arg_iter: F
              body: 
                (DoGroup
                  children: [
                    (C {(echo)} {($ VSub_Name '$file')})
                    (If
                      arms: [
                        (if_arm
                          cond: [
                            (Sentence
                              child: 
                                (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$VERBOSE'))} 
                                  {(Lit_Other ']')}
                                )
                              terminator: <Op_Semi ';'>
                            )
                          ]
                          action: [
                            (Case
                              to_match: {(DQ ($ VSub_Name '$file'))}
                              arms: [
                                (case_arm
                                  pat_list: [{(Lit_Other '*') (/) (${ VSub_Name early_late_divider)}]
                                  action: [
                                    (C {(echo)} {(SQ <'========= Early/Late Divider ========='>)})
                                  ]
                                  spids: [994 999 1008 16777215]
                                )
                              ]
                              spids: [985 991 1011]
                            )
                          ]
                          spids: [16777215 982]
                        )
                      ]
                      spids: [16777215 1014]
                    )
                  ]
                  spids: [961 1017]
                )
              spids: [957 959]
            )
            (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)})
          ]
          spids: [16777215 949]
        )
      ]
      spids: [16777215 1024]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-gt)} {(1)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:script)
                  op: Equal
                  rhs: {($ VSub_Number '$1')}
                  spids: [1043]
                )
              ]
              spids: [1043]
            )
            (C {(shift)})
          ]
          spids: [16777215 1040]
        )
      ]
      else_action: [(C {(usage)}) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})]
      spids: [1049 1059]
    )
    (C {(cd)} {(/)})
    (ForEach
      iter_name: dir
      iter_words: [{(/etc/rc.d)} {($ VSub_Name '$local_startup')}]
      do_arg_iter: F
      body: 
        (DoGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-x)} 
                          {(DQ ($ VSub_Name '$dir') (/) ($ VSub_Name '$script'))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (AndOr
                      ops: [Op_DAmp]
                      children: [
                        (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other ']')})
                        (C {(echo)} 
                          {(DQ ($ VSub_Name '$script') (' is located in ') ($ VSub_Name '$dir'))}
                        )
                      ]
                    )
                    (C {(exec)} {(env)} {(-i)} {(Lit_VarLike 'HOME=') (/)} 
                      {(Lit_VarLike 'PATH=') (/sbin) (Lit_Other ':') (/bin) (Lit_Other ':') (/usr/sbin) 
                        (Lit_Other ':') (/usr/bin)
                      } {($ VSub_Name '$dir') (/) ($ VSub_Name '$script')} {($ VSub_Star '$*')}
                    )
                  ]
                  spids: [16777215 1095]
                )
              ]
              spids: [16777215 1144]
            )
          ]
          spids: [1077 1146]
        )
      spids: [1071 1075]
    )
    (C {(echo)} {(DQ ($ VSub_Name '$script') (' does not exist in /etc/rc.d or the local startup'))})
    (C {(echo)} {(DQ ('directories (') (${ VSub_Name local_startup) ('), or is not executable'))})
    (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)})
  ]
)