(CommandList
  children: [
    (FuncDef
      name: unmount_devpts
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(mountpoint)} {(-q)} {(/dev/pts/)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(umount)} {(-n)} {(-l)} {(/dev/pts/)})]
                  spids: [-1 47]
                )
              ]
              spids: [-1 59]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(mountpoint)} {(-q)} {(/dev/shm/)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(umount)} {(-n)} {(-l)} {(/dev/shm/)})]
                  spids: [-1 72]
                )
              ]
              spids: [-1 84]
            )
          ]
          spids: [35]
        )
      spids: [31 34]
    )
    (FuncDef
      name: mount_devtmpfs
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(grep)} {(-E)} {(-q)} {(DQ ('^[^[:space:]]+ /dev devtmpfs'))} {(/proc/mounts)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(mount)} {(-n)} {(-o)} 
                      {(remount) (Lit_Comma ',') (nosuid) (Lit_Comma ',') (Lit_VarLike 'size=') 
                        ($ VSub_Name '$tmpfs_size') (Lit_Comma ',') (Lit_VarLike 'mode=') (0755)
                      } {(-t)} {(devtmpfs)} {(devtmpfs)} {(/dev)}
                    )
                    (ControlFlow token:<ControlFlow_Return return>)
                  ]
                  spids: [-1 114]
                )
              ]
              spids: [-1 145]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [
                            (C {(mount)} {(-n)} {(-o)} 
                              {(nosuid) (Lit_Comma ',') (Lit_VarLike 'size=') 
                                ($ VSub_Name '$tmpfs_size') (Lit_Comma ',') (Lit_VarLike 'mode=') (0755)
                              } {(-t)} {(devtmpfs)} {(devtmpfs)} {(/dev)}
                            )
                          ]
                          negated: True
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(log_failure_msg)} {(DQ ('udev requires devtmpfs support, not started'))})
                    (C {(log_end_msg)} {(1)})
                  ]
                  spids: [-1 176]
                )
              ]
              spids: [-1 191]
            )
            (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
          ]
          spids: [96]
        )
      spids: [92 95]
    )
    (FuncDef
      name: create_dev_makedev
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(Lit_Other '[')} {(-e)} {(/sbin/MAKEDEV)} {(Lit_Other ']')})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(ln)} {(-sf)} {(/sbin/MAKEDEV)} {(/dev/MAKEDEV)})]
                  spids: [-1 220]
                )
              ]
              else_action: [(C {(ln)} {(-sf)} {(/bin/true)} {(/dev/MAKEDEV)})]
              spids: [232 244]
            )
          ]
          spids: [206]
        )
      spids: [202 205]
    )
    (FuncDef
      name: supported_kernel
      body: 
        (BraceGroup
          children: [
            (Case
              to_match: 
                {
                  (DQ 
                    (CommandSubPart
                      command_list: (CommandList children:[(C {(uname)} {(-r)})])
                      left_token: <Left_CommandSub '$('>
                      spids: [259 263]
                    )
                  )
                }
              arms: [
                (case_arm
                  pat_list: [
                    {(2.) (Lit_Other '[') (012345) (Lit_Other ']') (.) (Lit_Other '*')}
                    {(2.6.) (Lit_Other '[') (0-9) (Lit_Other ']')}
                    {(2.6.) (Lit_Other '[') (0-9) (Lit_Other ']') (Lit_Other '[') (KW_Bang '!') (0-9) 
                      (Lit_Other ']') (Lit_Other '*')
                    }
                  ]
                  action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})]
                  spids: [269 290 296 -1]
                )
                (case_arm
                  pat_list: [
                    {(2.6.) (Lit_Other '[') (12) (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']')}
                    {(2.6.) (Lit_Other '[') (12) (Lit_Other ']') (Lit_Other '[') (0-9) (Lit_Other ']') 
                      (Lit_Other '[') (KW_Bang '!') (0-9) (Lit_Other ']') (Lit_Other '*')
                    }
                  ]
                  action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})]
                  spids: [299 319 325 -1]
                )
                (case_arm
                  pat_list: [
                    {(2.6.3) (Lit_Other '[') (0-1) (Lit_Other ']')}
                    {(2.6.3) (Lit_Other '[') (0-1) (Lit_Other ']') (Lit_Other '[') (KW_Bang '!') (0-9) 
                      (Lit_Other ']') (Lit_Other '*')
                    }
                  ]
                  action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})]
                  spids: [328 342 348 -1]
                )
              ]
              spids: [256 266 351]
            )
            (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
          ]
          spids: [253]
        )
      spids: [249 252]
    )
    (FuncDef
      name: my_tty
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(-x)} {(/bin/readlink)} {(Lit_Other ']')})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(-e)} {(/proc/self/fd/0)} {(Lit_Other ']')})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [(C {(readlink)} {(--silent)} {(/proc/self/fd/0)}) (C {(true)})]
              op_id: Op_DPipe
            )
          ]
          spids: [368]
        )
      spids: [364 367]
    )
    (FuncDef
      name: warn_if_interactive
      body: 
        (BraceGroup
          children: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$RUNLEVEL'))} {(Lit_Other '=')} {(DQ (S))} 
                          {(-a)} {(DQ ($ VSub_Name '$PREVLEVEL'))} {(Lit_Other '=')} {(DQ (N))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(ControlFlow token:<ControlFlow_Return return>)]
                  spids: [-1 450]
                )
              ]
              spids: [-1 456]
            )
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:TTY)
                  op: Equal
                  rhs: 
                    {
                      (CommandSubPart
                        command_list: (CommandList children:[(C {(my_tty)})])
                        left_token: <Left_CommandSub '$('>
                        spids: [461 463]
                      )
                    }
                  spids: [460]
                )
              ]
              spids: [460]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-z)} {(DQ ($ VSub_Name '$TTY'))} {(-o)} 
                          {(DQ ($ VSub_Name '$TTY'))} {(Lit_Other '=')} {(DQ (/dev/console))} {(-o)} {(DQ ($ VSub_Name '$TTY'))} {(Lit_Other '=')} 
                          {(DQ (/dev/null))} {(Lit_Other ']')}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(ControlFlow token:<ControlFlow_Return return>)]
                  spids: [-1 503]
                )
              ]
              spids: [-1 509]
            )
            (C {(printf)} 
              {
                (DQ (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) ('It has been detected that the command') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\t'>) 
                  ($ VSub_Number '$0') (' ') ($ VSub_Star '$*') (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>)
                )
              }
            )
            (C {(printf)} 
              {
                (DQ ('has been run from an interactive shell.') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>)
                )
              }
            )
            (C {(printf)} 
              {
                (DQ ('It will probably not do what you expect, so this script will wait') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>)
                )
              }
            )
            (C {(printf)} 
              {
                (DQ ('60 seconds before continuing. Press ^C to stop it.') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>)
                )
              }
            )
            (C {(printf)} 
              {
                (DQ ('RUNNING THIS COMMAND IS HIGHLY DISCOURAGED!') 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>) 
                  (EscapedLiteralPart token:<Lit_EscapedChar '\\n'>)
                )
              }
            )
            (C {(sleep)} {(60)})
          ]
          spids: [418]
        )
      spids: [414 417]
    )
    (FuncDef
      name: make_static_nodes
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(-e)} 
                  {(/lib/modules/) 
                    (CommandSubPart
                      command_list: (CommandList children:[(C {(uname)} {(-r)})])
                      left_token: <Left_CommandSub '$('>
                      spids: [585 589]
                    ) (/modules.devname)
                  } {(Lit_Other ']')}
                )
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
              op_id: Op_DPipe
            )
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(-x)} {(/bin/kmod)} {(Lit_Other ']')})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})
              ]
              op_id: Op_DPipe
            )
            (Pipeline
              children: [
                (C {(/bin/kmod)} {(static-nodes)} {(--format) (Lit_Other '=') (tmpfiles)} 
                  {(--output) (Lit_Other '=') (/proc/self/fd/1)}
                )
                (While
                  cond: [
                    (Sentence
                      child: (C {(read)} {(type)} {(name)} {(mode)} {(uid)} {(gid)} {(age)} {(arg)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  body: 
                    (DoGroup
                      children: [
                        (AndOr
                          children: [
                            (C {(Lit_Other '[')} {(-e)} {($ VSub_Name '$name')} {(Lit_Other ']')})
                            (ControlFlow
                              token: <ControlFlow_Continue continue>
                            )
                          ]
                          op_id: Op_DAmp
                        )
                        (Case
                          to_match: {(DQ ($ VSub_Name '$type'))}
                          arms: [
                            (case_arm
                              pat_list: [{(c)} {(b)} {(c) (KW_Bang '!')} {(b) (KW_Bang '!')}]
                              action: [
                                (C {(mknod)} {(-m)} {($ VSub_Name '$mode')} {($ VSub_Name '$name')} 
                                  {($ VSub_Name '$type')} 
                                  {
                                    (CommandSubPart
                                      command_list: 
                                        (CommandList
                                          children: [
                                            (Pipeline
                                              children: [
                                                (C {(echo)} {($ VSub_Name '$arg')})
                                                (C {(sed)} {(SQ <'s/:/ /'>)})
                                              ]
                                              negated: False
                                            )
                                          ]
                                        )
                                      left_token: <Left_CommandSub '$('>
                                      spids: [698 710]
                                    )
                                  }
                                )
                              ]
                              spids: [677 686 712 -1]
                            )
                            (case_arm
                              pat_list: [{(d)} {(d) (KW_Bang '!')}]
                              action: [(C {(mkdir)} {($ VSub_Name '$name')})]
                              spids: [715 719 725 -1]
                            )
                            (case_arm
                              pat_list: [{(Lit_Other '*')}]
                              action: [
                                (SimpleCommand
                                  words: [
                                    {(echo)}
                                    {
                                      (DQ ('unparseable line (') ($ VSub_Name '$type') (' ') 
                                        ($ VSub_Name '$name') (' ') ($ VSub_Name '$mode') (' ') ($ VSub_Name '$uid') (' ') ($ VSub_Name '$gid') (' ') ($ VSub_Name '$age') 
                                        (' ') ($ VSub_Name '$arg') (')')
                                      )
                                    }
                                  ]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_GreatAnd
                                      fd: -1
                                      arg_word: {(2)}
                                      spids: [751]
                                    )
                                  ]
                                )
                              ]
                              spids: [728 729 754 -1]
                            )
                          ]
                          spids: [668 674 757]
                        )
                        (If
                          arms: [
                            (if_arm
                              cond: [
                                (Sentence
                                  child: 
                                    (C {(Lit_Other '[')} {(-x)} {(/sbin/restorecon)} {(Lit_Other ']')})
                                  terminator: <Op_Semi ';'>
                                )
                              ]
                              action: [(C {(/sbin/restorecon)} {($ VSub_Name '$name')})]
                              spids: [-1 772]
                            )
                          ]
                          spids: [-1 780]
                        )
                      ]
                      spids: [652 783]
                    )
                )
              ]
              negated: False
            )
          ]
          spids: [577]
        )
      spids: [573 576]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:PATH) op:Equal rhs:{(DQ ('/sbin:/bin'))} spids:[793])]
      spids: [793]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:NAME) op:Equal rhs:{(DQ (systemd-udevd))} spids:[798])]
      spids: [798]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:DAEMON)
          op: Equal
          rhs: {(DQ (/lib/systemd/systemd-udevd))}
          spids: [803]
        )
      ]
      spids: [803]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:DESC)
          op: Equal
          rhs: {(DQ ('the hotplug events dispatcher'))}
          spids: [808]
        )
      ]
      spids: [808]
    )
    (AndOr
      children: [
        (C {(Lit_Other '[')} {(-x)} {($ VSub_Name '$DAEMON')} {(Lit_Other ']')})
        (C {(exit)} {(0)})
      ]
      op_id: Op_DPipe
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:tmpfs_size) op:Equal rhs:{(DQ (10M))} spids:[832])]
      spids: [832]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(-e)} {(/etc/udev/udev.conf)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [(C {(.)} {(/etc/udev/udev.conf)})]
          spids: [-1 849]
        )
      ]
      spids: [-1 856]
    )
    (C {(.)} {(/lib/lsb/init-functions)})
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (Pipeline children:[(C {(supported_kernel)})] negated:True)
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(log_failure_msg)} {(DQ ('udev requires a kernel >= 2.6.32, not started'))})
            (C {(log_end_msg)} {(1)})
          ]
          spids: [-1 871]
        )
      ]
      spids: [-1 885]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (C {(Lit_Other '[')} {(KW_Bang '!')} {(-e)} {(/proc/filesystems)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(log_failure_msg)} {(DQ ('udev requires a mounted procfs, not started'))})
            (C {(log_end_msg)} {(1)})
          ]
          spids: [-1 901]
        )
      ]
      spids: [-1 915]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (Pipeline
                  children: [(C {(grep)} {(-q)} {(SQ <'[[:space:]]devtmpfs$'>)} {(/proc/filesystems)})]
                  negated: True
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(log_failure_msg)} {(DQ ('udev requires devtmpfs support, not started'))})
            (C {(log_end_msg)} {(1)})
          ]
          spids: [-1 933]
        )
      ]
      spids: [-1 947]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-d)} {(/sys/class/)} {(Lit_Other ']')})
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(log_failure_msg)} {(DQ ('udev requires a mounted sysfs, not started'))})
            (C {(log_end_msg)} {(1)})
          ]
          spids: [-1 963]
        )
      ]
      spids: [-1 977]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (Pipeline
                  children: [
                    (C {(ps)} {(--no-headers)} {(--format)} {(args)} {(ax)})
                    (C {(egrep)} {(-q)} {(SQ <'^\\['>)})
                  ]
                  negated: True
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(log_warning_msg)} {(DQ ('udev does not support containers, not started'))})
            (C {(exit)} {(0)})
          ]
          spids: [-1 1005]
        )
      ]
      spids: [-1 1019]
    )
    (If
      arms: [
        (if_arm
          cond: [
            (Sentence
              child: 
                (AndOr
                  children: [
                    (C {(Lit_Other '[')} {(-d)} {(/sys/class/mem/null)} {(-a)} {(KW_Bang '!')} {(-L)} 
                      {(/sys/class/mem/null)} {(Lit_Other ']')}
                    )
                    (C {(Lit_Other '[')} {(-e)} {(/sys/block)} {(-a)} {(KW_Bang '!')} {(-e)} 
                      {(/sys/class/block)} {(Lit_Other ']')}
                    )
                  ]
                  op_id: Op_DPipe
                )
              terminator: <Op_Semi ';'>
            )
          ]
          action: [
            (C {(log_warning_msg)} {(DQ ('CONFIG_SYSFS_DEPRECATED must not be selected'))})
            (C {(log_warning_msg)} 
              {(DQ ('Booting will continue in 30 seconds but many things will be broken'))}
            )
            (C {(sleep)} {(30)})
          ]
          spids: [-1 1061]
        )
      ]
      spids: [-1 1082]
    )
    (Case
      to_match: {(DQ ($ VSub_Number '$1'))}
      arms: [
        (case_arm
          pat_list: [{(start)}]
          action: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (SimpleCommand
                          words: [{(init_is_upstart)}]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 2
                              arg_word: {(/dev/null)}
                              spids: [1112]
                            )
                          ]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(exit)} {(1)})]
                  spids: [-1 1116]
                )
              ]
              spids: [-1 1124]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(KW_Bang '!')} {(-e)} {(DQ (/run/udev/))} {(Lit_Other ']')})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(warn_if_interactive)})]
                  spids: [-1 1143]
                )
              ]
              spids: [-1 1149]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(Lit_Other '[')} {(-w)} {(/sys/kernel/uevent_helper)} {(Lit_Other ']')})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (SimpleCommand
                      words: [{(echo)}]
                      redirects: [
                        (Redir
                          op_id: Redir_Great
                          fd: -1
                          arg_word: {(/sys/kernel/uevent_helper)}
                          spids: [1169]
                        )
                      ]
                    )
                  ]
                  spids: [-1 1164]
                )
              ]
              spids: [-1 1174]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (Pipeline children:[(C {(mountpoint)} {(-q)} {(/dev/)})] negated:True)
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [
                    (C {(unmount_devpts)})
                    (C {(mount_devtmpfs)})
                    (AndOr
                      children: [
                        (C {(Lit_Other '[')} {(-d)} {(/proc/1)} {(Lit_Other ']')})
                        (C {(mount)} {(-n)} {(/proc)})
                      ]
                      op_id: Op_DPipe
                    )
                  ]
                  spids: [-1 1189]
                )
              ]
              spids: [-1 1215]
            )
            (C {(make_static_nodes)})
            (C {(udevadm)} {(info)} {(--cleanup-db)})
            (AndOr
              children: [
                (C {(Lit_Other '[')} {(-x)} {(/sbin/restorecon)} {(Lit_Other ']')})
                (C {(/sbin/restorecon)} {(-R)} {(/dev)})
              ]
              op_id: Op_DAmp
            )
            (C {(log_daemon_msg)} {(DQ ('Starting ') ($ VSub_Name '$DESC'))} {(DQ ($ VSub_Name '$NAME'))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {($ VSub_Name '$DAEMON')} {(--daemon)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(log_end_msg)} {($ VSub_QMark '$?')})]
                  spids: [-1 1276]
                )
              ]
              else_action: [
                (C {(log_warning_msg)} {($ VSub_QMark '$?')})
                (C {(log_warning_msg)} {(DQ ('Waiting 15 seconds and trying to continue anyway'))})
                (C {(sleep)} {(15)})
              ]
              spids: [1284 1304]
            )
            (C {(log_action_begin_msg)} {(DQ ('Synthesizing the initial hotplug events'))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(udevadm)} {(trigger)} {(--action) (Lit_Other '=') (add)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(log_action_end_msg)} {($ VSub_QMark '$?')})]
                  spids: [-1 1326]
                )
              ]
              else_action: [(C {(log_action_end_msg)} {($ VSub_QMark '$?')})]
              spids: [1334 1342]
            )
            (C {(create_dev_makedev)})
            (C {(log_action_begin_msg)} {(DQ ('Waiting for /dev to be fully populated'))})
            (If
              arms: [
                (if_arm
                  cond: [(Sentence child:(C {(udevadm)} {(settle)}) terminator:<Op_Semi ';'>)]
                  action: [(C {(log_action_end_msg)} {(0)})]
                  spids: [-1 1368]
                )
              ]
              else_action: [(C {(log_action_end_msg)} {(0)} {(SQ <timeout>)})]
              spids: [1376 1388]
            )
          ]
          spids: [1104 1105 1391 -1]
        )
        (case_arm
          pat_list: [{(stop)}]
          action: [
            (C {(log_daemon_msg)} {(DQ ('Stopping ') ($ VSub_Name '$DESC'))} {(DQ ($ VSub_Name '$NAME'))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(start-stop-daemon)} {(--stop)} {(--name)} {($ VSub_Name '$NAME')} {(--user)} 
                          {(root)} {(--quiet)} {(--oknodo)} {(--retry)} {(5)}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(log_end_msg)} {($ VSub_QMark '$?')})]
                  spids: [-1 1434]
                )
              ]
              else_action: [(C {(log_end_msg)} {($ VSub_QMark '$?')})]
              spids: [1442 1450]
            )
          ]
          spids: [1395 1396 1453 -1]
        )
        (case_arm
          pat_list: [{(restart)}]
          action: [
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (SimpleCommand
                          words: [{(init_is_upstart)}]
                          redirects: [
                            (Redir
                              op_id: Redir_Great
                              fd: 2
                              arg_word: {(/dev/null)}
                              spids: [1465]
                            )
                          ]
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(exit)} {(1)})]
                  spids: [-1 1469]
                )
              ]
              spids: [-1 1477]
            )
            (C {(log_daemon_msg)} {(DQ ('Stopping ') ($ VSub_Name '$DESC'))} {(DQ ($ VSub_Name '$NAME'))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(start-stop-daemon)} {(--stop)} {(--name)} {($ VSub_Name '$NAME')} {(--user)} 
                          {(root)} {(--quiet)} {(--oknodo)} {(--retry)} {(5)}
                        )
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(log_end_msg)} {($ VSub_QMark '$?')})]
                  spids: [-1 1515]
                )
              ]
              else_action: [
                (AndOr
                  children: [(C {(log_end_msg)} {($ VSub_QMark '$?')}) (C {(true)})]
                  op_id: Op_DPipe
                )
              ]
              spids: [1523 1535]
            )
            (C {(log_daemon_msg)} {(DQ ('Starting ') ($ VSub_Name '$DESC'))} {(DQ ($ VSub_Name '$NAME'))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {($ VSub_Name '$DAEMON')} {(--daemon)})
                      terminator: <Op_Semi ';'>
                    )
                  ]
                  action: [(C {(log_end_msg)} {($ VSub_QMark '$?')})]
                  spids: [-1 1558]
                )
              ]
              else_action: [(C {(log_end_msg)} {($ VSub_QMark '$?')})]
              spids: [1566 1574]
            )
          ]
          spids: [1457 1458 1577 -1]
        )
        (case_arm
          pat_list: [{(reload)} {(force-reload)}]
          action: [(C {(udevadm)} {(control)} {(--reload-rules)})]
          spids: [1581 1584 1594 -1]
        )
        (case_arm
          pat_list: [{(status)}]
          action: [
            (AndOr
              children: [
                (C {(status_of_proc)} {($ VSub_Name '$DAEMON')} {($ VSub_Name '$NAME')})
                (AndOr
                  children: [(C {(exit)} {(0)}) (C {(exit)} {($ VSub_QMark '$?')})]
                  op_id: Op_DPipe
                )
              ]
              op_id: Op_DAmp
            )
          ]
          spids: [1598 1599 1621 -1]
        )
        (case_arm
          pat_list: [{(Lit_Other '*')}]
          action: [
            (SimpleCommand
              words: [
                {(echo)}
                {(DQ ('Usage: /etc/init.d/udev {start|stop|restart|reload|force-reload|status}'))}
              ]
              redirects: [(Redir op_id:Redir_GreatAnd fd:-1 arg_word:{(2)} spids:[1635])]
            )
            (C {(exit)} {(1)})
          ]
          spids: [1625 1626 1644 -1]
        )
      ]
      spids: [1095 1101 1646]
    )
    (C {(exit)} {(0)})
  ]
)