(command.CommandList
  children: [
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'PATH='> name:PATH)
          op: assign_op.Equal
          rhs: {<'/sbin'> <Id.Lit_Colon ':'> <'/bin'>}
          spids: [47]
        )
      ]
      redirects: []
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'SYSCTL='> name:SYSCTL)
          op: assign_op.Equal
          rhs: {<'/sbin/sysctl'>}
          spids: [53]
        )
      ]
      redirects: []
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {<test>} {<-x>} {($ Id.VSub_DollarName SYSCTL)})
        (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
      ]
    )
    (C {<.>} {<'/lib/lsb/init-functions'>})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'QUIET_SYSCTL='> name:QUIET_SYSCTL)
          op: assign_op.Equal
          rhs: {(DQ <-q>)}
          spids: [78]
        )
      ]
      redirects: []
    )
    (command.If
      arms: [
        (if_arm
          cond: 
            (condition.Shell
              commands: [
                (command.Sentence
                  child: 
                    (C {<Id.Lit_LBracket '['>} {<-f>} {<'/etc/default/rcS'>} {<Id.Lit_RBracket ']'>})
                  terminator: <Id.Op_Semi _>
                )
              ]
            )
          action: [(C {<.>} {<'/etc/default/rcS'>})]
          spids: [90 102]
        )
      ]
      else_action: []
      redirects: []
    )
    (C {<set>} {<-e>})
    (command.Case
      to_match: {(DQ ($ Id.VSub_Number 1))}
      arms: [
        (case_arm
          pat_list: [{<start>} {<restart>} {<force-reload>} {<reload>}]
          action: [
            (C {<log_action_begin_msg>} {(DQ <'Setting kernel variables '>)})
            (command.ShAssignment
              pairs: [
                (assign_pair
                  lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'STATUS='> name:STATUS)
                  op: assign_op.Equal
                  rhs: {<0>}
                  spids: [143]
                )
              ]
              redirects: []
            )
            (command.AndOr
              ops: [Id.Op_DPipe]
              children: [
                (C {($ Id.VSub_DollarName SYSCTL)} {($ Id.VSub_DollarName QUIET_SYSCTL)} {<--system>})
                (command.ShAssignment
                  pairs: [
                    (assign_pair
                      lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'STATUS='> name:STATUS)
                      op: assign_op.Equal
                      rhs: {($ Id.VSub_QMark '?')}
                      spids: [155]
                    )
                  ]
                  redirects: []
                )
              ]
            )
            (C {<log_action_end_msg>} {($ Id.VSub_DollarName STATUS)})
          ]
          spids: [126 133 164 -1]
        )
        (case_arm pat_list:[{<stop>}] action:[] spids:[167 168 171 -1])
        (case_arm pat_list:[{<status>}] action:[] spids:[174 175 178 -1])
        (case_arm
          pat_list: [{<Id.Lit_Star '*'>}]
          action: [
            (command.Simple
              words: [
                {<echo>}
                {(DQ <'Usage: /etc/init.d/procps {start|stop|restart|reload|force-reload|status}'>)}
              ]
              redirects: [(redir op:<Id.Redir_GreatAnd '>&'> loc:(redir_loc.Fd fd:1) arg:{<2>})]
              more_env: []
              do_fork: T
            )
            (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<3>})
          ]
          spids: [181 182 200 -1]
        )
      ]
      redirects: []
    )
    (command.ControlFlow token:<Id.ControlFlow_Exit exit> arg_word:{<0>})
  ]
)