(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)})
  ]
)