# # DO NOT MODIFY!!!! # This file is automatically generated by Racc 1.4.14 # from Racc grammer file "". # require 'racc/parser.rb' class Ruby20Parser < RubyParser::Parser require "ruby_lexer" require "ruby_parser_extras" # :stopdoc: # Local Variables: ** # racc-token-length-max:14 ** # End: ** ##### State transition tables begin ### clist = [ '-501,579,579,269,579,579,269,-501,-501,-501,3,749,-501,-501,-501,269', '-501,240,621,219,216,217,216,217,-501,660,-501,-501,-501,624,-99,579', '660,-102,-104,540,-501,-501,539,-501,-501,-501,-501,-501,-100,-101,-107', '-515,740,237,700,109,741,239,238,220,-106,-102,-93,659,-104,207,660', '-101,660,208,659,-501,-501,-501,-501,-501,-501,-501,-501,-501,-501,-501', '-501,-501,-501,620,729,-501,-501,-501,729,-501,-501,729,268,-501,623', '268,-501,-501,659,-501,659,-501,-99,-501,268,-501,-501,-501,-501,-501', '-501,-501,220,-501,220,-501,-95,113,113,748,113,113,112,112,929,112', '112,-93,-501,-501,-501,-501,-504,-501,-516,-501,-103,-90,113,-504,-504', '-504,-501,112,-504,-504,-504,113,-504,-102,-104,-91,112,-98,-102,-104', '-504,699,-504,-504,-504,-101,-93,-97,-93,-93,-101,-95,-504,-504,-92', '-504,-504,-504,-504,-504,-93,269,-103,540,-105,455,542,-95,113,262,605', '-100,113,112,605,113,263,112,216,217,112,216,217,-504,-504,-504,-504', '-504,-504,-504,-504,-504,-504,-504,-504,-504,-504,-426,-594,-504,-504', '-504,-95,-504,-504,-95,83,-504,527,209,-504,-504,-591,-504,84,-504,-95', '-504,-107,-504,-504,-504,-504,-504,-504,-504,-417,-504,-594,-504,-595', '607,606,603,-103,607,606,608,215,-103,-592,-598,-504,-504,-504,-504', '-289,-504,268,-504,-426,783,259,-289,-289,-289,-504,-426,784,-289,-289', '-106,-289,565,213,-501,-426,-94,220,-96,408,212,-501,113,567,410,409', '-591,112,-598,210,-501,-289,-289,-426,-289,-289,-289,-289,-289,877,800', '113,-504,-598,540,-336,112,542,-591,-504,-598,567,-336,-102,-592,-594', '575,574,-504,-598,-104,-336,-289,-289,-289,-289,-289,-289,-289,-289', '-289,-289,-289,-289,-289,-289,-592,-598,-289,-289,-289,-598,643,316', '575,574,-289,605,-598,-289,568,605,-101,-594,-289,317,-289,-598,-289', '-289,-289,-289,-289,-289,-289,605,-289,718,-289,558,557,556,605,559', '-85,-598,605,817,568,585,-598,-289,-289,214,-96,-71,-289,-598,-598,-598', '-515,213,240,-598,-598,-105,-598,718,452,558,557,556,220,559,-501,-598', '357,453,607,606,613,-501,607,606,618,605,-598,-598,610,-598,-598,-598', '-598,-598,237,-98,607,606,239,238,235,236,-90,607,606,759,-107,607,606', '625,381,113,761,-99,384,841,112,-598,-598,-598,-598,-598,-598,-598,-598', '-598,-598,-598,-598,-598,-598,-504,-516,-598,-598,-598,-511,644,-504', '540,387,-598,542,-511,-598,975,607,606,390,-598,406,-598,527,-598,-598', '-598,-598,-598,-598,-598,411,-598,-598,-598,-513,-510,637,638,769,318', '319,-513,-510,113,-91,-598,-598,-598,112,-94,-513,-598,-598,-598,-598', '-100,454,-598,-598,-598,-103,-598,456,718,-97,558,557,556,457,559,-598', '-598,-598,-598,220,-106,-514,999,-93,-95,-92,-598,-598,-514,-598,-598', '-598,-598,-598,-102,-104,-101,-514,522,523,219,718,-512,558,557,556', '714,559,718,-512,558,557,556,488,559,717,271,-598,-598,-598,-598,-598', '-598,-598,-598,-598,-598,-598,-598,-598,-598,216,217,-598,-598,-598', '213,785,-598,714,498,-598,501,519,-598,-598,714,-598,717,-598,503,-598', '517,-598,-598,-598,-598,-598,-598,-598,-70,-598,-598,-598,220,718,512', '558,557,556,513,559,520,240,274,-281,-598,-598,-598,-598,-289,-598,-281', '-598,216,217,220,-289,-289,-289,-103,-281,-289,-289,-289,561,-289,558', '557,556,565,559,271,714,524,237,-289,-289,-289,239,238,567,921,575,574', '528,-289,-289,-509,-289,-289,-289,-289,-289,213,-509,529,113,240,-506', '537,531,112,563,547,718,-506,558,557,556,453,559,572,571,575,574,543', '-289,-289,-289,-289,-289,-289,-289,-289,-289,-289,-289,-289,-289,-289', '113,240,-289,-289,-289,112,786,-289,-507,544,-289,503,714,-289,-289', '-507,-289,568,-289,240,-289,585,-289,-289,-289,-289,-289,-289,-289,400', '-289,589,-289,237,-508,254,255,239,238,235,236,-508,262,845,817,-289', '-289,-289,-289,263,-289,237,-289,243,590,239,238,235,236,-105,174,185', '175,198,171,191,181,180,201,202,196,179,178,173,199,203,204,183,172', '186,190,192,184,177,216,217,612,193,200,195,194,187,197,182,170,189', '188,116,117,118,119,120,169,176,167,168,164,165,166,124,126,123,113', '125,868,869,240,112,870,107,108,616,158,159,619,154,136,137,138,145', '142,144,254,255,139,140,845,817,622,160,161,146,147,718,629,558,557', '556,237,559,243,-265,239,238,235,236,151,150,631,135,157,153,152,148', '149,143,141,133,156,134,220,635,162,91,636,213,271,647,-290,240,240', '714,588,92,718,-290,558,557,556,240,559,586,155,240,-290,220,220,163', '174,185,175,198,171,191,181,180,201,202,196,179,178,173,199,203,204', '183,172,186,190,192,184,177,714,220,-85,193,200,195,194,187,197,182', '170,189,188,116,117,118,119,120,169,176,167,168,164,165,166,124,126', '677,220,125,533,953,240,558,557,556,688,559,158,159,694,154,136,137', '138,145,142,144,254,255,139,140,695,220,702,160,161,146,147,718,705', '558,557,556,237,559,706,708,239,238,235,236,151,150,710,135,157,153', '152,148,149,143,141,133,156,134,213,712,162,91,721,-289,722,743,-290', '723,725,714,-289,92,585,-290,745,-595,732,762,763,-289,155,764,-290', '-266,770,163,174,185,175,198,171,191,181,180,201,202,196,179,178,173', '199,203,204,183,172,186,190,192,184,177,488,488,220,193,200,195,366', '365,367,364,170,189,188,116,117,118,119,120,169,176,167,168,361,362', '363,359,126,97,96,360,788,99,259,213,501,503,688,220,158,159,956,154', '136,137,138,145,142,144,271,745,139,140,213,-289,-513,160,161,146,147', '956,-289,-513,271,688,373,-595,240,240,745,-289,-513,817,151,150,220', '135,157,153,152,148,149,143,141,133,156,134,-514,213,162,-281,-290,839', '220,-514,1006,817,-281,-290,849,220,-267,876,-514,1004,879,-281,-290', '705,155,882,885,887,889,163,174,185,175,198,171,191,181,180,201,202', '196,179,178,173,199,203,204,183,172,186,190,192,184,177,220,891,892', '193,200,195,194,187,197,182,170,189,188,116,117,118,119,120,169,176', '167,168,164,165,166,124,126,397,396,125,953,398,558,557,556,688,559', '900,158,159,-265,154,136,137,138,145,142,144,904,906,139,140,-289,907', '220,160,161,146,147,-289,705,910,912,914,-595,916,916,220,-289,922,924', '926,151,150,220,135,157,153,152,148,149,143,141,133,156,134,936,937', '162,220,940,-268,950,957,958,960,961,977,979,980,984,705,989,991,993', '995,995,1002,155,1007,1008,916,916,163,174,185,175,198,171,191,181,180', '201,202,196,179,178,173,199,203,204,183,172,186,190,192,184,177,916', '1013,977,193,200,195,194,187,197,182,170,189,188,-595,-594,694,977,1036', '169,176,167,168,164,165,166,124,126,1037,1038,125,1039,995,995,995,220', '916,977,995,158,159,,154,136,137,138,145,142,144,,,139,140,,,,160,161', '146,147,,,,,,,,,,,,,,151,150,,135,157,153,152,148,149,143,141,133,156', '134,,,162,91,,,,,,,,,,92,,,,,,,,,155,,,,,163,174,185,175,198,171,191', '181,180,201,202,196,179,178,173,199,203,204,183,172,186,190,192,184', '177,,,,193,200,195,194,187,197,182,170,189,188,,,,,,169,176,167,168', '164,165,166,124,126,,,125,,,,,,,,,158,159,,154,136,137,138,145,142,144', ',,139,140,,,,160,161,146,147,,,,,,,,,,,,,,151,150,,135,157,153,152,148', '149,143,141,133,156,134,,,162,91,,,,,,,,,,92,,,,,,,,,155,,,,,163,174', '185,175,198,171,191,181,180,201,202,196,179,178,173,199,203,204,183', '172,186,190,192,184,177,,,,193,200,195,194,187,197,182,170,189,188,', ',,,,169,176,167,168,164,165,166,124,126,,,125,,,,,,,,,158,159,,154,136', '137,138,145,142,144,,,139,140,,,,160,161,146,147,,,,,,,,,,,,,,151,150', ',135,157,153,152,148,149,143,141,133,156,134,,,162,,,,,,,,,,,,8,72,73', '74,12,60,,,155,66,67,,,163,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,22,,,,,648,11,48,10,13,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,240,244,249,250,251,246,248,256,257,252,253', ',233,234,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239,238,235', '236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,258,,-242,,,65', ',,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,', ',,,,32,31,30,101,100,102,103,,,22,,,,,632,11,48,,13,105,104,106,95,59', '97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251,246,248,256', '257,252,253,,233,234,,,254,255,,43,,,294,,,61,62,,,63,,38,237,,243,47', '239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,258', ',,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34', '75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,648,11,48,,13,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251,246', '248,256,257,252,253,,233,234,,,254,255,,43,,,36,,,61,62,,,63,,38,237', ',243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84', '92,,258,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71', '33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104', '106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251', '246,248,256,257,252,253,,233,234,,,254,255,,43,,,36,,,61,62,,,63,,38', '237,,243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89', ',,,84,92,,258,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68', '69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13', '105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249', '250,251,246,248,256,257,252,253,,233,234,,,254,255,,43,,,294,,,61,62', ',,63,,38,237,,243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85', '86,87,89,,,,84,92,,258,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67', ',,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,', '11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240', '244,249,250,251,246,248,256,257,252,253,,233,234,,,254,255,,43,,,294', ',,61,62,,,63,,38,237,,243,47,239,238,235,236,247,245,241,23,242,,,,91', '83,85,86,87,89,,,,84,92,,258,,,,,65,,,81,88,90,292,72,73,74,12,60,,', ',66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22', ',,,,,11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46', '44,240,244,249,250,251,246,248,256,257,252,253,,233,234,,,254,255,,43', ',,36,,,61,62,,,63,,38,237,,243,47,239,238,235,236,247,245,241,23,242', ',,,91,83,85,86,87,89,,,,84,92,220,258,,,,,65,,,81,88,90,8,72,73,74,12', '60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103', ',,22,,,,,,11,48,10,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94', ',45,46,44,240,244,249,250,251,246,248,256,257,252,253,,233,234,,,254', '255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239,238,235,236,247,245,241', '23,242,,,,91,83,85,86,87,89,,,,84,92,,258,,,,,65,,,81,88,90,292,72,73', '74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100', '102,103,,,22,,,,,,11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,', '93,94,,45,46,44,240,244,249,250,251,246,248,256,257,252,253,,233,234', ',,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239,238,235,236,247', '245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,258,,,,,65,,,81,88,90', '292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30', '101,100,102,103,,,22,,,,,,11,48,,13,105,104,106,95,59,97,96,98,,99,107', '108,,93,94,,45,46,44,240,244,249,250,251,246,248,256,257,252,253,,233', '234,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239,238,235,236', '247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,258,,,,,65,,,81,88', '90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31', '30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,240,244,249,250,251,246,248,256,257,252,253', ',233,234,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239,238,235', '236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,258,,,,,65,,,81', '88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32', '31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106,95,59,97,96,98', ',99,107,108,,93,94,,45,46,44,240,244,249,250,251,246,248,256,257,252', '253,,233,234,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239,238', '235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,258,,,,,65', ',,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,', ',,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251,246,248,256,257', '252,253,,233,234,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239', '238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,258,,', ',,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75', '76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106,95', '59,97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251,246,248', '256,257,252,253,,233,234,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243', '47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92', ',258,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33', '34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251,246', '248,256,257,252,253,,233,234,,,254,255,,43,,,36,,,61,62,,,63,,38,237', ',243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84', '92,,258,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71', '33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104', '106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251', '246,248,256,257,252,253,,233,234,,,254,255,,43,,,36,,,61,62,,,63,,38', '237,,243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89', ',,,84,92,,258,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68', '69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13', '105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249', '250,251,246,248,256,257,252,253,,233,234,,,254,255,,43,,,36,,,61,62', ',,63,,38,237,,243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85', '86,87,89,,,,84,92,,258,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67', ',,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,', '11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240', '244,249,250,251,246,248,256,257,252,253,,-618,-618,,,254,255,,43,,,36', ',,61,62,,,63,,38,237,,243,47,239,238,235,236,247,245,241,23,242,,,,91', '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66', '67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,', ',,,11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44', '240,244,249,250,251,246,248,256,257,252,253,,-618,-618,,,254,255,,43', ',,36,,,61,62,,,63,,38,237,,243,47,239,238,235,236,247,245,241,23,242', ',,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,292,72,73,74,12,60', ',,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,', ',22,,,,,,11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45', '46,44,240,-618,-618,-618,-618,246,248,,,-618,-618,,,,,,254,255,,43,', ',36,,,61,62,,,63,,38,237,,243,47,239,238,235,236,247,245,241,23,242', ',,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,292,72,73,74,12,60', ',,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,', ',22,,,,,,11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45', '46,44,240,,,,,,,,,,,,,,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243', '47,239,238,235,236,,,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,,,,,', '65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76', ',,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106,95,59', '97,96,98,,99,107,108,,93,94,,45,46,44,240,,,,,,,,,,,,,,,,254,255,,43', ',,36,,,61,62,,,63,,38,237,,243,47,239,238,235,236,,,241,23,242,,,,91', '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66', '67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,', ',,,11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44', '240,,,,,,,,,,,,,,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239', '238,235,236,,,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81', '88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32', '31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106,95,59,97,96,98', ',99,107,108,,93,94,,45,46,44,240,,,,,,,,,,,,,,,,254,255,,43,,,36,,,61', '62,,,63,,38,237,,243,47,239,238,235,236,,,241,23,242,,,,91,83,85,86', '87,89,,,,84,92,,,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70', ',68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48', ',13,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,-618', '-618,-618,-618,246,248,,,-618,-618,,,,,,254,255,,43,,,36,,,61,62,,,63', ',38,237,,243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87', '89,,,,84,92,,,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68', '69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13', '105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,-618,-618', '-618,-618,246,248,,,-618,-618,,,,,,254,255,,43,,,36,,,61,62,,,63,,38', '237,,243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89', ',,,84,92,,,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69', '71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,-618,-618,-618', '-618,246,248,,,-618,-618,,,,,,254,255,,43,,,36,,,61,62,,,63,,38,237', ',243,47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84', '92,,,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33', '34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,-618,-618,-618,-618', '246,248,,,-618,-618,,,,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243', '47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34', '75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,-618,-618,-618,-618', '246,248,,,-618,-618,,,,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243', '47,239,238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,,81,88,90,292,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34', '75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251,246', '248,,,252,253,,,,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239', '238,235,236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65', ',,81,88,90,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,', '32,31,30,101,100,102,103,,,22,,,,,,11,48,10,13,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,240,244,249,250,251,246,248,256,', '252,253,,,,,,254,255,,43,,,36,,,61,62,,,63,,38,237,,243,47,239,238,235', '236,247,245,241,23,242,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,718,63,558,557', '556,565,559,47,,,,,,,,230,567,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65', '563,,81,88,90,72,73,74,,60,,575,574,66,67,,,,70,,68,69,71,33,34,75,76', ',,,,,32,31,30,101,100,102,103,,,232,,,,568,,,48,,,105,104,106,95,59', '97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231', ',,61,62,,,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75', '76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59', '97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231', ',,61,62,,,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75', '76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59', '97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231', ',,61,62,,,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310', '75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,307,,,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,303,,,299', ',,61,62,,,63,,298,,,,,,,,,,,,,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65', ',,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,', '305,306,312,101,100,102,103,,,232,,,,,,,307,,,105,104,106,95,59,97,96', '98,,99,107,108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,303,,,231,,,61,62,,718', '63,558,557,556,800,559,,,,,,,,,,567,,,,91,83,85,86,87,89,,,,84,92,,', ',315,,,65,563,,81,88,90,72,73,74,,60,,575,574,66,67,,,,70,,68,69,71', '309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,568,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,718,63,558,557,556,565,559,47,,,,,,,,230,567,', ',,91,83,85,86,87,89,,,,84,92,,,,,,,65,563,,81,88,90,72,73,74,,60,,575', '574,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102', '103,,,232,,,,568,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94', ',45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,718,63,558,557,556,565', '559,47,,,,,,,,230,567,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,563,,81', '88,90,72,73,74,,60,,575,574,66,67,,,,70,,68,69,71,309,310,75,76,,,,', ',305,306,312,101,100,102,103,,,232,,,,568,,,48,,,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61', '62,,718,63,558,557,556,565,559,47,,,,,,,,230,567,,,,91,83,85,86,87,89', ',,,84,92,,,,,,,65,563,,81,88,90,72,73,74,,60,,575,574,66,67,,,,70,,68', '69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,568,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,718,63,558,557,556,800,559,47,,,,,,,,23,567,,', ',91,83,85,86,87,89,,,,84,92,220,,,,,,65,563,,81,88,90,72,73,74,,60,', '575,574,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100', '102,103,,,232,,,,568,,,48,,,105,104,106,95,59,97,96,98,285,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,283,,,,47', ',,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88,90,72', '73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,285,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,718,63,558,557', '556,800,559,47,,,,,,,,230,567,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65', '563,286,81,88,90,72,73,74,,60,,575,574,66,67,,,,70,,68,69,71,33,34,75', '76,,,,,,32,31,30,101,100,102,103,,,22,,,,568,,,48,,,105,104,106,95,59', '97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,', ',61,62,,718,63,558,557,556,800,559,47,,,,,,,,23,567,,,,91,83,85,86,87', '89,,,,84,92,,,,,,,65,563,,81,88,90,72,73,74,,60,,575,574,66,67,,,,70', ',68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,568,,,48', ',,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,', ',,,,,,,,,225,,,231,,,61,62,,718,63,558,557,556,565,559,47,,,,,,,,23', '567,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,563,,81,88,90,72,73,74,,60', ',575,574,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102', '103,,,22,,,,568,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94', ',45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,718,63,558,557,556,800', '559,47,,,,,,,,23,567,,,,91,83,85,86,87,89,,,,84,92,113,,,,,112,65,563', ',81,88,90,72,73,74,,60,,575,574,66,67,,,,70,,68,69,71,309,310,75,76', ',,,,,305,306,312,101,100,102,103,,,232,,,,568,,,307,,,105,104,106,95', '59,97,96,98,,99,107,108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,351,,,36,,', '61,62,,,63,,38,,,,,,,,,,,,,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,', ',81,88,90,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32', '31,30,101,100,102,103,,,22,,,,,,11,48,10,13,105,104,106,95,59,97,96', '98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,61,62,', ',63,,38,,,,47,,,,,,,,23,,,,,91,83,85,86,87,89,,,,84,92,,,,,,400,65,', ',81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32', '31,30,101,100,102,103,,,22,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', ',,,,47,,,,,,,,23,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,22,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,', '93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,', ',,,,,23,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74', ',60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103', ',,22,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46', '44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91', '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,', ',70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,,48', ',,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,', ',,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83,85,86,87', '89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,12,60,,,,66,67,,,,70,,68,69', '71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,11,48,,13,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,43,,,36,,,61,62,,,63,,38,,,,47,,,,,,,,23,,,,,91,83,85,86,87,89,,', ',84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33', '34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,', ',231,,,61,62,,,63,,416,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84', '92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75', '76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59', '97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,', ',61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,', '65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,', ',32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98', '285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62', ',,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65', ',286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,', ',32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98', ',99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,', '63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,416,,,,47', ',,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73', '74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102', '103,,,22,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45', '46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,', ',,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66', '67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,', ',,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,', ',,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83,85', '86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68', '69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83,85,86,87,89,,', ',84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33', '34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,,48,,,105,104,106,95', '59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231', ',,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83,85,86,87,89,,,,84,92,220,,', ',,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76', ',,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59', '97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,', ',61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,', '65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,', ',,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61', '62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,', ',81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305', '306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98', ',99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,', '63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', ',,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312', '101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107', '108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,', '47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72', '73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,', ',,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74', ',60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100', '102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93', '94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,', ',,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60', ',,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102', '103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,', '45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230', ',,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66', '67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,', '232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46', '44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,', '91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67', ',,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232', ',,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,', ',,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83', '85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70', ',68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,', ',48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,', ',,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85', '86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68', '69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48', ',,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,', ',,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87', '89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71', '309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,', ',,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309', '310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104', '106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225', ',,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75', '76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95', '59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231', ',,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,', ',65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,', ',,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61', '62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,', ',81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305', '306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98', ',99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,', '63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', ',,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312', '101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107', '108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,', '47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72', '73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,', ',,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74', ',60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100', '102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93', '94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,', ',,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60', ',,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102', '103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,', '45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230', ',,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66', '67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,', '232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46', '44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,', '91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67', ',,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232', ',,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,', ',,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83', '85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70', ',68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,', ',48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,', ',,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85', '86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68', '69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48', ',,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,', ',,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87', '89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71', '309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,', ',,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33', '34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106', '95,59,97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225', ',,231,,,61,62,,,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,', ',84,92,,,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71', '33,34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106', '95,59,97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225', ',,231,,,61,62,,,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,', ',84,92,,,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71', '33,34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106', '95,59,97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225', ',,231,,,61,62,,,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,', ',84,92,220,,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69', '71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,', ',,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309', '310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104', '106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225', ',,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75', '76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95', '59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231', ',,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,', ',65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,', ',,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61', '62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,', ',81,88,90,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32', '31,30,101,100,102,103,,,22,,,,,,11,48,,13,105,104,106,95,59,97,96,98', ',99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,61,62,,,63', ',38,,,,47,,,,,,,,23,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,307,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,303,,,231,,,61,62,,,63,,,,', ',,,,,,,,,,,,,,91,83,85,86,87,89,,,,84,92,,,,515,,,65,,,81,88,90,72,73', '74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100', '102,103,,,232,,,,,,,307,,,105,104,106,95,59,97,96,98,,99,107,108,,93', '94,,,,313,,,,,,,,,,,,,,,,,,,,303,,,299,,,61,62,,,63,,,,,,,,,,,,,,,,', ',,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66', '67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,', '232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46', '44,,,,,,,,,,,,,,,,,,,,225,,,231,533,,61,62,,,63,,,,,,47,,,,,,,,230,', ',,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66', '67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,', ',,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,', ',,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83,85', '86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68', '69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83,85,86,87,89,,', ',84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309', '310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,307,,,105,104', '106,591,59,97,96,592,,99,107,108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,593', ',,231,,,61,62,,,63,,,,,,,,,,,,,,,,,,,91,83,85,86,87,89,,,,84,92,,,,', ',,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76', ',,,,,305,306,312,101,100,102,103,,,232,,,,,,,307,,,105,104,106,591,59', '97,96,592,,99,107,108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,593,,,231,,,61', '62,,,63,,,,,,,,,,,,,,,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', ',,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,285,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,283,,281', ',47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312', '101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107', '108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,', '47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72', '73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,', ',,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74', ',60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100', '102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93', '94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,', ',,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60', ',,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102', '103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,285,99,107,108,,93,94', ',45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,672,,281,,47,,', ',,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88,90,72,73', '74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100', '102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,285,99,107,108,', '93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,281,,47', ',,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88,90,72', '73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,', ',,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74', '12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102', '103,,,22,,,,,,11,48,,13,105,104,106,95,59,97,96,98,,99,107,108,,93,94', ',45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,61,62,,,63,,38,,,,47,,,,,,,,23', ',,,,91,83,85,86,87,89,,,,84,92,,,,,,400,65,,,81,88,90,72,73,74,,60,', ',,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103', ',,232,,,,,,,307,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,,,313', ',,,,,,,,,,,,,,,,,,,303,,,299,,,61,62,,,63,,,,,,,,,,,,,,,,,,,91,83,85', '86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68', '69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105', '104,106,95,59,97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,', ',,,,,,225,,,231,,,61,62,,,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86', '87,89,,,,84,92,,,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68', '69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,307', ',,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,,,313,,,,,,,,,,,,,', ',,,,,,303,,,299,,,61,62,,,63,,,,,,,,,,,,,,,,,,,91,83,85,86,87,89,,,', '84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309', '310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104', '106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225', ',,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75', '76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95', '59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231', ',,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,', ',65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,', ',,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61', '62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,', ',81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32', '31,30,101,100,102,103,,,22,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', ',,,,47,,,,,,,,23,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312', '101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,285,99,107', '108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,672', ',,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,285', '99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63', ',,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', ',,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,285,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,283,,281', ',47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,22,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,', '93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,', ',,,,,23,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74', ',60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103', ',,22,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46', '44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91', '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,', ',70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,', ',,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,', ',,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,767,,,,47,,,,,,,,230,,,,,91', '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,', ',70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,', ',,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,', ',,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83', '85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70', ',68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,', ',48,,,105,104,106,95,59,97,96,98,285,99,107,108,,93,94,,45,46,44,,,', ',,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,672,,281,,47,,,,,,,,230,,,,', '91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88,90,72,73,74,,60,,,,66', '67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,', '232,,,,,,,48,,,105,104,106,95,59,97,96,98,285,99,107,108,,93,94,,45', '46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,281,,47,,,,,,,,230', ',,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,286,81,88,90,72,73,74,,60,', ',,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,', '232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46', '44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,', '91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67', ',,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,', ',,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,', ',,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85', '86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68', '69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,', ',,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33', '34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,', ',231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76', ',,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61', '62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,', ',81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305', '306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98', ',99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,', '63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', ',,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312', '101,100,102,103,,,232,,,,,,,307,,,105,104,106,95,59,97,96,98,,99,107', '108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,303,,,299,,,61,62,,,63,,,,,,,,', ',,,,,,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60', ',,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102', '103,,,232,,,,,,,307,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94', ',,,313,,,,,,,,,,,,,,,,,,,,303,,,299,,,61,62,,,63,,,,,,,,,,,,,,,,,,,91', '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,', ',70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,', ',,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,', ',,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,416,,,,47,,,,,,,,230,,,,,91', '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,', ',70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,', ',,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,', ',,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83', '85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70', ',68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,', ',48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,', ',,,,,,,,,,,,,225,,,231,,,61,62,,,63,,283,,,,47,,,,,,,,230,,,,,91,83', '85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70', ',68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,,48,,', '105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,', ',,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83,85,86,87,89', ',,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33', '34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106', '95,59,97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225', ',,231,,,61,62,,,63,,283,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,', ',84,92,,,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71', '309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,', ',,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33', '34,75,76,,,,,,32,31,30,101,100,102,103,,,232,,,,,,,48,,,105,104,106', '95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,', ',231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92', ',,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75', '76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95', '59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231', ',,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,', ',65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,', ',,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61', '62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,', ',81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305', '306,312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98', ',99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,', '63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', ',,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90', '72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312', '101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99,107', '108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,', '47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72', '73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101', '100,102,103,,,232,,,,,,,307,,,105,104,106,95,59,97,96,98,,99,107,108', ',93,94,,,,313,,,,,,,,,,,,,,,,,,,,894,,,231,,,61,62,,,63,,,,,,,,,,,,', ',,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,', ',66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22', ',,,,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,', ',,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83', '85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70', ',68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,,,,,,48,,', '105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,', ',,,,,,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,23,,,,,91,83,85,86,87,89', ',,,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309', '310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105,104', '106,95,59,97,96,98,285,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,', ',,225,,,231,,,61,62,,,63,,,,281,,47,,,,,,,,230,,,,,91,83,85,86,87,89', ',,,84,92,,,,,,,65,,286,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71', '309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,,63,,,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,', ',,84,92,,,,,,,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309', '310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,,,,307,,,105,104', '106,95,59,97,96,98,,99,107,108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,894', ',,231,,,61,62,,,63,,,,,,,,,,,,,,,,,,,91,83,85,86,87,89,,,,84,92,,,,', ',,65,,,81,88,90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76', ',,,,,305,306,312,101,100,102,103,,,232,,,,,,,307,,,105,104,106,95,59', '97,96,98,,99,107,108,,93,94,,,,313,,,,,,,,,,,,,,,,,,,,967,,,231,,,61', '62,,,63,,,,,,,,,,,,,,,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,,99', '107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,', '672,,,,47,,,,,,,,230,,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88', '90,72,73,74,,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,232,,,,,,,48,,,105,104,106,95,59,97,96,98,285,99,107,108', ',93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,283,,281', ',47,,,,,,,,230,,,,-282,91,83,85,86,87,89,-282,-282,-282,84,92,-282,-282', '-282,,-282,,65,,286,81,88,90,,,-282,-282,-282,,,,,,,,-282,-282,,-282', '-282,-282,-282,-282,,,,,,,,,,,,,,,,,,,,,,,,-282,-282,-282,-282,-282', '-282,-282,-282,-282,-282,-282,-282,-282,-282,,,-282,-282,-282,,,-282', ',,-282,,,-282,-282,,-282,,-282,,-282,,-282,-282,-282,-282,-282,-282', '-282,,-282,,-282,,,,,,,,,,,,,-282,-282,-282,-282,-599,-282,,-282,,,', '-599,-599,-599,,,-599,-599,-599,561,-599,558,557,556,565,559,,,,-599', '-599,-599,-599,,,567,,,,,-599,-599,,-599,-599,-599,-599,-599,,,,,,,', ',,563,,,,,,,,,572,571,575,574,,-599,-599,-599,-599,-599,-599,-599,-599', '-599,-599,-599,-599,-599,-599,,,-599,-599,-599,,,-599,,,-599,,,-599', '-599,,-599,568,-599,,-599,,-599,-599,-599,-599,-599,-599,-599,,-599', '-599,-599,,,,,,,,,,,,,-599,-599,-599,-599,-600,-599,,-599,,,,-600,-600', '-600,,,-600,-600,-600,561,-600,558,557,556,565,559,,,,-600,-600,-600', '-600,,,567,,,,,-600,-600,,-600,-600,-600,-600,-600,,,,,,,,,,563,753', ',,,,,,,572,571,575,574,,-600,-600,-600,-600,-600,-600,-600,-600,-600', '-600,-600,-600,-600,-600,,,-600,-600,-600,,,-600,,,-600,,,-600,-600', ',-600,568,-600,,-600,,-600,-600,-600,-600,-600,-600,-600,,-600,-600', '-600,,,,,,,,,,,,,-600,-600,-600,-600,-425,-600,,-600,,,,-425,-425,-425', ',,-425,-425,-425,561,-425,558,557,556,565,559,,,,-425,-425,-425,,,,567', ',,,,-425,-425,,-425,-425,-425,-425,-425,,,,,,,,,,563,,,,,,,,,572,571', '575,574,,-425,-425,-425,-425,-425,-425,-425,-425,-425,-425,-425,-425', '-425,-425,,,-425,-425,-425,,,-425,,271,-425,,,-425,-425,,-425,568,-425', ',-425,,-425,-425,-425,-425,-425,-425,-425,,-425,-425,-425,,,,,,,,,,', ',-296,-425,-425,,-425,,-425,-296,-296,-296,,,-296,-296,-296,561,-296', '558,557,556,565,559,,,,,-296,-296,,,,567,,,,,-296,-296,,-296,-296,-296', '-296,-296,,,,,,,,,,563,,,,,,,,,572,571,575,574,,-296,-296,-296,-296', '-296,-296,-296,-296,-296,-296,-296,-296,-296,-296,,,-296,-296,-296,', ',-296,,274,-296,,,-296,-296,,-296,568,-296,,-296,,-296,-296,-296,-296', '-296,-296,-296,,-296,,-296,,,,,,,,,,,,-617,-296,-296,,-296,,-296,-617', '-617,-617,,,-617,-617,-617,561,-617,558,557,556,565,559,,,,-617,-617', '-617,,,,567,,,,,-617,-617,,-617,-617,-617,-617,-617,,,,,,,,,,563,,,', ',,,,,572,571,575,574,,-617,-617,-617,-617,-617,-617,-617,-617,-617,-617', '-617,-617,-617,-617,,,-617,-617,-617,,,-617,,271,-617,,,-617,-617,,-617', '568,-617,,-617,,-617,-617,-617,-617,-617,-617,-617,,-617,-617,-617,', ',,,,,,,,,,-617,-617,-617,,-617,,-617,-617,-617,-617,,,-617,-617,-617', ',-617,799,,558,557,556,800,559,,-617,-617,,,,,,,567,,,-617,-617,,-617', '-617,-617,-617,-617,,,799,,558,557,556,800,559,,,563,,,,,,,567,,572', '571,575,574,,,,,,,,,,,-617,,,,,,563,-617,,,,,271,-617,220,572,571,575', '574,,,,568,,425,429,,,426,,,,,,-617,-617,,158,159,,154,136,137,138,145', '142,144,,-617,139,140,568,,-617,160,161,146,147,,,,,,271,,,,,,,,151', '150,,135,157,153,152,148,149,143,141,133,156,134,,,162,,,,,,,,,,432', '436,,,431,,,,,,155,,,158,159,163,154,136,137,138,145,142,144,,,139,140', ',,,160,161,146,147,,,,,,271,,,,,,,,151,150,,135,157,153,152,148,149', '143,141,133,156,134,,799,162,558,557,556,800,559,,,,,486,429,,,487,567', ',,,,155,,,158,159,163,154,136,137,138,145,142,144,,,139,140,563,,,160', '161,146,147,,,572,571,575,574,,,,,,,,151,150,,135,157,153,152,148,149', '143,141,133,156,134,,,162,,,,,,,,,568,650,429,,,651,,,,,,155,,,158,159', '163,154,136,137,138,145,142,144,,,139,140,,,,160,161,146,147,,,,,,271', ',,,,,,,151,150,,135,157,153,152,148,149,143,141,133,156,134,,,162,,', ',,,,,,,652,436,,,653,,,,,,155,,,158,159,163,154,136,137,138,145,142', '144,,,139,140,,,,160,161,146,147,,,,,,271,,,,,,,,151,150,,135,157,153', '152,148,149,143,141,133,156,134,,,162,,,,,,,,,,681,429,,,682,,,,,,155', ',,158,159,163,154,136,137,138,145,142,144,,,139,140,,,,160,161,146,147', ',,,,,271,,,,,,,,151,150,,135,157,153,152,148,149,143,141,133,156,134', ',,162,,,,,,,,,,684,436,,,685,,,,,,155,,,158,159,163,154,136,137,138', '145,142,144,,,139,140,,,,160,161,146,147,,,,,,271,,,,,,,,151,150,,135', '157,153,152,148,149,143,141,133,156,134,,,162,,,,,,,,,,650,429,,,651', ',,,,,155,,,158,159,163,154,136,137,138,145,142,144,,,139,140,,,,160', '161,146,147,,,,,,271,,,,,,,,151,150,,135,157,153,152,148,149,143,141', '133,156,134,,,162,,,,,,,,,,652,436,,,653,,,,,,155,,,158,159,163,154', '136,137,138,145,142,144,,,139,140,,,,160,161,146,147,,,,,,271,,,,,,', ',151,150,,135,157,153,152,148,149,143,141,133,156,134,,,162,,,,,,,,', ',735,429,,,736,,,,,,155,,,158,159,163,154,136,137,138,145,142,144,,', '139,140,,,,160,161,146,147,,,,,,271,,,,,,,,151,150,,135,157,153,152', '148,149,143,141,133,156,134,,,162,,,,,,,,,,737,436,,,738,,,,,,155,,', '158,159,163,154,136,137,138,145,142,144,,,139,140,,,,160,161,146,147', ',,,,,271,,,,,,,,151,150,,135,157,153,152,148,149,143,141,133,156,134', ',,162,,,,,,,,,,853,436,,,854,,,,,,155,,,158,159,163,154,136,137,138', '145,142,144,,,139,140,,,,160,161,146,147,,,,,,271,,,,,,,,151,150,,135', '157,153,152,148,149,143,141,133,156,134,,,162,,,,,,,,,,486,429,,,487', ',,,,,155,,,158,159,163,154,136,137,138,145,142,144,,,139,140,,,,160', '161,146,147,,,,,,271,,,,,,,,151,150,,135,157,153,152,148,149,143,141', '133,156,134,,,162,,,,,,,,,,1001,436,,,1000,,,,,,155,,,158,159,163,154', '136,137,138,145,142,144,,,139,140,,,,160,161,146,147,,,,,,271,,,,,,', ',151,150,,135,157,153,152,148,149,143,141,133,156,134,,,162,,,,,,,,', ',1029,429,,,1030,,,,,,155,,,158,159,163,154,136,137,138,145,142,144', ',,139,140,,,,160,161,146,147,,,,,,271,,,,,,,,151,150,,135,157,153,152', '148,149,143,141,133,156,134,,,162,,,,,,,,,,1031,436,,,1032,,,,,,155', ',,158,159,163,154,136,137,138,145,142,144,,,139,140,,,,160,161,146,147', ',,,,,271,,,,,,,,151,150,,135,157,153,152,148,149,143,141,133,156,134', ',561,162,558,557,556,565,559,561,,558,557,556,565,559,,,567,,,,,155', ',567,,799,163,558,557,556,800,559,,,,,,,563,,,567,,,,563,753,572,571', '575,574,,,,572,571,575,574,,,,,,563,,,,,,,,,572,571,575,574,,,,,,,,568', ',,,,,,568,,,,,,,,,,,,,,,,,,568' ] racc_action_table = arr = ::Array.new(25632, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end clist = [ '95,341,342,64,903,850,308,95,95,95,1,597,95,95,95,663,95,460,388,22', '449,449,692,692,95,484,95,95,95,391,348,925,492,1029,1030,330,95,95', '330,95,95,95,95,95,349,1044,352,223,593,460,546,3,593,460,460,22,589', '735,681,484,736,13,493,851,664,15,492,95,95,95,95,95,95,95,95,95,95', '95,95,95,95,388,581,95,95,95,582,95,95,852,64,95,391,308,95,95,493,95', '664,95,223,95,663,95,95,95,95,95,95,95,449,95,692,95,682,341,342,597', '903,850,341,342,850,903,850,681,95,95,95,95,98,95,224,95,1031,348,597', '98,98,98,95,597,98,98,98,925,98,1029,1030,349,925,352,1029,1030,98,546', '98,98,98,1044,681,589,735,681,1044,736,98,98,851,98,98,98,98,98,681', '29,737,331,738,226,331,682,581,27,375,224,582,581,377,852,27,582,756', '756,852,20,20,98,98,98,98,98,98,98,98,98,98,98,98,98,98,812,1031,98', '98,98,682,98,98,682,80,98,454,16,98,98,591,98,80,98,682,98,226,98,98', '98,98,98,98,98,29,98,737,98,738,375,375,375,1031,377,377,377,19,1031', '592,684,98,98,98,98,431,98,29,98,812,650,25,431,431,431,98,812,651,431', '431,454,431,702,17,591,812,737,756,738,123,17,591,5,702,123,123,591', '5,853,17,591,431,431,812,431,431,431,431,431,787,879,289,592,684,335', '49,289,335,591,592,684,879,49,650,592,684,702,702,592,684,651,49,431', '431,431,431,431,431,431,431,431,431,431,431,431,431,592,684,431,431', '431,853,431,40,879,879,431,382,853,431,702,385,787,853,431,43,431,853', '431,431,431,431,431,431,431,614,431,717,431,717,717,717,617,717,676', '853,393,982,879,982,432,431,431,18,431,676,431,432,432,432,41,222,479', '432,432,431,432,921,222,921,921,921,48,921,359,432,72,222,382,382,382', '359,385,385,385,379,432,432,379,432,432,432,432,432,479,18,614,614,479', '479,479,479,41,617,617,614,18,393,393,393,87,345,617,41,88,717,345,432', '432,432,432,432,432,432,432,432,432,432,432,432,432,360,42,432,432,432', '361,432,360,697,89,432,697,361,432,921,379,379,90,432,121,432,317,432', '432,432,432,432,432,432,205,432,432,432,300,362,425,426,633,44,44,300', '362,749,42,652,432,432,749,432,300,432,652,652,652,42,225,652,652,652', '432,652,227,563,317,563,563,563,228,563,652,652,652,652,951,317,301', '951,425,426,633,652,652,301,652,652,652,652,652,425,426,633,301,313', '313,232,714,363,714,714,714,563,714,841,363,841,841,841,264,841,563', '267,652,652,652,652,652,652,652,652,652,652,652,652,652,652,326,326', '652,652,652,302,652,652,714,278,652,279,302,652,652,841,652,714,652', '282,652,302,652,652,652,652,652,652,652,293,652,652,652,295,839,296', '839,839,839,297,839,303,461,306,304,652,652,652,652,653,652,304,652', '340,340,307,653,653,653,652,304,653,653,653,339,653,339,339,339,339', '339,312,839,314,461,653,653,653,461,461,339,839,705,705,318,653,653', '364,653,653,653,653,653,320,364,319,754,322,365,328,320,754,339,339', '922,365,922,922,922,320,922,339,339,339,339,332,653,653,653,653,653', '653,653,653,653,653,653,653,653,653,860,480,653,653,653,860,653,653', '366,333,653,336,922,653,653,366,653,339,653,466,653,346,653,653,653', '653,653,653,653,347,653,351,653,480,367,466,466,480,480,480,480,367', '369,724,724,653,653,653,653,369,653,466,653,466,353,466,466,466,466', '653,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11', '11,11,750,750,381,11,11,11,11,11,11,11,11,11,11,9,9,9,9,9,11,11,11,11', '11,11,11,11,11,11,934,11,757,757,467,934,757,757,757,384,11,11,387,11', '11,11,11,11,11,11,467,467,11,11,1015,1015,390,11,11,11,11,975,412,975', '975,975,467,975,467,414,467,467,467,467,11,11,417,11,11,11,11,11,11', '11,11,11,11,11,420,423,11,11,424,350,433,441,520,462,463,975,350,11', '977,520,977,977,977,464,977,350,11,465,520,494,495,11,12,12,12,12,12', '12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,977,510,511', '12,12,12,12,12,12,12,12,12,12,291,291,291,291,291,12,12,12,12,12,12', '12,12,12,514,516,12,521,891,468,891,891,891,525,891,12,12,534,12,12', '12,12,12,12,12,468,468,12,12,535,536,549,12,12,12,12,1013,550,1013,1013', '1013,468,1013,552,553,468,468,468,468,12,12,554,12,12,12,12,12,12,12', '12,12,12,12,595,561,12,12,569,685,573,595,741,576,578,1013,685,12,583', '741,595,685,584,621,624,685,12,626,741,630,634,12,74,74,74,74,74,74', '74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,639,645,654,74', '74,74,74,74,74,74,74,74,74,509,509,509,509,509,74,74,74,74,74,74,74', '74,74,74,74,74,656,74,662,893,669,671,678,680,74,74,893,74,74,74,74', '74,74,74,683,893,74,74,955,854,964,74,74,74,74,955,854,964,686,687,74', '854,690,691,955,854,964,693,74,74,701,74,74,74,74,74,74,74,74,74,74', '74,965,966,74,968,1007,716,719,965,966,726,968,1007,731,734,766,771', '965,966,789,968,1007,790,74,792,793,794,796,74,91,91,91,91,91,91,91', '91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,797,798,799,91,91', '91,91,91,91,91,91,91,91,675,675,675,675,675,91,91,91,91,91,91,91,91', '91,91,91,91,999,91,999,999,999,811,999,815,91,91,818,91,91,91,91,91', '91,91,819,823,91,91,1032,824,825,91,91,91,91,1032,826,830,831,833,1032', '834,836,838,1032,840,843,846,91,91,856,91,91,91,91,91,91,91,91,91,91', '91,861,862,91,863,872,873,890,894,895,897,898,923,927,928,933,941,944', '945,946,947,949,959,91,967,970,971,972,91,407,407,407,407,407,407,407', '407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407', '973,974,976,407,407,407,407,407,407,407,407,407,407,1000,1001,1003,1014', '1019,407,407,407,407,407,407,407,407,407,1020,1021,407,1022,1023,1024', '1025,1028,1033,1034,1046,407,407,,407,407,407,407,407,407,407,,,407', '407,,,,407,407,407,407,,,,,,,,,,,,,,407,407,,407,407,407,407,407,407', '407,407,407,407,407,,,407,407,,,,,,,,,,407,,,,,,,,,407,,,,,407,628,628', '628,628,628,628,628,628,628,628,628,628,628,628,628,628,628,628,628', '628,628,628,628,628,,,,628,628,628,628,628,628,628,628,628,628,,,,,', '628,628,628,628,628,628,628,628,628,,,628,,,,,,,,,628,628,,628,628,628', '628,628,628,628,,,628,628,,,,628,628,628,628,,,,,,,,,,,,,,628,628,,628', '628,628,628,628,628,628,628,628,628,628,,,628,628,,,,,,,,,,628,,,,,', ',,,628,,,,,628,755,755,755,755,755,755,755,755,755,755,755,755,755,755', '755,755,755,755,755,755,755,755,755,755,,,,755,755,755,755,755,755,755', '755,755,755,,,,,,755,755,755,755,755,755,755,755,755,,,755,,,,,,,,,755', '755,,755,755,755,755,755,755,755,,,755,755,,,,755,755,755,755,,,,,,', ',,,,,,,755,755,,755,755,755,755,755,755,755,755,755,755,755,,,755,,', ',,,,,,,,,2,2,2,2,2,2,,,755,2,2,,,755,2,,2,2,2,2,2,2,2,,,,,,2,2,2,2,2', '2,2,,,2,,,,,444,2,2,2,2,2,2,2,2,2,2,2,2,,2,2,2,,2,2,,2,2,2,444,444,444', '444,444,444,444,444,444,444,444,,444,444,,,444,444,,2,,,2,,,2,2,,,2', ',2,444,,444,2,444,444,444,444,444,444,444,2,444,,,,2,2,2,2,2,2,,,,2', '2,,444,,444,,,2,,,2,2,2,36,36,36,36,36,36,,,,36,36,,,,36,,36,36,36,36', '36,36,36,,,,,,36,36,36,36,36,36,36,,,36,,,,,419,36,36,,36,36,36,36,36', '36,36,36,36,,36,36,36,,36,36,,36,36,36,419,419,419,419,419,419,419,419', '419,419,419,,419,419,,,419,419,,36,,,36,,,36,36,,,36,,36,419,,419,36', '419,419,419,419,419,419,419,36,419,,,,36,36,36,36,36,36,,,,36,36,,419', ',,,,36,,,36,36,36,207,207,207,207,207,207,,,,207,207,,,,207,,207,207', '207,207,207,207,207,,,,,,207,207,207,207,207,207,207,,,207,,,,,655,207', '207,,207,207,207,207,207,207,207,207,207,,207,207,207,,207,207,,207', '207,207,655,655,655,655,655,655,655,655,655,655,655,,655,655,,,655,655', ',207,,,207,,,207,207,,,207,,207,655,,655,207,655,655,655,655,655,655', '655,207,655,,,,207,207,207,207,207,207,,,,207,207,,655,,,,,207,,,207', '207,207,231,231,231,231,231,231,,,,231,231,,,,231,,231,231,231,231,231', '231,231,,,,,,231,231,231,231,231,231,231,,,231,,,,,,231,231,,231,231', '231,231,231,231,231,231,231,,231,231,231,,231,231,,231,231,231,24,24', '24,24,24,24,24,24,24,24,24,,24,24,,,24,24,,231,,,231,,,231,231,,,231', ',231,24,,24,231,24,24,24,24,24,24,24,231,24,,,,231,231,231,231,231,231', ',,,231,231,,24,,,,,231,,,231,231,231,294,294,294,294,294,294,,,,294', '294,,,,294,,294,294,294,294,294,294,294,,,,,,294,294,294,294,294,294', '294,,,294,,,,,,294,294,,294,294,294,294,294,294,294,294,294,,294,294', '294,,294,294,,294,294,294,276,276,276,276,276,276,276,276,276,276,276', ',276,276,,,276,276,,294,,,294,,,294,294,,,294,,294,276,,276,294,276', '276,276,276,276,276,276,294,276,,,,294,294,294,294,294,294,,,,294,294', ',276,,,,,294,,,294,294,294,299,299,299,299,299,299,,,,299,299,,,,299', ',299,299,299,299,299,299,299,,,,,,299,299,299,299,299,299,299,,,299', ',,,,,299,299,,299,299,299,299,299,299,299,299,299,,299,299,299,,299', '299,,299,299,299,439,439,439,439,439,439,439,439,439,439,439,,439,439', ',,439,439,,299,,,299,,,299,299,,,299,,299,439,,439,299,439,439,439,439', '439,439,439,299,439,,,,299,299,299,299,299,299,,,,299,299,,439,,,,,299', ',,299,299,299,325,325,325,325,325,325,,,,325,325,,,,325,,325,325,325', '325,325,325,325,,,,,,325,325,325,325,325,325,325,,,325,,,,,,325,325', ',325,325,325,325,325,325,325,325,325,,325,325,325,,325,325,,325,325', '325,483,483,483,483,483,483,483,483,483,483,483,,483,483,,,483,483,', '325,,,325,,,325,325,,,325,,325,483,,483,325,483,483,483,483,483,483', '483,325,483,,,,325,325,325,325,325,325,,,,325,325,483,483,,,,,325,,', '325,325,325,406,406,406,406,406,406,,,,406,406,,,,406,,406,406,406,406', '406,406,406,,,,,,406,406,406,406,406,406,406,,,406,,,,,,406,406,406', '406,406,406,406,406,406,406,406,406,,406,406,406,,406,406,,406,406,406', '532,532,532,532,532,532,532,532,532,532,532,,532,532,,,532,532,,406', ',,406,,,406,406,,,406,,406,532,,532,406,532,532,532,532,532,532,532', '406,532,,,,406,406,406,406,406,406,,,,406,406,,532,,,,,406,,,406,406', '406,577,577,577,577,577,577,,,,577,577,,,,577,,577,577,577,577,577,577', '577,,,,,,577,577,577,577,577,577,577,,,577,,,,,,577,577,,577,577,577', '577,577,577,577,577,577,,577,577,577,,577,577,,577,577,577,689,689,689', '689,689,689,689,689,689,689,689,,689,689,,,689,689,,577,,,577,,,577', '577,,,577,,577,689,,689,577,689,689,689,689,689,689,689,577,689,,,,577', '577,577,577,577,577,,,,577,577,,689,,,,,577,,,577,577,577,580,580,580', '580,580,580,,,,580,580,,,,580,,580,580,580,580,580,580,580,,,,,,580', '580,580,580,580,580,580,,,580,,,,,,580,580,,580,580,580,580,580,580', '580,580,580,,580,580,580,,580,580,,580,580,580,768,768,768,768,768,768', '768,768,768,768,768,,768,768,,,768,768,,580,,,580,,,580,580,,,580,,580', '768,,768,580,768,768,768,768,768,768,768,580,768,,,,580,580,580,580', '580,580,,,,580,580,,768,,,,,580,,,580,580,580,699,699,699,699,699,699', ',,,699,699,,,,699,,699,699,699,699,699,699,699,,,,,,699,699,699,699', '699,699,699,,,699,,,,,,699,699,,699,699,699,699,699,699,699,699,699', ',699,699,699,,699,699,,699,699,699,773,773,773,773,773,773,773,773,773', '773,773,,773,773,,,773,773,,699,,,699,,,699,699,,,699,,699,773,,773', '699,773,773,773,773,773,773,773,699,773,,,,699,699,699,699,699,699,', ',,699,699,,773,,,,,699,,,699,699,699,700,700,700,700,700,700,,,,700', '700,,,,700,,700,700,700,700,700,700,700,,,,,,700,700,700,700,700,700', '700,,,700,,,,,,700,700,,700,700,700,700,700,700,700,700,700,,700,700', '700,,700,700,,700,700,700,775,775,775,775,775,775,775,775,775,775,775', ',775,775,,,775,775,,700,,,700,,,700,700,,,700,,700,775,,775,700,775', '775,775,775,775,775,775,700,775,,,,700,700,700,700,700,700,,,,700,700', ',775,,,,,700,,,700,700,700,751,751,751,751,751,751,,,,751,751,,,,751', ',751,751,751,751,751,751,751,,,,,,751,751,751,751,751,751,751,,,751', ',,,,,751,751,,751,751,751,751,751,751,751,751,751,,751,751,751,,751', '751,,751,751,751,778,778,778,778,778,778,778,778,778,778,778,,778,778', ',,778,778,,751,,,751,,,751,751,,,751,,751,778,,778,751,778,778,778,778', '778,778,778,751,778,,,,751,751,751,751,751,751,,,,751,751,,778,,,,,751', ',,751,751,751,752,752,752,752,752,752,,,,752,752,,,,752,,752,752,752', '752,752,752,752,,,,,,752,752,752,752,752,752,752,,,752,,,,,,752,752', ',752,752,752,752,752,752,752,752,752,,752,752,752,,752,752,,752,752', '752,780,780,780,780,780,780,780,780,780,780,780,,780,780,,,780,780,', '752,,,752,,,752,752,,,752,,752,780,,780,752,780,780,780,780,780,780', '780,752,780,,,,752,752,752,752,752,752,,,,752,752,,780,,,,,752,,,752', '752,752,758,758,758,758,758,758,,,,758,758,,,,758,,758,758,758,758,758', '758,758,,,,,,758,758,758,758,758,758,758,,,758,,,,,,758,758,,758,758', '758,758,758,758,758,758,758,,758,758,758,,758,758,,758,758,758,782,782', '782,782,782,782,782,782,782,782,782,,782,782,,,782,782,,758,,,758,,', '758,758,,,758,,758,782,,782,758,782,782,782,782,782,782,782,758,782', ',,,758,758,758,758,758,758,,,,758,758,,782,,,,,758,,,758,758,758,803', '803,803,803,803,803,,,,803,803,,,,803,,803,803,803,803,803,803,803,', ',,,,803,803,803,803,803,803,803,,,803,,,,,,803,803,,803,803,803,803', '803,803,803,803,803,,803,803,803,,803,803,,803,803,803,875,875,875,875', '875,875,875,875,875,875,875,,875,875,,,875,875,,803,,,803,,,803,803', ',,803,,803,875,,875,803,875,875,875,875,875,875,875,803,875,,,,803,803', '803,803,803,803,,,,803,803,,875,,,,,803,,,803,803,803,807,807,807,807', '807,807,,,,807,807,,,,807,,807,807,807,807,807,807,807,,,,,,807,807', '807,807,807,807,807,,,807,,,,,,807,807,,807,807,807,807,807,807,807', '807,807,,807,807,807,,807,807,,807,807,807,878,878,878,878,878,878,878', '878,878,878,878,,878,878,,,878,878,,807,,,807,,,807,807,,,807,,807,878', ',878,807,878,878,878,878,878,878,878,807,878,,,,807,807,807,807,807', '807,,,,807,807,,878,,,,,807,,,807,807,807,808,808,808,808,808,808,,', ',808,808,,,,808,,808,808,808,808,808,808,808,,,,,,808,808,808,808,808', '808,808,,,808,,,,,,808,808,,808,808,808,808,808,808,808,808,808,,808', '808,808,,808,808,,808,808,808,458,458,458,458,458,458,458,458,458,458', '458,,458,458,,,458,458,,808,,,808,,,808,808,,,808,,808,458,,458,808', '458,458,458,458,458,458,458,808,458,,,,808,808,808,808,808,808,,,,808', '808,,,,,,,808,,,808,808,808,817,817,817,817,817,817,,,,817,817,,,,817', ',817,817,817,817,817,817,817,,,,,,817,817,817,817,817,817,817,,,817', ',,,,,817,817,,817,817,817,817,817,817,817,817,817,,817,817,817,,817', '817,,817,817,817,459,459,459,459,459,459,459,459,459,459,459,,459,459', ',,459,459,,817,,,817,,,817,817,,,817,,817,459,,459,817,459,459,459,459', '459,459,459,817,459,,,,817,817,817,817,817,817,,,,817,817,,,,,,,817', ',,817,817,817,847,847,847,847,847,847,,,,847,847,,,,847,,847,847,847', '847,847,847,847,,,,,,847,847,847,847,847,847,847,,,847,,,,,,847,847', ',847,847,847,847,847,847,847,847,847,,847,847,847,,847,847,,847,847', '847,469,469,469,469,469,469,469,,,469,469,,,,,,469,469,,847,,,847,,', '847,847,,,847,,847,469,,469,847,469,469,469,469,469,469,469,847,469', ',,,847,847,847,847,847,847,,,,847,847,,,,,,,847,,,847,847,847,848,848', '848,848,848,848,,,,848,848,,,,848,,848,848,848,848,848,848,848,,,,,', '848,848,848,848,848,848,848,,,848,,,,,,848,848,,848,848,848,848,848', '848,848,848,848,,848,848,848,,848,848,,848,848,848,470,,,,,,,,,,,,,', ',,470,470,,848,,,848,,,848,848,,,848,,848,470,,470,848,470,470,470,470', ',,470,848,470,,,,848,848,848,848,848,848,,,,848,848,,,,,,,848,,,848', '848,848,857,857,857,857,857,857,,,,857,857,,,,857,,857,857,857,857,857', '857,857,,,,,,857,857,857,857,857,857,857,,,857,,,,,,857,857,,857,857', '857,857,857,857,857,857,857,,857,857,857,,857,857,,857,857,857,471,', ',,,,,,,,,,,,,,471,471,,857,,,857,,,857,857,,,857,,857,471,,471,857,471', '471,471,471,,,471,857,471,,,,857,857,857,857,857,857,,,,857,857,,,,', ',,857,,,857,857,857,896,896,896,896,896,896,,,,896,896,,,,896,,896,896', '896,896,896,896,896,,,,,,896,896,896,896,896,896,896,,,896,,,,,,896', '896,,896,896,896,896,896,896,896,896,896,,896,896,896,,896,896,,896', '896,896,472,,,,,,,,,,,,,,,,472,472,,896,,,896,,,896,896,,,896,,896,472', ',472,896,472,472,472,472,,,472,896,472,,,,896,896,896,896,896,896,,', ',896,896,,,,,,,896,,,896,896,896,900,900,900,900,900,900,,,,900,900', ',,,900,,900,900,900,900,900,900,900,,,,,,900,900,900,900,900,900,900', ',,900,,,,,,900,900,,900,900,900,900,900,900,900,900,900,,900,900,900', ',900,900,,900,900,900,473,,,,,,,,,,,,,,,,473,473,,900,,,900,,,900,900', ',,900,,900,473,,473,900,473,473,473,473,,,473,900,473,,,,900,900,900', '900,900,900,,,,900,900,,,,,,,900,,,900,900,900,930,930,930,930,930,930', ',,,930,930,,,,930,,930,930,930,930,930,930,930,,,,,,930,930,930,930', '930,930,930,,,930,,,,,,930,930,,930,930,930,930,930,930,930,930,930', ',930,930,930,,930,930,,930,930,930,474,474,474,474,474,474,474,,,474', '474,,,,,,474,474,,930,,,930,,,930,930,,,930,,930,474,,474,930,474,474', '474,474,474,474,474,930,474,,,,930,930,930,930,930,930,,,,930,930,,', ',,,,930,,,930,930,930,963,963,963,963,963,963,,,,963,963,,,,963,,963', '963,963,963,963,963,963,,,,,,963,963,963,963,963,963,963,,,963,,,,,', '963,963,,963,963,963,963,963,963,963,963,963,,963,963,963,,963,963,', '963,963,963,475,475,475,475,475,475,475,,,475,475,,,,,,475,475,,963', ',,963,,,963,963,,,963,,963,475,,475,963,475,475,475,475,475,475,475', '963,475,,,,963,963,963,963,963,963,,,,963,963,,,,,,,963,,,963,963,963', '978,978,978,978,978,978,,,,978,978,,,,978,,978,978,978,978,978,978,978', ',,,,,978,978,978,978,978,978,978,,,978,,,,,,978,978,,978,978,978,978', '978,978,978,978,978,,978,978,978,,978,978,,978,978,978,476,476,476,476', '476,476,476,,,476,476,,,,,,476,476,,978,,,978,,,978,978,,,978,,978,476', ',476,978,476,476,476,476,476,476,476,978,476,,,,978,978,978,978,978', '978,,,,978,978,,,,,,,978,,,978,978,978,983,983,983,983,983,983,,,,983', '983,,,,983,,983,983,983,983,983,983,983,,,,,,983,983,983,983,983,983', '983,,,983,,,,,,983,983,,983,983,983,983,983,983,983,983,983,,983,983', '983,,983,983,,983,983,983,477,477,477,477,477,477,477,,,477,477,,,,', ',477,477,,983,,,983,,,983,983,,,983,,983,477,,477,983,477,477,477,477', '477,477,477,983,477,,,,983,983,983,983,983,983,,,,983,983,,,,,,,983', ',,983,983,983,986,986,986,986,986,986,,,,986,986,,,,986,,986,986,986', '986,986,986,986,,,,,,986,986,986,986,986,986,986,,,986,,,,,,986,986', ',986,986,986,986,986,986,986,986,986,,986,986,986,,986,986,,986,986', '986,478,478,478,478,478,478,478,,,478,478,,,,,,478,478,,986,,,986,,', '986,986,,,986,,986,478,,478,986,478,478,478,478,478,478,478,986,478', ',,,986,986,986,986,986,986,,,,986,986,,,,,,,986,,,986,986,986,987,987', '987,987,987,987,,,,987,987,,,,987,,987,987,987,987,987,987,987,,,,,', '987,987,987,987,987,987,987,,,987,,,,,,987,987,,987,987,987,987,987', '987,987,987,987,,987,987,987,,987,987,,987,987,987,481,481,481,481,481', '481,481,,,481,481,,,,,,481,481,,987,,,987,,,987,987,,,987,,987,481,', '481,987,481,481,481,481,481,481,481,987,481,,,,987,987,987,987,987,987', ',,,987,987,,,,,,,987,,,987,987,987,8,8,8,8,8,,,,8,8,,,,8,,8,8,8,8,8', '8,8,,,,,,8,8,8,8,8,8,8,,,8,,,,,,8,8,8,8,8,8,8,8,8,8,8,8,,8,8,8,,8,8', ',8,8,8,482,482,482,482,482,482,482,482,,482,482,,,,,,482,482,,8,,,8', ',,8,8,,,8,,8,482,,482,8,482,482,482,482,482,482,482,8,482,,,,8,8,8,8', '8,8,,,,8,8,,,,,,,8,,,8,8,8,23,23,23,,23,,,,23,23,,,,23,,23,23,23,23', '23,23,23,,,,,,23,23,23,23,23,23,23,,,23,,,,,,,23,,,23,23,23,23,23,23', '23,23,,23,23,23,,23,23,,23,23,23,,,,,,,,,,,,,,,,,,,,23,,,23,,,23,23', ',710,23,710,710,710,710,710,23,,,,,,,,23,710,,,,23,23,23,23,23,23,,', ',23,23,,,,,,,23,710,,23,23,23,32,32,32,,32,,710,710,32,32,,,,32,,32', '32,32,32,32,32,32,,,,,,32,32,32,32,32,32,32,,,32,,,,710,,,32,,,32,32', '32,32,32,32,32,32,32,32,32,32,,32,32,,32,32,32,,,,,,,,,,,,,,,,,,,,32', ',,32,,,32,32,,,32,,32,,32,,32,,,,,,,,32,,,,,32,32,32,32,32,32,,,,32', '32,,,,,,,32,,32,32,32,32,33,33,33,,33,,,,33,33,,,,33,,33,33,33,33,33', '33,33,,,,,,33,33,33,33,33,33,33,,,33,,,,,,,33,,,33,33,33,33,33,33,33', '33,33,33,33,33,,33,33,,33,33,33,,,,,,,,,,,,,,,,,,,,33,,,33,,,33,33,', ',33,,33,,33,,33,,,,,,,,33,,,,,33,33,33,33,33,33,,,,33,33,,,,,,,33,,33', '33,33,33,34,34,34,,34,,,,34,34,,,,34,,34,34,34,34,34,34,34,,,,,,34,34', '34,34,34,34,34,,,34,,,,,,,34,,,34,34,34,34,34,34,34,34,34,34,34,34,', '34,34,,34,34,34,,,,,,,,,,,,,,,,,,,,34,,,34,,,34,34,,,34,,34,,34,,34', ',,,,,,,34,,,,,34,34,34,34,34,34,,,,34,34,,,,,,,34,,34,34,34,34,37,37', '37,,37,,,,37,37,,,,37,,37,37,37,37,37,37,37,,,,,,37,37,37,37,37,37,37', ',,37,,,,,,,37,,,37,37,37,37,37,37,37,37,,37,37,37,,37,37,,,,37,,,,,', ',,,,,,,,,,,,,,37,,,37,,,37,37,,,37,,37,,,,,,,,,,,,,,,,,37,37,37,37,37', '37,,,,37,37,,,,,,,37,,,37,37,37,38,38,38,,38,,,,38,38,,,,38,,38,38,38', '38,38,38,38,,,,,,38,38,38,38,38,38,38,,,38,,,,,,,38,,,38,38,38,38,38', '38,38,38,,38,38,38,,38,38,,,,38,,,,,,,,,,,,,,,,,,,,38,,,38,,,38,38,', '887,38,887,887,887,887,887,,,,,,,,,,887,,,,38,38,38,38,38,38,,,,38,38', ',,,38,,,38,887,,38,38,38,45,45,45,,45,,887,887,45,45,,,,45,,45,45,45', '45,45,45,45,,,,,,45,45,45,45,45,45,45,,,45,,,,887,,,45,,,45,45,45,45', '45,45,45,45,,45,45,45,,45,45,,45,45,45,,,,,,,,,,,,,,,,,,,,45,,,45,,', '45,45,,912,45,912,912,912,912,912,45,,,,,,,,45,912,,,,45,45,45,45,45', '45,,,,45,45,,,,,,,45,912,,45,45,45,46,46,46,,46,,912,912,46,46,,,,46', ',46,46,46,46,46,46,46,,,,,,46,46,46,46,46,46,46,,,46,,,,912,,,46,,,46', '46,46,46,46,46,46,46,,46,46,46,,46,46,,46,46,46,,,,,,,,,,,,,,,,,,,,46', ',,46,,,46,46,,914,46,914,914,914,914,914,46,,,,,,,,46,914,,,,46,46,46', '46,46,46,,,,46,46,,,,,,,46,914,,46,46,46,47,47,47,,47,,914,914,47,47', ',,,47,,47,47,47,47,47,47,47,,,,,,47,47,47,47,47,47,47,,,47,,,,914,,', '47,,,47,47,47,47,47,47,47,47,,47,47,47,,47,47,,47,47,47,,,,,,,,,,,,', ',,,,,,,47,,,47,,,47,47,,916,47,916,916,916,916,916,47,,,,,,,,47,916', ',,,47,47,47,47,47,47,,,,47,47,,,,,,,47,916,,47,47,47,61,61,61,,61,,916', '916,61,61,,,,61,,61,61,61,61,61,61,61,,,,,,61,61,61,61,61,61,61,,,61', ',,,916,,,61,,,61,61,61,61,61,61,61,61,,61,61,61,,61,61,,61,61,61,,,', ',,,,,,,,,,,,,,,,61,,,61,,,61,61,,991,61,991,991,991,991,991,61,,,,,', ',,61,991,,,,61,61,61,61,61,61,,,,61,61,61,,,,,,61,991,,61,61,61,62,62', '62,,62,,991,991,62,62,,,,62,,62,62,62,62,62,62,62,,,,,,62,62,62,62,62', '62,62,,,62,,,,991,,,62,,,62,62,62,62,62,62,62,62,62,62,62,62,,62,62', ',62,62,62,,,,,,,,,,,,,,,,,,,,62,,,62,,,62,62,,,62,,62,,,,62,,,,,,,,62', ',,,,62,62,62,62,62,62,,,,62,62,,,,,,,62,,62,62,62,62,63,63,63,,63,,', ',63,63,,,,63,,63,63,63,63,63,63,63,,,,,,63,63,63,63,63,63,63,,,63,,', ',,,,63,,,63,63,63,63,63,63,63,63,63,63,63,63,,63,63,,63,63,63,,,,,,', ',,,,,,,,,,,,,63,,,63,,,63,63,,993,63,993,993,993,993,993,63,,,,,,,,63', '993,,,,63,63,63,63,63,63,,,,63,63,,,,,,,63,993,63,63,63,63,66,66,66', ',66,,993,993,66,66,,,,66,,66,66,66,66,66,66,66,,,,,,66,66,66,66,66,66', '66,,,66,,,,993,,,66,,,66,66,66,66,66,66,66,66,,66,66,66,,66,66,,66,66', '66,,,,,,,,,,,,,,,,,,,,66,,,66,,,66,66,,995,66,995,995,995,995,995,66', ',,,,,,,66,995,,,,66,66,66,66,66,66,,,,66,66,,,,,,,66,995,,66,66,66,67', '67,67,,67,,995,995,67,67,,,,67,,67,67,67,67,67,67,67,,,,,,67,67,67,67', '67,67,67,,,67,,,,995,,,67,,,67,67,67,67,67,67,67,67,,67,67,67,,67,67', ',67,67,67,,,,,,,,,,,,,,,,,,,,67,,,67,,,67,67,,1008,67,1008,1008,1008', '1008,1008,67,,,,,,,,67,1008,,,,67,67,67,67,67,67,,,,67,67,,,,,,,67,1008', ',67,67,67,70,70,70,,70,,1008,1008,70,70,,,,70,,70,70,70,70,70,70,70', ',,,,,70,70,70,70,70,70,70,,,70,,,,1008,,,70,,,70,70,70,70,70,70,70,70', ',70,70,70,,70,70,,70,70,70,,,,,,,,,,,,,,,,,,,,70,,,70,,,70,70,,1039', '70,1039,1039,1039,1039,1039,70,,,,,,,,70,1039,,,,70,70,70,70,70,70,', ',,70,70,70,,,,,70,70,1039,,70,70,70,71,71,71,,71,,1039,1039,71,71,,', ',71,,71,71,71,71,71,71,71,,,,,,71,71,71,71,71,71,71,,,71,,,,1039,,,71', ',,71,71,71,71,71,71,71,71,,71,71,71,,71,71,,,,71,,,,,,,,,,,,,,,,,,,', '71,,,71,,,71,71,,,71,,71,,,,,,,,,,,,,,,,,71,71,71,71,71,71,,,,71,71', ',,,,,,71,,,71,71,71,111,111,111,111,111,,,,111,111,,,,111,,111,111,111', '111,111,111,111,,,,,,111,111,111,111,111,111,111,,,111,,,,,,111,111', '111,111,111,111,111,111,111,111,111,111,,111,111,111,,111,111,,111,111', '111,,,,,,,,,,,,,,,,,,,,111,,,111,,,111,111,,,111,,111,,,,111,,,,,,,', '111,,,,,111,111,111,111,111,111,,,,111,111,,,,,,111,111,,,111,111,111', '116,116,116,,116,,,,116,116,,,,116,,116,116,116,116,116,116,116,,,,', ',116,116,116,116,116,116,116,,,116,,,,,,,116,,,116,116,116,116,116,116', '116,116,,116,116,116,,116,116,,116,116,116,,,,,,,,,,,,,,,,,,,,116,,', '116,,,116,116,,,116,,,,,,116,,,,,,,,116,,,,,116,116,116,116,116,116', ',,,116,116,,,,,,,116,,,116,116,116,117,117,117,,117,,,,117,117,,,,117', ',117,117,117,117,117,117,117,,,,,,117,117,117,117,117,117,117,,,117', ',,,,,,117,,,117,117,117,117,117,117,117,117,,117,117,117,,117,117,,117', '117,117,,,,,,,,,,,,,,,,,,,,117,,,117,,,117,117,,,117,,,,,,117,,,,,,', ',117,,,,,117,117,117,117,117,117,,,,117,117,,,,,,,117,,,117,117,117', '118,118,118,,118,,,,118,118,,,,118,,118,118,118,118,118,118,118,,,,', ',118,118,118,118,118,118,118,,,118,,,,,,,118,,,118,118,118,118,118,118', '118,118,,118,118,118,,118,118,,118,118,118,,,,,,,,,,,,,,,,,,,,118,,', '118,,,118,118,,,118,,,,,,118,,,,,,,,118,,,,,118,118,118,118,118,118', ',,,118,118,,,,,,,118,,,118,118,118,119,119,119,,119,,,,119,119,,,,119', ',119,119,119,119,119,119,119,,,,,,119,119,119,119,119,119,119,,,119', ',,,,,,119,,,119,119,119,119,119,119,119,119,,119,119,119,,119,119,,119', '119,119,,,,,,,,,,,,,,,,,,,,119,,,119,,,119,119,,,119,,,,,,119,,,,,,', ',119,,,,,119,119,119,119,119,119,,,,119,119,,,,,,,119,,,119,119,119', '120,120,120,120,120,,,,120,120,,,,120,,120,120,120,120,120,120,120,', ',,,,120,120,120,120,120,120,120,,,120,,,,,,120,120,,120,120,120,120', '120,120,120,120,120,,120,120,120,,120,120,,120,120,120,,,,,,,,,,,,,', ',,,,,,120,,,120,,,120,120,,,120,,120,,,,120,,,,,,,,120,,,,,120,120,120', '120,120,120,,,,120,120,,,,,,,120,,,120,120,120,208,208,208,,208,,,,208', '208,,,,208,,208,208,208,208,208,208,208,,,,,,208,208,208,208,208,208', '208,,,208,,,,,,,208,,,208,208,208,208,208,208,208,208,,208,208,208,', '208,208,,208,208,208,,,,,,,,,,,,,,,,,,,,208,,,208,,,208,208,,,208,,208', ',,,208,,,,,,,,208,,,,,208,208,208,208,208,208,,,,208,208,,,,,,,208,', ',208,208,208,209,209,209,,209,,,,209,209,,,,209,,209,209,209,209,209', '209,209,,,,,,209,209,209,209,209,209,209,,,209,,,,,,,209,,,209,209,209', '209,209,209,209,209,,209,209,209,,209,209,,209,209,209,,,,,,,,,,,,,', ',,,,,,209,,,209,,,209,209,,,209,,,,,,209,,,,,,,,209,,,,,209,209,209', '209,209,209,,,,209,209,,,,,,,209,,,209,209,209,210,210,210,,210,,,,210', '210,,,,210,,210,210,210,210,210,210,210,,,,,,210,210,210,210,210,210', '210,,,210,,,,,,,210,,,210,210,210,210,210,210,210,210,210,210,210,210', ',210,210,,210,210,210,,,,,,,,,,,,,,,,,,,,210,,,210,,,210,210,,,210,', '210,,210,,210,,,,,,,,210,,,,,210,210,210,210,210,210,,,,210,210,,,,', ',,210,,210,210,210,210,214,214,214,,214,,,,214,214,,,,214,,214,214,214', '214,214,214,214,,,,,,214,214,214,214,214,214,214,,,214,,,,,,,214,,,214', '214,214,214,214,214,214,214,,214,214,214,,214,214,,214,214,214,,,,,', ',,,,,,,,,,,,,,214,,,214,,,214,214,,,214,,,,,,214,,,,,,,,214,,,,,214', '214,214,214,214,214,,,,214,214,,,,,,,214,,,214,214,214,215,215,215,', '215,,,,215,215,,,,215,,215,215,215,215,215,215,215,,,,,,215,215,215', '215,215,215,215,,,215,,,,,,,215,,,215,215,215,215,215,215,215,215,,215', '215,215,,215,215,,215,215,215,,,,,,,,,,,,,,,,,,,,215,,,215,,,215,215', ',,215,,215,,,,215,,,,,,,,215,,,,,215,215,215,215,215,215,,,,215,215', ',,,,,,215,,,215,215,215,216,216,216,,216,,,,216,216,,,,216,,216,216', '216,216,216,216,216,,,,,,216,216,216,216,216,216,216,,,216,,,,,,,216', ',,216,216,216,216,216,216,216,216,,216,216,216,,216,216,,216,216,216', ',,,,,,,,,,,,,,,,,,,216,,,216,,,216,216,,,216,,,,,,216,,,,,,,,216,,,', ',216,216,216,216,216,216,,,,216,216,,,,,,,216,,,216,216,216,217,217', '217,,217,,,,217,217,,,,217,,217,217,217,217,217,217,217,,,,,,217,217', '217,217,217,217,217,,,217,,,,,,,217,,,217,217,217,217,217,217,217,217', ',217,217,217,,217,217,,217,217,217,,,,,,,,,,,,,,,,,,,,217,,,217,,,217', '217,,,217,,,,,,217,,,,,,,,217,,,,,217,217,217,217,217,217,,,,217,217', ',,,,,,217,,,217,217,217,218,218,218,,218,,,,218,218,,,,218,,218,218', '218,218,218,218,218,,,,,,218,218,218,218,218,218,218,,,218,,,,,,,218', ',,218,218,218,218,218,218,218,218,,218,218,218,,218,218,,218,218,218', ',,,,,,,,,,,,,,,,,,,218,,,218,,,218,218,,,218,,,,,,218,,,,,,,,218,,,', ',218,218,218,218,218,218,,,,218,218,,,,,,,218,,,218,218,218,219,219', '219,,219,,,,219,219,,,,219,,219,219,219,219,219,219,219,,,,,,219,219', '219,219,219,219,219,,,219,,,,,,,219,,,219,219,219,219,219,219,219,219', ',219,219,219,,219,219,,219,219,219,,,,,,,,,,,,,,,,,,,,219,,,219,,,219', '219,,,219,,,,,,219,,,,,,,,219,,,,,219,219,219,219,219,219,,,,219,219', '219,,,,,,219,,,219,219,219,230,230,230,,230,,,,230,230,,,,230,,230,230', '230,230,230,230,230,,,,,,230,230,230,230,230,230,230,,,230,,,,,,,230', ',,230,230,230,230,230,230,230,230,,230,230,230,,230,230,,230,230,230', ',,,,,,,,,,,,,,,,,,,230,,,230,,,230,230,,,230,,,,,,230,,,,,,,,230,,,', ',230,230,230,230,230,230,,,,230,230,,,,,,,230,,,230,230,230,233,233', '233,,233,,,,233,233,,,,233,,233,233,233,233,233,233,233,,,,,,233,233', '233,233,233,233,233,,,233,,,,,,,233,,,233,233,233,233,233,233,233,233', ',233,233,233,,233,233,,233,233,233,,,,,,,,,,,,,,,,,,,,233,,,233,,,233', '233,,,233,,,,,,233,,,,,,,,233,,,,,233,233,233,233,233,233,,,,233,233', ',,,,,,233,,,233,233,233,234,234,234,,234,,,,234,234,,,,234,,234,234', '234,234,234,234,234,,,,,,234,234,234,234,234,234,234,,,234,,,,,,,234', ',,234,234,234,234,234,234,234,234,,234,234,234,,234,234,,234,234,234', ',,,,,,,,,,,,,,,,,,,234,,,234,,,234,234,,,234,,,,,,234,,,,,,,,234,,,', ',234,234,234,234,234,234,,,,234,234,,,,,,,234,,,234,234,234,235,235', '235,,235,,,,235,235,,,,235,,235,235,235,235,235,235,235,,,,,,235,235', '235,235,235,235,235,,,235,,,,,,,235,,,235,235,235,235,235,235,235,235', ',235,235,235,,235,235,,235,235,235,,,,,,,,,,,,,,,,,,,,235,,,235,,,235', '235,,,235,,,,,,235,,,,,,,,235,,,,,235,235,235,235,235,235,,,,235,235', ',,,,,,235,,,235,235,235,236,236,236,,236,,,,236,236,,,,236,,236,236', '236,236,236,236,236,,,,,,236,236,236,236,236,236,236,,,236,,,,,,,236', ',,236,236,236,236,236,236,236,236,,236,236,236,,236,236,,236,236,236', ',,,,,,,,,,,,,,,,,,,236,,,236,,,236,236,,,236,,,,,,236,,,,,,,,236,,,', ',236,236,236,236,236,236,,,,236,236,,,,,,,236,,,236,236,236,237,237', '237,,237,,,,237,237,,,,237,,237,237,237,237,237,237,237,,,,,,237,237', '237,237,237,237,237,,,237,,,,,,,237,,,237,237,237,237,237,237,237,237', ',237,237,237,,237,237,,237,237,237,,,,,,,,,,,,,,,,,,,,237,,,237,,,237', '237,,,237,,,,,,237,,,,,,,,237,,,,,237,237,237,237,237,237,,,,237,237', ',,,,,,237,,,237,237,237,238,238,238,,238,,,,238,238,,,,238,,238,238', '238,238,238,238,238,,,,,,238,238,238,238,238,238,238,,,238,,,,,,,238', ',,238,238,238,238,238,238,238,238,,238,238,238,,238,238,,238,238,238', ',,,,,,,,,,,,,,,,,,,238,,,238,,,238,238,,,238,,,,,,238,,,,,,,,238,,,', ',238,238,238,238,238,238,,,,238,238,,,,,,,238,,,238,238,238,239,239', '239,,239,,,,239,239,,,,239,,239,239,239,239,239,239,239,,,,,,239,239', '239,239,239,239,239,,,239,,,,,,,239,,,239,239,239,239,239,239,239,239', ',239,239,239,,239,239,,239,239,239,,,,,,,,,,,,,,,,,,,,239,,,239,,,239', '239,,,239,,,,,,239,,,,,,,,239,,,,,239,239,239,239,239,239,,,,239,239', ',,,,,,239,,,239,239,239,240,240,240,,240,,,,240,240,,,,240,,240,240', '240,240,240,240,240,,,,,,240,240,240,240,240,240,240,,,240,,,,,,,240', ',,240,240,240,240,240,240,240,240,,240,240,240,,240,240,,240,240,240', ',,,,,,,,,,,,,,,,,,,240,,,240,,,240,240,,,240,,,,,,240,,,,,,,,240,,,', ',240,240,240,240,240,240,,,,240,240,,,,,,,240,,,240,240,240,241,241', '241,,241,,,,241,241,,,,241,,241,241,241,241,241,241,241,,,,,,241,241', '241,241,241,241,241,,,241,,,,,,,241,,,241,241,241,241,241,241,241,241', ',241,241,241,,241,241,,241,241,241,,,,,,,,,,,,,,,,,,,,241,,,241,,,241', '241,,,241,,,,,,241,,,,,,,,241,,,,,241,241,241,241,241,241,,,,241,241', ',,,,,,241,,,241,241,241,242,242,242,,242,,,,242,242,,,,242,,242,242', '242,242,242,242,242,,,,,,242,242,242,242,242,242,242,,,242,,,,,,,242', ',,242,242,242,242,242,242,242,242,,242,242,242,,242,242,,242,242,242', ',,,,,,,,,,,,,,,,,,,242,,,242,,,242,242,,,242,,,,,,242,,,,,,,,242,,,', ',242,242,242,242,242,242,,,,242,242,,,,,,,242,,,242,242,242,243,243', '243,,243,,,,243,243,,,,243,,243,243,243,243,243,243,243,,,,,,243,243', '243,243,243,243,243,,,243,,,,,,,243,,,243,243,243,243,243,243,243,243', ',243,243,243,,243,243,,243,243,243,,,,,,,,,,,,,,,,,,,,243,,,243,,,243', '243,,,243,,,,,,243,,,,,,,,243,,,,,243,243,243,243,243,243,,,,243,243', ',,,,,,243,,,243,243,243,244,244,244,,244,,,,244,244,,,,244,,244,244', '244,244,244,244,244,,,,,,244,244,244,244,244,244,244,,,244,,,,,,,244', ',,244,244,244,244,244,244,244,244,,244,244,244,,244,244,,244,244,244', ',,,,,,,,,,,,,,,,,,,244,,,244,,,244,244,,,244,,,,,,244,,,,,,,,244,,,', ',244,244,244,244,244,244,,,,244,244,,,,,,,244,,,244,244,244,245,245', '245,,245,,,,245,245,,,,245,,245,245,245,245,245,245,245,,,,,,245,245', '245,245,245,245,245,,,245,,,,,,,245,,,245,245,245,245,245,245,245,245', ',245,245,245,,245,245,,245,245,245,,,,,,,,,,,,,,,,,,,,245,,,245,,,245', '245,,,245,,,,,,245,,,,,,,,245,,,,,245,245,245,245,245,245,,,,245,245', ',,,,,,245,,,245,245,245,246,246,246,,246,,,,246,246,,,,246,,246,246', '246,246,246,246,246,,,,,,246,246,246,246,246,246,246,,,246,,,,,,,246', ',,246,246,246,246,246,246,246,246,,246,246,246,,246,246,,246,246,246', ',,,,,,,,,,,,,,,,,,,246,,,246,,,246,246,,,246,,,,,,246,,,,,,,,246,,,', ',246,246,246,246,246,246,,,,246,246,,,,,,,246,,,246,246,246,247,247', '247,,247,,,,247,247,,,,247,,247,247,247,247,247,247,247,,,,,,247,247', '247,247,247,247,247,,,247,,,,,,,247,,,247,247,247,247,247,247,247,247', ',247,247,247,,247,247,,247,247,247,,,,,,,,,,,,,,,,,,,,247,,,247,,,247', '247,,,247,,,,,,247,,,,,,,,247,,,,,247,247,247,247,247,247,,,,247,247', ',,,,,,247,,,247,247,247,248,248,248,,248,,,,248,248,,,,248,,248,248', '248,248,248,248,248,,,,,,248,248,248,248,248,248,248,,,248,,,,,,,248', ',,248,248,248,248,248,248,248,248,,248,248,248,,248,248,,248,248,248', ',,,,,,,,,,,,,,,,,,,248,,,248,,,248,248,,,248,,,,,,248,,,,,,,,248,,,', ',248,248,248,248,248,248,,,,248,248,,,,,,,248,,,248,248,248,249,249', '249,,249,,,,249,249,,,,249,,249,249,249,249,249,249,249,,,,,,249,249', '249,249,249,249,249,,,249,,,,,,,249,,,249,249,249,249,249,249,249,249', ',249,249,249,,249,249,,249,249,249,,,,,,,,,,,,,,,,,,,,249,,,249,,,249', '249,,,249,,,,,,249,,,,,,,,249,,,,,249,249,249,249,249,249,,,,249,249', ',,,,,,249,,,249,249,249,250,250,250,,250,,,,250,250,,,,250,,250,250', '250,250,250,250,250,,,,,,250,250,250,250,250,250,250,,,250,,,,,,,250', ',,250,250,250,250,250,250,250,250,,250,250,250,,250,250,,250,250,250', ',,,,,,,,,,,,,,,,,,,250,,,250,,,250,250,,,250,,,,,,250,,,,,,,,250,,,', ',250,250,250,250,250,250,,,,250,250,,,,,,,250,,,250,250,250,251,251', '251,,251,,,,251,251,,,,251,,251,251,251,251,251,251,251,,,,,,251,251', '251,251,251,251,251,,,251,,,,,,,251,,,251,251,251,251,251,251,251,251', ',251,251,251,,251,251,,251,251,251,,,,,,,,,,,,,,,,,,,,251,,,251,,,251', '251,,,251,,,,,,251,,,,,,,,251,,,,,251,251,251,251,251,251,,,,251,251', ',,,,,,251,,,251,251,251,252,252,252,,252,,,,252,252,,,,252,,252,252', '252,252,252,252,252,,,,,,252,252,252,252,252,252,252,,,252,,,,,,,252', ',,252,252,252,252,252,252,252,252,,252,252,252,,252,252,,252,252,252', ',,,,,,,,,,,,,,,,,,,252,,,252,,,252,252,,,252,,,,,,252,,,,,,,,252,,,', ',252,252,252,252,252,252,,,,252,252,,,,,,,252,,,252,252,252,253,253', '253,,253,,,,253,253,,,,253,,253,253,253,253,253,253,253,,,,,,253,253', '253,253,253,253,253,,,253,,,,,,,253,,,253,253,253,253,253,253,253,253', ',253,253,253,,253,253,,253,253,253,,,,,,,,,,,,,,,,,,,,253,,,253,,,253', '253,,,253,,,,,,253,,,,,,,,253,,,,,253,253,253,253,253,253,,,,253,253', ',,,,,,253,,,253,253,253,254,254,254,,254,,,,254,254,,,,254,,254,254', '254,254,254,254,254,,,,,,254,254,254,254,254,254,254,,,254,,,,,,,254', ',,254,254,254,254,254,254,254,254,,254,254,254,,254,254,,254,254,254', ',,,,,,,,,,,,,,,,,,,254,,,254,,,254,254,,,254,,,,,,254,,,,,,,,254,,,', ',254,254,254,254,254,254,,,,254,254,,,,,,,254,,,254,254,254,255,255', '255,,255,,,,255,255,,,,255,,255,255,255,255,255,255,255,,,,,,255,255', '255,255,255,255,255,,,255,,,,,,,255,,,255,255,255,255,255,255,255,255', ',255,255,255,,255,255,,255,255,255,,,,,,,,,,,,,,,,,,,,255,,,255,,,255', '255,,,255,,,,,,255,,,,,,,,255,,,,,255,255,255,255,255,255,,,,255,255', ',,,,,,255,,,255,255,255,256,256,256,,256,,,,256,256,,,,256,,256,256', '256,256,256,256,256,,,,,,256,256,256,256,256,256,256,,,256,,,,,,,256', ',,256,256,256,256,256,256,256,256,,256,256,256,,256,256,,256,256,256', ',,,,,,,,,,,,,,,,,,,256,,,256,,,256,256,,,256,,,,,,256,,,,,,,,256,,,', ',256,256,256,256,256,256,,,,256,256,,,,,,,256,,,256,256,256,257,257', '257,,257,,,,257,257,,,,257,,257,257,257,257,257,257,257,,,,,,257,257', '257,257,257,257,257,,,257,,,,,,,257,,,257,257,257,257,257,257,257,257', ',257,257,257,,257,257,,257,257,257,,,,,,,,,,,,,,,,,,,,257,,,257,,,257', '257,,,257,,,,,,257,,,,,,,,257,,,,,257,257,257,257,257,257,,,,257,257', ',,,,,,257,,,257,257,257,258,258,258,,258,,,,258,258,,,,258,,258,258', '258,258,258,258,258,,,,,,258,258,258,258,258,258,258,,,258,,,,,,,258', ',,258,258,258,258,258,258,258,258,,258,258,258,,258,258,,258,258,258', ',,,,,,,,,,,,,,,,,,,258,,,258,,,258,258,,,258,,,,,,258,,,,,,,,258,,,', ',258,258,258,258,258,258,,,,258,258,,,,,,,258,,,258,258,258,265,265', '265,,265,,,,265,265,,,,265,,265,265,265,265,265,265,265,,,,,,265,265', '265,265,265,265,265,,,265,,,,,,,265,,,265,265,265,265,265,265,265,265', '265,265,265,265,,265,265,,265,265,265,,,,,,,,,,,,,,,,,,,,265,,,265,', ',265,265,,,265,,265,,265,,265,,,,,,,,265,,,,,265,265,265,265,265,265', ',,,265,265,,,,,,,265,,265,265,265,265,271,271,271,,271,,,,271,271,,', ',271,,271,271,271,271,271,271,271,,,,,,271,271,271,271,271,271,271,', ',271,,,,,,,271,,,271,271,271,271,271,271,271,271,271,271,271,271,,271', '271,,271,271,271,,,,,,,,,,,,,,,,,,,,271,,,271,,,271,271,,,271,,271,', '271,,271,,,,,,,,271,,,,,271,271,271,271,271,271,,,,271,271,,,,,,,271', ',271,271,271,271,274,274,274,,274,,,,274,274,,,,274,,274,274,274,274', '274,274,274,,,,,,274,274,274,274,274,274,274,,,274,,,,,,,274,,,274,274', '274,274,274,274,274,274,274,274,274,274,,274,274,,274,274,274,,,,,,', ',,,,,,,,,,,,,274,,,274,,,274,274,,,274,,274,,274,,274,,,,,,,,274,,,', ',274,274,274,274,274,274,,,,274,274,274,,,,,,274,,274,274,274,274,281', '281,281,,281,,,,281,281,,,,281,,281,281,281,281,281,281,281,,,,,,281', '281,281,281,281,281,281,,,281,,,,,,,281,,,281,281,281,281,281,281,281', '281,,281,281,281,,281,281,,281,281,281,,,,,,,,,,,,,,,,,,,,281,,,281', ',,281,281,,,281,,,,,,281,,,,,,,,281,,,,,281,281,281,281,281,281,,,,281', '281,,,,,,,281,,,281,281,281,283,283,283,,283,,,,283,283,,,,283,,283', '283,283,283,283,283,283,,,,,,283,283,283,283,283,283,283,,,283,,,,,', ',283,,,283,283,283,283,283,283,283,283,,283,283,283,,283,283,,283,283', '283,,,,,,,,,,,,,,,,,,,,283,,,283,,,283,283,,,283,,,,,,283,,,,,,,,283', ',,,,283,283,283,283,283,283,,,,283,283,,,,,,,283,,,283,283,283,285,285', '285,,285,,,,285,285,,,,285,,285,285,285,285,285,285,285,,,,,,285,285', '285,285,285,285,285,,,285,,,,,,,285,,,285,285,285,285,285,285,285,285', ',285,285,285,,285,285,,285,285,285,,,,,,,,,,,,,,,,,,,,285,,,285,,,285', '285,,,285,,,,,,285,,,,,,,,285,,,,,285,285,285,285,285,285,,,,285,285', ',,,,,,285,,,285,285,285,286,286,286,,286,,,,286,286,,,,286,,286,286', '286,286,286,286,286,,,,,,286,286,286,286,286,286,286,,,286,,,,,,,286', ',,286,286,286,286,286,286,286,286,,286,286,286,,286,286,,286,286,286', ',,,,,,,,,,,,,,,,,,,286,,,286,,,286,286,,,286,,,,,,286,,,,,,,,286,,,', ',286,286,286,286,286,286,,,,286,286,,,,,,,286,,,286,286,286,292,292', '292,292,292,,,,292,292,,,,292,,292,292,292,292,292,292,292,,,,,,292', '292,292,292,292,292,292,,,292,,,,,,292,292,,292,292,292,292,292,292', '292,292,292,,292,292,292,,292,292,,292,292,292,,,,,,,,,,,,,,,,,,,,292', ',,292,,,292,292,,,292,,292,,,,292,,,,,,,,292,,,,,292,292,292,292,292', '292,,,,292,292,,,,,,,292,,,292,292,292,298,298,298,,298,,,,298,298,', ',,298,,298,298,298,298,298,298,298,,,,,,298,298,298,298,298,298,298', ',,298,,,,,,,298,,,298,298,298,298,298,298,298,298,,298,298,298,,298', '298,,,,298,,,,,,,,,,,,,,,,,,,,298,,,298,,,298,298,,,298,,,,,,,,,,,,', ',,,,,,298,298,298,298,298,298,,,,298,298,,,,298,,,298,,,298,298,298', '315,315,315,,315,,,,315,315,,,,315,,315,315,315,315,315,315,315,,,,', ',315,315,315,315,315,315,315,,,315,,,,,,,315,,,315,315,315,315,315,315', '315,315,,315,315,315,,315,315,,,,315,,,,,,,,,,,,,,,,,,,,315,,,315,,', '315,315,,,315,,,,,,,,,,,,,,,,,,,315,315,315,315,315,315,,,,315,315,', ',,,,,315,,,315,315,315,324,324,324,,324,,,,324,324,,,,324,,324,324,324', '324,324,324,324,,,,,,324,324,324,324,324,324,324,,,324,,,,,,,324,,,324', '324,324,324,324,324,324,324,,324,324,324,,324,324,,324,324,324,,,,,', ',,,,,,,,,,,,,,324,,,324,324,,324,324,,,324,,,,,,324,,,,,,,,324,,,,,324', '324,324,324,324,324,,,,324,324,,,,,,,324,,,324,324,324,343,343,343,', '343,,,,343,343,,,,343,,343,343,343,343,343,343,343,,,,,,343,343,343', '343,343,343,343,,,343,,,,,,,343,,,343,343,343,343,343,343,343,343,,343', '343,343,,343,343,,343,343,343,,,,,,,,,,,,,,,,,,,,343,,,343,,,343,343', ',,343,,,,,,343,,,,,,,,343,,,,,343,343,343,343,343,343,,,,343,343,,,', ',,,343,,,343,343,343,344,344,344,,344,,,,344,344,,,,344,,344,344,344', '344,344,344,344,,,,,,344,344,344,344,344,344,344,,,344,,,,,,,344,,,344', '344,344,344,344,344,344,344,,344,344,344,,344,344,,344,344,344,,,,,', ',,,,,,,,,,,,,,344,,,344,,,344,344,,,344,,,,,,344,,,,,,,,344,,,,,344', '344,344,344,344,344,,,,344,344,,,,,,,344,,,344,344,344,356,356,356,', '356,,,,356,356,,,,356,,356,356,356,356,356,356,356,,,,,,356,356,356', '356,356,356,356,,,356,,,,,,,356,,,356,356,356,356,356,356,356,356,,356', '356,356,,356,356,,,,356,,,,,,,,,,,,,,,,,,,,356,,,356,,,356,356,,,356', ',,,,,,,,,,,,,,,,,,356,356,356,356,356,356,,,,356,356,,,,,,,356,,,356', '356,356,358,358,358,,358,,,,358,358,,,,358,,358,358,358,358,358,358', '358,,,,,,358,358,358,358,358,358,358,,,358,,,,,,,358,,,358,358,358,358', '358,358,358,358,,358,358,358,,358,358,,,,358,,,,,,,,,,,,,,,,,,,,358', ',,358,,,358,358,,,358,,,,,,,,,,,,,,,,,,,358,358,358,358,358,358,,,,358', '358,,,,,,,358,,,358,358,358,416,416,416,,416,,,,416,416,,,,416,,416', '416,416,416,416,416,416,,,,,,416,416,416,416,416,416,416,,,416,,,,,', ',416,,,416,416,416,416,416,416,416,416,,416,416,416,,416,416,,416,416', '416,,,,,,,,,,,,,,,,,,,,416,,,416,,,416,416,,,416,,,,,,416,,,,,,,,416', ',,,,416,416,416,416,416,416,,,,416,416,,,,,,,416,,,416,416,416,453,453', '453,,453,,,,453,453,,,,453,,453,453,453,453,453,453,453,,,,,,453,453', '453,453,453,453,453,,,453,,,,,,,453,,,453,453,453,453,453,453,453,453', '453,453,453,453,,453,453,,453,453,453,,,,,,,,,,,,,,,,,,,,453,,,453,', ',453,453,,,453,,453,,453,,453,,,,,,,,453,,,,,453,453,453,453,453,453', ',,,453,453,,,,,,,453,,453,453,453,453,455,455,455,,455,,,,455,455,,', ',455,,455,455,455,455,455,455,455,,,,,,455,455,455,455,455,455,455,', ',455,,,,,,,455,,,455,455,455,455,455,455,455,455,,455,455,455,,455,455', ',455,455,455,,,,,,,,,,,,,,,,,,,,455,,,455,,,455,455,,,455,,,,,,455,', ',,,,,,455,,,,,455,455,455,455,455,455,,,,455,455,,,,,,,455,,,455,455', '455,456,456,456,,456,,,,456,456,,,,456,,456,456,456,456,456,456,456', ',,,,,456,456,456,456,456,456,456,,,456,,,,,,,456,,,456,456,456,456,456', '456,456,456,,456,456,456,,456,456,,456,456,456,,,,,,,,,,,,,,,,,,,,456', ',,456,,,456,456,,,456,,,,,,456,,,,,,,,456,,,,,456,456,456,456,456,456', ',,,456,456,,,,,,,456,,,456,456,456,457,457,457,,457,,,,457,457,,,,457', ',457,457,457,457,457,457,457,,,,,,457,457,457,457,457,457,457,,,457', ',,,,,,457,,,457,457,457,457,457,457,457,457,,457,457,457,,457,457,,457', '457,457,,,,,,,,,,,,,,,,,,,,457,,,457,,,457,457,,,457,,,,,,457,,,,,,', ',457,,,,,457,457,457,457,457,457,,,,457,457,,,,,,,457,,,457,457,457', '498,498,498,,498,,,,498,498,,,,498,,498,498,498,498,498,498,498,,,,', ',498,498,498,498,498,498,498,,,498,,,,,,,498,,,498,498,498,498,498,498', '498,498,498,498,498,498,,498,498,,498,498,498,,,,,,,,,,,,,,,,,,,,498', ',,498,,,498,498,,,498,,498,,498,,498,,,,,,,,498,,,,,498,498,498,498', '498,498,,,,498,498,,,,,,,498,,498,498,498,498,501,501,501,,501,,,,501', '501,,,,501,,501,501,501,501,501,501,501,,,,,,501,501,501,501,501,501', '501,,,501,,,,,,,501,,,501,501,501,501,501,501,501,501,501,501,501,501', ',501,501,,501,501,501,,,,,,,,,,,,,,,,,,,,501,,,501,,,501,501,,,501,', ',,501,,501,,,,,,,,501,,,,,501,501,501,501,501,501,,,,501,501,,,,,,,501', ',501,501,501,501,503,503,503,,503,,,,503,503,,,,503,,503,503,503,503', '503,503,503,,,,,,503,503,503,503,503,503,503,,,503,,,,,,,503,,,503,503', '503,503,503,503,503,503,,503,503,503,,503,503,,503,503,503,,,,,,,,,', ',,,,,,,,,,503,,,503,,,503,503,,,503,,,,,,503,,,,,,,,503,,,,,503,503', '503,503,503,503,,,,503,503,,,,,,,503,,,503,503,503,508,508,508,508,508', ',,,508,508,,,,508,,508,508,508,508,508,508,508,,,,,,508,508,508,508', '508,508,508,,,508,,,,,,508,508,,508,508,508,508,508,508,508,508,508', ',508,508,508,,508,508,,508,508,508,,,,,,,,,,,,,,,,,,,,508,,,508,,,508', '508,,,508,,508,,,,508,,,,,,,,508,,,,,508,508,508,508,508,508,,,,508', '508,,,,,,508,508,,,508,508,508,515,515,515,,515,,,,515,515,,,,515,,515', '515,515,515,515,515,515,,,,,,515,515,515,515,515,515,515,,,515,,,,,', ',515,,,515,515,515,515,515,515,515,515,,515,515,515,,515,515,,,,515', ',,,,,,,,,,,,,,,,,,,515,,,515,,,515,515,,,515,,,,,,,,,,,,,,,,,,,515,515', '515,515,515,515,,,,515,515,,,,,,,515,,,515,515,515,517,517,517,,517', ',,,517,517,,,,517,,517,517,517,517,517,517,517,,,,,,517,517,517,517', '517,517,517,,,517,,,,,,,517,,,517,517,517,517,517,517,517,517,517,517', '517,517,,517,517,,517,517,517,,,,,,,,,,,,,,,,,,,,517,,,517,,,517,517', ',,517,,517,,517,,517,,,,,,,,517,,,,,517,517,517,517,517,517,,,,517,517', ',,,,,,517,,517,517,517,517,524,524,524,,524,,,,524,524,,,,524,,524,524', '524,524,524,524,524,,,,,,524,524,524,524,524,524,524,,,524,,,,,,,524', ',,524,524,524,524,524,524,524,524,,524,524,524,,524,524,,,,524,,,,,', ',,,,,,,,,,,,,,524,,,524,,,524,524,,,524,,,,,,,,,,,,,,,,,,,524,524,524', '524,524,524,,,,524,524,,,,,,,524,,,524,524,524,527,527,527,,527,,,,527', '527,,,,527,,527,527,527,527,527,527,527,,,,,,527,527,527,527,527,527', '527,,,527,,,,,,,527,,,527,527,527,527,527,527,527,527,,527,527,527,', '527,527,,527,527,527,,,,,,,,,,,,,,,,,,,,527,,,527,,,527,527,,,527,,', ',,,527,,,,,,,,527,,,,,527,527,527,527,527,527,,,,527,527,,,,,,,527,', ',527,527,527,528,528,528,,528,,,,528,528,,,,528,,528,528,528,528,528', '528,528,,,,,,528,528,528,528,528,528,528,,,528,,,,,,,528,,,528,528,528', '528,528,528,528,528,,528,528,528,,528,528,,528,528,528,,,,,,,,,,,,,', ',,,,,,528,,,528,,,528,528,,,528,,,,,,528,,,,,,,,528,,,,,528,528,528', '528,528,528,,,,528,528,,,,,,,528,,,528,528,528,529,529,529,,529,,,,529', '529,,,,529,,529,529,529,529,529,529,529,,,,,,529,529,529,529,529,529', '529,,,529,,,,,,,529,,,529,529,529,529,529,529,529,529,,529,529,529,', '529,529,,529,529,529,,,,,,,,,,,,,,,,,,,,529,,,529,,,529,529,,,529,,', ',,,529,,,,,,,,529,,,,,529,529,529,529,529,529,,,,529,529,,,,,,,529,', ',529,529,529,533,533,533,,533,,,,533,533,,,,533,,533,533,533,533,533', '533,533,,,,,,533,533,533,533,533,533,533,,,533,,,,,,,533,,,533,533,533', '533,533,533,533,533,,533,533,533,,533,533,,533,533,533,,,,,,,,,,,,,', ',,,,,,533,,,533,,,533,533,,,533,,,,,,533,,,,,,,,533,,,,,533,533,533', '533,533,533,,,,533,533,,,,,,,533,,,533,533,533,539,539,539,,539,,,,539', '539,,,,539,,539,539,539,539,539,539,539,,,,,,539,539,539,539,539,539', '539,,,539,,,,,,,539,,,539,539,539,539,539,539,539,539,539,539,539,539', ',539,539,,539,539,539,,,,,,,,,,,,,,,,,,,,539,,,539,,,539,539,,,539,', '539,,,,539,,,,,,,,539,,,,,539,539,539,539,539,539,,,,539,539,,,,,,,539', ',539,539,539,539,542,542,542,,542,,,,542,542,,,,542,,542,542,542,542', '542,542,542,,,,,,542,542,542,542,542,542,542,,,542,,,,,,,542,,,542,542', '542,542,542,542,542,542,542,542,542,542,,542,542,,542,542,542,,,,,,', ',,,,,,,,,,,,,542,,,542,,,542,542,,,542,,,,,,542,,,,,,,,542,,,,,542,542', '542,542,542,542,,,,542,542,,,,,,,542,,542,542,542,542,565,565,565,,565', ',,,565,565,,,,565,,565,565,565,565,565,565,565,,,,,,565,565,565,565', '565,565,565,,,565,,,,,,,565,,,565,565,565,565,565,565,565,565,,565,565', '565,,565,565,,565,565,565,,,,,,,,,,,,,,,,,,,,565,,,565,,,565,565,,,565', ',,,,,565,,,,,,,,565,,,,,565,565,565,565,565,565,,,,565,565,,,,,,,565', ',,565,565,565,586,586,586,,586,,,,586,586,,,,586,,586,586,586,586,586', '586,586,,,,,,586,586,586,586,586,586,586,,,586,,,,,,,586,,,586,586,586', '586,586,586,586,586,586,586,586,586,,586,586,,586,586,586,,,,,,,,,,', ',,,,,,,,,586,,,586,,,586,586,,,586,,586,,586,,586,,,,,,,,586,,,,,586', '586,586,586,586,586,,,,586,586,,,,,,,586,,586,586,586,586,598,598,598', ',598,,,,598,598,,,,598,,598,598,598,598,598,598,598,,,,,,598,598,598', '598,598,598,598,,,598,,,,,,,598,,,598,598,598,598,598,598,598,598,,598', '598,598,,598,598,,598,598,598,,,,,,,,,,,,,,,,,,,,598,,,598,,,598,598', ',,598,,,,,,598,,,,,,,,598,,,,,598,598,598,598,598,598,,,,598,598,,,', ',,,598,,,598,598,598,602,602,602,,602,,,,602,602,,,,602,,602,602,602', '602,602,602,602,,,,,,602,602,602,602,602,602,602,,,602,,,,,,,602,,,602', '602,602,602,602,602,602,602,,602,602,602,,602,602,,602,602,602,,,,,', ',,,,,,,,,,,,,,602,,,602,,,602,602,,,602,,,,,,602,,,,,,,,602,,,,,602', '602,602,602,602,602,,,,602,602,,,,,,,602,,,602,602,602,631,631,631,', '631,,,,631,631,,,,631,,631,631,631,631,631,631,631,,,,,,631,631,631', '631,631,631,631,,,631,,,,,,,631,,,631,631,631,631,631,631,631,631,,631', '631,631,,631,631,,631,631,631,,,,,,,,,,,,,,,,,,,,631,,,631,,,631,631', ',,631,,631,,,,631,,,,,,,,631,,,,,631,631,631,631,631,631,,,,631,631', ',,,,,,631,,,631,631,631,632,632,632,,632,,,,632,632,,,,632,,632,632', '632,632,632,632,632,,,,,,632,632,632,632,632,632,632,,,632,,,,,,,632', ',,632,632,632,632,632,632,632,632,,632,632,632,,632,632,,632,632,632', ',,,,,,,,,,,,,,,,,,,632,,,632,,,632,632,,,632,,,,,,632,,,,,,,,632,,,', ',632,632,632,632,632,632,,,,632,632,,,,,,,632,,,632,632,632,635,635', '635,,635,,,,635,635,,,,635,,635,635,635,635,635,635,635,,,,,,635,635', '635,635,635,635,635,,,635,,,,,,,635,,,635,635,635,635,635,635,635,635', '635,635,635,635,,635,635,,635,635,635,,,,,,,,,,,,,,,,,,,,635,,,635,', ',635,635,,,635,,635,,635,,635,,,,,,,,635,,,,,635,635,635,635,635,635', ',,,635,635,,,,,,,635,,635,635,635,635,636,636,636,,636,,,,636,636,,', ',636,,636,636,636,636,636,636,636,,,,,,636,636,636,636,636,636,636,', ',636,,,,,,,636,,,636,636,636,636,636,636,636,636,636,636,636,636,,636', '636,,636,636,636,,,,,,,,,,,,,,,,,,,,636,,,636,,,636,636,,,636,,,,636', ',636,,,,,,,,636,,,,,636,636,636,636,636,636,,,,636,636,,,,,,,636,,636', '636,636,636,637,637,637,,637,,,,637,637,,,,637,,637,637,637,637,637', '637,637,,,,,,637,637,637,637,637,637,637,,,637,,,,,,,637,,,637,637,637', '637,637,637,637,637,,637,637,637,,637,637,,637,637,637,,,,,,,,,,,,,', ',,,,,,637,,,637,,,637,637,,,637,,,,,,637,,,,,,,,637,,,,,637,637,637', '637,637,637,,,,637,637,,,,,,,637,,,637,637,637,638,638,638,,638,,,,638', '638,,,,638,,638,638,638,638,638,638,638,,,,,,638,638,638,638,638,638', '638,,,638,,,,,,,638,,,638,638,638,638,638,638,638,638,,638,638,638,', '638,638,,638,638,638,,,,,,,,,,,,,,,,,,,,638,,,638,,,638,638,,,638,,', ',,,638,,,,,,,,638,,,,,638,638,638,638,638,638,,,,638,638,,,,,,,638,', ',638,638,638,643,643,643,,643,,,,643,643,,,,643,,643,643,643,643,643', '643,643,,,,,,643,643,643,643,643,643,643,,,643,,,,,,,643,,,643,643,643', '643,643,643,643,643,,643,643,643,,643,643,,643,643,643,,,,,,,,,,,,,', ',,,,,,643,,,643,,,643,643,,,643,,,,,,643,,,,,,,,643,,,,,643,643,643', '643,643,643,,,,643,643,,,,,,,643,,,643,643,643,644,644,644,,644,,,,644', '644,,,,644,,644,644,644,644,644,644,644,,,,,,644,644,644,644,644,644', '644,,,644,,,,,,,644,,,644,644,644,644,644,644,644,644,,644,644,644,', '644,644,,644,644,644,,,,,,,,,,,,,,,,,,,,644,,,644,,,644,644,,,644,,', ',,,644,,,,,,,,644,,,,,644,644,644,644,644,644,,,,644,644,,,,,,,644,', ',644,644,644,647,647,647,,647,,,,647,647,,,,647,,647,647,647,647,647', '647,647,,,,,,647,647,647,647,647,647,647,,,647,,,,,,,647,,,647,647,647', '647,647,647,647,647,,647,647,647,,647,647,,647,647,647,,,,,,,,,,,,,', ',,,,,,647,,,647,,,647,647,,,647,,,,,,647,,,,,,,,647,,,,,647,647,647', '647,647,647,,,,647,647,,,,,,,647,,,647,647,647,648,648,648,,648,,,,648', '648,,,,648,,648,648,648,648,648,648,648,,,,,,648,648,648,648,648,648', '648,,,648,,,,,,,648,,,648,648,648,648,648,648,648,648,,648,648,648,', '648,648,,648,648,648,,,,,,,,,,,,,,,,,,,,648,,,648,,,648,648,,,648,,', ',,,648,,,,,,,,648,,,,,648,648,648,648,648,648,,,,648,648,,,,,,,648,', ',648,648,648,672,672,672,,672,,,,672,672,,,,672,,672,672,672,672,672', '672,672,,,,,,672,672,672,672,672,672,672,,,672,,,,,,,672,,,672,672,672', '672,672,672,672,672,,672,672,672,,672,672,,672,672,672,,,,,,,,,,,,,', ',,,,,,672,,,672,,,672,672,,,672,,,,,,672,,,,,,,,672,,,,,672,672,672', '672,672,672,,,,672,672,,,,,,,672,,,672,672,672,677,677,677,,677,,,,677', '677,,,,677,,677,677,677,677,677,677,677,,,,,,677,677,677,677,677,677', '677,,,677,,,,,,,677,,,677,677,677,677,677,677,677,677,,677,677,677,', '677,677,,,,677,,,,,,,,,,,,,,,,,,,,677,,,677,,,677,677,,,677,,,,,,,,', ',,,,,,,,,,677,677,677,677,677,677,,,,677,677,,,,,,,677,,,677,677,677', '688,688,688,,688,,,,688,688,,,,688,,688,688,688,688,688,688,688,,,,', ',688,688,688,688,688,688,688,,,688,,,,,,,688,,,688,688,688,688,688,688', '688,688,,688,688,688,,688,688,,,,688,,,,,,,,,,,,,,,,,,,,688,,,688,,', '688,688,,,688,,,,,,,,,,,,,,,,,,,688,688,688,688,688,688,,,,688,688,', ',,,,,688,,,688,688,688,694,694,694,,694,,,,694,694,,,,694,,694,694,694', '694,694,694,694,,,,,,694,694,694,694,694,694,694,,,694,,,,,,,694,,,694', '694,694,694,694,694,694,694,,694,694,694,,694,694,,694,694,694,,,,,', ',,,,,,,,,,,,,,694,,,694,,,694,694,,,694,,694,,,,694,,,,,,,,694,,,,,694', '694,694,694,694,694,,,,694,694,,,,,,,694,,,694,694,694,712,712,712,', '712,,,,712,712,,,,712,,712,712,712,712,712,712,712,,,,,,712,712,712', '712,712,712,712,,,712,,,,,,,712,,,712,712,712,712,712,712,712,712,,712', '712,712,,712,712,,712,712,712,,,,,,,,,,,,,,,,,,,,712,,,712,,,712,712', ',,712,,,,,,712,,,,,,,,712,,,,,712,712,712,712,712,712,,,,712,712,,,', ',,,712,,,712,712,712,733,733,733,,733,,,,733,733,,,,733,,733,733,733', '733,733,733,733,,,,,,733,733,733,733,733,733,733,,,733,,,,,,,733,,,733', '733,733,733,733,733,733,733,,733,733,733,,733,733,,733,733,733,,,,,', ',,,,,,,,,,,,,,733,,,733,,,733,733,,,733,,733,,,,733,,,,,,,,733,,,,,733', '733,733,733,733,733,,,,733,733,,,,,,,733,,,733,733,733,739,739,739,', '739,,,,739,739,,,,739,,739,739,739,739,739,739,739,,,,,,739,739,739', '739,739,739,739,,,739,,,,,,,739,,,739,739,739,739,739,739,739,739,,739', '739,739,,739,739,,739,739,739,,,,,,,,,,,,,,,,,,,,739,,,739,,,739,739', ',,739,,,,,,739,,,,,,,,739,,,,,739,739,739,739,739,739,,,,739,739,,,', ',,,739,,,739,739,739,745,745,745,,745,,,,745,745,,,,745,,745,745,745', '745,745,745,745,,,,,,745,745,745,745,745,745,745,,,745,,,,,,,745,,,745', '745,745,745,745,745,745,745,745,745,745,745,,745,745,,745,745,745,,', ',,,,,,,,,,,,,,,,,745,,,745,,,745,745,,,745,,745,,745,,745,,,,,,,,745', ',,,,745,745,745,745,745,745,,,,745,745,,,,,,,745,,745,745,745,745,767', '767,767,,767,,,,767,767,,,,767,,767,767,767,767,767,767,767,,,,,,767', '767,767,767,767,767,767,,,767,,,,,,,767,,,767,767,767,767,767,767,767', '767,,767,767,767,,767,767,,767,767,767,,,,,,,,,,,,,,,,,,,,767,,,767', ',,767,767,,,767,,,,,,767,,,,,,,,767,,,,,767,767,767,767,767,767,,,,767', '767,,,,,,,767,,,767,767,767,769,769,769,,769,,,,769,769,,,,769,,769', '769,769,769,769,769,769,,,,,,769,769,769,769,769,769,769,,,769,,,,,', ',769,,,769,769,769,769,769,769,769,769,,769,769,769,,769,769,,769,769', '769,,,,,,,,,,,,,,,,,,,,769,,,769,,,769,769,,,769,,,,,,769,,,,,,,,769', ',,,,769,769,769,769,769,769,,,,769,769,,,,,,,769,,,769,769,769,783,783', '783,,783,,,,783,783,,,,783,,783,783,783,783,783,783,783,,,,,,783,783', '783,783,783,783,783,,,783,,,,,,,783,,,783,783,783,783,783,783,783,783', ',783,783,783,,783,783,,783,783,783,,,,,,,,,,,,,,,,,,,,783,,,783,,,783', '783,,,783,,,,,,783,,,,,,,,783,,,,,783,783,783,783,783,783,,,,783,783', ',,,,,,783,,,783,783,783,784,784,784,,784,,,,784,784,,,,784,,784,784', '784,784,784,784,784,,,,,,784,784,784,784,784,784,784,,,784,,,,,,,784', ',,784,784,784,784,784,784,784,784,,784,784,784,,784,784,,784,784,784', ',,,,,,,,,,,,,,,,,,,784,,,784,,,784,784,,,784,,,,,,784,,,,,,,,784,,,', ',784,784,784,784,784,784,,,,784,784,,,,,,,784,,,784,784,784,785,785', '785,,785,,,,785,785,,,,785,,785,785,785,785,785,785,785,,,,,,785,785', '785,785,785,785,785,,,785,,,,,,,785,,,785,785,785,785,785,785,785,785', ',785,785,785,,785,785,,785,785,785,,,,,,,,,,,,,,,,,,,,785,,,785,,,785', '785,,,785,,,,,,785,,,,,,,,785,,,,,785,785,785,785,785,785,,,,785,785', ',,,,,,785,,,785,785,785,786,786,786,,786,,,,786,786,,,,786,,786,786', '786,786,786,786,786,,,,,,786,786,786,786,786,786,786,,,786,,,,,,,786', ',,786,786,786,786,786,786,786,786,,786,786,786,,786,786,,786,786,786', ',,,,,,,,,,,,,,,,,,,786,,,786,,,786,786,,,786,,,,,,786,,,,,,,,786,,,', ',786,786,786,786,786,786,,,,786,786,,,,,,,786,,,786,786,786,788,788', '788,,788,,,,788,788,,,,788,,788,788,788,788,788,788,788,,,,,,788,788', '788,788,788,788,788,,,788,,,,,,,788,,,788,788,788,788,788,788,788,788', ',788,788,788,,788,788,,788,788,788,,,,,,,,,,,,,,,,,,,,788,,,788,,,788', '788,,,788,,,,,,788,,,,,,,,788,,,,,788,788,788,788,788,788,,,,788,788', ',,,,,,788,,,788,788,788,800,800,800,,800,,,,800,800,,,,800,,800,800', '800,800,800,800,800,,,,,,800,800,800,800,800,800,800,,,800,,,,,,,800', ',,800,800,800,800,800,800,800,800,,800,800,800,,800,800,,,,800,,,,,', ',,,,,,,,,,,,,,800,,,800,,,800,800,,,800,,,,,,,,,,,,,,,,,,,800,800,800', '800,800,800,,,,800,800,,,,,,,800,,,800,800,800,845,845,845,,845,,,,845', '845,,,,845,,845,845,845,845,845,845,845,,,,,,845,845,845,845,845,845', '845,,,845,,,,,,,845,,,845,845,845,845,845,845,845,845,,845,845,845,', '845,845,,845,845,845,,,,,,,,,,,,,,,,,,,,845,,,845,,,845,845,,,845,,', ',,,845,,,,,,,,845,,,,,845,845,845,845,845,845,,,,845,845,,,,,,,845,', ',845,845,845,858,858,858,,858,,,,858,858,,,,858,,858,858,858,858,858', '858,858,,,,,,858,858,858,858,858,858,858,,,858,,,,,,,858,,,858,858,858', '858,858,858,858,858,,858,858,858,,858,858,,858,858,858,,,,,,,,,,,,,', ',,,,,,858,,,858,,,858,858,,,858,,,,,,858,,,,,,,,858,,,,,858,858,858', '858,858,858,,,,858,858,,,,,,,858,,,858,858,858,876,876,876,,876,,,,876', '876,,,,876,,876,876,876,876,876,876,876,,,,,,876,876,876,876,876,876', '876,,,876,,,,,,,876,,,876,876,876,876,876,876,876,876,876,876,876,876', ',876,876,,876,876,876,,,,,,,,,,,,,,,,,,,,876,,,876,,,876,876,,,876,', ',,876,,876,,,,,,,,876,,,,,876,876,876,876,876,876,,,,876,876,,,,,,,876', ',876,876,876,876,877,877,877,,877,,,,877,877,,,,877,,877,877,877,877', '877,877,877,,,,,,877,877,877,877,877,877,877,,,877,,,,,,,877,,,877,877', '877,877,877,877,877,877,,877,877,877,,877,877,,877,877,877,,,,,,,,,', ',,,,,,,,,,877,,,877,,,877,877,,,877,,,,,,877,,,,,,,,877,,,,,877,877', '877,877,877,877,,,,877,877,,,,,,,877,,,877,877,877,892,892,892,,892', ',,,892,892,,,,892,,892,892,892,892,892,892,892,,,,,,892,892,892,892', '892,892,892,,,892,,,,,,,892,,,892,892,892,892,892,892,892,892,,892,892', '892,,892,892,,,,892,,,,,,,,,,,,,,,,,,,,892,,,892,,,892,892,,,892,,,', ',,,,,,,,,,,,,,,892,892,892,892,892,892,,,,892,892,,,,,,,892,,,892,892', '892,904,904,904,,904,,,,904,904,,,,904,,904,904,904,904,904,904,904', ',,,,,904,904,904,904,904,904,904,,,904,,,,,,,904,,,904,904,904,904,904', '904,904,904,,904,904,904,,904,904,,,,904,,,,,,,,,,,,,,,,,,,,904,,,904', ',,904,904,,,904,,,,,,,,,,,,,,,,,,,904,904,904,904,904,904,,,,904,904', ',,,,,,904,,,904,904,904,929,929,929,,929,,,,929,929,,,,929,,929,929', '929,929,929,929,929,,,,,,929,929,929,929,929,929,929,,,929,,,,,,,929', ',,929,929,929,929,929,929,929,929,,929,929,929,,929,929,,929,929,929', ',,,,,,,,,,,,,,,,,,,929,,,929,,,929,929,,,929,,929,,,,929,,,,,,,,929', ',,,,929,929,929,929,929,929,,,,929,929,,,,,,,929,,,929,929,929,1004', '1004,1004,,1004,,,,1004,1004,,,,1004,,1004,1004,1004,1004,1004,1004', '1004,,,,,,1004,1004,1004,1004,1004,1004,1004,,,1004,,,,,,,1004,,,1004', '1004,1004,1004,1004,1004,1004,1004,1004,1004,1004,1004,,1004,1004,,1004', '1004,1004,,,,,,,,,,,,,,,,,,,,1004,,,1004,,,1004,1004,,,1004,,1004,,1004', ',1004,,,,,,,,1004,,,,59,1004,1004,1004,1004,1004,1004,59,59,59,1004', '1004,59,59,59,,59,,1004,,1004,1004,1004,1004,,,59,59,59,,,,,,,,59,59', ',59,59,59,59,59,,,,,,,,,,,,,,,,,,,,,,,,59,59,59,59,59,59,59,59,59,59', '59,59,59,59,,,59,59,59,,,59,,,59,,,59,59,,59,,59,,59,,59,59,59,59,59', '59,59,,59,,59,,,,,,,,,,,,,59,59,59,59,436,59,,59,,,,436,436,436,,,436', '436,436,547,436,547,547,547,547,547,,,,436,436,436,436,,,547,,,,,436', '436,,436,436,436,436,436,,,,,,,,,,547,,,,,,,,,547,547,547,547,,436,436', '436,436,436,436,436,436,436,436,436,436,436,436,,,436,436,436,,,436', ',,436,,,436,436,,436,547,436,,436,,436,436,436,436,436,436,436,,436', '436,436,,,,,,,,,,,,,436,436,436,436,437,436,,436,,,,437,437,437,,,437', '437,437,600,437,600,600,600,600,600,,,,437,437,437,437,,,600,,,,,437', '437,,437,437,437,437,437,,,,,,,,,,600,600,,,,,,,,600,600,600,600,,437', '437,437,437,437,437,437,437,437,437,437,437,437,437,,,437,437,437,,', '437,,,437,,,437,437,,437,600,437,,437,,437,437,437,437,437,437,437,', '437,437,437,,,,,,,,,,,,,437,437,437,437,30,437,,437,,,,30,30,30,,,30', '30,30,706,30,706,706,706,706,706,,,,30,30,30,,,,706,,,,,30,30,,30,30', '30,30,30,,,,,,,,,,706,,,,,,,,,706,706,706,706,,30,30,30,30,30,30,30', '30,30,30,30,30,30,30,,,30,30,30,,,30,,30,30,,,30,30,,30,706,30,,30,', '30,30,30,30,30,30,30,,30,30,30,,,,,,,,,,,,31,30,30,,30,,30,31,31,31', ',,31,31,31,708,31,708,708,708,708,708,,,,,31,31,,,,708,,,,,31,31,,31', '31,31,31,31,,,,,,,,,,708,,,,,,,,,708,708,708,708,,31,31,31,31,31,31', '31,31,31,31,31,31,31,31,,,31,31,31,,,31,,31,31,,,31,31,,31,708,31,,31', ',31,31,31,31,31,31,31,,31,,31,,,,,,,,,,,,427,31,31,,31,,31,427,427,427', ',,427,427,427,753,427,753,753,753,753,753,,,,427,427,427,,,,753,,,,', '427,427,,427,427,427,427,427,,,,,,,,,,753,,,,,,,,,753,753,753,753,,427', '427,427,427,427,427,427,427,427,427,427,427,427,427,,,427,427,427,,', '427,,427,427,,,427,427,,427,753,427,,427,,427,427,427,427,427,427,427', ',427,427,427,,,,,,,,,,,,485,427,427,,427,,427,485,485,485,,,485,485', '485,,485,659,,659,659,659,659,659,,485,485,,,,,,,659,,,485,485,,485', '485,485,485,485,,,882,,882,882,882,882,882,,,659,,,,,,,882,,659,659', '659,659,,,,,,,,,,,485,,,,,,882,485,,,,,485,485,659,882,882,882,882,', ',,659,,211,211,,,211,,,,,,485,485,,211,211,,211,211,211,211,211,211', '211,,485,211,211,882,,485,211,211,211,211,,,,,,211,,,,,,,,211,211,,211', '211,211,211,211,211,211,211,211,211,211,,,211,,,,,,,,,,212,212,,,212', ',,,,,211,,,212,212,211,212,212,212,212,212,212,212,,,212,212,,,,212', '212,212,212,,,,,,212,,,,,,,,212,212,,212,212,212,212,212,212,212,212', '212,212,212,,885,212,885,885,885,885,885,,,,,261,261,,,261,885,,,,,212', ',,261,261,212,261,261,261,261,261,261,261,,,261,261,885,,,261,261,261', '261,,,885,885,885,885,,,,,,,,261,261,,261,261,261,261,261,261,261,261', '261,261,261,,,261,,,,,,,,,885,451,451,,,451,,,,,,261,,,451,451,261,451', '451,451,451,451,451,451,,,451,451,,,,451,451,451,451,,,,,,451,,,,,,', ',451,451,,451,451,451,451,451,451,451,451,451,451,451,,,451,,,,,,,,', ',452,452,,,452,,,,,,451,,,452,452,451,452,452,452,452,452,452,452,,', '452,452,,,,452,452,452,452,,,,,,452,,,,,,,,452,452,,452,452,452,452', '452,452,452,452,452,452,452,,,452,,,,,,,,,,518,518,,,518,,,,,,452,,', '518,518,452,518,518,518,518,518,518,518,,,518,518,,,,518,518,518,518', ',,,,,518,,,,,,,,518,518,,518,518,518,518,518,518,518,518,518,518,518', ',,518,,,,,,,,,,519,519,,,519,,,,,,518,,,519,519,518,519,519,519,519', '519,519,519,,,519,519,,,,519,519,519,519,,,,,,519,,,,,,,,519,519,,519', '519,519,519,519,519,519,519,519,519,519,,,519,,,,,,,,,,530,530,,,530', ',,,,,519,,,530,530,519,530,530,530,530,530,530,530,,,530,530,,,,530', '530,530,530,,,,,,530,,,,,,,,530,530,,530,530,530,530,530,530,530,530', '530,530,530,,,530,,,,,,,,,,531,531,,,531,,,,,,530,,,531,531,530,531', '531,531,531,531,531,531,,,531,531,,,,531,531,531,531,,,,,,531,,,,,,', ',531,531,,531,531,531,531,531,531,531,531,531,531,531,,,531,,,,,,,,', ',587,587,,,587,,,,,,531,,,587,587,531,587,587,587,587,587,587,587,,', '587,587,,,,587,587,587,587,,,,,,587,,,,,,,,587,587,,587,587,587,587', '587,587,587,587,587,587,587,,,587,,,,,,,,,,588,588,,,588,,,,,,587,,', '588,588,587,588,588,588,588,588,588,588,,,588,588,,,,588,588,588,588', ',,,,,588,,,,,,,,588,588,,588,588,588,588,588,588,588,588,588,588,588', ',,588,,,,,,,,,,743,743,,,743,,,,,,588,,,743,743,588,743,743,743,743', '743,743,743,,,743,743,,,,743,743,743,743,,,,,,743,,,,,,,,743,743,,743', '743,743,743,743,743,743,743,743,743,743,,,743,,,,,,,,,,744,744,,,744', ',,,,,743,,,744,744,743,744,744,744,744,744,744,744,,,744,744,,,,744', '744,744,744,,,,,,744,,,,,,,,744,744,,744,744,744,744,744,744,744,744', '744,744,744,,,744,,,,,,,,,,956,956,,,956,,,,,,744,,,956,956,744,956', '956,956,956,956,956,956,,,956,956,,,,956,956,956,956,,,,,,956,,,,,,', ',956,956,,956,956,956,956,956,956,956,956,956,956,956,,,956,,,,,,,,', ',1005,1005,,,1005,,,,,,956,,,1005,1005,956,1005,1005,1005,1005,1005', '1005,1005,,,1005,1005,,,,1005,1005,1005,1005,,,,,,1005,,,,,,,,1005,1005', ',1005,1005,1005,1005,1005,1005,1005,1005,1005,1005,1005,,,1005,,,,,', ',,,,1006,1006,,,1006,,,,,,1005,,,1006,1006,1005,1006,1006,1006,1006', '1006,1006,1006,,,1006,1006,,,,1006,1006,1006,1006,,,,,,1006,,,,,,,,1006', '1006,,1006,1006,1006,1006,1006,1006,1006,1006,1006,1006,1006,,910,1006', '910,910,910,910,910,939,,939,939,939,939,939,,,910,,,,,1006,,939,,989', '1006,989,989,989,989,989,,,,,,,910,,,989,,,,939,939,910,910,910,910', ',,,939,939,939,939,,,,,,989,,,,,,,,,989,989,989,989,,,,,,,,910,,,,,', ',939,,,,,,,,,,,,,,,,,,989' ] racc_action_check = arr = ::Array.new(25632, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end racc_action_pointer = [ nil, 10, 1732, 51, nil, 161, nil, nil, 5841, 779, nil, 779, 917, -51, nil, -75, 136, 200, 301, 112, 159, nil, -71, 5977, 2143, 239, nil, 105, nil, 150, 23889, 24014, 6113, 6249, 6385, nil, 1869, 6521, 6657, nil, 219, 308, 380, 305, 443, 6793, 6929, 7065, 281, 232, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23499, nil, 7201, 7337, 7473, -22, nil, 7609, 7745, nil, nil, 7881, 8017, 328, nil, 1055, nil, nil, nil, nil, nil, 104, nil, nil, nil, nil, nil, nil, 315, 319, 345, 353, 1193, nil, nil, nil, 0, nil, nil, 130, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 8153, nil, nil, nil, nil, 8289, 8425, 8561, 8697, 8833, 373, nil, 231, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 366, nil, 2006, 8969, 9105, 9241, 24315, 24388, nil, 9377, 9513, 9649, 9785, 9921, 10057, nil, nil, 318, -40, 45, 466, 92, 387, 446, nil, 10193, 2143, 470, 10329, 10465, 10601, 10737, 10873, 11009, 11145, 11281, 11417, 11553, 11689, 11825, 11961, 12097, 12233, 12369, 12505, 12641, 12777, 12913, 13049, 13185, 13321, 13457, 13593, 13729, nil, nil, 24461, nil, nil, 476, 13865, nil, 486, nil, nil, nil, 14001, nil, nil, 14137, nil, 2280, nil, 471, 473, nil, 14273, 522, 14409, nil, 14545, 14681, nil, nil, 180, nil, 917, 14817, 480, 2280, 498, 535, 501, 14953, 2417, 421, 463, 518, 577, 557, nil, 544, 520, -19, nil, nil, nil, 572, 497, 535, 15089, nil, 400, 608, 619, 606, nil, 621, nil, 15225, 2554, 555, nil, 599, nil, -91, 51, 611, 617, nil, 183, 644, nil, nil, 604, 608, -11, -10, 15361, 15497, 320, 726, 619, 6, 20, 818, 697, 22, 751, nil, nil, 15633, nil, 15769, 331, 388, 393, 422, 484, 600, 611, 651, 677, nil, 685, nil, nil, nil, nil, nil, 124, nil, 128, nil, 360, nil, 684, 292, nil, 719, 296, nil, 722, -42, nil, 736, -31, nil, 321, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 2691, 1331, nil, nil, nil, nil, 752, nil, 743, nil, 15905, 750, nil, 1869, 765, nil, nil, 763, 766, 414, 415, 24139, nil, nil, nil, 260, 385, 807, nil, nil, 23629, 23759, nil, 2417, nil, 758, nil, nil, 1732, nil, nil, nil, nil, -16, nil, 24534, 24607, 16041, 135, 16177, 16313, 16449, 4061, 4198, -50, 566, 833, 834, 843, 847, 673, 770, 908, 4335, 4472, 4609, 4746, 4883, 5020, 5157, 5294, 5431, 5568, 330, 655, 5705, 5841, 2554, -50, 24264, nil, nil, nil, nil, nil, nil, -43, -13, 790, 791, nil, nil, 16585, nil, nil, 16721, nil, 16857, nil, nil, nil, nil, 16993, 1055, 818, 816, nil, nil, 841, 17129, 845, 17265, 24680, 24753, 821, 883, nil, nil, 17401, 850, nil, 17537, 17673, 17809, 24826, 24899, 2691, 17945, 976, 986, 870, nil, nil, 18081, nil, nil, 18217, nil, nil, nil, 22, 23593, nil, 868, 874, nil, 880, 881, 888, nil, nil, nil, nil, nil, nil, 890, nil, 477, nil, 18353, nil, nil, nil, 982, nil, nil, nil, 984, nil, nil, 987, 2828, 1027, nil, 2965, 56, 60, 1027, 1038, nil, 18489, 24972, 25045, 32, nil, 201, 229, -3, nil, 951, nil, 10, 18625, nil, 23723, nil, 18761, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 310, nil, nil, 317, nil, nil, nil, 918, nil, nil, 919, nil, 939, nil, 1469, nil, 925, 18897, 19033, 416, 960, 19169, 19305, 19441, 19577, 984, nil, nil, nil, 19713, 19849, 985, nil, 19985, 20121, nil, 178, 185, 510, 640, 957, 2006, 983, nil, nil, 24230, nil, nil, 1086, -10, -11, nil, nil, nil, nil, 986, nil, 1028, 20257, nil, nil, 1193, 250, 20393, 988, nil, 992, 34, 90, 1039, 230, 956, 1053, 1015, 20529, 2828, 1080, 1081, -14, 1138, 20665, nil, nil, 348, nil, 3102, 3239, 1029, 221, nil, nil, 573, 23853, nil, 23978, nil, 6021, nil, 20801, nil, 510, nil, 1043, 321, nil, 1047, nil, nil, nil, nil, 751, nil, 1162, nil, nil, nil, nil, 1170, nil, 20937, 1054, 33, 36, 152, 154, 21073, nil, 959, nil, 25118, 25191, 21209, nil, nil, nil, 382, 769, 3376, 3513, 24103, 561, 1607, 156, 782, 3650, nil, nil, nil, nil, nil, nil, nil, 1052, 21345, 2965, 21481, nil, 1053, nil, 3102, nil, 3239, nil, nil, 3376, nil, 3513, nil, 3650, 21617, 21753, 21889, 22025, 217, 22161, 1056, 1059, nil, 1061, 1062, 1063, nil, 1084, 1093, 1089, 1081, 22297, nil, nil, 3787, nil, nil, nil, 3924, 4061, nil, nil, 1125, 186, nil, nil, 1248, nil, 4198, 1130, 1179, nil, nil, nil, 1155, 1263, 1147, 1150, nil, nil, nil, 1151, 1152, nil, 1153, 1155, nil, 1156, nil, 1160, 574, 1159, 517, nil, 1280, nil, 22433, 1281, 4335, 4472, nil, -7, 39, 63, 268, 1056, nil, 1167, 4609, 22569, nil, 595, 1296, 1297, 1182, nil, nil, nil, nil, nil, nil, nil, nil, 1196, 1181, nil, 3787, 22705, 22841, 3924, 249, nil, nil, 24259, nil, nil, 24450, nil, 6701, nil, nil, 1202, 923, 22977, 1036, 1257, 1304, 4746, 1201, 1306, nil, 4883, nil, nil, -8, 23113, nil, nil, nil, nil, nil, 25472, nil, 6837, nil, 6973, nil, 7109, nil, nil, nil, nil, 351, 644, 1187, nil, 19, nil, 1308, 1309, 23249, 5020, nil, nil, 1310, 707, nil, nil, nil, nil, 25479, nil, 1191, nil, nil, 1192, 1193, 1194, 1195, nil, 1196, nil, 413, nil, nil, nil, 1055, 25264, nil, nil, 1213, nil, nil, nil, 5157, 1057, 1089, 1090, 1273, 1092, nil, 1200, 1201, 1202, 1228, 1229, 813, 1230, 854, 5294, nil, nil, nil, 368, 5431, nil, nil, 5568, 5705, nil, 25497, nil, 7245, nil, 7517, nil, 7653, nil, nil, nil, 1198, 1280, 1281, nil, 1365, 23385, 25337, 25410, 1093, 7789, nil, nil, nil, nil, 951, 1244, 844, nil, nil, nil, 1365, 1375, 1376, 1258, 1259, 1260, 1261, nil, nil, 1265, 21, 22, 122, 1193, 1263, 1264, nil, nil, nil, nil, 7925, nil, nil, nil, nil, 33, nil, 1265, nil ] racc_action_default = [ -1, -618, -617, -618, -2, -604, -4, -5, -618, -8, -9, -618, -618, -618, -29, -618, -618, -618, -281, -618, -41, -44, -606, -618, -49, -51, -52, -53, -58, -260, -260, -260, -293, -332, -333, -70, -617, -74, -82, -84, -618, -513, -514, -618, -618, -618, -618, -618, -606, -241, -272, -273, -274, -275, -276, -277, -278, -279, -280, -593, -283, -606, -617, -617, -301, -404, -618, -618, -306, -309, -604, -618, -317, -324, -618, -334, -335, -446, -447, -448, -449, -450, -451, -617, -454, -617, -617, -617, -617, -617, -617, -617, -491, -497, -498, -591, -502, -503, -592, -505, -506, -507, -508, -509, -510, -511, -512, -517, -518, 1048, -3, -605, -613, -614, -615, -7, -618, -618, -618, -618, -618, -618, -17, -618, -113, -114, -115, -116, -117, -118, -119, -120, -121, -125, -126, -127, -128, -129, -130, -131, -132, -133, -134, -135, -136, -137, -138, -139, -140, -141, -142, -143, -144, -145, -146, -147, -148, -149, -150, -151, -152, -153, -154, -155, -156, -157, -158, -159, -160, -161, -162, -163, -164, -165, -166, -167, -168, -169, -170, -171, -172, -173, -174, -175, -176, -177, -178, -179, -180, -181, -182, -183, -184, -185, -186, -187, -188, -189, -190, -191, -192, -193, -194, -195, -196, -22, -122, -617, -618, -618, -617, -618, -618, -603, -618, -618, -618, -618, -618, -606, -607, -48, -618, -513, -514, -618, -281, -618, -618, -233, -618, -617, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -618, -410, -413, -618, -601, -602, -59, -618, -300, -618, -427, -430, -65, -617, -424, -66, -606, -67, -242, -255, -617, -617, -259, -618, -265, -618, -586, -618, -618, -68, -69, -604, -13, -14, -618, -72, -617, -606, -618, -75, -78, -617, -90, -91, -618, -618, -98, -293, -296, -606, -417, -332, -333, -336, -425, -618, -80, -618, -86, -290, -499, -500, -618, -218, -219, -234, -618, -617, -286, -285, -618, -243, -610, -610, -618, -618, -584, -610, -618, -302, -303, -545, -50, -618, -618, -618, -618, -604, -618, -605, -513, -514, -618, -618, -281, -618, -357, -358, -618, -320, -618, -113, -114, -156, -157, -158, -174, -179, -186, -189, -327, -618, -513, -514, -581, -582, -452, -618, -475, -618, -477, -618, -479, -618, -618, -459, -618, -618, -465, -618, -618, -471, -618, -618, -473, -618, -490, -492, -493, -494, -495, -6, -616, -23, -24, -25, -26, -27, -617, -618, -19, -20, -21, -123, -618, -30, -39, -40, -618, -618, -31, -199, -606, -250, -251, -617, -617, -594, -595, -260, -422, -596, -597, -595, -594, -260, -421, -423, -596, -597, -37, -207, -38, -618, -42, -43, -197, -265, -45, -46, -47, -606, -299, -618, -618, -617, -290, -618, -618, -618, -208, -209, -210, -211, -212, -213, -214, -215, -220, -221, -222, -223, -224, -225, -226, -227, -228, -229, -230, -231, -232, -235, -236, -237, -238, -606, -617, -260, -594, -595, -55, -60, -261, -418, -617, -617, -606, -606, -295, -256, -618, -264, -257, -618, -262, -618, -266, -589, -590, -12, -605, -16, -606, -71, -288, -87, -76, -618, -606, -617, -618, -618, -97, -618, -499, -500, -618, -83, -88, -618, -618, -618, -618, -618, -239, -618, -438, -618, -606, -608, -244, -612, -611, -246, -612, -291, -292, -585, -618, -545, -407, -580, -580, -528, -530, -530, -530, -544, -546, -547, -548, -549, -550, -551, -552, -618, -554, -618, -560, -562, -563, -565, -570, -572, -573, -575, -576, -577, -618, -617, -348, -349, -617, -618, -618, -618, -618, -433, -617, -618, -618, -290, -314, -108, -109, -618, -111, -618, -281, -618, -618, -325, -545, -329, -618, -453, -476, -481, -482, -484, -455, -478, -456, -480, -457, -458, -618, -461, -463, -618, -464, -467, -468, -618, -469, -470, -618, -496, -618, -18, -618, -28, -271, -618, -618, -426, -618, -252, -254, -618, -618, -61, -248, -249, -419, -618, -618, -63, -420, -618, -618, -298, -594, -595, -594, -595, -606, -197, -618, -393, -394, -606, -396, -411, -54, -414, -617, -428, -431, -247, -294, -617, -263, -267, -618, -587, -588, -15, -73, -618, -79, -85, -606, -594, -595, -617, -94, -96, -618, -81, -618, -206, -216, -217, -606, -617, -617, -284, -287, -610, -405, -617, -617, -606, -618, -526, -527, -618, -618, -537, -618, -540, -618, -542, -618, -359, -618, -361, -363, -370, -551, -606, -556, -564, -574, -578, -617, -350, -617, -307, -351, -352, -310, -618, -313, -618, -606, -594, -595, -598, -289, -618, -108, -109, -110, -618, -618, -617, -318, -519, -520, -618, -321, -617, -617, -545, -618, -618, -606, -618, -617, -460, -462, -466, -472, -474, -10, -124, -269, -618, -200, -618, -609, -617, -33, -202, -34, -203, -62, -35, -205, -36, -204, -64, -198, -618, -618, -618, -618, -426, -618, -580, -580, -375, -617, -617, -617, -392, -618, -606, -398, -551, -618, -558, -568, -617, -416, -415, -56, -617, -617, -258, -268, -77, -92, -89, -297, -617, -355, -617, -439, -617, -440, -441, -245, -618, -618, -606, -580, -561, -579, -529, -530, -530, -555, -530, -530, -571, -530, -566, -606, -618, -368, -618, -553, -618, -353, -618, -618, -617, -617, -312, -618, -426, -618, -108, -109, -112, -606, -617, -618, -522, -618, -618, -618, -606, -524, -330, -583, -483, -486, -487, -488, -489, -618, -270, -32, -201, -253, -618, -240, -618, -373, -374, -383, -377, -385, -618, -388, -618, -390, -395, -618, -618, -618, -557, -618, -618, -617, -618, -618, -11, -617, -445, -356, -618, -618, -443, -408, -409, -406, -525, -618, -533, -618, -535, -618, -538, -618, -541, -543, -360, -362, -366, -618, -371, -304, -618, -305, -618, -618, -618, -617, -315, -426, -618, -618, -322, -326, -328, -523, -545, -485, -580, -559, -376, -617, -617, -617, -617, -569, -617, -397, -606, -400, -402, -403, -567, -618, -290, -412, -618, -429, -432, -444, -617, -99, -100, -618, -618, -107, -442, -530, -530, -530, -530, -364, -618, -369, -618, -617, -308, -311, -267, -617, -617, -319, -521, -617, -617, -372, -618, -380, -618, -382, -618, -386, -618, -389, -391, -399, -618, -289, -598, -57, -438, -617, -618, -618, -106, -618, -531, -534, -536, -539, -618, -367, -617, -434, -435, -436, -618, -618, -618, -617, -617, -617, -617, -401, -437, -606, -594, -595, -598, -105, -530, -365, -354, -316, -323, -331, -618, -378, -381, -384, -387, -426, -532, -617, -379 ] clist = [ '6,218,277,277,277,211,368,427,433,337,17,535,420,272,584,500,17,260', '633,127,127,713,555,395,693,297,548,324,415,525,327,222,122,206,443', '440,114,577,580,261,222,222,222,752,17,302,302,130,130,9,314,132,132', '4,293,9,673,485,110,111,329,334,843,742,489,815,311,311,670,222,832', '670,835,494,222,222,727,730,222,350,221,376,127,378,380,383,386,389', '392,378,793,719,341,342,703,704,345,673,846,127,311,114,264,270,273', '295,538,541,278,278,278,545,661,952,1,920,279,279,279,17,665,666,794', '346,222,222,222,222,17,954,115,377,796,923,2,121,948,393,330,597,899', '599,401,402,403,404,331,335,205,355,407,275,287,288,614,604,664,617', '9,611,500,896,615,628,332,615,663,405,372,831,333,833,713,338,825,840', '353,746,369,325,277,536,343,847,344,848,739,983,450,356,857,673,598', '860,428,986,707,709,711,358,751,600,755,939,795,670,670,797,421,951', '451,546,698,855,976,17,222,222,222,339,437,1026,222,222,222,222,222', '222,484,678,555,803,492,399,701,277,807,954,687,17,948,277,838,496,277', '493,832,427,433,808,491,731,787,920,1016,654,733,819,903,374,375,379', '382,385,511,413,418,1014,388,421,890,438,442,222,835,391,499,499,812', '222,832,867,222,555,417,757,521,758,394,858,518,417,806,830,827,272', '942,713,602,713,17,,17,526,,1034,302,17,530,,514,,293,944,683,,,293', ',680,114,,,302,,,683,311,,,,,851,17,880,881,,,587,509,16,278,507,508', '311,945,16,931,946,279,278,222,222,1035,1017,,,,279,832,,,,510,595,', '595,,516,581,582,909,,970,16,,114,,,974,713,601,987,683,490,311,,311', '734,,,811,,495,760,,,760,583,634,,,,,6,809,,,,,641,,,,17,127,646,,649', ',,499,499,277,,640,,,627,,,673,,713,428,713,555,861,862,776,863,,,130', ',781,670,132,,16,,421,1022,9,932,,,626,16,,437,222,656,667,668,,443', ',641,,,713,,822,911,913,,915,917,676,918,,657,640,,679,988,277,,,657', '657,,1027,,,,,,,639,428,,526,,696,645,809,,,,,526,428,820,421,17,,,', ',,,302,,222,,437,,,,,302,,,,,,,437,683,222,,933,311,16,930,856,,,,,', '311,,675,277,,662,,,,,,,,,,,16,428,,,,,,,,,,,,669,,421,17,,296,17,,', ',,,222,,437,,,963,,,,,,,222,,805,,222,,728,728,1009,1010,1011,1012,', ',,978,555,697,,,1044,,747,,16,,16,634,,,127,16,798,,,,,,,222,222,,,765', '1018,222,222,,804,222,,,,634,,814,657,16,130,526,641,499,132,646,,,1020', '1021,,,813,1045,,,798,640,,,,302,,865,842,,,816,821,,772,774,302,790', ',,777,779,,,442,,311,17,17,,,,,634,,277,,311,,771,,,816,,816,866,,428', ',,,,,,,,,,,,826,,,421,16,,,222,,,,437,,222,,,,,412,17,17,,,127,,852', '17,,,499,417,,,,,,798,222,,,859,,296,,,864,,,,,883,883,883,,908,,,,', ',,683,,,,,1028,919,893,850,,17,,901,,17,17,905,,,,,,,,17,874,,,311,', ',938,,,634,,,,,,,29,,792,296,16,,29,,296,,,222,,17,17,,,,,,,29,,17,222', ',,,,925,29,29,29,,29,,,,,,,728,934,,,,,791,,935,,834,,836,,,,,955,29', ',,17,,29,29,17,,29,,966,,,16,,941,16,,790,311,,790,,790,,,,,998,,828', '311,336,828,,,17,,,,883,883,883,883,,883,,,,29,,,1005,,29,29,29,29,29', ',,,437,985,,19,,,,17,,19,277,,,,,,816,,,18,,,17,,428,18,,17,,,17,17', ',,,,,19,421,,,,,634,,884,886,888,222,816,437,,,18,304,304,883,883,883', '883,,,,790,,790,,790,,790,,,354,16,16,,,,,,883,,,29,29,29,29,,352,,29', '29,29,29,29,29,,,,,,,,,,,947,29,949,,,,19,790,,414,,,,,,19,445,,,16', '16,,18,,,971,16,972,,973,,18,,,,29,,,,828,,29,791,,29,791,,791,,,,,', ',,,,,724,,,726,29,,29,,,,,29,,16,326,,,16,16,340,340,,,340,502,,504', '16,505,506,,,,990,992,994,996,29,997,,,,,,19,,1023,,1024,,1025,,441', ',,29,29,16,16,,18,,,,,1033,,16,19,340,340,340,340,,,,,,,,,,,,18,,,,', ',,791,,791,,791,1046,791,,,,,,,,,16,,,,16,1040,1041,1042,1043,,,,29', ',,,823,824,,,,,,19,,19,,,,1047,19,,,,16,791,,,,18,,18,,,,304,18,,,,', ',,630,,,19,,,29,,,304,446,447,448,449,16,,,,,18,,,872,,,,,,,16,,,,,16', ',,16,16,,,,,,,,,,,,596,,596,,,,,,,,,29,41,,,,,895,41,,29,897,898,,,', ',,,,,902,671,,19,336,29,674,,,,,,,,,41,300,300,,18,,,,,,,,,,,927,928', ',,,,,,,,,,671,,,336,,,,29,348,,29,370,,,340,340,29,,,,,,,,,,720,,29', ',,,29,,,,,959,,,,962,,,,,,,41,,,,,,,,,41,,,,,,19,,,,29,29,,,982,,29', '29,,,29,,18,,,,,,,304,,,,,,766,,,304,671,336,,,,,,,1003,,,,,,,,,,,,', ',,1015,,,,,1019,,,,,29,29,,19,810,,19,,,,,,,,,41,,,,18,,,18,,,,818,', ',,,,,,,,,,,41,29,,,,837,,29,,,,,,29,29,,,,,,29,,,,,,445,,,,,29,,,441', ',692,,,,,,,,,,,,,,,,,,,,,,,,873,41,,41,,29,,300,41,29,29,,,,,,,,,29', '304,,,,300,,19,19,,,,304,,,41,,,,,,,750,18,18,,756,,29,42,29,29,,,,42', ',,,,29,29,,,,,370,,370,,,,,,,,,,,19,19,,,42,301,301,19,,,,,,,,,18,18', ',,29,,871,18,29,,,,,,,336,,,,,,41,,349,,,371,,,,,,,,,,19,,29,,19,19', ',,,,,,,596,19,,18,,,,18,18,,,,,,42,,,18,,981,,,29,42,,,,,,,,19,19,,', ',,29,,340,,19,29,,,29,29,18,18,,,,,,,,,18,,,,,,29,,,,,,,,,,,41,,,,,', '19,300,,,19,,,,969,,300,,596,,,,18,,,,18,,,,968,,,,,,42,,,,19,,,,,,', ',,,,,,,,,18,,,,42,,,,,,,,,41,,340,41,19,,,,,,,,,,,340,,,,19,18,,,,19', ',,19,19,,,,,,,18,,,,,18,,,18,18,,,,,,,,42,,42,,,,301,42,,,,,,,,,,,,', ',,,301,,,,,,,,,,42,,,,,,,,,,,,,,,300,,,,,,,,,,,300,,,,,371,,371,,,,41', '41,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,42,,,,,,,,41,41,,,,,,41', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,370,,,41,,,,41,41,,,,,,,,,41', ',,,,,,,,,,,,,,,,,,,,,,,,,,,42,,41,41,,,,301,,,,,41,,,,301,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,370,,,,41,,,229,41,,,,964,,,,276,276,276,,,,42,', ',42,,,,321,322,323,,,,,,,41,,,,,,,,276,276,,,,,,,,,,,,,,,,,,,,,,,,41', ',,,,,,,,,,,,,,41,,,,,41,,,41,41,,,,,,,,,,,,,,,,,,,,,,,,,,,301,,,,,,', ',,,,301,,,,,,,,,,,42,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,276,419,276,,42,42,439,444,,,,42,,,,,,,,,,,229,,,458,459,460,461,462', '463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479', '480,481,482,483,,,371,,,42,276,,,42,42,,276,,,276,,,,42,,,276,,276,', '276,276,,,,,,,,,,,,,,,,,,,,,,42,42,,,,,,,,,42,,,,,,532,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,371,,,,42,,,,42,,,,965,,,,,,,,,,,,,,,,,,,,,,,,,,42,,', ',,,,,,,,,,,,,,,,,,,,,,276,,,,,,,,42,,,,,,,,,,,,,,,42,,,,,42,,,42,42', ',,,,276,,439,655,419,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276,,,276', ',276,,,,,,,,,,,,,,276,,,,,,,,,,689,690,691,,,,,,,,,,276,,,276,,,,,,', ',,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,276,768,,,276,276,773,775,,,,,778,780,,,655,782', ',,,,,,,,,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,,', ',276,,,,,,,,,,,,,,,,,,,,,276,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,,,276', ',875,,,,,,,,,,,,,,773,775,780,778,,878,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276,875,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276' ] racc_goto_table = arr = ::Array.new(3228, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end clist = [ '6,34,36,36,36,27,60,40,40,87,24,10,25,72,93,74,24,151,26,61,61,129,181', '60,13,53,150,34,30,55,51,24,17,17,20,30,96,90,90,39,24,24,24,97,24,24', '24,64,64,9,54,65,65,2,49,9,194,40,5,8,6,6,91,58,42,14,67,67,75,24,185', '75,189,25,24,24,92,92,24,24,22,6,61,6,6,6,6,6,6,6,140,130,19,19,135', '135,19,194,14,61,67,96,41,41,41,50,70,70,69,69,69,70,43,145,1,128,71', '71,71,24,43,43,141,5,24,24,24,24,24,146,7,168,143,131,3,11,190,168,69', '59,15,59,19,19,19,19,71,71,18,21,33,48,48,48,171,172,45,171,9,172,74', '46,172,66,68,172,73,9,85,141,86,141,129,89,143,129,94,95,98,99,36,100', '101,102,103,104,105,106,51,107,108,194,109,110,72,111,183,183,183,112', '113,114,115,116,132,75,75,138,6,144,27,147,148,58,131,24,24,24,24,149', '61,145,24,24,24,24,24,24,152,55,181,153,156,7,150,36,157,146,55,24,190', '36,130,51,36,158,185,40,40,159,72,93,26,128,160,25,161,162,163,166,167', '169,170,173,51,22,22,131,174,6,143,22,22,24,189,175,6,6,26,24,185,176', '24,181,69,177,34,178,179,180,27,69,43,184,186,72,187,129,193,129,24', ',24,53,,131,24,24,27,,54,,49,140,40,,,49,,25,96,,,24,,,40,67,,,,,26', '24,135,135,,,27,9,23,69,5,8,67,141,23,92,141,71,69,24,24,91,14,,,,71', '185,,,,50,24,,24,,50,19,19,135,,141,23,,96,,,129,129,39,97,40,48,67', ',67,25,,,55,,48,172,,,172,5,34,,,,,6,74,,,,,72,,,,24,61,72,,51,,,6,6', '36,,6,,,17,,,194,,129,72,129,181,10,10,42,150,,,64,,42,75,65,,23,,6', '141,9,26,,,2,23,,61,24,34,51,51,,20,,72,,,129,,70,183,183,,183,183,51', '183,,6,6,,51,135,36,,,6,6,,13,,,,,,,41,72,,53,,51,41,74,,,,,53,72,30', '6,24,,,,,,,24,,24,,61,,,,,24,,,,,,,61,40,24,,10,67,23,90,25,,,,,,67', ',9,36,,41,,,,,,,,,,,23,72,,,,,,,,,,,,71,,6,24,,12,24,,,,,,24,,61,,,90', ',,,,,,24,,87,,24,,96,96,183,183,183,183,,,,90,181,71,,,26,,96,,23,,23', '34,,,61,23,34,,,,,,,24,24,,,17,93,24,24,,151,24,,,,34,,51,6,23,64,53', '72,6,65,72,,,10,10,,,53,183,,,34,6,,,,24,,60,51,,,6,6,,22,22,24,134', ',,22,22,,,22,,67,24,24,,,,,34,,36,,67,,71,,,6,,6,51,,72,,,,,,,,,,,,', '134,,,6,23,,,24,,,,61,,24,,,,,12,24,24,,,61,,19,24,,,6,69,,,,,,34,24', ',,96,,12,,,96,,,,,6,6,6,,51,,,,,,,40,,,,,25,51,24,69,,24,,6,,24,24,6', ',,,,,,,24,22,,,67,,,51,,,34,,,,,,,44,,139,12,23,,44,,12,,,24,,24,24', ',,,,,,44,,24,24,,,,,19,44,44,44,,44,,,,,,,96,19,,,,,136,,96,,139,,139', ',,,,24,44,,,24,,44,44,24,,44,,24,,,23,,134,23,,134,67,,134,,134,,,,', '34,,136,67,31,136,,,24,,,,6,6,6,6,,6,,,,44,,,27,,44,44,44,44,44,,,,61', '96,,29,,,,24,,29,36,,,,,,6,,,28,,,24,,72,28,,24,,,24,24,,,,,,29,6,,', ',,34,,137,137,137,24,6,61,,,28,28,28,6,6,6,6,,,,134,,134,,134,,134,', ',29,23,23,,,,,,6,,,44,44,44,44,,28,,44,44,44,44,44,44,,,,,,,,,,,139', '44,139,,,,29,134,,31,,,,,,29,31,,,23,23,,28,,,139,23,139,,139,,28,,', ',44,,,,136,,44,136,,44,136,,136,,,,,,,,,,,12,,,12,44,,44,,,,,44,,23', '32,,,23,23,32,32,,,32,31,,31,23,31,31,,,,137,137,137,137,44,137,,,,', ',29,,139,,139,,139,,29,,,44,44,23,23,,28,,,,,139,,23,29,32,32,32,32', ',,,,,,,,,,,28,,,,,,,136,,136,,136,139,136,,,,,,,,,23,,,,23,137,137,137', '137,,,,44,,,,12,12,,,,,,29,,29,,,,137,29,,,,23,136,,,,28,,28,,,,28,28', ',,,,,,31,,,29,,,44,,,28,32,32,32,32,23,,,,,28,,,12,,,,,,,23,,,,,23,', ',23,23,,,,,,,,,,,,28,,28,,,,,,,,,44,56,,,,,12,56,,44,12,12,,,,,,,,,12', '31,,29,31,44,31,,,,,,,,,56,56,56,,28,,,,,,,,,,,12,12,,,,,,,,,,,31,,', '31,,,,44,56,,44,56,,,32,32,44,,,,,,,,,,31,,44,,,,44,,,,,12,,,,12,,,', ',,,56,,,,,,,,,56,,,,,,29,,,,44,44,,,12,,44,44,,,44,,28,,,,,,,28,,,,', ',31,,,28,31,31,,,,,,,12,,,,,,,,,,,,,,,12,,,,,12,,,,,44,44,,29,31,,29', ',,,,,,,,56,,,,28,,,28,,,,31,,,,,,,,,,,,,56,44,,,,31,,44,,,,,,44,44,', ',,,,44,,,,,,31,,,,,44,,,29,,32,,,,,,,,,,,,,,,,,,,,,,,,31,56,,56,,44', ',56,56,44,44,,,,,,,,,44,28,,,,56,,29,29,,,,28,,,56,,,,,,,32,28,28,,32', ',44,57,44,44,,,,57,,,,,44,44,,,,,56,,56,,,,,,,,,,,29,29,,,57,57,57,29', ',,,,,,,,28,28,,,44,,28,28,44,,,,,,,31,,,,,,56,,57,,,57,,,,,,,,,,29,', '44,,29,29,,,,,,,,28,29,,28,,,,28,28,,,,,,57,,,28,,31,,,44,57,,,,,,,', '29,29,,,,,44,,32,,29,44,,,44,44,28,28,,,,,,,,,28,,,,,,44,,,,,,,,,,,56', ',,,,,29,56,,,29,,,,29,,56,,28,,,,28,,,,28,,,,28,,,,,,57,,,,29,,,,,,', ',,,,,,,,,28,,,,57,,,,,,,,,56,,32,56,29,,,,,,,,,,,32,,,,29,28,,,,29,', ',29,29,,,,,,,28,,,,,28,,,28,28,,,,,,,,57,,57,,,,57,57,,,,,,,,,,,,,,', ',57,,,,,,,,,,57,,,,,,,,,,,,,,,56,,,,,,,,,,,56,,,,,57,,57,,,,56,56,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,57,,,,,,,,56,56,,,,,,56,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,56,,,56,,,,56,56,,,,,,,,,56,,,', ',,,,,,,,,,,,,,,,,,,,,,,,57,,56,56,,,,57,,,,,56,,,,57,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,56,,,,56,,,35,56,,,,56,,,,35,35,35,,,,57,,,57,,,,35,35', '35,,,,,,,56,,,,,,,,35,35,,,,,,,,,,,,,,,,,,,,,,,,56,,,,,,,,,,,,,,,56', ',,,,56,,,56,56,,,,,,,,,,,,,,,,,,,,,,,,,,,57,,,,,,,,,,,57,,,,,,,,,,,57', '57,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,35,35,35,,57,57,35', '35,,,,57,,,,,,,,,,,35,,,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35', '35,35,35,35,35,35,35,35,35,35,35,,,57,,,57,35,,,57,57,,35,,,35,,,,57', ',,35,,35,,35,35,,,,,,,,,,,,,,,,,,,,,,57,57,,,,,,,,,57,,,,,,35,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,57,,,,57,,,,57,,,,57,,,,,,,,,,,,,,,,,,,,,,,,,', '57,,,,,,,,,,,,,,,,,,,,,,,,,35,,,,,,,,57,,,,,,,,,,,,,,,57,,,,,57,,,57', '57,,,,,35,,35,35,35,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,35,,,35', ',35,,,,,,,,,,,,,,35,,,,,,,,,,35,35,35,,,,,,,,,,35,,,35,,,,,,,,,,,,,', ',,,,,,,,,35,,,,,,,,,,,,,,,,,,,,,35,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,35,35,,,35,35,35,35,,,,,35,35,,,35,35,,,,,,,,,,,,,,,,,,,', ',,,,35,,,,,,,,,,,,,,,,,,,,,,35,,,,,,,,,,,,,,,,,,35,,,,,,,,,,,,,,,,,', ',,,35,,,,,,,,,,,,35,,,,,,,,,,,,,,,,,,,,,,35,,35,,,,,,,,,,,,,,35,35,35', '35,,35,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,35,35,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,35,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,35' ] racc_goto_check = arr = ::Array.new(3228, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end racc_goto_pointer = [ nil, 114, 51, 134, nil, 53, -2, 122, 54, 47, -314, 125, 551, -510, -628, -675, nil, 21, 136, 26, -181, 78, 57, 338, 8, -198, -402, -12, 981, 965, -180, 871, 1081, 28, -21, 2223, -30, nil, nil, 12, -204, 73, -200, -372, 840, -332, -645, nil, 119, 18, 69, -31, nil, -12, 12, -286, 1347, 1684, -530, -217, -68, 8, nil, nil, 36, 40, -248, 29, 102, 76, -224, 84, -17, -319, -264, -430, nil, nil, nil, nil, nil, nil, nil, nil, nil, 94, 107, -55, nil, 108, -304, -662, -505, -332, 105, -420, 31, -557, 104, 119, -145, 114, -544, 115, -545, -404, -744, 117, -556, -165, -557, -740, 126, -399, -167, -399, -662, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, -724, -542, -472, -708, -455, nil, 38, -455, 230, 217, -452, 185, -569, -537, nil, -527, -682, -778, -762, -128, -334, 154, -313, -8, -31, -430, nil, nil, -36, -429, -24, -417, -728, -329, -437, -561, nil, nil, 179, 177, 46, 175, 175, -228, -220, 175, 179, 185, -476, -321, -320, 197, -459, -317, nil, -356, -413, -636, -408, -583, nil, -636, -749, nil, nil, -75, -445 ] racc_goto_default = [ nil, nil, nil, nil, 5, nil, 290, 7, 347, 291, nil, nil, 534, nil, 844, nil, 289, nil, nil, nil, 14, 15, 21, 228, 320, nil, nil, 744, 226, 227, nil, 282, 20, nil, 328, 24, 25, 26, 27, nil, 686, nil, nil, nil, 308, nil, nil, 28, 422, 35, nil, nil, 37, 40, 39, nil, 223, 224, 594, nil, 129, 430, 128, 131, 78, 79, nil, 49, nil, 423, nil, 424, 435, 642, 497, 280, 265, 50, 51, 52, 53, 54, 55, 56, 57, 58, nil, 266, 64, nil, nil, nil, nil, nil, nil, nil, 578, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 715, 562, nil, 716, 943, 789, 550, nil, 551, nil, nil, 552, nil, 554, 658, nil, nil, nil, 560, nil, nil, nil, 754, nil, nil, nil, 434, 267, nil, nil, nil, nil, nil, nil, nil, nil, 77, 80, 82, nil, nil, nil, nil, nil, 609, nil, nil, nil, nil, nil, nil, nil, nil, 829, 549, nil, 553, 564, 566, 801, 569, 570, 802, 573, 576, nil, 284 ] racc_reduce_table = [ 0, 0, :racc_error, 0, 145, :_reduce_1, 2, 143, :_reduce_2, 2, 144, :_reduce_3, 1, 146, :_reduce_none, 1, 146, :_reduce_none, 3, 146, :_reduce_6, 2, 146, :_reduce_none, 1, 149, :_reduce_8, 0, 153, :_reduce_9, 5, 149, :_reduce_10, 4, 152, :_reduce_11, 2, 154, :_reduce_12, 1, 158, :_reduce_none, 1, 158, :_reduce_none, 3, 158, :_reduce_15, 2, 158, :_reduce_16, 0, 175, :_reduce_17, 4, 151, :_reduce_18, 3, 151, :_reduce_19, 3, 151, :_reduce_20, 3, 151, :_reduce_21, 2, 151, :_reduce_22, 3, 151, :_reduce_23, 3, 151, :_reduce_24, 3, 151, :_reduce_25, 3, 151, :_reduce_26, 3, 151, :_reduce_27, 4, 151, :_reduce_28, 1, 151, :_reduce_none, 3, 151, :_reduce_30, 3, 151, :_reduce_31, 6, 151, :_reduce_32, 5, 151, :_reduce_33, 5, 151, :_reduce_34, 5, 151, :_reduce_35, 5, 151, :_reduce_36, 3, 151, :_reduce_37, 3, 151, :_reduce_38, 3, 151, :_reduce_39, 3, 151, :_reduce_40, 1, 151, :_reduce_none, 3, 162, :_reduce_42, 3, 162, :_reduce_43, 1, 174, :_reduce_none, 3, 174, :_reduce_45, 3, 174, :_reduce_46, 3, 174, :_reduce_47, 2, 174, :_reduce_48, 1, 174, :_reduce_none, 1, 161, :_reduce_50, 1, 164, :_reduce_none, 1, 164, :_reduce_none, 1, 179, :_reduce_none, 4, 179, :_reduce_54, 0, 187, :_reduce_55, 0, 188, :_reduce_56, 6, 184, :_reduce_57, 1, 186, :_reduce_58, 2, 178, :_reduce_59, 3, 178, :_reduce_60, 4, 178, :_reduce_61, 5, 178, :_reduce_62, 4, 178, :_reduce_63, 5, 178, :_reduce_64, 2, 178, :_reduce_65, 2, 178, :_reduce_66, 2, 178, :_reduce_67, 2, 178, :_reduce_68, 2, 178, :_reduce_69, 1, 163, :_reduce_none, 3, 163, :_reduce_71, 1, 192, :_reduce_none, 3, 192, :_reduce_73, 1, 191, :_reduce_74, 2, 191, :_reduce_75, 3, 191, :_reduce_76, 5, 191, :_reduce_77, 2, 191, :_reduce_78, 4, 191, :_reduce_79, 2, 191, :_reduce_80, 4, 191, :_reduce_81, 1, 191, :_reduce_82, 3, 191, :_reduce_83, 1, 195, :_reduce_none, 3, 195, :_reduce_85, 2, 194, :_reduce_86, 3, 194, :_reduce_87, 1, 197, :_reduce_88, 3, 197, :_reduce_89, 1, 196, :_reduce_90, 1, 196, :_reduce_91, 4, 196, :_reduce_92, 3, 196, :_reduce_93, 3, 196, :_reduce_94, 3, 196, :_reduce_95, 3, 196, :_reduce_96, 2, 196, :_reduce_97, 1, 196, :_reduce_98, 1, 171, :_reduce_99, 1, 171, :_reduce_100, 4, 171, :_reduce_101, 3, 171, :_reduce_102, 3, 171, :_reduce_103, 3, 171, :_reduce_104, 3, 171, :_reduce_105, 2, 171, :_reduce_106, 1, 171, :_reduce_107, 1, 200, :_reduce_108, 1, 200, :_reduce_none, 2, 201, :_reduce_110, 1, 201, :_reduce_111, 3, 201, :_reduce_112, 1, 202, :_reduce_none, 1, 202, :_reduce_none, 1, 202, :_reduce_none, 1, 202, :_reduce_116, 1, 202, :_reduce_117, 1, 205, :_reduce_none, 1, 205, :_reduce_none, 1, 159, :_reduce_120, 1, 159, :_reduce_none, 1, 160, :_reduce_122, 0, 208, :_reduce_123, 4, 160, :_reduce_124, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 203, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 3, 177, :_reduce_197, 5, 177, :_reduce_198, 3, 177, :_reduce_199, 5, 177, :_reduce_200, 6, 177, :_reduce_201, 5, 177, :_reduce_202, 5, 177, :_reduce_203, 5, 177, :_reduce_204, 5, 177, :_reduce_205, 4, 177, :_reduce_206, 3, 177, :_reduce_207, 3, 177, :_reduce_208, 3, 177, :_reduce_209, 3, 177, :_reduce_210, 3, 177, :_reduce_211, 3, 177, :_reduce_212, 3, 177, :_reduce_213, 3, 177, :_reduce_214, 3, 177, :_reduce_215, 4, 177, :_reduce_216, 4, 177, :_reduce_217, 2, 177, :_reduce_218, 2, 177, :_reduce_219, 3, 177, :_reduce_220, 3, 177, :_reduce_221, 3, 177, :_reduce_222, 3, 177, :_reduce_223, 3, 177, :_reduce_224, 3, 177, :_reduce_225, 3, 177, :_reduce_226, 3, 177, :_reduce_227, 3, 177, :_reduce_228, 3, 177, :_reduce_229, 3, 177, :_reduce_230, 3, 177, :_reduce_231, 3, 177, :_reduce_232, 2, 177, :_reduce_233, 2, 177, :_reduce_234, 3, 177, :_reduce_235, 3, 177, :_reduce_236, 3, 177, :_reduce_237, 3, 177, :_reduce_238, 3, 177, :_reduce_239, 6, 177, :_reduce_240, 1, 177, :_reduce_none, 1, 173, :_reduce_242, 1, 210, :_reduce_none, 2, 210, :_reduce_244, 4, 210, :_reduce_245, 2, 210, :_reduce_246, 3, 214, :_reduce_247, 1, 215, :_reduce_none, 1, 215, :_reduce_none, 1, 167, :_reduce_250, 1, 167, :_reduce_251, 2, 167, :_reduce_252, 4, 167, :_reduce_253, 2, 167, :_reduce_254, 1, 190, :_reduce_255, 2, 190, :_reduce_256, 2, 190, :_reduce_257, 4, 190, :_reduce_258, 1, 190, :_reduce_259, 0, 218, :_reduce_260, 2, 183, :_reduce_261, 2, 217, :_reduce_262, 2, 216, :_reduce_263, 1, 216, :_reduce_none, 1, 211, :_reduce_265, 2, 211, :_reduce_266, 3, 211, :_reduce_267, 4, 211, :_reduce_268, 3, 172, :_reduce_269, 4, 172, :_reduce_270, 2, 172, :_reduce_271, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_none, 1, 209, :_reduce_282, 0, 241, :_reduce_283, 4, 209, :_reduce_284, 2, 209, :_reduce_285, 0, 242, :_reduce_286, 4, 209, :_reduce_287, 3, 209, :_reduce_288, 3, 209, :_reduce_289, 2, 209, :_reduce_290, 3, 209, :_reduce_291, 3, 209, :_reduce_292, 1, 209, :_reduce_293, 4, 209, :_reduce_294, 3, 209, :_reduce_295, 1, 209, :_reduce_296, 5, 209, :_reduce_297, 4, 209, :_reduce_298, 3, 209, :_reduce_299, 2, 209, :_reduce_300, 1, 209, :_reduce_none, 2, 209, :_reduce_302, 2, 209, :_reduce_303, 6, 209, :_reduce_304, 6, 209, :_reduce_305, 0, 243, :_reduce_306, 0, 244, :_reduce_307, 7, 209, :_reduce_308, 0, 245, :_reduce_309, 0, 246, :_reduce_310, 7, 209, :_reduce_311, 5, 209, :_reduce_312, 4, 209, :_reduce_313, 0, 247, :_reduce_314, 0, 248, :_reduce_315, 9, 209, :_reduce_316, 0, 249, :_reduce_317, 0, 250, :_reduce_318, 7, 209, :_reduce_319, 0, 251, :_reduce_320, 0, 252, :_reduce_321, 0, 253, :_reduce_322, 9, 209, :_reduce_323, 0, 254, :_reduce_324, 0, 255, :_reduce_325, 6, 209, :_reduce_326, 0, 256, :_reduce_327, 6, 209, :_reduce_328, 0, 257, :_reduce_329, 0, 258, :_reduce_330, 9, 209, :_reduce_331, 1, 209, :_reduce_332, 1, 209, :_reduce_333, 1, 209, :_reduce_334, 1, 209, :_reduce_335, 1, 166, :_reduce_336, 1, 259, :_reduce_none, 1, 260, :_reduce_none, 1, 261, :_reduce_none, 1, 262, :_reduce_none, 1, 263, :_reduce_none, 1, 264, :_reduce_none, 1, 265, :_reduce_none, 1, 266, :_reduce_none, 1, 267, :_reduce_none, 1, 268, :_reduce_none, 1, 269, :_reduce_none, 1, 232, :_reduce_none, 1, 232, :_reduce_none, 2, 232, :_reduce_none, 1, 234, :_reduce_none, 1, 234, :_reduce_none, 1, 233, :_reduce_none, 5, 233, :_reduce_354, 1, 156, :_reduce_none, 2, 156, :_reduce_356, 1, 236, :_reduce_none, 1, 236, :_reduce_358, 1, 270, :_reduce_none, 3, 270, :_reduce_360, 1, 273, :_reduce_361, 3, 273, :_reduce_362, 1, 272, :_reduce_363, 4, 272, :_reduce_364, 6, 272, :_reduce_365, 3, 272, :_reduce_366, 5, 272, :_reduce_367, 2, 272, :_reduce_368, 4, 272, :_reduce_369, 1, 272, :_reduce_370, 3, 272, :_reduce_371, 4, 274, :_reduce_372, 2, 274, :_reduce_373, 2, 274, :_reduce_374, 1, 274, :_reduce_375, 2, 279, :_reduce_376, 1, 279, :_reduce_none, 6, 280, :_reduce_378, 8, 280, :_reduce_379, 4, 280, :_reduce_380, 6, 280, :_reduce_381, 4, 280, :_reduce_382, 2, 280, :_reduce_383, 6, 280, :_reduce_384, 2, 280, :_reduce_385, 4, 280, :_reduce_386, 6, 280, :_reduce_387, 2, 280, :_reduce_388, 4, 280, :_reduce_389, 2, 280, :_reduce_390, 4, 280, :_reduce_391, 1, 280, :_reduce_392, 1, 185, :_reduce_393, 1, 185, :_reduce_none, 3, 284, :_reduce_395, 1, 284, :_reduce_396, 4, 284, :_reduce_397, 1, 285, :_reduce_none, 4, 285, :_reduce_399, 1, 286, :_reduce_400, 3, 286, :_reduce_401, 1, 287, :_reduce_402, 1, 287, :_reduce_none, 0, 291, :_reduce_404, 3, 231, :_reduce_405, 4, 289, :_reduce_406, 1, 289, :_reduce_407, 3, 290, :_reduce_408, 3, 290, :_reduce_409, 0, 294, :_reduce_410, 0, 295, :_reduce_411, 6, 293, :_reduce_412, 2, 180, :_reduce_413, 4, 180, :_reduce_414, 5, 180, :_reduce_415, 5, 180, :_reduce_416, 0, 297, :_reduce_417, 3, 230, :_reduce_418, 4, 230, :_reduce_419, 4, 230, :_reduce_420, 3, 230, :_reduce_421, 3, 230, :_reduce_422, 3, 230, :_reduce_423, 2, 230, :_reduce_424, 1, 230, :_reduce_425, 4, 230, :_reduce_426, 0, 298, :_reduce_427, 0, 299, :_reduce_428, 6, 229, :_reduce_429, 0, 300, :_reduce_430, 0, 301, :_reduce_431, 6, 229, :_reduce_432, 0, 303, :_reduce_433, 6, 235, :_reduce_434, 1, 302, :_reduce_none, 1, 302, :_reduce_none, 6, 155, :_reduce_437, 0, 155, :_reduce_438, 1, 304, :_reduce_439, 1, 304, :_reduce_none, 1, 304, :_reduce_none, 2, 305, :_reduce_442, 1, 305, :_reduce_none, 2, 157, :_reduce_444, 1, 157, :_reduce_none, 1, 219, :_reduce_446, 1, 219, :_reduce_447, 1, 219, :_reduce_none, 1, 220, :_reduce_449, 1, 307, :_reduce_450, 1, 307, :_reduce_none, 2, 307, :_reduce_452, 3, 308, :_reduce_453, 1, 308, :_reduce_454, 3, 221, :_reduce_455, 3, 222, :_reduce_456, 3, 223, :_reduce_457, 3, 223, :_reduce_458, 1, 312, :_reduce_459, 3, 312, :_reduce_460, 1, 313, :_reduce_none, 2, 313, :_reduce_462, 3, 225, :_reduce_463, 3, 225, :_reduce_464, 1, 315, :_reduce_465, 3, 315, :_reduce_466, 3, 224, :_reduce_467, 3, 224, :_reduce_468, 3, 226, :_reduce_469, 3, 226, :_reduce_470, 1, 316, :_reduce_471, 3, 316, :_reduce_472, 1, 317, :_reduce_473, 3, 317, :_reduce_474, 1, 309, :_reduce_475, 2, 309, :_reduce_476, 1, 310, :_reduce_477, 2, 310, :_reduce_478, 1, 311, :_reduce_479, 2, 311, :_reduce_480, 1, 314, :_reduce_481, 0, 319, :_reduce_482, 3, 314, :_reduce_483, 0, 320, :_reduce_484, 4, 314, :_reduce_485, 1, 318, :_reduce_486, 1, 318, :_reduce_487, 1, 318, :_reduce_488, 1, 318, :_reduce_none, 2, 206, :_reduce_490, 1, 206, :_reduce_491, 1, 321, :_reduce_none, 1, 321, :_reduce_none, 1, 321, :_reduce_none, 1, 321, :_reduce_none, 3, 207, :_reduce_496, 1, 306, :_reduce_none, 1, 306, :_reduce_none, 2, 306, :_reduce_499, 2, 306, :_reduce_500, 1, 198, :_reduce_none, 1, 198, :_reduce_none, 1, 198, :_reduce_none, 1, 198, :_reduce_none, 1, 198, :_reduce_none, 1, 199, :_reduce_506, 1, 199, :_reduce_507, 1, 199, :_reduce_508, 1, 199, :_reduce_509, 1, 199, :_reduce_510, 1, 199, :_reduce_511, 1, 199, :_reduce_512, 1, 227, :_reduce_513, 1, 227, :_reduce_514, 1, 165, :_reduce_515, 1, 165, :_reduce_516, 1, 170, :_reduce_517, 1, 170, :_reduce_518, 1, 237, :_reduce_519, 0, 322, :_reduce_520, 4, 237, :_reduce_521, 2, 237, :_reduce_522, 3, 239, :_reduce_523, 2, 239, :_reduce_524, 4, 323, :_reduce_525, 2, 323, :_reduce_526, 2, 323, :_reduce_527, 1, 323, :_reduce_none, 2, 325, :_reduce_529, 0, 325, :_reduce_530, 6, 292, :_reduce_531, 8, 292, :_reduce_532, 4, 292, :_reduce_533, 6, 292, :_reduce_534, 4, 292, :_reduce_535, 6, 292, :_reduce_536, 2, 292, :_reduce_537, 4, 292, :_reduce_538, 6, 292, :_reduce_539, 2, 292, :_reduce_540, 4, 292, :_reduce_541, 2, 292, :_reduce_542, 4, 292, :_reduce_543, 1, 292, :_reduce_544, 0, 292, :_reduce_545, 1, 288, :_reduce_546, 1, 288, :_reduce_547, 1, 288, :_reduce_548, 1, 288, :_reduce_549, 1, 271, :_reduce_none, 1, 271, :_reduce_551, 1, 327, :_reduce_none, 3, 327, :_reduce_553, 1, 281, :_reduce_554, 3, 281, :_reduce_555, 2, 328, :_reduce_556, 2, 329, :_reduce_557, 1, 275, :_reduce_none, 3, 275, :_reduce_559, 1, 324, :_reduce_none, 3, 324, :_reduce_561, 1, 330, :_reduce_none, 1, 330, :_reduce_none, 2, 276, :_reduce_564, 1, 276, :_reduce_565, 3, 331, :_reduce_566, 3, 332, :_reduce_567, 1, 282, :_reduce_568, 3, 282, :_reduce_569, 1, 326, :_reduce_570, 3, 326, :_reduce_571, 1, 333, :_reduce_none, 1, 333, :_reduce_none, 2, 283, :_reduce_574, 1, 283, :_reduce_575, 1, 334, :_reduce_none, 1, 334, :_reduce_none, 2, 278, :_reduce_578, 2, 277, :_reduce_579, 0, 277, :_reduce_580, 1, 240, :_reduce_none, 0, 335, :_reduce_582, 4, 240, :_reduce_583, 1, 228, :_reduce_584, 2, 228, :_reduce_585, 1, 213, :_reduce_none, 3, 213, :_reduce_587, 3, 336, :_reduce_588, 2, 336, :_reduce_589, 2, 336, :_reduce_590, 1, 189, :_reduce_none, 1, 189, :_reduce_none, 1, 189, :_reduce_none, 1, 182, :_reduce_none, 1, 182, :_reduce_none, 1, 182, :_reduce_none, 1, 182, :_reduce_none, 1, 296, :_reduce_none, 1, 296, :_reduce_none, 1, 296, :_reduce_none, 1, 181, :_reduce_none, 1, 181, :_reduce_none, 1, 169, :_reduce_none, 0, 147, :_reduce_none, 1, 147, :_reduce_none, 0, 176, :_reduce_none, 1, 176, :_reduce_none, 2, 193, :_reduce_none, 2, 168, :_reduce_none, 0, 212, :_reduce_none, 1, 212, :_reduce_none, 1, 212, :_reduce_none, 1, 238, :_reduce_613, 1, 238, :_reduce_none, 1, 150, :_reduce_none, 2, 150, :_reduce_616, 0, 148, :_reduce_617 ] racc_reduce_n = 618 racc_shift_n = 1048 racc_token_table = { false => 0, :error => 1, :kCLASS => 2, :kMODULE => 3, :kDEF => 4, :kUNDEF => 5, :kBEGIN => 6, :kRESCUE => 7, :kENSURE => 8, :kEND => 9, :kIF => 10, :kUNLESS => 11, :kTHEN => 12, :kELSIF => 13, :kELSE => 14, :kCASE => 15, :kWHEN => 16, :kWHILE => 17, :kUNTIL => 18, :kFOR => 19, :kBREAK => 20, :kNEXT => 21, :kREDO => 22, :kRETRY => 23, :kIN => 24, :kDO => 25, :kDO_COND => 26, :kDO_BLOCK => 27, :kDO_LAMBDA => 28, :kRETURN => 29, :kYIELD => 30, :kSUPER => 31, :kSELF => 32, :kNIL => 33, :kTRUE => 34, :kFALSE => 35, :kAND => 36, :kOR => 37, :kNOT => 38, :kIF_MOD => 39, :kUNLESS_MOD => 40, :kWHILE_MOD => 41, :kUNTIL_MOD => 42, :kRESCUE_MOD => 43, :kALIAS => 44, :kDEFINED => 45, :klBEGIN => 46, :klEND => 47, :k__LINE__ => 48, :k__FILE__ => 49, :k__ENCODING__ => 50, :tIDENTIFIER => 51, :tFID => 52, :tGVAR => 53, :tIVAR => 54, :tCONSTANT => 55, :tLABEL => 56, :tCVAR => 57, :tNTH_REF => 58, :tBACK_REF => 59, :tSTRING_CONTENT => 60, :tINTEGER => 61, :tFLOAT => 62, :tREGEXP_END => 63, :tUPLUS => 64, :tUMINUS => 65, :tUMINUS_NUM => 66, :tPOW => 67, :tCMP => 68, :tEQ => 69, :tEQQ => 70, :tNEQ => 71, :tGEQ => 72, :tLEQ => 73, :tANDOP => 74, :tOROP => 75, :tMATCH => 76, :tNMATCH => 77, :tDOT => 78, :tDOT2 => 79, :tDOT3 => 80, :tAREF => 81, :tASET => 82, :tLSHFT => 83, :tRSHFT => 84, :tCOLON2 => 85, :tCOLON3 => 86, :tOP_ASGN => 87, :tASSOC => 88, :tLPAREN => 89, :tLPAREN2 => 90, :tRPAREN => 91, :tLPAREN_ARG => 92, :tLBRACK => 93, :tLBRACK2 => 94, :tRBRACK => 95, :tLBRACE => 96, :tLBRACE_ARG => 97, :tSTAR => 98, :tSTAR2 => 99, :tAMPER => 100, :tAMPER2 => 101, :tTILDE => 102, :tPERCENT => 103, :tDIVIDE => 104, :tPLUS => 105, :tMINUS => 106, :tLT => 107, :tGT => 108, :tPIPE => 109, :tBANG => 110, :tCARET => 111, :tLCURLY => 112, :tRCURLY => 113, :tBACK_REF2 => 114, :tSYMBEG => 115, :tSTRING_BEG => 116, :tXSTRING_BEG => 117, :tREGEXP_BEG => 118, :tWORDS_BEG => 119, :tQWORDS_BEG => 120, :tSTRING_DBEG => 121, :tSTRING_DVAR => 122, :tSTRING_END => 123, :tSTRING => 124, :tSYMBOL => 125, :tNL => 126, :tEH => 127, :tCOLON => 128, :tCOMMA => 129, :tSPACE => 130, :tSEMI => 131, :tLAMBDA => 132, :tLAMBEG => 133, :tDSTAR => 134, :tCHAR => 135, :tSYMBOLS_BEG => 136, :tQSYMBOLS_BEG => 137, :tSTRING_DEND => 138, :tUBANG => 139, :tEQL => 140, :tLOWEST => 141 } racc_nt_base = 142 racc_use_result_var = true Racc_arg = [ racc_action_table, racc_action_check, racc_action_default, racc_action_pointer, racc_goto_table, racc_goto_check, racc_goto_default, racc_goto_pointer, racc_nt_base, racc_reduce_table, racc_token_table, racc_shift_n, racc_reduce_n, racc_use_result_var ] Racc_token_to_s_table = [ "$end", "error", "kCLASS", "kMODULE", "kDEF", "kUNDEF", "kBEGIN", "kRESCUE", "kENSURE", "kEND", "kIF", "kUNLESS", "kTHEN", "kELSIF", "kELSE", "kCASE", "kWHEN", "kWHILE", "kUNTIL", "kFOR", "kBREAK", "kNEXT", "kREDO", "kRETRY", "kIN", "kDO", "kDO_COND", "kDO_BLOCK", "kDO_LAMBDA", "kRETURN", "kYIELD", "kSUPER", "kSELF", "kNIL", "kTRUE", "kFALSE", "kAND", "kOR", "kNOT", "kIF_MOD", "kUNLESS_MOD", "kWHILE_MOD", "kUNTIL_MOD", "kRESCUE_MOD", "kALIAS", "kDEFINED", "klBEGIN", "klEND", "k__LINE__", "k__FILE__", "k__ENCODING__", "tIDENTIFIER", "tFID", "tGVAR", "tIVAR", "tCONSTANT", "tLABEL", "tCVAR", "tNTH_REF", "tBACK_REF", "tSTRING_CONTENT", "tINTEGER", "tFLOAT", "tREGEXP_END", "tUPLUS", "tUMINUS", "tUMINUS_NUM", "tPOW", "tCMP", "tEQ", "tEQQ", "tNEQ", "tGEQ", "tLEQ", "tANDOP", "tOROP", "tMATCH", "tNMATCH", "tDOT", "tDOT2", "tDOT3", "tAREF", "tASET", "tLSHFT", "tRSHFT", "tCOLON2", "tCOLON3", "tOP_ASGN", "tASSOC", "tLPAREN", "tLPAREN2", "tRPAREN", "tLPAREN_ARG", "tLBRACK", "tLBRACK2", "tRBRACK", "tLBRACE", "tLBRACE_ARG", "tSTAR", "tSTAR2", "tAMPER", "tAMPER2", "tTILDE", "tPERCENT", "tDIVIDE", "tPLUS", "tMINUS", "tLT", "tGT", "tPIPE", "tBANG", "tCARET", "tLCURLY", "tRCURLY", "tBACK_REF2", "tSYMBEG", "tSTRING_BEG", "tXSTRING_BEG", "tREGEXP_BEG", "tWORDS_BEG", "tQWORDS_BEG", "tSTRING_DBEG", "tSTRING_DVAR", "tSTRING_END", "tSTRING", "tSYMBOL", "tNL", "tEH", "tCOLON", "tCOMMA", "tSPACE", "tSEMI", "tLAMBDA", "tLAMBEG", "tDSTAR", "tCHAR", "tSYMBOLS_BEG", "tQSYMBOLS_BEG", "tSTRING_DEND", "tUBANG", "tEQL", "tLOWEST", "$start", "program", "top_compstmt", "@1", "top_stmts", "opt_terms", "none", "top_stmt", "terms", "stmt", "bodystmt", "@2", "compstmt", "opt_rescue", "opt_else", "opt_ensure", "stmts", "fitem", "undef_list", "expr_value", "command_asgn", "mlhs", "command_call", "var_lhs", "primary_value", "opt_call_args", "rbracket", "call_op", "backref", "lhs", "mrhs", "arg_value", "expr", "@3", "opt_nl", "arg", "command", "block_command", "block_call", "dot_or_colon", "operation2", "command_args", "cmd_brace_block", "opt_block_param", "fcall", "@4", "@5", "operation", "call_args", "mlhs_basic", "mlhs_inner", "rparen", "mlhs_head", "mlhs_item", "mlhs_node", "mlhs_post", "user_variable", "keyword_variable", "cname", "cpath", "fname", "op", "reswords", "fsym", "symbol", "dsym", "@6", "primary", "aref_args", "args", "trailer", "assocs", "paren_args", "opt_paren_args", "opt_block_arg", "block_arg", "@7", "literal", "strings", "xstring", "regexp", "words", "qwords", "symbols", "qsymbols", "var_ref", "assoc_list", "brace_block", "method_call", "lambda", "then", "if_tail", "do", "case_body", "for_var", "superclass", "term", "f_arglist", "singleton", "@8", "@9", "@10", "@11", "@12", "@13", "@14", "@15", "@16", "@17", "@18", "@19", "@20", "@21", "@22", "@23", "@24", "@25", "k_begin", "k_if", "k_unless", "k_while", "k_until", "k_case", "k_for", "k_class", "k_module", "k_def", "k_end", "f_marg", "f_norm_arg", "f_margs", "f_marg_list", "block_args_tail", "f_block_kwarg", "f_kwrest", "opt_f_block_arg", "f_block_arg", "opt_block_args_tail", "block_param", "f_arg", "f_block_optarg", "f_rest_arg", "block_param_def", "opt_bv_decl", "bv_decls", "bvar", "f_bad_arg", "f_larglist", "lambda_body", "@26", "f_args", "do_block", "@27", "@28", "operation3", "@29", "@30", "@31", "@32", "@33", "cases", "@34", "exc_list", "exc_var", "numeric", "string", "string1", "string_contents", "xstring_contents", "regexp_contents", "word_list", "word", "string_content", "symbol_list", "qword_list", "qsym_list", "string_dvar", "@35", "@36", "sym", "@37", "args_tail", "f_kwarg", "opt_args_tail", "f_optarg", "f_arg_item", "f_kw", "f_block_kw", "kwrest_mark", "f_opt", "f_block_opt", "restarg_mark", "blkarg_mark", "@38", "assoc" ] Racc_debug_parser = false ##### State transition tables end ##### # reduce 0 omitted def _reduce_1(val, _values, result) self.lexer.lex_state = :expr_beg result end def _reduce_2(val, _values, result) result = new_compstmt val result end def _reduce_3(val, _values, result) result = val[0] result end # reduce 4 omitted # reduce 5 omitted def _reduce_6(val, _values, result) result = self.block_append val[0], val[2] result end # reduce 7 omitted def _reduce_8(val, _values, result) result = val[0] # TODO: remove once I have more confidence this is fixed # result.each_of_type :call_args do |s| # debug20 666, s, result # end result end def _reduce_9(val, _values, result) if (self.in_def || self.in_single > 0) then debug20 1 yyerror "BEGIN in method" end self.env.extend result end def _reduce_10(val, _values, result) result = new_iter s(:preexe), nil, val[3] result end def _reduce_11(val, _values, result) result = new_body val result end def _reduce_12(val, _values, result) result = new_compstmt val result end # reduce 13 omitted # reduce 14 omitted def _reduce_15(val, _values, result) result = self.block_append val[0], val[2] result end def _reduce_16(val, _values, result) result = val[1] debug20 2, val, result result end def _reduce_17(val, _values, result) lexer.lex_state = :expr_fname result = self.lexer.lineno result end def _reduce_18(val, _values, result) result = s(:alias, val[1], val[3]).line(val[2]) result end def _reduce_19(val, _values, result) result = s(:valias, val[1].to_sym, val[2].to_sym) result end def _reduce_20(val, _values, result) result = s(:valias, val[1].to_sym, :"$#{val[2]}") result end def _reduce_21(val, _values, result) yyerror "can't make alias for the number variables" result end def _reduce_22(val, _values, result) result = val[1] result end def _reduce_23(val, _values, result) result = new_if val[2], val[0], nil result end def _reduce_24(val, _values, result) result = new_if val[2], nil, val[0] result end def _reduce_25(val, _values, result) result = new_while val[0], val[2], true result end def _reduce_26(val, _values, result) result = new_until val[0], val[2], true result end def _reduce_27(val, _values, result) result = s(:rescue, val[0], new_resbody(s(:array), val[2])) result end def _reduce_28(val, _values, result) if (self.in_def || self.in_single > 0) then debug20 3 yyerror "END in method; use at_exit" end result = new_iter s(:postexe), 0, val[2] result end # reduce 29 omitted def _reduce_30(val, _values, result) result = new_masgn val[0], val[2], :wrap result end def _reduce_31(val, _values, result) result = new_op_asgn val result end def _reduce_32(val, _values, result) result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5]) result end def _reduce_33(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym) if val[1] == '&.' result[0] = :safe_op_asgn end result.line = val[0].line result end def _reduce_34(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym) if val[1] == '&.' result[0] = :safe_op_asgn end result.line = val[0].line result end def _reduce_35(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2], val[3]) debug20 4, val, result result end def _reduce_36(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2], val[3]) debug20 5, val, result result end def _reduce_37(val, _values, result) self.backref_assign_error val[0] result end def _reduce_38(val, _values, result) result = new_assign val[0], s(:svalue, val[2]) result end def _reduce_39(val, _values, result) result = new_masgn val[0], val[2], :wrap result end def _reduce_40(val, _values, result) result = new_masgn val[0], val[2] result end # reduce 41 omitted def _reduce_42(val, _values, result) result = new_assign val[0], val[2] result end def _reduce_43(val, _values, result) result = new_assign val[0], val[2] result end # reduce 44 omitted def _reduce_45(val, _values, result) result = logical_op :and, val[0], val[2] result end def _reduce_46(val, _values, result) result = logical_op :or, val[0], val[2] result end def _reduce_47(val, _values, result) result = s(:call, val[2], :"!") result end def _reduce_48(val, _values, result) result = s(:call, val[1], :"!") result end # reduce 49 omitted def _reduce_50(val, _values, result) result = value_expr(val[0]) result end # reduce 51 omitted # reduce 52 omitted # reduce 53 omitted def _reduce_54(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_55(val, _values, result) self.env.extend(:dynamic) result = self.lexer.lineno result end def _reduce_56(val, _values, result) result = nil # self.env.dynamic.keys result end def _reduce_57(val, _values, result) result = new_iter nil, val[2], val[4] result.line = val[1] self.env.unextend result end def _reduce_58(val, _values, result) result = new_call nil, val[0].to_sym result end def _reduce_59(val, _values, result) result = val[0].concat val[1][1..-1] # REFACTOR pattern result end def _reduce_60(val, _values, result) result = val[0].concat val[1][1..-1] if val[2] then block_dup_check result, val[2] result, operation = val[2], result result.insert 1, operation end result end def _reduce_61(val, _values, result) result = new_call val[0], val[2].to_sym, val[3], val[1] result end def _reduce_62(val, _values, result) recv, _, msg, args, block = val call = new_call recv, msg.to_sym, args, val[1] block_dup_check call, block block.insert 1, call result = block result end def _reduce_63(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_64(val, _values, result) recv, _, msg, args, block = val call = new_call recv, msg.to_sym, args block_dup_check call, block block.insert 1, call result = block result end def _reduce_65(val, _values, result) result = new_super val[1] result end def _reduce_66(val, _values, result) result = new_yield val[1] result end def _reduce_67(val, _values, result) line = val[0].last result = s(:return, ret_args(val[1])).line(line) result end def _reduce_68(val, _values, result) line = val[0].last result = s(:break, ret_args(val[1])).line(line) result end def _reduce_69(val, _values, result) line = val[0].last result = s(:next, ret_args(val[1])).line(line) result end # reduce 70 omitted def _reduce_71(val, _values, result) result = val[1] result end # reduce 72 omitted def _reduce_73(val, _values, result) result = s(:masgn, s(:array, val[1])) result end def _reduce_74(val, _values, result) result = s(:masgn, val[0]) result end def _reduce_75(val, _values, result) result = s(:masgn, val[0] << val[1].compact) result end def _reduce_76(val, _values, result) result = s(:masgn, val[0] << s(:splat, val[2])) result end def _reduce_77(val, _values, result) ary1, _, splat, _, ary2 = val result = list_append ary1, s(:splat, splat) result.concat ary2[1..-1] result = s(:masgn, result) result end def _reduce_78(val, _values, result) result = s(:masgn, val[0] << s(:splat)) result end def _reduce_79(val, _values, result) ary = list_append val[0], s(:splat) ary.concat val[3][1..-1] result = s(:masgn, ary) result end def _reduce_80(val, _values, result) result = s(:masgn, s(:array, s(:splat, val[1]))) result end def _reduce_81(val, _values, result) ary = s(:array, s(:splat, val[1])) ary.concat val[3][1..-1] result = s(:masgn, ary) result end def _reduce_82(val, _values, result) result = s(:masgn, s(:array, s(:splat))) result end def _reduce_83(val, _values, result) result = s(:masgn, s(:array, s(:splat), *val[2][1..-1])) result end # reduce 84 omitted def _reduce_85(val, _values, result) result = val[1] result end def _reduce_86(val, _values, result) result = s(:array, val[0]) result end def _reduce_87(val, _values, result) result = val[0] << val[1].compact result end def _reduce_88(val, _values, result) result = s(:array, val[0]) result end def _reduce_89(val, _values, result) result = list_append val[0], val[2] result end def _reduce_90(val, _values, result) result = self.assignable val[0] result end def _reduce_91(val, _values, result) result = self.assignable val[0] result end def _reduce_92(val, _values, result) result = self.aryset val[0], val[2] result end def _reduce_93(val, _values, result) result = new_attrasgn val[0], val[2], val[1] result end def _reduce_94(val, _values, result) result = s(:attrasgn, val[0], :"#{val[2]}=") result end def _reduce_95(val, _values, result) result = new_attrasgn val[0], val[2], val[1] result end def _reduce_96(val, _values, result) if (self.in_def || self.in_single > 0) then debug20 7 yyerror "dynamic constant assignment" end result = s(:const, s(:colon2, val[0], val[2].to_sym), nil) result end def _reduce_97(val, _values, result) if (self.in_def || self.in_single > 0) then debug20 8 yyerror "dynamic constant assignment" end result = s(:const, nil, s(:colon3, val[1].to_sym)) result end def _reduce_98(val, _values, result) self.backref_assign_error val[0] result end def _reduce_99(val, _values, result) result = self.assignable val[0] result end def _reduce_100(val, _values, result) result = self.assignable val[0] debug20 9, val, result result end def _reduce_101(val, _values, result) result = self.aryset val[0], val[2] result end def _reduce_102(val, _values, result) result = new_attrasgn val[0], val[2], val[1] result end def _reduce_103(val, _values, result) result = s(:attrasgn, val[0], :"#{val[2]}=") result end def _reduce_104(val, _values, result) result = new_attrasgn val[0], val[2], val[1] result end def _reduce_105(val, _values, result) if (self.in_def || self.in_single > 0) then debug20 10 yyerror "dynamic constant assignment" end result = s(:const, s(:colon2, val[0], val[2].to_sym)) result end def _reduce_106(val, _values, result) if (self.in_def || self.in_single > 0) then debug20 11 yyerror "dynamic constant assignment" end result = s(:const, s(:colon3, val[1].to_sym)) result end def _reduce_107(val, _values, result) self.backref_assign_error val[0] result end def _reduce_108(val, _values, result) yyerror "class/module name must be CONSTANT" result end # reduce 109 omitted def _reduce_110(val, _values, result) result = s(:colon3, val[1].to_sym) result end def _reduce_111(val, _values, result) result = val[0].to_sym result end def _reduce_112(val, _values, result) result = s(:colon2, val[0], val[2].to_sym) result end # reduce 113 omitted # reduce 114 omitted # reduce 115 omitted def _reduce_116(val, _values, result) lexer.lex_state = :expr_end result = val[0] result end def _reduce_117(val, _values, result) lexer.lex_state = :expr_end result = val[0] result end # reduce 118 omitted # reduce 119 omitted def _reduce_120(val, _values, result) result = s(:lit, val[0].to_sym) result end # reduce 121 omitted def _reduce_122(val, _values, result) result = new_undef val[0] result end def _reduce_123(val, _values, result) lexer.lex_state = :expr_fname result end def _reduce_124(val, _values, result) result = new_undef val[0], val[3] result end # reduce 125 omitted # reduce 126 omitted # reduce 127 omitted # reduce 128 omitted # reduce 129 omitted # reduce 130 omitted # reduce 131 omitted # reduce 132 omitted # reduce 133 omitted # reduce 134 omitted # reduce 135 omitted # reduce 136 omitted # reduce 137 omitted # reduce 138 omitted # reduce 139 omitted # reduce 140 omitted # reduce 141 omitted # reduce 142 omitted # reduce 143 omitted # reduce 144 omitted # reduce 145 omitted # reduce 146 omitted # reduce 147 omitted # reduce 148 omitted # reduce 149 omitted # reduce 150 omitted # reduce 151 omitted # reduce 152 omitted # reduce 153 omitted # reduce 154 omitted # reduce 155 omitted # reduce 156 omitted # reduce 157 omitted # reduce 158 omitted # reduce 159 omitted # reduce 160 omitted # reduce 161 omitted # reduce 162 omitted # reduce 163 omitted # reduce 164 omitted # reduce 165 omitted # reduce 166 omitted # reduce 167 omitted # reduce 168 omitted # reduce 169 omitted # reduce 170 omitted # reduce 171 omitted # reduce 172 omitted # reduce 173 omitted # reduce 174 omitted # reduce 175 omitted # reduce 176 omitted # reduce 177 omitted # reduce 178 omitted # reduce 179 omitted # reduce 180 omitted # reduce 181 omitted # reduce 182 omitted # reduce 183 omitted # reduce 184 omitted # reduce 185 omitted # reduce 186 omitted # reduce 187 omitted # reduce 188 omitted # reduce 189 omitted # reduce 190 omitted # reduce 191 omitted # reduce 192 omitted # reduce 193 omitted # reduce 194 omitted # reduce 195 omitted # reduce 196 omitted def _reduce_197(val, _values, result) result = new_assign val[0], val[2] result end def _reduce_198(val, _values, result) result = new_assign val[0], s(:rescue, val[2], new_resbody(s(:array), val[4])) result end def _reduce_199(val, _values, result) result = new_op_asgn val result end def _reduce_200(val, _values, result) result = new_op_asgn val result = s(:rescue, result, new_resbody(s(:array), val[4])) result end def _reduce_201(val, _values, result) val[2][0] = :arglist if val[2] result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5]) result end def _reduce_202(val, _values, result) result = new_op_asgn2 val result end def _reduce_203(val, _values, result) result = new_op_asgn2 val result end def _reduce_204(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym) result end def _reduce_205(val, _values, result) yyerror "constant re-assignment" result end def _reduce_206(val, _values, result) yyerror "constant re-assignment" result end def _reduce_207(val, _values, result) self.backref_assign_error val[0] result end def _reduce_208(val, _values, result) v1, v2 = val[0], val[2] if v1.node_type == :lit and v2.node_type == :lit and Integer === v1.last and Integer === v2.last then result = s(:lit, (v1.last)..(v2.last)) else result = s(:dot2, v1, v2) end result end def _reduce_209(val, _values, result) v1, v2 = val[0], val[2] if v1.node_type == :lit and v2.node_type == :lit and Integer === v1.last and Integer === v2.last then result = s(:lit, (v1.last)...(v2.last)) else result = s(:dot3, v1, v2) end result end def _reduce_210(val, _values, result) result = new_call val[0], :+, argl(val[2]) result end def _reduce_211(val, _values, result) result = new_call val[0], :-, argl(val[2]) result end def _reduce_212(val, _values, result) result = new_call val[0], :*, argl(val[2]) result end def _reduce_213(val, _values, result) result = new_call val[0], :"/", argl(val[2]) result end def _reduce_214(val, _values, result) result = new_call val[0], :"%", argl(val[2]) result end def _reduce_215(val, _values, result) result = new_call val[0], :**, argl(val[2]) result end def _reduce_216(val, _values, result) result = new_call(new_call(s(:lit, val[1]), :"**", argl(val[3])), :"-@") result end def _reduce_217(val, _values, result) result = new_call(new_call(s(:lit, val[1]), :"**", argl(val[3])), :"-@") ## TODO: why is this 2.0 only? debug20 12, val, result result end def _reduce_218(val, _values, result) result = new_call val[1], :"+@" result end def _reduce_219(val, _values, result) result = new_call val[1], :"-@" result end def _reduce_220(val, _values, result) result = new_call val[0], :"|", argl(val[2]) result end def _reduce_221(val, _values, result) result = new_call val[0], :"^", argl(val[2]) result end def _reduce_222(val, _values, result) result = new_call val[0], :"&", argl(val[2]) result end def _reduce_223(val, _values, result) result = new_call val[0], :"<=>", argl(val[2]) result end def _reduce_224(val, _values, result) result = new_call val[0], :">", argl(val[2]) result end def _reduce_225(val, _values, result) result = new_call val[0], :">=", argl(val[2]) result end def _reduce_226(val, _values, result) result = new_call val[0], :"<", argl(val[2]) result end def _reduce_227(val, _values, result) result = new_call val[0], :"<=", argl(val[2]) result end def _reduce_228(val, _values, result) result = new_call val[0], :"==", argl(val[2]) result end def _reduce_229(val, _values, result) result = new_call val[0], :"===", argl(val[2]) result end def _reduce_230(val, _values, result) result = new_call val[0], :"!=", argl(val[2]) result end def _reduce_231(val, _values, result) result = new_match val[0], val[2] result end def _reduce_232(val, _values, result) result = s(:not, new_match(val[0], val[2])) result end def _reduce_233(val, _values, result) result = new_call val[1], :"!" result end def _reduce_234(val, _values, result) result = new_call value_expr(val[1]), :"~" result end def _reduce_235(val, _values, result) val[0] = value_expr val[0] val[2] = value_expr val[2] result = new_call val[0], :"\<\<", argl(val[2]) result end def _reduce_236(val, _values, result) val[0] = value_expr val[0] val[2] = value_expr val[2] result = new_call val[0], :">>", argl(val[2]) result end def _reduce_237(val, _values, result) result = logical_op :and, val[0], val[2] result end def _reduce_238(val, _values, result) result = logical_op :or, val[0], val[2] result end def _reduce_239(val, _values, result) result = s(:defined, val[2]) result end def _reduce_240(val, _values, result) result = s(:if, val[0], val[2], val[5]) result end # reduce 241 omitted def _reduce_242(val, _values, result) result = value_expr(val[0]) result end # reduce 243 omitted def _reduce_244(val, _values, result) result = args [val[0]] result end def _reduce_245(val, _values, result) result = args [val[0], array_to_hash(val[2])] result end def _reduce_246(val, _values, result) result = args [array_to_hash(val[0])] result end def _reduce_247(val, _values, result) result = val[1] result end # reduce 248 omitted # reduce 249 omitted def _reduce_250(val, _values, result) result = val[0] result end def _reduce_251(val, _values, result) result = val[0] result end def _reduce_252(val, _values, result) result = args val result end def _reduce_253(val, _values, result) result = args [val[0], array_to_hash(val[2])] result end def _reduce_254(val, _values, result) result = args [array_to_hash(val[0])] result end def _reduce_255(val, _values, result) warning "parenthesize argument(s) for future version" result = call_args val result end def _reduce_256(val, _values, result) result = call_args val result = self.arg_blk_pass val[0], val[1] result end def _reduce_257(val, _values, result) result = call_args [array_to_hash(val[0])] result = self.arg_blk_pass result, val[1] result end def _reduce_258(val, _values, result) result = call_args [val[0], array_to_hash(val[2])] result = self.arg_blk_pass result, val[3] result end def _reduce_259(val, _values, result) result = call_args val result end def _reduce_260(val, _values, result) result = lexer.cmdarg.stack.dup # TODO: smell? lexer.cmdarg.push true result end def _reduce_261(val, _values, result) lexer.cmdarg.stack.replace val[0] result = val[1] result end def _reduce_262(val, _values, result) result = s(:block_pass, val[1]) result end def _reduce_263(val, _values, result) result = val[1] result end # reduce 264 omitted def _reduce_265(val, _values, result) result = s(:array, val[0]) result end def _reduce_266(val, _values, result) result = s(:array, s(:splat, val[1])) result end def _reduce_267(val, _values, result) result = self.list_append val[0], val[2] result end def _reduce_268(val, _values, result) result = self.list_append val[0], s(:splat, val[3]) result end def _reduce_269(val, _values, result) result = val[0] << val[2] result end def _reduce_270(val, _values, result) result = self.arg_concat val[0], val[3] result end def _reduce_271(val, _values, result) result = s(:splat, val[1]) result end # reduce 272 omitted # reduce 273 omitted # reduce 274 omitted # reduce 275 omitted # reduce 276 omitted # reduce 277 omitted # reduce 278 omitted # reduce 279 omitted # reduce 280 omitted # reduce 281 omitted def _reduce_282(val, _values, result) result = new_call nil, val[0].to_sym result end def _reduce_283(val, _values, result) result = self.lexer.lineno result end def _reduce_284(val, _values, result) unless val[2] then result = s(:nil) else result = s(:begin, val[2]) end result.line = val[1] result end def _reduce_285(val, _values, result) debug20 13, val, result result end def _reduce_286(val, _values, result) lexer.lex_state = :expr_endarg result end def _reduce_287(val, _values, result) warning "(...) interpreted as grouped expression" result = val[1] result end def _reduce_288(val, _values, result) result = val[1] || s(:nil) result.paren = true result end def _reduce_289(val, _values, result) result = s(:colon2, val[0], val[2].to_sym) result end def _reduce_290(val, _values, result) result = s(:colon3, val[1].to_sym) result end def _reduce_291(val, _values, result) result = val[1] || s(:array) result[0] = :array # aref_args is :args result end def _reduce_292(val, _values, result) result = s(:hash, *val[1].values) # TODO: array_to_hash? result end def _reduce_293(val, _values, result) result = s(:return) result end def _reduce_294(val, _values, result) result = new_yield val[2] result end def _reduce_295(val, _values, result) result = new_yield result end def _reduce_296(val, _values, result) result = new_yield result end def _reduce_297(val, _values, result) result = s(:defined, val[3]) result end def _reduce_298(val, _values, result) result = s(:call, val[2], :"!") result end def _reduce_299(val, _values, result) debug20 14, val, result result end def _reduce_300(val, _values, result) oper, iter = val[0], val[1] call = oper # FIX iter.insert 1, call result = iter call.line = iter.line result end # reduce 301 omitted def _reduce_302(val, _values, result) call, iter = val[0], val[1] block_dup_check call, iter iter.insert 1, call # FIX result = iter result end def _reduce_303(val, _values, result) result = val[1] # TODO: fix lineno result end def _reduce_304(val, _values, result) result = new_if val[1], val[3], val[4] result end def _reduce_305(val, _values, result) result = new_if val[1], val[4], val[3] result end def _reduce_306(val, _values, result) lexer.cond.push true result end def _reduce_307(val, _values, result) lexer.cond.pop result end def _reduce_308(val, _values, result) result = new_while val[5], val[2], true result end def _reduce_309(val, _values, result) lexer.cond.push true result end def _reduce_310(val, _values, result) lexer.cond.pop result end def _reduce_311(val, _values, result) result = new_until val[5], val[2], true result end def _reduce_312(val, _values, result) (_, line), expr, _, body, _ = val result = new_case expr, body, line result end def _reduce_313(val, _values, result) (_, line), _, body, _ = val result = new_case nil, body, line result end def _reduce_314(val, _values, result) lexer.cond.push true result end def _reduce_315(val, _values, result) lexer.cond.pop result end def _reduce_316(val, _values, result) result = new_for val[4], val[1], val[7] result end def _reduce_317(val, _values, result) result = self.lexer.lineno result end def _reduce_318(val, _values, result) self.comments.push self.lexer.comments if (self.in_def || self.in_single > 0) then yyerror "class definition in method body" end self.env.extend result end def _reduce_319(val, _values, result) result = new_class val self.env.unextend self.lexer.comments # we don't care about comments in the body result end def _reduce_320(val, _values, result) result = self.lexer.lineno result end def _reduce_321(val, _values, result) result = self.in_def self.in_def = false result end def _reduce_322(val, _values, result) result = self.in_single self.in_single = 0 self.env.extend result end def _reduce_323(val, _values, result) result = new_sclass val self.env.unextend self.lexer.comments # we don't care about comments in the body result end def _reduce_324(val, _values, result) result = self.lexer.lineno result end def _reduce_325(val, _values, result) self.comments.push self.lexer.comments yyerror "module definition in method body" if self.in_def or self.in_single > 0 self.env.extend result end def _reduce_326(val, _values, result) result = new_module val self.env.unextend self.lexer.comments # we don't care about comments in the body result end def _reduce_327(val, _values, result) result = [self.in_def, self.lexer.cmdarg.stack.dup] self.comments.push self.lexer.comments self.in_def = true self.env.extend # TODO: local->cmdargs = cmdarg_stack; # TODO: port local_push_gen and local_pop_gen lexer.cmdarg.stack.replace [false] result end def _reduce_328(val, _values, result) in_def, cmdarg = val[2] result = new_defn val lexer.cmdarg.stack.replace cmdarg self.env.unextend self.in_def = in_def self.lexer.comments # we don't care about comments in the body result end def _reduce_329(val, _values, result) self.comments.push self.lexer.comments lexer.lex_state = :expr_fname result end def _reduce_330(val, _values, result) self.in_single += 1 self.env.extend lexer.lex_state = :expr_endfn # force for args result = lexer.lineno result end def _reduce_331(val, _values, result) result = new_defs val result[3].line val[5] self.env.unextend self.in_single -= 1 self.lexer.comments # we don't care about comments in the body result end def _reduce_332(val, _values, result) result = s(:break) result end def _reduce_333(val, _values, result) result = s(:next) result end def _reduce_334(val, _values, result) result = s(:redo) result end def _reduce_335(val, _values, result) result = s(:retry) result end def _reduce_336(val, _values, result) result = value_expr(val[0]) result end # reduce 337 omitted # reduce 338 omitted # reduce 339 omitted # reduce 340 omitted # reduce 341 omitted # reduce 342 omitted # reduce 343 omitted # reduce 344 omitted # reduce 345 omitted # reduce 346 omitted # reduce 347 omitted # reduce 348 omitted # reduce 349 omitted # reduce 350 omitted # reduce 351 omitted # reduce 352 omitted # reduce 353 omitted def _reduce_354(val, _values, result) result = s(:if, val[1], val[3], val[4]) result end # reduce 355 omitted def _reduce_356(val, _values, result) result = val[1] result end # reduce 357 omitted def _reduce_358(val, _values, result) val[0].delete_at 1 if val[0][1].nil? # HACK result end # reduce 359 omitted def _reduce_360(val, _values, result) result = val[1] result end def _reduce_361(val, _values, result) result = s(:array, val[0]) result end def _reduce_362(val, _values, result) result = list_append val[0], val[2] result end def _reduce_363(val, _values, result) args, = val result = block_var args result end def _reduce_364(val, _values, result) args, _, _, splat = val result = block_var args, "*#{splat}".to_sym result end def _reduce_365(val, _values, result) args, _, _, splat, _, args2 = val result = block_var args, "*#{splat}".to_sym, args2 result end def _reduce_366(val, _values, result) args, _, _ = val result = block_var args, :* result end def _reduce_367(val, _values, result) args, _, _, _, args2 = val result = block_var args, :*, args2 result end def _reduce_368(val, _values, result) _, splat = val result = block_var :"*#{splat}" result end def _reduce_369(val, _values, result) _, splat, _, args = val result = block_var :"*#{splat}", args result end def _reduce_370(val, _values, result) result = block_var :* result end def _reduce_371(val, _values, result) _, _, args = val result = block_var :*, args result end def _reduce_372(val, _values, result) result = call_args val result end def _reduce_373(val, _values, result) result = call_args val result end def _reduce_374(val, _values, result) result = call_args val result end def _reduce_375(val, _values, result) result = call_args val result end def _reduce_376(val, _values, result) result = args val result end # reduce 377 omitted def _reduce_378(val, _values, result) result = args val result end def _reduce_379(val, _values, result) result = args val result end def _reduce_380(val, _values, result) result = args val result end def _reduce_381(val, _values, result) result = args val result end def _reduce_382(val, _values, result) result = args val result end def _reduce_383(val, _values, result) result = args val result end def _reduce_384(val, _values, result) result = args val result end def _reduce_385(val, _values, result) result = args val result end def _reduce_386(val, _values, result) result = args val result end def _reduce_387(val, _values, result) result = args val result end def _reduce_388(val, _values, result) result = args val result end def _reduce_389(val, _values, result) result = args val result end def _reduce_390(val, _values, result) result = args val result end def _reduce_391(val, _values, result) result = args val result end def _reduce_392(val, _values, result) result = args val result end def _reduce_393(val, _values, result) result = 0 result end # reduce 394 omitted def _reduce_395(val, _values, result) result = args val result end def _reduce_396(val, _values, result) self.lexer.command_start = true result = s(:args) result end def _reduce_397(val, _values, result) result = args val result end # reduce 398 omitted def _reduce_399(val, _values, result) result = args val result end def _reduce_400(val, _values, result) result = args val result end def _reduce_401(val, _values, result) result = args val result end def _reduce_402(val, _values, result) result = s(:shadow, val[0].to_sym) result end # reduce 403 omitted def _reduce_404(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result = lexer.lpar_beg lexer.paren_nest += 1 lexer.lpar_beg = lexer.paren_nest result end def _reduce_405(val, _values, result) lpar, args, body = val lexer.lpar_beg = lpar call = new_call nil, :lambda result = new_iter call, args, body self.env.unextend result end def _reduce_406(val, _values, result) result = args val result end def _reduce_407(val, _values, result) result = val[0] result = 0 if result == s(:args) result end def _reduce_408(val, _values, result) result = val[1] result end def _reduce_409(val, _values, result) result = val[1] result end def _reduce_410(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_411(val, _values, result) result = nil # self.env.dynamic.keys result end def _reduce_412(val, _values, result) args = val[2] body = val[4] result = new_iter nil, args, body result.line = val[1] self.env.unextend result end def _reduce_413(val, _values, result) # TODO: ## if (nd_type($1) == NODE_YIELD) { ## compile_error(PARSER_ARG "block given to yield"); syntax_error "Both block arg and actual block given." if val[0].block_pass? val = invert_block_call val if inverted? val result = val[1] result.insert 1, val[0] result end def _reduce_414(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_415(val, _values, result) iter1, _, name, args, iter2 = val call = new_call iter1, name.to_sym, args iter2.insert 1, call result = iter2 result end def _reduce_416(val, _values, result) iter1, _, name, args, iter2 = val call = new_call iter1, name.to_sym, args iter2.insert 1, call result = iter2 result end def _reduce_417(val, _values, result) result = self.lexer.lineno result end def _reduce_418(val, _values, result) args = self.call_args val[2..-1] result = val[0].concat args[1..-1] result end def _reduce_419(val, _values, result) result = new_call val[0], val[2].to_sym, val[3], val[1] result end def _reduce_420(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_421(val, _values, result) result = new_call val[0], val[2].to_sym result end def _reduce_422(val, _values, result) result = new_call val[0], :call, val[2], val[1] result end def _reduce_423(val, _values, result) result = new_call val[0], :call, val[2] result end def _reduce_424(val, _values, result) result = new_super val[1] result end def _reduce_425(val, _values, result) result = s(:zsuper) result end def _reduce_426(val, _values, result) result = new_aref val result end def _reduce_427(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_428(val, _values, result) result = nil # self.env.dynamic.keys result end def _reduce_429(val, _values, result) _, line, args, _, body, _ = val result = new_iter nil, args, body result.line = line self.env.unextend result end def _reduce_430(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_431(val, _values, result) result = nil # self.env.dynamic.keys result end def _reduce_432(val, _values, result) _, line, args, _, body, _ = val result = new_iter nil, args, body result.line = line self.env.unextend result end def _reduce_433(val, _values, result) result = self.lexer.lineno result end def _reduce_434(val, _values, result) result = new_when(val[2], val[4]) result.line = val[1] result << val[5] if val[5] result end # reduce 435 omitted # reduce 436 omitted def _reduce_437(val, _values, result) _, klasses, var, _, body, rest = val klasses ||= s(:array) klasses << new_assign(var, s(:gvar, :"$!")) if var result = new_resbody(klasses, body) result << rest if rest # UGH, rewritten above result end def _reduce_438(val, _values, result) result = nil result end def _reduce_439(val, _values, result) result = s(:array, val[0]) result end # reduce 440 omitted # reduce 441 omitted def _reduce_442(val, _values, result) result = val[1] result end # reduce 443 omitted def _reduce_444(val, _values, result) _, body = val result = body || s(:nil) result end # reduce 445 omitted def _reduce_446(val, _values, result) result = s(:lit, val[0]) result end def _reduce_447(val, _values, result) result = s(:lit, val[0]) result end # reduce 448 omitted def _reduce_449(val, _values, result) val[0] = s(:dstr, val[0].value) if val[0][0] == :evstr result = val[0] result end def _reduce_450(val, _values, result) debug20 23, val, result result end # reduce 451 omitted def _reduce_452(val, _values, result) result = self.literal_concat val[0], val[1] result end def _reduce_453(val, _values, result) result = val[1] result end def _reduce_454(val, _values, result) result = new_string val result end def _reduce_455(val, _values, result) result = new_xstring val[1] result end def _reduce_456(val, _values, result) result = new_regexp val result end def _reduce_457(val, _values, result) result = s(:array) result end def _reduce_458(val, _values, result) result = val[1] result end def _reduce_459(val, _values, result) result = new_word_list result end def _reduce_460(val, _values, result) result = val[0].dup << new_word_list_entry(val) result end # reduce 461 omitted def _reduce_462(val, _values, result) result = self.literal_concat val[0], val[1] result end def _reduce_463(val, _values, result) result = s(:array) result end def _reduce_464(val, _values, result) result = val[1] result end def _reduce_465(val, _values, result) result = new_symbol_list result end def _reduce_466(val, _values, result) result = val[0].dup << new_symbol_list_entry(val) result end def _reduce_467(val, _values, result) result = s(:array) result end def _reduce_468(val, _values, result) result = val[1] result end def _reduce_469(val, _values, result) result = s(:array) result end def _reduce_470(val, _values, result) result = val[1] result end def _reduce_471(val, _values, result) result = new_qword_list result end def _reduce_472(val, _values, result) result = val[0].dup << new_qword_list_entry(val) result end def _reduce_473(val, _values, result) result = new_qsym_list result end def _reduce_474(val, _values, result) result = val[0].dup << new_qsym_list_entry(val) result end def _reduce_475(val, _values, result) result = s(:str, "") result end def _reduce_476(val, _values, result) result = literal_concat(val[0], val[1]) result end def _reduce_477(val, _values, result) result = nil result end def _reduce_478(val, _values, result) result = literal_concat(val[0], val[1]) result end def _reduce_479(val, _values, result) result = nil result end def _reduce_480(val, _values, result) result = literal_concat(val[0], val[1]) result end def _reduce_481(val, _values, result) result = new_string val result end def _reduce_482(val, _values, result) result = lexer.lex_strterm lexer.lex_strterm = nil lexer.lex_state = :expr_beg # TODO: expr_value ? result end def _reduce_483(val, _values, result) lexer.lex_strterm = val[1] result = s(:evstr, val[2]) result end def _reduce_484(val, _values, result) result = [lexer.lex_strterm, lexer.brace_nest, lexer.string_nest, # TODO: remove lexer.cond.store, lexer.cmdarg.store, lexer.lex_state, ] lexer.lex_strterm = nil lexer.brace_nest = 0 lexer.string_nest = 0 lexer.lex_state = :expr_value result end def _reduce_485(val, _values, result) # TODO: tRCURLY -> tSTRING_DEND _, memo, stmt, _ = val lex_strterm, brace_nest, string_nest, oldcond, oldcmdarg, oldlex_state = memo lexer.lex_strterm = lex_strterm lexer.brace_nest = brace_nest lexer.string_nest = string_nest lexer.cond.restore oldcond lexer.cmdarg.restore oldcmdarg lexer.lex_state = oldlex_state case stmt when Sexp then case stmt[0] when :str, :dstr, :evstr then result = stmt else result = s(:evstr, stmt) end when nil then result = s(:evstr) else debug20 25 raise "unknown string body: #{stmt.inspect}" end result end def _reduce_486(val, _values, result) result = s(:gvar, val[0].to_sym) result end def _reduce_487(val, _values, result) result = s(:ivar, val[0].to_sym) result end def _reduce_488(val, _values, result) result = s(:cvar, val[0].to_sym) result end # reduce 489 omitted def _reduce_490(val, _values, result) lexer.lex_state = :expr_end result = val[1].to_sym result end def _reduce_491(val, _values, result) result = val[0].to_sym result end # reduce 492 omitted # reduce 493 omitted # reduce 494 omitted # reduce 495 omitted def _reduce_496(val, _values, result) lexer.lex_state = :expr_end result = val[1] result ||= s(:str, "") case result[0] when :dstr then result[0] = :dsym when :str then result = s(:lit, result.last.to_sym) when :evstr then result = s(:dsym, "", result) else debug20 26, val, result end result end # reduce 497 omitted # reduce 498 omitted def _reduce_499(val, _values, result) result = -val[1] # TODO: pt_testcase result end def _reduce_500(val, _values, result) result = -val[1] # TODO: pt_testcase result end # reduce 501 omitted # reduce 502 omitted # reduce 503 omitted # reduce 504 omitted # reduce 505 omitted def _reduce_506(val, _values, result) result = s(:nil) result end def _reduce_507(val, _values, result) result = s(:self) result end def _reduce_508(val, _values, result) result = s(:true) result end def _reduce_509(val, _values, result) result = s(:false) result end def _reduce_510(val, _values, result) result = s(:str, self.file) result end def _reduce_511(val, _values, result) result = s(:lit, lexer.lineno) result end def _reduce_512(val, _values, result) result = if defined? Encoding then s(:colon2, s(:const, :Encoding), :UTF_8) else s(:str, "Unsupported!") end result end def _reduce_513(val, _values, result) var = val[0] result = Sexp === var ? var : self.gettable(var) result end def _reduce_514(val, _values, result) var = val[0] result = Sexp === var ? var : self.gettable(var) result end def _reduce_515(val, _values, result) result = self.assignable val[0] result end def _reduce_516(val, _values, result) result = self.assignable val[0] debug20 29, val, result result end def _reduce_517(val, _values, result) result = s(:nth_ref, val[0]) result end def _reduce_518(val, _values, result) result = s(:back_ref, val[0]) result end def _reduce_519(val, _values, result) result = nil result end def _reduce_520(val, _values, result) lexer.lex_state = :expr_beg result end def _reduce_521(val, _values, result) result = val[2] result end def _reduce_522(val, _values, result) yyerrok result = nil debug20 30, val, result result end def _reduce_523(val, _values, result) result = val[1] self.lexer.lex_state = :expr_beg self.lexer.command_start = true # TODO: # $$ = parser->parser_in_kwarg; # parser->parser_in_kwarg = 1; result end def _reduce_524(val, _values, result) # TODO: parser->parser_in_kwarg = $1; result = val[0] self.lexer.lex_state = :expr_beg self.lexer.command_start = true result end def _reduce_525(val, _values, result) result = args val result end def _reduce_526(val, _values, result) result = args val result end def _reduce_527(val, _values, result) result = args val result end # reduce 528 omitted def _reduce_529(val, _values, result) result = val[1] result end def _reduce_530(val, _values, result) result = nil result end def _reduce_531(val, _values, result) result = args val result end def _reduce_532(val, _values, result) result = args val result end def _reduce_533(val, _values, result) result = args val result end def _reduce_534(val, _values, result) result = args val result end def _reduce_535(val, _values, result) result = args val result end def _reduce_536(val, _values, result) result = args val result end def _reduce_537(val, _values, result) result = args val result end def _reduce_538(val, _values, result) result = args val result end def _reduce_539(val, _values, result) result = args val result end def _reduce_540(val, _values, result) result = args val result end def _reduce_541(val, _values, result) result = args val result end def _reduce_542(val, _values, result) result = args val result end def _reduce_543(val, _values, result) result = args val result end def _reduce_544(val, _values, result) result = args val result end def _reduce_545(val, _values, result) result = args val result end def _reduce_546(val, _values, result) yyerror "formal argument cannot be a constant" result end def _reduce_547(val, _values, result) yyerror "formal argument cannot be an instance variable" result end def _reduce_548(val, _values, result) yyerror "formal argument cannot be a global variable" result end def _reduce_549(val, _values, result) yyerror "formal argument cannot be a class variable" result end # reduce 550 omitted def _reduce_551(val, _values, result) identifier = val[0].to_sym self.env[identifier] = :lvar result = identifier result end # reduce 552 omitted def _reduce_553(val, _values, result) result = val[1] result end def _reduce_554(val, _values, result) case val[0] when Symbol then result = s(:args) result << val[0] when Sexp then result = val[0] else debug20 32 raise "Unknown f_arg type: #{val.inspect}" end result end def _reduce_555(val, _values, result) list, _, item = val if list.sexp_type == :args then result = list else result = s(:args, list) end result << item result end def _reduce_556(val, _values, result) # TODO: call_args label, _ = val[0] # TODO: fix lineno? identifier = label.to_sym self.env[identifier] = :lvar result = s(:array, s(:kwarg, identifier, val[1])) result end def _reduce_557(val, _values, result) # TODO: call_args label, _ = val[0] # TODO: fix lineno? identifier = label.to_sym self.env[identifier] = :lvar result = s(:array, s(:kwarg, identifier, val[1])) result end # reduce 558 omitted def _reduce_559(val, _values, result) list, _, item = val result = list << item.last result end # reduce 560 omitted def _reduce_561(val, _values, result) result = args val result end # reduce 562 omitted # reduce 563 omitted def _reduce_564(val, _values, result) result = :"**#{val[1]}" result end def _reduce_565(val, _values, result) result = :"**" result end def _reduce_566(val, _values, result) result = self.assignable val[0], val[2] # TODO: detect duplicate names result end def _reduce_567(val, _values, result) result = self.assignable val[0], val[2] result end def _reduce_568(val, _values, result) result = s(:block, val[0]) result end def _reduce_569(val, _values, result) result = val[0] result << val[2] result end def _reduce_570(val, _values, result) result = s(:block, val[0]) result end def _reduce_571(val, _values, result) result = self.block_append val[0], val[2] result end # reduce 572 omitted # reduce 573 omitted def _reduce_574(val, _values, result) # TODO: differs from parse.y - needs tests name = val[1].to_sym self.assignable name result = :"*#{name}" result end def _reduce_575(val, _values, result) name = :"*" self.env[name] = :lvar result = name result end # reduce 576 omitted # reduce 577 omitted def _reduce_578(val, _values, result) identifier = val[1].to_sym self.env[identifier] = :lvar result = "&#{identifier}".to_sym result end def _reduce_579(val, _values, result) result = val[1] result end def _reduce_580(val, _values, result) result = nil result end # reduce 581 omitted def _reduce_582(val, _values, result) lexer.lex_state = :expr_beg result end def _reduce_583(val, _values, result) result = val[2] yyerror "Can't define single method for literals." if result[0] == :lit result end def _reduce_584(val, _values, result) result = s(:array) result end def _reduce_585(val, _values, result) result = val[0] result end # reduce 586 omitted def _reduce_587(val, _values, result) list = val[0].dup more = val[2][1..-1] list.push(*more) unless more.empty? result = list result[0] = :hash # TODO: shouldn't this be a hash? result end def _reduce_588(val, _values, result) result = s(:array, val[0], val[2]) result end def _reduce_589(val, _values, result) result = s(:array, s(:lit, val[0][0].to_sym), val[1]) result end def _reduce_590(val, _values, result) result = s(:array, s(:kwsplat, val[1])) result end # reduce 591 omitted # reduce 592 omitted # reduce 593 omitted # reduce 594 omitted # reduce 595 omitted # reduce 596 omitted # reduce 597 omitted # reduce 598 omitted # reduce 599 omitted # reduce 600 omitted # reduce 601 omitted # reduce 602 omitted # reduce 603 omitted # reduce 604 omitted # reduce 605 omitted # reduce 606 omitted # reduce 607 omitted # reduce 608 omitted # reduce 609 omitted # reduce 610 omitted # reduce 611 omitted # reduce 612 omitted def _reduce_613(val, _values, result) yyerrok result end # reduce 614 omitted # reduce 615 omitted def _reduce_616(val, _values, result) yyerrok result end def _reduce_617(val, _values, result) result = nil; result end def _reduce_none(val, _values, result) val[0] end end # class Ruby20Parser