(CommandList children: [ (If arms: [ (if_arm cond: [(C {(Lit_Other '[')} {($ VSub_Pound '$#')} {(-lt)} {(1)} {(Lit_Other ']')})] action: [ (Sentence child: (C {(echo)} {(DQ (' ') ($ VSub_Number '$0') (' <driver source (e.g., if_em.c)>'))}) terminator: <Op_Semi ';'> ) (Sentence child: (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] spids: [16777215 119] ) ] spids: [16777215 137] ) (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:__ifp__) op:Equal rhs:{(DQ (ifp))} spids:[143])] spids: [143] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:file) op:Equal rhs:{($ VSub_Number '$1')} spids:[150])] spids: [150] ) (FuncDef name: rotateCursor body: (BraceGroup children: [ (Case to_match: {($ VSub_Name '$toggle')} arms: [ (case_arm pat_list: [{(1)}] action: [ (C {(printf)} {(DQ (' ') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (' '))}) (C {(printf)} {(DQ (Lit_Other '\\') (b) (Lit_Other '\\') (b))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:toggle) op: Equal rhs: {(DQ (2))} spids: [192] ) ] spids: [192] ) ] spids: [169 170 198 16777215] ) (case_arm pat_list: [{(2)}] action: [ (C {(printf)} {(DQ (' | '))}) (C {(printf)} {(DQ (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:toggle) op: Equal rhs: {(DQ (3))} spids: [225] ) ] spids: [225] ) ] spids: [202 203 231 16777215] ) (case_arm pat_list: [{(3)}] action: [ (C {(printf)} {(DQ (' / '))}) (C {(printf)} {(DQ (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:toggle) op: Equal rhs: {(DQ (4))} spids: [258] ) ] spids: [258] ) ] spids: [235 236 264 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (C {(printf)} {(DQ (' - '))}) (C {(printf)} {(DQ (Lit_Other '\\') (b) (Lit_Other '\\') (b) (Lit_Other '\\') (b))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:toggle) op: Equal rhs: {(DQ (1))} spids: [291] ) ] spids: [291] ) ] spids: [268 269 297 16777215] ) ] spids: [161 166 300] ) ] spids: [158] ) spids: [154 157] ) (FuncDef name: handle_set body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [315] ) ] spids: [315] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:set) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ ($ VSub_Name '$__ifp__') ('->.* = '))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [320 332] ) } spids: [319] ) ] spids: [319] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$set'))} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:word) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F)} {(DQ (if_))} {(SQ <' { print $2 }'>)}) (C {(awk)} {(-F) (DQ (' ='))} {(SQ <'{ print $1 }'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [354 385] ) } spids: [353] ) ] spids: [353] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F)} {(DQ ('='))} {(SQ <'{ print $2 }'>)}) (C {(sed)} {(-e)} {(SQ <'s/;//g'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [389 417] ) } spids: [388] ) ] spids: [388] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(if_set) ($ VSub_Name '$word') (DQ (Lit_Other '\\') ('(') ($ VSub_Name '$__ifp__') (',')) ($ VSub_Name '$value') (DQ (');')) } ) ] ) left_token: <Left_Backtick '`'> spids: [421 436] ) } spids: [420] ) ] spids: [420] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$new')}) (C {(sed)} {(-e)} {(SQ <'s/&/\\\\\\&/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [440 454] ) } spids: [439] ) ] spids: [439] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:old) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s/^[ \t]*//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [458 470] ) } spids: [457] ) ] spids: [457] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e) (SQ <s/>) ($ VSub_Name '$old') (SQ </>) ($ VSub_Name '$new') (SQ </g>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [474 494] ) } spids: [473] ) ] spids: [473] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [16777215 350] ) ] spids: [16777215 502] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] spids: [309] ) spids: [305 308] ) (FuncDef name: handle_inc body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [519] ) ] spids: [519] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:inc) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} { (DQ ($ VSub_Name '$__ifp__') ('->.*++') (Lit_Other '\\') ('|++') ($ VSub_Name '$__ifp__') ('->.*') ) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [525 542] ) } spids: [524] ) ] spids: [524] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$inc'))} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:word) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F) (DQ (if_))} {(SQ <'{ print $2 }'>)}) (C {(awk)} {(-F) (DQ (Lit_Other '\\') ('+'))} {(SQ <'{ print $1}'>)} ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [564 593] ) } spids: [563] ) ] spids: [563] ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: {(SQ <' 1'>)} spids: [596] ) ] spids: [596] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:old) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s/^[ \t]*//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [604 616] ) } spids: [603] ) ] spids: [603] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(if_inc) ($ VSub_Name '$word') (DQ (Lit_Other '\\') ('(') ($ VSub_Name '$__ifp__') (',')) ($ VSub_Name '$value') (DQ (');')) } ) ] ) left_token: <Left_Backtick '`'> spids: [620 635] ) } spids: [619] ) ] spids: [619] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$new')}) (C {(sed)} {(-e)} {(SQ <'s/&/\\\\\\&/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [639 653] ) } spids: [638] ) ] spids: [638] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e) (SQ <s/>) ($ VSub_Name '$old') (SQ </>) ($ VSub_Name '$new') (SQ </g>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [657 677] ) } spids: [656] ) ] spids: [656] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) terminator: <Op_Semi ';'> ) ] spids: [16777215 560] ) ] spids: [16777215 686] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] spids: [516] ) spids: [512 515] ) (FuncDef name: handle_add body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [705] ) ] spids: [705] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:add) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ ($ VSub_Name '$__ifp__') ('->.*+= '))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [710 721] ) } spids: [709] ) ] spids: [709] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$add'))} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:word) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F) (DQ (if_))} {(SQ <'{ print $2 }'>)}) (C {(awk)} {(SQ <'{ print $1}'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [743 766] ) } spids: [742] ) ] spids: [742] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F) (DQ ('='))} {(SQ <'{ print $2}'>)}) (C {(sed)} {(-e)} {(SQ <'s/;//g'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [770 797] ) } spids: [769] ) ] spids: [769] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(if_inc) ($ VSub_Name '$word') (DQ (Lit_Other '\\') ('(') ($ VSub_Name '$__ifp__') (',') ($ VSub_Name '$value') (');') ) } ) ] ) left_token: <Left_Backtick '`'> spids: [801 814] ) } spids: [800] ) ] spids: [800] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$new')}) (C {(sed)} {(-e)} {(SQ <'s/&/\\\\\\&/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [818 832] ) } spids: [817] ) ] spids: [817] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:old) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s/^[ \t]*//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [836 848] ) } spids: [835] ) ] spids: [835] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e) (SQ <s/>) ($ VSub_Name '$old') (SQ </>) ($ VSub_Name '$new') (SQ </g>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [852 872] ) } spids: [851] ) ] spids: [851] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [16777215 739] ) ] spids: [16777215 880] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] spids: [702] ) spids: [698 701] ) (FuncDef name: handle_or body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [899] ) ] spids: [899] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:or) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ ($ VSub_Name '$__ifp__') ('->.*|= '))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [904 915] ) } spids: [903] ) ] spids: [903] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$or'))} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:word) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F) (DQ (if_))} {(SQ <'{ print $2 }'>)}) (C {(awk)} {(SQ <'{ print $1}'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [937 960] ) } spids: [936] ) ] spids: [936] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F) (DQ ('='))} {(SQ <'{ print $2}'>)}) (C {(sed)} {(-e)} {(SQ <'s/;//g'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [965 992] ) } spids: [964] ) ] spids: [964] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(if_set) (${ VSub_Name word) (bit) (DQ ('(') ($ VSub_Name '$__ifp__') (',') ($ VSub_Name '$value') (', 0);') ) } ) ] ) left_token: <Left_Backtick '`'> spids: [996 1011] ) } spids: [995] ) ] spids: [995] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$new')}) (C {(sed)} {(-e)} {(SQ <'s/&/\\\\\\&/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1015 1029] ) } spids: [1014] ) ] spids: [1014] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:old) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s/^[ \t]*//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1038 1050] ) } spids: [1037] ) ] spids: [1037] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e) (SQ <s/>) ($ VSub_Name '$old') (SQ </>) ($ VSub_Name '$new') (SQ </g>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1054 1074] ) } spids: [1053] ) ] spids: [1053] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) terminator: <Op_Semi ';'> ) ] spids: [16777215 933] ) ] spids: [16777215 1083] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] spids: [896] ) spids: [892 895] ) (FuncDef name: handle_and body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [1102] ) ] spids: [1102] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:or) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ ($ VSub_Name '$__ifp__') ('->.*&= '))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1107 1118] ) } spids: [1106] ) ] spids: [1106] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$or'))} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:word) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F) (DQ (if_))} {(SQ <'{ print $2 }'>)}) (C {(awk)} {(SQ <'{ print $1}'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1140 1163] ) } spids: [1139] ) ] spids: [1139] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F) (DQ ('='))} {(SQ <'{ print $2}'>)}) (C {(sed)} {(-e)} {(SQ <'s/;//g'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1168 1195] ) } spids: [1167] ) ] spids: [1167] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:value) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$value')}) (C {(sed)} {(-e) (SQ <'s/~//g'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1199 1212] ) } spids: [1198] ) ] spids: [1198] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(if_set) (${ VSub_Name word) (bit) (DQ (Lit_Other '\\') ('(') ($ VSub_Name '$__ifp__') (', 0,') ($ VSub_Name '$value') (');') ) } ) ] ) left_token: <Left_Backtick '`'> spids: [1216 1232] ) } spids: [1215] ) ] spids: [1215] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$new')}) (C {(sed)} {(-e)} {(SQ <'s/&/\\\\\\&/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1236 1250] ) } spids: [1235] ) ] spids: [1235] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:old) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s/^[ \t]*//'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1254 1266] ) } spids: [1253] ) ] spids: [1253] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e) (SQ <s/>) ($ VSub_Name '$old') (SQ </>) ($ VSub_Name '$new') (SQ </g>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1270 1290] ) } spids: [1269] ) ] spids: [1269] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) terminator: <Op_Semi ';'> ) ] spids: [16777215 1136] ) ] spids: [16777215 1299] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] spids: [1099] ) spids: [1095 1098] ) (FuncDef name: handle_toggle body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [1318] ) ] spids: [1318] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ (Lit_Other '\\') ('^='))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1330 1343] ) } {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <s/>) (DQ ($ VSub_Name '$__ifp__')) (SQ <'->if_\\(.*\\) ^=\\(.*\\);/if_toggle\\1('>) (DQ ($ VSub_Name '$__ifp__')) (SQ <',\\2);/g'>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1352 1378] ) } spids: [1351] ) ] spids: [1351] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) terminator: <Op_Semi ';'> ) ] spids: [16777215 1348] ) ] spids: [16777215 1387] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) ] spids: [1315] ) spids: [1311 1314] ) (FuncDef name: handle_misc body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [1408] ) ] spids: [1408] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:get) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} { (DQ (if_capabilities) (Lit_Other '\\') ('|if_flags') (Lit_Other '\\') ('|if_softc') (Lit_Other '\\') ('|if_capenable') (Lit_Other '\\') ('|if_mtu') (Lit_Other '\\') ('|if_drv_flags') ) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1413 1435] ) } spids: [1412] ) ] spids: [1412] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} {(DQ ($ VSub_Name '$get'))} {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:word) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(awk)} {(-F) (DQ ($ VSub_Name '$__ifp__') ('->if_'))} {(SQ <'{ print $2 }'>)} ) (C {(sed)} {(-e) (SQ <'s/[^a-zA-Z0-9_]/\\@/'>)}) (C {(awk)} {(-F) (DQ (Lit_Other '\\') ('@'))} {(SQ <'{ print $1}'>)} ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1457 1497] ) } spids: [1456] ) ] spids: [1456] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:old) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(DQ ($ VSub_Name '$__ifp__') ('->if_')) (${ VSub_Name word)} ) ] ) left_token: <Left_Backtick '`'> spids: [1501 1511] ) } spids: [1500] ) ] spids: [1500] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(echo)} {(DQ (if_get)) (${ VSub_Name word) (DQ ('(') ($ VSub_Name '$__ifp__') (')')) } ) ] ) left_token: <Left_Backtick '`'> spids: [1515 1529] ) } spids: [1514] ) ] spids: [1514] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$new')}) (C {(sed)} {(-e)} {(SQ <'s/&/\\\\\\&/'>)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1533 1547] ) } spids: [1532] ) ] spids: [1532] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e) (SQ <s/>) ($ VSub_Name '$old') (SQ </>) ($ VSub_Name '$new') (SQ </g>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1551 1571] ) } spids: [1550] ) ] spids: [1550] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) terminator: <Op_Semi ';'> ) ] spids: [16777215 1453] ) ] spids: [16777215 1580] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] spids: [1405] ) spids: [1401 1404] ) (FuncDef name: replace_str body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [1600] ) ] spids: [1600] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:orig) op: Equal rhs: {($ VSub_Number '$2')} spids: [1604] ) ] spids: [1604] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:new) op: Equal rhs: {($ VSub_Number '$3')} spids: [1608] ) ] spids: [1608] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <s/>) (DQ ($ VSub_Name '$orig')) (SQ <'\\(.*\\)/'>) (DQ ($ VSub_Name '$new')) (SQ <'\\1/g'>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1613 1639] ) } spids: [1612] ) ] spids: [1612] ) (Sentence child: (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) terminator: <Op_Semi ';'> ) ] spids: [1597] ) spids: [1592 1596] ) (FuncDef name: handle_special body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: {($ VSub_Number '$1')} spids: [1661] ) ] spids: [1661] ) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ ('(') (Lit_Other '\\') ('*') ($ VSub_Name '$__ifp__') ('->if_input)'))} {(DQ (if_input))} ) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ (if_setinit))} {(DQ (if_setinitfn))}) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ (if_setioctl))} {(DQ (if_setioctlfn))}) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ (if_getdrv_flags))} {(DQ (if_getdrvflags))}) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ (if_setdrv_flagsbit))} {(DQ (if_setdrvflagbits))} ) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ (if_setstart))} {(DQ (if_setstartfn))}) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ (if_sethwassistbit))} {(DQ (if_sethwassistbits))} ) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ (ifmedia_init))} {(DQ (ifmedia_init_drv))}) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ ('IFQ_DRV_IS_EMPTY(&') ($ VSub_Name '$__ifp__') ('->if_snd)'))} {(DQ ('if_sendq_empty(') ($ VSub_Name '$__ifp__') (')'))} ) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ ('IFQ_DRV_PREPEND(&') ($ VSub_Name '$__ifp__') ('->if_snd'))} {(DQ ('if_sendq_prepend(') ($ VSub_Name '$__ifp__'))} ) (C {(replace_str)} {($ VSub_Name '$line')} {(DQ ('IFQ_SET_READY(&ifp->if_snd)'))} {(DQ ('if_setsendqready(') ($ VSub_Name '$__ifp__') (')'))} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s/IFQ_SET_MAXLEN(&'>) ($ VSub_Name '$__ifp__') (SQ <'->if_snd, \\(.*\\))/if_setsendqlen('>) ($ VSub_Name '$__ifp__') (SQ <', \\1)/g'>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1822 1844] ) } spids: [1821] ) ] spids: [1821] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s/IFQ_DRV_DEQUEUE(&'>) ($ VSub_Name '$__ifp__') (SQ <'->if_snd, \\(.*\\))/\\1 = if_dequeue('>) ($ VSub_Name '$__ifp__') (SQ <')/g'>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1848 1870] ) } spids: [1847] ) ] spids: [1847] ) (ControlFlow token:<ControlFlow_Return return> arg_word:{(0)}) ] spids: [1658] ) spids: [1653 1657] ) (If arms: [ (if_arm cond: [(C {(Lit_Other '[')} {(-e)} {($ VSub_Name '$file') (.tmp)} {(Lit_Other ']')})] action: [(C {(rm)} {($ VSub_Name '$file') (.tmp)})] spids: [16777215 1891] ) ] spids: [16777215 1899] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:IFS) op:Equal rhs:{(EmptyPart)} spids:[1901])] spids: [1901] ) (C {(echo)} {(-n)} {(DQ ('Conversion for ') ($ VSub_Name '$file') (' started, please wait: '))}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:FAIL_PAT) op: Equal rhs: {(DQ ('XXX - DRVAPI'))} spids: [1913] ) ] spids: [1913] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:count) op:Equal rhs:{(0)} spids:[1918])] spids: [1918] ) (Pipeline children: [ (C {(cat)} {($ VSub_Number '$1')}) (While cond: [(C {(read)} {(-r)} {(line)})] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:count) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$count')} {(Lit_Other '+')} {(1)}) ] ) left_token: <Left_Backtick '`'> spids: [1938 1946] ) } spids: [1937] ) ] spids: [1937] ) (C {(rotateCursor)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pat) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ ($ VSub_Name '$__ifp__') ('->'))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1952 1965] ) } spids: [1951] ) ] spids: [1951] ) (While cond: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$pat'))} {(KW_Bang '!') (Lit_Other '=')} {(DQ )} {(Lit_Other ']')} ) ] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pat) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ ($ VSub_Name '$__ifp__') ('->'))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [1987 2000] ) } spids: [1986] ) ] spids: [1986] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$pat')}) (C {(grep)} {(DQ ($ VSub_Name '$FAIL_PAT'))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [2011 2023] ) } {(Lit_Other ']')} ) ] action: [ (Sentence child: (ControlFlow token:<ControlFlow_Break break>) terminator: <Op_Semi ';'> ) ] spids: [16777215 2028] ) ] spids: [16777215 2035] ) (C {(handle_set)} {($ VSub_Name '$line')}) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(KW_Bang '!') (Lit_Other '=')} {(0)} {(Lit_Other ']')} ) ] action: [(C {(handle_inc)} {($ VSub_Name '$line')})] spids: [16777215 2059] ) ] spids: [16777215 2068] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(KW_Bang '!') (Lit_Other '=')} {(0)} {(Lit_Other ']')} ) ] action: [(C {(handle_add)} {($ VSub_Name '$line')})] spids: [16777215 2086] ) ] spids: [16777215 2094] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(KW_Bang '!') (Lit_Other '=')} {(0)} {(Lit_Other ']')} ) ] action: [(C {(handle_or)} {($ VSub_Name '$line')})] spids: [16777215 2112] ) ] spids: [16777215 2120] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(KW_Bang '!') (Lit_Other '=')} {(0)} {(Lit_Other ']')} ) ] action: [(C {(handle_and)} {($ VSub_Name '$line')})] spids: [16777215 2138] ) ] spids: [16777215 2146] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(KW_Bang '!') (Lit_Other '=')} {(0)} {(Lit_Other ']')} ) ] action: [(C {(handle_toggle)} {($ VSub_Name '$line')})] spids: [16777215 2164] ) ] spids: [16777215 2172] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(KW_Bang '!') (Lit_Other '=')} {(0)} {(Lit_Other ']')} ) ] action: [(C {(handle_misc)} {($ VSub_Name '$line')})] spids: [16777215 2190] ) ] spids: [16777215 2198] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {($ VSub_QMark '$?')} {(KW_Bang '!') (Lit_Other '=')} {(0)} {(Lit_Other ']')} ) ] action: [(C {(handle_special)} {($ VSub_Name '$line')})] spids: [16777215 2217] ) ] spids: [16777215 2225] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ ($ VSub_Name '$__ifp__') ('->'))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [2238 2251] ) } {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s:$: \\/* '>) (${ VSub_Name FAIL_PAT) (SQ <' *\\/:g'>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [2260 2280] ) } spids: [2259] ) ] spids: [2259] ) ] spids: [16777215 2256] ) ] spids: [16777215 2283] ) ] spids: [1983 2285] ) ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(DQ ($ VSub_Name '$line'))}) (C {(sed)} {(-e)} {(SQ <'s:VLAN_CAPABILITIES('>) ($ VSub_Name '$__ifp__') (SQ <'):if_vlancap('>) ($ VSub_Name '$__ifp__') (SQ <'):g'>) } ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [2289 2313] ) } spids: [2288] ) ] spids: [2288] ) (If arms: [ (if_arm cond: [ (C {(Lit_Other '[')} {(KW_Bang '!')} {(-z)} { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(grep)} {(DQ ('struct ifnet'))}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [2328 2340] ) } {(Lit_Other ']')} ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:line) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$line')}) (C {(sed)} {(-e)} {(SQ <'s/struct ifnet[ \\t]*\\*/if_t /g'>)} ) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [2349 2363] ) } spids: [2348] ) ] spids: [2348] ) ] spids: [16777215 2345] ) ] spids: [16777215 2366] ) (SimpleCommand words: [{(echo)} {(DQ ($ VSub_Name '$line'))}] redirects: [ (Redir op_id: Redir_DGreat fd: 16777215 arg_word: {($ VSub_Name '$file') (.tmp)} spids: [2375] ) ] ) ] spids: [1935 2380] ) ) ] negated: F ) (C {(echo)} {(DQ )}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:count) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(grep)} {($ VSub_Name '$FAIL_PAT')} {($ VSub_Name '$file') (.tmp)}) (C {(wc)} {(-l)}) ] negated: F ) ] ) left_token: <Left_Backtick '`'> spids: [2388 2401] ) } spids: [2387] ) ] spids: [2387] ) (If arms: [ (if_arm cond: [(C {(Lit_Other '[')} {($ VSub_Name '$count')} {(-gt)} {(0)} {(Lit_Other ']')})] action: [ (C {(echo)} {(DQ ($ VSub_Name '$count') (' lines could not be converted to DRVAPI'))}) (C {(echo)} {(DQ ('Look for /* ') ($ VSub_Name '$FAIL_PAT') (' */ in the converted file'))}) ] spids: [16777215 2415] ) ] spids: [16777215 2434] ) (C {(echo)} { (DQ ('original ') ($ VSub_Name '$file') (' has been moved to ') ($ VSub_Name '$file') (.orig)) } ) (C {(mv)} {($ VSub_Name '$file')} {($ VSub_Name '$file') (.orig)}) (C {(mv)} {($ VSub_Name '$file') (.tmp)} {($ VSub_Name '$file')}) ] )