(command.AndOr ops: [Id.Op_DAmp] children: [ (command.ShFunction name: _sysbench body: (command.BraceGroup children: [ (C {(local)} {(cur)} {(prev)} {(words)} {(cword)} {(split)}) (command.AndOr ops: [Id.Op_DPipe] children: [ (C {(_init_completion)} {(-s)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:30) ) ] ) (command.Case to_match: {($ Id.VSub_DollarName '$prev')} arms: [ (case_arm pat_list: [ {(--num-threads)} {(--max-requests)} {(--max-time)} {(--thread-stack-size)} {(--help)} {(--version)} {(help)} {(version)} ] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:62) arg_word: {(0)} ) ] spids: [41 59 67 -1] ) (case_arm pat_list: [{(--init-rng)} {(--debug)} {(--validate)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:79) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:81) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'on off' span_id:88))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [78] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:102) arg_word: {(0)} ) ] spids: [70 75 107 -1] ) (case_arm pat_list: [{(--test)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:115) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:117) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'fileio cpu memory threads mutex oltp' span_id: 124 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [114] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:140) arg_word: {(0)} ) ] spids: [110 111 145 -1] ) (case_arm pat_list: [{(--cpu-max-prime)}] action: [ (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:152) arg_word: {(0)} ) ] spids: [148 149 157 -1] ) (case_arm pat_list: [{(--file-test-mode)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:165) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:167) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'seqwr seqrewr seqrd rndrd rndwr rndrw' span_id: 174 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [164] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:190) arg_word: {(0)} ) ] spids: [160 161 195 -1] ) (case_arm pat_list: [{(--file-io-mode)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:203) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:205) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'sync async fastmmap slowmmap' span_id: 212 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [202] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:228) arg_word: {(0)} ) ] spids: [198 199 233 -1] ) (case_arm pat_list: [{(--file-extra-flags)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:241) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:243) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'sync dsync direct' span_id: 250 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [240] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:264) arg_word: {(0)} ) ] spids: [236 237 269 -1] ) (case_arm pat_list: [{(--file-fsync-all)} {(--file-fsync-end)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:279) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:281) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'on off' span_id:288))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [278] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:302) arg_word: {(0)} ) ] spids: [272 275 307 -1] ) (case_arm pat_list: [{(--file-fsync-mode)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:315) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:317) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'fsync fdatasync' span_id: 324 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [314] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:338) arg_word: {(0)} ) ] spids: [310 311 343 -1] ) (case_arm pat_list: [{(--memory-scope)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:351) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:353) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'global local' span_id: 360 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [350] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:374) arg_word: {(0)} ) ] spids: [346 347 379 -1] ) (case_arm pat_list: [{(--memory-hugetlb)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:387) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:389) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'on off' span_id:396))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [386] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:410) arg_word: {(0)} ) ] spids: [382 383 415 -1] ) (case_arm pat_list: [{(--memory-oper)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:423) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:425) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'read write none' span_id: 432 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [422] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:446) arg_word: {(0)} ) ] spids: [418 419 451 -1] ) (case_arm pat_list: [{(--memory-access-mode)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:459) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:461) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'seq rnd' span_id:468))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [458] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:482) arg_word: {(0)} ) ] spids: [454 455 487 -1] ) (case_arm pat_list: [{(--oltp-test-mode)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:495) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:497) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'simple complex nontrx sp' span_id: 504 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [494] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:518) arg_word: {(0)} ) ] spids: [490 491 523 -1] ) (case_arm pat_list: [{(--oltp-read-only)} {(--oltp-skip-trx)} {(--oltp-quto-inc)} {(--mysql-ssl)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:537) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:539) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(SQ (Token id:Id.Lit_Chars val:'on off' span_id:546))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [536] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:560) arg_word: {(0)} ) ] spids: [526 533 565 -1] ) (case_arm pat_list: [{(--oltp-nontrx-mode)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:573) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:575) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'select update_key update_nokey insert\n' span_id: 582 ) (Token id:Id.Lit_Chars val:' delete' span_id:583) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [572] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:597) arg_word: {(0)} ) ] spids: [568 569 602 -1] ) (case_arm pat_list: [{(--oltp-dist-type)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:610) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:612) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'uniform gaussian special' span_id: 619 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [609] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:633) arg_word: {(0)} ) ] spids: [605 606 638 -1] ) (case_arm pat_list: [{(--db-driver)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:646) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:648) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (DQ (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 655 ) command_list: (command.CommandList children: [ (command.Pipeline children: [ (command.Simple words: [ {($ Id.VSub_Number '$1')} {(--test) (Id.Lit_Equals '=') (oltp)} {(help)} ] redirects: [ (redir.Redir op: (Token id: Id.Redir_Great val: '2>' span_id: 665 ) fd: 2 arg_word: {(/dev/null)} ) ] ) (C {(sed)} {(-e)} { (SQ (Token id: Id.Lit_Chars val: '/^.*database drivers:/,/^$/!d' span_id: 676 ) ) } {(-ne)} {(SQ (Token id:Id.Lit_Chars val:'s/^ *\\([^ ]*\\) .*/\\1/p' span_id:684))} ) ] negated: F ) ] ) ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [645] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:701) arg_word: {(0)} ) ] spids: [641 642 706 -1] ) (case_arm pat_list: [{(--db-ps-mode)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:714) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:716) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'auto disable' span_id: 723 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [713] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:737) arg_word: {(0)} ) ] spids: [709 710 742 -1] ) (case_arm pat_list: [{(--mysql-socket)}] action: [ (C {(_filedir)} {(sock)}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:754) arg_word: {(0)} ) ] spids: [745 746 759 -1] ) (case_arm pat_list: [{(--mysql-table-engine)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:767) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:769) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'myisam innodb bdb heap ndbcluster\n' span_id: 776 ) (Token id:Id.Lit_Chars val:' federated' span_id:777) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [766] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:791) arg_word: {(0)} ) ] spids: [762 763 796 -1] ) (case_arm pat_list: [{(--mysql-engine-trx)}] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:804) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:806) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} { (SQ (Token id: Id.Lit_Chars val: 'yes no auto' span_id: 813 ) ) } {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [803] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:827) arg_word: {(0)} ) ] spids: [799 800 832 -1] ) (case_arm pat_list: [{(--) (Id.Lit_Star '*')}] action: [ (command.AndOr ops: [Id.Op_DAmp] children: [ (C {($ Id.VSub_DollarName '$split')}) (command.ControlFlow token: (Token id:Id.ControlFlow_Return val:return span_id:844) arg_word: {(0)} ) ] ) ] spids: [835 837 849 -1] ) ] ) (C {(local)} {(i)} {(test)}) (command.ForExpr init: (arith_expr.BinaryAssign op_id: Id.Arith_Equal left: (sh_lhs_expr.Name name:i) right: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)}) ) cond: (arith_expr.Binary op_id: Id.Arith_Less left: (arith_expr.ArithWord w:{($ Id.VSub_DollarName '$i')}) right: (arith_expr.Binary op_id: Id.Arith_Minus left: (arith_expr.ArithWord w: { (braced_var_sub token: (Token id:Id.VSub_Name val:words span_id:883) prefix_op: (Id.VSub_Pound) bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At) ) } ) right: (arith_expr.ArithWord w:{(Id.Lit_Digits 1)}) ) ) update: (arith_expr.UnaryAssign op_id:Id.Node_PostDPlus child:(sh_lhs_expr.Name name:i)) body: (command.DoGroup children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: { (braced_var_sub token: (Token id:Id.VSub_Name val:words span_id:908) bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.VarRef token: (Token id: Id.Lit_ArithVarLike val: i span_id: 910 ) ) ) ) } right: {(--test) (Id.Lit_Other '*')} ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:920) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test) op: assign_op.Equal rhs: { (braced_var_sub token: (Token id:Id.VSub_Name val:words span_id:927) bracket_op: (bracket_op.ArrayIndex expr: (arith_expr.VarRef token: (Token id: Id.Lit_ArithVarLike val: i span_id: 929 ) ) ) suffix_op: (suffix_op.Unary op_id: Id.VOp1_Pound arg_word: {('*=')} ) ) } spids: [925] ) ] ) (command.ControlFlow token: (Token id:Id.ControlFlow_Break val:break span_id:936) ) ] spids: [903 922] ) ] ) ] ) ) (C {(local)} {(Id.Lit_VarLike 'opts=') (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:949) command_list: (command.CommandList children: [(C {(_parse_help)} {(DQ ($ Id.VSub_Number '$1'))})] ) ) } ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.WordTest w:{($ Id.VSub_DollarName '$test')}) ) terminator: (Token id:Id.Op_Semi val:';' span_id:967) ) ] action: [ (C {(local)} {(Id.Lit_VarLike 'help=') (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:975) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:977) command_list: (command.CommandList children: [ (C {(_parse_help)} {(DQ ($ Id.VSub_Number '$1'))} {(DQ ('--test=') ($ Id.VSub_DollarName '$test') (' help'))} ) ] ) ) } ] ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:opts) op: assign_op.Equal rhs: { (DQ (braced_var_sub token: (Token id:Id.VSub_Name val:opts span_id:999) bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At) suffix_op: (suffix_op.PatSub pat: {('--test=')} replace: (word.Empty) replace_mode: Id.Undefined_Tok ) ) (' ') (braced_var_sub token: (Token id:Id.VSub_Name val:help span_id:1009) bracket_op: (bracket_op.WholeArray op_id:Id.Lit_At) ) (' prepare run cleanup help version') ) } spids: [996] ) ] ) ] spids: [960 969] ) ] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.LogicalOr left: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {(DQ ($ Id.VSub_DollarName '$cur'))} right: {(-) (Id.Lit_Other '*')} ) right: (bool_expr.LogicalNot child: (bool_expr.WordTest w:{($ Id.VSub_DollarName '$test')}) ) ) ) terminator: (Token id:Id.Op_Semi val:';' span_id:1042) ) ] action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:1048) words: [ { (command_sub left_token: (Token id: Id.Left_DollarParen val: '$(' span_id: 1050 ) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(DQ ($ Id.VSub_DollarName '$opts'))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [1047] ) ] ) (command.AndOr ops: [Id.Op_DAmp] children: [ (command.DBracket expr: (bool_expr.Binary op_id: Id.BoolBinary_GlobDEqual left: {($ Id.VSub_DollarName '$COMPREPLY')} right: {(Id.Lit_Other '*') (Id.BoolBinary_GlobEqual '=')} ) ) (C {(compopt)} {(-o)} {(nospace)}) ] ) ] spids: [1022 1044] ) ] else_action: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:COMPREPLY) op: assign_op.Equal rhs: { (sh_array_literal left: (Token id:Id.Op_LParen val:'(' span_id:1095) words: [ { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:1097) command_list: (command.CommandList children: [ (C {(compgen)} {(-W)} {(DQ ('prepare run cleanup help version'))} {(--)} {(DQ ($ Id.VSub_DollarName '$cur'))} ) ] ) ) } ] ) } spids: [1094] ) ] ) ] ) ] ) ) (C {(complete)} {(-F)} {(_sysbench)} {(sysbench)}) ] )