(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:PATH)
          op: Equal
          rhs: {(/sbin) (Lit_Other ":") (/bin) (Lit_Other ":") (/usr/sbin) (Lit_Other ":") (/usr/bin)}
          spids: [67]
        )
      ]
      spids: [67]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:DESC) op:Equal rhs:{(bluetooth)} spids:[76])]
      spids: [76]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:DAEMON)
          op: Equal
          rhs: {(/usr/sbin/bluetoothd)}
          spids: [80]
        )
      ]
      spids: [80]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:HCIATTACH)
          op: Equal
          rhs: {(/usr/bin/hciattach)}
          spids: [83]
        )
      ]
      spids: [83]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:BLUETOOTH_ENABLED) op:Equal rhs:{(0)} spids:[87])]
      spids: [87]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:HID2HCI_ENABLED) op:Equal rhs:{(1)} spids:[90])]
      spids: [90]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:HID2HCI_UNDO) op:Equal rhs:{(1)} spids:[93])]
      spids: [93]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:SDPTOOL) op:Equal rhs:{(/usr/bin/sdptool)} spids:[97])]
      spids: [97]
    )
    (Assignment
      keyword: Assign_None
      pairs: [(assign_pair lhs:(LhsName name:NOPLUGIN_OPTION) op:Equal rhs:{(DQ )} spids:[110])]
      spids: [110]
    )
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:SSD_OPTIONS)
          op: Equal
          rhs: 
            {
              (DQ ("--oknodo --quiet --exec ") ($ VSub_Name "$DAEMON") (" -- ") 
                ($ VSub_Name "$NOPLUGIN_OPTION")
              )
            }
          spids: [114]
        )
      ]
      spids: [114]
    )
    (AndOr
      children: [(C {(test)} {(-f)} {($ VSub_Name "$DAEMON")}) (C {(exit)} {(0)})]
      op_id: Op_DPipe
    )
    (AndOr
      children: [(C {(test)} {(-f)} {(/etc/default/bluetooth)}) (C {(.)} {(/etc/default/bluetooth)})]
      op_id: Op_DAmp
    )
    (AndOr
      children: [(C {(test)} {(-f)} {(/etc/default/rcS)}) (C {(.)} {(/etc/default/rcS)})]
      op_id: Op_DAmp
    )
    (C {(.)} {(/lib/lsb/init-functions)})
    (C {(set)} {(-e)})
    (FuncDef
      name: run_sdptool
      body: 
        (BraceGroup
          children: [
            (Assignment
              keyword: Assign_Local
              pairs: [
                (assign_pair lhs:(LhsName name:IFS) op:Equal spids:[194])
                (assign_pair lhs:(LhsName name:o) op:Equal spids:[196])
              ]
              spids: [192]
            )
            (AndOr
              children: [
                (C {(test)} {(-x)} {($ VSub_Name "$SDPTOOL")})
                (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)})
              ]
              op_id: Op_DPipe
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (Pipeline
                          children: [(C {(test)} {(-z)} {(DQ ($ VSub_Name "$SDPTOOL_OPTIONS"))})]
                          negated: True
                        )
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (Assignment
                      keyword: Assign_None
                      pairs: [
                        (assign_pair
                          lhs: (LhsName name:IFS)
                          op: Equal
                          rhs: {(DQ (";"))}
                          spids: [234]
                        )
                      ]
                      spids: [234]
                    )
                    (ForEach
                      iter_name: o
                      iter_words: [{($ VSub_Name "$SDPTOOL_OPTIONS")}]
                      do_arg_iter: False
                      body: 
                        (DoGroup
                          children: [
                            (Assignment
                              keyword: Assign_None
                              pairs: [
                                (assign_pair
                                  lhs: (LhsName name:IFS)
                                  op: Equal
                                  rhs: {(DQ (" "))}
                                  spids: [257]
                                )
                              ]
                              spids: [257]
                            )
                            (If
                              arms: [
                                (if_arm
                                  cond: [
                                    (Sentence
                                      child: 
                                        (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$VERBOSE"))} 
                                          {(KW_Bang "!") (Lit_Other "=")} {(no)} {(Lit_Other "]")}
                                        )
                                      terminator: <Op_Semi ";">
                                    )
                                  ]
                                  action: [(C {($ VSub_Name "$SDPTOOL")} {($ VSub_Name "$o")})]
                                  spids: [-1 279]
                                )
                              ]
                              else_action: [
                                (SimpleCommand
                                  words: [{($ VSub_Name "$SDPTOOL")} {($ VSub_Name "$o")}]
                                  redirects: [
                                    (Redir
                                      op_id: Redir_Great
                                      fd: -1
                                      arg_word: {(/dev/null)}
                                      spids: [294]
                                    )
                                    (Redir
                                      op_id: Redir_GreatAnd
                                      fd: 2
                                      arg_word: {(1)}
                                      spids: [297]
                                    )
                                  ]
                                )
                              ]
                              spids: [287 301]
                            )
                          ]
                          spids: [250 304]
                        )
                      spids: [245 248]
                    )
                  ]
                  spids: [-1 231]
                )
              ]
              spids: [-1 307]
            )
          ]
          spids: [181]
        )
      spids: [177 180]
    )
    (FuncDef
      name: hci_input
      body: 
        (BraceGroup
          children: [
            (AndOr
              children: [
                (C {(log_progress_msg)} 
                  {
                    (DQ 
                      (
"switching to HID/HCI no longer done in init script, see /usr/share/doc/bluez/NEWS.Debian.gz"
                      )
                    )
                  }
                )
                (C {(Lit_Other ":")})
              ]
              op_id: Op_DPipe
            )
          ]
          spids: [316]
        )
      spids: [312 315]
    )
    (C {(alias)} {(Lit_VarLike "enable_hci_input=") (hci_input)})
    (C {(alias)} {(Lit_VarLike "disable_hci_input=") (hci_input)})
    (Case
      to_match: {($ VSub_Number "$1")}
      arms: [
        (case_arm
          pat_list: [{(start)}]
          action: [
            (C {(log_daemon_msg)} {(DQ ("Starting ") ($ VSub_Name "$DESC"))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name "$BLUETOOTH_ENABLED"))} {(Lit_Other "=")} {(0)})
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (C {(log_progress_msg)} {(DQ ("disabled. see /etc/default/bluetooth"))})
                    (C {(log_end_msg)} {(0)})
                    (C {(exit)} {(0)})
                  ]
                  spids: [-1 375]
                )
              ]
              spids: [-1 395]
            )
            (C {(start-stop-daemon)} {(--start)} {(--background)} {($ VSub_Name "$SSD_OPTIONS")})
            (C {(log_progress_msg)} 
              {
                (DQ 
                  (BracedVarSub
                    token: <VSub_Name DAEMON>
                    suffix_op: (StringUnary op_id:VOp1_DPound arg_word:{("*") (Lit_Slash /)})
                    spids: [411 416]
                  )
                )
              }
            )
            (AndOr children:[(C {(run_sdptool)})(C {(Lit_Other ":")})] op_id:Op_DPipe)
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name "$HID2HCI_ENABLED"))} {(Lit_Other "=")} {(1)})
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [(C {(enable_hci_input)})]
                  spids: [-1 442]
                )
              ]
              spids: [-1 448]
            )
            (C {(log_end_msg)} {(0)})
          ]
          spids: [349 350 457 -1]
        )
        (case_arm
          pat_list: [{(stop)}]
          action: [
            (C {(log_daemon_msg)} {(DQ ("Stopping ") ($ VSub_Name "$DESC"))})
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: 
                        (C {(test)} {(DQ ($ VSub_Name "$BLUETOOTH_ENABLED"))} {(Lit_Other "=")} {(0)})
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [
                    (C {(log_progress_msg)} {(DQ (disabled.))})
                    (C {(log_end_msg)} {(0)})
                    (C {(exit)} {(0)})
                  ]
                  spids: [-1 485]
                )
              ]
              spids: [-1 505]
            )
            (If
              arms: [
                (if_arm
                  cond: [
                    (Sentence
                      child: (C {(test)} {(DQ ($ VSub_Name "$HID2HCI_UNDO"))} {(Lit_Other "=")} {(1)})
                      terminator: <Op_Semi ";">
                    )
                  ]
                  action: [(C {(disable_hci_input)})]
                  spids: [-1 521]
                )
              ]
              spids: [-1 527]
            )
            (C {(start-stop-daemon)} {(--stop)} {($ VSub_Name "$SSD_OPTIONS")})
            (C {(log_progress_msg)} {(DQ (${ VSub_Name DAEMON))})
            (C {(log_end_msg)} {(0)})
          ]
          spids: [460 461 551 -1]
        )
        (case_arm
          pat_list: [{(restart)} {(force-reload)}]
          action: [
            (C {($ VSub_Number "$0")} {(stop)})
            (C {(sleep)} {(1)})
            (C {($ VSub_Number "$0")} {(start)})
          ]
          spids: [554 557 575 -1]
        )
        (case_arm
          pat_list: [{(status)}]
          action: [
            (AndOr
              children: [
                (C {(status_of_proc)} {(DQ ($ VSub_Name "$DAEMON"))} {(DQ ($ VSub_Name "$DESC"))})
                (AndOr
                  children: [(C {(exit)} {(0)}) (C {(exit)} {($ VSub_QMark "$?")})]
                  op_id: Op_DPipe
                )
              ]
              op_id: Op_DAmp
            )
          ]
          spids: [578 579 605 -1]
        )
        (case_arm
          pat_list: [{(Lit_Other "*")}]
          action: [
            (Assignment
              keyword: Assign_None
              pairs: [
                (assign_pair
                  lhs: (LhsName name:N)
                  op: Equal
                  rhs: {(/etc/init.d/bluetooth)}
                  spids: [612]
                )
              ]
              spids: [612]
            )
            (SimpleCommand
              words: [
                {(echo)}
                {(DQ ("Usage: ") ($ VSub_Name "$N") (" {start|stop|restart|force-reload|status}"))}
              ]
              redirects: [(Redir op_id:Redir_GreatAnd fd:-1 arg_word:{(2)} spids:[624])]
            )
            (C {(exit)} {(1)})
          ]
          spids: [608 609 633 -1]
        )
      ]
      spids: [342 346 635]
    )
    (C {(exit)} {(0)})
  ]
)