(CommandList children: [ (FuncDef name: in_path body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:cmd) op: Equal rhs: {($ VSub_Number '$1')} spids: [34] ) (assign_pair lhs: (LhsName name:ourpath) op: Equal rhs: {($ VSub_Number '$2')} spids: [37] ) (assign_pair lhs:(LhsName name:result) op:Equal rhs:{(1)} spids:[40]) ] spids: [34] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:oldIFS) op: Equal rhs: {($ VSub_Name '$IFS')} spids: [44] ) (assign_pair lhs: (LhsName name:IFS) op: Equal rhs: {(DQ (':'))} spids: [47] ) ] spids: [44] ) (ForEach iter_name: directory iter_words: [{($ VSub_Name '$ourpath')}] do_arg_iter: F body: (DoGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(-x)} {($ VSub_Name '$directory') (/) ($ VSub_Name '$cmd')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:result) op: Equal rhs: {(0)} spids: [83] ) ] spids: [83] ) ] spids: [16777215 80] ) ] spids: [16777215 90] ) ] spids: [63 93] ) spids: [59 16777215] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:IFS) op: Equal rhs: {($ VSub_Name '$oldIFS')} spids: [97] ) ] spids: [97] ) (ControlFlow token: <ControlFlow_Return return> arg_word: {($ VSub_Name '$result')} ) ] spids: [14] ) spids: [10 13] ) (FuncDef name: checkForCmdInPath body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:var) op: Equal rhs: {($ VSub_Number '$1')} spids: [118] ) ] spids: [118] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$var'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ )} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (DQ (BracedVarSub token: <VSub_Name var> suffix_op: (Slice begin: (ArithWord w:{(Lit_Digits 0)}) length: (ArithWord w:{(Lit_Digits 1)}) ) spids: [149 155] ) ) } {(Lit_Other '=')} {(DQ (/))} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} {(KW_Bang '!')} {(-x)} {($ VSub_Name '$var')} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (ControlFlow token: <ControlFlow_Return return> arg_word: {(1)} ) ] spids: [16777215 185] ) ] spids: [16777215 193] ) ] spids: [16777215 168] ) (if_arm cond: [ (Sentence child: (Pipeline children: [ (C {(in_path)} {($ VSub_Name '$var')} {(DQ ($ VSub_Name '$PATH'))}) ] negated: T ) terminator: <Op_Semi ';'> ) ] action: [(ControlFlow token:<ControlFlow_Return return> arg_word:{(2)})] spids: [196 210] ) ] spids: [16777215 218] ) ] spids: [16777215 141] ) ] spids: [16777215 222] ) ] spids: [115] ) spids: [110 113] ) ] )