(command.CommandList children: [ (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:e) op:Equal rhs:{(DQ (Lit_Other '\\') ('033['))})] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:vline) op: Equal rhs: { (command_sub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children: [ (command.Sentence child: (command.Simple words: [{(tput)} {(smacs)}] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) terminator: <Op_Semi ';'> ) (command.Sentence child: (C {(printf)} {(SQ <x>)}) terminator: <Op_Semi ';'> ) (command.Simple words: [{(tput)} {(rmacs)}] redirects: [(redir.Redir op:<Redir_Great '2>'> fd:2 arg_word:{(/dev/null)})] ) ] ) ) } ) ] ) (command.AndOr ops: [Op_DAmp] children: [ (C {(Lit_LBracket '[')} {(DQ ($ VSub_DollarName '$vline'))} {(Lit_Equals '=')} {(DQ (x))} {(Lit_RBracket ']')} ) (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:vline) op:Equal rhs:{(DQ ('|'))})] ) ] ) (C {(printf)} { (DQ (${ VSub_Name e) ('1;4mf') (word_part.EscapedLiteral token:<Lit_EscapedChar '\\\\'>) (word_part.EscapedLiteral 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) (word_part.EscapedLiteral token:<Lit_EscapedChar '\\\\'>) (n) ) } ) (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:rows) op:Equal rhs:{(SQ <brgybmcw>)})] ) (command.ForEach iter_name: f iter_words: [ {(0)} {(7)} { (command_sub left_token: <Left_Backtick '`'> command_list: (command.CommandList children:[(C {(seq)} {(6)})]) ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.Sentence child: (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:no) op:Equal rhs:{(DQ )})] ) terminator: <Op_Semi ';'> ) (command.Sentence child: (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:bo) op:Equal rhs:{(DQ )})] ) terminator: <Op_Semi ';'> ) (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:p) op:Equal rhs:{(DQ )})] ) (command.ForEach iter_name: b iter_words: [ {(n)} {(7)} {(0)} { (command_sub left_token: <Left_Backtick '`'> command_list: (command.CommandList children:[(C {(seq)} {(6)})]) ) } ] do_arg_iter: F body: (command.DoGroup children: [ (command.Sentence child: (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:co) op: Equal rhs: {(DQ (3) ($ VSub_DollarName '$f'))} ) ] ) terminator: <Op_Semi ';'> ) (command.AndOr ops: [Op_DPipe] children: [ (C {(Lit_LBracket '[')} {($ VSub_DollarName '$b')} {(Lit_Equals '=')} {(n)} {(Lit_RBracket ']')} ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:co) op: Equal rhs: {(DQ ($ VSub_DollarName '$co') (';4') ($ VSub_DollarName '$b'))} ) ] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name 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) ) } ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name 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) ) } ) ] ) (command.ShAssignment pairs: [(assign_pair lhs:(sh_lhs_expr.Name name:p) op:Equal rhs:{(DQ (' '))})] ) ] ) ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:fc) op: Equal rhs: { (command_sub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children: [ (command.Pipeline children: [ (C {(echo)} {($ VSub_DollarName '$rows')}) (C {(cut)} {(-c) (word_part.ArithSub anode: (arith_expr.Binary op_id: Arith_Plus left: (arith_expr.VarRef token:<Lit_ArithVarLike f>) right: (arith_expr.ArithWord w:{(Lit_Digits 1)}) ) ) } ) ] negated: F ) ] ) ) } ) ] ) (C {(printf)} { (DQ ($ VSub_DollarName '$fc') (' ') ($ VSub_DollarName '$vline') ($ VSub_DollarName '$no') (Lit_Other '\\') (nb) ($ VSub_DollarName '$fc') ($ VSub_DollarName '$vline') ($ VSub_DollarName '$bo') (Lit_Other '\\') (n) ) } ) ] ) ) ] )