(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:e) op: Equal rhs: {(DQ (Lit_Other '\\') ('033['))} spids: [33] ) ] spids: [33] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:vline) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Sentence child: (SimpleCommand words: [{(tput)} {(smacs)}] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [45] ) ] ) terminator: <Op_Semi ';'> ) (Sentence child: (C {(printf)} {(SQ <x>)}) terminator: <Op_Semi ';'> ) (SimpleCommand words: [{(tput)} {(rmacs)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[60])] ) ] ) left_token: <Left_CommandSub '$('> spids: [40 62] ) } spids: [39] ) ] spids: [39] ) (AndOr ops: [Op_DAmp] children: [ (C {(Lit_Other '[')} {(DQ ($ VSub_Name '$vline'))} {(Lit_Other '=')} {(DQ (x))} {(Lit_Other ']')}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:vline) op:Equal rhs:{(DQ ('|'))} spids:[80])] spids: [80] ) ] ) (C {(printf)} { (DQ (${ VSub_Name e) ('1;4mf') (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (b) (${ VSub_Name e) (0m) (${ VSub_Name e) ('4m none white black red ') ('green yellow blue magenta cyan ') (${ VSub_Name e) (0m) (EscapedLiteralPart token:<Lit_EscapedChar '\\\\'>) (n) ) } ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:rows) op:Equal rhs:{(SQ <brgybmcw>)} spids:[118])] spids: [118] ) (ForEach iter_name: f iter_words: [ {(0)} {(7)} { (CommandSubPart command_list: (CommandList children:[(C {(seq)} {(6)})]) left_token: <Left_Backtick '`'> spids: [134 138] ) } ] do_arg_iter: F body: (DoGroup children: [ (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:no) op:Equal rhs:{(DQ )} spids:[144])] spids: [144] ) terminator: <Op_Semi ';'> ) (Sentence child: (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:bo) op:Equal rhs:{(DQ )} spids:[149])] spids: [149] ) terminator: <Op_Semi ';'> ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:p) op:Equal rhs:{(DQ )} spids:[154])] spids: [154] ) (ForEach iter_name: b iter_words: [ {(n)} {(7)} {(0)} { (CommandSubPart command_list: (CommandList children:[(C {(seq)} {(6)})]) left_token: <Left_Backtick '`'> spids: [171 175] ) } ] do_arg_iter: F body: (DoGroup children: [ (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:co) op: Equal rhs: {(DQ (3) ($ VSub_Name '$f'))} spids: [181] ) ] spids: [181] ) terminator: <Op_Semi ';'> ) (AndOr ops: [Op_DPipe] children: [ (C {(Lit_Other '[')} {($ VSub_Name '$b')} {(Lit_Other '=')} {(n)} {(Lit_Other ']')} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:co) op: Equal rhs: {(DQ ($ VSub_Name '$co') (';4') ($ VSub_Name '$b'))} spids: [200] ) ] spids: [200] ) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:no) op: Equal rhs: { (DQ (${ VSub_Name no) (${ VSub_Name e) (${ VSub_Name co) ('m ') (${ VSub_Name p) (${ VSub_Name co) (' ') (${ VSub_Name e) (0m) ) } spids: [208] ) ] spids: [208] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:bo) op: Equal rhs: { (DQ (${ VSub_Name bo) (${ VSub_Name e) ('1;') (${ VSub_Name co) (m) (${ VSub_Name p) ('1;') (${ VSub_Name co) (' ') (${ VSub_Name e) (0m) ) } spids: [234] ) ] spids: [234] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:p) op: Equal rhs: {(DQ (' '))} spids: [262] ) ] spids: [262] ) ] spids: [178 268] ) spids: [164 176] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:fc) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {($ VSub_Name '$rows')}) (C {(cut)} {(-c) (ArithSubPart anode: (ArithBinary op_id: Arith_Plus left: (ArithVarRef name:f) right: (ArithWord w:{(Lit_Digits 1)}) ) spids: [282 287] ) } ) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [272 288] ) } spids: [271] ) ] spids: [271] ) (C {(printf)} { (DQ ($ VSub_Name '$fc') (' ') ($ VSub_Name '$vline') ($ VSub_Name '$no') (Lit_Other '\\') (nb) ($ VSub_Name '$fc') ($ VSub_Name '$vline') ($ VSub_Name '$bo') (Lit_Other '\\') (n) ) } ) ] spids: [141 307] ) spids: [129 139] ) ] )