(command.CommandList
  children: [
    (C {(Id.KW_Set set)} {(-e)})
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:PATH)
          op: assign_op.Equal
          rhs: 
            {(/bin) (Id.Lit_Other ':') (/usr/bin) (Id.Lit_Other ':') (/sbin) (Id.Lit_Other ':') 
              (/usr/sbin)
            }
          spids: [44]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:DAEMON)
          op: assign_op.Equal
          rhs: {(/usr/sbin/uuidd)}
          spids: [53]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:UUIDD_USER)
          op: assign_op.Equal
          rhs: {(uuidd)}
          spids: [56]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:UUIDD_GROUP)
          op: assign_op.Equal
          rhs: {(uuidd)}
          spids: [59]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:UUIDD_DIR)
          op: assign_op.Equal
          rhs: {(/run/uuidd)}
          spids: [62]
        )
      ]
    )
    (command.ShAssignment
      pairs: [
        (assign_pair
          lhs: (sh_lhs_expr.Name name:PIDFILE)
          op: assign_op.Equal
          rhs: {($ Id.VSub_DollarName '$UUIDD_DIR') (/uuidd.pid)}
          spids: [65]
        )
      ]
    )
    (command.AndOr
      ops: [Id.Op_DPipe]
      children: [
        (C {(test)} {(-x)} {($ Id.VSub_DollarName '$DAEMON')})
        (command.ControlFlow
          token: (Token id:Id.ControlFlow_Exit val:exit span_id:78)
          arg_word: {(0)}
        )
      ]
    )
    (C {(.)} {(/lib/lsb/init-functions)})
    (command.Case
      to_match: {(DQ ($ Id.VSub_Number '$1'))}
      arms: [
        (case_arm
          pat_list: [{(start)}]
          action: [
            (C {(log_daemon_msg)} {(DQ ('Starting uuid generator'))} {(DQ (uuidd))})
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (command.Pipeline
                          children: [(C {(test)} {(-d)} {($ Id.VSub_DollarName '$UUIDD_DIR')})]
                          negated: T
                        )
                      terminator: (Token id:Id.Op_Semi val:';' span_id:121)
                    )
                  ]
                  action: [
                    (C {(mkdir)} {(-p)} {($ Id.VSub_DollarName '$UUIDD_DIR')})
                    (C {(chown)} {(-R)} 
                      {($ Id.VSub_DollarName '$UUIDD_USER') (Id.Lit_Other ':') 
                        ($ Id.VSub_DollarName '$UUIDD_GROUP')
                      } {($ Id.VSub_DollarName '$UUIDD_DIR')}
                    )
                  ]
                  spids: [112 123]
                )
              ]
            )
            (C {(start_daemon)} {(-p)} {($ Id.VSub_DollarName '$PIDFILE')} 
              {($ Id.VSub_DollarName '$DAEMON')}
            )
            (C {(log_end_msg)} {($ Id.VSub_QMark '$?')})
          ]
          spids: [97 98 161 -1]
        )
        (case_arm
          pat_list: [{(stop)}]
          action: [
            (C {(log_daemon_msg)} {(DQ ('Stopping uuid generator'))} {(DQ (uuidd))})
            (C {(killproc)} {(-p)} {($ Id.VSub_DollarName '$PIDFILE')} {($ Id.VSub_DollarName '$DAEMON')})
            (C {(log_end_msg)} {($ Id.VSub_QMark '$?')})
          ]
          spids: [164 165 193 -1]
        )
        (case_arm
          pat_list: [{(status)}]
          action: [
            (command.If
              arms: [
                (if_arm
                  cond: [
                    (command.Sentence
                      child: 
                        (command.Simple
                          words: [
                            {(pidofproc)}
                            {(-p)}
                            {($ Id.VSub_DollarName '$PIDFILE')}
                            {($ Id.VSub_DollarName '$DAEMON')}
                          ]
                          redirects: [
                            (redir.Redir
                              op: (Token id:Id.Redir_Great val:'>' span_id:210)
                              fd: -1
                              arg_word: {(/dev/null)}
                            )
                            (redir.Redir
                              op: (Token id:Id.Redir_GreatAnd val:'2>&' span_id:213)
                              fd: 2
                              arg_word: {(1)}
                            )
                          ]
                        )
                      terminator: (Token id:Id.Op_Semi val:';' span_id:215)
                    )
                  ]
                  action: [
                    (command.Sentence
                      child: (C {(echo)} {(DQ ($ Id.VSub_DollarName '$DAEMON') (' is running'))})
                      terminator: (Token id:Id.Op_Semi val:';' span_id:226)
                    )
                    (command.Sentence
                      child: 
                        (command.ControlFlow
                          token: (Token id:Id.ControlFlow_Exit val:exit span_id:229)
                          arg_word: {(0)}
                        )
                      terminator: (Token id:Id.Op_Semi val:';' span_id:232)
                    )
                  ]
                  spids: [200 217]
                )
              ]
              else_action: [
                (command.Sentence
                  child: (C {(echo)} {(DQ ($ Id.VSub_DollarName '$DAEMON') (' is NOT running'))})
                  terminator: (Token id:Id.Op_Semi val:';' span_id:244)
                )
                (command.If
                  arms: [
                    (if_arm
                      cond: [
                        (command.Sentence
                          child: (C {(test)} {(-f)} {($ Id.VSub_DollarName '$PIDFILE')})
                          terminator: (Token id:Id.Op_Semi val:';' span_id:254)
                        )
                      ]
                      action: [
                        (command.Sentence
                          child: 
                            (command.ControlFlow
                              token: (Token id:Id.ControlFlow_Exit val:exit span_id:258)
                              arg_word: {(2)}
                            )
                          terminator: (Token id:Id.Op_Semi val:';' span_id:261)
                        )
                      ]
                      spids: [247 256]
                    )
                  ]
                )
                (command.Sentence
                  child: 
                    (command.ControlFlow
                      token: (Token id:Id.ControlFlow_Exit val:exit span_id:266)
                      arg_word: {(3)}
                    )
                  terminator: (Token id:Id.Op_Semi val:';' span_id:269)
                )
              ]
            )
          ]
          spids: [196 197 275 -1]
        )
        (case_arm
          pat_list: [{(force-reload)} {(restart)}]
          action: [(C {($ Id.VSub_Number '$0')} {(stop)}) (C {($ Id.VSub_Number '$0')} {(start)})]
          spids: [278 281 294 -1]
        )
        (case_arm
          pat_list: [{(Id.Lit_Star '*')}]
          action: [
            (C {(echo)} {(DQ ('Usage: /etc/init.d/uuidd {start|stop|restart|force-reload}'))})
            (command.ControlFlow
              token: (Token id:Id.ControlFlow_Exit val:exit span_id:308)
              arg_word: {(1)}
            )
          ]
          spids: [297 298 313 -1]
        )
      ]
    )
    (command.ControlFlow token:(Token id:Id.ControlFlow_Exit val:exit span_id:318) arg_word:{(0)})
  ]
)