(command.CommandList children: [ (C {(Id.KW_Set set)} {(-e)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DAEMON) op: assign_op.Equal rhs: {(/sbin/brltty)} spids: [42] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:NAME) op: assign_op.Equal rhs: {(brltty)} spids: [45] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:DESC) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'Braille terminal driver' span_id:50))} spids: [48] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(test)} {(-f)} {($ Id.VSub_DollarName '$DAEMON')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:62) arg_word: {(0)} ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (C {(Id.Lit_LBracket '[')} {(-e)} {(/dev/.initramfs/brltty.conf)} {(Id.Lit_RBracket ']')} ) (C {(Id.Lit_LBracket '[')} {(-e)} {(/etc/default/brltty)} {(Id.Lit_RBracket ']')}) ] ) terminator: (Token id:Id.Op_Semi val:';' span_id:92) ) ] action: [ (C {(mv)} {(/dev/.initramfs/brltty.conf)} {(/etc/brltty.conf)}) (C {(sed)} {(-i)} {(-e)} {(SQ (Token id:Id.Lit_Chars val:'s/^RUN_BRLTTY=.*/RUN_BRLTTY=yes/' span_id:111))} {(/etc/default/brltty)} ) ] spids: [73 94] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {(Id.Lit_LBracket '[')} {(-r)} {(/etc/default/brltty)} {(Id.Lit_RBracket ']')}) (C {(.)} {(/etc/default/brltty)}) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_DollarName '$RUN_BRLTTY'))} {(Id.KW_Bang '!') (Id.Lit_Equals '=')} {(yes)} {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:154) ) ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:159) arg_word: {(0)} ) ] spids: [140 156] ) ] ) (C {(Id.KW_Set set)} {(-e)}) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {(Id.Lit_LBracket '[')} {(-r)} {(/etc/default/locale)} {(Id.Lit_RBracket ']')}) (C {(.)} {(/etc/default/locale)}) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {(Id.Lit_LBracket '[')} {(-n)} {(DQ ($ Id.VSub_DollarName '$LANG'))} {(Id.Lit_RBracket ']')}) (C {(export)} {(LANG)}) ] ) (C {(.)} {(/lib/lsb/init-functions)}) (command.Case to_match: {(DQ ($ Id.VSub_Number '$1'))} arms: [ (case_arm pat_list: [{(start)}] action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_DollarName '$RUNLEVEL'))} {(Id.Lit_Equals '=')} {(DQ (S))} {(-a)} {(DQ ($ Id.VSub_DollarName '$PREVLEVEL'))} {(Id.Lit_Equals '=')} {(DQ (N))} {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:247) ) ] action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_DollarName '$START_IN_INITRAMFS'))} {(Id.Lit_Equals '=')} {(DQ (true))} {(-o)} {(DQ ($ Id.VSub_DollarName '$START_IN_INITRAMFS'))} {(Id.Lit_Equals '=')} {(DQ (yes))} {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:279) ) ] action: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.Simple words: [{($ Id.VSub_Number '$0')} {(status)}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'>' span_id:290) fd: -1 arg_word: {(/dev/null)} ) ] ) terminator: (Token id:Id.Op_Semi val:';' span_id:292) ) ] action: [(C {($ Id.VSub_Number '$0')} {(stop)})] spids: [284 294] ) ] else_action: [ (C {(log_warning_msg)} { (SQ (Token id: Id.Lit_Chars val: 'BRLTTY was not running, did you forget to invoke "update-initramfs -u"?' span_id: 308 ) ) } ) ] ) ] spids: [252 281] ) ] ) ] spids: [220 249] ) ] ) (C {(log_daemon_msg)} {(DQ ('Starting ') ($ Id.VSub_DollarName '$DESC'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(start-stop-daemon)} {(--start)} {(--oknodo)} {(--exec)} {($ Id.VSub_DollarName '$DAEMON')} {(--)} {($ Id.VSub_DollarName '$ARGUMENTS')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:348) ) ] action: [(C {(log_end_msg)} {(0)})] spids: [333 350] ) ] else_action: [(C {(log_end_msg)} {(1)})] ) ] spids: [216 217 369 -1] ) (case_arm pat_list: [{(stop)}] action: [ (C {(log_daemon_msg)} {(DQ ('Stopping ') ($ Id.VSub_DollarName '$DESC'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(start-stop-daemon)} {(--stop)} {(--quiet)} {(--oknodo)} {(--retry)} {(5)} {(--exec)} {($ Id.VSub_DollarName '$DAEMON')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:405) ) ] action: [(C {(log_end_msg)} {(0)})] spids: [388 407] ) ] else_action: [(C {(log_end_msg)} {(1)})] ) ] spids: [372 373 426 -1] ) (case_arm pat_list: [{(restart)} {(force-reload)}] action: [ (C {(log_daemon_msg)} {(DQ ('Restarting ') ($ Id.VSub_DollarName '$DESC'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (C {(start-stop-daemon)} {(--stop)} {(--quiet)} {(--retry)} {(5)} {(--exec)} {($ Id.VSub_DollarName '$DAEMON')} ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(start-stop-daemon)} {(--start)} {(--quiet)} {(--exec)} {($ Id.VSub_DollarName '$DAEMON')} {(--)} {($ Id.VSub_DollarName '$ARGUMENTS')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:477) ) ] action: [(C {(log_end_msg)} {(0)})] spids: [462 479] ) ] else_action: [(C {(log_end_msg)} {(1)})] ) ] spids: [429 432 498 -1] ) (case_arm pat_list: [{(status)}] action: [ (command.AndOr ops: [Id.Op_DAmp Id.Op_DPipe] children: [ (C {(status_of_proc)} {(DQ ($ Id.VSub_DollarName '$DAEMON'))} {(DQ ($ Id.VSub_DollarName '$NAME'))} ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:517) arg_word: {(0)} ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:523) arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ] spids: [501 502 528 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.Simple words: [ {(echo)} { (DQ ('Usage: /etc/init.d/') ($ Id.VSub_DollarName '$NAME') (' {start|stop|restart|force-reload|status}') ) } ] redirects: [ (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:543) fd: -1 arg_word: {(2)} ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:547) arg_word: {(1)} ) ] spids: [531 532 552 -1] ) ] ) (command.ControlFlow token:(Token id:Id.ControlFlow_Exit val:exit span_id:557) arg_word:{(0)}) ] )