(CommandList children: [ (Case to_match: {($ VSub_Hyphen "$-") (Lit_Other ":") ($ VSub_Name "$BASH_VERSION")} arms: [ (case_arm pat_list: [ {(Lit_Other "*") (x) (Lit_Other "*") (Lit_Other ":") (Lit_Other "[") (0123456789) (Lit_Other "]") (Lit_Other "*") } ] action: [ (Sentence child: (C {(Lit_Other ":")} {(bash)} {(set)} {(-x)} {(is)} {(broken)} {(Lit_Other ":")}) terminator: <Op_Semi ";"> ) (Sentence child:(C {(set)} {(Lit_Other "+") (ex)}) terminator:<Op_Semi ";">) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:old) op:Equal rhs:{(1)} spids:[106])] spids: [106] ) ] spids: [75 83 109 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:old) op:Equal rhs:{(SQ )} spids:[114])] spids: [114] ) ] spids: [111 112 116 -1] ) ] spids: [67 73 118] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:command) op:Equal rhs:{(ppcc)} spids:[121])] spids: [121] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:clobber) op:Equal rhs:{(SQ )} spids:[124])] spids: [124] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:doti) op:Equal rhs:{(SQ )} spids:[126])] spids: [126] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:exec) op:Equal rhs:{(1)} spids:[128])] spids: [128] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:linki) op:Equal rhs:{(SQ )} spids:[131])] spids: [131] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:multiopt) op:Equal rhs:{(o)} spids:[133])] spids: [133] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:post) op:Equal rhs:{(SQ )} spids:[136])] spids: [136] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ppfile) op:Equal rhs:{(SQ )} spids:[138])] spids: [138] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ppld) op:Equal rhs:{(SQ )} spids:[140])] spids: [140] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ppstdout) op:Equal rhs:{(SQ )} spids:[142])] spids: [142] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:src1) op:Equal rhs:{(DQ ("*.[cCsS]"))} spids:[144])] spids: [144] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:src2) op: Equal rhs: {(DQ ("*.[cC][xX][xX]"))} spids: [149] ) ] spids: [149] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:src3) op: Equal rhs: {(DQ ("*.[cC][pP][pP]"))} spids: [154] ) ] spids: [154] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:src4) op: Equal rhs: {(DQ ("*.[aA][sS][mM]"))} spids: [159] ) ] spids: [159] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:tmp) op: Equal rhs: {(/tmp/pC) ($ VSub_Dollar "$$")} spids: [164] ) ] spids: [164] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:verbose) op:Equal rhs:{(SQ )} spids:[168])] spids: [168] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:usage) op: Equal rhs: { (DQ ("Usage: ") ($ VSub_Name "$command") (" [ -nv ] [ -o dialect-option ] pp-command ... cc-command ...") ) } spids: [170] ) ] spids: [170] ) (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (Case to_match: {($ VSub_Pound "$#")} arms: [ (case_arm pat_list: [{(0)}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [190 191 195 -1] ) ] spids: [183 187 198] ) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(-o) (Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(-o)}] action: [ (Case to_match: {($ VSub_Pound "$#")} arms: [ (case_arm pat_list: [{(1)}] action: [ (SimpleCommand words: [{(echo)} {(DQ ($ VSub_Name "$usage"))}] redirects: [ (Redir op_id: Redir_GreatAnd fd: -1 arg_word: {(2)} spids: [242] ) ] ) (C {(exit)} {(2)}) ] spids: [233 234 251 -1] ) ] spids: [226 230 254] ) (C {(shift)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:opt) op: Equal rhs: {($ VSub_Number "$1")} spids: [260] ) ] spids: [260] ) ] spids: [223 224 264 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Name "$RANDOM")} arms: [ (case_arm pat_list: [{($ VSub_Name "$RANDOM")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:opt) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(x) ($ VSub_Number "$1")}) (C {(sed)} {(s/...//)}) ] negated: False ) ] ) left_token: <Left_Backtick "`"> spids: [280 291] ) } spids: [279] ) ] spids: [279] ) ] spids: [277 278 293 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:opt) op: Equal rhs: { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {("??")} ) spids: [300 304] ) } spids: [299] ) ] spids: [299] ) ] spids: [296 297 306 -1] ) ] spids: [270 274 309] ) ] spids: [267 268 312 -1] ) ] spids: [216 220 315] ) (Case to_match: {($ VSub_Name "$opt")} arms: [ (case_arm pat_list: [{(NO) (Lit_Other "*")} {(no) (Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: {(SQ )} spids: [331] ) ] spids: [331] ) (Case to_match: {($ VSub_Name "$RANDOM")} arms: [ (case_arm pat_list: [{($ VSub_Name "$RANDOM")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:opt) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name "$opt")}) (C {(sed)} {(s/..//)}) ] negated: False ) ] ) left_token: <Left_Backtick "`"> spids: [344 354] ) } spids: [343] ) ] spids: [343] ) ] spids: [341 342 356 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:opt) op: Equal rhs: { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {("??")} ) spids: [363 367] ) } spids: [362] ) ] spids: [362] ) ] spids: [359 360 369 -1] ) ] spids: [334 338 372] ) ] spids: [325 330 375 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Name "$opt")} arms: [ (case_arm pat_list: [{(Lit_Other "*") (Lit_Other "=") (Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Name "$RANDOM")} arms: [ (case_arm pat_list: [{($ VSub_Name "$RANDOM")}] action: [ (C {(eval)} { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name "$opt")}) (C {(sed)} { (SQ < "s/\\\\([^=]*\\\\)/opt=\\\\1 value/" > ) } ) ] negated: False ) ] ) left_token: <Left_Backtick "`"> spids: [404 416] ) } ) ] spids: [400 401 418 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: { (BracedVarSub token: <VSub_Name opt> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {("*=")} ) spids: [425 429] ) } spids: [424] ) ] spids: [424] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:opt) op: Equal rhs: { (BracedVarSub token: <VSub_Name opt> suffix_op: (StringUnary op_id: VOp1_DPercent arg_word: {("=*")} ) spids: [433 437] ) } spids: [432] ) ] spids: [432] ) ] spids: [421 422 440 -1] ) ] spids: [393 397 443] ) ] spids: [388 391 446 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: {(1)} spids: [452] ) ] spids: [452] ) ] spids: [449 450 456 -1] ) ] spids: [381 385 459] ) ] spids: [378 379 462 -1] ) ] spids: [318 322 465] ) (Case to_match: {($ VSub_Name "$opt")} arms: [ (case_arm pat_list: [ {(C) (Lit_Other "+") (Lit_Other "+")} {(c) (Lit_Other "+") (Lit_Other "+")} ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ppld) op: Equal rhs: {($ VSub_Name "$value")} spids: [485] ) ] spids: [485] ) ] spids: [475 482 489 -1] ) (case_arm pat_list: [{(DOTI)} {(doti)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:doti) op: Equal rhs: {($ VSub_Name "$value")} spids: [498] ) ] spids: [498] ) ] spids: [492 495 502 -1] ) (case_arm pat_list: [{(LINKI)} {(linki)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:linki) op: Equal rhs: {($ VSub_Name "$value")} spids: [511] ) ] spids: [511] ) ] spids: [505 508 515 -1] ) (case_arm pat_list: [{(MULTI)} {(multi)}] action: [ (Case to_match: {($ VSub_Name "$value")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:multiopt) op: Equal rhs: {(SQ )} spids: [535] ) ] spids: [535] ) ] spids: [-1 533 538 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:multiopt) op: Equal rhs: {($ VSub_Name "$multiopt") ($ VSub_Name "$value")} spids: [544] ) ] spids: [544] ) ] spids: [541 542 549 -1] ) ] spids: [524 528 552] ) ] spids: [518 521 555 -1] ) (case_arm pat_list: [{(PPLD)} {(ppld)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ppld) op: Equal rhs: {($ VSub_Name "$value")} spids: [564] ) ] spids: [564] ) ] spids: [558 561 568 -1] ) (case_arm pat_list: [{(exec)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:exec) op: Equal rhs: {($ VSub_Name "$value")} spids: [574] ) ] spids: [574] ) ] spids: [571 572 578 -1] ) (case_arm pat_list: [{(verbose)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:verbose) op: Equal rhs: {($ VSub_Name "$value")} spids: [583] ) ] spids: [583] ) ] spids: [581 582 587 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] spids: [590 591 597 -1] ) ] spids: [468 472 600] ) ] spids: [208 210 603 -1] ) (case_arm pat_list: [{(-) (Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [ {(-) (Lit_Other "*") (Lit_Other "[") (KW_Bang "!") (iklnvO) (Lit_Other "]") (Lit_Other "*") } ] action: [ (SimpleCommand words: [{(echo)} {(DQ ($ VSub_Name "$usage"))}] redirects: [ (Redir op_id: Redir_GreatAnd fd: -1 arg_word: {(2)} spids: [633] ) ] ) (C {(exit)} {(2)}) ] spids: [617 624 642 -1] ) ] spids: [610 614 645] ) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "*") (i) (Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:doti) op: Equal rhs: {(1)} spids: [660] ) ] spids: [660] ) ] spids: [655 658 663 -1] ) ] spids: [648 652 666] ) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "*") (k) (Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:doti) op: Equal rhs: {(1)} spids: [681] ) (assign_pair lhs: (LhsName name:linki) op: Equal rhs: {(1)} spids: [684] ) ] spids: [681] ) ] spids: [676 679 687 -1] ) ] spids: [669 673 690] ) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "*") (l) (Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ppld) op: Equal rhs: {(1)} spids: [705] ) ] spids: [705] ) ] spids: [700 703 708 -1] ) ] spids: [693 697 711] ) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "*") (n) (Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:exec) op: Equal rhs: {(SQ )} spids: [726] ) ] spids: [726] ) ] spids: [721 724 728 -1] ) ] spids: [714 718 731] ) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "*") (v) (Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:verbose) op: Equal rhs: {(1)} spids: [746] ) ] spids: [746] ) ] spids: [741 744 749 -1] ) ] spids: [734 738 752] ) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "*") (O) (Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:old) op: Equal rhs: {(1)} spids: [767] ) ] spids: [767] ) ] spids: [762 765 770 -1] ) ] spids: [755 759 773] ) ] spids: [606 608 776 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [779 780 785 -1] ) ] spids: [201 205 788] ) (C {(shift)}) ] spids: [181 793] ) ) (Case to_match: {($ VSub_Pound "$#")} arms: [ (case_arm pat_list: [{(0)}] action: [ (SimpleCommand words: [{(echo)} {(DQ ($ VSub_Name "$usage"))}] redirects: [(Redir op_id:Redir_GreatAnd fd:-1 arg_word:{(2)} spids:[810])] ) (C {(exit)} {(2)}) ] spids: [801 802 819 -1] ) ] spids: [795 799 821] ) (C {(trap)} { (SQ <"\tstatus=$?\n"> <"\ttrap \"\" 0\n"> <"\tcase $clobber in\n"> <"\t?*)\tcase $verbose in\n"> <"\t\t1)\techo + rm -rf $clobber ;;\n"> <"\t\tesac\n"> <"\t\tcase $exec in\n"> <"\t\t1)\trm -rf $clobber ;;\n"> <"\t\tesac\n"> <"\t\t;;\n"> <"\tesac\n"> <"\tcase $post in\n"> <"\t?*)\tcase $verbose in\n"> <"\t\t1)\techo + $post ;;\n"> <"\t\tesac\n"> <"\t\tcase $exec in\n"> <"\t\t1)\teval \"$post\" ;;\n"> <"\t\tesac\n"> <"\t\t;;\n"> <"\tesac\n"> <"\texit $status\n"> ) } {(0)} {(1)} {(2)} {(3)} {(15)} ) (Case to_match: {($ VSub_Name "$old")} arms: [ (case_arm pat_list: [{(SQ )}] action: [ (Case to_match: { (CommandSubPart command_list: (CommandList children: [ (Subshell child: (CommandList children: [ (Sentence child: (C {(set)} {(-A)} {(a)} {(no)} {(ok)}) terminator: <Op_Semi ";"> ) (Sentence child: (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:b) right: (ArithBinary op_id: Arith_Plus left: (ArithWord w:{(Lit_Digits 1)}) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) terminator: <Op_Semi ";"> ) (C {(echo)} { (DQ (BracedVarSub token: <VSub_Name a> bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 1)})) spids: [897 902] ) ($ VSub_Name "$b") ) } ) ] ) redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [907] ) ] spids: [872 905] ) ] ) left_token: <Left_Backtick "`"> spids: [871 909] ) } arms: [ (case_arm pat_list:[{(ok2)}] spids:[914915917-1]) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:old) op:Equal rhs:{(1)} spids:[923])] spids: [923] ) ] spids: [920 921 926 -1] ) ] spids: [869 911 929] ) ] spids: [-1 867 932 -1] ) ] spids: [859 863 934] ) (Case to_match: {($ VSub_Name "$old") (Lit_Other ":") ($ VSub_Name "$RANDOM")} arms: [ (case_arm pat_list: [ {(Lit_Other "*") (Lit_Other ":") ($ VSub_Name "$RANDOM")} {(1) (Lit_Other ":") (Lit_Other "*")} ] action: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:nfile) op:Equal rhs:{(SQ )} spids:[958])] spids: [958] ) (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(SQ )} {(DQ ($ VSub_Number "$1"))}) (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (C {(shift)}) (C {(shift)}) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [ {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*")} ] spids: [998 1003 1005 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [1008 1009 1013 -1] ) ] spids: [991 995 1016] ) (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Number "$1"))}) ] spids: [983 1033] ) ) (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: {($ VSub_Number "$1")} spids: [1043] ) ] spids: [1043] ) (C {(shift)}) (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [{(SQ )}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [-1 1059 1064 -1] ) (case_arm pat_list: [{(-) (Lit_Other "[") ($ VSub_Name "$multiopt") (Lit_Other "]")}] action: [ (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "?") (Lit_Other "*")}] action: [ (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$arg"))}) (C {(shift)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: {($ VSub_Number "$1")} spids: [1102] ) ] spids: [1102] ) (C {(shift)}) ] spids: [1081 1083 1109 -1] ) ] spids: [1074 1078 1112] ) ] spids: [1067 1071 1115 -1] ) (case_arm pat_list: [{(-E)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ppstdout) op: Equal rhs: {(1)} spids: [1121] ) ] spids: [1121] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:doti) op: Equal rhs: {(1)} spids: [1125] ) ] spids: [1125] ) (C {(trap)} {(0)} {(1)} {(2)} {(3)} {(15)}) ] spids: [1118 1119 1142 -1] ) (case_arm pat_list: [{(-P)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ppfile) op: Equal rhs: {(1)} spids: [1148] ) ] spids: [1148] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:doti) op: Equal rhs: {(1)} spids: [1152] ) ] spids: [1152] ) (C {(trap)} {(0)} {(1)} {(2)} {(3)} {(15)}) ] spids: [1145 1146 1169 -1] ) (case_arm pat_list: [ {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*")} ] spids: [1172 1177 1179 -1] ) (case_arm pat_list: [ {($ VSub_Name "$src1")} {($ VSub_Name "$src2")} {($ VSub_Name "$src3")} {($ VSub_Name "$src4")} ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:nfile) op: Equal rhs: {(_) ($ VSub_Name "$nfile")} spids: [1192] ) ] spids: [1192] ) (C {(eval)} {(input) ($ VSub_Name "$nfile") (Lit_Other "=") (SQ <"$arg">)}) (Case to_match: {($ VSub_Name "$ppstdout")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Case to_match: {($ VSub_Name "$doti")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:file) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name "$arg")}) (C {(sed)} {(-e)} {(DQ ("s,.*/,,"))} {(-e)} {(DQ ("s,^,") ($ VSub_Name "$tmp") ("/,"))} ) ] negated: False ) ] ) left_token: <Left_Backtick "`"> spids: [1230 1252] ) } spids: [1229] ) ] spids: [1229] ) (Case to_match: {($ VSub_Name "$clobber")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:clobber) op: Equal rhs: {($ VSub_Name "$tmp")} spids: [1266] ) ] spids: [1266] ) (Case to_match: {($ VSub_Name "$verbose")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(print)} {(-r)} {(--)} {(Lit_Other "+")} {(mkdir)} {($ VSub_Name "$tmp")} ) ] spids: [1277 1278 1292 -1] ) ] spids: [1270 1274 1295] ) (Case to_match: {($ VSub_Name "$exec")} arms: [ (case_arm pat_list: [{(1)}] action: [ (AndOr children: [ (C {(mkdir)} {($ VSub_Name "$tmp")}) (C {(exit)}) ] op_id: Op_DPipe ) ] spids: [1305 1306 1316 -1] ) ] spids: [1298 1302 1319] ) ] spids: [-1 1264 1322 -1] ) ] spids: [1255 1259 1325] ) ] spids: [-1 1227 1328 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:file) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name "$arg")}) (C {(sed)} {(-e)} {(DQ ("s,.*/,,"))} {(-e)} {(DQ ("s,[.][^.]*,.i,"))} ) ] negated: False ) ] ) left_token: <Left_Backtick "`"> spids: [1335 1355] ) } spids: [1334] ) ] spids: [1334] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:clobber) op: Equal rhs: { (DQ ($ VSub_Name "$clobber") (" ") ($ VSub_Name "$file") ) } spids: [1358] ) ] spids: [1358] ) ] spids: [1331 1332 1366 -1] ) ] spids: [1218 1222 1369] ) (C {(eval)} {(output) ($ VSub_Name "$nfile") (Lit_Other "=") (SQ <"$file">)} ) ] spids: [-1 1216 1382 -1] ) ] spids: [1207 1211 1385] ) ] spids: [1182 1189 1388 -1] ) ] spids: [1050 1054 1391] ) (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$arg"))}) (C {(shift)}) ] spids: [1041 1411] ) ) (AndOr children: [ (Subshell child: (CommandList children: [ (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(SQ )} {(DQ ($ VSub_Number "$1"))}) (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (C {(shift)}) (C {(shift)}) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [ {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*") } ] spids: [1458 1463 1465 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (C {(shift)}) (ControlFlow token: <ControlFlow_Break break> ) ] spids: [1468 1469 1477 -1] ) ] spids: [1451 1455 1480] ) (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Number "$1"))}) ] spids: [1443 1497] ) ) (Case to_match: {($ VSub_Name "$doti") ($ VSub_Name "$ppstdout")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(-D-L)}) (C {(shift)}) ] spids: [-1 1510 1527 -1] ) ] spids: [1500 1505 1530] ) (C {(shift)}) (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: {($ VSub_Number "$1")} spids: [1543] ) ] spids: [1543] ) (C {(shift)}) (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [{(SQ )}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [-1 1559 1564 -1] ) (case_arm pat_list: [ {(-) (Lit_Other "[") ($ VSub_Name "$multiopt") (Lit_Other "]")} ] action: [ (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "?") (Lit_Other "*")}] action: [(C {(shift)})] spids: [1581 1583 1587 -1] ) ] spids: [1574 1578 1590] ) (ControlFlow token: <ControlFlow_Continue continue> ) ] spids: [1567 1571 1596 -1] ) (case_arm pat_list: [ {(-) (Lit_Other "[") (DIU) (Lit_Other "]") (Lit_Other "*")} {(-) (Lit_Other "[") (abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ) (Lit_Other "]") (Lit_Other "[") (abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_) (Lit_Other "]") (Lit_Other "*") } ] spids: [1599 1613 1616 -1] ) (case_arm pat_list: [{(-G)}] action: [ (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [ {(Lit_Other "[") (0-9) (Lit_Other "]") (Lit_Other "*")} ] action: [(C {(shift)})] spids: [1629 1633 1637 -1] ) ] spids: [1622 1626 1640] ) ] spids: [1619 1620 1643 -1] ) (case_arm pat_list: [ {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*") } ] action: [(ControlFlow token:<ControlFlow_Continue continue>)] spids: [1646 1651 1656 -1] ) (case_arm pat_list: [ {($ VSub_Name "$src1")} {($ VSub_Name "$src2")} {($ VSub_Name "$src3")} {($ VSub_Name "$src4")} ] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [1659 1666 1672 -1] ) ] spids: [1550 1554 1675] ) (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$arg"))}) (C {(shift)}) ] spids: [1541 1695] ) ) (Case to_match: {($ VSub_Name "$nfile")} arms: [ (case_arm pat_list: [{(Lit_Other "?") (Lit_Other "*")}] action: [ (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: {($ VSub_Number "$1")} spids: [1716] ) ] spids: [1716] ) (C {(shift)}) (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [{(SQ )}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [-1 1732 1736 -1] ) ] spids: [1723 1727 1739] ) ] spids: [1714 1742] ) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:n) op: Equal rhs: {(SQ )} spids: [1745] ) ] spids: [1745] ) (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (Case to_match: {($ VSub_Name "$n")} arms: [ (case_arm pat_list: [{($ VSub_Name "$nfile")}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [1762 1763 1767 -1] ) ] spids: [1755 1759 1770] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:n) op: Equal rhs: {(_) ($ VSub_Name "$n")} spids: [1773] ) ] spids: [1773] ) (C {(eval)} {(Lit_VarLike "input=") (SQ <"$input">) ($ VSub_Name "$n")} ) (Case to_match: {($ VSub_Name "$ppstdout")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (C {(eval)} {(Lit_VarLike "output=") (SQ <"$output">) ($ VSub_Name "$n") } ) (Case to_match: {($ VSub_Name "$verbose")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(echo)} {(Lit_Other "+")} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$input"))} {(DQ ($ VSub_Name "$output"))} ) ] spids: [1814 1815 1833 -1] ) ] spids: [1807 1811 1836] ) (Case to_match: {($ VSub_Name "$exec")} arms: [ (case_arm pat_list: [{(1)}] action: [ (AndOr children: [ (C {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$input"))} {(DQ ($ VSub_Name "$output"))} ) (C {(exit)}) ] op_id: Op_DPipe ) ] spids: [1846 1847 1865 -1] ) ] spids: [1839 1843 1869] ) ] spids: [-1 1796 1872 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Name "$verbose")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(echo)} {(Lit_Other "+")} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$input"))} ) ] spids: [1885 1886 1900 -1] ) ] spids: [1878 1882 1903] ) (Case to_match: {($ VSub_Name "$exec")} arms: [ (case_arm pat_list: [{(1)}] action: [ (AndOr children: [ (C {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$input"))} ) (C {(exit)}) ] op_id: Op_DPipe ) ] spids: [1913 1914 1928 -1] ) ] spids: [1906 1910 1932] ) ] spids: [1875 1876 1935 -1] ) ] spids: [1787 1791 1938] ) ] spids: [1753 1941] ) ) ] spids: [1705 1707 1944 -1] ) ] spids: [1698 1702 1947] ) ] ) spids: [1418 1950] ) (C {(exit)}) ] op_id: Op_DPipe ) (Case to_match: {($ VSub_Name "$ppfile") ($ VSub_Name "$ppstdout")} arms: [ (case_arm pat_list: [{(Lit_Other "?") (Lit_Other "*")}] action: [(C {(exit)})] spids: [1965 1967 1971 -1] ) ] spids: [1957 1962 1974] ) (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (C {(shift)}) (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [ {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*")} ] spids: [1994 1999 2001 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [2004 2005 2009 -1] ) ] spids: [1987 1991 2012] ) ] spids: [1982 2015] ) ) (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(SQ )} {(DQ ($ VSub_Number "$1"))}) (C {(shift)}) (C {(shift)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:n) op:Equal rhs:{(SQ )} spids:[2041])] spids: [2041] ) (While cond: [(C {(Lit_Other ":")})] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: {($ VSub_Number "$1")} spids: [2051] ) ] spids: [2051] ) (C {(shift)}) (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [{(SQ )}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [-1 2067 2072 -1] ) (case_arm pat_list: [{(-) (Lit_Other "[") ($ VSub_Name "$multiopt") (Lit_Other "]")}] action: [ (Case to_match: {($ VSub_Number "$1")} arms: [ (case_arm pat_list: [{(Lit_Other "?") (Lit_Other "*")}] action: [ (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$arg"))}) (C {(shift)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: {($ VSub_Number "$1")} spids: [2110] ) ] spids: [2110] ) (C {(shift)}) ] spids: [2089 2091 2117 -1] ) ] spids: [2082 2086 2120] ) ] spids: [2075 2079 2123 -1] ) (case_arm pat_list: [{(-) (Lit_Other "[") (DIU) (Lit_Other "]") (Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Name "$ppld")} arms: [ (case_arm pat_list: [{(DQ )}] action: [(ControlFlow token:<ControlFlow_Continue continue>)] spids: [-1 2141 2145 -1] ) ] spids: [2132 2136 2148] ) ] spids: [2126 2131 2151 -1] ) (case_arm pat_list: [ {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*")} ] spids: [2154 2159 2161 -1] ) (case_arm pat_list: [ {($ VSub_Name "$src1")} {($ VSub_Name "$src2")} {($ VSub_Name "$src3")} {($ VSub_Name "$src4")} ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:n) op: Equal rhs: {(_) ($ VSub_Name "$n")} spids: [2174] ) ] spids: [2174] ) (C {(eval)} {(Lit_VarLike "arg=") (SQ <"$output">) ($ VSub_Name "$n")}) ] spids: [2164 2171 2188 -1] ) ] spids: [2058 2062 2191] ) (C {(set)} {(SQ )} {(DQ ($ VSub_At "$@"))} {(DQ ($ VSub_Name "$arg"))}) (C {(shift)}) ] spids: [2049 2211] ) ) (Case to_match: {($ VSub_Name "$verbose")} arms: [ (case_arm pat_list: [{(1)}] action: [(C {(echo)} {(Lit_Other "+")} {(DQ ($ VSub_At "$@"))})] spids: [2221 2222 2232 -1] ) ] spids: [2214 2218 2235] ) (Case to_match: {($ VSub_Name "$exec")} arms: [ (case_arm pat_list: [{(1)}] action: [(C {(DQ ($ VSub_At "$@"))})] spids: [2245 2246 2252 -1] ) ] spids: [2238 2242 2256] ) ] spids: [944 951 2259 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (C {(integer)} {(Lit_VarLike "npp=") (1)} {(Lit_VarLike "ncc=") (1)} {(Lit_VarLike "nav=") (1)} {(Lit_VarLike "xav=") ($ VSub_Pound "$#")} {(oav)} ) (C {(set)} {(-A)} {(av)} {(DQ ($ VSub_At "$@"))}) (C {(pp) (Lit_Other "[") (0) (Lit_Other "]") (Lit_Other "=") (BracedVarSub token: <VSub_Name av> bracket_op: (ArrayIndex expr:(ArithWord w:{(Lit_Digits 0)})) spids: [2297 2302] ) } ) (While cond: [ (DParen child: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:nav) right: (ArithVarRef name:xav) ) ) ] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: { (BracedVarSub token: <VSub_Name av> bracket_op: (ArrayIndex expr:(ArithVarRef name:nav)) spids: [2322 2327] ) } spids: [2321] ) ] spids: [2321] ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:nav) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:nav) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [ {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*")} ] spids: [2353 2358 2360 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [(ControlFlow token:<ControlFlow_Break break>)] spids: [2363 2364 2368 -1] ) ] spids: [2346 2350 2371] ) (C {(pp) (Lit_Other "[") (npp) (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$arg")} ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:npp) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:npp) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) ] spids: [2319 2398] ) ) (Case to_match: {($ VSub_Name "$doti")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (C {(pp) (Lit_Other "[") (npp) (Lit_Other "]") (Lit_Other "=") (-D-L)}) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:npp) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:npp) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) ] spids: [-1 2410 2436 -1] ) ] spids: [2401 2405 2439] ) (C {(cc) (Lit_Other "[") (0) (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$arg")}) (While cond: [ (DParen child: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:nav) right: (ArithVarRef name:xav) ) ) ] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: { (BracedVarSub token: <VSub_Name av> bracket_op: (ArrayIndex expr:(ArithVarRef name:nav)) spids: [2467 2472] ) } spids: [2466] ) ] spids: [2466] ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:nav) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:nav) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [ {(-) (Lit_Other "[") ($ VSub_Name "$multiopt") (Lit_Other "]")} {(-) (Lit_Other "[") (Qq) (Lit_Other "]") (dir)} {(-) (Lit_Other "[") (Qq) (Lit_Other "]") (option)} {(-) (Lit_Other "[") (Qq) (Lit_Other "]") (path)} {(-) (Lit_Other "[") (Qq) (Lit_Other "]") (produce)} ] action: [ (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [{(-) (Lit_Other "[") (Qq) (Lit_Other "]") (option)}] action: [ (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:oav) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:nav) right: (ArithWord w:{(Lit_Digits 2)}) ) ) ) ] spids: [2536 2541 2560 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:oav) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:nav) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) ] spids: [2563 2564 2582 -1] ) ] spids: [2529 2533 2585] ) (If arms: [ (if_arm cond: [ (DParen child: (ArithBinary op_id: Arith_Great left: (ArithVarRef name:oav) right: (ArithVarRef name:xav) ) ) ] action: [ (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:oav) right: (ArithVarRef name:xav) ) ) ] spids: [-1 2602] ) ] spids: [-1 2616] ) (While cond: [ (DParen child: (ArithBinary op_id: Arith_Less left: (ArithVarRef name:nav) right: (ArithVarRef name:oav) ) ) ] body: (DoGroup children: [ (C {(cc) (Lit_Other "[") (ncc) (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$arg") } ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:ncc) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:ncc) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: { (BracedVarSub token: <VSub_Name av> bracket_op: (ArrayIndex expr:(ArithVarRef name:nav)) spids: [2660 2665] ) } spids: [2659] ) ] spids: [2659] ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:nav) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:nav) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) ] spids: [2633 2684] ) ) ] spids: [2498 2526 2687 -1] ) (case_arm pat_list: [ {(-) (Lit_Other "[") (DIU) (Lit_Other "]") (Lit_Other "*")} {(-) (Lit_Other "[") (abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ) (Lit_Other "]") (Lit_Other "[") (abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_) (Lit_Other "]") (Lit_Other "*") } ] action: [ (C {(pp) (Lit_Other "[") (npp) (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$arg") } ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:npp) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:npp) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) (Case to_match: {($ VSub_Name "$ppld")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [ {(-) (Lit_Other "[") (DIU) (Lit_Other "]") (Lit_Other "*")} ] action: [(ControlFlow token:<ControlFlow_Continue continue>)] spids: [2749 2754 2758 -1] ) ] spids: [2742 2746 2761] ) ] spids: [-1 2740 2764 -1] ) ] spids: [2731 2735 2767] ) (Case to_match: {($ VSub_Name "$arg")} arms: [ (case_arm pat_list: [{(-D-) (Lit_Other "*")}] action: [(ControlFlow token:<ControlFlow_Continue continue>)] spids: [2777 2779 2783 -1] ) ] spids: [2770 2774 2786] ) ] spids: [2690 2704 2789 -1] ) (case_arm pat_list: [{(-E)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ppstdout) op: Equal rhs: {(1)} spids: [2795] ) ] spids: [2795] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:doti) op: Equal rhs: {(1)} spids: [2799] ) ] spids: [2799] ) (C {(trap)} {(0)} {(1)} {(2)} {(3)} {(15)}) (ControlFlow token: <ControlFlow_Continue continue> ) ] spids: [2792 2793 2819 -1] ) (case_arm pat_list: [{(-G)}] action: [ (Case to_match: { (BracedVarSub token: <VSub_Name av> bracket_op: (ArrayIndex expr:(ArithVarRef name:nav)) spids: [2827 2832] ) } arms: [ (case_arm pat_list: [{(Lit_Other "[") (0-9) (Lit_Other "]") (Lit_Other "*")}] action: [ (C {(cc) (Lit_Other "[") (ncc) (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$arg") } ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:ncc) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:ncc) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: { (BracedVarSub token: <VSub_Name av> bracket_op: (ArrayIndex expr:(ArithVarRef name:nav)) spids: [2868 2873] ) } spids: [2867] ) ] spids: [2867] ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:nav) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:nav) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) ] spids: [2837 2841 2892 -1] ) ] spids: [2825 2834 2895] ) ] spids: [2822 2823 2898 -1] ) (case_arm pat_list: [{(-P)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ppfile) op: Equal rhs: {(1)} spids: [2904] ) ] spids: [2904] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:doti) op: Equal rhs: {(1)} spids: [2908] ) ] spids: [2908] ) (C {(trap)} {(0)} {(1)} {(2)} {(3)} {(15)}) (ControlFlow token: <ControlFlow_Continue continue> ) ] spids: [2901 2902 2928 -1] ) (case_arm pat_list: [ {(-) (Lit_Pound "#") (Lit_Other "*")} {(-dryrun)} {(--dryrun)} {(-verbose)} {(--verbose)} ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:verbose) op: Equal rhs: {(1)} spids: [2945] ) ] spids: [2945] ) ] spids: [2931 2942 2949 -1] ) (case_arm pat_list: [ {(Lit_Other "[") (-) (Lit_Other "+") (Lit_Other "]") (Lit_Other "*")} ] spids: [2952 2957 2959 -1] ) (case_arm pat_list: [ {($ VSub_Name "$src1")} {($ VSub_Name "$src2")} {($ VSub_Name "$src3")} {($ VSub_Name "$src4")} ] action: [ (Case to_match: {($ VSub_Name "$ppstdout")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:out) op: Equal rhs: { (BracedVarSub token: <VSub_Name arg> suffix_op: (StringUnary op_id: VOp1_DPound arg_word: {("*") (Lit_Slash /)} ) spids: [2984 2989] ) } spids: [2983] ) ] spids: [2983] ) (Case to_match: {($ VSub_Name "$doti")} arms: [ (case_arm pat_list: [{(1)}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:out) op: Equal rhs: { (BracedVarSub token: <VSub_Name out> suffix_op: (StringUnary op_id: VOp1_Percent arg_word: {(".*")} ) spids: [3003 3007] ) (.i) } spids: [3002] ) ] spids: [3002] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:clobber) op: Equal rhs: { (DQ ($ VSub_Name "$clobber") (" ") ($ VSub_Name "$out") ) } spids: [3011] ) ] spids: [3011] ) (If arms: [ (if_arm cond: [ (SimpleCommand words: [{(test)} {(-L)} {($ VSub_Name "$out")}] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [3027] ) ] ) ] action: [ (Case to_match: {($ VSub_Name "$verbose")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(echo)} {(Lit_Other "+")} {(rm)} {(-f)} {($ VSub_Name "$out")} ) ] spids: [3040 3041 3053 -1] ) ] spids: [3033 3037 3056] ) (Case to_match: {($ VSub_Name "$exec")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(rm)} {(-f)} {($ VSub_Name "$out")}) ] spids: [3066 3067 3075 -1] ) ] spids: [3059 3063 3078] ) ] spids: [-1 3031] ) ] spids: [-1 3081] ) (Case to_match: {($ VSub_Name "$linki") (Lit_Other ":") ($ VSub_Name "$ppfile") } arms: [ (case_arm pat_list: [{(1) (Lit_Other ":")}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:post) op: Equal rhs: { (DQ ($ VSub_Name "$post") (" ln -s ") ($ VSub_Name "$arg") (" ") ($ VSub_Name "$out") (";") ) } spids: [3097] ) ] spids: [3097] ) ] spids: [3093 3095 3107 -1] ) ] spids: [3084 3090 3110] ) ] spids: [2999 3000 3113 -1] ) (case_arm pat_list: [{(Lit_Other "*")}] action: [ (Case to_match: {($ VSub_Name "$clobber")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:clobber) op: Equal rhs: {($ VSub_Name "$tmp")} spids: [3130] ) ] spids: [3130] ) (Case to_match: {($ VSub_Name "$verbose")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(print)} {(-r)} {(--)} {(Lit_Other "+")} {(mkdir)} {($ VSub_Name "$tmp")} ) ] spids: [3141 3142 3156 -1] ) ] spids: [3134 3138 3159] ) (Case to_match: {($ VSub_Name "$exec")} arms: [ (case_arm pat_list: [{(1)}] action: [ (AndOr children: [ (C {(mkdir)} {($ VSub_Name "$tmp")}) (C {(exit)}) ] op_id: Op_DPipe ) ] spids: [3169 3170 3180 -1] ) ] spids: [3162 3166 3183] ) ] spids: [-1 3128 3186 -1] ) ] spids: [3119 3123 3189] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:out) op: Equal rhs: {($ VSub_Name "$tmp") (/) ($ VSub_Name "$out")} spids: [3192] ) ] spids: [3192] ) ] spids: [3116 3117 3198 -1] ) ] spids: [2992 2996 3201] ) (C {(pp) (Lit_Other "[") (npp) (Lit_Other "+") (1) (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$out") } ) ] spids: [-1 2981 3214 -1] ) ] spids: [2972 2976 3217] ) (C {(pp) (Lit_Other "[") (npp) (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$arg") } ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:arg) op: Equal rhs: {($ VSub_Name "$out")} spids: [3228] ) ] spids: [3228] ) (Case to_match: {($ VSub_Name "$verbose")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(print)} {(-r)} {(--)} {(Lit_Other "+")} { (DQ (BracedVarSub token: <VSub_Name pp> bracket_op: (WholeArray op_id:Lit_At) spids: [3251 3256] ) ) } ) ] spids: [3239 3240 3259 -1] ) ] spids: [3232 3236 3262] ) (Case to_match: {($ VSub_Name "$exec")} arms: [ (case_arm pat_list: [{(1)}] action: [ (AndOr children: [ (C { (DQ (BracedVarSub token: <VSub_Name pp> bracket_op: (WholeArray op_id:Lit_At) spids: [3276 3281] ) ) } ) (C {(exit)}) ] op_id: Op_DPipe ) ] spids: [3272 3273 3288 -1] ) ] spids: [3265 3269 3291] ) ] spids: [2962 2969 3294 -1] ) ] spids: [2491 2495 3297] ) (C {(cc) (Lit_Other "[") (ncc) (Lit_Other "]") (Lit_Other "=") ($ VSub_Name "$arg")} ) (DParen child: (BinaryAssign op_id: Arith_Equal left: (LhsName name:ncc) right: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:ncc) right: (ArithWord w:{(Lit_Digits 1)}) ) ) ) ] spids: [2464 3324] ) ) (Case to_match: {($ VSub_Name "$ppfile") ($ VSub_Name "$ppstdout")} arms: [ (case_arm pat_list: [{(DQ )}] action: [ (Case to_match: {($ VSub_Name "$verbose")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(print)} {(-r)} {(--)} {(Lit_Other "+")} { (DQ (BracedVarSub token: <VSub_Name cc> bracket_op: (WholeArray op_id:Lit_At) spids: [3358 3363] ) ) } ) ] spids: [3346 3347 3366 -1] ) ] spids: [3339 3343 3369] ) (Case to_match: {($ VSub_Name "$exec")} arms: [ (case_arm pat_list: [{(1)}] action: [ (C { (DQ (BracedVarSub token: <VSub_Name cc> bracket_op: (WholeArray op_id:Lit_At) spids: [3383 3388] ) ) } ) ] spids: [3379 3380 3391 -1] ) ] spids: [3372 3376 3394] ) ] spids: [-1 3337 3397 -1] ) ] spids: [3327 3332 3400] ) ] spids: [2261 2262 -1 3402] ) ] spids: [936 942 3402] ) ] )