(CommandList children: [ (Sentence child: (C {(.)} { (DQ (BracedVarSub token: <VSub_Name srcdir> suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(.)}) spids: [47 51] ) (/tests/init.sh) ) } ) terminator: <Op_Semi ';'> ) (C {(path_prepend_)} {(./src)}) (C {(print_ver_)} {(tr)}) (SimpleCommand words: [{(echo)} {(SQ <01234567899999999999999999>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[74])] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <abcdefghijklmnopqrstuvwxyz>)}) (SimpleCommand words: [{(tr)} {(SQ <'[:lower:]'>)} {(SQ <0-9>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[96])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[102])] spids: [102] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[113])] spids: [113] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <abcdefghijklmnopqrstuvwxyz>)}) (SimpleCommand words: [{(tr)} {(SQ <'[:lower:][:lower:]'>)} {(SQ <'[:upper:]0-9'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[134])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[140])] spids: [140] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[151])] spids: [151] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(tr)} {(SQ <'A-Z[:lower:]'>)} {(SQ <'a-y[:upper:]'>)}] redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[168])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[174])] spids: [174] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(tr)} {(SQ <'[:upper:][:lower:]'>)} {(SQ <'a-y[:upper:]'>)}] redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[187])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[193])] spids: [193] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(tr)} {(SQ <'A-Y[:lower:]'>)} {(SQ <'a-z[:upper:]'>)}] redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[206])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[212])] spids: [212] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(tr)} {(SQ <'A-Z[:lower:]'>)} {(SQ <'[:lower:][:upper:]'>)}] redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[225])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[231])] spids: [231] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(tr)} {(SQ <'A-Z[:lower:]'>)} {(SQ <'[:lower:]A-Z'>)}] redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[244])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[250])] spids: [250] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(tr)} {(SQ <'[:upper:][:lower:]'>)} {(SQ <'a-z[:upper:]'>)}] redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[263])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[269])] spids: [269] ) ] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(tr)} {(SQ <'[:upper:][:lower:]'>)} {(SQ <'[:upper:]a-z'>)}] redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[282])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[288])] spids: [288] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(tr)} {(SQ <'[:upper:] '>)} {(SQ <'[:lower:]'>)}] redirects: [ (Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[314]) (Redir op_id:Redir_Great fd:2 arg_word:{(out)} spids:[318]) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[323])] spids: [323] ) ] ) (SimpleCommand words: [ {(echo)} { (SQ <'tr: when translating with string1 longer than string2,\n'> <'the latter string must not end with a character class'> ) } ] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[333])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[345])] spids: [345] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <'#$%123abcABC'>)}) (SimpleCommand words: [{(tr)} {(SQ <'[:lower:]'>)} {(SQ <'[.*]'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[370])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[376])] spids: [376] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <'#$%123...ABC'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[385])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[397])] spids: [397] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <'#$%123abcABC'>)}) (SimpleCommand words: [{(tr)} {(SQ <'[:upper:]'>)} {(SQ <'[.*]'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[418])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[424])] spids: [424] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <'#$%123abc...'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[433])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[445])] spids: [445] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <abc.>)}) (SimpleCommand words: [{(tr)} {(SQ <'[:lower:].'>)} {(SQ <'[:upper:]x'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[473])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[479])] spids: [479] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <ABCx>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[488])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[500])] spids: [500] ) ] ) (C {(export)} {(Lit_VarLike 'LC_ALL=') (en_US.ISO-8859-1)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} { (DQ (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [{(locale)} {(charmap)}] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [526] ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [521 528] ) ) } {(Lit_Other '=')} {(ISO-8859-1)} ) terminator: <Op_Semi ';'> ) ] action: [ (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(tr)} {(SQ <'[:upper:]'>)} {(SQ <'[:lower:]'>)}] redirects: [(Redir op_id:Redir_Less fd:16777215 arg_word:{(/dev/null)} spids:[561])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[567])] spids: [567] ) ] ) (AndOr ops: [Op_DAmp] children: [ (SimpleCommand words: [{(tr)} {(SQ <'[:upper:] '>)} {(SQ <'[:lower:]'>)}] redirects: [ (Redir op_id: Redir_Less fd: 16777215 arg_word: {(/dev/null)} spids: [582] ) (Redir op_id:Redir_Great fd:2 arg_word:{(out)} spids:[586]) ] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[591])] spids: [591] ) ] ) (SimpleCommand words: [ {(echo)} { (SQ <'tr: when translating with string1 longer than string2,\n'> <'the latter string must not end with a character class'> ) } ] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[602])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[615])] spids: [615] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <abc.xyz>)}) (SimpleCommand words: [{(tr)} {(SQ <'ab[:lower:]'>)} {(SQ <'0-1[:upper:]'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[647])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[653])] spids: [653] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <ABC.XYZ>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[663])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[676])] spids: [676] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <'ABC- XYZ'>)}) (SimpleCommand words: [{(tr)} {(SQ <'[:upper:]- '>)} {(SQ <'[:lower:]_'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[704])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[710])] spids: [710] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <abc__xyz>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[720])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[733])] spids: [733] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <ABCDEFGHIJKLMNOPQRSTUVWXYZ>)}) (SimpleCommand words: [{(tr)} {(SQ <'[:upper:]A-B'>)} {(SQ <'[:lower:]0'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[765])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[770])] spids: [770] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <00cdefghijklmnopqrstuvwxyz>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[780])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[793])] spids: [793] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <a>)}) (SimpleCommand words: [{(tr)} {(-t)} {(SQ <'[:lower:]a'>)} {(SQ <'[:upper:]0'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[827])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[832])] spids: [832] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <0>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[842])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[855])] spids: [855] ) ] ) (AndOr ops: [Op_DPipe] children: [ (Pipeline children: [ (C {(echo)} {(SQ <a>)}) (SimpleCommand words: [{(tr)} {(-t)} {(SQ <'[:lower:][:lower:]a'>)} {(SQ <'[:lower:][:upper:]0'>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(out)} spids:[889])] ) ] negated: F ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[894])] spids: [894] ) ] ) (SimpleCommand words: [{(echo)} {(SQ <0>)}] redirects: [(Redir op_id:Redir_Great fd:16777215 arg_word:{(exp)} spids:[904])] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(out)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[917])] spids: [917] ) ] ) ] spids: [16777215 536] ) ] spids: [16777215 920] ) (C {(Exit)} {($ VSub_Name '$fail')}) ] )