(List (Com {[LIT_OTHER ":"]} {[LIT_CHARS vex]} {[LIT_CHARS skip]} {[LIT_CHARS expand]} {[LIT_CHARS command]} {[LIT_CHARS ...]}) (Case to_match={[VarSub #]}, pat_word_list=[[{[LIT_OTHER "["] [LIT_CHARS 012] [LIT_OTHER "]"]}]] (List (Com {[LIT_CHARS print]} {[LIT_CHARS -u2]} {[DQ [LIT_CHARS "Usage: "][VarSub 0][LIT_CHARS " skip expand command ..."]]}) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (= scope= flags=0 words=[] bindings=[('skip', {[VarSub 1]})]) (Com {[LIT_CHARS shift]}) (= scope= flags=0 words=[] bindings=[('expand', {[VarSub 1]})]) (Com {[LIT_CHARS shift]}) (= scope= flags=0 words=[] bindings=[('command', {[VarSub 1]})]) (Com {[LIT_CHARS shift]}) (Com {[LIT_CHARS integer]} {[LIT_VAR_LIKE "argc="] [LIT_CHARS 0] =} {[LIT_VAR_LIKE "noexpand="] [LIT_CHARS 0] =}) (For arg do_arg_iter) (List (If (DParen {A Atom NODE_ARITH_WORD {[VarSub noexpand]}}) (= scope= flags=0 words=[] bindings=[('noexpand', {[LIT_CHARS 0]})]) (ElseTrue) (Case to_match={[VarSub arg]}, pat_word_list=[[{[LIT_CHARS -] [LIT_OTHER "["] [VarSub skip] [LIT_OTHER "]"]}], [{[LIT_CHARS -] [LIT_OTHER "*"]}], [{[VarSub expand]}]] (= scope= flags=0 words=[] bindings=[('noexpand', {[LIT_CHARS 1]})]) (ElseTrue) (List (= scope= flags=0 words=[] bindings=[('x', {[ComSub (Com redirects=[(FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2)]{[LIT_CHARS vpath]} {[DQ [VarSub arg]]})]})]) (Case to_match={[VarSub x]}, pat_word_list=[[{[LIT_OTHER "?"] [LIT_OTHER "*"]}]] (= scope= flags=0 words=[] bindings=[('arg', {[VarSub x transform_ops=[VS_UNARY_POUND {[VarSub PWD] [LIT_SLASH /]}]]})]) ) ) ) ) (Com {[LIT_CHARS argv] [LIT_OTHER "["] [LIT_CHARS argc] [LIT_OTHER "]"] [LIT_OTHER "="] [VarSub arg]}) (DParen {A2 AS_OP_PLUS_EQUAL {A Atom NODE_ARITH_WORD {[VarSub argc]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}}}) ) ) (Com {[DQ [VarSub command]]} {[DQ [VarSub argv bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]]}) )