(command.CommandList children: [ (command.FuncDef name: _ipmitool_singleline_help body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[11]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (command.SimpleCommand words: [ {($ VSub_Number '$1')} {($ VSub_Number '$2')} ] redirects: [ (redir.Redir op: <Redir_GreatAnd '2>&'> fd: 2 arg_word: {(1)} ) ] ) (C {(sed)} {(-ne)} {(SQ <'s/[,\\r]//g'>)} {(-e)} {(SQ <'s/^.*[Cc]ommands://p'>)} ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [21 48] ) ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [14 57] ) } ] ) } spids: [11] ) ] spids: [11] ) ] spids: [8] ) spids: [4 7] ) (command.AndOr ops: [Op_DAmp] children: [ (command.FuncDef name: _ipmitool body: (command.BraceGroup children: [ (command.Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cur spids:[73]) op: Equal spids: [73] ) (assign_pair lhs: (lhs_expr.LhsName name:prev spids:[75]) op: Equal spids: [75] ) (assign_pair lhs: (lhs_expr.LhsName name:words spids:[77]) op: Equal spids: [77] ) (assign_pair lhs: (lhs_expr.LhsName name:cword spids:[79]) op: Equal spids: [79] ) ] spids: [71] ) (command.AndOr ops: [Op_DPipe] children: [ (C {(_init_completion)}) (command.ControlFlow token:<ControlFlow_Return return>) ] ) (command.Case to_match: {($ VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [ {(-h)} {(-V)} {(-p)} {(-U)} {(-e)} {(-k)} {(-y)} {(-P)} {(-m)} {(-b)} {(-t)} {(-B)} {(-T)} {(-l)} ] action: [(command.ControlFlow token:<ControlFlow_Return return> arg_word:{(0)})] spids: [97 124 132 16777215] ) (case_arm pat_list: [{(-d)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[139]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (command.SimpleCommand words: [ {(command)} {(ls)} {(-d)} {(/dev/ipmi) (Lit_Other '*')} {(/dev/ipmi/) (Lit_Other '*')} {(/dev/ipmidev/) (Lit_Other '*') } ] redirects: [ (redir.Redir op: <Redir_Great '2>'> fd: 2 arg_word: {(/dev/null)} ) ] ) (C {(sed)} {(-ne)} { (SQ < 's/^[^0-9]*\\([0-9]\\{1,\\}\\)/\\1/p' > ) } ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [149 183] ) ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [142 194] ) } ] ) } spids: [139] ) ] spids: [139] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [135 136 204 16777215] ) (case_arm pat_list: [{(-I)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[211]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (command.SimpleCommand words: [ {($ VSub_Number '$1')} {(-h)} ] redirects: [ (redir.Redir op: <Redir_GreatAnd '2>&'> fd: 2 arg_word: {(1)} ) ] ) (C {(sed)} {(-e)} { (SQ < '/^Interfaces:/,/^[[:space:]]*$/!d' > ) } {(-ne)} {(SQ <'s/^[[:space:]]\\{1,\\}\\([^[:space:]]\\{1,\\}\\).*/\\1/p'>)} ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [221 250] ) ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [214 261] ) } ] ) } spids: [211] ) ] spids: [211] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [207 208 271 16777215] ) (case_arm pat_list: [{(-H)}] action: [ (C {(_known_hosts_real)} {(DQ ($ VSub_DollarName '$cur'))}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [274 275 290 16777215] ) (case_arm pat_list: [{(-f)} {(-S)} {(-O)}] action: [ (C {(_filedir)}) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [293 298 309 16777215] ) (case_arm pat_list: [{(-C)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[316]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'{0..14}'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [319 335] ) } ] ) } spids: [316] ) ] spids: [316] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [312 313 345 16777215] ) (case_arm pat_list: [{(-L)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[352]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'CALLBACK USER OPERATOR ADMINISTRATOR'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [355 373] ) } ] ) } spids: [352] ) ] spids: [352] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [348 349 383 16777215] ) (case_arm pat_list: [{(-A)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[390]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'NONE PASSWORD MD2 MD5 OEM'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [393 409] ) } ] ) } spids: [390] ) ] spids: [390] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [386 387 419 16777215] ) (case_arm pat_list: [{(-o)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[426]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ (word_part.CommandSubPart command_list: (command.CommandList children: [ (command.Pipeline children: [ (command.SimpleCommand words: [ {($ VSub_Number '$1')} {(-o)} {(list)} ] redirects: [ (redir.Redir op: <Redir_GreatAnd '2>&'> fd: 2 arg_word: {(1)} ) ] ) (C {(awk)} { (SQ <'/^[ \\t]+/ { print $1 }'>) } ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [436 457] ) (' list') ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [429 467] ) } ] ) } spids: [426] ) ] spids: [426] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [422 423 477 16777215] ) ] spids: [90 94 480] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: {(DQ ($ VSub_DollarName '$cur'))} right: {(-) (Lit_Other '*')} ) ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[503]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'$( _parse_help "$1" -h)'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [506 522] ) } ] ) } spids: [503] ) ] spids: [503] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [16777215 500] ) ] spids: [16777215 532] ) (command.Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cmds spids:[543]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ {(raw)} {(i2c)} {(spd)} {(lan)} {(chassis)} {(power)} {(event)} {(mc)} {(sdr)} {(sensor)} {(fru)} {(gendev)} {(sel)} {(pef)} {(sol)} {(tsol)} {(isol)} {(user)} {(channel)} {(session)} {(sunoem)} {(kontronoem)} {(picmg)} {(fwum)} {(firewall)} {(shell)} {(exec)} {(set)} {(hpm)} {(ekanalyzer)} ] ) } spids: [543] ) ] spids: [541] ) (command.Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:i spids:[612]) op: Equal spids: [612] ) (assign_pair lhs: (lhs_expr.LhsName name:c spids:[614]) op: Equal spids: [614] ) (assign_pair lhs: (lhs_expr.LhsName name:cmd spids:[616]) op: Equal spids: [616] ) (assign_pair lhs: (lhs_expr.LhsName name:subcmd spids:[618]) op: Equal spids: [618] ) ] spids: [610] ) (command.ForExpr init: (arith_expr.BinaryAssign op_id: Arith_Equal left: (lhs_expr.LhsName name:i spids:[625]) right: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) cond: (arith_expr.ArithBinary op_id: Arith_Less left: (arith_expr.ArithVarRef token:<Lit_ArithVarLike i>) right: (arith_expr.ArithBinary op_id: Arith_Minus left: (arith_expr.ArithWord w: { (word_part.BracedVarSub token: <VSub_Name words> prefix_op: VSub_Pound bracket_op: (bracket_op.WholeArray op_id:Lit_At) spids: [634 640] ) } ) right: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) ) update: (arith_expr.UnaryAssign op_id: Node_PostDPlus child: (lhs_expr.LhsName name:i spids:[645]) ) body: (command.DoGroup children: [ (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (command.DBracket expr: (bool_expr.BoolUnary op_id: BoolUnary_n child: {($ VSub_DollarName '$cmd')} ) ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:subcmd spids:[665]) op: Equal rhs: { (word_part.BracedVarSub token: <VSub_Name words> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithVarRef token:<Lit_ArithVarLike i>) ) spids: [666 671] ) } spids: [665] ) ] spids: [665] ) (command.ControlFlow token: <ControlFlow_Break break> ) ] ) (command.ForEach iter_name: c iter_words: [ { (word_part.BracedVarSub token: <VSub_Name cmds> bracket_op: (bracket_op.WholeArray op_id:Lit_At) spids: [684 689] ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.AndOr ops: [Op_DAmp Op_DAmp] children: [ (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: { (word_part.BracedVarSub token: <VSub_Name words> bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.ArithVarRef token: <Lit_ArithVarLike i> ) ) spids: [697 702] ) } right: {($ VSub_DollarName '$c')} ) ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:cmd spids:[712]) op: Equal rhs: {($ VSub_DollarName '$c')} spids: [712] ) ] spids: [712] ) (command.ControlFlow token: <ControlFlow_Break break> ) ] ) ] spids: [692 720] ) spids: [683 690] ) ] spids: [652 723] ) ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.BoolUnary op_id: BoolUnary_z child: {($ VSub_DollarName '$cmd')} ) ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[741]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'${cmds[@]}'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [744 760] ) } ] ) } spids: [741] ) ] spids: [741] ) (command.ControlFlow token: <ControlFlow_Return return> arg_word: {(0)} ) ] spids: [16777215 738] ) ] spids: [16777215 770] ) (command.Case to_match: {($ VSub_DollarName '$cmd')} arms: [ (case_arm pat_list:[{(shell)}] spids:[787 788 791 16777215]) (case_arm pat_list: [{(exec)}] action: [(C {(_filedir)})] spids: [795 796 802 16777215] ) (case_arm pat_list: [{(chassis)} {(power)} {(kontronoem)} {(fwum)}] action: [ (C {(_ipmitool_singleline_help)} {($ VSub_Number '$1')} {($ VSub_DollarName '$cmd')} ) ] spids: [806 813 823 16777215] ) (case_arm pat_list: [{(lan)}] action: [ (command.Case to_match: {($ VSub_DollarName '$subcmd')} arms: [ (case_arm pat_list: [{(print)} {(set)}] spids: [838 841 844 16777215] ) (case_arm pat_list: [{(alert)}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_DollarName '$prev')} right: {(alert)} ) ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[865]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'print set'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [868 884] ) } ] ) } spids: [865] ) ] spids: [865] ) ] ) ] spids: [847 848 889 16777215] ) (case_arm pat_list: [{(stats)}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_DollarName '$prev')} right: {(stats)} ) ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[910]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'print set'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [913 929] ) } ] ) } spids: [910] ) ] spids: [910] ) ] ) ] spids: [892 893 934 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[941]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'print set alert stats'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [944 962] ) } ] ) } spids: [941] ) ] spids: [941] ) ] spids: [937 938 967 16777215] ) ] spids: [831 835 970] ) ] spids: [827 828 973 16777215] ) (case_arm pat_list: [{(sdr)}] action: [ (command.Case to_match: {($ VSub_DollarName '$subcmd')} arms: [ (case_arm pat_list: [{(get)} {(info)} {(type)} {(list)} {(entity)}] spids: [988 997 1000 16777215] ) (case_arm pat_list: [{(elist)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1007]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ < 'all full compact event mclog fru\n' > <' generic'> ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1010 1027] ) } ] ) } spids: [1007] ) ] spids: [1007] ) ] spids: [1003 1004 1032 16777215] ) (case_arm pat_list: [{(dump)}] action: [(C {(_filedir)})] spids: [1035 1036 1042 16777215] ) (case_arm pat_list: [{(fill)}] action: [ (command.Case to_match: {($ VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [{(fill)}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1060]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'sensors file'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1063 1081] ) } ] ) } spids: [1060] ) ] spids: [1060] ) ] spids: [1056 1057 1086 16777215] ) (case_arm pat_list: [{(file)}] action: [(C {(_filedir)})] spids: [1089 1090 1096 16777215] ) ] spids: [1049 1053 1099] ) ] spids: [1045 1046 1102 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1109]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ <'get info type list elist entity\n'> <' dump fill'> ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1112 1129] ) } ] ) } spids: [1109] ) ] spids: [1109] ) ] spids: [1105 1106 1134 16777215] ) ] spids: [981 985 1137] ) ] spids: [977 978 1140 16777215] ) (case_arm pat_list: [{(sensor)}] action: [ (command.Case to_match: {($ VSub_DollarName '$subcmd')} arms: [ (case_arm pat_list: [{(list)} {(get)} {(thresh)}] spids: [1155 1160 1163 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1170]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'list get thresh'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1173 1189] ) } ] ) } spids: [1170] ) ] spids: [1170] ) ] spids: [1166 1167 1194 16777215] ) ] spids: [1148 1152 1197] ) ] spids: [1144 1145 1200 16777215] ) (case_arm pat_list: [{(sel)}] action: [ (command.Case to_match: {($ VSub_DollarName '$subcmd')} arms: [ (case_arm pat_list: [{(info)} {(clear)} {(list)} {(elist)} {(delete)}] spids: [1215 1224 1227 16777215] ) (case_arm pat_list: [{(add)} {(save)} {(writeraw)} {(readraw)}] action: [(C {(_filedir)})] spids: [1230 1237 1243 16777215] ) (case_arm pat_list: [{(KW_Time time)}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_DollarName '$prev')} right: {(time)} ) ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1264]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'get set'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1267 1283] ) } ] ) } spids: [1264] ) ] spids: [1264] ) ] ) ] spids: [1246 1247 1288 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1295]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ < 'info clear list elist delete add\n' > <' get save writeraw readraw time'> ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1298 1315] ) } ] ) } spids: [1295] ) ] spids: [1295] ) ] spids: [1291 1292 1320 16777215] ) ] spids: [1208 1212 1323] ) ] spids: [1204 1205 1326 16777215] ) (case_arm pat_list: [{(user)}] action: [ (command.Case to_match: {($ VSub_DollarName '$subcmd')} arms: [ (case_arm pat_list: [{(summary)} {(list)} {(disable)} {(enable)} {(priv)} {(test)}] spids: [1341 1352 1355 16777215] ) (case_arm pat_list: [{(set)}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_DollarName '$prev')} right: {(set)} ) ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1376]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ <'name password'>)} {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1379 1395] ) } ] ) } spids: [1376] ) ] spids: [1376] ) ] ) ] spids: [1358 1359 1400 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1407]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ <'summary list set disable enable\n'> <' priv test'> ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1410 1427] ) } ] ) } spids: [1407] ) ] spids: [1407] ) ] spids: [1403 1404 1432 16777215] ) ] spids: [1334 1338 1435] ) ] spids: [1330 1331 1438 16777215] ) (case_arm pat_list: [{(set)}] action: [ (command.AndOr ops: [Op_DAmp] children: [ (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_DollarName '$prev')} right: {(set)} ) ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:COMPREPLY spids:[1460]) op: Equal rhs: { (word_part.ArrayLiteralPart words: [ { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ <'hostname username password privlvl\n'> < ' authtype localaddr targetaddr port csv verbose' > ) } {(--)} {(DQ ($ VSub_DollarName '$cur'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [1463 1482] ) } ] ) } spids: [1460] ) ] spids: [1460] ) ] ) ] spids: [1442 1443 1487 16777215] ) ] spids: [779 783 1491] ) ] spids: [68] ) spids: [64 67] ) (C {(complete)} {(-F)} {(_ipmitool)} {(ipmitool)}) ] ) ] )