# # 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 = [ '-289,-102,578,620,-101,578,269,-289,-289,-289,996,750,-289,-289,-289', '269,-289,-101,623,219,216,217,216,217,-85,240,-289,-289,-289,537,-103', '-104,539,578,578,-71,-289,-289,109,-289,-289,-289,-289,-289,-104,578', '-107,878,405,-100,818,83,584,407,406,220,-99,237,-95,84,-106,239,238', '701,659,207,619,-289,-289,-289,-289,-289,-289,-289,-289,-289,-289,-289', '-289,-289,-289,622,730,-289,-289,-289,730,787,-289,-102,730,-289,269', '268,-289,-289,-595,-289,658,-289,-101,-289,268,-289,-289,-289,-289,-289', '-289,-289,220,-289,220,-289,-93,-102,113,749,-101,113,-102,112,-92,-101', '112,-95,-289,-289,-289,-289,-599,-289,208,-289,-103,-94,113,-599,-599', '-599,-105,112,-599,-599,-599,-104,-599,113,113,-95,-104,-98,112,112', '-91,-599,-599,-599,-599,113,-95,-90,930,-95,112,-97,-599,-599,700,-599', '-599,-599,-599,-599,-95,216,217,537,-105,268,539,-93,113,113,604,269', '113,112,112,659,113,112,741,209,-93,112,742,-599,-599,-599,-599,-599', '-599,-599,-599,-599,-599,-599,-599,-599,-599,-427,-595,-599,-599,-599', '-93,786,-599,-93,215,-599,-592,658,-599,-599,452,-599,524,-599,-93,-599', '659,-599,-599,-599,-599,-599,-599,-599,259,-599,-599,-599,-596,606,605', '612,-103,604,-418,-517,659,-103,-599,-593,-599,-599,-599,-599,-599,-599', '316,-599,-427,220,658,-599,-599,-599,-103,-427,268,-599,-599,-502,-599', '801,317,-107,-427,-106,-502,-96,113,-599,658,-592,566,112,220,-502,354', '-599,378,-516,-599,-599,-427,-599,-599,-599,-599,-599,-100,564,-509', '-599,-505,-592,606,605,617,-509,-599,-505,566,216,217,-595,-593,574', '573,-599,-505,784,785,-599,-599,-599,-599,-599,-599,-599,-599,-599,-599', '-599,-599,-599,-599,-599,-593,-599,-599,-599,-599,643,-99,574,573,-599', '113,-599,-599,567,604,112,-595,-599,381,-599,-599,-599,-599,-599,-599', '-599,-599,-599,604,-599,-599,-599,604,-508,604,384,-102,-104,-599,214', '-508,567,604,-289,-599,-599,770,-94,-502,-599,-289,-289,-289,387,-507', '-502,-289,-289,-103,-289,719,-507,557,556,555,719,558,557,556,555,604', '558,403,609,408,606,605,602,451,-289,-289,-98,-289,-289,-289,-289,-289', '524,-92,606,605,453,-107,606,605,606,605,624,760,-101,-510,262,762,606', '605,607,220,-510,263,1000,-289,-289,-289,-289,-289,-289,-289,-289,-289', '-289,-289,-289,-289,-289,454,637,-289,-289,-289,-97,642,606,605,219', '-289,485,113,-289,976,271,-106,112,-289,842,-289,636,-289,-289,-289', '-289,-289,-289,-289,240,-289,213,-289,-514,-513,-517,-516,113,587,495', '-514,-513,112,-95,-502,-289,-289,585,-96,-514,-289,-502,-502,-502,-104', '-511,-502,-502,-502,-105,-502,237,-511,-93,537,239,238,536,-502,262', '-502,-502,-502,498,-102,-515,263,-91,-90,500,-502,-502,-515,-502,-502', '-502,-502,-502,-100,-99,-70,-515,220,213,509,719,-512,557,556,555,1007', '558,719,-512,557,556,555,537,558,1005,539,-502,-502,-502,-502,-502,-502', '-502,-502,-502,-502,-502,-502,-502,-502,846,818,-502,-502,-502,-281', '-502,-502,715,510,-502,517,-281,-502,-502,715,-502,922,-502,274,-502', '-281,-502,-502,-502,-502,-502,-502,-502,220,-502,271,-502,521,719,-281', '557,556,555,113,558,525,-281,526,112,-502,-502,-502,-502,-505,-502,-281', '-502,-505,216,217,-505,-505,-505,-502,-505,-505,-505,-505,560,-505,557', '556,555,564,558,-514,715,-505,113,-505,-505,-505,-514,112,566,718,846', '818,240,-505,-505,-514,-505,-505,-505,-505,-505,-289,534,954,540,557', '556,555,-289,558,562,754,719,-596,557,556,555,-289,558,571,570,574,573', '584,-505,-505,-505,-505,-505,-505,-505,-505,-505,-505,-505,-505,-505', '-505,397,240,-505,-505,-505,588,-505,-505,574,573,-505,589,715,-505', '-505,611,-505,567,-505,240,-505,718,-505,-505,-505,-505,-505,-505,-505', '615,-505,618,-505,237,216,217,621,239,238,235,236,519,520,318,319,-505', '-505,-505,-505,628,-505,237,-505,216,217,239,238,235,236,-505,174,185', '175,198,171,191,181,180,201,202,196,179,178,173,199,203,204,183,172', '186,190,192,184,177,-265,630,220,193,200,195,194,187,197,182,170,189', '188,116,117,118,119,120,169,176,167,168,164,165,166,124,126,634,635', '125,271,954,240,557,556,555,646,558,158,159,240,154,136,137,138,145', '142,144,254,255,139,140,240,240,240,160,161,146,147,719,220,557,556', '555,237,558,220,220,239,238,235,236,151,150,-85,135,157,153,152,148', '149,143,141,133,156,134,676,220,162,-290,530,-515,687,693,213,694,-290', '715,-515,220,719,744,557,556,555,-290,558,-515,155,697,746,500,703,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,715,706,707,193,200,195,194,187,197,182', '170,189,188,116,117,118,119,120,169,176,167,168,164,165,166,124,126', '709,711,125,869,870,240,713,871,107,108,722,158,159,723,154,136,137', '138,145,142,144,254,255,139,140,724,726,584,160,161,146,147,719,733', '557,556,555,237,558,243,763,239,238,235,236,151,150,764,135,157,153', '152,148,149,143,141,133,156,134,765,-266,162,91,771,213,485,485,213', '220,789,715,957,92,719,449,557,556,555,259,558,746,155,498,450,500,687', '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,715,220,271,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,271,125,687,240,240,116,117,118,119,120,158,159,240,154,136', '137,138,145,142,144,254,255,139,140,818,220,840,160,161,146,147,220', '818,850,220,-267,237,877,243,880,239,238,235,236,151,150,706,135,157', '153,152,148,149,143,141,133,156,134,-290,883,162,91,213,-289,886,-290', '-290,888,890,516,-289,92,220,-290,-290,-596,892,893,514,-289,155,687', '-290,901,-265,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,905,907,908,193,200,195', '363,362,364,361,170,189,188,220,706,911,913,915,169,176,167,168,358', '359,360,356,126,97,96,357,917,99,917,213,220,923,925,927,158,159,528', '154,136,137,138,145,142,144,220,450,139,140,213,-289,-337,160,161,146', '147,212,-289,-337,937,938,370,-596,220,941,210,-289,-337,-268,151,150', '951,135,157,153,152,148,149,143,141,133,156,134,213,958,162,959,961', '962,978,957,980,981,985,706,990,992,994,996,746,996,1003,1008,1009,917', '155,917,917,1014,978,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,-596,-595,693,193', '200,195,194,187,197,182,170,189,188,978,1037,1038,1039,1040,169,176', '167,168,164,165,166,124,126,996,996,125,996,220,917,978,3,,,,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,394,393,125,,395,,,,,,,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,,,,,647,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,,,,,647,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,,,,,631,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,,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,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,220,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,,,,,,,,', ',,,,,,,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,-619,-619,-619,-619,246,248,,,-619,-619,,,,,,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,-619,-619,-619,-619,246,248,,,-619,-619,,,,,,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,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,,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,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,-619,-619', '-619,-619,246,248,,,-619,-619,,,,,,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,-619,-619,-619', '-619,246,248,,,-619,-619,,,,,,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,-619,-619,-619,-619', '246,248,,,-619,-619,,,,,,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,,-619,-619,,,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,-619,-619,-619,-619', '246,248,,,-619,-619,,,,,,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', ',,,,,,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,,-619,-619,,,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,,,,,,,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,,719,63,557,556,555,801,558,47,,,,,,,,230,566,,,,91,83', '85,86,87,89,,,,84,92,,,,,,,65,562,,81,88,90,72,73,74,,60,,574,573,66', '67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101,100,102,103,,,22,,', ',567,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44', ',,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,719,63,557,556,555,801,558,47', ',,,,,,,23,566,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,562,,81,88,90,72', '73,74,,60,,574,573,66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,101', '100,102,103,,,232,,,,567,,,48,,,105,104,106,95,59,97,96,98,285,99,107', '108,,93,94,,45,46,44,240,,,,,,,,,,,,,,,,254,255,,225,,,231,,,61,62,', ',63,,283,237,281,243,47,239,238,235,236,,,241,230,242,,,,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,,719,63,557,556,555,564,558,47,,,,,,,,230', '566,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,562,,81,88,90,72,73,74,,60', ',574,573,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100', '102,103,,,232,,,,567,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,', '93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,719,63,557,556', '555,564,558,47,,,,,,,,230,566,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65', '562,,81,88,90,72,73,74,,60,,574,573,66,67,,,,70,,68,69,71,33,34,75,76', ',,,,,32,31,30,101,100,102,103,,,232,,,,567,,,48,,,105,104,106,95,59', '97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,', ',61,62,,719,63,557,556,555,564,558,47,,,,,,,,230,566,,,,91,83,85,86', '87,89,,,,84,92,,,,,,,65,562,,81,88,90,72,73,74,,60,,574,573,66,67,,', ',70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,', ',,567,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44', ',,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,719,63,557,556,555,564,558,47', ',,,,,,,230,566,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,562,,81,88,90', '72,73,74,,60,,574,573,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306', '312,101,100,102,103,,,232,,,,567,,,48,,,105,104,106,95,59,97,96,98,', '99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,719', '63,557,556,555,801,558,47,,,,,,,,230,566,,,,91,83,85,86,87,89,,,,84', '92,,,,,,,65,562,,81,88,90,72,73,74,,60,,574,573,66,67,,,,70,,68,69,71', '309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,567,,,48,,,105', '104,106,95,59,97,96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,', ',,,225,,,231,,,61,62,,719,63,557,556,555,801,558,47,,,,,,,,230,566,', ',,91,83,85,86,87,89,,,,84,92,,,,,,,65,562,,81,88,90,72,73,74,,60,,574', '573,66,67,,,,70,,68,69,71,309,310,75,76,,,,,,305,306,312,101,100,102', '103,,,232,,,,567,,,48,,,105,104,106,95,59,97,96,98,,99,107,108,,93,94', ',45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,719,63,557,556,555,801', '558,47,,,,,,,,230,566,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,562,,81', '88,90,72,73,74,,60,,574,573,66,67,,,,70,,68,69,71,309,310,75,76,,,,', ',305,306,312,101,100,102,103,,,232,,,,567,,,48,,,105,104,106,95,59,97', '96,98,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61', '62,,719,63,557,556,555,564,558,47,,,,,,,,230,566,,,,91,83,85,86,87,89', ',,,84,92,,,,,,,65,562,,81,88,90,72,73,74,,60,,574,573,66,67,,,,70,,68', '69,71,309,310,75,76,,,,,,305,306,312,101,100,102,103,,,232,,,,567,,', '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,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,,,,,,,,,,,,,,,', ',,,,895,,,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,,,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,,,,,,,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,,,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,,,63,,,,,,,,,,,,,,,,', ',,91,83,85,86,87,89,,,,84,92,,,,315,,,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,,,,512,,,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,,,,,,,,,,,,,,,,,,,,895,,,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,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,,,,,,,,,,,,,,,,,,,,968,,,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,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,,671,,,,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,530,,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,,,,,,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,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,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,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,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,590,59,97,96,591,,99,107,108,,93,94,,,,313', ',,,,,,,,,,,,,,,,,,,592,,,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,590,59,97,96,591,,99,107,108,,93,94,,,,313,,,,,,,,,,,', ',,,,,,,,592,,,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,113,,,,,112,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,,,,,,,,,,,,,,,,,,,,348,,,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,,,,,,,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,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,,,,,,397,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', ',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,,671,,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,,,,,,397,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,,,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,,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,', ',,,,,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,,99,107,108,,93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225', ',,231,,,61,62,,,63,,413,,,,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,,,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,,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,285,99,107,108,', '93,94,,45,46,44,,,,,,,,,,,,,,,,,,,,225,,,231,,,61,62,,,63,,671,,,,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,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,,413,,,,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,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,,,,,,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,,768,,,,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,,671,,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,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,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,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,,,,,,,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,,,,,,,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,,,,,,,,,,,,,,,,,,,,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,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,', '413,,,,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,,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,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,,,,-282,91', '83,85,86,87,89,-282,-282,-282,84,92,-282,-282,-282,,-282,,65,,,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,-600,-282,,-282,,,,-600,-600,-600,,,-600,-600', '-600,560,-600,557,556,555,564,558,,,,-600,-600,-600,-600,,,566,,,,,-600', '-600,,-600,-600,-600,-600,-600,,,,,,,,,,562,,,,,,,,,571,570,574,573', ',-600,-600,-600,-600,-600,-600,-600,-600,-600,-600,-600,-600,-600,-600', ',,-600,-600,-600,,,-600,,,-600,,,-600,-600,,-600,567,-600,,-600,,-600', '-600,-600,-600,-600,-600,-600,,-600,-600,-600,,,,,,,,,,,,,-600,-600', '-600,-600,-601,-600,,-600,,,,-601,-601,-601,,,-601,-601,-601,560,-601', '557,556,555,564,558,,,,-601,-601,-601,-601,,,566,,,,,-601,-601,,-601', '-601,-601,-601,-601,,,,,,,,,,562,,,,,,,,,571,570,574,573,,-601,-601', '-601,-601,-601,-601,-601,-601,-601,-601,-601,-601,-601,-601,,,-601,-601', '-601,,,-601,,,-601,,,-601,-601,,-601,567,-601,,-601,,-601,-601,-601', '-601,-601,-601,-601,,-601,-601,-601,,,,,,,,,,,,,-601,-601,-601,-601', '-297,-601,,-601,,,,-297,-297,-297,,,-297,-297,-297,560,-297,557,556', '555,564,558,,,,,-297,-297,,,,566,,,,,-297,-297,,-297,-297,-297,-297', '-297,,,,,,,,,,562,,,,,,,,,571,570,574,573,,-297,-297,-297,-297,-297', '-297,-297,-297,-297,-297,-297,-297,-297,-297,,,-297,-297,-297,,,-297', ',274,-297,,,-297,-297,,-297,567,-297,,-297,,-297,-297,-297,-297,-297', '-297,-297,,-297,,-297,,,,,,,,,,,,-426,-297,-297,,-297,,-297,-426,-426', '-426,,,-426,-426,-426,800,-426,557,556,555,801,558,,,,-426,-426,-426', ',,,566,,,,,-426,-426,,-426,-426,-426,-426,-426,,,,,,,,,,562,,,,,,,,', '571,570,574,573,,-426,-426,-426,-426,-426,-426,-426,-426,-426,-426,-426', '-426,-426,-426,,,-426,-426,-426,,,-426,,271,-426,,,-426,-426,,-426,567', '-426,,-426,,-426,-426,-426,-426,-426,-426,-426,,-426,-426,-426,,,,,', ',,,,,,-618,-426,-426,,-426,,-426,-618,-618,-618,,,-618,-618,-618,800', '-618,557,556,555,801,558,,,,-618,-618,,,,,566,,,,,-618,-618,,-618,-618', '-618,-618,-618,,,,,,,,,,562,,,,,,,,,571,570,574,573,,-618,,,,,,,-618', '-618,-618,,-618,-618,-618,-618,,-618,,-618,,,,,271,-618,-618,-618,-618', ',,,567,,,,,-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,-618,,,-618,,271,-618,,,-618,-618,,-618', ',-618,,-618,,-618,-618,-618,-618,-618,-618,-618,,-618,-618,-618,,,,', ',854,433,,,855,,,-618,-618,,-618,,-618,158,159,,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,,800,162,557,556,555,801,558,,,', ',483,426,,,484,566,,,,,155,,,158,159,163,154,136,137,138,145,142,144', ',,139,140,562,,,160,161,146,147,,,571,570,574,573,,,,,,,,151,150,,135', '157,153,152,148,149,143,141,133,156,134,,,162,220,,,,,,,,567,1030,426', ',,1031,,,,,,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,,,,,,,,,,1032,433,,,1033,,,,,,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,,', ',,,,,,,649,426,,,650,,,,,,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,,,,,,,,,,651,433,,,652,,,,,,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,,,,,,,,,,683,433,,,684,,,,,,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,,,,,,,,,,680,426,,,681', ',,,,,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,,,,,,,,,,738,433,,,739,,,,,,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,,,,,,,,', ',483,426,,,484,,,,,,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,,,,,,,,,,736,426,,,737,,,,,,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,,,,,,,,,,1002,433,,,1001,,,,,,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,,,,,,,,,,429,433,,,428', ',,,,,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,,,,,,,,,,422,426,,,423,,,,,,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,,,,,,,,', ',651,433,,,652,,,,,,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,,,,,,,,,,649,426,,,650,,,,,,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', ',560,162,557,556,555,564,558,560,,557,556,555,564,558,,,566,,,,,155', ',566,,560,163,557,556,555,564,558,,,,,,,562,,,566,,,,562,754,571,570', '574,573,,,,571,570,574,573,,,,,560,562,557,556,555,564,558,,,,571,570', '574,573,,,566,,,,800,567,557,556,555,801,558,,567,,,,,,,,566,,562,546', ',,,,,,567,571,570,574,573,,,,,,,,562,,,,,,,,,571,570,574,573,,,,,,,', ',,,,,567,,,,,,,,,,,,,,,,,,,,567' ] racc_action_table = arr = ::Array.new(25648, 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 = [ '652,1030,926,385,1045,338,662,652,652,652,1047,596,652,652,652,64,652', '852,388,22,757,757,446,446,675,458,652,652,652,543,738,1031,543,339', '904,675,652,652,3,652,652,652,652,652,737,851,349,788,123,346,983,80', '983,123,123,22,345,458,681,80,588,458,458,545,481,13,385,652,652,652', '652,652,652,652,652,652,652,652,652,652,652,388,581,652,652,652,580', '652,652,736,853,652,308,662,652,652,738,652,481,652,788,652,64,652,652', '652,652,652,652,652,757,652,446,652,680,1030,926,596,1045,338,1030,926', '852,1045,338,681,652,652,652,652,651,652,15,652,1032,738,596,651,651', '651,652,596,651,651,651,1031,651,339,904,737,1031,349,339,904,346,651', '651,651,651,851,681,345,851,681,851,588,651,651,545,651,651,651,651', '651,681,691,691,331,739,308,331,680,581,755,379,29,580,581,755,663,853', '580,592,16,736,853,592,651,651,651,651,651,651,651,651,651,651,651,651', '651,651,813,1032,651,651,651,680,651,651,680,19,651,590,663,651,651', '226,651,451,651,680,651,489,651,651,651,651,651,651,651,25,651,651,651', '739,379,379,379,1032,382,29,224,490,1032,854,591,651,651,651,651,429', '651,40,651,813,691,489,429,429,429,651,813,29,429,429,590,429,880,43', '226,813,451,590,739,861,429,490,590,880,861,48,590,72,683,87,223,429', '429,813,429,429,429,429,429,224,703,364,854,591,590,382,382,382,364', '854,591,703,751,751,854,591,880,880,854,591,649,650,429,429,429,429', '429,429,429,429,429,429,429,429,429,429,854,591,429,429,429,683,429', '223,703,703,429,5,683,429,880,372,5,683,429,88,429,683,429,429,429,429', '429,429,429,613,429,429,429,616,363,390,89,649,650,683,18,363,703,374', '428,429,429,632,429,356,429,428,428,428,90,362,356,428,428,429,428,922', '362,922,922,922,718,922,718,718,718,376,718,121,376,205,372,372,372', '225,428,428,18,428,428,428,428,428,317,632,613,613,227,18,616,616,390', '390,390,613,632,361,27,616,374,374,374,952,361,27,952,428,428,428,428', '428,428,428,428,428,428,428,428,428,428,228,423,428,428,428,317,428', '376,376,232,428,264,935,428,922,267,317,935,428,718,428,422,428,428', '428,428,428,428,428,457,428,347,428,965,360,42,41,289,347,278,965,360', '289,423,95,428,428,347,428,965,428,95,95,95,423,359,95,95,95,428,95', '457,359,422,330,457,457,330,95,366,95,95,95,279,422,966,366,42,41,282', '95,95,966,95,95,95,95,95,42,41,293,966,295,967,296,840,358,840,840,840', '967,840,923,358,923,923,923,696,923,967,696,95,95,95,95,95,95,95,95', '95,95,95,95,95,95,1016,1016,95,95,95,969,95,95,840,297,95,303,969,95', '95,923,95,840,95,306,95,969,95,95,95,95,95,95,95,307,95,312,95,314,715', '304,715,715,715,750,715,318,304,319,750,95,95,95,95,98,95,304,95,357', '20,20,98,98,98,95,357,98,98,98,599,98,599,599,599,599,599,300,715,98', '342,98,98,98,300,342,599,715,725,725,322,98,98,300,98,98,98,98,98,855', '328,1000,332,1000,1000,1000,855,1000,599,599,562,855,562,562,562,855', '562,599,599,599,599,343,98,98,98,98,98,98,98,98,98,98,98,98,98,98,344', '477,98,98,98,348,98,98,706,706,98,350,562,98,98,378,98,599,98,476,98', '562,98,98,98,98,98,98,98,381,98,384,98,477,337,337,387,477,477,477,477', '313,313,44,44,98,98,98,98,409,98,476,98,326,326,476,476,476,476,98,756', '756,756,756,756,756,756,756,756,756,756,756,756,756,756,756,756,756', '756,756,756,756,756,756,411,414,417,756,756,756,756,756,756,756,756', '756,756,506,506,506,506,506,756,756,756,756,756,756,756,756,756,420', '421,756,430,892,465,892,892,892,438,892,756,756,459,756,756,756,756', '756,756,756,465,465,756,756,460,461,462,756,756,756,756,978,491,978', '978,978,465,978,492,507,465,465,465,465,756,756,508,756,756,756,756', '756,756,756,756,756,756,756,511,513,756,742,518,301,522,531,594,532', '742,978,301,533,976,594,976,976,976,742,976,301,756,541,594,544,548', '756,404,404,404,404,404,404,404,404,404,404,404,404,404,404,404,404', '404,404,404,404,404,404,404,404,976,549,551,404,404,404,404,404,404', '404,404,404,404,674,674,674,674,674,404,404,404,404,404,404,404,404', '404,552,553,404,758,758,464,560,758,758,758,568,404,404,572,404,404', '404,404,404,404,404,464,464,404,404,575,577,582,404,404,404,404,1014', '583,1014,1014,1014,464,1014,464,620,464,464,464,464,404,404,623,404', '404,404,404,404,404,404,404,404,404,404,625,629,404,404,633,894,638', '644,222,653,655,1014,894,404,842,222,842,842,842,661,842,894,404,668', '222,670,677,404,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11', '11,11,11,11,11,11,842,679,682,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,685,11,686,689,463,291,291,291,291,291', '11,11,690,11,11,11,11,11,11,11,463,463,11,11,692,702,717,11,11,11,11', '720,727,732,735,767,463,772,463,790,463,463,463,463,11,11,791,11,11', '11,11,11,11,11,11,11,11,11,1008,793,11,11,302,1033,794,1008,517,795', '797,302,1033,11,798,517,1008,1033,799,800,302,1033,11,812,517,816,819', '11,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74', '74,74,820,824,825,74,74,74,74,74,74,74,74,74,74,826,827,831,832,834', '74,74,74,74,74,74,74,74,74,74,74,74,835,74,837,320,839,841,844,847,74', '74,320,74,74,74,74,74,74,74,857,320,74,74,17,684,49,74,74,74,74,17,684', '49,862,863,74,684,864,873,17,684,49,874,74,74,891,74,74,74,74,74,74', '74,74,74,74,74,956,895,74,896,898,899,924,956,928,929,934,942,945,946', '947,948,956,950,960,968,971,972,74,973,974,975,977,74,627,627,627,627', '627,627,627,627,627,627,627,627,627,627,627,627,627,627,627,627,627', '627,627,627,1001,1002,1004,627,627,627,627,627,627,627,627,627,627,1015', '1020,1021,1022,1023,627,627,627,627,627,627,627,627,627,1024,1025,627', '1026,1029,1034,1035,1,,,,627,627,,627,627,627,627,627,627,627,,,627', '627,,,,627,627,627,627,,,,,,,,,,,,,,627,627,,627,627,627,627,627,627', '627,627,627,627,627,,,627,627,,,,,,,,,,627,,,,,,,,,627,,,,,627,12,12', '12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,,', ',12,12,12,12,12,12,12,12,12,12,,,,,,12,12,12,12,12,12,12,12,12,,,12', ',,,,,,,,12,12,,12,12,12,12,12,12,12,,,12,12,,,,12,12,12,12,,,,,,,,,', ',,,,12,12,,12,12,12,12,12,12,12,12,12,12,12,,,12,12,,,,,,,,,,12,,,,', ',,,,12,,,,,12,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91,91', '91,91,91,91,91,91,,,,91,91,91,91,91,91,91,91,91,91,,,,,,91,91,91,91', '91,91,91,91,91,91,91,91,,91,,,,,,,91,91,,91,91,91,91,91,91,91,,,91,91', ',,,91,91,91,91,,,,,,,,,,,,,,91,91,,91,91,91,91,91,91,91,91,91,91,91', ',,91,,,,,,,,,,,,2,2,2,2,2,2,,,91,2,2,,,91,2,,2,2,2,2,2,2,2,,,,,,2,2', '2,2,2,2,2,,,2,,,,,441,2,2,2,2,2,2,2,2,2,2,2,2,,2,2,2,,2,2,,2,2,2,441', '441,441,441,441,441,441,441,441,441,441,,441,441,,,441,441,,2,,,2,,', '2,2,,,2,,2,441,,441,2,441,441,441,441,441,441,441,2,441,,,,2,2,2,2,2', '2,,,,2,2,,441,,441,,,2,,,2,2,2,858,858,858,858,858,858,,,,858,858,,', ',858,,858,858,858,858,858,858,858,,,,,,858,858,858,858,858,858,858,', ',858,,,,,654,858,858,,858,858,858,858,858,858,858,858,858,,858,858,858', ',858,858,,858,858,858,654,654,654,654,654,654,654,654,654,654,654,,654', '654,,,654,654,,858,,,858,,,858,858,,,858,,858,654,,654,858,654,654,654', '654,654,654,654,858,654,,,,858,858,858,858,858,858,,,,858,858,,654,', ',,,858,,,858,858,858,299,299,299,299,299,299,,,,299,299,,,,299,,299', '299,299,299,299,299,299,,,,,,299,299,299,299,299,299,299,,,299,,,,,416', '299,299,,299,299,299,299,299,299,299,299,299,,299,299,299,,299,299,', '299,299,299,416,416,416,416,416,416,416,416,416,416,416,,416,416,,,416', '416,,299,,,299,,,299,299,,,299,,299,416,,416,299,416,416,416,416,416', '416,416,299,416,,,,299,299,299,299,299,299,,,,299,299,,416,,,,,299,', ',299,299,299,849,849,849,849,849,849,,,,849,849,,,,849,,849,849,849', '849,849,849,849,,,,,,849,849,849,849,849,849,849,,,849,,,,,,849,849', ',849,849,849,849,849,849,849,849,849,,849,849,849,,849,849,,849,849', '849,781,781,781,781,781,781,781,781,781,781,781,,781,781,,,781,781,', '849,,,849,,,849,849,,,849,,849,781,,781,849,781,781,781,781,781,781', '781,849,781,,,,849,849,849,849,849,849,,,,849,849,,781,,,,,849,,,849', '849,849,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,783,783', '783,783,783,783,783,783,783,783,783,,783,783,,,783,783,,848,,,848,,', '848,848,,,848,,848,783,,783,848,783,783,783,783,783,783,783,848,783', ',,,848,848,848,848,848,848,,,,848,848,,783,,,,,848,,,848,848,848,403', '403,403,403,403,403,,,,403,403,,,,403,,403,403,403,403,403,403,403,', ',,,,403,403,403,403,403,403,403,,,403,,,,,,403,403,403,403,403,403,403', '403,403,403,403,403,,403,403,403,,403,403,,403,403,403,24,24,24,24,24', '24,24,24,24,24,24,,24,24,,,24,24,,403,,,403,,,403,403,,,403,,403,24', ',24,403,24,24,24,24,24,24,24,403,24,,,,403,403,403,403,403,403,,,,403', '403,,24,,,,,403,,,403,403,403,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,688,688,688,688,688,688,688,688,688,688,688,,688', '688,,,688,688,,231,,,231,,,231,231,,,231,,231,688,,688,231,688,688,688', '688,688,688,688,231,688,,,,231,231,231,231,231,231,,,,231,231,,688,', ',,,231,,,231,231,231,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,774,774,774,774,774,774,774,774,774,774,774,,774,774,,,774', '774,,700,,,700,,,700,700,,,700,,700,774,,774,700,774,774,774,774,774', '774,774,700,774,,,,700,700,700,700,700,700,,,,700,700,,774,,,,,700,', ',700,700,700,579,579,579,579,579,579,,,,579,579,,,,579,,579,579,579', '579,579,579,579,,,,,,579,579,579,579,579,579,579,,,579,,,,,,579,579', ',579,579,579,579,579,579,579,579,579,,579,579,579,,579,579,,579,579', '579,480,480,480,480,480,480,480,480,480,480,480,,480,480,,,480,480,', '579,,,579,,,579,579,,,579,,579,480,,480,579,480,480,480,480,480,480', '480,579,480,,,,579,579,579,579,579,579,,,,579,579,480,480,,,,,579,,', '579,579,579,988,988,988,988,988,988,,,,988,988,,,,988,,988,988,988,988', '988,988,988,,,,,,988,988,988,988,988,988,988,,,988,,,,,,988,988,,988', '988,988,988,988,988,988,988,988,,988,988,988,,988,988,,988,988,988,776', '776,776,776,776,776,776,776,776,776,776,,776,776,,,776,776,,988,,,988', ',,988,988,,,988,,988,776,,776,988,776,776,776,776,776,776,776,988,776', ',,,988,988,988,988,988,988,,,,988,988,,776,,,,,988,,,988,988,988,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,436,436,436,436', '436,436,436,436,436,436,436,,436,436,,,436,436,,752,,,752,,,752,752', ',,752,,752,436,,436,752,436,436,436,436,436,436,436,752,436,,,,752,752', '752,752,752,752,,,,752,752,,436,,,,,752,,,752,752,752,753,753,753,753', '753,753,,,,753,753,,,,753,,753,753,753,753,753,753,753,,,,,,753,753', '753,753,753,753,753,,,753,,,,,,753,753,,753,753,753,753,753,753,753', '753,753,,753,753,753,,753,753,,753,753,753,529,529,529,529,529,529,529', '529,529,529,529,,529,529,,,529,529,,753,,,753,,,753,753,,,753,,753,529', ',529,753,529,529,529,529,529,529,529,753,529,,,,753,753,753,753,753', '753,,,,753,753,,529,,,,,753,,,753,753,753,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,879,879,879,879,879,879,879,879,879,879', '879,,879,879,,,879,879,,987,,,987,,,987,987,,,987,,987,879,,879,987', '879,879,879,879,879,879,879,987,879,,,,987,987,987,987,987,987,,,,987', '987,,879,,,,,987,,,987,987,987,984,984,984,984,984,984,,,,984,984,,', ',984,,984,984,984,984,984,984,984,,,,,,984,984,984,984,984,984,984,', ',984,,,,,,984,984,,984,984,984,984,984,984,984,984,984,,984,984,984', ',984,984,,984,984,984,779,779,779,779,779,779,779,779,779,779,779,,779', '779,,,779,779,,984,,,984,,,984,984,,,984,,984,779,,779,984,779,779,779', '779,779,779,779,984,779,,,,984,984,984,984,984,984,,,,984,984,,779,', ',,,984,,,984,984,984,576,576,576,576,576,576,,,,576,576,,,,576,,576', '576,576,576,576,576,576,,,,,,576,576,576,576,576,576,576,,,576,,,,,', '576,576,,576,576,576,576,576,576,576,576,576,,576,576,576,,576,576,', '576,576,576,876,876,876,876,876,876,876,876,876,876,876,,876,876,,,876', '876,,576,,,576,,,576,576,,,576,,576,876,,876,576,876,876,876,876,876', '876,876,576,876,,,,576,576,576,576,576,576,,,,576,576,,876,,,,,576,', ',576,576,576,979,979,979,979,979,979,,,,979,979,,,,979,,979,979,979', '979,979,979,979,,,,,,979,979,979,979,979,979,979,,,979,,,,,,979,979', ',979,979,979,979,979,979,979,979,979,,979,979,979,,979,979,,979,979', '979,276,276,276,276,276,276,276,276,276,276,276,,276,276,,,276,276,', '979,,,979,,,979,979,,,979,,979,276,,276,979,276,276,276,276,276,276', '276,979,276,,,,979,979,979,979,979,979,,,,979,979,,276,,,,,979,,,979', '979,979,207,207,207,207,207,207,,,,207,207,,,,207,,207,207,207,207,207', '207,207,,,,,,207,207,207,207,207,207,207,,,207,,,,,,207,207,,207,207', '207,207,207,207,207,207,207,,207,207,207,,207,207,,207,207,207,769,769', '769,769,769,769,769,769,769,769,769,,769,769,,,769,769,,207,,,207,,', '207,207,,,207,,207,769,,769,207,769,769,769,769,769,769,769,207,769', ',,,207,207,207,207,207,207,,,,207,207,,769,,,,,207,,,207,207,207,964', '964,964,964,964,964,,,,964,964,,,,964,,964,964,964,964,964,964,964,', ',,,,964,964,964,964,964,964,964,,,964,,,,,,964,964,,964,964,964,964', '964,964,964,964,964,,964,964,964,,964,964,,964,964,964,469,,,,,,,,,', ',,,,,,469,469,,964,,,964,,,964,964,,,964,,964,469,,469,964,469,469,469', '469,,,469,964,469,,,,964,964,964,964,964,964,,,,964,964,,,,,,,964,,', '964,964,964,804,804,804,804,804,804,,,,804,804,,,,804,,804,804,804,804', '804,804,804,,,,,,804,804,804,804,804,804,804,,,804,,,,,,804,804,,804', '804,804,804,804,804,804,804,804,,804,804,804,,804,804,,804,804,804,474', '474,474,474,474,474,474,,,474,474,,,,,,474,474,,804,,,804,,,804,804', ',,804,,804,474,,474,804,474,474,474,474,474,474,474,804,474,,,,804,804', '804,804,804,804,,,,804,804,,,,,,,804,,,804,804,804,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,473,473,473,473,473,473,473,', ',473,473,,,,,,473,473,,808,,,808,,,808,808,,,808,,808,473,,473,808,473', '473,473,473,473,473,473,808,473,,,,808,808,808,808,808,808,,,,808,808', ',,,,,,808,,,808,808,808,809,809,809,809,809,809,,,,809,809,,,,809,,809', '809,809,809,809,809,809,,,,,,809,809,809,809,809,809,809,,,809,,,,,', '809,809,,809,809,809,809,809,809,809,809,809,,809,809,809,,809,809,', '809,809,809,478,478,478,478,478,478,478,,,478,478,,,,,,478,478,,809', ',,809,,,809,809,,,809,,809,478,,478,809,478,478,478,478,478,478,478', '809,478,,,,809,809,809,809,809,809,,,,809,809,,,,,,,809,,,809,809,809', '759,759,759,759,759,759,,,,759,759,,,,759,,759,759,759,759,759,759,759', ',,,,,759,759,759,759,759,759,759,,,759,,,,,,759,759,,759,759,759,759', '759,759,759,759,759,,759,759,759,,759,759,,759,759,759,479,479,479,479', '479,479,479,479,,479,479,,,,,,479,479,,759,,,759,,,759,759,,,759,,759', '479,,479,759,479,479,479,479,479,479,479,759,479,,,,759,759,759,759', '759,759,,,,759,759,,,,,,,759,,,759,759,759,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,468,,,,,,,,,,,,,,,,468,468,,325,,,325', ',,325,325,,,325,,325,468,,468,325,468,468,468,468,,,468,325,468,,,,325', '325,325,325,325,325,,,,325,325,,,,,,,325,,,325,325,325,931,931,931,931', '931,931,,,,931,931,,,,931,,931,931,931,931,931,931,931,,,,,,931,931', '931,931,931,931,931,,,931,,,,,,931,931,,931,931,931,931,931,931,931', '931,931,,931,931,931,,931,931,,931,931,931,467,,,,,,,,,,,,,,,,467,467', ',931,,,931,,,931,931,,,931,,931,467,,467,931,467,467,467,467,,,467,931', '467,,,,931,931,931,931,931,931,,,,931,931,,,,,,,931,,,931,931,931,818', '818,818,818,818,818,,,,818,818,,,,818,,818,818,818,818,818,818,818,', ',,,,818,818,818,818,818,818,818,,,818,,,,,,818,818,,818,818,818,818', '818,818,818,818,818,,818,818,818,,818,818,,818,818,818,466,466,466,466', '466,466,466,,,466,466,,,,,,466,466,,818,,,818,,,818,818,,,818,,818,466', ',466,818,466,466,466,466,466,466,466,818,466,,,,818,818,818,818,818', '818,,,,818,818,,,,,,,818,,,818,818,818,701,701,701,701,701,701,,,,701', '701,,,,701,,701,701,701,701,701,701,701,,,,,,701,701,701,701,701,701', '701,,,701,,,,,,701,701,,701,701,701,701,701,701,701,701,701,,701,701', '701,,701,701,,701,701,701,475,475,475,475,475,475,475,,,475,475,,,,', ',475,475,,701,,,701,,,701,701,,,701,,701,475,,475,701,475,475,475,475', '475,475,475,701,475,,,,701,701,701,701,701,701,,,,701,701,,,,,,,701', ',,701,701,701,901,901,901,901,901,901,,,,901,901,,,,901,,901,901,901', '901,901,901,901,,,,,,901,901,901,901,901,901,901,,,901,,,,,,901,901', ',901,901,901,901,901,901,901,901,901,,901,901,901,,901,901,,901,901', '901,471,471,471,471,471,471,471,,,471,471,,,,,,471,471,,901,,,901,,', '901,901,,,901,,901,471,,471,901,471,471,471,471,471,471,471,901,471', ',,,901,901,901,901,901,901,,,,901,901,,,,,,,901,,,901,901,901,897,897', '897,897,897,897,,,,897,897,,,,897,,897,897,897,897,897,897,897,,,,,', '897,897,897,897,897,897,897,,,897,,,,,,897,897,,897,897,897,897,897', '897,897,897,897,,897,897,897,,897,897,,897,897,897,455,455,455,455,455', '455,455,455,455,455,455,,455,455,,,455,455,,897,,,897,,,897,897,,,897', ',897,455,,455,897,455,455,455,455,455,455,455,897,455,,,,897,897,897', '897,897,897,,,,897,897,,,,,,,897,,,897,897,897,36,36,36,36,36,36,,,', '36,36,,,,36,,36,36,36,36,36,36,36,,,,,,36,36,36,36,36,36,36,,,36,,,', ',,36,36,,36,36,36,36,36,36,36,36,36,,36,36,36,,36,36,,36,36,36,472,472', '472,472,472,472,472,,,472,472,,,,,,472,472,,36,,,36,,,36,36,,,36,,36', '472,,472,36,472,472,472,472,472,472,472,36,472,,,,36,36,36,36,36,36', ',,,36,36,,,,,,,36,,,36,36,36,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,456,456,456,456,456,456,456,456,456,456,456,,456,456', ',,456,456,,294,,,294,,,294,294,,,294,,294,456,,456,294,456,456,456,456', '456,456,456,294,456,,,,294,294,294,294,294,294,,,,294,294,,,,,,,294', ',,294,294,294,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,,1040,281,1040,1040,1040,1040,1040,281,,,', ',,,,281,1040,,,,281,281,281,281,281,281,,,,281,281,,,,,,,281,1040,,281', '281,281,740,740,740,,740,,1040,1040,740,740,,,,740,,740,740,740,740', '740,740,740,,,,,,740,740,740,740,740,740,740,,,740,,,,1040,,,740,,,740', '740,740,740,740,740,740,740,,740,740,740,,740,740,,740,740,740,,,,,', ',,,,,,,,,,,,,,740,,,740,,,740,740,,888,740,888,888,888,888,888,740,', ',,,,,,740,888,,,,740,740,740,740,740,740,,,,740,740,,,,,,,740,888,,740', '740,740,746,746,746,,746,,888,888,746,746,,,,746,,746,746,746,746,746', '746,746,,,,,,746,746,746,746,746,746,746,,,746,,,,888,,,746,,,746,746', '746,746,746,746,746,746,746,746,746,746,,746,746,,746,746,746,470,,', ',,,,,,,,,,,,,470,470,,746,,,746,,,746,746,,,746,,746,470,746,470,746', '470,470,470,470,,,470,746,470,,,,746,746,746,746,746,746,,,,746,746', ',,,,,,746,,746,746,746,746,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,,711,256,711,711,711,711,711', '256,,,,,,,,256,711,,,,256,256,256,256,256,256,,,,256,256,,,,,,,256,711', ',256,256,256,768,768,768,,768,,711,711,768,768,,,,768,,768,768,768,768', '768,768,768,,,,,,768,768,768,768,768,768,768,,,768,,,,711,,,768,,,768', '768,768,768,768,768,768,768,,768,768,768,,768,768,,768,768,768,,,,,', ',,,,,,,,,,,,,,768,,,768,,,768,768,,913,768,913,913,913,913,913,768,', ',,,,,,768,913,,,,768,768,768,768,768,768,,,,768,768,,,,,,,768,913,,768', '768,768,770,770,770,,770,,913,913,770,770,,,,770,,770,770,770,770,770', '770,770,,,,,,770,770,770,770,770,770,770,,,770,,,,913,,,770,,,770,770', '770,770,770,770,770,770,,770,770,770,,770,770,,770,770,770,,,,,,,,,', ',,,,,,,,,,770,,,770,,,770,770,,915,770,915,915,915,915,915,770,,,,,', ',,770,915,,,,770,770,770,770,770,770,,,,770,770,,,,,,,770,915,,770,770', '770,257,257,257,,257,,915,915,257,257,,,,257,,257,257,257,257,257,257', '257,,,,,,257,257,257,257,257,257,257,,,257,,,,915,,,257,,,257,257,257', '257,257,257,257,257,,257,257,257,,257,257,,257,257,257,,,,,,,,,,,,,', ',,,,,,257,,,257,,,257,257,,917,257,917,917,917,917,917,257,,,,,,,,257', '917,,,,257,257,257,257,257,257,,,,257,257,,,,,,,257,917,,257,257,257', '784,784,784,,784,,917,917,784,784,,,,784,,784,784,784,784,784,784,784', ',,,,,784,784,784,784,784,784,784,,,784,,,,917,,,784,,,784,784,784,784', '784,784,784,784,,784,784,784,,784,784,,784,784,784,,,,,,,,,,,,,,,,,', ',,784,,,784,,,784,784,,992,784,992,992,992,992,992,784,,,,,,,,784,992', ',,,784,784,784,784,784,784,,,,784,784,,,,,,,784,992,,784,784,784,785', '785,785,,785,,992,992,785,785,,,,785,,785,785,785,785,785,785,785,,', ',,,785,785,785,785,785,785,785,,,785,,,,992,,,785,,,785,785,785,785', '785,785,785,785,,785,785,785,,785,785,,785,785,785,,,,,,,,,,,,,,,,,', ',,785,,,785,,,785,785,,994,785,994,994,994,994,994,785,,,,,,,,785,994', ',,,785,785,785,785,785,785,,,,785,785,,,,,,,785,994,,785,785,785,786', '786,786,,786,,994,994,786,786,,,,786,,786,786,786,786,786,786,786,,', ',,,786,786,786,786,786,786,786,,,786,,,,994,,,786,,,786,786,786,786', '786,786,786,786,,786,786,786,,786,786,,786,786,786,,,,,,,,,,,,,,,,,', ',,786,,,786,,,786,786,,996,786,996,996,996,996,996,786,,,,,,,,786,996', ',,,786,786,786,786,786,786,,,,786,786,,,,,,,786,996,,786,786,786,787', '787,787,,787,,996,996,787,787,,,,787,,787,787,787,787,787,787,787,,', ',,,787,787,787,787,787,787,787,,,787,,,,996,,,787,,,787,787,787,787', '787,787,787,787,,787,787,787,,787,787,,787,787,787,,,,,,,,,,,,,,,,,', ',,787,,,787,,,787,787,,1009,787,1009,1009,1009,1009,1009,787,,,,,,,', '787,1009,,,,787,787,787,787,787,787,,,,787,787,,,,,,,787,1009,,787,787', '787,789,789,789,,789,,1009,1009,789,789,,,,789,,789,789,789,789,789', '789,789,,,,,,789,789,789,789,789,789,789,,,789,,,,1009,,,789,,,789,789', '789,789,789,789,789,789,,789,789,789,,789,789,,789,789,789,,,,,,,,,', ',,,,,,,,,,789,,,789,,,789,789,,,789,,,,,,789,,,,,,,,789,,,,,789,789', '789,789,789,789,,,,789,789,,,,,,,789,,,789,789,789,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,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,,,,,,,,,,,,,,,,,,,,32,,,32,,,32,32,,,32,,32,,32,,32', ',,,,,,,32,,,,,32,32,32,32,32,32,,,,32,32,,,,,,,32,,32,32,32,32,801,801', '801,,801,,,,801,801,,,,801,,801,801,801,801,801,801,801,,,,,,801,801', '801,801,801,801,801,,,801,,,,,,,801,,,801,801,801,801,801,801,801,801', ',801,801,801,,801,801,,,,801,,,,,,,,,,,,,,,,,,,,801,,,801,,,801,801', ',,801,,,,,,,,,,,,,,,,,,,801,801,801,801,801,801,,,,801,801,,,,,,,801', ',,801,801,801,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,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,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,', ',38,,,,,,,,,,,,,,,,,,,38,38,38,38,38,38,,,,38,38,,,,38,,,38,,,38,38', '38,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,846,846,846,,846,,,,846,846,,,,846,,846,846', '846,846,846,846,846,,,,,,846,846,846,846,846,846,846,,,846,,,,,,,846', ',,846,846,846,846,846,846,846,846,,846,846,846,,846,846,,846,846,846', ',,,,,,,,,,,,,,,,,,,846,,,846,,,846,846,,,846,,,,,,846,,,,,,,,846,,,', ',846,846,846,846,846,846,,,,846,846,,,,,,,846,,,846,846,846,859,859', '859,,859,,,,859,859,,,,859,,859,859,859,859,859,859,859,,,,,,859,859', '859,859,859,859,859,,,859,,,,,,,859,,,859,859,859,859,859,859,859,859', ',859,859,859,,859,859,,859,859,859,,,,,,,,,,,,,,,,,,,,859,,,859,,,859', '859,,,859,,,,,,859,,,,,,,,859,,,,,859,859,859,859,859,859,,,,859,859', ',,,,,,859,,,859,859,859,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,877,877,877', '878,878,878,,878,,,,878,878,,,,878,,878,878,878,878,878,878,878,,,,', ',878,878,878,878,878,878,878,,,878,,,,,,,878,,,878,878,878,878,878,878', '878,878,,878,878,878,,878,878,,878,878,878,,,,,,,,,,,,,,,,,,,,878,,', '878,,,878,878,,,878,,,,,,878,,,,,,,,878,,,,,878,878,878,878,878,878', ',,,878,878,,,,,,,878,,,878,878,878,893,893,893,,893,,,,893,893,,,,893', ',893,893,893,893,893,893,893,,,,,,893,893,893,893,893,893,893,,,893', ',,,,,,893,,,893,893,893,893,893,893,893,893,,893,893,893,,893,893,,', ',893,,,,,,,,,,,,,,,,,,,,893,,,893,,,893,893,,,893,,,,,,,,,,,,,,,,,,', '893,893,893,893,893,893,,,,893,893,,,,,,,893,,,893,893,893,45,45,45', ',45,,,,45,45,,,,45,,45,45,45,45,45,45,45,,,,,,45,45,45,45,45,45,45,', ',45,,,,,,,45,,,45,45,45,45,45,45,45,45,,45,45,45,,45,45,,45,45,45,,', ',,,,,,,,,,,,,,,,,45,,,45,,,45,45,,,45,,,,,,45,,,,,,,,45,,,,,45,45,45', '45,45,45,,,,45,45,,,,,,,45,,,45,45,45,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,905,905', '905,,905,,,,905,905,,,,905,,905,905,905,905,905,905,905,,,,,,905,905', '905,905,905,905,905,,,905,,,,,,,905,,,905,905,905,905,905,905,905,905', ',905,905,905,,905,905,,,,905,,,,,,,,,,,,,,,,,,,,905,,,905,,,905,905', ',,905,,,,,,,,,,,,,,,,,,,905,905,905,905,905,905,,,,905,905,,,,,,,905', ',,905,905,905,46,46,46,,46,,,,46,46,,,,46,,46,46,46,46,46,46,46,,,,', ',46,46,46,46,46,46,46,,,46,,,,,,,46,,,46,46,46,46,46,46,46,46,,46,46', '46,,46,46,,46,46,46,,,,,,,,,,,,,,,,,,,,46,,,46,,,46,46,,,46,,,,,,46', ',,,,,,,46,,,,,46,46,46,46,46,46,,,,46,46,,,,,,,46,,,46,46,46,47,47,47', ',47,,,,47,47,,,,47,,47,47,47,47,47,47,47,,,,,,47,47,47,47,47,47,47,', ',47,,,,,,,47,,,47,47,47,47,47,47,47,47,,47,47,47,,47,47,,47,47,47,,', ',,,,,,,,,,,,,,,,,47,,,47,,,47,47,,,47,,,,,,47,,,,,,,,47,,,,,47,47,47', '47,47,47,,,,47,47,,,,,,,47,,,47,47,47,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,,,930,,930,,,,930', ',,,,,,,930,,,,,930,930,930,930,930,930,,,,930,930,,,,,,,930,,,930,930', '930,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,333,333,333,,333,,,,333,333,', ',,333,,333,333,333,333,333,333,333,,,,,,333,333,333,333,333,333,333', ',,333,,,,,,,333,,,333,333,333,333,333,333,333,333,333,333,333,333,,333', '333,,333,333,333,,,,,,,,,,,,,,,,,,,,333,,,333,,,333,333,,,333,,,,,,333', ',,,,,,,333,,,,,333,333,333,333,333,333,,,,333,333,,,,,,,333,,333,333', '333,333,340,340,340,,340,,,,340,340,,,,340,,340,340,340,340,340,340', '340,,,,,,340,340,340,340,340,340,340,,,340,,,,,,,340,,,340,340,340,340', '340,340,340,340,,340,340,340,,340,340,,340,340,340,,,,,,,,,,,,,,,,,', ',,340,,,340,,,340,340,,,340,,,,,,340,,,,,,,,340,,,,,340,340,340,340', '340,340,,,,340,340,,,,,,,340,,,340,340,340,341,341,341,,341,,,,341,341', ',,,341,,341,341,341,341,341,341,341,,,,,,341,341,341,341,341,341,341', ',,341,,,,,,,341,,,341,341,341,341,341,341,341,341,,341,341,341,,341', '341,,341,341,341,,,,,,,,,,,,,,,,,,,,341,,,341,,,341,341,,,341,,,,,,341', ',,,,,,,341,,,,,341,341,341,341,341,341,,,,341,341,,,,,,,341,,,341,341', '341,61,61,61,,61,,,,61,61,,,,61,,61,61,61,61,61,61,61,,,,,,61,61,61', '61,61,61,61,,,61,,,,,,,61,,,61,61,61,61,61,61,61,61,,61,61,61,,61,61', ',61,61,61,,,,,,,,,,,,,,,,,,,,61,,,61,,,61,61,,,61,,,,,,61,,,,,,,,61', ',,,,61,61,61,61,61,61,,,,61,61,61,,,,,,61,,,61,61,61,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,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,1005,,,,,,,1005', ',1005,1005,1005,1005,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,62,,,,,,,,,,,,,,,,,,,,62,,,62,,,62,62,,,62', ',62,,,,62,,,,,,,,62,,,,,62,62,62,62,62,62,,,,62,62,,,,,,,62,,62,62,62', '62,66,66,66,,66,,,,66,66,,,,66,,66,66,66,66,66,66,66,,,,,,66,66,66,66', '66,66,66,,,66,,,,,,,66,,,66,66,66,66,66,66,66,66,,66,66,66,,66,66,,66', '66,66,,,,,,,,,,,,,,,,,,,,66,,,66,,,66,66,,,66,,,,,,66,,,,,,,,66,,,,', '66,66,66,66,66,66,,,,66,66,,,,,,,66,,,66,66,66,353,353,353,,353,,,,353', '353,,,,353,,353,353,353,353,353,353,353,,,,,,353,353,353,353,353,353', '353,,,353,,,,,,,353,,,353,353,353,353,353,353,353,353,,353,353,353,', '353,353,,,,353,,,,,,,,,,,,,,,,,,,,353,,,353,,,353,353,,,353,,,,,,,,', ',,,,,,,,,,353,353,353,353,353,353,,,,353,353,,,,,,,353,,,353,353,353', '355,355,355,,355,,,,355,355,,,,355,,355,355,355,355,355,355,355,,,,', ',355,355,355,355,355,355,355,,,355,,,,,,,355,,,355,355,355,355,355,355', '355,355,,355,355,355,,355,355,,,,355,,,,,,,,,,,,,,,,,,,,355,,,355,,', '355,355,,,355,,,,,,,,,,,,,,,,,,,355,355,355,355,355,355,,,,355,355,', ',,,,,355,,,355,355,355,67,67,67,,67,,,,67,67,,,,67,,67,67,67,67,67,67', '67,,,,,,67,67,67,67,67,67,67,,,67,,,,,,,67,,,67,67,67,67,67,67,67,67', ',67,67,67,,67,67,,67,67,67,,,,,,,,,,,,,,,,,,,,67,,,67,,,67,67,,,67,', ',,,,67,,,,,,,,67,,,,,67,67,67,67,67,67,,,,67,67,,,,,,,67,,,67,67,67', '70,70,70,,70,,,,70,70,,,,70,,70,70,70,70,70,70,70,,,,,,70,70,70,70,70', '70,70,,,70,,,,,,,70,,,70,70,70,70,70,70,70,70,,70,70,70,,70,70,,70,70', '70,,,,,,,,,,,,,,,,,,,,70,,,70,,,70,70,,,70,,,,,,70,,,,,,,,70,,,,,70', '70,70,70,70,70,,,,70,70,70,,,,,70,70,,,70,70,70,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,71,,71,71,,,,71,,,,,,,,,,,,,,,,,,,', '71,,,71,,,71,71,,,71,,71,,,,,,,,,,,,,,,,,71,71,71,71,71,71,,,,71,71', ',,,,,,71,,,71,71,71,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,,,,,,,,', ',,,,,,,,,,,8,,,8,,,8,8,,,8,,8,,,,8,,,,,,,,8,,,,,8,8,8,8,8,8,,,,8,8,', ',,,,,8,,,8,8,8,413,413,413,,413,,,,413,413,,,,413,,413,413,413,413,413', '413,413,,,,,,413,413,413,413,413,413,413,,,413,,,,,,,413,,,413,413,413', '413,413,413,413,413,,413,413,413,,413,413,,413,413,413,,,,,,,,,,,,,', ',,,,,,413,,,413,,,413,413,,,413,,,,,,413,,,,,,,,413,,,,,413,413,413', '413,413,413,,,,413,413,,,,,,,413,,,413,413,413,450,450,450,,450,,,,450', '450,,,,450,,450,450,450,450,450,450,450,,,,,,450,450,450,450,450,450', '450,,,450,,,,,,,450,,,450,450,450,450,450,450,450,450,450,450,450,450', ',450,450,,450,450,450,,,,,,,,,,,,,,,,,,,,450,,,450,,,450,450,,,450,', '450,,450,,450,,,,,,,,450,,,,,450,450,450,450,450,450,,,,450,450,,,,', ',,450,,450,450,450,450,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,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,452,452,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,454,454,454,,454,,,,454,454,,,,454,,454,454,454', '454,454,454,454,,,,,,454,454,454,454,454,454,454,,,454,,,,,,,454,,,454', '454,454,454,454,454,454,454,,454,454,454,,454,454,,454,454,454,,,,,', ',,,,,,,,,,,,,,454,,,454,,,454,454,,,454,,,,,,454,,,,,,,,454,,,,,454', '454,454,454,454,454,,,,454,454,,,,,,,454,,,454,454,454,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,495,495,495,,495,,,,495,495,,,,495', ',495,495,495,495,495,495,495,,,,,,495,495,495,495,495,495,495,,,495', ',,,,,,495,,,495,495,495,495,495,495,495,495,495,495,495,495,,495,495', ',495,495,495,,,,,,,,,,,,,,,,,,,,495,,,495,,,495,495,,,495,,495,,495', ',495,,,,,,,,495,,,,,495,495,495,495,495,495,,,,495,495,,,,,,,495,,495', '495,495,495,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,500,500,500,,500', ',,,500,500,,,,500,,500,500,500,500,500,500,500,,,,,,500,500,500,500', '500,500,500,,,500,,,,,,,500,,,500,500,500,500,500,500,500,500,,500,500', '500,,500,500,,500,500,500,,,,,,,,,,,,,,,,,,,,500,,,500,,,500,500,,,500', ',,,,,500,,,,,,,,500,,,,,500,500,500,500,500,500,,,,500,500,,,,,,,500', ',,500,500,500,505,505,505,505,505,,,,505,505,,,,505,,505,505,505,505', '505,505,505,,,,,,505,505,505,505,505,505,505,,,505,,,,,,505,505,,505', '505,505,505,505,505,505,505,505,,505,505,505,,505,505,,505,505,505,', ',,,,,,,,,,,,,,,,,,505,,,505,,,505,505,,,505,,505,,,,505,,,,,,,,505,', ',,,505,505,505,505,505,505,,,,505,505,,,,,,505,505,,,505,505,505,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,512,512,512,,512,,,,512,512', ',,,512,,512,512,512,512,512,512,512,,,,,,512,512,512,512,512,512,512', ',,512,,,,,,,512,,,512,512,512,512,512,512,512,512,,512,512,512,,512', '512,,,,512,,,,,,,,,,,,,,,,,,,,512,,,512,,,512,512,,,512,,,,,,,,,,,,', ',,,,,,512,512,512,512,512,512,,,,512,512,,,,,,,512,,,512,512,512,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,,,23,,,,,,23,,,,,,,,23,,,,,23,23', '23,23,23,23,,,,23,23,,,,,,,23,,,23,23,23,514,514,514,,514,,,,514,514', ',,,514,,514,514,514,514,514,514,514,,,,,,514,514,514,514,514,514,514', ',,514,,,,,,,514,,,514,514,514,514,514,514,514,514,514,514,514,514,,514', '514,,514,514,514,,,,,,,,,,,,,,,,,,,,514,,,514,,,514,514,,,514,,514,', '514,,514,,,,,,,,514,,,,,514,514,514,514,514,514,,,,514,514,,,,,,,514', ',514,514,514,514,521,521,521,,521,,,,521,521,,,,521,,521,521,521,521', '521,521,521,,,,,,521,521,521,521,521,521,521,,,521,,,,,,,521,,,521,521', '521,521,521,521,521,521,,521,521,521,,521,521,,,,521,,,,,,,,,,,,,,,', ',,,,521,,,521,,,521,521,,,521,,,,,,,,,,,,,,,,,,,521,521,521,521,521', '521,,,,521,521,,,,,,,521,,,521,521,521,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,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,,,,,,,524,,,524,524,524,525,525,525,,525,,,,525', '525,,,,525,,525,525,525,525,525,525,525,,,,,,525,525,525,525,525,525', '525,,,525,,,,,,,525,,,525,525,525,525,525,525,525,525,,525,525,525,', '525,525,,525,525,525,,,,,,,,,,,,,,,,,,,,525,,,525,,,525,525,,,525,,', ',,,525,,,,,,,,525,,,,,525,525,525,525,525,525,,,,525,525,,,,,,,525,', ',525,525,525,526,526,526,,526,,,,526,526,,,,526,,526,526,526,526,526', '526,526,,,,,,526,526,526,526,526,526,526,,,526,,,,,,,526,,,526,526,526', '526,526,526,526,526,,526,526,526,,526,526,,526,526,526,,,,,,,,,,,,,', ',,,,,,526,,,526,,,526,526,,,526,,,,,,526,,,,,,,,526,,,,,526,526,526', '526,526,526,,,,526,526,,,,,,,526,,,526,526,526,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,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,530,530,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,536,536,536,,536,,,,536,536,,,,536,,536,536,536', '536,536,536,536,,,,,,536,536,536,536,536,536,536,,,536,,,,,,,536,,,536', '536,536,536,536,536,536,536,536,536,536,536,,536,536,,536,536,536,,', ',,,,,,,,,,,,,,,,,536,,,536,,,536,536,,,536,,536,,,,536,,,,,,,,536,,', ',,536,536,536,536,536,536,,,,536,536,,,,,,,536,,536,536,536,536,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,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,564,564,564,,564,,,,564,564,,,,564,,564,564', '564,564,564,564,564,,,,,,564,564,564,564,564,564,564,,,564,,,,,,,564', ',,564,564,564,564,564,564,564,564,,564,564,564,,564,564,,564,564,564', ',,,,,,,,,,,,,,,,,,,564,,,564,,,564,564,,,564,,,,,,564,,,,,,,,564,,,', ',564,564,564,564,564,564,,,,564,564,,,,,,,564,,,564,564,564,585,585', '585,,585,,,,585,585,,,,585,,585,585,585,585,585,585,585,,,,,,585,585', '585,585,585,585,585,,,585,,,,,,,585,,,585,585,585,585,585,585,585,585', '585,585,585,585,,585,585,,585,585,585,,,,,,,,,,,,,,,,,,,,585,,,585,', ',585,585,,,585,,585,,585,,585,,,,,,,,585,,,,,585,585,585,585,585,585', ',,,585,585,,,,,,,585,,585,585,585,585,597,597,597,,597,,,,597,597,,', ',597,,597,597,597,597,597,597,597,,,,,,597,597,597,597,597,597,597,', ',597,,,,,,,597,,,597,597,597,597,597,597,597,597,,597,597,597,,597,597', ',597,597,597,,,,,,,,,,,,,,,,,,,,597,,,597,,,597,597,,,597,,,,,,597,', ',,,,,,597,,,,,597,597,597,597,597,597,,,,597,597,,,,,,,597,,,597,597', '597,601,601,601,,601,,,,601,601,,,,601,,601,601,601,601,601,601,601', ',,,,,601,601,601,601,601,601,601,,,601,,,,,,,601,,,601,601,601,601,601', '601,601,601,,601,601,601,,601,601,,601,601,601,,,,,,,,,,,,,,,,,,,,601', ',,601,,,601,601,,,601,,,,,,601,,,,,,,,601,,,,,601,601,601,601,601,601', ',,,601,601,,,,,,,601,,,601,601,601,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,630,630,630,,630,,,,630,630,,,,630', ',630,630,630,630,630,630,630,,,,,,630,630,630,630,630,630,630,,,630', ',,,,,,630,,,630,630,630,630,630,630,630,630,,630,630,630,,630,630,,630', '630,630,,,,,,,,,,,,,,,,,,,,630,,,630,,,630,630,,,630,,630,,,,630,,,', ',,,,630,,,,,630,630,630,630,630,630,,,,630,630,,,,,,,630,,,630,630,630', '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,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', '634,634,634,,634,,,,634,634,,,,634,,634,634,634,634,634,634,634,,,,', ',634,634,634,634,634,634,634,,,634,,,,,,,634,,,634,634,634,634,634,634', '634,634,634,634,634,634,,634,634,,634,634,634,,,,,,,,,,,,,,,,,,,,634', ',,634,,,634,634,,,634,,634,,634,,634,,,,,,,,634,,,,,634,634,634,634', '634,634,,,,634,634,,,,,,,634,,634,634,634,634,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,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,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,642,642,642,,642,,,,642', '642,,,,642,,642,642,642,642,642,642,642,,,,,,642,642,642,642,642,642', '642,,,642,,,,,,,642,,,642,642,642,642,642,642,642,642,,642,642,642,', '642,642,,642,642,642,,,,,,,,,,,,,,,,,,,,642,,,642,,,642,642,,,642,,', ',,,642,,,,,,,,642,,,,,642,642,642,642,642,642,,,,642,642,,,,,,,642,', ',642,642,642,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,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,646,646,646,,646,,,,646,646,,,,646,,646,646,646,646,646', '646,646,,,,,,646,646,646,646,646,646,646,,,646,,,,,,,646,,,646,646,646', '646,646,646,646,646,,646,646,646,,646,646,,646,646,646,,,,,,,,,,,,,', ',,,,,,646,,,646,,,646,646,,,646,,,,,,646,,,,,,,,646,,,,,646,646,646', '646,646,646,,,,646,646,,,,,,,646,,,646,646,646,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,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,671,671,671,,671,,,,671', '671,,,,671,,671,671,671,671,671,671,671,,,,,,671,671,671,671,671,671', '671,,,671,,,,,,,671,,,671,671,671,671,671,671,671,671,,671,671,671,', '671,671,,671,671,671,,,,,,,,,,,,,,,,,,,,671,,,671,,,671,671,,,671,,', ',,,671,,,,,,,,671,,,,,671,671,671,671,671,671,,,,671,671,,,,,,,671,', ',671,671,671,676,676,676,,676,,,,676,676,,,,676,,676,676,676,676,676', '676,676,,,,,,676,676,676,676,676,676,676,,,676,,,,,,,676,,,676,676,676', '676,676,676,676,676,,676,676,676,,676,676,,,,676,,,,,,,,,,,,,,,,,,,', '676,,,676,,,676,676,,,676,,,,,,,,,,,,,,,,,,,676,676,676,676,676,676', ',,,676,676,,,,,,,676,,,676,676,676,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', '687,687,687,,687,,,,687,687,,,,687,,687,687,687,687,687,687,687,,,,', ',687,687,687,687,687,687,687,,,687,,,,,,,687,,,687,687,687,687,687,687', '687,687,,687,687,687,,687,687,,,,687,,,,,,,,,,,,,,,,,,,,687,,,687,,', '687,687,,,687,,,,,,,,,,,,,,,,,,,687,687,687,687,687,687,,,,687,687,', ',,,,,687,,,687,687,687,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,693,693,693,', '693,,,,693,693,,,,693,,693,693,693,693,693,693,693,,,,,,693,693,693', '693,693,693,693,,,693,,,,,,,693,,,693,693,693,693,693,693,693,693,,693', '693,693,,693,693,,693,693,693,,,,,,,,,,,,,,,,,,,,693,,,693,,,693,693', ',,693,,693,,,,693,,,,,,,,693,,,,,693,693,693,693,693,693,,,,693,693', ',,,,,,693,,,693,693,693,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,713,713', '713,,713,,,,713,713,,,,713,,713,713,713,713,713,713,713,,,,,,713,713', '713,713,713,713,713,,,713,,,,,,,713,,,713,713,713,713,713,713,713,713', ',713,713,713,,713,713,,713,713,713,,,,,,,,,,,,,,,,,,,,713,,,713,,,713', '713,,,713,,,,,,713,,,,,,,,713,,,,,713,713,713,713,713,713,,,,713,713', ',,,,,,713,,,713,713,713,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,734,734,734,,734,,,,734,734,,,,734,,734,734', '734,734,734,734,734,,,,,,734,734,734,734,734,734,734,,,734,,,,,,,734', ',,734,734,734,734,734,734,734,734,,734,734,734,,734,734,,734,734,734', ',,,,,,,,,,,,,,,,,,,734,,,734,,,734,734,,,734,,734,,,,734,,,,,,,,734', ',,,,734,734,734,734,734,734,,,,734,734,,,,,,,734,,,734,734,734,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,,,,59,255,255,255,255,255,255,59,59,59', '255,255,59,59,59,,59,,255,,,255,255,255,,,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,433,59,,59,,,,433,433,433,,,433,433', '433,707,433,707,707,707,707,707,,,,433,433,433,433,,,707,,,,,433,433', ',433,433,433,433,433,,,,,,,,,,707,,,,,,,,,707,707,707,707,,433,433,433', '433,433,433,433,433,433,433,433,433,433,433,,,433,433,433,,,433,,,433', ',,433,433,,433,707,433,,433,,433,433,433,433,433,433,433,,433,433,433', ',,,,,,,,,,,,433,433,433,433,434,433,,433,,,,434,434,434,,,434,434,434', '546,434,546,546,546,546,546,,,,434,434,434,434,,,546,,,,,434,434,,434', '434,434,434,434,,,,,,,,,,546,,,,,,,,,546,546,546,546,,434,434,434,434', '434,434,434,434,434,434,434,434,434,434,,,434,434,434,,,434,,,434,,', '434,434,,434,546,434,,434,,434,434,434,434,434,434,434,,434,434,434', ',,,,,,,,,,,,434,434,434,434,31,434,,434,,,,31,31,31,,,31,31,31,709,31', '709,709,709,709,709,,,,,31,31,,,,709,,,,,31,31,,31,31,31,31,31,,,,,', ',,,,709,,,,,,,,,709,709,709,709,,31,31,31,31,31,31,31,31,31,31,31,31', '31,31,,,31,31,31,,,31,,31,31,,,31,31,,31,709,31,,31,,31,31,31,31,31', '31,31,,31,,31,,,,,,,,,,,,30,31,31,,31,,31,30,30,30,,,30,30,30,883,30', '883,883,883,883,883,,,,30,30,30,,,,883,,,,,30,30,,30,30,30,30,30,,,', ',,,,,,883,,,,,,,,,883,883,883,883,,30,30,30,30,30,30,30,30,30,30,30', '30,30,30,,,30,30,30,,,30,,30,30,,,30,30,,30,883,30,,30,,30,30,30,30', '30,30,30,,30,30,30,,,,,,,,,,,,482,30,30,,30,,30,482,482,482,,,482,482', '482,886,482,886,886,886,886,886,,,,482,482,,,,,886,,,,,482,482,,482', '482,482,482,482,,,,,,,,,,886,,,,,,,,,886,886,886,886,,424,,,,,,,424', '424,424,,482,424,424,424,,424,,482,,,,,482,482,424,424,424,,,,886,,', ',,424,424,,424,424,424,424,424,,482,482,,,,,,,,,,,,,482,,,,,482,,,424', '424,424,424,424,424,424,424,424,424,424,424,424,424,,,424,424,424,,', '424,,424,424,,,424,424,,424,,424,,424,,424,424,424,424,424,424,424,', '424,424,424,,,,,,744,744,,,744,,,424,424,,424,,424,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,744,,658,744,658,658,658', '658,658,,,,,261,261,,,261,658,,,,,744,,,261,261,744,261,261,261,261', '261,261,261,,,261,261,658,,,261,261,261,261,,,658,658,658,658,,,,,,', ',261,261,,261,261,261,261,261,261,261,261,261,261,261,,,261,658,,,,', ',,,658,1006,1006,,,1006,,,,,,261,,,1006,1006,261,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,,,1006', ',,,,,,,,,1007,1007,,,1007,,,,,,1006,,,1007,1007,1006,1007,1007,1007', '1007,1007,1007,1007,,,1007,1007,,,,1007,1007,1007,1007,,,,,,1007,,,', ',,,,1007,1007,,1007,1007,1007,1007,1007,1007,1007,1007,1007,1007,1007', ',,1007,,,,,,,,,,448,448,,,448,,,,,,1007,,,448,448,1007,448,448,448,448', '448,448,448,,,448,448,,,,448,448,448,448,,,,,,448,,,,,,,,448,448,,448', '448,448,448,448,448,448,448,448,448,448,,,448,,,,,,,,,,449,449,,,449', ',,,,,448,,,449,449,448,449,449,449,449,449,449,449,,,449,449,,,,449', '449,449,449,,,,,,449,,,,,,,,449,449,,449,449,449,449,449,449,449,449', '449,449,449,,,449,,,,,,,,,,516,516,,,516,,,,,,449,,,516,516,449,516', '516,516,516,516,516,516,,,516,516,,,,516,516,516,516,,,,,,516,,,,,,', ',516,516,,516,516,516,516,516,516,516,516,516,516,516,,,516,,,,,,,,', ',515,515,,,515,,,,,,516,,,515,515,516,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,,,,,,,,,,587,587,,,587,,,,,,515,,', '587,587,515,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,,,,,,,,,,745,745,,,745,,,,,,587,,,745,745,587,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,,,,,,,,,,586,586,,,586', ',,,,,745,,,586,586,745,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,,,,,,,,,,957,957,,,957,,,,,,586,,,957,957,586,957', '957,957,957,957,957,957,,,957,957,,,,957,957,957,957,,,,,,957,,,,,,', ',957,957,,957,957,957,957,957,957,957,957,957,957,957,,,957,,,,,,,,', ',212,212,,,212,,,,,,957,,,212,212,957,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,,,212,,,,,,,,,,211,211,,,211,,,,,,212,,', '211,211,212,211,211,211,211,211,211,211,,,211,211,,,,211,211,211,211', ',,,,,211,,,,,,,,211,211,,211,211,211,211,211,211,211,211,211,211,211', ',,211,,,,,,,,,,528,528,,,528,,,,,,211,,,528,528,211,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,,,,,,,,,,527,527,,,527', ',,,,,528,,,527,527,528,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,,911,527,911,911,911,911,911,940,,940,940,940,940,940,,', '911,,,,,527,,940,,754,527,754,754,754,754,754,,,,,,,911,,,754,,,,940', '940,911,911,911,911,,,,940,940,940,940,,,,,336,754,336,336,336,336,336', ',,,754,754,754,754,,,336,,,,990,911,990,990,990,990,990,,940,,,,,,,', '990,,336,336,,,,,,,754,336,336,336,336,,,,,,,,990,,,,,,,,,990,990,990', '990,,,,,,,,,,,,,336,,,,,,,,,,,,,,,,,,,,990' ] racc_action_check = arr = ::Array.new(25648, 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, 1391, 1732, 38, nil, 226, nil, nil, 12777, 1055, nil, 1055, 1469, -47, nil, -8, 106, 1193, 294, 80, 609, nil, -71, 15089, 2417, 213, nil, 365, nil, 160, 24014, 23889, 8017, 8289, 8425, nil, 5568, 9105, 9241, nil, 133, 415, 414, 223, 703, 10193, 10601, 10737, 164, 1195, nil, nil, nil, nil, nil, nil, nil, nil, nil, 23499, nil, 11553, 11825, nil, -10, nil, 11961, 12369, nil, nil, 12505, 12641, 209, nil, 1193, nil, nil, nil, nil, nil, -65, nil, nil, nil, nil, nil, nil, 164, 230, 247, 265, 1607, nil, nil, nil, 510, nil, nil, 640, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 13593, nil, nil, nil, nil, 13729, 13865, 14001, 14137, 14817, 302, nil, -5, 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, 287, nil, 3924, 15497, 16177, 16313, 25223, 25150, nil, 16721, 16857, 16993, 17129, 17265, 17401, nil, nil, 959, 208, 164, 365, 139, 293, 379, nil, 18081, 2554, 385, 18217, 18625, 19305, 19713, 20121, 20257, 20393, 20529, 20665, 21073, 21209, 21345, 21481, 21617, 21889, 22025, 22161, 22433, 22705, 22841, 22977, 23113, 23385, 6249, 6657, 7473, nil, nil, 24347, nil, nil, 380, 7609, nil, 391, nil, nil, nil, 7745, nil, nil, 7881, nil, 3787, nil, 376, 410, nil, 5841, 457, 8561, nil, 8697, 8833, nil, nil, 377, nil, 1075, 8969, 416, 5705, 432, 469, 471, 9377, 2006, 584, 818, 1093, 547, 548, nil, 520, 494, 67, nil, nil, nil, 532, 701, 495, 10329, nil, 342, 565, 567, 1174, nil, 608, nil, 11009, 4746, 738, nil, 594, nil, 404, 51, 592, 11145, nil, nil, 25493, 719, -7, 21, 11281, 11417, 539, 690, 590, 32, 25, 419, 671, 22, 708, nil, nil, 12097, nil, 12233, 312, 566, 484, 443, 422, 364, 318, 297, 228, nil, 457, nil, nil, nil, nil, nil, 296, nil, 324, nil, 352, nil, 613, 124, nil, 627, 189, nil, 629, -57, nil, 634, -42, nil, 316, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 2417, 917, nil, nil, nil, nil, 657, nil, 676, nil, 12913, 677, nil, 2006, 681, nil, nil, 703, 704, 400, 380, 24206, nil, nil, nil, 385, 260, 745, nil, nil, 23629, 23759, nil, 3102, nil, 701, nil, nil, 1732, nil, nil, nil, nil, -14, nil, 24566, 24639, 13049, 141, 13185, 13321, 13457, 5431, 5705, 428, -42, 778, 790, 791, 792, 1046, 908, 770, 5020, 4883, 4746, 4061, 6113, 5294, 5568, 4335, 4198, 5157, 673, 655, 4472, 4609, 2828, -11, 24139, nil, nil, nil, nil, nil, nil, 157, 177, 739, 745, nil, nil, 14273, nil, nil, 14409, nil, 14545, nil, nil, nil, nil, 14681, 779, 746, 750, nil, nil, 762, 14953, 766, 15225, 24785, 24712, 1097, 805, nil, nil, 15361, 768, nil, 15633, 15769, 15905, 25369, 25296, 3239, 16041, 891, 891, 778, nil, nil, 16449, nil, nil, 16585, nil, 801, nil, -97, 828, 35, 23723, nil, 788, 815, nil, 816, 841, 842, nil, nil, nil, nil, nil, nil, 836, nil, 644, nil, 17537, nil, nil, nil, 929, nil, nil, nil, 932, nil, nil, 944, 3650, 984, nil, 2828, 60, 56, 981, 994, nil, 17673, 25004, 24858, 36, nil, 197, 230, 141, nil, 821, nil, 10, 17809, nil, 604, nil, 17945, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 310, nil, nil, 314, nil, nil, nil, 880, nil, nil, 887, nil, 916, nil, 1331, nil, 901, 18353, 18489, 301, 938, 18761, 18897, 19033, 19169, 938, nil, nil, nil, 19441, 19577, 939, nil, 19849, 19985, nil, 238, 239, 130, 0, 912, 1869, 911, nil, nil, 24336, nil, nil, 1021, -19, 114, nil, nil, nil, nil, 923, nil, 966, 20801, nil, nil, 917, -105, 20937, 926, nil, 956, 90, 34, 993, 268, 1194, 1019, 982, 21753, 2554, 1045, 1054, 139, 1119, 22297, nil, nil, 447, nil, nil, nil, 2691, 5157, 1008, 249, nil, nil, 629, 23593, nil, 23853, nil, 6293, nil, 22569, nil, 574, nil, 1006, 356, nil, 1014, nil, nil, nil, nil, 660, nil, 1127, nil, nil, nil, nil, 1133, nil, 23249, 1017, 65, 20, 6, 154, 5977, nil, 816, nil, 24274, 24931, 6113, nil, nil, nil, 504, 281, 3102, 3239, 25456, 57, 779, -16, 920, 4609, nil, nil, nil, nil, nil, nil, nil, 1015, 6385, 3924, 6521, nil, 1017, nil, 2691, nil, 2965, nil, nil, 3513, nil, 2143, nil, 2280, 6793, 6929, 7065, 7201, -40, 7337, 1019, 1026, nil, 1039, 1044, 1047, nil, 1068, 1055, 1054, 1046, 8153, nil, nil, 4198, nil, nil, nil, 4335, 4472, nil, nil, 1061, 186, nil, nil, 1184, nil, 5020, 1064, 1131, nil, nil, nil, 1107, 1212, 1106, 1104, nil, nil, nil, 1105, 1106, nil, 1107, 1120, nil, 1122, nil, 1127, 510, 1125, 992, nil, 1246, nil, 9513, 1247, 2280, 2143, nil, 33, -7, 64, 229, 606, nil, 1141, 1869, 9649, nil, 158, 1272, 1273, 1159, nil, nil, nil, nil, nil, nil, nil, nil, 1173, 1161, nil, 3650, 9785, 9921, 3376, 221, nil, nil, 23978, nil, nil, 24103, nil, 6021, nil, nil, 1184, 785, 10057, 956, 1251, 1299, 5431, 1196, 1301, nil, 5294, nil, nil, 22, 10465, nil, nil, nil, nil, nil, 25431, nil, 6429, nil, 6565, nil, 6701, nil, nil, nil, nil, 351, 517, 1182, nil, -10, nil, 1304, 1305, 10873, 4883, nil, nil, 1306, 352, nil, nil, nil, nil, 25438, nil, 1187, nil, nil, 1188, 1189, 1190, 1191, nil, 1193, nil, 322, nil, nil, nil, 1227, 25077, nil, nil, 1210, nil, nil, nil, 4061, 421, 463, 481, 1269, 518, nil, 1196, 1197, 1199, 1200, 1201, 854, 1202, 813, 3787, nil, nil, nil, 36, 3513, nil, nil, 3376, 2965, nil, 25513, nil, 6837, nil, 6973, nil, 7109, nil, nil, nil, 635, 1267, 1268, nil, 1352, 11689, 24420, 24493, 1089, 7245, nil, nil, nil, nil, 951, 1241, 578, nil, nil, nil, 1362, 1363, 1364, 1245, 1255, 1256, 1258, nil, nil, 1262, -11, 19, 122, 1094, 1260, 1261, nil, nil, nil, nil, 5885, nil, nil, nil, nil, -8, nil, -119, nil ] racc_action_default = [ -1, -619, -618, -619, -2, -605, -4, -5, -619, -8, -9, -619, -619, -619, -29, -619, -619, -619, -281, -619, -41, -44, -607, -619, -49, -51, -52, -53, -58, -260, -260, -260, -294, -333, -334, -70, -618, -74, -82, -84, -619, -514, -515, -619, -619, -619, -619, -619, -607, -241, -272, -273, -274, -275, -276, -277, -278, -279, -280, -594, -283, -607, -618, -292, -302, -405, -619, -619, -307, -310, -605, -619, -318, -325, -619, -335, -336, -447, -448, -449, -450, -451, -452, -618, -455, -618, -618, -618, -618, -618, -618, -618, -492, -498, -499, -592, -503, -504, -593, -506, -507, -508, -509, -510, -511, -512, -513, -518, -519, 1049, -3, -606, -614, -615, -616, -7, -619, -619, -619, -619, -619, -619, -17, -619, -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, -618, -619, -619, -618, -619, -619, -604, -619, -619, -619, -619, -619, -607, -608, -48, -619, -514, -515, -619, -281, -619, -619, -233, -619, -618, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -619, -411, -414, -619, -602, -603, -59, -619, -301, -619, -428, -431, -65, -618, -425, -66, -607, -67, -242, -255, -618, -618, -259, -619, -265, -619, -587, -619, -619, -68, -69, -605, -13, -14, -619, -72, -618, -607, -619, -75, -78, -618, -90, -91, -619, -619, -98, -294, -297, -607, -418, -333, -334, -337, -426, -619, -80, -619, -86, -290, -500, -501, -619, -218, -219, -234, -619, -618, -286, -285, -619, -243, -611, -611, -619, -618, -303, -304, -546, -50, -619, -619, -619, -619, -605, -619, -606, -514, -515, -619, -619, -281, -619, -358, -359, -619, -321, -619, -113, -114, -156, -157, -158, -174, -179, -186, -189, -328, -619, -514, -515, -582, -583, -453, -619, -476, -619, -478, -619, -480, -619, -619, -460, -619, -619, -466, -619, -619, -472, -619, -619, -474, -619, -491, -493, -494, -495, -496, -6, -617, -23, -24, -25, -26, -27, -618, -619, -19, -20, -21, -123, -619, -30, -39, -40, -619, -619, -31, -199, -607, -250, -251, -618, -618, -595, -596, -260, -423, -597, -598, -596, -595, -260, -422, -424, -597, -598, -37, -207, -38, -619, -42, -43, -197, -265, -45, -46, -47, -607, -300, -619, -619, -618, -290, -619, -619, -619, -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, -607, -618, -260, -595, -596, -55, -60, -261, -419, -618, -618, -607, -607, -296, -256, -619, -264, -257, -619, -262, -619, -266, -590, -591, -12, -606, -16, -607, -71, -288, -87, -76, -619, -607, -618, -619, -619, -97, -619, -500, -501, -619, -83, -88, -619, -619, -619, -619, -619, -239, -619, -439, -619, -607, -609, -244, -613, -612, -246, -613, -291, -619, -585, -611, -619, -619, -546, -408, -581, -581, -529, -531, -531, -531, -545, -547, -548, -549, -550, -551, -552, -553, -619, -555, -619, -561, -563, -564, -566, -571, -573, -574, -576, -577, -578, -619, -618, -349, -350, -618, -619, -619, -619, -619, -434, -618, -619, -619, -290, -315, -108, -109, -619, -111, -619, -281, -619, -619, -326, -546, -330, -619, -454, -477, -482, -483, -485, -456, -479, -457, -481, -458, -459, -619, -462, -464, -619, -465, -468, -469, -619, -470, -471, -619, -497, -619, -18, -619, -28, -271, -619, -619, -427, -619, -252, -254, -619, -619, -61, -248, -249, -420, -619, -619, -63, -421, -619, -619, -299, -595, -596, -595, -596, -607, -197, -619, -394, -395, -607, -397, -412, -54, -415, -618, -429, -432, -247, -295, -618, -263, -267, -619, -588, -589, -15, -73, -619, -79, -85, -607, -595, -596, -618, -94, -96, -619, -81, -619, -206, -216, -217, -607, -618, -618, -284, -287, -611, -293, -586, -406, -618, -618, -607, -619, -527, -528, -619, -619, -538, -619, -541, -619, -543, -619, -360, -619, -362, -364, -371, -552, -607, -557, -565, -575, -579, -618, -351, -618, -308, -352, -353, -311, -619, -314, -619, -607, -595, -596, -599, -289, -619, -108, -109, -110, -619, -619, -618, -319, -520, -521, -619, -322, -618, -618, -546, -619, -619, -607, -619, -618, -461, -463, -467, -473, -475, -10, -124, -269, -619, -200, -619, -610, -618, -33, -202, -34, -203, -62, -35, -205, -36, -204, -64, -198, -619, -619, -619, -619, -427, -619, -581, -581, -376, -618, -618, -618, -393, -619, -607, -399, -552, -619, -559, -569, -618, -417, -416, -56, -618, -618, -258, -268, -77, -92, -89, -298, -618, -356, -618, -440, -618, -441, -442, -245, -619, -619, -607, -581, -562, -580, -530, -531, -531, -556, -531, -531, -572, -531, -567, -607, -619, -369, -619, -554, -619, -354, -619, -619, -618, -618, -313, -619, -427, -619, -108, -109, -112, -607, -618, -619, -523, -619, -619, -619, -607, -525, -331, -584, -484, -487, -488, -489, -490, -619, -270, -32, -201, -253, -619, -240, -619, -374, -375, -384, -378, -386, -619, -389, -619, -391, -396, -619, -619, -619, -558, -619, -619, -618, -619, -619, -11, -618, -446, -357, -619, -619, -444, -409, -410, -407, -526, -619, -534, -619, -536, -619, -539, -619, -542, -544, -361, -363, -367, -619, -372, -305, -619, -306, -619, -619, -619, -618, -316, -427, -619, -619, -323, -327, -329, -524, -546, -486, -581, -560, -377, -618, -618, -618, -618, -570, -618, -398, -607, -401, -403, -404, -568, -619, -290, -413, -619, -430, -433, -445, -618, -99, -100, -619, -619, -107, -443, -531, -531, -531, -531, -365, -619, -370, -619, -618, -309, -312, -267, -618, -618, -320, -522, -618, -618, -373, -619, -381, -619, -383, -619, -387, -619, -390, -392, -400, -619, -289, -599, -57, -439, -618, -619, -619, -106, -619, -532, -535, -537, -540, -619, -368, -618, -435, -436, -437, -619, -619, -619, -618, -618, -618, -618, -402, -438, -607, -595, -596, -599, -105, -531, -366, -355, -317, -324, -332, -619, -379, -382, -385, -388, -427, -533, -618, -380 ] clist = [ '6,218,277,277,277,211,221,260,424,430,17,554,417,692,297,365,17,583', '334,127,127,272,576,579,278,278,278,324,497,440,672,222,392,122,206', '632,114,9,753,532,222,222,222,9,17,302,302,132,132,130,130,4,412,522', '330,264,270,273,482,437,329,486,314,261,844,547,110,704,705,222,794', '672,115,491,222,222,714,924,222,347,327,373,127,375,377,380,383,386', '389,375,111,833,338,339,669,720,342,669,921,127,816,114,293,279,279', '279,326,797,535,538,949,337,337,295,740,337,728,731,743,17,953,984,955', '836,222,222,222,222,17,660,374,343,596,331,598,847,390,664,665,275,287', '288,398,399,400,401,9,708,710,712,613,826,353,616,858,402,597,861,977', '987,355,337,337,337,337,752,599,672,756,603,497,940,341,610,848,396', '614,340,333,614,277,796,533,325,366,311,311,747,798,350,335,410,415', '541,369,952,662,435,439,332,414,545,425,699,336,627,481,414,418,804', '448,1015,489,808,949,17,222,222,222,311,434,554,222,222,222,222,222', '222,1027,714,955,490,841,669,669,277,921,809,447,17,1017,277,734,820', '277,424,430,891,839,1035,677,904,653,371,372,897,732,278,488,686,376', '443,444,445,446,379,278,833,1,418,856,788,663,222,554,702,496,496,382', '222,385,388,222,868,758,759,518,391,859,404,515,795,523,493,352,945', '831,813,205,828,17,833,17,272,943,900,302,17,527,881,882,807,682,121', '508,601,679,849,2,,114,698,511,302,682,836,,506,,,,542,,17,,586,279', ',,,832,,834,,,279,910,,222,222,504,,,852,714,1036,714,,,,293,594,,594', ',293,580,581,,,,507,487,114,505,,513,,296,988,833,492,,682,,337,337', '735,,932,,1018,,,,,633,,,,,6,600,582,543,,,,,672,761,17,127,761,812', '640,,810,496,496,277,645,639,,,,626,912,914,554,916,918,,919,,777,975', '714,9,425,132,782,130,,,,311,,418,,638,,625,,,,644,434,222,655,440,989', ',311,793,648,862,863,,,,,,640,823,933,669,,,656,639,,,864,277,,1028', '656,656,523,714,,714,,,,,,523,,,311,,311,,,425,,661,,666,667,418,17', ',835,946,837,425,947,302,810,222,,434,,675,,714,302,,,678,,,931,434', '821,222,,674,,682,,971,,,,857,409,,,695,,,277,,,,,,,,,,,668,1010,1011', '1012,1013,,934,296,,691,,425,,,,,,418,17,,,17,964,,,,,222,,434,,,,,', ',,,,222,,696,,222,979,729,729,,,554,806,,,773,775,,,1023,,778,780,748', ',439,1046,,633,16,,127,296,799,,16,,296,751,805,222,222,757,1045,,766', '222,222,,523,222,,,1019,633,,311,656,,132,814,130,496,16,,311,,,,640', ',,645,,,,639,799,,,302,414,,,,,817,822,948,42,950,302,,866,,42,,1021', '1022,,,772,,,17,17,815,,,,633,,277,972,,973,,974,,817,,817,851,42,301', '301,,,,,,,425,,,843,,,16,,418,,,,222,791,,16,434,875,222,,,,,,17,17', '346,,127,368,853,17,,,496,,,,,,867,799,222,,,860,792,,,337,865,,,,,884', '884,884,827,,1024,,1025,,1026,,42,682,,,,1029,,894,,42,17,,902,1034', '17,17,906,,,,,,311,,17,829,,,829,,,,,311,633,,16,,,,,29,,909,1047,,', '29,,,,,222,,17,17,920,,,,16,,29,,17,222,,,,,926,29,29,29,,29,,,,,,939', '729,935,,,,,,337,936,,,,,,42,,,956,29,,337,17,,29,29,17,,29,,967,,,', ',725,,,727,42,16,,16,,,,,16,999,,,,,,,,17,,,,884,884,884,884,,884,311', ',,29,,,1006,16,29,29,29,29,29,,,,434,986,,,,,942,17,,791,277,,791,,791', ',817,,42,,42,,17,,301,42,,17,19,,17,17,425,,19,885,887,889,418,829,', '301,792,633,,792,,792,222,817,434,42,,,,,884,884,884,884,,,19,,,,,,', '16,,,,,,,311,824,825,368,884,368,,29,29,29,29,,311,,29,29,29,29,29,29', ',351,,,,,,,,,,29,,,,,,,,,791,,791,,791,,791,,,,,,,42,,,,,,,873,19,,', ',29,,,,,19,29,,792,29,792,,792,,792,,,,,,,,,,,791,,29,,29,16,,,,29,', ',,,,896,,,,898,899,991,993,995,997,,998,,,903,,,,792,,29,,,,,,,,,,,', ',,,29,29,,,,,,,,928,929,,,,,42,,19,,,,,301,,,438,16,,,16,,301,,,,,,', ',,,19,,,,,,,,1041,1042,1043,1044,,,,,,960,,,,963,29,,,,,,,,,,1048,,', ',,,,,,,,,,42,,,42,,,983,,,,,,,,,,19,,19,,,,,19,29,,,,,,,,,,,,,,,1004', '18,,,,,,18,,,19,,,,,1016,,,,,1020,,,,,16,16,,,,,,,,,18,304,304,,,29', ',,,,,,,,29,,,,,,,,,,,,301,,,,29,,,,,349,,301,,,,,16,16,,,,,,16,42,42', ',19,,,,,,,,,,,,,,,,,,,,,,18,29,,,29,,,,,18,29,,,,,,,,,16,,,29,16,16', ',29,42,42,,,411,,16,42,,,,442,,,,,,,,,,,,,,,,,,,,,,,29,29,16,16,,,29', '29,,,29,,16,,,368,,,42,19,,,42,42,,,,,,,,,42,,,18,,,,,,,,499,,501,,502', '503,,,16,,,,16,,,,18,,,42,42,29,29,,,,,,,42,,,,,,,,,,,,,16,,,,,19,,', '19,,544,,,,,,,,,29,,,368,,,29,42,,,,42,29,29,16,966,18,,18,29,,,304', '18,,,,,,16,29,,,,16,,,16,16,304,,42,,,,,,,,18,,,,,,,438,41,,,,,,41,29', ',,,29,29,,629,,,42,,,595,29,595,,,,,,,,,,42,,41,300,300,42,,,42,42,', ',,,,,,29,,29,29,19,19,,,,,,,29,29,,,,,,,345,18,,367,,,,,,,,,,,,,,,,', ',,,,,,,670,,,544,29,673,,,29,19,19,,,41,,,19,,,,,,41,,,,,,,,,,,,,,,', '29,,,670,,,544,,,,,,,,,,,,,,,,,19,,,,19,19,,,721,,29,,,,19,18,,,,,,', '304,,,29,,,,,29,304,,29,29,,,,,,,,,,19,19,,,41,,,29,,,19,,,,,,,,,,,', ',,,,,,41,,767,,,,670,544,,,,,,,18,,,18,,,,19,,,,19,,,,970,,,,,,,,,,', ',,,811,,,,,,,,,,,,19,,,,,,41,,41,,819,,300,41,,,,,,,,,,,,,,,,300,838', ',,19,,,,,,41,,,,,,,,,19,,,442,,19,,,19,19,,304,,,,,,,,367,,367,304,', ',,,,,,,,,,,18,18,874,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,41,,,,,,,,,,,,,', ',,,,18,18,,,,,872,18,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,595,,', '18,,,,18,18,,544,,,,,,,18,,,,,,,,,,,,,,,,,,41,,,,,,,300,,,,,18,18,,', '300,,,,,,18,,,,,,982,,,,,,,,,,,,,,,,,,,,,,,,,,,,,595,,,,18,,,,18,,,', '969,,41,,,41,,,,,,,,,,,,,,,,,,,,,18,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', '18,,,,,,,,,,,,,,,18,,,,,18,,,18,18,,,,,,,,,,,,,,,,,,,300,,,,,,,,,,,300', ',,,,,,,,,,,,41,41,,,,,,,,,,,,,,,,,,,,,,229,,,,,,,,,276,276,276,,,,,', ',,,,,321,322,323,,,,,41,41,,,,,,41,,,276,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,367,,,41,,,,41,41,,,,,,,,,41,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',41,41,,,,,,,,,41,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,367,,,,41,,,,41', ',,,965,,,276,416,276,,,,436,441,,,,,,,,,,,,,,,229,41,,455,456,457,458', '459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475', '476,477,478,479,480,,,,,,41,276,,,,,,276,,,276,,,,,41,,276,,276,41,276', '276,41,41,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,529,,,,,,,,,276,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,276,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276,,436,654,416,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276,,,276,,276,,,,,,,,,,,,,,276,,,', ',,,,,,688,689,690,,,,,,,,,,276,,,276,,,,,,,,,,,,,,,,,,,,,,,,,276,,,', ',,,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276', '769,,,276,276,774,776,,,,,779,781,,,654,783,,,,,,,,,,,,,,,,,,,,,,,,276', ',,,,,,,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,', '276,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,,,276,,876,,,,,,,,,,,,,,774,776', '781,779,,879,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276,876,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,276,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,276' ] racc_goto_table = arr = ::Array.new(3342, 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,22,152,40,40,24,182,25,13,53,60,24,93,87,61,61,72,90', '90,69,69,69,34,74,20,195,24,60,17,17,26,96,9,97,10,24,24,24,9,24,24', '24,65,65,64,64,2,30,55,69,41,41,41,40,30,6,42,54,39,91,151,5,136,136', '24,141,195,7,25,24,24,130,132,24,24,51,6,61,6,6,6,6,6,6,6,8,186,19,19', '75,131,19,75,129,61,14,96,49,71,71,71,32,144,70,70,191,32,32,50,106', '32,92,92,58,24,146,107,147,190,24,24,24,24,24,43,169,5,59,71,59,14,169', '43,43,48,48,48,19,19,19,19,9,184,184,184,172,144,108,172,109,9,110,111', '132,112,113,32,32,32,32,114,115,195,116,173,74,117,104,173,103,7,173', '102,101,173,36,133,100,99,98,67,67,95,139,94,89,22,22,86,85,145,73,22', '22,68,69,148,72,149,150,66,153,69,6,154,27,132,157,158,191,24,24,24', '24,67,61,182,24,24,24,24,24,24,146,130,147,159,130,75,75,36,129,160', '51,24,161,36,162,163,36,40,40,144,131,132,55,164,25,167,168,46,93,69', '72,55,170,32,32,32,32,171,69,186,1,6,58,26,45,24,182,151,6,6,174,24', '175,176,24,177,178,179,34,180,181,33,27,142,53,51,21,141,185,26,18,187', '24,186,24,72,188,15,24,24,27,136,136,43,40,11,51,194,25,105,3,,96,70', '54,24,40,190,,9,,,,6,,24,,27,71,,,,142,,142,,,71,136,,24,24,5,,,26,130', '91,130,,,,49,24,,24,,49,19,19,,,,50,48,96,8,,50,,12,97,186,48,,40,,32', '32,25,,92,,14,,,,,34,,,,,6,39,5,71,,,,,195,173,24,61,173,55,72,,74,6', '6,36,72,6,,,,17,184,184,182,184,184,,184,,42,130,130,9,72,65,42,64,', ',,67,,6,,41,,2,,,,41,61,24,34,20,136,,67,140,51,10,10,,,,,,72,70,26', '75,,,6,6,,,151,36,,13,6,6,53,130,,130,,,,,,53,,,67,,67,,,72,,41,,51', '51,6,24,,140,142,140,72,142,24,74,24,,61,,51,,130,24,,,51,,,90,61,30', '24,,9,,40,,142,,,,25,12,,,51,,,36,,,,,,,,,,,71,184,184,184,184,,10,12', ',32,,72,,,,,,6,24,,,24,90,,,,,24,,61,,,,,,,,,,24,,71,,24,90,96,96,,', '182,87,,,22,22,,,142,,22,22,96,,22,184,,34,23,,61,12,34,,23,,12,32,152', '24,24,32,26,,17,24,24,,53,24,,,93,34,,67,6,,65,53,64,6,23,,67,,,,72', ',,72,,,,6,34,,,24,69,,,,,6,6,140,57,140,24,,60,,57,,10,10,,,71,,,24', '24,51,,,,34,,36,140,,140,,140,,6,,6,69,57,57,57,,,,,,,72,,,51,,,23,', '6,,,,24,135,,23,61,22,24,,,,,,24,24,57,,61,57,19,24,,,6,,,,,,51,34,24', ',,96,137,,,32,96,,,,,6,6,6,135,,140,,140,,140,,57,40,,,,25,,24,,57,24', ',6,140,24,24,6,,,,,,67,,24,137,,,137,,,,,67,34,,23,,,,,44,,51,140,,', '44,,,,,24,,24,24,51,,,,23,,44,,24,24,,,,,19,44,44,44,,44,,,,,,51,96', '19,,,,,,32,96,,,,,,57,,,24,44,,32,24,,44,44,24,,44,,24,,,,,12,,,12,57', '23,,23,,,,,23,34,,,,,,,,24,,,,6,6,6,6,,6,67,,,44,,,27,23,44,44,44,44', '44,,,,61,96,,,,,135,24,,135,36,,135,,135,,6,,57,,57,,24,,57,57,,24,29', ',24,24,72,,29,138,138,138,6,137,,57,137,34,,137,,137,24,6,61,57,,,,', '6,6,6,6,,,29,,,,,,,23,,,,,,,67,12,12,57,6,57,,44,44,44,44,,67,,44,44', '44,44,44,44,,29,,,,,,,,,,44,,,,,,,,,135,,135,,135,,135,,,,,,,57,,,,', ',,12,29,,,,44,,,,,29,44,,137,44,137,,137,,137,,,,,,,,,,,135,,44,,44', '23,,,,44,,,,,,12,,,,12,12,138,138,138,138,,138,,,12,,,,137,,44,,,,,', ',,,,,,,,,44,44,,,,,,,,12,12,,,,,57,,29,,,,,57,,,29,23,,,23,,57,,,,,', ',,,,29,,,,,,,,138,138,138,138,,,,,,12,,,,12,44,,,,,,,,,,138,,,,,,,,', ',,,,57,,,57,,,12,,,,,,,,,,29,,29,,,,,29,44,,,,,,,,,,,,,,,12,28,,,,,', '28,,,29,,,,,12,,,,,12,,,,,23,23,,,,,,,,,28,28,28,,,44,,,,,,,,,44,,,', ',,,,,,,,57,,,,44,,,,,28,,57,,,,,23,23,,,,,,23,57,57,,29,,,,,,,,,,,,', ',,,,,,,,,28,44,,,44,,,,,28,44,,,,,,,,,23,,,44,23,23,,44,57,57,,,31,', '23,57,,,,31,,,,,,,,,,,,,,,,,,,,,,,44,44,23,23,,,44,44,,,44,,23,,,57', ',,57,29,,,57,57,,,,,,,,,57,,,28,,,,,,,,31,,31,,31,31,,,23,,,,23,,,,28', ',,57,57,44,44,,,,,,,57,,,,,,,,,,,,,23,,,,,29,,,29,,31,,,,,,,,,44,,,57', ',,44,57,,,,57,44,44,23,57,28,,28,44,,,28,28,,,,,,23,44,,,,23,,,23,23', '28,,57,,,,,,,,28,,,,,,,29,56,,,,,,56,44,,,,44,44,,31,,,57,,,28,44,28', ',,,,,,,,,57,,56,56,56,57,,,57,57,,,,,,,,44,,44,44,29,29,,,,,,,44,44', ',,,,,,56,28,,56,,,,,,,,,,,,,,,,,,,,,,,,31,,,31,44,31,,,44,29,29,,,56', ',,29,,,,,,56,,,,,,,,,,,,,,,,44,,,31,,,31,,,,,,,,,,,,,,,,,29,,,,29,29', ',,31,,44,,,,29,28,,,,,,,28,,,44,,,,,44,28,,44,44,,,,,,,,,,29,29,,,56', ',,44,,,29,,,,,,,,,,,,,,,,,,56,,31,,,,31,31,,,,,,,28,,,28,,,,29,,,,29', ',,,29,,,,,,,,,,,,,,31,,,,,,,,,,,,29,,,,,,56,,56,,31,,56,56,,,,,,,,,', ',,,,,,56,31,,,29,,,,,,56,,,,,,,,,29,,,31,,29,,,29,29,,28,,,,,,,,56,', '56,28,,,,,,,,,,,,,28,28,31,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,56,,,,,,,', ',,,,,,,,,,28,28,,,,,28,28,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,28', ',,28,,,,28,28,,31,,,,,,,28,,,,,,,,,,,,,,,,,,56,,,,,,,56,,,,,28,28,,', '56,,,,,,28,,,,,,31,,,,,,,,,,,,,,,,,,,,,,,,,,,,,28,,,,28,,,,28,,,,28', ',56,,,56,,,,,,,,,,,,,,,,,,,,,28,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,28,', ',,,,,,,,,,,,,28,,,,,28,,,28,28,,,,,,,,,,,,,,,,,,,56,,,,,,,,,,,56,,,', ',,,,,,,,,56,56,,,,,,,,,,,,,,,,,,,,,,35,,,,,,,,,35,35,35,,,,,,,,,,,35', '35,35,,,,,56,56,,,,,,56,,,35,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,56', ',,56,,,,56,56,,,,,,,,,56,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,56,56,,,,,,,,', '56,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,56,,,,56,,,,56,,,,56,,,35,35,35', ',,,35,35,,,,,,,,,,,,,,,35,56,,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,,,,,,56,35,,,,,,35,,,35,,,,,56', ',35,,35,56,35,35,56,56,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,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,35,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', '35,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,35' ] racc_goto_check = arr = ::Array.new(3342, 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, 268, 49, 318, nil, 61, -2, 64, 85, 35, -286, 303, 342, -518, -592, -511, nil, 22, 286, 26, -186, 223, -17, 631, 8, -198, -382, -12, 1305, 991, -156, 1239, 45, 167, -21, 2336, -30, nil, nil, 36, -203, 26, -203, -352, 841, -213, -552, nil, 107, 66, 77, 19, nil, -23, 24, -262, 1636, 691, -474, -221, -59, 8, nil, nil, 38, 36, -203, 148, 137, -8, -222, 71, -9, -286, -251, -401, nil, nil, nil, nil, nil, nil, nil, nil, nil, 120, -140, -46, nil, 125, -316, -661, -464, -326, 118, -409, 31, -561, 110, 123, -144, 115, 109, -554, 103, -414, -475, -811, 80, -593, -198, -594, -777, 87, -433, -199, -432, -695, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, -742, -486, -467, -765, -477, nil, 91, -481, 124, 207, -470, -194, -588, -367, nil, -551, -697, -772, -770, -135, -342, 139, -271, -18, -53, -451, nil, nil, -56, -451, -38, -428, -743, -342, -450, -569, nil, nil, 173, 171, 45, 174, 178, -229, -203, 190, 191, 191, -475, -321, -321, 196, -461, -325, nil, -404, -411, -616, -404, -576, nil, -586, -776, nil, nil, -55, -468 ] racc_goto_default = [ nil, nil, nil, nil, 5, nil, 290, 7, 344, 291, nil, nil, 531, nil, 845, nil, 289, nil, nil, nil, 14, 15, 21, 228, 320, nil, nil, 745, 226, 227, nil, 282, 20, nil, 328, 24, 25, 26, 27, nil, 685, nil, nil, nil, 308, nil, nil, 28, 419, 35, nil, nil, 37, 40, 39, nil, 223, 224, 593, nil, 129, 427, 128, 131, 78, 79, nil, 49, nil, 420, nil, 421, 432, 641, 494, 280, 265, 50, 51, 52, 53, 54, 55, 56, 57, 58, nil, 266, 64, nil, nil, nil, nil, nil, nil, nil, 577, 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, 716, 561, nil, 717, 944, 790, 549, nil, 550, nil, nil, 551, nil, 553, 657, nil, nil, nil, 559, nil, nil, nil, 755, nil, nil, nil, 431, 267, nil, nil, nil, nil, nil, nil, nil, nil, 77, 80, 82, nil, nil, nil, nil, nil, 608, nil, nil, nil, nil, nil, nil, nil, nil, 830, 548, nil, 552, 563, 565, 802, 568, 569, 803, 572, 575, 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, 0, 243, :_reduce_292, 4, 209, :_reduce_293, 1, 209, :_reduce_294, 4, 209, :_reduce_295, 3, 209, :_reduce_296, 1, 209, :_reduce_297, 5, 209, :_reduce_298, 4, 209, :_reduce_299, 3, 209, :_reduce_300, 2, 209, :_reduce_301, 1, 209, :_reduce_none, 2, 209, :_reduce_303, 2, 209, :_reduce_304, 6, 209, :_reduce_305, 6, 209, :_reduce_306, 0, 244, :_reduce_307, 0, 245, :_reduce_308, 7, 209, :_reduce_309, 0, 246, :_reduce_310, 0, 247, :_reduce_311, 7, 209, :_reduce_312, 5, 209, :_reduce_313, 4, 209, :_reduce_314, 0, 248, :_reduce_315, 0, 249, :_reduce_316, 9, 209, :_reduce_317, 0, 250, :_reduce_318, 0, 251, :_reduce_319, 7, 209, :_reduce_320, 0, 252, :_reduce_321, 0, 253, :_reduce_322, 0, 254, :_reduce_323, 9, 209, :_reduce_324, 0, 255, :_reduce_325, 0, 256, :_reduce_326, 6, 209, :_reduce_327, 0, 257, :_reduce_328, 6, 209, :_reduce_329, 0, 258, :_reduce_330, 0, 259, :_reduce_331, 9, 209, :_reduce_332, 1, 209, :_reduce_333, 1, 209, :_reduce_334, 1, 209, :_reduce_335, 1, 209, :_reduce_336, 1, 166, :_reduce_337, 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, 270, :_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_355, 1, 156, :_reduce_none, 2, 156, :_reduce_357, 1, 236, :_reduce_none, 1, 236, :_reduce_359, 1, 271, :_reduce_none, 3, 271, :_reduce_361, 1, 274, :_reduce_362, 3, 274, :_reduce_363, 1, 273, :_reduce_364, 4, 273, :_reduce_365, 6, 273, :_reduce_366, 3, 273, :_reduce_367, 5, 273, :_reduce_368, 2, 273, :_reduce_369, 4, 273, :_reduce_370, 1, 273, :_reduce_371, 3, 273, :_reduce_372, 4, 275, :_reduce_373, 2, 275, :_reduce_374, 2, 275, :_reduce_375, 1, 275, :_reduce_376, 2, 280, :_reduce_377, 1, 280, :_reduce_none, 6, 281, :_reduce_379, 8, 281, :_reduce_380, 4, 281, :_reduce_381, 6, 281, :_reduce_382, 4, 281, :_reduce_383, 2, 281, :_reduce_384, 6, 281, :_reduce_385, 2, 281, :_reduce_386, 4, 281, :_reduce_387, 6, 281, :_reduce_388, 2, 281, :_reduce_389, 4, 281, :_reduce_390, 2, 281, :_reduce_391, 4, 281, :_reduce_392, 1, 281, :_reduce_393, 1, 185, :_reduce_394, 1, 185, :_reduce_none, 3, 285, :_reduce_396, 1, 285, :_reduce_397, 4, 285, :_reduce_398, 1, 286, :_reduce_none, 4, 286, :_reduce_400, 1, 287, :_reduce_401, 3, 287, :_reduce_402, 1, 288, :_reduce_403, 1, 288, :_reduce_none, 0, 292, :_reduce_405, 3, 231, :_reduce_406, 4, 290, :_reduce_407, 1, 290, :_reduce_408, 3, 291, :_reduce_409, 3, 291, :_reduce_410, 0, 295, :_reduce_411, 0, 296, :_reduce_412, 6, 294, :_reduce_413, 2, 180, :_reduce_414, 4, 180, :_reduce_415, 5, 180, :_reduce_416, 5, 180, :_reduce_417, 0, 298, :_reduce_418, 3, 230, :_reduce_419, 4, 230, :_reduce_420, 4, 230, :_reduce_421, 3, 230, :_reduce_422, 3, 230, :_reduce_423, 3, 230, :_reduce_424, 2, 230, :_reduce_425, 1, 230, :_reduce_426, 4, 230, :_reduce_427, 0, 299, :_reduce_428, 0, 300, :_reduce_429, 6, 229, :_reduce_430, 0, 301, :_reduce_431, 0, 302, :_reduce_432, 6, 229, :_reduce_433, 0, 304, :_reduce_434, 6, 235, :_reduce_435, 1, 303, :_reduce_none, 1, 303, :_reduce_none, 6, 155, :_reduce_438, 0, 155, :_reduce_439, 1, 305, :_reduce_440, 1, 305, :_reduce_none, 1, 305, :_reduce_none, 2, 306, :_reduce_443, 1, 306, :_reduce_none, 2, 157, :_reduce_445, 1, 157, :_reduce_none, 1, 219, :_reduce_447, 1, 219, :_reduce_448, 1, 219, :_reduce_none, 1, 220, :_reduce_450, 1, 308, :_reduce_451, 1, 308, :_reduce_none, 2, 308, :_reduce_453, 3, 309, :_reduce_454, 1, 309, :_reduce_455, 3, 221, :_reduce_456, 3, 222, :_reduce_457, 3, 223, :_reduce_458, 3, 223, :_reduce_459, 1, 313, :_reduce_460, 3, 313, :_reduce_461, 1, 314, :_reduce_none, 2, 314, :_reduce_463, 3, 225, :_reduce_464, 3, 225, :_reduce_465, 1, 316, :_reduce_466, 3, 316, :_reduce_467, 3, 224, :_reduce_468, 3, 224, :_reduce_469, 3, 226, :_reduce_470, 3, 226, :_reduce_471, 1, 317, :_reduce_472, 3, 317, :_reduce_473, 1, 318, :_reduce_474, 3, 318, :_reduce_475, 1, 310, :_reduce_476, 2, 310, :_reduce_477, 1, 311, :_reduce_478, 2, 311, :_reduce_479, 1, 312, :_reduce_480, 2, 312, :_reduce_481, 1, 315, :_reduce_482, 0, 320, :_reduce_483, 3, 315, :_reduce_484, 0, 321, :_reduce_485, 4, 315, :_reduce_486, 1, 319, :_reduce_487, 1, 319, :_reduce_488, 1, 319, :_reduce_489, 1, 319, :_reduce_none, 2, 206, :_reduce_491, 1, 206, :_reduce_492, 1, 322, :_reduce_none, 1, 322, :_reduce_none, 1, 322, :_reduce_none, 1, 322, :_reduce_none, 3, 207, :_reduce_497, 1, 307, :_reduce_none, 1, 307, :_reduce_none, 2, 307, :_reduce_500, 2, 307, :_reduce_501, 1, 198, :_reduce_none, 1, 198, :_reduce_none, 1, 198, :_reduce_none, 1, 198, :_reduce_none, 1, 198, :_reduce_none, 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, 199, :_reduce_513, 1, 227, :_reduce_514, 1, 227, :_reduce_515, 1, 165, :_reduce_516, 1, 165, :_reduce_517, 1, 170, :_reduce_518, 1, 170, :_reduce_519, 1, 237, :_reduce_520, 0, 323, :_reduce_521, 4, 237, :_reduce_522, 2, 237, :_reduce_523, 3, 239, :_reduce_524, 2, 239, :_reduce_525, 4, 324, :_reduce_526, 2, 324, :_reduce_527, 2, 324, :_reduce_528, 1, 324, :_reduce_none, 2, 326, :_reduce_530, 0, 326, :_reduce_531, 6, 293, :_reduce_532, 8, 293, :_reduce_533, 4, 293, :_reduce_534, 6, 293, :_reduce_535, 4, 293, :_reduce_536, 6, 293, :_reduce_537, 2, 293, :_reduce_538, 4, 293, :_reduce_539, 6, 293, :_reduce_540, 2, 293, :_reduce_541, 4, 293, :_reduce_542, 2, 293, :_reduce_543, 4, 293, :_reduce_544, 1, 293, :_reduce_545, 0, 293, :_reduce_546, 1, 289, :_reduce_547, 1, 289, :_reduce_548, 1, 289, :_reduce_549, 1, 289, :_reduce_550, 1, 272, :_reduce_none, 1, 272, :_reduce_552, 1, 328, :_reduce_none, 3, 328, :_reduce_554, 1, 282, :_reduce_555, 3, 282, :_reduce_556, 2, 329, :_reduce_557, 2, 330, :_reduce_558, 1, 276, :_reduce_none, 3, 276, :_reduce_560, 1, 325, :_reduce_none, 3, 325, :_reduce_562, 1, 331, :_reduce_none, 1, 331, :_reduce_none, 2, 277, :_reduce_565, 1, 277, :_reduce_566, 3, 332, :_reduce_567, 3, 333, :_reduce_568, 1, 283, :_reduce_569, 3, 283, :_reduce_570, 1, 327, :_reduce_571, 3, 327, :_reduce_572, 1, 334, :_reduce_none, 1, 334, :_reduce_none, 2, 284, :_reduce_575, 1, 284, :_reduce_576, 1, 335, :_reduce_none, 1, 335, :_reduce_none, 2, 279, :_reduce_579, 2, 278, :_reduce_580, 0, 278, :_reduce_581, 1, 240, :_reduce_none, 0, 336, :_reduce_583, 4, 240, :_reduce_584, 1, 228, :_reduce_585, 2, 228, :_reduce_586, 1, 213, :_reduce_none, 3, 213, :_reduce_588, 3, 337, :_reduce_589, 2, 337, :_reduce_590, 2, 337, :_reduce_591, 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, 297, :_reduce_none, 1, 297, :_reduce_none, 1, 297, :_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_614, 1, 238, :_reduce_none, 1, 150, :_reduce_none, 2, 150, :_reduce_617, 0, 148, :_reduce_618 ] racc_reduce_n = 619 racc_shift_n = 1049 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", "@26", "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", "@27", "f_args", "do_block", "@28", "@29", "operation3", "@30", "@31", "@32", "@33", "@34", "cases", "@35", "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", "@36", "@37", "sym", "@38", "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", "@39", "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 = self.lexer.lineno result end def _reduce_293(val, _values, result) result = new_hash val result end def _reduce_294(val, _values, result) result = s(:return) result end def _reduce_295(val, _values, result) result = new_yield val[2] result end def _reduce_296(val, _values, result) result = new_yield result end def _reduce_297(val, _values, result) result = new_yield result end def _reduce_298(val, _values, result) result = s(:defined, val[3]) result end def _reduce_299(val, _values, result) result = s(:call, val[2], :"!") result end def _reduce_300(val, _values, result) debug20 14, val, result result end def _reduce_301(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 302 omitted def _reduce_303(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_304(val, _values, result) result = val[1] # TODO: fix lineno result end def _reduce_305(val, _values, result) result = new_if val[1], val[3], val[4] result end def _reduce_306(val, _values, result) result = new_if val[1], val[4], val[3] result end def _reduce_307(val, _values, result) lexer.cond.push true result end def _reduce_308(val, _values, result) lexer.cond.pop result end def _reduce_309(val, _values, result) result = new_while val[5], val[2], true result end def _reduce_310(val, _values, result) lexer.cond.push true result end def _reduce_311(val, _values, result) lexer.cond.pop result end def _reduce_312(val, _values, result) result = new_until val[5], val[2], true result end def _reduce_313(val, _values, result) (_, line), expr, _, body, _ = val result = new_case expr, body, line result end def _reduce_314(val, _values, result) (_, line), _, body, _ = val result = new_case nil, body, line result end def _reduce_315(val, _values, result) lexer.cond.push true result end def _reduce_316(val, _values, result) lexer.cond.pop result end def _reduce_317(val, _values, result) result = new_for val[4], val[1], val[7] result end def _reduce_318(val, _values, result) result = self.lexer.lineno result end def _reduce_319(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_320(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_321(val, _values, result) result = self.lexer.lineno result end def _reduce_322(val, _values, result) result = self.in_def self.in_def = false result end def _reduce_323(val, _values, result) result = self.in_single self.in_single = 0 self.env.extend result end def _reduce_324(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_325(val, _values, result) result = self.lexer.lineno result end def _reduce_326(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_327(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_328(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_329(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_330(val, _values, result) self.comments.push self.lexer.comments lexer.lex_state = :expr_fname result end def _reduce_331(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_332(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_333(val, _values, result) result = s(:break) result end def _reduce_334(val, _values, result) result = s(:next) result end def _reduce_335(val, _values, result) result = s(:redo) result end def _reduce_336(val, _values, result) result = s(:retry) result end def _reduce_337(val, _values, result) result = value_expr(val[0]) result end # 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 # reduce 354 omitted def _reduce_355(val, _values, result) result = s(:if, val[1], val[3], val[4]) result end # reduce 356 omitted def _reduce_357(val, _values, result) result = val[1] result end # reduce 358 omitted def _reduce_359(val, _values, result) val[0].delete_at 1 if val[0][1].nil? # HACK result end # reduce 360 omitted def _reduce_361(val, _values, result) result = val[1] result end def _reduce_362(val, _values, result) result = s(:array, val[0]) result end def _reduce_363(val, _values, result) result = list_append val[0], val[2] result end def _reduce_364(val, _values, result) args, = val result = block_var args result end def _reduce_365(val, _values, result) args, _, _, splat = val result = block_var args, "*#{splat}".to_sym result end def _reduce_366(val, _values, result) args, _, _, splat, _, args2 = val result = block_var args, "*#{splat}".to_sym, args2 result end def _reduce_367(val, _values, result) args, _, _ = val result = block_var args, :* result end def _reduce_368(val, _values, result) args, _, _, _, args2 = val result = block_var args, :*, args2 result end def _reduce_369(val, _values, result) _, splat = val result = block_var :"*#{splat}" result end def _reduce_370(val, _values, result) _, splat, _, args = val result = block_var :"*#{splat}", args result end def _reduce_371(val, _values, result) result = block_var :* result end def _reduce_372(val, _values, result) _, _, args = val result = block_var :*, args 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 = call_args val result end def _reduce_377(val, _values, result) result = args val result end # reduce 378 omitted 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 = args val result end def _reduce_394(val, _values, result) result = 0 result end # reduce 395 omitted def _reduce_396(val, _values, result) result = args val result end def _reduce_397(val, _values, result) self.lexer.command_start = true result = s(:args) result end def _reduce_398(val, _values, result) result = args val result end # reduce 399 omitted 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 = args val result end def _reduce_403(val, _values, result) result = s(:shadow, val[0].to_sym) result end # reduce 404 omitted def _reduce_405(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_406(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_407(val, _values, result) result = args val result end def _reduce_408(val, _values, result) result = val[0] result = 0 if result == s(:args) result end def _reduce_409(val, _values, result) result = val[1] result end def _reduce_410(val, _values, result) result = val[1] result end def _reduce_411(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_412(val, _values, result) result = nil # self.env.dynamic.keys result end def _reduce_413(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_414(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_415(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] 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) iter1, _, name, args, iter2 = val call = new_call iter1, name.to_sym, args iter2.insert 1, call result = iter2 result end def _reduce_418(val, _values, result) result = self.lexer.lineno result end def _reduce_419(val, _values, result) args = self.call_args val[2..-1] result = val[0].concat args[1..-1] result end def _reduce_420(val, _values, result) result = new_call val[0], val[2].to_sym, val[3], val[1] result end def _reduce_421(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_422(val, _values, result) result = new_call val[0], val[2].to_sym result end def _reduce_423(val, _values, result) result = new_call val[0], :call, val[2], val[1] result end def _reduce_424(val, _values, result) result = new_call val[0], :call, val[2] result end def _reduce_425(val, _values, result) result = new_super val[1] result end def _reduce_426(val, _values, result) result = s(:zsuper) result end def _reduce_427(val, _values, result) result = new_aref val result end def _reduce_428(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_429(val, _values, result) result = nil # self.env.dynamic.keys result end def _reduce_430(val, _values, result) _, line, args, _, body, _ = val result = new_iter nil, args, body result.line = line self.env.unextend result end def _reduce_431(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_432(val, _values, result) result = nil # self.env.dynamic.keys result end def _reduce_433(val, _values, result) _, line, args, _, body, _ = val result = new_iter nil, args, body result.line = line self.env.unextend result end def _reduce_434(val, _values, result) result = self.lexer.lineno result end def _reduce_435(val, _values, result) result = new_when(val[2], val[4]) result.line = val[1] result << val[5] if val[5] result end # reduce 436 omitted # reduce 437 omitted def _reduce_438(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_439(val, _values, result) result = nil result end def _reduce_440(val, _values, result) result = s(:array, val[0]) result end # reduce 441 omitted # reduce 442 omitted def _reduce_443(val, _values, result) result = val[1] result end # reduce 444 omitted def _reduce_445(val, _values, result) _, body = val result = body || s(:nil) result end # reduce 446 omitted def _reduce_447(val, _values, result) result = s(:lit, val[0]) result end def _reduce_448(val, _values, result) result = s(:lit, val[0]) result end # reduce 449 omitted def _reduce_450(val, _values, result) val[0] = s(:dstr, val[0].value) if val[0][0] == :evstr result = val[0] result end def _reduce_451(val, _values, result) debug20 23, val, result result end # reduce 452 omitted def _reduce_453(val, _values, result) result = self.literal_concat val[0], val[1] result end def _reduce_454(val, _values, result) result = val[1] result end def _reduce_455(val, _values, result) result = new_string val result end def _reduce_456(val, _values, result) result = new_xstring val[1] result end def _reduce_457(val, _values, result) result = new_regexp val result end def _reduce_458(val, _values, result) result = s(:array) result end def _reduce_459(val, _values, result) result = val[1] result end def _reduce_460(val, _values, result) result = new_word_list result end def _reduce_461(val, _values, result) result = val[0].dup << new_word_list_entry(val) result end # reduce 462 omitted def _reduce_463(val, _values, result) result = self.literal_concat val[0], val[1] result end def _reduce_464(val, _values, result) result = s(:array) result end def _reduce_465(val, _values, result) result = val[1] result end def _reduce_466(val, _values, result) result = new_symbol_list result end def _reduce_467(val, _values, result) result = val[0].dup << new_symbol_list_entry(val) result end def _reduce_468(val, _values, result) result = s(:array) result end def _reduce_469(val, _values, result) result = val[1] result end def _reduce_470(val, _values, result) result = s(:array) result end def _reduce_471(val, _values, result) result = val[1] result end def _reduce_472(val, _values, result) result = new_qword_list result end def _reduce_473(val, _values, result) result = val[0].dup << new_qword_list_entry(val) result end def _reduce_474(val, _values, result) result = new_qsym_list result end def _reduce_475(val, _values, result) result = val[0].dup << new_qsym_list_entry(val) result end def _reduce_476(val, _values, result) result = s(:str, "") result end def _reduce_477(val, _values, result) result = literal_concat(val[0], val[1]) result end def _reduce_478(val, _values, result) result = nil result end def _reduce_479(val, _values, result) result = literal_concat(val[0], val[1]) result end def _reduce_480(val, _values, result) result = nil result end def _reduce_481(val, _values, result) result = literal_concat(val[0], val[1]) result end def _reduce_482(val, _values, result) result = new_string val result end def _reduce_483(val, _values, result) result = lexer.lex_strterm lexer.lex_strterm = nil lexer.lex_state = :expr_beg # TODO: expr_value ? result end def _reduce_484(val, _values, result) lexer.lex_strterm = val[1] result = s(:evstr, val[2]) result end def _reduce_485(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_486(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_487(val, _values, result) result = s(:gvar, val[0].to_sym) result end def _reduce_488(val, _values, result) result = s(:ivar, val[0].to_sym) result end def _reduce_489(val, _values, result) result = s(:cvar, val[0].to_sym) result end # reduce 490 omitted def _reduce_491(val, _values, result) lexer.lex_state = :expr_end result = val[1].to_sym result end def _reduce_492(val, _values, result) result = val[0].to_sym result end # reduce 493 omitted # reduce 494 omitted # reduce 495 omitted # reduce 496 omitted def _reduce_497(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 498 omitted # reduce 499 omitted def _reduce_500(val, _values, result) result = -val[1] # TODO: pt_testcase result end def _reduce_501(val, _values, result) result = -val[1] # TODO: pt_testcase result end # reduce 502 omitted # reduce 503 omitted # reduce 504 omitted # reduce 505 omitted # reduce 506 omitted def _reduce_507(val, _values, result) result = s(:nil) result end def _reduce_508(val, _values, result) result = s(:self) result end def _reduce_509(val, _values, result) result = s(:true) result end def _reduce_510(val, _values, result) result = s(:false) result end def _reduce_511(val, _values, result) result = s(:str, self.file) result end def _reduce_512(val, _values, result) result = s(:lit, lexer.lineno) result end def _reduce_513(val, _values, result) result = if defined? Encoding then s(:colon2, s(:const, :Encoding), :UTF_8) else s(:str, "Unsupported!") end 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) var = val[0] result = Sexp === var ? var : self.gettable(var) result end def _reduce_516(val, _values, result) result = self.assignable val[0] result end def _reduce_517(val, _values, result) result = self.assignable val[0] debug20 29, val, result result end def _reduce_518(val, _values, result) result = s(:nth_ref, val[0]) result end def _reduce_519(val, _values, result) result = s(:back_ref, val[0]) result end def _reduce_520(val, _values, result) result = nil result end def _reduce_521(val, _values, result) lexer.lex_state = :expr_beg result end def _reduce_522(val, _values, result) result = val[2] result end def _reduce_523(val, _values, result) yyerrok result = nil debug20 30, val, result result end def _reduce_524(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_525(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_526(val, _values, result) result = args val result end def _reduce_527(val, _values, result) result = args val result end def _reduce_528(val, _values, result) result = args val result end # reduce 529 omitted def _reduce_530(val, _values, result) result = val[1] result end def _reduce_531(val, _values, result) result = nil 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) result = args val result end def _reduce_547(val, _values, result) yyerror "formal argument cannot be a constant" result end def _reduce_548(val, _values, result) yyerror "formal argument cannot be an instance variable" result end def _reduce_549(val, _values, result) yyerror "formal argument cannot be a global variable" result end def _reduce_550(val, _values, result) yyerror "formal argument cannot be a class variable" result end # reduce 551 omitted def _reduce_552(val, _values, result) identifier = val[0].to_sym self.env[identifier] = :lvar result = identifier result end # reduce 553 omitted def _reduce_554(val, _values, result) result = val[1] result end def _reduce_555(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_556(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_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 def _reduce_558(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 559 omitted def _reduce_560(val, _values, result) list, _, item = val result = list << item.last result end # reduce 561 omitted def _reduce_562(val, _values, result) result = args val result end # reduce 563 omitted # reduce 564 omitted def _reduce_565(val, _values, result) result = :"**#{val[1]}" result end def _reduce_566(val, _values, result) result = :"**" result end def _reduce_567(val, _values, result) result = self.assignable val[0], val[2] # TODO: detect duplicate names result end def _reduce_568(val, _values, result) result = self.assignable val[0], val[2] result end def _reduce_569(val, _values, result) result = s(:block, val[0]) result end def _reduce_570(val, _values, result) result = val[0] result << val[2] result end def _reduce_571(val, _values, result) result = s(:block, val[0]) result end def _reduce_572(val, _values, result) result = self.block_append val[0], val[2] result end # reduce 573 omitted # reduce 574 omitted def _reduce_575(val, _values, result) # TODO: differs from parse.y - needs tests name = val[1].to_sym self.assignable name result = :"*#{name}" result end def _reduce_576(val, _values, result) name = :"*" self.env[name] = :lvar result = name result end # reduce 577 omitted # reduce 578 omitted def _reduce_579(val, _values, result) identifier = val[1].to_sym self.env[identifier] = :lvar result = "&#{identifier}".to_sym result end def _reduce_580(val, _values, result) result = val[1] result end def _reduce_581(val, _values, result) result = nil result end # reduce 582 omitted def _reduce_583(val, _values, result) lexer.lex_state = :expr_beg result end def _reduce_584(val, _values, result) result = val[2] yyerror "Can't define single method for literals." if result[0] == :lit result end def _reduce_585(val, _values, result) result = s(:array) result end def _reduce_586(val, _values, result) result = val[0] result end # reduce 587 omitted def _reduce_588(val, _values, result) list = val[0].dup more = val[2][1..-1] list.push(*more) unless more.empty? result = list result[0] = :hash result end def _reduce_589(val, _values, result) result = s(:array, val[0], val[2]) result end def _reduce_590(val, _values, result) result = s(:array, s(:lit, val[0][0].to_sym), val[1]) result end def _reduce_591(val, _values, result) result = s(:array, s(:kwsplat, val[1])) result end # 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 # reduce 613 omitted def _reduce_614(val, _values, result) yyerrok result end # reduce 615 omitted # reduce 616 omitted def _reduce_617(val, _values, result) yyerrok result end def _reduce_618(val, _values, result) result = nil; result end def _reduce_none(val, _values, result) val[0] end end # class Ruby20Parser