(command.CommandList children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(Id.Lit_LBracket '[')} {(-x)} {(/usr/sbin/alsactl)} {(Id.Lit_RBracket ']')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:75) arg_word: {(0)} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:PATH) op: assign_op.Equal rhs: {(/usr/local/sbin) (Id.Lit_Other ':') (/usr/local/bin) (Id.Lit_Other ':') (/usr/sbin) (Id.Lit_Other ':') (/usr/bin) (Id.Lit_Other ':') (/sbin) (Id.Lit_Other ':') (/bin) } spids: [80] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MYNAME) op: assign_op.Equal rhs: {(/etc/init.d/alsa-utils)} spids: [93] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:ALSACTLHOME) op: assign_op.Equal rhs: {(/run/alsa)} spids: [96] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(Id.Lit_LBracket '[')} {(-d)} {(DQ ($ Id.VSub_DollarName '$ALSACTLHOME'))} {(Id.Lit_RBracket ']')} ) (C {(mkdir)} {(-p)} {(DQ ($ Id.VSub_DollarName '$ALSACTLHOME'))}) ] ) (C {(.)} {(/lib/lsb/init-functions)}) (C {(.)} {(/usr/share/alsa/utils.sh)}) (command.ShFunction name: log_action_end_msg_and_exit body: (command.BraceGroup children: [ (C {(log_action_end_msg)} {(DQ ($ Id.VSub_Number '$1'))} { (braced_var_sub token: (Token id:Id.VSub_Number val:2 span_id:150) suffix_op: (suffix_op.Unary op_id: Id.VTest_ColonPlus arg_word: {(DQ ($ Id.VSub_Number '$2'))} ) ) } ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:158) arg_word: {($ Id.VSub_Number '$1')} ) ] ) ) (command.ShFunction name: executable body: (command.BraceGroup children: [ (command.AndOr ops: [Id.Op_DPipe Id.Op_DPipe] children: [ (C {(Id.Lit_LBracket '[')} {(-x)} {(/bin/which)} {(Id.Lit_RBracket ']')}) (C {(Id.Lit_LBracket '[')} {(-x)} {(/usr/bin/which)} {(Id.Lit_RBracket ']')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:207) arg_word: {(1)} ) ] ) (command.Simple words: [{(which)} {(DQ ($ Id.VSub_Number '$1'))}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'>' span_id:218) fd: -1 arg_word: {(/dev/null)} ) (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'2>&' span_id:221) fd: 2 arg_word: {(1)} ) ] ) ] ) ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(executable)} {(amixer)}) (command.BraceGroup children: [ (command.Sentence child: (command.Simple words: [ {(echo)} {(DQ (${ Id.VSub_Name MYNAME) (': Error: No amixer program available.'))} ] redirects: [ (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:244) fd: -1 arg_word: {(2)} ) ] ) terminator: (Token id:Id.Op_Semi val:';' span_id:247) ) (command.Sentence child: (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:249) arg_word: {(1)} ) terminator: (Token id:Id.Op_Semi val:';' span_id:253) ) ] ) ] ) (command.ShFunction name: restore_levels body: (command.BraceGroup children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(Id.Lit_LBracket '[')} {(-f)} {(/var/lib/alsa/asound.state)} {(Id.Lit_RBracket ']')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:278) arg_word: {(1)} ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CARD) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [283] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_Number '$1'))} {(Id.Lit_Equals '=')} {(all)} {(Id.Lit_RBracket ']')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CARD) op: assign_op.Equal rhs: {(DQ )} spids: [303] ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MSG) op: assign_op.Equal rhs: { (DQ (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 328 ) command_list: (command.CommandList children: [ (command.Simple words: [ {(alsactl)} {(-E)} {(Id.Lit_VarLike 'HOME=') (DQ ($ Id.VSub_DollarName '$ALSACTLHOME')) } {(restore)} {($ Id.VSub_DollarName '$CARD')} ] redirects: [ (redir.Redir op: (Token id: Id.Redir_GreatAnd val: '2>&' span_id: 342 ) fd: 2 arg_word: {(1)} ) (redir.Redir op: (Token id: Id.Redir_Great val: '>' span_id: 345 ) fd: -1 arg_word: {(/dev/null)} ) ] ) ] ) ) ) } spids: [326] ) ] ) (C {(Id.Lit_LBracket '[')} {(Id.KW_Bang '!')} {(DQ ($ Id.VSub_DollarName '$MSG'))} {(Id.Lit_RBracket ']')} ) ] ) terminator: (Token id:Id.Op_Semi val:';' span_id:362) ) ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:367) arg_word: {(0)} ) ] spids: [324 364] ) ] else_action: [ (command.Simple words: [{(alsactl)} {(-F)} {(restore)} {($ Id.VSub_DollarName '$CARD')}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'>' span_id:391) fd: -1 arg_word: {(/dev/null)} ) (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'2>&' span_id:394) fd: 2 arg_word: {(1)} ) ] ) (C {(log_action_cont_msg)} {(DQ ("warning: 'alsactl -E HOME=")) ($ Id.VSub_DollarName '$ALSACTLHOME') (DQ (' restore') (braced_var_sub token: (Token id:Id.VSub_Name val:CARD span_id:407) suffix_op: (suffix_op.Unary op_id: Id.VTest_ColonPlus arg_word: {(' ') ($ Id.VSub_DollarName '$CARD')} ) ) ("' failed with error message '") ($ Id.VSub_DollarName '$MSG') ("'") ) } ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:418) arg_word: {(1)} ) ] ) ] ) ) (command.ShFunction name: store_levels body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CARD) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$1'))} spids: [438] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_Number '$1'))} {(Id.Lit_Equals '=')} {(all)} {(Id.Lit_RBracket ']')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CARD) op: assign_op.Equal rhs: {(DQ )} spids: [458] ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:MSG) op: assign_op.Equal rhs: { (DQ (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:467) command_list: (command.CommandList children: [ (command.Simple words: [ {(alsactl)} {(-E)} {(Id.Lit_VarLike 'HOME=') (DQ ($ Id.VSub_DollarName '$ALSACTLHOME')) } {(store)} {($ Id.VSub_DollarName '$CARD')} ] redirects: [ (redir.Redir op: (Token id: Id.Redir_GreatAnd val: '2>&' span_id: 481 ) fd: 2 arg_word: {(1)} ) ] ) ] ) ) ) } spids: [465] ) ] ) terminator: (Token id:Id.Op_Semi val:';' span_id:486) ) ] action: [ (C {(sleep)} {(1)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:496) arg_word: {(0)} ) ] spids: [463 488] ) ] else_action: [ (C {(log_action_cont_msg)} { (DQ ("warning: 'alsactl store") (braced_var_sub token: (Token id:Id.VSub_Name val:CARD span_id:509) suffix_op: (suffix_op.Unary op_id: Id.VTest_ColonPlus arg_word: {(' ') ($ Id.VSub_DollarName '$CARD')} ) ) ("' failed with error message '") ($ Id.VSub_DollarName '$MSG') ("'") ) } ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:520) arg_word: {(1)} ) ] ) ] ) ) (command.ShFunction name: mute_and_zero_levels_on_card body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:CARDOPT) op: assign_op.Equal rhs: {(DQ ('-c ') ($ Id.VSub_Number '$1'))} spids: [541] ) ] ) (command.ForEach iter_name: CTL iter_words: [ {(Master)} {(PCM)} {(Synth)} {(CD)} {(Line)} {(Mic)} {(DQ ('PCM,1'))} {(Wave)} {(Music)} {(AC97)} {(DQ ('Master Digital'))} {(DAC)} {(DQ ('DAC,0'))} {(DQ ('DAC,1'))} {(Headphone)} {(Speaker)} {(Playback)} ] do_arg_iter: F body: (command.DoGroup children: [(C {(mute_and_zero_level)} {(DQ ($ Id.VSub_DollarName '$CTL'))})] ) ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:662) arg_word: {(0)} ) ] ) ) (command.ShFunction name: mute_and_zero_levels body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TTZML_RETURNSTATUS) op: assign_op.Equal rhs: {(0)} spids: [679] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_Number '$1'))} arms: [ (case_arm pat_list: [{(all)}] action: [ (command.ForEach iter_name: CARD iter_words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:702) command_list: (command.CommandList children:[(C {(echo_card_indices)})]) ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(mute_and_zero_levels_on_card)} {(DQ ($ Id.VSub_DollarName '$CARD'))} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TTZML_RETURNSTATUS) op: assign_op.Equal rhs: {(1)} spids: [719] ) ] ) ] ) ] ) ) ] spids: [692 693 726 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(mute_and_zero_levels_on_card)} {(DQ ($ Id.VSub_Number '$1'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TTZML_RETURNSTATUS) op: assign_op.Equal rhs: {(1)} spids: [741] ) ] ) ] ) ] spids: [729 730 745 -1] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:751) arg_word: {($ Id.VSub_DollarName '$TTZML_RETURNSTATUS')} ) ] ) ) (command.ShFunction name: card_OK body: (command.BraceGroup children: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_Number '$1'))} {(Id.Lit_RBracket ']')}) (C {(bugout)}) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(DQ ($ Id.VSub_Number '$1'))} {(Id.Lit_Equals '=')} {(all)} {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:796) ) ] action: [ (C {(Id.Lit_LBracket '[')} {(-d)} {(/proc/asound)} {(Id.Lit_RBracket ']')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:810) arg_word: {($ Id.VSub_QMark '$?')} ) ] spids: [782 798] ) ] else_action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(Id.Lit_LBracket '[')} {(-d)} {(DQ (/proc/asound/card) ($ Id.VSub_Number '$1'))} {(Id.Lit_RBracket ']')} ) (C {(Id.Lit_LBracket '[')} {(-d)} {(DQ (/proc/asound/) ($ Id.VSub_Number '$1'))} {(Id.Lit_RBracket ']')} ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:843) arg_word: {($ Id.VSub_QMark '$?')} ) ] ) ] ) ) (command.Case to_match: {(DQ ($ Id.VSub_Number '$1'))} arms: [ (case_arm pat_list: [{(start)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXITSTATUS) op: assign_op.Equal rhs: {(0)} spids: [873] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TARGET_CARD) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [877] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))} arms: [ (case_arm pat_list: [{(DQ )} {(all)}] action: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TARGET_CARD) op: assign_op.Equal rhs: {(all)} spids: [898] ) ] ) terminator: (Token id:Id.Op_Semi val:';' span_id:901) ) (C {(log_action_begin_msg)} {(DQ ('Setting up ALSA'))}) ] spids: [892 896 909 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (C {(log_action_begin_msg)} {(DQ ('Setting up ALSA card ') (${ Id.VSub_Name TARGET_CARD))} ) ] spids: [912 913 924 -1] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(card_OK)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}) (C {(log_action_end_msg_and_exit)} { (DQ (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:941) command_list: (command.CommandList children: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(Id.KW_Bang '!')} {(DQ ($ Id.VSub_Number '$2'))} {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:953) ) (command.Sentence child: (C {(echo)} {($ Id.VSub_QMark '$?')}) terminator: (Token id:Id.Op_Semi val:';' span_id:959) ) ] ) ) ) } {(DQ ('none loaded'))} ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(preinit_levels)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXITSTATUS) op: assign_op.Equal rhs: {(1)} spids: [977] ) ] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.Pipeline children: [(C {(restore_levels)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))})] negated: T ) terminator: (Token id:Id.Op_Semi val:';' span_id:991) ) ] action: [ (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(sanify_levels)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXITSTATUS) op: assign_op.Equal rhs: {(1)} spids: [1004] ) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (command.Simple words: [{(restore_levels)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'>' span_id:1014) fd: -1 arg_word: {(/dev/null)} ) (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'2>&' span_id:1017) fd: 2 arg_word: {(1)} ) ] ) (C {(Id.Lit_Other ':')}) ] ) ] spids: [981 993] ) ] ) (C {(log_action_end_msg_and_exit)} {(DQ ($ Id.VSub_DollarName '$EXITSTATUS'))}) ] spids: [869 870 1035 -1] ) (case_arm pat_list: [{(stop)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXITSTATUS) op: assign_op.Equal rhs: {(0)} spids: [1042] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TARGET_CARD) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [1046] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))} arms: [ (case_arm pat_list: [{(DQ )} {(all)}] action: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TARGET_CARD) op: assign_op.Equal rhs: {(all)} spids: [1067] ) ] ) terminator: (Token id:Id.Op_Semi val:';' span_id:1070) ) (C {(log_action_begin_msg)} {(DQ ('Shutting down ALSA'))}) ] spids: [1061 1065 1078 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (C {(log_action_begin_msg)} {(DQ ('Shutting down ALSA card ') (${ Id.VSub_Name TARGET_CARD))} ) ] spids: [1081 1082 1093 -1] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(card_OK)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}) (C {(log_action_end_msg_and_exit)} { (DQ (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:1110) command_list: (command.CommandList children: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(Id.KW_Bang '!')} {(DQ ($ Id.VSub_Number '$2'))} {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:1122) ) (command.Sentence child: (C {(echo)} {($ Id.VSub_QMark '$?')}) terminator: (Token id:Id.Op_Semi val:';' span_id:1128) ) ] ) ) ) } {(DQ ('none loaded'))} ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(store_levels)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXITSTATUS) op: assign_op.Equal rhs: {(1)} spids: [1146] ) ] ) ] ) (C {(log_action_end_msg_and_exit)} {(DQ ($ Id.VSub_DollarName '$EXITSTATUS'))}) ] spids: [1038 1039 1161 -1] ) (case_arm pat_list: [{(restart)} {(force-reload)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXITSTATUS) op: assign_op.Equal rhs: {(0)} spids: [1170] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_Number '$0')} {(stop)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXITSTATUS) op: assign_op.Equal rhs: {(1)} spids: [1180] ) ] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {($ Id.VSub_Number '$0')} {(start)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:EXITSTATUS) op: assign_op.Equal rhs: {(1)} spids: [1190] ) ] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:1194) arg_word: {($ Id.VSub_DollarName '$EXITSTATUS')} ) ] spids: [1164 1167 1199 -1] ) (case_arm pat_list: [{(reset)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TARGET_CARD) op: assign_op.Equal rhs: {(DQ ($ Id.VSub_Number '$2'))} spids: [1206] ) ] ) (command.Case to_match: {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))} arms: [ (case_arm pat_list: [{(DQ )} {(all)}] action: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:TARGET_CARD) op: assign_op.Equal rhs: {(all)} spids: [1227] ) ] ) terminator: (Token id:Id.Op_Semi val:';' span_id:1230) ) (C {(log_action_begin_msg)} {(DQ ('Resetting ALSA'))}) ] spids: [1221 1225 1238 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (C {(log_action_begin_msg)} {(DQ ('Resetting ALSA card ') (${ Id.VSub_Name TARGET_CARD))} ) ] spids: [1241 1242 1253 -1] ) ] ) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(card_OK)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}) (C {(log_action_end_msg_and_exit)} { (DQ (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:1270) command_list: (command.CommandList children: [ (command.Sentence child: (C {(Id.Lit_LBracket '[')} {(Id.KW_Bang '!')} {(DQ ($ Id.VSub_Number '$2'))} {(Id.Lit_RBracket ']')} ) terminator: (Token id:Id.Op_Semi val:';' span_id:1282) ) (command.Sentence child: (C {(echo)} {($ Id.VSub_QMark '$?')}) terminator: (Token id:Id.Op_Semi val:';' span_id:1288) ) ] ) ) ) } {(DQ ('none loaded'))} ) ] ) (C {(preinit_levels)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}) (C {(sanify_levels)} {(DQ ($ Id.VSub_DollarName '$TARGET_CARD'))}) (C {(log_action_end_msg_and_exit)} {(DQ ($ Id.VSub_QMark '$?'))}) ] spids: [1202 1203 1319 -1] ) (case_arm pat_list: [{(Id.Lit_Star '*')}] action: [ (command.Simple words: [ {(echo)} { (DQ ('Usage: ') ($ Id.VSub_DollarName '$MYNAME') (' {start [CARD]|stop [CARD]|restart [CARD]|reset [CARD]}') ) } ] redirects: [ (redir.Redir op: (Token id:Id.Redir_GreatAnd val:'>&' span_id:1334) fd: -1 arg_word: {(2)} ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Exit val:exit span_id:1338) arg_word: {(3)} ) ] spids: [1322 1323 1343 -1] ) ] ) ] )