# # DO NOT MODIFY!!!! # This file is automatically generated by Racc 1.4.7 # from Racc grammer file "". # require 'racc/parser.rb' class Ruby19Parser < Racc::Parser require "ruby_lexer" require "ruby_parser_extras" # Local Variables: ** # racc-token-length-max:14 ** # End: ** ##### State transition tables begin ### clist = [ '-291,15,21,26,33,36,40,-291,-291,-291,57,63,-291,-291,-291,80,-291,92', '97,7,13,18,28,31,358,161,-291,-291,3,58,61,66,68,73,77,82,-291,-291', '8,-291,-291,-291,-291,-291,43,46,50,55,56,60,64,70,74,78,83,346,93,4', '10,384,23,29,347,39,44,48,-291,-291,-291,-291,-291,-291,-291,-291,-291', '-291,-291,-291,-291,-291,294,289,-291,-291,-291,52,291,-291,67,285,-291', '81,86,-291,98,-291,14,-291,777,-291,37,-291,-291,-291,-291,-291,-291', '-291,69,-291,160,-291,773,94,5,11,17,24,30,386,387,383,47,51,-291,-291', '-291,-291,349,-291,-277,90,-501,-501,-501,-291,-501,-277,-277,-277,-501', '-501,-277,-277,-277,-501,-277,-501,-501,-501,-501,-501,-501,-501,620', '161,-277,-277,-277,-501,-501,-501,-501,-501,-501,-501,-277,-277,-83', '-277,-277,-277,-277,-277,494,-501,279,280,-501,-501,-501,-501,-501,-501', '-501,-501,-501,-501,-501,709,-501,-501,494,-501,-501,-501,-277,-277', '-277,-277,-277,-277,-277,-277,-277,-277,-277,-277,-277,-277,-84,-90', '-277,-277,-277,-501,727,-277,-501,-501,-277,-501,-501,-277,-501,-277', '-501,-277,-501,-277,-501,-277,-277,-277,-277,-277,-277,-277,-501,-277', '160,-277,-64,-501,-501,-501,-501,-501,-501,452,384,-83,-501,-501,-277', '-277,-277,-277,623,-277,-505,-501,-277,-86,272,-277,618,-505,-505,-505', '619,-75,-89,-505,-505,-87,-505,289,724,-72,418,544,291,545,-85,-505', '289,289,496,710,444,291,291,-84,-90,773,-505,-505,-443,-505,-505,-505', '-505,-505,289,-443,496,398,399,291,386,387,409,-76,-82,-86,404,-85,631', '-87,749,-445,773,406,545,-85,-505,-505,-505,-505,-505,-505,-505,-505', '-505,-505,-505,-505,-505,-505,-283,494,-505,-505,-505,494,656,-283,-283', '-283,-505,632,443,-283,-283,-89,-283,-505,-87,-505,452,-505,-505,-505', '-505,-505,-505,-505,-83,-505,-505,-505,631,-86,405,-81,-283,-283,-79', '-283,-283,-283,-283,-283,-505,-505,289,-78,751,-505,-444,291,-501,-86', '494,-505,-85,-444,-85,161,-85,-85,785,490,748,632,-283,-283,-283,-283', '-283,-283,-283,-283,-283,-283,-283,-283,-283,-283,-77,678,-283,-283', '-283,787,657,-86,680,-86,-283,-87,-86,-87,407,384,-87,-283,-501,-283', '709,-283,-283,-283,-283,-283,-283,-283,-444,-283,-89,-283,709,289,732', '496,-86,289,291,496,631,631,291,-354,-283,-283,418,-80,272,-283,-502', '-502,-502,-88,-502,-283,-78,790,-502,-502,812,-90,-498,-502,160,-502', '-502,-502,-502,-502,-502,-502,725,632,632,386,387,-502,-502,-502,-502', '-502,-502,-502,626,289,289,-284,496,384,291,291,384,-502,-284,418,-502', '-502,-502,-502,-502,-502,-502,-502,-502,-502,-502,-84,-502,-502,678', '-502,-502,-502,-433,279,280,680,289,-87,710,-433,-276,291,384,549,-498', '424,552,-276,289,-442,710,-502,657,291,-502,-502,-442,-502,-502,794', '-502,795,-502,-284,-502,-498,-502,386,387,574,386,387,436,289,-502,272', '778,773,291,-502,-502,-502,-502,-502,-502,490,-79,776,-502,-502,-433', '15,21,26,33,36,40,-502,-276,-88,57,63,386,387,730,80,5,92,97,7,13,18', '28,31,47,-505,763,279,280,58,61,66,68,73,77,82,-81,549,8,798,552,800', '-89,801,43,46,50,55,56,60,64,70,74,78,83,803,93,4,10,805,23,29,-79,39', '44,48,294,-76,549,279,280,576,705,-84,-283,366,369,-505,350,-79,-441', '-283,803,-433,-505,52,-502,-441,67,-501,-433,81,86,289,98,-88,14,316', '291,-79,37,298,301,549,910,-79,550,289,69,809,-505,912,291,94,5,11,17', '24,30,-77,368,348,47,51,15,21,26,33,36,40,456,90,-283,57,63,-505,131', '458,80,-265,92,97,7,13,18,28,31,726,-505,651,274,275,58,61,66,68,73', '77,82,-440,-502,8,911,778,773,319,-440,43,46,50,55,56,60,64,70,74,78', '83,-88,93,4,10,-438,23,29,-77,39,44,48,-438,-77,722,-439,319,-436,707', '-85,394,-80,-439,-505,-436,-77,272,396,279,280,-505,52,279,280,67,-501', '695,81,86,814,98,272,14,600,545,-77,37,480,614,817,-284,-77,478,479', '69,616,-505,-284,683,94,5,11,17,24,30,681,-72,272,47,51,15,21,26,33', '36,40,329,90,395,57,63,-505,821,676,80,823,92,97,7,13,18,28,31,675,-499', '652,600,294,58,61,66,68,73,77,82,294,615,8,-284,-445,831,833,272,43', '46,50,55,56,60,64,70,74,78,83,835,93,4,10,294,23,29,-283,39,44,48,294', '-79,294,-283,672,670,420,-87,-502,-264,841,-436,669,422,845,-75,663', '847,-436,52,848,-83,67,-499,472,81,86,661,98,329,14,473,659,319,37,319', '-285,319,-276,-284,653,852,69,-285,-499,-276,-284,94,5,11,17,24,30,628', '-283,-264,47,51,15,21,26,33,36,40,421,90,243,57,63,-436,600,486,80,245', '92,97,7,13,18,28,31,583,405,578,571,570,58,61,66,68,73,77,82,568,-285', '8,-276,-284,567,265,565,43,46,50,55,56,60,64,70,74,78,83,864,93,4,10', '562,23,29,-283,39,44,48,867,244,868,-283,272,554,-330,872,-502,294,874', '-285,501,-330,876,535,-63,-82,-285,52,534,489,67,-90,-444,81,86,488', '98,487,14,-444,886,887,37,705,483,294,366,369,316,350,69,803,298,301', '892,94,5,11,17,24,30,803,-283,803,47,51,15,21,26,33,36,40,-330,90,895', '57,63,-285,896,471,80,899,92,97,7,13,18,28,31,319,-444,368,348,452,58', '61,66,68,73,77,82,717,718,8,600,714,4,10,600,43,46,50,55,56,60,64,70', '74,78,83,445,93,4,10,439,23,29,907,39,44,48,330,331,332,333,334,705', '423,418,366,369,417,350,330,331,332,333,334,414,913,52,408,403,67,402', '401,81,86,319,98,920,14,285,921,400,37,357,924,272,366,369,926,350,69', '659,329,281,278,94,5,11,17,24,30,368,348,276,47,51,15,21,26,33,36,40', '272,90,803,57,63,600,159,600,80,156,92,97,7,13,18,28,31,362,365,368', '348,154,58,61,66,68,73,77,82,938,151,8,330,331,332,333,334,43,46,50', '55,56,60,64,70,74,78,83,150,93,4,10,102,23,29,99,39,44,48,600,,,,,705', ',,366,369,,350,,,,,,,,52,,,67,,,81,86,,98,,14,,,,37,357,,,366,369,,350', '69,,,,,94,5,11,17,24,30,368,348,,47,51,15,21,26,33,36,40,,90,,57,63', ',,,80,,92,97,7,13,18,28,31,362,365,368,348,,58,61,66,68,73,77,82,,,8', ',,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,', ',705,,,366,369,,350,,,,,,,,52,,,67,,,81,86,,98,,14,,,,37,357,,,366,369', ',350,69,,,,,94,5,11,17,24,30,368,348,,47,51,15,21,26,33,36,40,,90,,57', '63,,,,80,,92,97,7,13,18,28,31,362,365,368,348,,58,61,66,68,73,77,82', '294,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44', '48,,316,,,,298,301,304,307,,,,,,,,,,,52,,,67,,,81,86,,98,,14,,,,37,357', ',,366,369,,350,69,,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36,40,,90', ',57,63,,,,80,,92,97,7,13,18,28,31,362,365,368,348,,58,61,66,68,73,77', '82,294,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39', '44,48,,316,,,,298,301,304,307,,,,,,,,,,,52,,,67,,,81,86,,98,,14,,,,37', '357,,,366,369,,350,69,,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36,40', ',90,,57,63,,,,80,,92,97,7,13,18,28,31,362,365,368,348,,58,61,66,68,73', '77,82,,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39', '44,48,294,-523,-523,-523,-523,306,309,,,-523,-523,,,,,,305,308,,52,', ',67,,,81,86,,98,,14,316,,293,37,298,301,304,307,310,312,314,69,318,', ',,94,5,11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92,97', '7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64', '70,74,78,83,,93,4,10,,23,29,,39,44,48,294,-523,-523,-523,-523,306,309', ',,-523,-523,,,,,,305,308,,52,,,67,,,81,86,,98,,14,316,,293,37,298,301', '304,307,310,312,314,69,318,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33', '36,40,,90,,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82', ',,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48', '294,295,297,300,303,306,309,311,313,315,317,,-523,-523,,,305,308,,52', ',,67,,,81,86,,98,,14,316,,293,37,298,301,304,307,310,312,314,69,318', ',,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92', '97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60', '64,70,74,78,83,,93,4,10,,23,29,,39,44,48,294,-523,-523,-523,-523,306', '309,,,-523,-523,,,,,,305,308,,52,,,67,,,81,86,,98,,14,316,,293,37,298', '301,304,307,310,312,314,69,318,,,,94,5,11,17,24,30,,,,47,51,15,21,26', '33,36,40,,90,,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77', '82,,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44', '48,294,295,297,300,303,306,309,311,313,315,317,,-523,-523,,,305,308', ',52,,,325,,,81,86,,98,,14,316,,293,37,298,301,304,307,310,312,314,69', '318,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80', ',92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55', '56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,294,-523,-523,-523,-523', '306,309,,,-523,-523,,,,,,305,308,,52,,,67,,,81,86,,98,,14,316,,293,37', '298,301,304,307,310,312,314,69,318,,,,94,5,11,17,24,30,,,,47,51,15,21', '26,33,36,40,,90,,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73', '77,82,,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39', '44,48,294,295,297,300,303,306,309,311,,315,317,,,,,,305,308,,52,,,67', ',,81,86,,98,,14,316,,293,37,298,301,304,307,310,312,314,69,318,,,,94', '5,11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92,97,7,13', '18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,294,,,,,,,,,,,,,,,,305,308,,52,,', '325,,,81,86,,98,,14,316,,293,37,298,301,304,307,,,314,69,318,,,,94,5', '11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92,97,7,13', '18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,294,,,,,,,,,,,,,,,,305,308,,52,,', '67,,,81,86,,98,,14,316,,293,37,298,301,304,307,,,314,69,318,,,,94,5', '11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92,97,7,13', '18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,294,-523,-523,-523,-523,306,309,', ',-523,-523,,,,,,305,308,,52,,,67,,,81,86,,98,,14,316,,293,37,298,301', '304,307,310,312,314,69,318,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33', '36,40,,90,,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82', ',,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48', '294,,,,,,,,,,,,,,,,305,308,,52,,,67,,,81,86,,98,,14,316,,293,37,298', '301,304,307,,,314,69,318,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36', '40,,90,,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,', ',8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,294', '295,297,300,303,306,309,,,315,317,,,,,,305,308,,52,,,67,,,81,86,,98', ',14,316,,293,37,298,301,304,307,310,312,314,69,318,,,,94,5,11,17,24', '30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92,97,7,13,18,28,31', ',,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83', ',93,4,10,,23,29,,39,44,48,294,,,,,,,,,,,,,,,,305,308,,52,,,67,,,81,86', ',98,,14,316,,293,37,298,301,304,307,,,314,69,318,,,,94,5,11,17,24,30', ',,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92,97,7,13,18,28,31,,,', ',,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,294,-523,-523,-523,-523,306,309,,,-523,-523,,', ',,,305,308,,52,,,67,,,81,86,,98,,14,316,,293,37,298,301,304,307,310', '312,314,69,318,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57', '63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43', '46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,294,,,,,,,,', ',,,,,,,305,308,,52,,,67,,,81,86,,98,,14,316,,293,37,298,301,304,307', ',,,69,,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,', '80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50', '55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,294,,,,,,,,,,,,,,', ',305,308,,52,,,67,,,81,86,,98,,14,316,,293,37,298,301,304,307,,,,69', ',,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92', '97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60', '64,70,74,78,83,,93,4,10,,23,29,,39,44,48,294,,,,,,,,,,,,,,,,305,308', ',52,,,67,,,81,86,,98,,14,316,,,37,298,301,304,307,,,,69,,,,,94,5,11', '17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92,97,7,13,18', '28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70,74', '78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,52,,,67,,,81,86,', '98,,14,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36', '40,,90,,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,', ',8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,', ',,,,,,,,,,,,,,,,,,52,,,67,,,81,86,,98,,14,,,,37,,,,,,,,69,,,,,94,5,11', '17,24,30,,,,47,51,15,21,26,33,36,40,,90,,57,63,,,,80,,92,97,7,13,18', '28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70,74', '78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,52,,,325,,,81,86', ',98,,14,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,15,21,26,33,36', '40,,90,,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,', ',8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,', ',,,,,,,,,,,,,,,,,,52,,,67,,,81,86,,98,,14,,,,37,,,,,,,,69,,,,,94,5,11', '17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31', ',,,,,58,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10', ',23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,', ',,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80', ',92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60', '64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126', ',,81,86,,98,,,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,-498,-498', '-498,,-498,,,90,-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,21,26', '33,,40,,,-498,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68', '73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48', ',,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5', '11,17,24,30,,,,47,51,-254,-254,-254,,-254,,,90,-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,319,,-254', '-254,,-254,,-254,,-254,,-254,,,,,,,,-254,,,,,-254,-254,-254,-254,-254', '-254,,,,-254,-254,21,26,33,,40,,,-254,57,63,,,,80,,92,97,7,13,18,28', '31,,,,,,58,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,,,,,,,,46,,,56', '60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,', ',126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21', '26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,61,66,68', '73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44', '48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,130,,131,,37,,,,,,,,137', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74', '78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86', ',98,,,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90', '57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,,,,,,,', '46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,', ',,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,', '47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61', '66,68,73,77,82,,,8,,,,,584,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29', ',39,44,48,294,295,297,300,303,306,309,311,313,315,317,,296,299,,,305', '308,,123,,,126,,,81,86,,98,,,316,,293,37,298,301,304,307,310,312,314', '69,318,,,,94,5,11,17,24,30,,,,47,51,289,302,21,26,33,291,40,90,,,57', '63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51', '-499,-499,-499,,-499,,,90,-499,-499,,,,-499,,-499,-499,-499,-499,-499', '-499,-499,,-499,,,,-499,-499,-499,-499,-499,-499,-499,,,,,,,,,,-499', ',,-499,-499,-499,-499,-499,-499,-499,-499,-499,-499,-499,,-499,-499', ',-499,-499,-499,,,,,,,,,,,,,,,,,,,,-499,,,-499,-499,,-499,-499,,-499', ',-499,,-499,,-499,,,,,,,,-499,,-499,,,-499,-499,-499,-499,-499,-499', ',,,-499,-499,21,26,33,,40,,,-499,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,61,66,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,', ',,,123,,,126,,,81,86,,98,,340,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30', ',,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114', '116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23', '29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,', ',137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92', '97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,111,,,56,60', '64,70,74,78,83,,93,4,10,,23,29,,357,,112,366,369,,350,,,,,,,,,,,,,,', ',113,,,67,,,81,86,,98,,14,,,,,,643,,,,,,,362,365,368,348,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140', '93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,815', ',131,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90', '57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,', ',,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,', ',,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24', '30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,', ',,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10', ',23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,689,,,,37', ',,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,', '80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,,,,,,,,46,,,56,60', '64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126', ',,81,86,,98,,389,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26', '33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73', '77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44,48', ',,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,827,,131,,37,,,,,,,,137,,', ',,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104', '105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74', '78,83,140,93,4,10,,23,29,,39,44,48,,,,,,358,,,,,,,,,,,,,,123,,,126,', ',81,86,357,98,,366,369,357,350,37,366,369,,350,,,,137,,,,-521,94,5,11', '17,24,30,-521,-521,-521,47,51,-521,-521,-521,,-521,,,90,352,,,,,643', '-521,362,365,368,348,,362,365,368,348,-521,-521,,-521,-521,-521,-521', '-521,,,,,557,461,,,558,,,,,,,,,189,195,349,206,211,215,219,,228,232', ',,241,,,,-521,181,186,191,197,,,-521,,,,,319,-521,,,,170,173,,183,188', '193,198,201,204,209,213,217,,226,,,240,-521,,,,,,,,21,26,33,,40,-521', ',-521,57,63,-521,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73', '77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,', ',,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5', '11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28', '31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,', ',,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,-521,94,5,11,17,24,30,-521', '-521,-521,47,51,-521,-521,-521,,-521,,,90,,,,,,,-521,,,,,,,,,,-521,-521', ',-521,-521,-521,-521,-521,,,,,612,468,,,613,,,,,,,,,189,195,,206,211', '215,219,,228,232,,,241,,,,-521,181,186,191,197,,,-521,,,,,319,-521,', ',,170,173,,183,188,193,198,201,204,209,213,217,,226,,,240,-521,,,,,', ',,21,26,33,,40,-521,,-521,57,63,-521,,,80,,92,97,7,104,105,28,31,,,', ',,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10', ',23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,131,,37', ',,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,', '80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,', ',56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123', ',,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21', '26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,61,66,68', '73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44', '48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,601,,131,,37,,,,,,,,137', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,61,66,68,73,77,82,', ',,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44,48,,,,,', ',,,,,,,,,,,,,,123,,,126,,,81,86,,98,,340,,,,37,,,,,,,,137,,,,,94,5,11', '17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31', ',,,,,58,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10', ',23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,', ',,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80', ',92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56', '60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,', ',126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21', '26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73', '77,82,,,8,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48', ',,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,69,,,,,94,5', '11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105', '28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83', ',93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,', ',,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57', '63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,', ',,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,', ',,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,', ',,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114', '61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23', '29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,130,,131,,37', ',,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,', '80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,', ',56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123', ',,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21', '26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68', '73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48', ',,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5', '11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105', '28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,111,,,56,60,64,70,74,78', '83,,93,4,10,,23,29,,,,112,,,,,,,,,,,,,,,,,,,,143,,,126,,,81,86,,98,', ',,,,,,,,,,,,,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,', ',,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47', '51,21,26,33,36,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66', '68,73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29', ',39,44,48,,,,,,,,,,,,,,,,,,,,52,,,67,,,81,86,,98,,14,,,,37,,,,,,,,69', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82', ',,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,', ',,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47', '51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66', '68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39', '44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,69,,,', ',94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13', '18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74,78', '83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98', ',,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57', '63,,,,80,,92,97,7,104,105,28,31,,,,,,114,61,66,68,73,77,82,,,,,,,,,', '46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,', ',,,,,,123,,,126,,,81,86,,98,,130,,131,,37,,,,,,,,137,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,-504,-504,-504,,-504,,,90', '-504,-504,,,,-504,,-504,-504,-504,-504,-504,-504,-504,,,,,,-504,-504', '-504,-504,-504,-504,-504,,,,,,,,,,-504,,,-504,-504,-504,-504,-504,-504', '-504,-504,-504,-504,-504,,-504,-504,,-504,-504,-504,,,,,,,,,,,,,,,,', ',,,-504,,,-504,-504,,-504,-504,,-504,,-504,,-504,,-504,,,,,,,,-504,', ',,,-504,-504,-504,-504,-504,-504,,,,-504,-504,21,26,33,,40,,,-504,57', '63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,', ',,111,,,56,60,430,70,74,78,431,,93,4,10,,23,29,,,,112,,,,,,,,,,,,,,', ',,,,,427,,,126,,,81,86,,98,,,,,,,,,,,,,,,,,,,94,5,11,17,24,30,,,,47', '51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66', '68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44', '48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,389,,,,37,,,,,,,,137,,', ',,94,5,11,17,24,30,,,,47,51,-503,-503,-503,,-503,,,90,-503,-503,,,,-503', ',-503,-503,-503,-503,-503,-503,-503,,,,,,-503,-503,-503,-503,-503,-503', '-503,,,,,,,,,,-503,,,-503,-503,-503,-503,-503,-503,-503,-503,-503,-503', '-503,,-503,-503,,-503,-503,-503,,,,,,,,,,,,,,,,,,,,-503,,,-503,-503', ',-503,-503,,-503,,-503,,-503,,-503,,,,,,,,-503,,,,,-503,-503,-503,-503', '-503,-503,,,,-503,-503,21,26,33,,40,,,-503,57,63,,,,80,,92,97,7,104', '105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74', '78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,906,,131,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26', '33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73', '77,82,,,,,,,,,,111,,,56,60,430,70,74,78,431,,93,4,10,,23,29,,,,112,', ',,,,,,,,,,,,,,,,,,427,,,126,,,81,86,,98,,,,,,,,,,,,,,,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,', ',,,58,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10', ',23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,', ',,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80', ',92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56', '60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,', ',126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21', '26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68', '73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44', '48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,904,,131,,37,,,,,,,,137', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74', '78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,449', '86,,98,,130,,131,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26', '33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73', '77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,', ',,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5', '11,17,24,30,,,,47,51,-254,-254,-254,,-254,,,90,-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,319,,-254', '-254,,-254,,-254,,-254,,-254,,,,,,,,-254,,,,,-254,-254,-254,-254,-254', '-254,,,,-254,-254,21,26,33,,40,,,-254,57,63,,,,80,,92,97,7,104,105,28', '31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,111,,,56,60,64,70,74,78,83', ',93,4,10,,23,29,,,,112,,,,,,,,,,,,,,,,,,,,113,,,67,,,81,86,,98,,14,', ',,,,,,,,,743,,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,389,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,', '47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61', '66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,', '39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,69', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74', '78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,634,,131,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33', ',40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,61,66,68,73,77', '82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44,48,', ',,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,340,,,,37,,,,,,,,137,,,,,94', '5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105', '28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83', ',93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,', '719,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90', '57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,', ',,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,', ',,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30', ',,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58', '61,66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29', ',39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,69', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,61,66,68,73,77,82,', ',,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44,48,,,,,', ',,,,,,,,,,,,,,123,,,126,,,81,86,,98,,340,,,,37,,,,,,,,137,,,,,94,5,11', '17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28', '31,,,,,,114,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140', '93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,340', ',,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57', '63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,', ',,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,', ',,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,', ',,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114', '116,117,68,73,77,82,,,,,,,,,,111,,,56,60,64,70,74,78,83,,93,4,10,,23', '29,,,,112,,,,,,,,,,,,,,,,,,,,143,,,271,,,81,86,,98,,269,,,,,,,,,,,,', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,', ',81,86,,98,,606,,131,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21', '26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68', '73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48', ',,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5', '11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28', '31,,,,,,58,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,', ',,,123,,,126,,,81,86,,98,,601,,131,,37,,,,,,,,137,,,,,94,5,11,17,24', '30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,', ',,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10', ',23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,', ',,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80', ',92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,111,,,56', '60,64,70,74,78,83,,93,4,10,,23,29,,,,112,,,,,,,,,,,,,,,,,,,,143,,,126', ',,81,86,,98,,,,,,,,,,,,,,,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82', ',,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,', ',,,,,,,,,,,,123,,,126,,,81,86,,98,,888,,,,37,,,,,,,,137,,,,,94,5,11', '17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28', '31,,,,,,114,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140', '93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,340', ',,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57', '63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,', ',,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,', ',,,,,123,,,126,486,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30', ',,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114', '116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23', '29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,', ',137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92', '97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60', '64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126', ',,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33', ',40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77', '82,,,,,,,,,,111,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,,,112,,,,,,', ',,,,,,,,,,,,,882,,,126,,,81,86,,98,,,,,,,,,,,,,,,,,,,94,5,11,17,24,30', ',,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114', '61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,,23', '29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,340,,,,37,,,', ',,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80', ',92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60', '64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126', ',,81,86,,98,,,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33', ',40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77', '82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,', ',,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11', '17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28', '31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,', '93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,', ',,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57', '63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,', ',,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,', ',,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,', ',,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114', '116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23', '29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,', ',137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92', '97,7,104,105,28,31,,,,,,114,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64', '70,74,78,83,140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126', ',498,81,86,,98,,130,,131,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51', '21,26,33,36,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68', '73,77,82,,,8,,,,,,43,46,50,55,56,60,64,70,74,78,83,,93,4,10,,23,29,', '39,44,48,,,,,,,,,,,,,,,,,,,,52,,,67,,,81,86,,98,,14,,,,37,,,,,,,,69', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,501,,90,57,63,,,,80,,92,97', '7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74', '78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86', ',98,,,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90', '57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,', ',,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,', ',,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30', ',,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114', '116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23', '29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,', ',137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92', '97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60', '64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126', ',,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33', ',40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77', '82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,', ',,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11', '17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28', '31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,', '93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,', ',,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57', '63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,', ',,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,', ',,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,', ',,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114', '116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93,4,10,', '23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,826,,131,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47', '51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116', '117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,', '39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82', ',,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,', ',,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47', '51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116', '117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,', '39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82', ',,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,', ',,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47', '51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116', '117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,', '39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82', ',,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,', ',,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47', '51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116', '117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,', '39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82', ',,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,', ',,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,61,66,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,140,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,130', ',131,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90', '57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,', ',46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,', ',,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,', '47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61', '66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,', '39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,69', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,791,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33', ',40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77', '82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,', ',,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11', '17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31', ',,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74,78,83,,93,4', '10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37', ',,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80', ',92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60', '64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126', ',,81,86,,98,,,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33', ',40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82', ',,8,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,', ',,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,69,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,13,18,28,31,,', ',,,58,61,66,68,73,77,82,,,8,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10', ',23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,', ',,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,36,40,,,90,57,63,,,,80', ',92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,,43,46,50,55', '56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,52', ',,67,,,81,86,,98,,14,,,,37,,,,,,,,69,,,,,94,5,11,17,24,30,,,,47,51,21', '26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68', '73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48', ',,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5', '11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105', '28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83', '140,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98', ',936,,131,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40', ',,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82', ',,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,', ',,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17', '24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31', ',,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93', '4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,', '37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63', ',,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46', ',,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,', '123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47', '51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116', '117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,', '39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137', ',,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7', '104,105,28,31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70', '74,78,83,,93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81', '86,,98,,,,131,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33', ',40,,,90,57,63,,,,80,,92,97,7,104,105,28,31,,,,,,114,116,117,68,73,77', '82,,,,,,,,,,46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,,,,', ',,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,,,,,37,,,,,,,,137,,,,,94,5,11', '17,24,30,,,,47,51,21,26,33,,40,,,90,57,63,,,,80,,92,97,7,104,105,28', '31,,,,,,114,116,117,68,73,77,82,,,,,,,,,,46,,,56,60,64,70,74,78,83,', '93,4,10,,23,29,,39,44,48,,,,,,,,,,,,,,,,,,,,123,,,126,,,81,86,,98,,', ',,,37,,,,,,,,137,,,,,94,5,11,17,24,30,,,,47,51,21,26,33,,40,,,90,57', '63,,,,80,,92,97,7,13,18,28,31,,,,,,58,61,66,68,73,77,82,,,8,,,,,584', ',46,,,56,60,64,70,74,78,83,,93,4,10,,23,29,,39,44,48,294,295,297,300', '303,306,309,311,313,315,317,,296,299,,,305,308,,123,,,126,,,81,86,,98', ',,316,,293,37,298,301,304,307,310,312,314,69,318,,,,94,5,11,17,24,30', ',,,47,51,,302,,-219,,,,90,174,177,180,185,190,196,200,203,,,220,225', '229,233,237,,,166,169,172,178,182,187,192,,,,208,212,216,249,251,252', '255,239,242,167,168,171,176,179,184,194,199,202,205,246,247,248,224', '266,,253,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241,,,,,181,186', '191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209,213,217,,226', ',,240,94,174,177,180,185,190,196,200,203,,51,220,225,229,233,237,,,166', '169,172,178,182,187,192,,,,208,212,216,249,251,252,255,239,242,167,168', '171,176,179,184,194,199,202,205,246,247,248,224,,,253,,,,,,,,,189,195', ',206,211,215,219,,228,232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170', '173,,183,188,193,198,201,204,209,213,217,,226,,,240,94,174,177,180,185', '190,196,200,203,,51,220,225,229,233,237,,,166,169,172,178,182,187,192', ',,,208,212,216,249,251,252,255,239,242,167,168,171,176,179,184,194,199', '202,205,246,247,248,224,,,253,,,,,,,,,189,195,,206,211,215,219,,228', '232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201', '204,209,213,217,,226,,,240,94,174,177,180,185,190,196,200,203,,51,220', '225,229,233,237,,,166,169,172,178,182,187,192,,,,208,212,216,249,251', '252,255,239,242,167,168,171,176,179,184,194,199,202,205,246,247,248', '224,,,253,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241,,,,,181,186', '191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209,213,217,,226', ',,240,94,174,177,180,185,190,196,200,203,,51,220,225,229,233,237,,,166', '169,172,178,182,187,192,,,,208,212,216,223,230,234,238,239,242,167,168', '171,176,179,184,194,199,202,205,210,214,218,224,74,78,236,,93,,,,,,', '189,195,,206,211,215,219,,228,232,,,241,,,,,181,186,191,197,,,,,,221', ',,,,,,170,173,,183,188,193,198,201,204,209,213,217,,226,,,240,174,177', '180,185,190,196,200,203,,,220,225,229,233,237,,,166,169,172,178,182', '187,192,,,,208,212,216,249,251,252,255,239,242,167,168,171,176,179,184', '194,199,202,205,246,247,248,224,375,376,253,,377,,,,,,,189,195,,206', '211,215,219,,228,232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170,173,', '183,188,193,198,201,204,209,213,217,,226,,,240,174,177,180,185,190,196', '200,203,,,220,225,229,233,237,,,166,169,172,178,182,187,192,,,,208,212', '216,249,251,252,255,239,242,167,168,171,176,179,184,194,199,202,205', '246,247,248,224,,,253,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241', ',,,,181,186,191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209', '213,217,,226,460,461,240,,463,,,,,,,,,189,195,,206,211,215,219,,228', '232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201', '204,209,213,217,,226,609,461,240,,610,,,,,,,,,189,195,,206,211,215,219', ',228,232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170,173,,183,188,193', '198,201,204,209,213,217,,226,467,468,240,,470,,,,,,,,,189,195,,206,211', '215,219,,228,232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170,173,,183', '188,193,198,201,204,209,213,217,,226,557,461,240,,558,,,,,,,,,189,195', ',206,211,215,219,,228,232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170', '173,,183,188,193,198,201,204,209,213,217,,226,597,468,240,,598,,,,,', ',,,189,195,,206,211,215,219,,228,232,,,241,,,,,181,186,191,197,,,,,', ',,,,,,,170,173,,183,188,193,198,201,204,209,213,217,,226,594,461,240', ',595,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241,,,,,181,186,191', '197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209,213,217,,226,557', '461,240,,558,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241,,,,,181', '186,191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209,213,217', ',226,594,461,240,,595,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241', ',,,,181,186,191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209', '213,217,,226,557,461,240,,558,,,,,,,,,189,195,,206,211,215,219,,228', '232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201', '204,209,213,217,,226,590,468,240,,591,,,,,,,,,189,195,,206,211,215,219', ',228,232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170,173,,183,188,193', '198,201,204,209,213,217,,226,586,461,240,,587,,,,,,,,,189,195,,206,211', '215,219,,228,232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170,173,,183', '188,193,198,201,204,209,213,217,,226,931,468,240,,932,,,,,,,,,189,195', ',206,211,215,219,,228,232,,,241,,,,,181,186,191,197,,,,,,,,,,,,,170', '173,,183,188,193,198,201,204,209,213,217,,226,557,461,240,,558,,,,,', ',,,189,195,,206,211,215,219,,228,232,,,241,,,,,181,186,191,197,,,,,', ',,,,,,,170,173,,183,188,193,198,201,204,209,213,217,,226,928,461,240', ',929,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241,,,,,181,186,191', '197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209,213,217,,226,597', '468,240,,598,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241,,,,,181', '186,191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209,213,217', ',226,735,468,240,,736,,,,,,,,,189,195,,206,211,215,219,,228,232,,,241', ',,,,181,186,191,197,,,,,,,,,,,,,170,173,,183,188,193,198,201,204,209', '213,217,,226,,,240,294,295,297,300,303,306,309,311,313,315,317,,296', '299,,,305,308,,,,-219,,,,,,,,,,316,,293,,298,301,304,307,310,312,314', ',318,,,,,,,,,,,,,,,,302,,-219,294,295,297,300,303,306,309,311,313,315', '317,,296,299,,,305,308,,,,,,,,,,,,,,316,,293,,298,301,304,307,310,312', '314,,318,,,,,,,,,,,,,,,,302,,600,294,295,297,300,303,306,309,311,313', '315,317,,296,299,,,305,308,,,,,,,,,,,,,,316,,293,,298,301,304,307,310', '312,314,,318,,294,295,297,300,303,306,309,311,313,315,317,,296,299,302', '674,305,308,,,,,,,,,,,,,,316,,293,,298,301,304,307,310,312,314,,318', '294,295,297,300,303,306,309,311,313,315,317,,296,299,,302,305,308,,', ',,,,,,,,,,,316,,293,,298,301,304,307,310,312,314,,318,294,295,297,300', '303,306,309,311,313,315,317,,296,299,,302,305,308,,,,,,,,,,,,,,316,', '293,,298,301,304,307,310,312,314,,318,294,295,297,300,303,306,309,311', '313,315,317,,296,299,,302,305,308,,,,,,,,,,,,,,316,,293,,298,301,304', '307,310,312,314,,318,294,295,297,300,303,306,309,311,313,315,317,,296', '299,,302,305,308,,,,,,,,,,,,,,316,,293,,298,301,304,307,310,312,314', ',318,294,295,297,300,303,306,309,311,313,315,317,,296,299,272,302,305', '308,,,,,,,,,,,,,,316,,293,,298,301,304,307,310,312,314,,318,294,295', '297,300,303,306,309,311,313,315,317,,296,299,,302,305,308,,,,,,,,,,', ',,,316,,293,,298,301,304,307,310,312,314,,318,294,295,297,300,303,306', '309,311,313,315,317,,296,299,,302,305,308,,,,,,,,,,,,,,316,,293,,298', '301,304,307,310,312,314,,318,294,295,297,300,303,306,309,311,313,315', '317,,296,299,272,302,305,308,,,,,,,,,,,,,,316,,293,,298,301,304,307', '310,312,314,,318,294,295,297,300,303,306,309,311,313,315,317,,296,299', ',302,305,308,,,,,,,,,,,,,,316,,293,,298,301,304,307,310,312,314,,318', '294,295,297,300,303,306,309,311,313,315,317,,296,299,,302,305,308,,', ',,,,,,,,,,,316,,293,,298,301,304,307,310,312,314,,318,294,295,297,300', '303,306,309,311,313,315,317,,296,299,,302,305,308,,,,,,,,,,,,,,316,', '293,,298,301,304,307,310,312,314,,318,294,295,297,300,303,306,309,311', '313,315,317,,296,299,,302,305,308,,,,,,,,,,,,,,316,,293,,298,301,304', '307,310,312,314,,318,294,295,297,300,303,306,309,311,313,315,317,,296', '299,,302,305,308,,,,,,,,,,,,,,316,,293,,298,301,304,307,310,312,314', ',318,294,295,297,300,303,306,309,311,313,315,317,,296,299,,302,305,308', ',,,,,,,,,,,,,316,,293,,298,301,304,307,310,312,314,,318,,,,,,,,,,,,', ',,,302' ] racc_action_table = arr = Array.new(24417, 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 = [ '61,497,497,497,497,497,497,61,61,61,497,497,61,61,61,497,61,497,497', '497,497,497,497,497,367,108,61,61,1,497,497,497,497,497,497,497,61,61', '497,61,61,61,61,61,497,497,497,497,497,497,497,497,497,497,497,87,497', '497,497,100,497,497,87,497,497,497,61,61,61,61,61,61,61,61,61,61,61', '61,61,61,666,62,61,61,61,497,62,61,497,61,61,497,497,61,497,61,497,61', '667,61,497,61,61,61,61,61,61,61,497,61,108,61,660,497,497,497,497,497', '497,100,100,100,497,497,61,61,61,61,367,61,70,497,597,597,597,61,597', '70,70,70,597,597,70,70,70,597,70,597,597,597,597,597,597,597,429,41', '70,70,70,597,597,597,597,597,597,597,70,70,115,70,70,70,70,70,840,597', '642,642,597,597,597,597,597,597,597,597,597,597,597,573,597,597,846', '597,597,597,70,70,70,70,70,70,70,70,70,70,70,70,70,70,722,110,70,70', '70,597,597,70,597,597,70,597,597,70,597,70,597,70,597,70,597,70,70,70', '70,70,70,70,597,70,41,70,681,597,597,597,597,597,597,654,127,115,597', '597,70,70,70,70,429,70,467,597,70,597,642,70,427,467,467,467,427,115', '400,467,467,587,467,429,594,681,636,335,429,335,928,467,840,573,840', '573,158,840,573,722,110,673,467,467,210,467,467,467,467,467,846,210', '846,112,112,846,127,127,127,722,110,931,121,586,641,929,636,125,889', '121,889,594,467,467,467,467,467,467,467,467,467,467,467,467,467,467', '470,283,467,467,467,793,467,470,470,470,467,641,158,470,470,400,470', '467,587,467,648,467,467,467,467,467,467,467,125,467,467,467,447,590', '121,400,470,470,587,470,470,470,470,470,467,467,620,467,640,467,883', '620,931,467,292,467,928,883,928,32,586,928,677,408,635,447,470,470,470', '470,470,470,470,470,470,470,470,470,470,470,586,533,470,470,470,679', '470,931,533,931,470,929,931,929,122,437,929,470,590,470,723,470,470', '470,470,470,470,470,883,470,408,470,575,283,611,283,590,793,283,793', '446,537,793,32,470,470,607,470,533,470,598,598,598,470,598,470,590,684', '598,598,726,122,430,598,32,598,598,598,598,598,598,598,595,446,537,437', '437,598,598,598,598,598,598,598,437,819,292,619,292,372,819,292,153', '598,619,603,598,598,598,598,598,598,598,598,598,598,598,726,598,598', '784,598,598,598,430,664,664,784,723,595,723,430,881,723,147,342,430', '147,342,881,575,214,575,598,598,575,598,598,214,598,598,686,598,687', '598,619,598,430,598,372,372,372,153,153,153,740,598,784,671,671,740', '598,598,598,598,598,598,278,610,664,598,598,430,773,773,773,773,773', '773,598,881,598,773,773,147,147,602,773,84,773,773,773,773,773,773,773', '84,735,653,338,338,773,773,773,773,773,773,773,278,381,773,696,381,697', '278,700,773,773,773,773,773,773,773,773,773,773,773,701,773,773,773', '702,773,773,610,773,773,773,514,653,379,53,53,379,567,653,613,567,567', '735,567,610,238,613,704,218,735,773,613,238,773,735,218,773,773,337', '773,591,773,514,337,610,773,514,514,341,880,610,341,645,773,713,735', '880,645,773,773,773,773,773,773,609,567,567,773,773,489,489,489,489', '489,489,235,773,613,489,489,735,600,235,489,720,489,489,489,489,489', '489,489,596,612,460,48,48,489,489,489,489,489,489,489,234,591,489,880', '914,914,589,234,489,489,489,489,489,489,489,489,489,489,489,591,489', '489,489,230,489,489,609,489,489,489,230,460,588,223,585,236,569,460', '109,591,223,612,236,609,563,109,624,624,612,489,282,282,489,612,560', '489,489,728,489,547,489,731,546,609,489,266,425,733,423,609,266,266', '489,425,612,423,543,489,489,489,489,489,489,536,535,532,489,489,502', '502,502,502,502,502,531,489,109,502,502,612,741,530,502,744,502,502', '502,502,502,502,502,529,431,463,746,526,502,502,502,502,502,502,502', '511,425,502,423,59,750,753,754,502,502,502,502,502,502,502,502,502,502', '502,755,502,502,502,508,502,502,932,502,502,502,665,463,504,932,499', '495,141,463,932,770,771,431,493,141,775,59,484,779,431,502,781,59,502', '431,260,502,502,475,502,783,502,260,474,786,502,788,732,465,142,913', '464,792,502,732,431,142,913,502,502,502,502,502,502,444,932,435,502', '502,544,544,544,544,544,544,141,502,34,544,544,431,411,397,544,34,544', '544,544,544,544,544,544,390,260,380,364,361,544,544,544,544,544,544', '544,357,732,544,142,913,354,42,353,544,544,544,544,544,544,544,544,544', '544,544,818,544,544,544,351,544,544,736,544,544,544,822,34,824,736,345', '343,19,828,736,517,829,938,336,19,834,324,323,42,938,544,322,277,544', '42,145,544,544,275,544,274,544,145,849,850,544,892,270,268,892,892,517', '892,544,855,517,517,856,544,544,544,544,544,544,857,736,858,544,544', '789,789,789,789,789,789,19,544,859,789,789,938,860,257,789,862,789,789', '789,789,789,789,789,165,145,892,892,164,789,789,789,789,789,789,789', '581,581,789,869,581,581,581,870,789,789,789,789,789,789,789,789,789', '789,789,159,789,789,789,154,789,789,875,789,789,789,500,500,500,500', '500,800,143,134,800,800,133,800,146,146,146,146,146,132,882,789,123', '120,789,119,118,789,789,117,789,897,789,116,901,113,789,565,905,111', '565,565,908,565,789,909,72,55,52,789,789,789,789,789,789,800,800,49', '789,789,580,580,580,580,580,580,46,789,919,580,580,922,30,925,580,27', '580,580,580,580,580,580,580,565,565,565,565,24,580,580,580,580,580,580', '580,930,22,580,75,75,75,75,75,580,580,580,580,580,580,580,580,580,580', '580,21,580,580,580,6,580,580,3,580,580,580,939,,,,,803,,,803,803,,803', ',,,,,,,580,,,580,,,580,580,,580,,580,,,,580,562,,,562,562,,562,580,', ',,,580,580,580,580,580,580,803,803,,580,580,807,807,807,807,807,807', ',580,,807,807,,,,807,,807,807,807,807,807,807,807,562,562,562,562,,807', '807,807,807,807,807,807,,,807,,,,,,807,807,807,807,807,807,807,807,807', '807,807,,807,807,807,,807,807,,807,807,807,,,,,,805,,,805,805,,805,', ',,,,,,807,,,807,,,807,807,,807,,807,,,,807,643,,,643,643,,643,807,,', ',,807,807,807,807,807,807,805,805,,807,807,808,808,808,808,808,808,', '807,,808,808,,,,808,,808,808,808,808,808,808,808,643,643,643,643,,808', '808,808,808,808,808,808,515,,808,,,,,,808,808,808,808,808,808,808,808', '808,808,808,,808,808,808,,808,808,,808,808,808,,515,,,,515,515,515,515', ',,,,,,,,,,808,,,808,,,808,808,,808,,808,,,,808,798,,,798,798,,798,808', ',,,,808,808,808,808,808,808,,,,808,808,358,358,358,358,358,358,,808', ',358,358,,,,358,,358,358,358,358,358,358,358,798,798,798,798,,358,358', '358,358,358,358,358,518,,358,,,,,,358,358,358,358,358,358,358,358,358', '358,358,,358,358,358,,358,358,,358,358,358,,518,,,,518,518,518,518,', ',,,,,,,,,358,,,358,,,358,358,,358,,358,,,,358,352,,,352,352,,352,358', ',,,,358,358,358,358,358,358,,,,358,358,349,349,349,349,349,349,,358', ',349,349,,,,349,,349,349,349,349,349,349,349,352,352,352,352,,349,349', '349,349,349,349,349,,,349,,,,,,349,349,349,349,349,349,349,349,349,349', '349,,349,349,349,,349,349,,349,349,349,525,525,525,525,525,525,525,', ',525,525,,,,,,525,525,,349,,,349,,,349,349,,349,,349,525,,525,349,525', '525,525,525,525,525,525,349,525,,,,349,349,349,349,349,349,,,,349,349', '738,738,738,738,738,738,,349,,738,738,,,,738,,738,738,738,738,738,738', '738,,,,,,738,738,738,738,738,738,738,,,738,,,,,,738,738,738,738,738', '738,738,738,738,738,738,,738,738,738,,738,738,,738,738,738,505,505,505', '505,505,505,505,,,505,505,,,,,,505,505,,738,,,738,,,738,738,,738,,738', '505,,505,738,505,505,505,505,505,505,505,738,505,,,,738,738,738,738', '738,738,,,,738,738,742,742,742,742,742,742,,738,,742,742,,,,742,,742', '742,742,742,742,742,742,,,,,,742,742,742,742,742,742,742,,,742,,,,,', '742,742,742,742,742,742,742,742,742,742,742,,742,742,742,,742,742,,742', '742,742,506,506,506,506,506,506,506,506,506,506,506,,506,506,,,506,506', ',742,,,742,,,742,742,,742,,742,506,,506,742,506,506,506,506,506,506', '506,742,506,,,,742,742,742,742,742,742,,,,742,742,832,832,832,832,832', '832,,742,,832,832,,,,832,,832,832,832,832,832,832,832,,,,,,832,832,832', '832,832,832,832,,,832,,,,,,832,832,832,832,832,832,832,832,832,832,832', ',832,832,832,,832,832,,832,832,832,507,507,507,507,507,507,507,,,507', '507,,,,,,507,507,,832,,,832,,,832,832,,832,,832,507,,507,832,507,507', '507,507,507,507,507,832,507,,,,832,832,832,832,832,832,,,,832,832,325', '325,325,325,325,325,,832,,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,509,509,509,509', '509,509,509,509,509,509,509,,509,509,,,509,509,,325,,,325,,,325,325', ',325,,325,509,,509,325,509,509,509,509,509,509,509,325,509,,,,325,325', '325,325,325,325,,,,325,325,281,281,281,281,281,281,,325,,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,510,510,510,510,510,510,510,,,510,510,,,,,,510,510', ',281,,,281,,,281,281,,281,,281,510,,510,281,510,510,510,510,510,510', '510,281,510,,,,281,281,281,281,281,281,,,,281,281,845,845,845,845,845', '845,,281,,845,845,,,,845,,845,845,845,845,845,845,845,,,,,,845,845,845', '845,845,845,845,,,845,,,,,,845,845,845,845,845,845,845,845,845,845,845', ',845,845,845,,845,845,,845,845,845,523,523,523,523,523,523,523,523,', '523,523,,,,,,523,523,,845,,,845,,,845,845,,845,,845,523,,523,845,523', '523,523,523,523,523,523,845,523,,,,845,845,845,845,845,845,,,,845,845', '271,271,271,271,271,271,,845,,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,520,,,,,', ',,,,,,,,,,520,520,,271,,,271,,,271,271,,271,,271,520,,520,271,520,520', '520,520,,,520,271,520,,,,271,271,271,271,271,271,,,,271,271,853,853', '853,853,853,853,,271,,853,853,,,,853,,853,853,853,853,853,853,853,,', ',,,853,853,853,853,853,853,853,,,853,,,,,,853,853,853,853,853,853,853', '853,853,853,853,,853,853,853,,853,853,,853,853,853,519,,,,,,,,,,,,,', ',,519,519,,853,,,853,,,853,853,,853,,853,519,,519,853,519,519,519,519', ',,519,853,519,,,,853,853,853,853,853,853,,,,853,853,263,263,263,263', '263,263,,853,,263,263,,,,263,,263,263,263,263,263,263,263,,,,,,263,263', '263,263,263,263,263,,,263,,,,,,263,263,263,263,263,263,263,263,263,263', '263,,263,263,263,,263,263,,263,263,263,527,527,527,527,527,527,527,', ',527,527,,,,,,527,527,,263,,,263,,,263,263,,263,,263,527,,527,263,527', '527,527,527,527,527,527,263,527,,,,263,263,263,263,263,263,,,,263,263', '861,861,861,861,861,861,,263,,861,861,,,,861,,861,861,861,861,861,861', '861,,,,,,861,861,861,861,861,861,861,,,861,,,,,,861,861,861,861,861', '861,861,861,861,861,861,,861,861,861,,861,861,,861,861,861,516,,,,,', ',,,,,,,,,,516,516,,861,,,861,,,861,861,,861,,861,516,,516,861,516,516', '516,516,,,516,861,516,,,,861,861,861,861,861,861,,,,861,861,627,627', '627,627,627,627,,861,,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,627,,627,627,627,521,521,521,521,521', '521,521,,,521,521,,,,,,521,521,,627,,,627,,,627,627,,627,,627,521,,521', '627,521,521,521,521,521,521,521,627,521,,,,627,627,627,627,627,627,', ',,627,627,866,866,866,866,866,866,,627,,866,866,,,,866,,866,866,866', '866,866,866,866,,,,,,866,866,866,866,866,866,866,,,866,,,,,,866,866', '866,866,866,866,866,866,866,866,866,,866,866,866,,866,866,,866,866,866', '522,,,,,,,,,,,,,,,,522,522,,866,,,866,,,866,866,,866,,866,522,,522,866', '522,522,522,522,,,522,866,522,,,,866,866,866,866,866,866,,,,866,866', '877,877,877,877,877,877,,866,,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,513,513,513', '513,513,513,513,,,513,513,,,,,,513,513,,877,,,877,,,877,877,,877,,877', '513,,513,877,513,513,513,513,513,513,513,877,513,,,,877,877,877,877', '877,877,,,,877,877,878,878,878,878,878,878,,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,528,,,,,,,,,,,,,,,,528,528,,878,,,878,,,878,878,,878,,878,528', ',528,878,528,528,528,528,,,,878,,,,,878,878,878,878,878,878,,,,878,878', '126,126,126,126,126,126,,878,,126,126,,,,126,,126,126,126,126,126,126', '126,,,,,,126,126,126,126,126,126,126,,,126,,,,,,126,126,126,126,126', '126,126,126,126,126,126,,126,126,126,,126,126,,126,126,126,524,,,,,', ',,,,,,,,,,524,524,,126,,,126,,,126,126,,126,,126,524,,524,126,524,524', '524,524,,,,126,,,,,126,126,126,126,126,126,,,,126,126,885,885,885,885', '885,885,,126,,885,885,,,,885,,885,885,885,885,885,885,885,,,,,,885,885', '885,885,885,885,885,,,885,,,,,,885,885,885,885,885,885,885,885,885,885', '885,,885,885,885,,885,885,,885,885,885,503,,,,,,,,,,,,,,,,503,503,,885', ',,885,,,885,885,,885,,885,503,,,885,503,503,503,503,,,,885,,,,,885,885', '885,885,885,885,,,,885,885,644,644,644,644,644,644,,885,,644,644,,,', '644,,644,644,644,644,644,644,644,,,,,,644,644,644,644,644,644,644,,', '644,,,,,,644,644,644,644,644,644,644,644,644,644,644,,644,644,644,,644', '644,,644,644,644,,,,,,,,,,,,,,,,,,,,644,,,644,,,644,644,,644,,644,,', ',644,,,,,,,,644,,,,,644,644,644,644,644,644,,,,644,644,2,2,2,2,2,2,', '644,,2,2,,,,2,,2,2,2,2,2,2,2,,,,,,2,2,2,2,2,2,2,,,2,,,,,,2,2,2,2,2,2', '2,2,2,2,2,,2,2,2,,2,2,,2,2,2,,,,,,,,,,,,,,,,,,,,2,,,2,,,2,2,,2,,2,,', ',2,,,,,,,,2,,,,,2,2,2,2,2,2,,,,2,2,67,67,67,67,67,67,,2,,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', '745,745,745,745,745,745,,67,,745,745,,,,745,,745,745,745,745,745,745', '745,,,,,,745,745,745,745,745,745,745,,,745,,,,,,745,745,745,745,745', '745,745,745,745,745,745,,745,745,745,,745,745,,745,745,745,,,,,,,,,', ',,,,,,,,,,745,,,745,,,745,745,,745,,745,,,,745,,,,,,,,745,,,,,745,745', '745,745,745,745,,,,745,745,656,656,656,,656,,,745,656,656,,,,656,,656', '656,656,656,656,656,656,,,,,,656,656,656,656,656,656,656,,,,,,,,,,656', ',,656,656,656,656,656,656,656,,656,656,656,,656,656,,656,656,656,,,', ',,,,,,,,,,,,,,,,656,,,656,,,656,656,,656,,,,,,656,,,,,,,,656,,,,,656', '656,656,656,656,656,,,,656,656,63,63,63,,63,,,656,63,63,,,,63,,63,63', '63,63,63,63,63,,,,,,63,63,63,63,63,63,63,,,63,,,,,,,63,,,63,63,63,63', '63,63,63,,63,63,63,,63,63,,63,63,63,,,,,,,,,,,,,,,,,,,,63,,,63,,,63', '63,,63,,,,,,63,,,,,,,,63,,,,,63,63,63,63,63,63,,,,63,63,64,64,64,,64', ',,63,64,64,,,,64,,64,64,64,64,64,64,64,,64,,,,64,64,64,64,64,64,64,', ',,,,,,,,64,,,64,64,64,64,64,64,64,64,64,64,64,,64,64,,64,64,64,,,,,', ',,,,,,,,,,,,,,64,,,64,64,,64,64,,64,,64,,64,,64,,,,,,,,64,,64,,,64,64', '64,64,64,64,,,,64,64,299,299,299,,299,,,64,299,299,,,,299,,299,299,299', '299,299,299,299,,,,,,299,299,299,299,299,299,299,,,,,,,,,,299,,,299', '299,299,299,299,299,299,,299,299,299,,299,299,,299,299,299,,,,,,,,,', ',,,,,,,,,,299,,,299,,,299,299,,299,,,,,,299,,,,,,,,299,,,,,299,299,299', '299,299,299,,,,299,299,66,66,66,,66,,,299,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,652,652,652,,652', ',,66,652,652,,,,652,,652,652,652,652,652,652,652,,,,,,652,652,652,652', '652,652,652,,,,,,,,,,652,,,652,652,652,652,652,652,652,,652,652,652', ',652,652,,652,652,652,,,,,,,,,,,,,,,,,,,,652,,,652,,,652,652,,652,,', ',,,652,,,,,,,,652,,,,,652,652,652,652,652,652,,,,652,652,69,69,69,,69', ',,652,69,69,,,,69,,69,69,69,69,69,69,69,,,,,,69,69,69,69,69,69,69,,', ',,,,,,,69,,,69,69,69,69,69,69,69,,69,69,69,,69,69,,69,69,69,,,,,,,,', ',,,,,,,,,,,69,,,69,,,69,69,,69,,,,,,69,,,,,,,,69,,,,,69,69,69,69,69', '69,,,,69,69,58,58,58,,58,,,69,58,58,,,,58,,58,58,58,58,58,58,58,,,,', ',58,58,58,58,58,58,58,,,,,,,,,,58,,,58,58,58,58,58,58,58,58,58,58,58', ',58,58,,58,58,58,,,,,,,,,,,,,,,,,,,,58,,,58,,,58,58,,58,,58,,58,,58', ',,,,,,,58,,,,,58,58,58,58,58,58,,,,58,58,739,739,739,,739,,,58,739,739', ',,,739,,739,739,739,739,739,739,739,,,,,,739,739,739,739,739,739,739', ',,739,,,,,,,739,,,739,739,739,739,739,739,739,,739,739,739,,739,739', ',739,739,739,,,,,,,,,,,,,,,,,,,,739,,,739,,,739,739,,739,,,,,,739,,', ',,,,,739,,,,,739,739,739,739,739,739,,,,739,739,651,651,651,,651,,,739', '651,651,,,,651,,651,651,651,651,651,651,651,,,,,,651,651,651,651,651', '651,651,,,,,,,,,,651,,,651,651,651,651,651,651,651,,651,651,651,,651', '651,,651,651,651,,,,,,,,,,,,,,,,,,,,651,,,651,,,651,651,,651,,,,,,651', ',,,,,,,651,,,,,651,651,651,651,651,651,,,,651,651,80,80,80,,80,,,651', '80,80,,,,80,,80,80,80,80,80,80,80,,,,,,80,80,80,80,80,80,80,,,80,,,', ',593,,80,,,80,80,80,80,80,80,80,,80,80,80,,80,80,,80,80,80,593,593,593', '593,593,593,593,593,593,593,593,,593,593,,,593,593,,80,,,80,,,80,80', ',80,,,593,,593,80,593,593,593,593,593,593,593,80,593,,,,80,80,80,80', '80,80,,,,80,80,80,593,81,81,81,80,81,80,,,81,81,,,,81,,81,81,81,81,81', '81,81,,,,,,81,81,81,81,81,81,81,,,81,,,,,,,81,,,81,81,81,81,81,81,81', ',81,81,81,,81,81,,81,81,81,,,,,,,,,,,,,,,,,,,,81,,,81,,,81,81,,81,,', ',,,81,,,,,,,,81,,,,,81,81,81,81,81,81,,,,81,81,83,83,83,,83,,,81,83', '83,,,,83,,83,83,83,83,83,83,83,,83,,,,83,83,83,83,83,83,83,,,,,,,,,', '83,,,83,83,83,83,83,83,83,83,83,83,83,,83,83,,83,83,83,,,,,,,,,,,,,', ',,,,,,83,,,83,83,,83,83,,83,,83,,83,,83,,,,,,,,83,,83,,,83,83,83,83', '83,83,,,,83,83,674,674,674,,674,,,83,674,674,,,,674,,674,674,674,674', '674,674,674,,,,,,674,674,674,674,674,674,674,,,,,,,,,,674,,,674,674', '674,674,674,674,674,,674,674,674,,674,674,,674,674,674,,,,,,,,,,,,,', ',,,,,,674,,,674,,,674,674,,674,,,,,,674,,,,,,,,674,,,,,674,674,674,674', '674,674,,,,674,674,86,86,86,,86,,,674,86,86,,,,86,,86,86,86,86,86,86', '86,,,,,,86,86,86,86,86,86,86,,,,,,,,,,86,,,86,86,86,86,86,86,86,86,86', '86,86,,86,86,,86,86,86,,,,,,,,,,,,,,,,,,,,86,,,86,,,86,86,,86,,86,,', ',86,,,,,,,,86,,,,,86,86,86,86,86,86,,,,86,86,936,936,936,,936,,,86,936', '936,,,,936,,936,936,936,936,936,936,936,,,,,,936,936,936,936,936,936', '936,,,,,,,,,,936,,,936,936,936,936,936,936,936,,936,936,936,,936,936', ',936,936,936,,,,,,,,,,,,,,,,,,,,936,,,936,,,936,936,,936,,,,,,936,,', ',,,,,936,,,,,936,936,936,936,936,936,,,,936,936,7,7,7,,7,,,936,7,7,', ',,7,,7,7,7,7,7,7,7,,,,,,7,7,7,7,7,7,7,,,,,,,,,,7,,,7,7,7,7,7,7,7,,7', '7,7,,7,7,,455,,7,455,455,,455,,,,,,,,,,,,,,,,7,,,7,,,7,7,,7,,7,,,,,', '455,,,,,,,455,455,455,455,7,7,7,7,7,7,,,,7,7,730,730,730,,730,,,7,730', '730,,,,730,,730,730,730,730,730,730,730,,,,,,730,730,730,730,730,730', '730,,,,,,,,,,730,,,730,730,730,730,730,730,730,730,730,730,730,,730', '730,,730,730,730,,,,,,,,,,,,,,,,,,,,730,,,730,,,730,730,,730,,730,,730', ',730,,,,,,,,730,,,,,730,730,730,730,730,730,,,,730,730,98,98,98,,98', ',,730,98,98,,,,98,,98,98,98,98,98,98,98,,,,,,98,98,98,98,98,98,98,,', ',,,,,,,98,,,98,98,98,98,98,98,98,98,98,98,98,,98,98,,98,98,98,,,,,,', ',,,,,,,,,,,,,98,,,98,,,98,98,,98,,,,,,98,,,,,,,,98,,,,,98,98,98,98,98', '98,,,,98,98,550,550,550,,550,,,98,550,550,,,,550,,550,550,550,550,550', '550,550,,,,,,550,550,550,550,550,550,550,,,,,,,,,,550,,,550,550,550', '550,550,550,550,,550,550,550,,550,550,,550,550,550,,,,,,,,,,,,,,,,,', ',,550,,,550,,,550,550,,550,,550,,,,550,,,,,,,,550,,,,,550,550,550,550', '550,550,,,,550,550,102,102,102,,102,,,550,102,102,,,,102,,102,102,102', '102,102,102,102,,,,,,102,102,102,102,102,102,102,,,,,,,,,,102,,,102', '102,102,102,102,102,102,,102,102,102,,102,102,,102,102,102,,,,,,,,,', ',,,,,,,,,,102,,,102,,,102,102,,102,,102,,,,102,,,,,,,,102,,,,,102,102', '102,102,102,102,,,,102,102,749,749,749,,749,,,102,749,749,,,,749,,749', '749,749,749,749,749,749,,,,,,749,749,749,749,749,749,749,,,,,,,,,,749', ',,749,749,749,749,749,749,749,749,749,749,749,,749,749,,749,749,749', ',,,,,,,,,,,,,,,,,,,749,,,749,,,749,749,,749,,749,,749,,749,,,,,,,,749', ',,,,749,749,749,749,749,749,,,,749,749,552,552,552,,552,,,749,552,552', ',,,552,,552,552,552,552,552,552,552,,,,,,552,552,552,552,552,552,552', ',,,,,,,,,552,,,552,552,552,552,552,552,552,552,552,552,552,,552,552', ',552,552,552,,,,,,90,,,,,,,,,,,,,,552,,,552,,,552,552,90,552,,90,90', '836,90,552,836,836,,836,,,,552,,,,556,552,552,552,552,552,552,556,556', '556,552,552,556,556,556,,556,,,552,90,,,,,836,556,90,90,90,90,,836,836', '836,836,556,556,,556,556,556,556,556,,,,,347,347,,,347,,,,,,,,,347,347', '90,347,347,347,347,,347,347,,,347,,,,556,347,347,347,347,,,556,,,,,556', '556,,,,347,347,,347,347,347,347,347,347,347,347,347,,347,,,347,556,', ',,,,,,906,906,906,,906,556,,556,906,906,556,,,906,,906,906,906,906,906', '906,906,,,,,,906,906,906,906,906,906,906,,,,,,,,,,906,,,906,906,906', '906,906,906,906,,906,906,906,,906,906,,906,906,906,,,,,,,,,,,,,,,,,', ',,906,,,906,,,906,906,,906,,,,,,906,,,,,,,,906,,,,,906,906,906,906,906', '906,,,,906,906,57,57,57,,57,,,906,57,57,,,,57,,57,57,57,57,57,57,57', ',,,,,57,57,57,57,57,57,57,,,57,,,,,,,57,,,57,57,57,57,57,57,57,,57,57', '57,,57,57,,57,57,57,,,,,,,,,,,,,,,,,,,,57,,,57,,,57,57,,57,,,,,,57,', ',,,,,,57,,,,,57,57,57,57,57,57,,,,57,57,904,904,904,,904,,,57,904,904', ',,,904,,904,904,904,904,904,904,904,,,,,,904,904,904,904,904,904,904', ',,,,,,,,,904,,,904,904,904,904,904,904,904,,904,904,904,,904,904,,904', '904,904,,,,,,,,,,,,,,,,,,,,904,,,904,,,904,904,,904,,,,,,904,,,,,,,', '904,,,,559,904,904,904,904,904,904,559,559,559,904,904,559,559,559,', '559,,,904,,,,,,,559,,,,,,,,,,559,559,,559,559,559,559,559,,,,,422,422', ',,422,,,,,,,,,422,422,,422,422,422,422,,422,422,,,422,,,,559,422,422', '422,422,,,559,,,,,559,559,,,,422,422,,422,422,422,422,422,422,422,422', '422,,422,,,422,559,,,,,,,,899,899,899,,899,559,,559,899,899,559,,,899', ',899,899,899,899,899,899,899,,,,,,899,899,899,899,899,899,899,,,,,,', ',,,899,,,899,899,899,899,899,899,899,,899,899,899,,899,899,,899,899', '899,,,,,,,,,,,,,,,,,,,,899,,,899,,,899,899,,899,,,,899,,899,,,,,,,,899', ',,,,899,899,899,899,899,899,,,,899,899,727,727,727,,727,,,899,727,727', ',,,727,,727,727,727,727,727,727,727,,,,,,727,727,727,727,727,727,727', ',,,,,,,,,727,,,727,727,727,727,727,727,727,,727,727,727,,727,727,,727', '727,727,,,,,,,,,,,,,,,,,,,,727,,,727,,,727,727,,727,,,,,,727,,,,,,,', '727,,,,,727,727,727,727,727,727,,,,727,727,675,675,675,,675,,,727,675', '675,,,,675,,675,675,675,675,675,675,675,,,,,,675,675,675,675,675,675', '675,,,,,,,,,,675,,,675,675,675,675,675,675,675,675,675,675,675,,675', '675,,675,675,675,,,,,,,,,,,,,,,,,,,,675,,,675,,,675,675,,675,,675,,675', ',675,,,,,,,,675,,,,,675,675,675,675,675,675,,,,675,675,888,888,888,', '888,,,675,888,888,,,,888,,888,888,888,888,888,888,888,,,,,,888,888,888', '888,888,888,888,,,,,,,,,,888,,,888,888,888,888,888,888,888,,888,888', '888,,888,888,,888,888,888,,,,,,,,,,,,,,,,,,,,888,,,888,,,888,888,,888', ',,,,,888,,,,,,,,888,,,,,888,888,888,888,888,888,,,,888,888,911,911,911', ',911,,,888,911,911,,,,911,,911,911,911,911,911,911,911,,,,,,911,911', '911,911,911,911,911,,,,,,,,,,911,,,911,911,911,911,911,911,911,911,911', '911,911,,911,911,,911,911,911,,,,,,,,,,,,,,,,,,,,911,,,911,,,911,911', ',911,,911,,,,911,,,,,,,,911,,,,,911,911,911,911,911,911,,,,911,911,763', '763,763,,763,,,911,763,763,,,,763,,763,763,763,763,763,763,763,,,,,', '763,763,763,763,763,763,763,,,,,,,,,,763,,,763,763,763,763,763,763,763', ',763,763,763,,763,763,,763,763,763,,,,,,,,,,,,,,,,,,,,763,,,763,,,763', '763,,763,,,,,,763,,,,,,,,763,,,,,763,763,763,763,763,763,,,,763,763', '568,568,568,,568,,,763,568,568,,,,568,,568,568,568,568,568,568,568,', ',,,,568,568,568,568,568,568,568,,,,,,,,,,568,,,568,568,568,568,568,568', '568,,568,568,568,,568,568,,568,568,568,,,,,,,,,,,,,,,,,,,,568,,,568', ',,568,568,,568,,,,,,568,,,,,,,,568,,,,,568,568,568,568,568,568,,,,568', '568,8,8,8,,8,,,568,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,725,725,725,,725,,,8,725', '725,,,,725,,725,725,725,725,725,725,725,,,,,,725,725,725,725,725,725', '725,,,,,,,,,,725,,,725,725,725,725,725,725,725,,725,725,725,,725,725', ',725,725,725,,,,,,,,,,,,,,,,,,,,725,,,725,,,725,725,,725,,,,,,725,,', ',,,,,725,,,,,725,725,725,725,725,725,,,,725,725,657,657,657,,657,,,725', '657,657,,,,657,,657,657,657,657,657,657,657,,,,,,657,657,657,657,657', '657,657,,,,,,,,,,657,,,657,657,657,657,657,657,657,,657,657,657,,657', '657,,657,657,657,,,,,,,,,,,,,,,,,,,,657,,,657,,,657,657,,657,,,,,,657', ',,,,,,,657,,,,,657,657,657,657,657,657,,,,657,657,13,13,13,,13,,,657', '13,13,,,,13,,13,13,13,13,13,13,13,,,,,,13,13,13,13,13,13,13,,,,,,,,', ',13,,,13,13,13,13,13,13,13,13,13,13,13,,13,13,,13,13,13,,,,,,,,,,,,', ',,,,,,,13,,,13,,,13,13,,13,,13,,13,,13,,,,,,,,13,,,,,13,13,13,13,13', '13,,,,13,13,130,130,130,,130,,,13,130,130,,,,130,,130,130,130,130,130', '130,130,,,,,,130,130,130,130,130,130,130,,,,,,,,,,130,,,130,130,130', '130,130,130,130,,130,130,130,,130,130,,130,130,130,,,,,,,,,,,,,,,,,', ',,130,,,130,,,130,130,,130,,,,,,130,,,,,,,,130,,,,,130,130,130,130,130', '130,,,,130,130,131,131,131,,131,,,130,131,131,,,,131,,131,131,131,131', '131,131,131,,,,,,131,131,131,131,131,131,131,,,,,,,,,,131,,,131,131', '131,131,131,131,131,,131,131,131,,131,131,,131,131,131,,,,,,,,,,,,,', ',,,,,,131,,,131,,,131,131,,131,,,,,,131,,,,,,,,131,,,,,131,131,131,131', '131,131,,,,131,131,14,14,14,,14,,,131,14,14,,,,14,,14,14,14,14,14,14', '14,,,,,,14,14,14,14,14,14,14,,,,,,,,,,14,,,14,14,14,14,14,14,14,,14', '14,14,,14,14,,,,14,,,,,,,,,,,,,,,,,,,,14,,,14,,,14,14,,14,,,,,,,,,,', ',,,,,,,,14,14,14,14,14,14,,,,14,14,490,490,490,,490,,,14,490,490,,,', '490,,490,490,490,490,490,490,490,,,,,,490,490,490,490,490,490,490,,', ',,,,,,,490,,,490,490,490,490,490,490,490,,490,490,490,,490,490,,490', '490,490,,,,,,,,,,,,,,,,,,,,490,,,490,,,490,490,,490,,,,,,490,,,,,,,', '490,,,,,490,490,490,490,490,490,,,,490,490,15,15,15,15,15,,,490,15,15', ',,,15,,15,15,15,15,15,15,15,,,,,,15,15,15,15,15,15,15,,,15,,,,,,15,15', '15,15,15,15,15,15,15,15,15,,15,15,15,,15,15,,15,15,15,,,,,,,,,,,,,,', ',,,,,15,,,15,,,15,15,,15,,15,,,,15,,,,,,,,15,,,,,15,15,15,15,15,15,', ',,15,15,488,488,488,,488,,,15,488,488,,,,488,,488,488,488,488,488,488', '488,,,,,,488,488,488,488,488,488,488,,,,,,,,,,488,,,488,488,488,488', '488,488,488,,488,488,488,,488,488,,488,488,488,,,,,,,,,,,,,,,,,,,,488', ',,488,,,488,488,,488,,,,,,488,,,,,,,,488,,,,,488,488,488,488,488,488', ',,,488,488,137,137,137,,137,,,488,137,137,,,,137,,137,137,137,137,137', '137,137,,,,,,137,137,137,137,137,137,137,,,,,,,,,,137,,,137,137,137', '137,137,137,137,,137,137,137,,137,137,,137,137,137,,,,,,,,,,,,,,,,,', ',,137,,,137,,,137,137,,137,,,,,,137,,,,,,,,137,,,,,137,137,137,137,137', '137,,,,137,137,140,140,140,,140,,,137,140,140,,,,140,,140,140,140,140', '140,140,140,,,,,,140,140,140,140,140,140,140,,,,,,,,,,140,,,140,140', '140,140,140,140,140,,140,140,140,,140,140,,140,140,140,,,,,,,,,,,,,', ',,,,,,140,,,140,,,140,140,,140,,,,,,140,,,,,,,,140,,,,,140,140,140,140', '140,140,,,,140,140,487,487,487,,487,,,140,487,487,,,,487,,487,487,487', '487,487,487,487,,,,,,487,487,487,487,487,487,487,,,,,,,,,,487,,,487', '487,487,487,487,487,487,,487,487,487,,487,487,,487,487,487,,,,,,,,,', ',,,,,,,,,,487,,,487,,,487,487,,487,,,,,,487,,,,,,,,487,,,,,487,487,487', '487,487,487,,,,487,487,486,486,486,,486,,,487,486,486,,,,486,,486,486', '486,486,486,486,486,,,,,,486,486,486,486,486,486,486,,,486,,,,,,,486', ',,486,486,486,486,486,486,486,,486,486,486,,486,486,,486,486,486,,,', ',,,,,,,,,,,,,,,,486,,,486,,,486,486,,486,,,,,,486,,,,,,,,486,,,,,486', '486,486,486,486,486,,,,486,486,778,778,778,,778,,,486,778,778,,,,778', ',778,778,778,778,778,778,778,,,,,,778,778,778,778,778,778,778,,,778', ',,,,,,778,,,778,778,778,778,778,778,778,,778,778,778,,778,778,,778,778', '778,,,,,,,,,,,,,,,,,,,,778,,,778,,,778,778,,778,,,,,,778,,,,,,,,778', ',,,,778,778,778,778,778,778,,,,778,778,18,18,18,,18,,,778,18,18,,,,18', ',18,18,18,18,18,18,18,,,,,,18,18,18,18,18,18,18,,,,,,,,,,18,,,18,18', '18,18,18,18,18,18,18,18,18,,18,18,,18,18,18,,,,,,,,,,,,,,,,,,,,18,,', '18,,,18,18,,18,,18,,18,,18,,,,,,,,18,,,,,18,18,18,18,18,18,,,,18,18', '634,634,634,,634,,,18,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,469,469,469,,469,,,634,469,469,,,,469,,469,469,469,469,469,469,469', ',,,,,469,469,469,469,469,469,469,,,,,,,,,,469,,,469,469,469,469,469', '469,469,469,469,469,469,,469,469,,469,469,469,,,,,,,,,,,,,,,,,,,,469', ',,469,469,,469,469,,469,,469,,469,,469,,,,,,,,469,,,,,469,469,469,469', '469,469,,,,469,469,149,149,149,,149,,,469,149,149,,,,149,,149,149,149', '149,149,149,149,,,,,,149,149,149,149,149,149,149,,,,,,,,,,149,,,149', '149,149,149,149,149,149,,149,149,149,,149,149,,,,149,,,,,,,,,,,,,,,', ',,,,149,,,149,,,149,149,,149,,,,,,,,,,,,,,,,,,,149,149,149,149,149,149', ',,,149,149,151,151,151,,151,,,149,151,151,,,,151,,151,151,151,151,151', '151,151,,,,,,151,151,151,151,151,151,151,,,,,,,,,,151,,,151,151,151', '151,151,151,151,,151,151,151,,151,151,,151,151,151,,,,,,,,,,,,,,,,,', ',,151,,,151,,,151,151,,151,,151,,,,151,,,,,,,,151,,,,,151,151,151,151', '151,151,,,,151,151,468,468,468,,468,,,151,468,468,,,,468,,468,468,468', '468,468,468,468,,,,,,468,468,468,468,468,468,468,,,,,,,,,,468,,,468', '468,468,468,468,468,468,468,468,468,468,,468,468,,468,468,468,,,,,,', ',,,,,,,,,,,,,468,,,468,468,,468,468,,468,,468,,468,,468,,,,,,,,468,', ',,,468,468,468,468,468,468,,,,468,468,874,874,874,,874,,,468,874,874', ',,,874,,874,874,874,874,874,874,874,,,,,,874,874,874,874,874,874,874', ',,,,,,,,,874,,,874,874,874,874,874,874,874,874,874,874,874,,874,874', ',874,874,874,,,,,,,,,,,,,,,,,,,,874,,,874,,,874,874,,874,,874,,874,', '874,,,,,,,,874,,,,,874,874,874,874,874,874,,,,874,874,155,155,155,,155', ',,874,155,155,,,,155,,155,155,155,155,155,155,155,,,,,,155,155,155,155', '155,155,155,,,,,,,,,,155,,,155,155,155,155,155,155,155,,155,155,155', ',155,155,,,,155,,,,,,,,,,,,,,,,,,,,155,,,155,,,155,155,,155,,,,,,,,', ',,,,,,,,,,155,155,155,155,155,155,,,,155,155,156,156,156,,156,,,155', '156,156,,,,156,,156,156,156,156,156,156,156,,,,,,156,156,156,156,156', '156,156,,,,,,,,,,156,,,156,156,156,156,156,156,156,,156,156,156,,156', '156,,156,156,156,,,,,,,,,,,,,,,,,,,,156,,,156,,,156,156,,156,,,,,,156', ',,,,,,,156,,,,,156,156,156,156,156,156,,,,156,156,791,791,791,,791,', ',156,791,791,,,,791,,791,791,791,791,791,791,791,,,,,,791,791,791,791', '791,791,791,,,,,,,,,,791,,,791,791,791,791,791,791,791,,791,791,791', ',791,791,,791,791,791,,,,,,,,,,,,,,,,,,,,791,,,791,,,791,791,,791,,', ',,,791,,,,,,,,791,,,,,791,791,791,791,791,791,,,,791,791,872,872,872', ',872,,,791,872,872,,,,872,,872,872,872,872,872,872,872,,,,,,872,872', '872,872,872,872,872,,,,,,,,,,872,,,872,872,872,872,872,872,872,872,872', '872,872,,872,872,,872,872,872,,,,,,,,,,,,,,,,,,,,872,,,872,,,872,872', ',872,,872,,872,,872,,,,,,,,872,,,,,872,872,872,872,872,872,,,,872,872', '162,162,162,,162,,,872,162,162,,,,162,,162,162,162,162,162,162,162,', ',,,,162,162,162,162,162,162,162,,,,,,,,,,162,,,162,162,162,162,162,162', '162,162,162,162,162,,162,162,,162,162,162,,,,,,,,,,,,,,,,,,,,162,,,162', ',,162,162,,162,,162,,162,,162,,,,,,,,162,,,,,162,162,162,162,162,162', ',,,162,162,576,576,576,,576,,,162,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,576,576', '576,,,,576,576,459,459,459,,459,,,576,459,459,,,,459,,459,459,459,459', '459,459,459,,,,,,459,459,459,459,459,459,459,,,,,,,,,,459,,,459,459', '459,459,459,459,459,459,459,459,459,,459,459,,459,459,459,,,,,,,,,,', ',,,,,,,,,459,,,459,459,,459,459,,459,,459,,459,,459,,,,,,,,459,,,,,459', '459,459,459,459,459,,,,459,459,632,632,632,,632,,,459,632,632,,,,632', ',632,632,632,632,632,632,632,,,,,,632,632,632,632,632,632,632,,,,,,', ',,,632,,,632,632,632,632,632,632,632,,632,632,632,,632,632,,,,632,,', ',,,,,,,,,,,,,,,,,632,,,632,,,632,632,,632,,632,,,,,,,,,,,632,,,,,,632', '632,632,632,632,632,,,,632,632,659,659,659,,659,,,632,659,659,,,,659', ',659,659,659,659,659,659,659,,,,,,659,659,659,659,659,659,659,,,,,,', ',,,659,,,659,659,659,659,659,659,659,,659,659,659,,659,659,,659,659', '659,,,,,,,,,,,,,,,,,,,,659,,,659,,,659,659,,659,,659,,,,659,,,,,,,,659', ',,,,659,659,659,659,659,659,,,,659,659,454,454,454,,454,,,659,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,449,449,449,,449,,,454', '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,449,449', ',449,449,,449,449,449,,,,,,,,,,,,,,,,,,,,449,,,449,,,449,449,,449,,449', ',449,,449,,,,,,,,449,,,,,449,449,449,449,449,449,,,,449,449,615,615', '615,,615,,,449,615,615,,,,615,,615,615,615,615,615,615,615,,,,,,615', '615,615,615,615,615,615,,,,,,,,,,615,,,615,615,615,615,615,615,615,615', '615,615,615,,615,615,,615,615,615,,,,,,,,,,,,,,,,,,,,615,,,615,,,615', '615,,615,,615,,,,615,,,,,,,,615,,,,,615,615,615,615,615,615,,,,615,615', '583,583,583,,583,,,615,583,583,,,,583,,583,583,583,583,583,583,583,', ',,,,583,583,583,583,583,583,583,,,,,,,,,,583,,,583,583,583,583,583,583', '583,,583,583,583,,583,583,,583,583,583,,,,,,,,,,,,,,,,,,,,583,,,583', ',,583,583,,583,,583,,,,583,,,,,,,,583,,,,,583,583,583,583,583,583,,', ',583,583,584,584,584,,584,,,583,584,584,,,,584,,584,584,584,584,584', '584,584,,,,,,584,584,584,584,584,584,584,,,,,,,,,,584,,,584,584,584', '584,584,584,584,,584,584,584,,584,584,,584,584,584,,,,,,,,,,,,,,,,,', ',,584,,,584,,,584,584,,584,,,,,,584,,,,,,,,584,,,,,584,584,584,584,584', '584,,,,584,584,432,432,432,,432,,,584,432,432,,,,432,,432,432,432,432', '432,432,432,,,,,,432,432,432,432,432,432,432,,,432,,,,,,,432,,,432,432', '432,432,432,432,432,,432,432,432,,432,432,,432,432,432,,,,,,,,,,,,,', ',,,,,,432,,,432,,,432,432,,432,,,,,,432,,,,,,,,432,,,,,432,432,432,432', '432,432,,,,432,432,724,724,724,,724,,,432,724,724,,,,724,,724,724,724', '724,724,724,724,,,,,,724,724,724,724,724,724,724,,,,,,,,,,724,,,724', '724,724,724,724,724,724,,724,724,724,,724,724,,724,724,724,,,,,,,,,', ',,,,,,,,,,724,,,724,,,724,724,,724,,,,,,724,,,,,,,,724,,,,,724,724,724', '724,724,724,,,,724,724,421,421,421,,421,,,724,421,421,,,,421,,421,421', '421,421,421,421,421,,,,,,421,421,421,421,421,421,421,,,,,,,,,,421,,', '421,421,421,421,421,421,421,421,421,421,421,,421,421,,421,421,421,,', ',,,,,,,,,,,,,,,,,421,,,421,,,421,421,,421,,421,,,,421,,,,,,,,421,,,', ',421,421,421,421,421,421,,,,421,421,244,244,244,,244,,,421,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,418,418,418,,418,', ',244,418,418,,,,418,,418,418,418,418,418,418,418,,,,,,418,418,418,418', '418,418,418,,,,,,,,,,418,,,418,418,418,418,418,418,418,,418,418,418', ',418,418,,418,418,418,,,,,,,,,,,,,,,,,,,,418,,,418,,,418,418,,418,,', ',,,418,,,,,,,,418,,,,,418,418,418,418,418,418,,,,418,418,45,45,45,,45', ',,418,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,417,417,417,,417,,,45,417,417,,,,417,,417,417,417,417,417,417', '417,,,,,,417,417,417,417,417,417,417,,,,,,,,,,417,,,417,417,417,417', '417,417,417,417,417,417,417,,417,417,,417,417,417,,,,,,,,,,,,,,,,,,', ',417,,,417,,,417,417,,417,,417,,417,,417,,,,,,,,417,,,,,417,417,417', '417,417,417,,,,417,417,44,44,44,,44,,,417,44,44,,,,44,,44,44,44,44,44', '44,44,,,,,,44,44,44,44,44,44,44,,,,,,,,,,44,,,44,44,44,44,44,44,44,', '44,44,44,,44,44,,44,44,44,,,,,,,,,,,,,,,,,,,,44,,,44,,,44,44,,44,,,', ',,44,,,,,,,,44,,,,,44,44,44,44,44,44,,,,44,44,265,265,265,,265,,,44', '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,414,414,414,,414,', ',265,414,414,,,,414,,414,414,414,414,414,414,414,,,,,,414,414,414,414', '414,414,414,,,,,,,,,,414,,,414,414,414,414,414,414,414,414,414,414,414', ',414,414,,414,414,414,,,,,,,,,,,,,,,,,,,,414,,,414,,,414,414,,414,,414', ',414,,414,,,,,,,,414,,,,,414,414,414,414,414,414,,,,414,414,407,407', '407,,407,,,414,407,407,,,,407,,407,407,407,407,407,407,407,,,,,,407', '407,407,407,407,407,407,,,,,,,,,,407,,,407,407,407,407,407,407,407,', '407,407,407,,407,407,,407,407,407,,,,,,,,,,,,,,,,,,,,407,,,407,,,407', '407,,407,,,,,,407,,,,,,,,407,,,,,407,407,407,407,407,407,,,,407,407', '269,269,269,,269,,,407,269,269,,,,269,,269,269,269,269,269,269,269,', ',,,,269,269,269,269,269,269,269,,,,,,,,,,269,,,269,269,269,269,269,269', '269,,269,269,269,,269,269,,,,269,,,,,,,,,,,,,,,,,,,,269,,,269,,,269', '269,,269,,,,,,,,,,,,,,,,,,,269,269,269,269,269,269,,,,269,269,852,852', '852,,852,,,269,852,852,,,,852,,852,852,852,852,852,852,852,,,,,,852', '852,852,852,852,852,852,,,,,,,,,,852,,,852,852,852,852,852,852,852,', '852,852,852,,852,852,,852,852,852,,,,,,,,,,,,,,,,,,,,852,,,852,,,852', '852,,852,,852,,,,852,,,,,,,,852,,,,,852,852,852,852,852,852,,,,852,852', '405,405,405,,405,,,852,405,405,,,,405,,405,405,405,405,405,405,405,', ',,,,405,405,405,405,405,405,405,,,,,,,,,,405,,,405,405,405,405,405,405', '405,405,405,405,405,,405,405,,405,405,405,,,,,,,,,,,,,,,,,,,,405,,,405', ',,405,405,,405,,405,,,,405,,,,,,,,405,,,,,405,405,405,405,405,405,,', ',405,405,273,273,273,,273,,,405,273,273,,,,273,,273,273,273,273,273', '273,273,,,,,,273,273,273,273,273,273,273,,,,,,,,,,273,,,273,273,273', '273,273,273,273,,273,273,273,,273,273,,273,273,273,,,,,,,,,,,,,,,,,', ',,273,,,273,273,,273,273,,273,,,,,,273,,,,,,,,273,,,,,273,273,273,273', '273,273,,,,273,273,403,403,403,,403,,,273,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,403,403,,,,403,403,402,402,402,,402,,,403,402,402,,,,402,,402,402', '402,402,402,402,402,,,,,,402,402,402,402,402,402,402,,,,,,,,,,402,,', '402,402,402,402,402,402,402,,402,402,402,,402,402,,402,402,402,,,,,', ',,,,,,,,,,,,,,402,,,402,,,402,402,,402,,,,,,402,,,,,,,,402,,,,,402,402', '402,402,402,402,,,,402,402,841,841,841,,841,,,402,841,841,,,,841,,841', '841,841,841,841,841,841,,,,,,841,841,841,841,841,841,841,,,,,,,,,,841', ',,841,841,841,841,841,841,841,,841,841,841,,841,841,,,,841,,,,,,,,,', ',,,,,,,,,,841,,,841,,,841,841,,841,,,,,,,,,,,,,,,,,,,841,841,841,841', '841,841,,,,841,841,395,395,395,,395,,,841,395,395,,,,395,,395,395,395', '395,395,395,395,,,,,,395,395,395,395,395,395,395,,,,,,,,,,395,,,395', '395,395,395,395,395,395,395,395,395,395,,395,395,,395,395,395,,,,,,', ',,,,,,,,,,,,,395,,,395,,,395,395,,395,,395,,,,395,,,,,,,,395,,,,,395', '395,395,395,395,395,,,,395,395,279,279,279,,279,,,395,279,279,,,,279', ',279,279,279,279,279,279,279,,,,,,279,279,279,279,279,279,279,,,279', ',,,,,,279,,,279,279,279,279,279,279,279,,279,279,279,,279,279,,279,279', '279,,,,,,,,,,,,,,,,,,,,279,,,279,,,279,279,,279,,,,,,279,,,,,,,,279', ',,,,279,279,279,279,279,279,,,,279,279,815,815,815,,815,,,279,815,815', ',,,815,,815,815,815,815,815,815,815,,,,,,815,815,815,815,815,815,815', ',,,,,,,,,815,,,815,815,815,815,815,815,815,,815,815,815,,815,815,,815', '815,815,,,,,,,,,,,,,,,,,,,,815,,,815,,,815,815,,815,,,,,,815,,,,,,,', '815,,,,,815,815,815,815,815,815,,,,815,815,39,39,39,,39,,,815,39,39', ',,,39,,39,39,39,39,39,39,39,,,,,,39,39,39,39,39,39,39,,,,,,,,,,39,,', '39,39,39,39,39,39,39,,39,39,39,,39,39,,39,39,39,,,,,,,,,,,,,,,,,,,,39', ',,39,,,39,39,,39,,,,,,39,,,,,,,,39,,,,,39,39,39,39,39,39,,,,39,39,606', '606,606,,606,,,39,606,606,,,,606,,606,606,606,606,606,606,606,,,,,,606', '606,606,606,606,606,606,,,,,,,,,,606,,,606,606,606,606,606,606,606,', '606,606,606,,606,606,,606,606,606,,,,,,,,,,,,,,,,,,,,606,,,606,,,606', '606,,606,,,,,,606,,,,,,,,606,,,,,606,606,606,606,606,606,,,,606,606', '389,389,389,,389,,,606,389,389,,,,389,,389,389,389,389,389,389,389,', ',,,,389,389,389,389,389,389,389,,,,,,,,,,389,,,389,389,389,389,389,389', '389,,389,389,389,,389,389,,389,389,389,,,,,,,,,,,,,,,,,,,,389,,,389', ',,389,389,,389,,,,,,389,,,,,,,,389,,,,,389,389,389,389,389,389,,,,389', '389,285,285,285,,285,,,389,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,290,290,290,290,290,,,285,290,290,,,,290,,290,290', '290,290,290,290,290,,,,,,290,290,290,290,290,290,290,,,290,,,,,,290', '290,290,290,290,290,290,290,290,290,290,,290,290,290,,290,290,,290,290', '290,,,,,,,,,,,,,,,,,,,,290,,,290,,,290,290,,290,,290,,,,290,,,,,,,,290', ',,,,290,290,290,290,290,290,,,,290,290,592,592,592,,592,290,,290,592', '592,,,,592,,592,592,592,592,592,592,592,,,,,,592,592,592,592,592,592', '592,,,592,,,,,,,592,,,592,592,592,592,592,592,592,,592,592,592,,592', '592,,592,592,592,,,,,,,,,,,,,,,,,,,,592,,,592,,,592,592,,592,,,,,,592', ',,,,,,,592,,,,,592,592,592,592,592,592,,,,592,592,293,293,293,,293,', ',592,293,293,,,,293,,293,293,293,293,293,293,293,,,,,,293,293,293,293', '293,293,293,,,,,,,,,,293,,,293,293,293,293,293,293,293,,293,293,293', ',293,293,,293,293,293,,,,,,,,,,,,,,,,,,,,293,,,293,,,293,293,,293,,', ',,,293,,,,,,,,293,,,,,293,293,293,293,293,293,,,,293,293,294,294,294', ',294,,,293,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,294,294,294,,,,294,294,295', '295,295,,295,,,294,295,295,,,,295,,295,295,295,295,295,295,295,,,,,', '295,295,295,295,295,295,295,,,,,,,,,,295,,,295,295,295,295,295,295,295', ',295,295,295,,295,295,,295,295,295,,,,,,,,,,,,,,,,,,,,295,,,295,,,295', '295,,295,,,,,,295,,,,,,,,295,,,,,295,295,295,295,295,295,,,,295,295', '296,296,296,,296,,,295,296,296,,,,296,,296,296,296,296,296,296,296,', ',,,,296,296,296,296,296,296,296,,,,,,,,,,296,,,296,296,296,296,296,296', '296,,296,296,296,,296,296,,296,296,296,,,,,,,,,,,,,,,,,,,,296,,,296', ',,296,296,,296,,,,,,296,,,,,,,,296,,,,,296,296,296,296,296,296,,,,296', '296,297,297,297,,297,,,296,297,297,,,,297,,297,297,297,297,297,297,297', ',,,,,297,297,297,297,297,297,297,,,,,,,,,,297,,,297,297,297,297,297', '297,297,,297,297,297,,297,297,,297,297,297,,,,,,,,,,,,,,,,,,,,297,,', '297,,,297,297,,297,,,,,,297,,,,,,,,297,,,,,297,297,297,297,297,297,', ',,297,297,298,298,298,,298,,,297,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,748,748,748,,748,,,298,748,748,,,,748,,748,748,748,748', '748,748,748,,,,,,748,748,748,748,748,748,748,,,,,,,,,,748,,,748,748', '748,748,748,748,748,748,748,748,748,,748,748,,748,748,748,,,,,,,,,,', ',,,,,,,,,748,,,748,,,748,748,,748,,748,,748,,748,,,,,,,,748,,,,,748', '748,748,748,748,748,,,,748,748,300,300,300,,300,,,748,300,300,,,,300', ',300,300,300,300,300,300,300,,,,,,300,300,300,300,300,300,300,,,,,,', ',,,300,,,300,300,300,300,300,300,300,,300,300,300,,300,300,,300,300', '300,,,,,,,,,,,,,,,,,,,,300,,,300,,,300,300,,300,,,,,,300,,,,,,,,300', ',,,,300,300,300,300,300,300,,,,300,300,301,301,301,,301,,,300,301,301', ',,,301,,301,301,301,301,301,301,301,,,,,,301,301,301,301,301,301,301', ',,,,,,,,,301,,,301,301,301,301,301,301,301,,301,301,301,,301,301,,301', '301,301,,,,,,,,,,,,,,,,,,,,301,,,301,,,301,301,,301,,,,,,301,,,,,,,', '301,,,,,301,301,301,301,301,301,,,,301,301,302,302,302,,302,,,301,302', '302,,,,302,,302,302,302,302,302,302,302,,,,,,302,302,302,302,302,302', '302,,,,,,,,,,302,,,302,302,302,302,302,302,302,,302,302,302,,302,302', ',302,302,302,,,,,,,,,,,,,,,,,,,,302,,,302,,,302,302,,302,,,,,,302,,', ',,,,,302,,,,,302,302,302,302,302,302,,,,302,302,303,303,303,,303,,,302', '303,303,,,,303,,303,303,303,303,303,303,303,,,,,,303,303,303,303,303', '303,303,,,,,,,,,,303,,,303,303,303,303,303,303,303,,303,303,303,,303', '303,,303,303,303,,,,,,,,,,,,,,,,,,,,303,,,303,,,303,303,,303,,,,,,303', ',,,,,,,303,,,,,303,303,303,303,303,303,,,,303,303,304,304,304,,304,', ',303,304,304,,,,304,,304,304,304,304,304,304,304,,,,,,304,304,304,304', '304,304,304,,,,,,,,,,304,,,304,304,304,304,304,304,304,,304,304,304', ',304,304,,304,304,304,,,,,,,,,,,,,,,,,,,,304,,,304,,,304,304,,304,,', ',,,304,,,,,,,,304,,,,,304,304,304,304,304,304,,,,304,304,305,305,305', ',305,,,304,305,305,,,,305,,305,305,305,305,305,305,305,,,,,,305,305', '305,305,305,305,305,,,,,,,,,,305,,,305,305,305,305,305,305,305,,305', '305,305,,305,305,,305,305,305,,,,,,,,,,,,,,,,,,,,305,,,305,,,305,305', ',305,,,,,,305,,,,,,,,305,,,,,305,305,305,305,305,305,,,,305,305,306', '306,306,,306,,,305,306,306,,,,306,,306,306,306,306,306,306,306,,,,,', '306,306,306,306,306,306,306,,,,,,,,,,306,,,306,306,306,306,306,306,306', ',306,306,306,,306,306,,306,306,306,,,,,,,,,,,,,,,,,,,,306,,,306,,,306', '306,,306,,,,,,306,,,,,,,,306,,,,,306,306,306,306,306,306,,,,306,306', '307,307,307,,307,,,306,307,307,,,,307,,307,307,307,307,307,307,307,', ',,,,307,307,307,307,307,307,307,,,,,,,,,,307,,,307,307,307,307,307,307', '307,,307,307,307,,307,307,,307,307,307,,,,,,,,,,,,,,,,,,,,307,,,307', ',,307,307,,307,,,,,,307,,,,,,,,307,,,,,307,307,307,307,307,307,,,,307', '307,308,308,308,,308,,,307,308,308,,,,308,,308,308,308,308,308,308,308', ',,,,,308,308,308,308,308,308,308,,,,,,,,,,308,,,308,308,308,308,308', '308,308,,308,308,308,,308,308,,308,308,308,,,,,,,,,,,,,,,,,,,,308,,', '308,,,308,308,,308,,,,,,308,,,,,,,,308,,,,,308,308,308,308,308,308,', ',,308,308,309,309,309,,309,,,308,309,309,,,,309,,309,309,309,309,309', '309,309,,,,,,309,309,309,309,309,309,309,,,,,,,,,,309,,,309,309,309', '309,309,309,309,,309,309,309,,309,309,,309,309,309,,,,,,,,,,,,,,,,,', ',,309,,,309,,,309,309,,309,,,,,,309,,,,,,,,309,,,,,309,309,309,309,309', '309,,,,309,309,310,310,310,,310,,,309,310,310,,,,310,,310,310,310,310', '310,310,310,,,,,,310,310,310,310,310,310,310,,,,,,,,,,310,,,310,310', '310,310,310,310,310,,310,310,310,,310,310,,310,310,310,,,,,,,,,,,,,', ',,,,,,310,,,310,,,310,310,,310,,,,,,310,,,,,,,,310,,,,,310,310,310,310', '310,310,,,,310,310,311,311,311,,311,,,310,311,311,,,,311,,311,311,311', '311,311,311,311,,,,,,311,311,311,311,311,311,311,,,,,,,,,,311,,,311', '311,311,311,311,311,311,,311,311,311,,311,311,,311,311,311,,,,,,,,,', ',,,,,,,,,,311,,,311,,,311,311,,311,,,,,,311,,,,,,,,311,,,,,311,311,311', '311,311,311,,,,311,311,312,312,312,,312,,,311,312,312,,,,312,,312,312', '312,312,312,312,312,,,,,,312,312,312,312,312,312,312,,,,,,,,,,312,,', '312,312,312,312,312,312,312,,312,312,312,,312,312,,312,312,312,,,,,', ',,,,,,,,,,,,,,312,,,312,,,312,312,,312,,,,,,312,,,,,,,,312,,,,,312,312', '312,312,312,312,,,,312,312,313,313,313,,313,,,312,313,313,,,,313,,313', '313,313,313,313,313,313,,,,,,313,313,313,313,313,313,313,,,,,,,,,,313', ',,313,313,313,313,313,313,313,,313,313,313,,313,313,,313,313,313,,,', ',,,,,,,,,,,,,,,,313,,,313,,,313,313,,313,,,,,,313,,,,,,,,313,,,,,313', '313,313,313,313,313,,,,313,313,314,314,314,,314,,,313,314,314,,,,314', ',314,314,314,314,314,314,314,,,,,,314,314,314,314,314,314,314,,,,,,', ',,,314,,,314,314,314,314,314,314,314,,314,314,314,,314,314,,314,314', '314,,,,,,,,,,,,,,,,,,,,314,,,314,,,314,314,,314,,,,,,314,,,,,,,,314', ',,,,314,314,314,314,314,314,,,,314,314,315,315,315,,315,,,314,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,316,316,316,,316,,,315,316', '316,,,,316,,316,316,316,316,316,316,316,,,,,,316,316,316,316,316,316', '316,,,,,,,,,,316,,,316,316,316,316,316,316,316,,316,316,316,,316,316', ',316,316,316,,,,,,,,,,,,,,,,,,,,316,,,316,,,316,316,,316,,,,,,316,,', ',,,,,316,,,,,316,316,316,316,316,316,,,,316,316,317,317,317,,317,,,316', '317,317,,,,317,,317,317,317,317,317,317,317,,,,,,317,317,317,317,317', '317,317,,,,,,,,,,317,,,317,317,317,317,317,317,317,,317,317,317,,317', '317,,317,317,317,,,,,,,,,,,,,,,,,,,,317,,,317,,,317,317,,317,,,,,,317', ',,,,,,,317,,,,,317,317,317,317,317,317,,,,317,317,318,318,318,,318,', ',317,318,318,,,,318,,318,318,318,318,318,318,318,,,,,,318,318,318,318', '318,318,318,,,,,,,,,,318,,,318,318,318,318,318,318,318,,318,318,318', ',318,318,,318,318,318,,,,,,,,,,,,,,,,,,,,318,,,318,,,318,318,,318,,', ',,,318,,,,,,,,318,,,,,318,318,318,318,318,318,,,,318,318,319,319,319', ',319,,,318,319,319,,,,319,,319,319,319,319,319,319,319,,,,,,319,319', '319,319,319,319,319,,,,,,,,,,319,,,319,319,319,319,319,319,319,319,319', '319,319,,319,319,,319,319,319,,,,,,,,,,,,,,,,,,,,319,,,319,,,319,319', ',319,,319,,319,,319,,,,,,,,319,,,,,319,319,319,319,319,319,,,,319,319', '378,378,378,,378,,,319,378,378,,,,378,,378,378,378,378,378,378,378,', ',,,,378,378,378,378,378,378,378,,,378,,,,,,,378,,,378,378,378,378,378', '378,378,,378,378,378,,378,378,,378,378,378,,,,,,,,,,,,,,,,,,,,378,,', '378,,,378,378,,378,,,,,,378,,,,,,,,378,,,,,378,378,378,378,378,378,', ',,378,378,371,371,371,,371,,,378,371,371,,,,371,,371,371,371,371,371', '371,371,,,,,,371,371,371,371,371,371,371,,,371,,,,,,,371,,,371,371,371', '371,371,371,371,,371,371,371,,371,371,,371,371,371,,,,,,,,,,,,,,,,,', ',,371,,,371,,,371,371,,371,,,,,,371,,,,,,,,371,,,,,371,371,371,371,371', '371,,,,371,371,685,685,685,,685,,,371,685,685,,,,685,,685,685,685,685', '685,685,685,,,,,,685,685,685,685,685,685,685,,,,,,,,,,685,,,685,685', '685,685,685,685,685,,685,685,685,,685,685,,685,685,685,,,,,,,,,,,,,', ',,,,,,685,,,685,,,685,685,,685,,685,,,,685,,,,,,,,685,,,,,685,685,685', '685,685,685,,,,685,685,37,37,37,,37,,,685,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,330,330,330,,330,,,37', '330,330,,,,330,,330,330,330,330,330,330,330,,,,,,330,330,330,330,330', '330,330,,,330,,,,,,,330,,,330,330,330,330,330,330,330,,330,330,330,', '330,330,,330,330,330,,,,,,,,,,,,,,,,,,,,330,,,330,,,330,330,,330,,,', ',,330,,,,,,,,330,,,,,330,330,330,330,330,330,,,,330,330,331,331,331', ',331,,,330,331,331,,,,331,,331,331,331,331,331,331,331,,,,,,331,331', '331,331,331,331,331,,,331,,,,,,,331,,,331,331,331,331,331,331,331,,331', '331,331,,331,331,,331,331,331,,,,,,,,,,,,,,,,,,,,331,,,331,,,331,331', ',331,,,,,,331,,,,,,,,331,,,,,331,331,331,331,331,331,,,,331,331,332', '332,332,,332,,,331,332,332,,,,332,,332,332,332,332,332,332,332,,,,,', '332,332,332,332,332,332,332,,,332,,,,,,,332,,,332,332,332,332,332,332', '332,,332,332,332,,332,332,,332,332,332,,,,,,,,,,,,,,,,,,,,332,,,332', ',,332,332,,332,,,,,,332,,,,,,,,332,,,,,332,332,332,332,332,332,,,,332', '332,333,333,333,,333,,,332,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,334,334,334,334,334,,,333,334,334,,,,334,,334,334,334,334', '334,334,334,,,,,,334,334,334,334,334,334,334,,,334,,,,,,334,334,334', '334,334,334,334,334,334,334,334,,334,334,334,,334,334,,334,334,334,', ',,,,,,,,,,,,,,,,,,334,,,334,,,334,334,,334,,334,,,,334,,,,,,,,334,,', ',,334,334,334,334,334,334,,,,334,334,689,689,689,,689,,,334,689,689', ',,,689,,689,689,689,689,689,689,689,,,,,,689,689,689,689,689,689,689', ',,,,,,,,,689,,,689,689,689,689,689,689,689,,689,689,689,,689,689,,689', '689,689,,,,,,,,,,,,,,,,,,,,689,,,689,,,689,689,,689,,,,,,689,,,,,,,', '689,,,,,689,689,689,689,689,689,,,,689,689,924,924,924,,924,,,689,924', '924,,,,924,,924,924,924,924,924,924,924,,,,,,924,924,924,924,924,924', '924,,,,,,,,,,924,,,924,924,924,924,924,924,924,924,924,924,924,,924', '924,,924,924,924,,,,,,,,,,,,,,,,,,,,924,,,924,,,924,924,,924,,924,,924', ',924,,,,,,,,924,,,,,924,924,924,924,924,924,,,,924,924,601,601,601,', '601,,,924,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,719,719,719', ',719,,,601,719,719,,,,719,,719,719,719,719,719,719,719,,,,,,719,719', '719,719,719,719,719,,,,,,,,,,719,,,719,719,719,719,719,719,719,,719', '719,719,,719,719,,719,719,719,,,,,,,,,,,,,,,,,,,,719,,,719,,,719,719', ',719,,,,,,719,,,,,,,,719,,,,,719,719,719,719,719,719,,,,719,719,340', '340,340,,340,,,719,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', '812,812,812,,812,,,340,812,812,,,,812,,812,812,812,812,812,812,812,', ',,,,812,812,812,812,812,812,812,,,,,,,,,,812,,,812,812,812,812,812,812', '812,,812,812,812,,812,812,,812,812,812,,,,,,,,,,,,,,,,,,,,812,,,812', ',,812,812,,812,,,,,,812,,,,,,,,812,,,,,812,812,812,812,812,812,,,,812', '812,814,814,814,,814,,,812,814,814,,,,814,,814,814,814,814,814,814,814', ',,,,,814,814,814,814,814,814,814,,,,,,,,,,814,,,814,814,814,814,814', '814,814,,814,814,814,,814,814,,814,814,814,,,,,,,,,,,,,,,,,,,,814,,', '814,,,814,814,,814,,,,814,,814,,,,,,,,814,,,,,814,814,814,814,814,814', ',,,814,814,827,827,827,,827,,,814,827,827,,,,827,,827,827,827,827,827', '827,827,,,,,,827,827,827,827,827,827,827,,,,,,,,,,827,,,827,827,827', '827,827,827,827,,827,827,827,,827,827,,827,827,827,,,,,,,,,,,,,,,,,', ',,827,,,827,,,827,827,,827,,,,,,827,,,,,,,,827,,,,,827,827,827,827,827', '827,,,,827,827,826,826,826,,826,,,827,826,826,,,,826,,826,826,826,826', '826,826,826,,,,,,826,826,826,826,826,826,826,,,,,,,,,,826,,,826,826', '826,826,826,826,826,,826,826,826,,826,826,,826,826,826,,,,,,,,,,,,,', ',,,,,,826,,,826,,,826,826,,826,,,,,,826,,,,,,,,826,,,,,826,826,826,826', '826,826,,,,826,826,280,280,280,,280,,,826,280,280,,,,280,,280,280,280', '280,280,280,280,,,,,,280,280,280,280,280,280,280,,,280,,,,,393,,280', ',,280,280,280,280,280,280,280,,280,280,280,,280,280,,280,280,280,393', '393,393,393,393,393,393,393,393,393,393,,393,393,,,393,393,,280,,,280', ',,280,280,,280,,,393,,393,280,393,393,393,393,393,393,393,280,393,,', ',280,280,280,280,280,280,,,,280,280,,393,,393,,,,280,43,43,43,43,43', '43,43,43,,,43,43,43,43,43,,,43,43,43,43,43,43,43,,,,43,43,43,43,43,43', '43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,,43,,,,,,,,,43', '43,,43,43,43,43,,43,43,,,43,,,,,43,43,43,43,,,,,,,,,,,,,43,43,,43,43', '43,43,43,43,43,43,43,,43,,,43,43,481,481,481,481,481,481,481,481,,43', '481,481,481,481,481,,,481,481,481,481,481,481,481,,,,481,481,481,481', '481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481,481', '481,481,,,481,,,,,,,,,481,481,,481,481,481,481,,481,481,,,481,,,,,481', '481,481,481,,,,,,,,,,,,,481,481,,481,481,481,481,481,481,481,481,481', ',481,,,481,481,36,36,36,36,36,36,36,36,,481,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,36,,,36,,,,,36,36', '36,36,,,,,,,,,,,,,36,36,,36,36,36,36,36,36,36,36,36,,36,,,36,36,658', '658,658,658,658,658,658,658,,36,658,658,658,658,658,,,658,658,658,658', '658,658,658,,,,658,658,658,658,658,658,658,658,658,658,658,658,658,658', '658,658,658,658,658,658,658,658,658,,,658,,,,,,,,,658,658,,658,658,658', '658,,658,658,,,658,,,,,658,658,658,658,,,,,,,,,,,,,658,658,,658,658', '658,658,658,658,658,658,658,,658,,,658,658,33,33,33,33,33,33,33,33,', '658,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,33,33,,33,,,33,94,94,94,94,94,94,94,94,,,94,94,94,94', '94,,,94,94,94,94,94,94,94,,,,94,94,94,94,94,94,94,94,94,94,94,94,94', '94,94,94,94,94,94,94,94,94,94,94,94,94,,94,,,,,,,94,94,,94,94,94,94', ',94,94,,,94,,,,,94,94,94,94,,,,,,,,,,,,,94,94,,94,94,94,94,94,94,94', '94,94,,94,,,94,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,646,,646,646,646,646,646,646,646,646,646,,646,243,243,646', ',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,420', '420,243,,420,,,,,,,,,420,420,,420,420,420,420,,420,420,,,420,,,,,420', '420,420,420,,,,,,,,,,,,,420,420,,420,420,420,420,420,420,420,420,420', ',420,245,245,420,,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,680,680,245,,680,,,,,,,,,680,680,,680,680,680,680,,680', '680,,,680,,,,,680,680,680,680,,,,,,,,,,,,,680,680,,680,680,680,680,680', '680,680,680,680,,680,406,406,680,,406,,,,,,,,,406,406,,406,406,406,406', ',406,406,,,406,,,,,406,406,406,406,,,,,,,,,,,,,406,406,,406,406,406', '406,406,406,406,406,406,,406,404,404,406,,404,,,,,,,,,404,404,,404,404', '404,404,,404,404,,,404,,,,,404,404,404,404,,,,,,,,,,,,,404,404,,404', '404,404,404,404,404,404,404,404,,404,614,614,404,,614,,,,,,,,,614,614', ',614,614,614,614,,614,614,,,614,,,,,614,614,614,614,,,,,,,,,,,,,614', '614,,614,614,614,614,614,614,614,614,614,,614,472,472,614,,472,,,,,', ',,,472,472,,472,472,472,472,,472,472,,,472,,,,,472,472,472,472,,,,,', ',,,,,,,472,472,,472,472,472,472,472,472,472,472,472,,472,678,678,472', ',678,,,,,,,,,678,678,,678,678,678,678,,678,678,,,678,,,,,678,678,678', '678,,,,,,,,,,,,,678,678,,678,678,678,678,678,678,678,678,678,,678,396', '396,678,,396,,,,,,,,,396,396,,396,396,396,396,,396,396,,,396,,,,,396', '396,396,396,,,,,,,,,,,,,396,396,,396,396,396,396,396,396,396,396,396', ',396,394,394,396,,394,,,,,,,,,394,394,,394,394,394,394,,394,394,,,394', ',,,,394,394,394,394,,,,,,,,,,,,,394,394,,394,394,394,394,394,394,394', '394,394,,394,912,912,394,,912,,,,,,,,,912,912,,912,912,912,912,,912', '912,,,912,,,,,912,912,912,912,,,,,,,,,,,,,912,912,,912,912,912,912,912', '912,912,912,912,,912,346,346,912,,346,,,,,,,,,346,346,,346,346,346,346', ',346,346,,,346,,,,,346,346,346,346,,,,,,,,,,,,,346,346,,346,346,346', '346,346,346,346,346,346,,346,910,910,346,,910,,,,,,,,,910,910,,910,910', '910,910,,910,910,,,910,,,,,910,910,910,910,,,,,,,,,,,,,910,910,,910', '910,910,910,910,910,910,910,910,,910,473,473,910,,473,,,,,,,,,473,473', ',473,473,473,473,,473,473,,,473,,,,,473,473,473,473,,,,,,,,,,,,,473', '473,,473,473,473,473,473,473,473,473,473,,473,616,616,473,,616,,,,,', ',,,616,616,,616,616,616,616,,616,616,,,616,,,,,616,616,616,616,,,,,', ',,,,,,,616,616,,616,616,616,616,616,616,616,616,616,,616,,,616,639,639', '639,639,639,639,639,639,639,639,639,,639,639,,,639,639,,,,639,,,,,,', ',,,639,,639,,639,639,639,639,639,639,639,,639,,,,,,,,,,,,,,,,639,,639', '863,863,863,863,863,863,863,863,863,863,863,,863,863,,,863,863,,,,,', ',,,,,,,,863,,863,,863,863,863,863,863,863,863,,863,,,,,,,,,,,,,,,,863', ',863,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,,136,136,136', '136,136,136,136,136,136,136,136,,136,136,512,512,136,136,,,,,,,,,,,', ',,136,,136,,136,136,136,136,136,136,136,,136,838,838,838,838,838,838', '838,838,838,838,838,,838,838,,136,838,838,,,,,,,,,,,,,,838,,838,,838', '838,838,838,838,838,838,,838,485,485,485,485,485,485,485,485,485,485', '485,,485,485,,838,485,485,,,,,,,,,,,,,,485,,485,,485,485,485,485,485', '485,485,,485,668,668,668,668,668,668,668,668,668,668,668,,668,668,,485', '668,668,,,,,,,,,,,,,,668,,668,,668,668,668,668,668,668,668,,668,548', '548,548,548,548,548,548,548,548,548,548,,548,548,,668,548,548,,,,,,', ',,,,,,,548,,548,,548,548,548,548,548,548,548,,548,721,721,721,721,721', '721,721,721,721,721,721,,721,721,548,548,721,721,,,,,,,,,,,,,,721,,721', ',721,721,721,721,721,721,721,,721,477,477,477,477,477,477,477,477,477', '477,477,,477,477,,721,477,477,,,,,,,,,,,,,,477,,477,,477,477,477,477', '477,477,477,,477,796,796,796,796,796,796,796,796,796,796,796,,796,796', ',477,796,796,,,,,,,,,,,,,,796,,796,,796,796,796,796,796,796,796,,796', '760,760,760,760,760,760,760,760,760,760,760,,760,760,796,796,760,760', ',,,,,,,,,,,,,760,,760,,760,760,760,760,760,760,760,,760,767,767,767', '767,767,767,767,767,767,767,767,,767,767,,760,767,767,,,,,,,,,,,,,,767', ',767,,767,767,767,767,767,767,767,,767,782,782,782,782,782,782,782,782', '782,782,782,,782,782,,767,782,782,,,,,,,,,,,,,,782,,782,,782,782,782', '782,782,782,782,,782,766,766,766,766,766,766,766,766,766,766,766,,766', '766,,782,766,766,,,,,,,,,,,,,,766,,766,,766,766,766,766,766,766,766', ',766,442,442,442,442,442,442,442,442,442,442,442,,442,442,,766,442,442', ',,,,,,,,,,,,,442,,442,,442,442,442,442,442,442,442,,442,762,762,762', '762,762,762,762,762,762,762,762,,762,762,,442,762,762,,,,,,,,,,,,,,762', ',762,,762,762,762,762,762,762,762,,762,65,65,65,65,65,65,65,65,65,65', '65,,65,65,,762,65,65,,,,,,,,,,,,,,65,,65,,65,65,65,65,65,65,65,,65,', ',,,,,,,,,,,,,,65' ] racc_action_check = arr = Array.new(24417, 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, 28, 3913, 1269, nil, nil, 1133, 6235, 8523, nil, nil, nil, nil, 8889, 9255, 9499, nil, nil, 10353, 956, nil, 1180, 1111, nil, 1107, nil, nil, 1137, nil, nil, 1092, nil, 374, 22277, 893, nil, 22053, 19869, nil, 15477, nil, 130, 917, 21829, 13769, 13525, 1090, nil, 682, 1078, nil, nil, 1142, 625, nil, 1085, nil, 7318, 5135, 792, nil, 0, -43, 4403, 4525, 24291, 4769, 4036, nil, 5013, 130, nil, 1167, nil, nil, 1207, nil, nil, nil, nil, 5501, 5625, nil, 5747, 494, nil, 5991, -22, nil, nil, 7010, nil, nil, nil, 22388, nil, nil, nil, 6479, nil, 0, nil, 6723, nil, nil, nil, nil, nil, 0, 712, 187, 1063, 247, 1129, nil, 144, 1092, 1088, 1150, 1040, 1085, 239, 348, 1116, nil, 235, 3544, 191, nil, nil, 9011, 9133, 1040, 1033, 1070, nil, 23675, 9743, nil, nil, 9865, 833, 865, 1102, nil, 974, 1123, 485, nil, 10719, nil, 10841, nil, 453, 1022, 11207, 11329, nil, 231, 1018, nil, nil, 11695, nil, 1017, 1019, 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, 221, nil, nil, nil, 474, nil, nil, nil, 598, nil, nil, nil, nil, 707, nil, nil, nil, nil, nil, nil, 697, nil, nil, nil, 674, 645, 709, nil, 595, nil, nil, nil, nil, 22559, 13281, 22679, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 971, nil, nil, 851, nil, nil, 2806, nil, 13891, 764, nil, 998, 14257, 936, 2560, nil, 14623, 990, 988, nil, 938, 501, 15233, 21699, 2314, 765, 329, nil, 15843, nil, nil, nil, nil, 15965, nil, 382, 16209, 16331, 16453, 16575, 16697, 16819, 4647, 17063, 17185, 17307, 17429, 17551, 17673, 17795, 17917, 18039, 18161, 18283, 18405, 18527, 18649, 18771, 18893, 19015, 19137, 19259, 19381, nil, nil, 957, 953, 952, 2191, nil, nil, nil, nil, 19991, 20113, 20235, 20357, 20479, 267, 910, 561, 583, nil, 21089, 571, 421, 939, nil, 907, 23279, 7077, nil, 1699, nil, 893, 1627, 877, 875, nil, nil, 864, 1576, nil, nil, 939, nil, nil, 938, nil, nil, -4, nil, nil, nil, 19625, 450, nil, nil, nil, nil, nil, 19503, 536, 876, 505, nil, nil, nil, nil, nil, nil, nil, 15721, 858, nil, nil, 21699, 23159, 15111, 23099, 886, nil, nil, 248, nil, 14867, 14745, 22859, 14501, 22799, 14135, 317, nil, nil, 847, nil, nil, 14013, nil, nil, 13647, 13403, nil, 22619, 13159, 7550, 742, nil, 740, nil, 216, nil, 153, 457, 838, 12915, nil, nil, 832, nil, 376, nil, nil, nil, nil, 24203, nil, 829, nil, 386, 298, nil, 12427, nil, nil, nil, nil, 12305, 6248, nil, nil, nil, 11939, 655, nil, nil, 778, 851, 852, nil, 260, 10963, 10597, 340, nil, 22979, 23399, 929, 922, nil, 23939, nil, nil, nil, 21941, nil, nil, 830, 23763, 10109, 9987, 9621, 715, 9377, nil, nil, 805, nil, 897, nil, 0, nil, 818, 1111, nil, 838, 3667, 840, 1822, 1945, 2068, 831, 2191, 2314, 808, 23630, 3298, 592, 1423, 2929, 970, 1546, 2683, 2560, 3052, 3175, 2437, 3544, 1699, 800, 2806, 3421, 735, 762, 818, 712, 344, nil, 708, 744, 387, nil, nil, nil, nil, nil, 818, 961, nil, 797, 686, 23851, nil, 6601, nil, 6967, nil, nil, nil, 7079, nil, nil, 7552, 694, nil, 1258, 671, nil, 1135, nil, 614, 8401, 778, nil, nil, nil, 163, nil, 426, 11817, nil, nil, nil, 1207, 1068, nil, 12671, 12793, 696, 293, 251, 690, 668, 349, 663, 16087, 5501, 192, 406, 646, 130, 468, nil, 630, 20845, 479, 428, nil, nil, 15599, 379, nil, 687, 564, 361, 715, 589, 22919, 12549, 23459, nil, nil, 430, 262, nil, nil, nil, 761, nil, nil, 3052, nil, nil, nil, nil, 12061, nil, 10475, 277, 193, nil, nil, 23506, 298, 244, 140, 1381, 3790, 575, 22499, nil, 265, nil, nil, 5379, 4891, 532, 154, nil, 4281, 8767, 22165, 12183, 98, nil, nil, nil, 499, 838, 14, -13, 23807, nil, nil, 565, nil, 281, 5869, 7913, nil, 312, 23039, 335, 22739, 152, nil, nil, 468, 19747, 552, 473, nil, 20601, nil, nil, nil, nil, nil, nil, 504, 506, nil, nil, 545, 520, 524, nil, 547, nil, nil, nil, nil, nil, nil, nil, nil, 590, nil, nil, nil, nil, nil, 20967, 604, 23895, 186, 414, 13037, 8645, 394, 7791, 681, nil, 6357, 685, 863, 725, nil, 592, 946, nil, 1822, 5257, 451, 842, 1945, nil, 747, 4159, 738, nil, 16941, 6845, 789, nil, nil, 790, 757, 884, nil, nil, nil, nil, 24027, nil, 24247, 8279, nil, nil, 24159, 24071, nil, nil, 786, 827, nil, 592, nil, 910, nil, nil, 10231, 912, nil, 915, 24115, 906, 453, nil, 848, nil, 850, 1084, nil, 11451, 818, 333, nil, nil, 23983, nil, 1504, nil, 1105, nil, nil, 1228, nil, 1351, nil, 1330, 1453, nil, nil, nil, 21211, nil, 21333, 15355, nil, nil, 1007, 381, nil, nil, 916, nil, 1020, nil, 21577, 21455, 907, 910, nil, nil, 2068, nil, 951, nil, 7015, nil, 23719, nil, 162, 14989, nil, nil, nil, 2437, 180, nil, nil, 969, 1051, nil, 14379, 2683, nil, 943, 946, 953, 955, 1084, 1088, 2929, 973, 23568, nil, nil, 3175, nil, nil, 996, 1000, nil, 11573, nil, 11085, 1035, nil, 3298, 3421, nil, 619, 465, 1114, 313, nil, 3667, nil, nil, 8035, 308, nil, nil, 1012, nil, nil, nil, nil, 1170, nil, 7669, nil, 1173, nil, nil, 7440, 1059, 7196, nil, 1181, 1186, 23339, 8157, 23219, 866, 742, nil, nil, nil, nil, 1089, nil, nil, 1092, nil, 20723, 1094, nil, nil, 272, 307, 1150, 303, 823, nil, nil, nil, 6113, nil, 961, 1146, nil ] racc_action_default = [ -1, -523, -521, -523, -446, -521, -523, -523, -523, -272, -447, -521, -35, -326, -70, -523, -273, -521, -327, -218, -274, -311, -523, -429, -521, -275, -318, -523, -328, -430, -521, -329, -254, -523, -523, -2, -523, -523, -61, -523, -278, -294, -276, -523, -523, -65, -512, -396, -523, -523, -20, -423, -523, -34, -71, -523, -443, -523, -288, -444, -442, -254, -510, -523, -433, -40, -360, -521, -439, -523, -500, -5, -42, -438, -435, -6, -43, -440, -434, -389, -510, -523, -441, -436, -392, -269, -521, -47, -393, -390, -523, -270, -299, -437, -521, -391, -271, -302, -521, 941, -523, -409, -523, -342, -326, -327, -330, -343, -354, -523, -276, -512, -523, -523, -288, -444, -291, -360, -523, -523, -523, -523, -276, -523, -38, -444, -521, -523, -411, -494, -523, -523, -522, -522, -264, -241, -219, -523, -232, -45, -523, -523, -82, -523, -69, -75, -8, -523, -46, -523, -314, -523, -401, -523, -523, -523, -523, -407, -523, -523, -367, -370, -523, -293, -53, -523, -152, -157, -170, -141, -124, -171, -155, -123, -143, -488, -172, -154, -159, -173, -144, -131, -161, -110, -174, -167, -132, -153, -128, -129, -140, -119, -146, -126, -138, -130, -160, -120, -125, -145, -150, -121, -136, -149, -122, -137, -127, -444, -162, -117, -134, -111, -169, -115, -135, -112, -164, -108, -96, -113, -165, -489, -321, -163, -98, -148, -109, -99, -116, -147, -156, -100, -118, -142, -166, -523, -97, -168, -151, -139, -133, -114, -158, -523, -521, -523, -134, -135, -96, -163, -101, -156, -166, -97, -105, -151, -103, -14, -102, -104, -523, -211, -195, -521, -295, -523, -523, -9, -196, -68, -66, -521, -513, -523, -431, -432, -73, -523, -284, -523, -523, -521, -41, -523, -44, -523, -60, -4, -519, -518, -511, -517, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -523, -521, -59, -359, -523, -61, -523, -521, -39, -210, -351, -348, -523, -523, -523, -523, -523, -523, -511, -510, -280, -394, -523, -514, -514, -523, -220, -512, -523, -523, -483, -521, -472, -487, -469, -487, -487, -468, -474, -473, -521, -477, -296, -482, -480, -361, -523, -479, -471, -523, -484, -470, -364, -523, -523, -422, -424, -426, -425, -427, -523, -514, -523, -514, -491, -395, -413, -410, -416, -414, -23, -523, -523, -31, -264, -175, -523, -521, -523, -523, -431, -432, -284, -308, -523, -523, -523, -521, -523, -523, -284, -397, -412, -522, -261, -233, -523, -263, -236, -523, -523, -497, -523, -521, -523, -81, -398, -523, -276, -523, -94, -523, -91, -92, -523, -24, -33, -32, -400, -523, -403, -399, -319, -25, -177, -406, -523, -405, -521, -521, -255, -257, -256, -54, -50, -355, -523, -469, -508, -323, -509, -521, -501, -503, -504, -502, -523, -254, -358, -501, -506, -507, -502, -106, -523, -523, -381, -523, -30, -184, -13, -12, -11, -523, -67, -74, -523, -216, -523, -523, -523, -521, -523, -36, -37, -523, -333, -331, -332, -521, -290, -523, -7, -520, -521, -199, -192, -200, -185, -205, -191, -186, -206, -190, -523, -207, -187, -212, -202, -188, -213, -204, -203, -214, -201, -215, -197, -208, -189, -209, -198, -522, -523, -232, -512, -512, -282, -62, -523, -521, -15, -16, -17, -18, -19, -523, -521, -373, -523, -512, -512, -515, -516, -222, -516, -224, -286, -221, -254, -501, -502, -254, -523, -459, -523, -512, -464, -523, -465, -523, -523, -523, -481, -485, -362, -523, -428, -523, -516, -493, -287, -492, -521, -523, -268, -523, -523, -521, -501, -502, -523, -523, -505, -283, -523, -175, -501, -502, -523, -505, -283, -240, -523, -523, -522, -265, -262, -495, -523, -523, -496, -501, -502, -523, -78, -80, -523, -521, -523, -93, -91, -92, -523, -312, -448, -449, -315, -404, -402, -521, -408, -344, -368, -346, -523, -371, -523, -522, -523, -253, -259, -40, -523, -521, -512, -469, -521, -523, -523, -230, -55, -231, -356, -523, -523, -285, -57, -357, -523, -523, -523, -521, -521, -279, -10, -72, -523, -193, -194, -523, -183, -22, -334, -521, -289, -521, -523, -523, -226, -523, -523, -523, -523, -62, -349, -306, -523, -523, -523, -523, -225, -523, -265, -48, -352, -49, -353, -365, -487, -487, -486, -475, -523, -487, -487, -478, -487, -473, -476, -366, -335, -337, -336, -300, -303, -523, -420, -421, -415, -418, -419, -523, -266, -176, -285, -523, -523, -523, -285, -523, -522, -238, -523, -522, -76, -523, -95, -91, -92, -451, -521, -523, -523, -523, -521, -345, -523, -521, -522, -246, -523, -523, -523, -258, -51, -523, -512, -523, -453, -324, -56, -27, -179, -28, -180, -523, -58, -29, -181, -182, -107, -383, -382, -521, -384, -521, -340, -521, -292, -21, -523, -523, -338, -523, -217, -523, -512, -227, -521, -228, -521, -521, -307, -523, -375, -523, -305, -281, -512, -456, -523, -458, -523, -363, -466, -523, -462, -523, -467, -521, -521, -417, -267, -309, -523, -234, -523, -523, -237, -285, -523, -523, -316, -320, -523, -347, -523, -252, -523, -523, -522, -522, -243, -260, -521, -490, -523, -322, -469, -26, -178, -386, -523, -523, -341, -3, -388, -521, -523, -297, -298, -523, -523, -377, -523, -521, -223, -487, -487, -487, -487, -523, -523, -521, -522, -522, -313, -450, -521, -369, -372, -522, -522, -242, -523, -248, -523, -523, -452, -521, -521, -385, -523, -90, -523, -83, -387, -521, -229, -350, -523, -521, -457, -454, -523, -461, -463, -301, -304, -523, -235, -523, -239, -523, -247, -244, -523, -522, -523, -52, -523, -381, -523, -521, -523, -89, -521, -376, -379, -374, -378, -487, -310, -317, -522, -249, -523, -522, -325, -380, -501, -502, -523, -505, -88, -339, -455, -245, -523, -250, -84, -522, -251 ] clist = [ '136,133,222,138,660,136,133,543,138,343,118,451,370,385,533,644,355', '273,323,779,107,497,391,699,261,258,262,326,254,321,502,268,258,100', '703,267,132,363,146,139,617,132,832,605,148,136,133,287,138,288,551', '553,259,135,227,106,327,227,135,259,388,324,106,374,227,335,438,288', '144,429,711,434,712,136,475,440,345,264,380,641,321,132,397,775,284', '136,381,175,577,393,579,621,277,106,697,481,781,702,135,701,235,704', '457,692,127,263,694,547,371,433,147,807,378,808,441,227,592,136,136', '861,149,379,738,432,327,390,740,136,453,866,155,35,627,455,630,633,646', '836,136,537,789,257,367,442,290,446,742,447,283,136,133,745,138,793', '292,917,685,771,840,339,360,750,153,437,640,158,716,464,581,580,373', '337,739,843,390,696,448,638,605,2,270,658,454,1,,132,,372,450,,,,,,', ',322,106,,,,,135,106,,,,,,,,,,,,164,,,686,,811,,323,476,,682,,,,734', ',136,,,345,,,,,,,,,,286,27,,,,320,,,477,,,322,,,27,,485,,933,,699,484', '469,703,,,,,136,133,563,138,323,,355,,503,504,505,506,507,508,509,510', '511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527', '528,136,133,132,531,27,499,918,500,572,,555,106,588,536,,,546,482,288', '135,,548,596,752,856,,855,692,857,694,,,,858,,,529,,611,532,459,,465', ',625,,,,,,605,542,,135,,,,,,,,,,27,784,,,,605,,136,,,,,355,136,,,345', ',,,593,442,,136,,477,345,877,,,,322,136,602,,136,136,,,136,,493,345', ',,,,622,469,,,,538,539,540,541,,919,469,655,,,,,,,,639,635,741,927,', ',,469,,,,,,556,559,,,,322,755,,,,,,,573,,,,,,,575,258,,,662,665,666', ',668,560,,34,,416,,,109,121,569,,637,,121,141,34,469,758,121,259,,589', '605,764,227,677,679,,27,459,,465,,,,,27,,,,687,688,,,,141,27,589,,,', ',,853,,27,700,121,121,136,733,136,,121,,,,34,,121,,818,605,,655,,,136', ',,121,121,708,916,708,136,121,754,,,27,355,136,721,,,,,589,27,878,769', '121,,,,885,,,,136,,,,27,136,,561,,564,566,,,27,136,,34,345,,737,,759', '761,101,,753,765,757,,128,667,,,136,,128,,,671,425,,121,152,673,756', '425,121,744,157,469,760,762,121,,648,766,767,107,136,258,654,,768,,', ',,,,,,,,782,136,602,,783,,227,,,,,136,684,259,,796,901,,227,106,,390', '723,,,,,908,,,,344,,,,,,,,128,,,,382,,136,,792,713,708,760,762,,766', ',,136,,589,,837,121,,,834,,820,,,,,27,,,136,136,829,,691,27,34,693,121', ',27,,141,,34,838,,,,,849,,121,121,34,599,,355,121,,,,854,34,,,,828,', ',,,,136,,,786,,788,,,,27,,830,,,,,,,,121,,838,,136,863,34,,,865,,121', '121,121,121,34,136,136,,,,,,,,,27,,,,34,,32,819,,,,930,32,34,862,,136', '32,,32,,,32,,,,121,344,,,,,,121,,,136,905,136,,,,,,,,846,27,822,,121', '824,136,,,,,,,,121,32,32,136,27,,106,32,136,,136,32,,32,,136,121,,345', '842,,,,,32,32,,121,136,,32,,,,,850,,,,,136,,530,,121,,32,,,121,469,', ',859,860,,,797,799,,,,802,804,,806,,,729,,32,,,,,,,,875,,,121,,,34,', ',,,,,884,34,,,32,,34,27,889,32,747,27,,,27,32,897,,,,,,,,,,,344,,,,', ',909,,,,344,,,914,589,27,,,,,,34,,,,,344,,,,,27,,,,,,,,,,,,,,,,,,27', '27,629,629,,,,,34,,,,,,,647,,,,,121,32,,,,27,,813,,,816,,,,,,,,27,,32', ',32,121,,825,27,,32,890,891,893,894,,27,34,32,32,32,27,109,,32,,,,,32', ',,27,27,34,,,,,,27,121,121,,,,121,,,42,,,,,110,629,,,32,,,142,42,,32', '121,,,,32,32,32,32,32,647,934,,647,,,,,,,,,,,32,871,873,,142,,,,,32', ',,,,,647,,,,,,,32,,,,42,,,32,,,,,,898,900,,,,34,121,902,903,34,344,32', '34,,,,,,,,,32,,,,,,,,,121,,,,,,629,32,,,34,,,923,,121,,,32,,42,,,,772', '774,34,,,,935,,,937,,32,774,,774,,32,,,426,34,34,,940,6,426,,,,103,', ',,,,,,6,,,,,,,,34,,,32,,59,32,,,880,115,,,34,32,,,145,59,32,,34,,,,', ',,,34,,,,,34,,207,,,,,,,,6,34,34,,145,,,,,34,,,,,,,,32,124,,,,,839,', ',59,844,,,,,,,,121,,,647,,647,,,,42,,,,,,142,,42,32,,,,,,6,,,42,,,32', ',282,,,,42,,282,,,,,,,,,,,,59,,,32,,282,338,,,,,,,,,32,,,,,,42,,207', ',,,,,207,42,392,32,,,,,,,32,32,,,,32,42,,,,,,,,,42,,774,,,411,412,,', '32,,,,,,419,,,,,,,,,344,,435,774,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,6,,,,', ',,,6,,,,,,,32,32,,6,32,,,32,,,,59,6,,,,,145,,59,,,,,,32,,,,59,,,,,,32', ',,59,,32,,,,,,,6,,,,32,,,,,6,,,42,,,,,,,,42,,32,32,6,42,59,,,,,491,492', '6,,59,,,,,,,,,,,,32,,,59,,,,,,,,,59,32,,,,,,,42,32,,,,,,,,32,,,,,32', '282,282,282,282,,,,,,,32,32,,,,,,,32,,,42,715,,,,,,,,,,,,,,,,,,,282', ',,32,,,,282,,,,,,,,,,,,,,,582,,,,,42,,,,,110,,,,,,,,,6,,,42,,,603,,6', '607,608,,,6,,,,,,,624,,,,,,59,,,,,,,,59,,,338,,59,,636,642,,,,,,,,,', ',,,6,,,,,,,,,,,,,,,,,,,664,,,,,,,59,,,,,,,,,,6,,,,,,42,,,,42,,,42,,', ',,,,,,,,,,59,,,,,,,,,,,,,,,42,,,,,,6,,,,690,103,607,,,,42,,,,,,,6,,', ',,706,,,,59,,42,42,690,115,,,,,,720,,,,,282,59,,,,,,,,,,42,,728,,,,', '731,,881,,,,42,,,,,,,,42,,,,,,,,42,,,,,42,746,,,,,,,,,,42,42,,,,,,,42', ',,,,6,,770,,6,,,6,,,,,,,,,,,603,,,,,,,,59,,392,,59,,,59,,6,,,,,,,,,', ',,,,,,6,,,,,,,,,,59,810,,,,,,,6,6,,,607,,,,59,282,,,,,,,,,,,,,607,,', '6,59,59,,,,,,,879,,,,6,,,,,,,,6,,282,,,59,,,6,,,,,6,883,,,,59,851,,', ',,6,6,59,,,,,,6,,59,,,,,59,,,392,,,,,,,,59,59,,,869,870,,,59,,,,,,,', ',,,,,,,,,,,,,,690,,,,,,,,,,,,,,,,,,,,603,,607,,,,,,,,,,,,,,915,,,,,', ',,,,,690,,,,,922,,925,,,,,,,,,,,,,,,,,,607,,,,,,,,,,,,939' ] racc_goto_table = arr = Array.new(2305, 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 = [ '28,59,48,29,5,28,59,84,29,21,85,35,116,133,32,88,144,55,40,82,18,81', '23,145,28,52,28,17,13,60,81,28,52,129,146,13,57,114,11,31,46,57,38,150', '31,28,59,9,29,87,58,58,53,63,49,56,28,49,63,53,17,41,56,48,49,9,133', '87,44,47,83,23,83,28,3,47,29,78,77,37,60,57,55,6,31,28,59,76,58,28,58', '86,27,56,142,26,6,142,63,140,89,140,90,61,130,91,61,92,93,17,130,94', '95,96,17,49,97,28,28,98,99,57,100,101,28,57,102,28,60,103,104,2,105', '106,36,36,107,108,28,110,111,14,115,28,12,117,118,119,15,28,59,120,29', '121,15,122,123,124,125,128,80,68,131,132,67,134,135,21,136,137,138,15', '139,7,57,141,65,64,150,4,43,54,149,1,,57,,130,31,,,,,,,,2,56,,,,,63', '56,,,,,,,,,,,,34,,,84,,83,,40,17,,36,,,,46,,28,,,29,,,,,,,,,,34,19,', ',,34,,,28,,,2,,,19,,28,,82,,145,41,49,146,,,,,28,59,116,29,40,,144,', '28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28', '28,28,28,28,59,57,29,19,31,6,11,114,,55,56,21,41,,,9,44,87,63,,28,21', '36,142,,140,61,140,61,,,,140,,,57,,21,31,33,,33,,133,,,,,,150,11,,63', ',,,,,,,,,19,32,,,,150,,28,,,,,144,28,,,29,,,,28,28,,28,,28,29,88,,,', '2,28,59,,28,28,,,28,,2,29,,,,,87,49,,,,15,15,15,15,,140,49,60,,,,,,', ',28,59,3,5,,,,49,,,,,,33,33,,,,2,3,,,,,,,15,,,,,,,15,52,,,13,28,28,', '28,2,,20,,62,,,20,20,2,,63,,20,20,20,49,35,20,53,,33,150,35,49,55,55', ',19,33,,33,,,,,19,,,,55,55,,,,20,19,33,,,,,,81,,19,55,20,20,28,21,28', ',20,,,,20,,20,,3,150,,60,,,28,,,20,20,87,84,87,28,20,116,,,19,144,28', '28,,,,,33,19,81,23,20,,,,81,,,,28,,,,19,28,,143,,143,143,,,19,28,,20', '29,,87,,17,17,10,,55,17,48,,10,2,,,28,,10,,,2,20,,20,10,2,87,20,20,85', '10,49,28,28,20,,34,28,28,18,28,52,34,,13,,,,,,,,,,,28,28,59,,29,,49', ',,,,28,2,53,,28,3,,49,56,,57,15,,,,,3,,,,10,,,,,,,,10,,,,10,,28,,57', '2,87,28,28,,28,,,28,,33,,17,20,,,55,,87,,,,,19,,,28,28,59,,34,19,20', '34,20,,19,,20,,20,28,,,,,55,,20,20,20,62,,144,20,,,,55,20,,,,57,,,,', ',28,,,33,,33,,,,19,,63,,,,,,,,20,,28,,28,28,20,,,87,,20,20,20,20,20', '28,28,,,,,,,,,19,,,,20,,39,15,,,,21,39,20,57,,28,39,,39,,,39,,,,20,10', ',,,,,20,,,28,59,28,,,,,,,,15,19,2,,20,2,28,,,,,,,,20,39,39,28,19,,56', '39,28,,28,39,,39,,28,20,,29,2,,,,,39,39,,20,28,,39,,,,,2,,,,,28,,10', ',20,,39,,,20,49,,,2,2,,,143,143,,,,143,143,,143,,,62,,39,,,,,,,,2,,', '20,,,20,,,,,,,2,20,,,39,,20,19,2,39,62,19,,,19,39,2,,,,,,,,,,,10,,,', ',,2,,,,10,,,2,33,19,,,,,,20,,,,,10,,,,,19,,,,,,,,,,,,,,,,,,19,19,10', '10,,,,,20,,,,,,,10,,,,,20,39,,,,19,,62,,,62,,,,,,,,19,,39,,39,20,,62', '19,,39,143,143,143,143,,19,20,39,39,39,19,20,,39,,,,,39,,,19,19,20,', ',,,,19,20,20,,,,20,,,22,,,,,22,10,,,39,,,22,22,,39,20,,,,39,39,39,39', '39,10,143,,10,,,,,,,,,,,39,62,62,,22,,,,,39,,,,,,10,,,,,,,39,,,,22,', ',39,,,,,,62,62,,,,20,20,62,62,20,10,39,20,,,,,,,,,39,,,,,,,,,20,,,,', ',10,39,,,20,,,62,,20,,,39,,22,,,,10,10,20,,,,62,,,62,,39,10,,10,,39', ',,22,20,20,,62,16,22,,,,16,,,,,,,,16,,,,,,,,20,,,39,,45,39,,,20,45,', ',20,39,,,45,45,39,,20,,,,,,,,20,,,,,20,,45,,,,,,,,16,20,20,,45,,,,,20', ',,,,,,,39,25,,,,,10,,,45,10,,,,,,,,20,,,10,,10,,,,22,,,,,,22,,22,39', ',,,,,16,,,22,,,39,,25,,,,22,,25,,,,,,,,,,,,45,,,39,,25,25,,,,,,,,,39', ',,,,,22,,45,,,,,,45,22,24,39,,,,,,,39,39,,,,39,22,,,,,,,,,22,,10,,,24', '24,,,39,,,,,,24,,,,,,,,,10,,24,10,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,16,,', ',,,,,16,,,,,,,39,39,,16,39,,,39,,,,45,16,,,,,45,,45,,,,,,39,,,,45,,', ',,,39,,,45,,39,,,,,,,16,,,,39,,,,,16,,,22,,,,,,,,22,,39,39,16,22,45', ',,,,25,25,16,,45,,,,,,,,,,,,39,,,45,,,,,,,,,45,39,,,,,,,22,39,,,,,,', ',39,,,,,39,25,25,25,25,,,,,,,39,39,,,,,,,39,,,22,22,,,,,,,,,,,,,,,,', ',,25,,,39,,,,25,,,,,,,,,,,,,,,24,,,,,22,,,,,22,,,,,,,,,16,,,22,,,24', ',16,24,24,,,16,,,,,,,25,,,,,,45,,,,,,,,45,,,25,,45,,24,25,,,,,,,,,,', ',,16,,,,,,,,,,,,,,,,,,,25,,,,,,,45,,,,,,,,,,16,,,,,,22,,,,22,,,22,,', ',,,,,,,,,,45,,,,,,,,,,,,,,,22,,,,,,16,,,,24,16,24,,,,22,,,,,,,16,,,', ',24,,,,45,,22,22,24,45,,,,,,24,,,,,25,45,,,,,,,,,,22,,24,,,,,24,,22', ',,,22,,,,,,,,22,,,,,,,,22,,,,,22,24,,,,,,,,,,22,22,,,,,,,22,,,,,16,', '24,,16,,,16,,,,,,,,,,,24,,,,,,,,45,,24,,45,,,45,,16,,,,,,,,,,,,,,,,16', ',,,,,,,,,45,24,,,,,,,16,16,,,24,,,,45,25,,,,,,,,,,,,,24,,,16,45,45,', ',,,,,16,,,,16,,,,,,,,16,,25,,,45,,,16,,,,,16,45,,,,45,24,,,,,16,16,45', ',,,,,16,,45,,,,,45,,,24,,,,,,,,45,45,,,24,24,,,45,,,,,,,,,,,,,,,,,,', ',,,24,,,,,,,,,,,,,,,,,,,,24,,24,,,,,,,,,,,,,,24,,,,,,,,,,,24,,,,,24', ',24,,,,,,,,,,,,,,,,,,24,,,,,,,,,,,,24' ] racc_goto_check = arr = Array.new(2305, 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, 183, 129, -189, 179, -470, -577, -602, nil, -15, 606, 23, 82, -8, 105, 91, 1287, -42, 13, 243, 478, -77, 1135, -80, 1368, 1364, -172, 42, -13, -10, nil, 26, -305, 103, 183, -153, -312, -373, -710, 827, -49, -6, nil, 135, 54, 1313, -387, -80, -31, 21, nil, nil, -11, 16, -290, -29, 48, 23, -291, -12, -37, -453, 349, 40, -272, 14, nil, -285, -477, nil, nil, nil, nil, nil, nil, nil, 54, -20, 36, nil, 70, -262, -652, -503, -328, 3, -338, -13, -440, 67, -133, 65, -231, 16, -600, 15, -599, -285, -692, 99, -499, -27, -498, -691, 104, -308, -89, -321, -620, nil, -190, -542, nil, nil, -53, 52, -78, -15, -484, -14, -482, -532, -734, -389, -502, -613, nil, nil, 75, 28, 93, 138, 10, -87, 135, -415, -219, -217, 76, -451, -466, -387, -468, 244, -74, -539, -531, nil, nil, -39, -374 ] racc_goto_default = [ nil, nil, 474, nil, nil, nil, 780, nil, 62, nil, 71, 75, 336, nil, nil, nil, 119, 12, 22, 120, 260, nil, 122, nil, 134, 53, nil, nil, 65, 72, 76, nil, 87, 585, nil, nil, nil, nil, nil, 108, 38, nil, 45, 49, 54, 125, 428, nil, 250, 462, 231, 256, 89, 95, nil, nil, 19, 341, nil, 342, 649, 650, 413, 604, nil, nil, 162, nil, nil, 415, 85, 91, 96, 9, 16, 20, 25, nil, 163, 41, nil, nil, nil, nil, nil, nil, nil, 495, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 328, nil, nil, 466, 165, nil, nil, 645, nil, nil, nil, nil, nil, nil, nil, nil, nil, 79, 84, 88, nil, nil, nil, nil, 410, nil, nil, nil, nil, nil, nil, 351, 353, 354, nil, 698, 356, 359, 361, 364, nil, 129 ] racc_reduce_table = [ 0, 0, :racc_error, 0, 140, :_reduce_1, 2, 137, :_reduce_2, 4, 139, :_reduce_3, 2, 138, :_reduce_4, 1, 144, :_reduce_none, 1, 144, :_reduce_none, 3, 144, :_reduce_7, 2, 144, :_reduce_8, 0, 162, :_reduce_9, 4, 147, :_reduce_10, 3, 147, :_reduce_11, 3, 147, :_reduce_12, 3, 147, :_reduce_13, 2, 147, :_reduce_14, 3, 147, :_reduce_15, 3, 147, :_reduce_16, 3, 147, :_reduce_17, 3, 147, :_reduce_18, 3, 147, :_reduce_19, 0, 163, :_reduce_20, 5, 147, :_reduce_21, 4, 147, :_reduce_22, 3, 147, :_reduce_23, 3, 147, :_reduce_24, 3, 147, :_reduce_25, 6, 147, :_reduce_26, 5, 147, :_reduce_27, 5, 147, :_reduce_28, 5, 147, :_reduce_29, 3, 147, :_reduce_30, 3, 147, :_reduce_31, 3, 147, :_reduce_32, 3, 147, :_reduce_33, 1, 147, :_reduce_none, 1, 161, :_reduce_none, 3, 161, :_reduce_36, 3, 161, :_reduce_37, 2, 161, :_reduce_38, 2, 161, :_reduce_39, 1, 161, :_reduce_none, 1, 151, :_reduce_41, 1, 153, :_reduce_none, 1, 153, :_reduce_none, 2, 153, :_reduce_44, 2, 153, :_reduce_45, 2, 153, :_reduce_46, 1, 166, :_reduce_none, 4, 166, :_reduce_48, 4, 166, :_reduce_49, 0, 173, :_reduce_50, 0, 174, :_reduce_51, 6, 171, :_reduce_52, 2, 165, :_reduce_53, 3, 165, :_reduce_54, 4, 165, :_reduce_55, 5, 165, :_reduce_56, 4, 165, :_reduce_57, 5, 165, :_reduce_58, 2, 165, :_reduce_59, 2, 165, :_reduce_60, 1, 154, :_reduce_none, 3, 154, :_reduce_62, 1, 177, :_reduce_none, 3, 177, :_reduce_64, 1, 176, :_reduce_65, 2, 176, :_reduce_66, 3, 176, :_reduce_67, 2, 176, :_reduce_68, 2, 176, :_reduce_69, 1, 176, :_reduce_70, 1, 179, :_reduce_none, 3, 179, :_reduce_72, 2, 178, :_reduce_73, 3, 178, :_reduce_74, 1, 180, :_reduce_75, 4, 180, :_reduce_76, 3, 180, :_reduce_77, 3, 180, :_reduce_78, 3, 180, :_reduce_79, 3, 180, :_reduce_80, 2, 180, :_reduce_81, 1, 180, :_reduce_82, 1, 152, :_reduce_83, 4, 152, :_reduce_84, 3, 152, :_reduce_85, 3, 152, :_reduce_86, 3, 152, :_reduce_87, 3, 152, :_reduce_88, 2, 152, :_reduce_89, 1, 152, :_reduce_90, 1, 182, :_reduce_91, 1, 182, :_reduce_none, 2, 183, :_reduce_93, 1, 183, :_reduce_94, 3, 183, :_reduce_95, 1, 184, :_reduce_none, 1, 184, :_reduce_none, 1, 184, :_reduce_none, 1, 184, :_reduce_99, 1, 184, :_reduce_100, 1, 187, :_reduce_none, 1, 187, :_reduce_none, 1, 149, :_reduce_103, 1, 149, :_reduce_none, 1, 150, :_reduce_105, 0, 190, :_reduce_106, 4, 150, :_reduce_107, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 185, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 1, 186, :_reduce_none, 3, 164, :_reduce_175, 5, 164, :_reduce_176, 3, 164, :_reduce_177, 6, 164, :_reduce_178, 5, 164, :_reduce_179, 5, 164, :_reduce_180, 5, 164, :_reduce_181, 5, 164, :_reduce_182, 4, 164, :_reduce_183, 3, 164, :_reduce_184, 3, 164, :_reduce_185, 3, 164, :_reduce_186, 3, 164, :_reduce_187, 3, 164, :_reduce_188, 3, 164, :_reduce_189, 3, 164, :_reduce_190, 3, 164, :_reduce_191, 3, 164, :_reduce_192, 4, 164, :_reduce_193, 4, 164, :_reduce_194, 2, 164, :_reduce_195, 2, 164, :_reduce_196, 3, 164, :_reduce_197, 3, 164, :_reduce_198, 3, 164, :_reduce_199, 3, 164, :_reduce_200, 3, 164, :_reduce_201, 3, 164, :_reduce_202, 3, 164, :_reduce_203, 3, 164, :_reduce_204, 3, 164, :_reduce_205, 3, 164, :_reduce_206, 3, 164, :_reduce_207, 3, 164, :_reduce_208, 3, 164, :_reduce_209, 2, 164, :_reduce_210, 2, 164, :_reduce_211, 3, 164, :_reduce_212, 3, 164, :_reduce_213, 3, 164, :_reduce_214, 3, 164, :_reduce_215, 3, 164, :_reduce_216, 5, 164, :_reduce_217, 1, 164, :_reduce_none, 1, 160, :_reduce_219, 1, 157, :_reduce_none, 2, 157, :_reduce_221, 2, 157, :_reduce_222, 5, 157, :_reduce_223, 2, 157, :_reduce_224, 3, 157, :_reduce_225, 3, 196, :_reduce_226, 4, 196, :_reduce_227, 4, 196, :_reduce_228, 6, 196, :_reduce_229, 1, 197, :_reduce_none, 1, 197, :_reduce_none, 1, 167, :_reduce_232, 2, 167, :_reduce_233, 5, 167, :_reduce_234, 7, 167, :_reduce_235, 2, 167, :_reduce_236, 5, 167, :_reduce_237, 4, 167, :_reduce_238, 7, 167, :_reduce_239, 3, 167, :_reduce_240, 1, 167, :_reduce_none, 4, 200, :_reduce_242, 3, 200, :_reduce_243, 5, 200, :_reduce_244, 7, 200, :_reduce_245, 2, 200, :_reduce_246, 5, 200, :_reduce_247, 4, 200, :_reduce_248, 6, 200, :_reduce_249, 7, 200, :_reduce_250, 9, 200, :_reduce_251, 3, 200, :_reduce_252, 1, 200, :_reduce_none, 0, 202, :_reduce_254, 2, 170, :_reduce_255, 1, 201, :_reduce_none, 0, 203, :_reduce_257, 3, 201, :_reduce_258, 0, 204, :_reduce_259, 4, 201, :_reduce_260, 2, 199, :_reduce_261, 2, 198, :_reduce_262, 1, 198, :_reduce_none, 1, 193, :_reduce_264, 3, 193, :_reduce_265, 3, 159, :_reduce_266, 4, 159, :_reduce_267, 2, 159, :_reduce_268, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_277, 0, 227, :_reduce_278, 4, 192, :_reduce_279, 0, 228, :_reduce_280, 5, 192, :_reduce_281, 3, 192, :_reduce_282, 3, 192, :_reduce_283, 2, 192, :_reduce_284, 4, 192, :_reduce_285, 3, 192, :_reduce_286, 3, 192, :_reduce_287, 1, 192, :_reduce_288, 4, 192, :_reduce_289, 3, 192, :_reduce_290, 1, 192, :_reduce_291, 5, 192, :_reduce_292, 2, 192, :_reduce_293, 1, 192, :_reduce_none, 2, 192, :_reduce_295, 2, 192, :_reduce_296, 6, 192, :_reduce_297, 6, 192, :_reduce_298, 0, 229, :_reduce_299, 0, 230, :_reduce_300, 7, 192, :_reduce_301, 0, 231, :_reduce_302, 0, 232, :_reduce_303, 7, 192, :_reduce_304, 5, 192, :_reduce_305, 4, 192, :_reduce_306, 5, 192, :_reduce_307, 0, 233, :_reduce_308, 0, 234, :_reduce_309, 9, 192, :_reduce_310, 0, 235, :_reduce_311, 0, 236, :_reduce_312, 7, 192, :_reduce_313, 0, 237, :_reduce_314, 0, 238, :_reduce_315, 0, 239, :_reduce_316, 9, 192, :_reduce_317, 0, 240, :_reduce_318, 0, 241, :_reduce_319, 6, 192, :_reduce_320, 0, 242, :_reduce_321, 6, 192, :_reduce_322, 0, 243, :_reduce_323, 0, 244, :_reduce_324, 9, 192, :_reduce_325, 1, 192, :_reduce_326, 1, 192, :_reduce_327, 1, 192, :_reduce_328, 1, 192, :_reduce_329, 1, 156, :_reduce_330, 1, 217, :_reduce_none, 1, 217, :_reduce_none, 1, 217, :_reduce_none, 2, 217, :_reduce_none, 1, 219, :_reduce_none, 1, 219, :_reduce_none, 1, 219, :_reduce_none, 1, 218, :_reduce_none, 5, 218, :_reduce_339, 1, 142, :_reduce_none, 2, 142, :_reduce_341, 1, 221, :_reduce_none, 1, 221, :_reduce_343, 1, 172, :_reduce_none, 2, 172, :_reduce_345, 1, 172, :_reduce_346, 3, 172, :_reduce_347, 0, 246, :_reduce_348, 0, 247, :_reduce_349, 6, 245, :_reduce_350, 2, 168, :_reduce_351, 4, 168, :_reduce_352, 4, 168, :_reduce_353, 0, 249, :_reduce_354, 3, 215, :_reduce_355, 4, 215, :_reduce_356, 4, 215, :_reduce_357, 3, 215, :_reduce_358, 2, 215, :_reduce_359, 1, 215, :_reduce_360, 1, 216, :_reduce_361, 2, 216, :_reduce_362, 4, 251, :_reduce_363, 1, 251, :_reduce_364, 3, 250, :_reduce_365, 3, 250, :_reduce_366, 0, 253, :_reduce_367, 0, 254, :_reduce_368, 6, 214, :_reduce_369, 0, 255, :_reduce_370, 0, 256, :_reduce_371, 6, 214, :_reduce_372, 0, 259, :_reduce_373, 6, 220, :_reduce_374, 1, 257, :_reduce_none, 4, 257, :_reduce_376, 2, 257, :_reduce_377, 1, 258, :_reduce_none, 1, 258, :_reduce_none, 6, 141, :_reduce_380, 0, 141, :_reduce_381, 1, 260, :_reduce_382, 1, 260, :_reduce_none, 1, 260, :_reduce_none, 2, 261, :_reduce_385, 1, 261, :_reduce_none, 2, 143, :_reduce_387, 1, 143, :_reduce_none, 1, 206, :_reduce_389, 1, 206, :_reduce_390, 1, 206, :_reduce_none, 1, 207, :_reduce_392, 1, 263, :_reduce_none, 2, 263, :_reduce_394, 3, 264, :_reduce_395, 1, 264, :_reduce_396, 3, 208, :_reduce_397, 3, 209, :_reduce_398, 3, 210, :_reduce_399, 3, 210, :_reduce_400, 1, 267, :_reduce_401, 3, 267, :_reduce_402, 1, 268, :_reduce_none, 2, 268, :_reduce_404, 3, 211, :_reduce_405, 3, 211, :_reduce_406, 1, 270, :_reduce_407, 3, 270, :_reduce_408, 1, 265, :_reduce_409, 2, 265, :_reduce_410, 1, 266, :_reduce_411, 2, 266, :_reduce_412, 1, 269, :_reduce_413, 0, 272, :_reduce_414, 3, 269, :_reduce_415, 0, 273, :_reduce_416, 4, 269, :_reduce_417, 1, 271, :_reduce_418, 1, 271, :_reduce_419, 1, 271, :_reduce_420, 1, 271, :_reduce_none, 2, 188, :_reduce_422, 1, 188, :_reduce_423, 1, 274, :_reduce_none, 1, 274, :_reduce_none, 1, 274, :_reduce_none, 1, 274, :_reduce_none, 3, 189, :_reduce_428, 1, 262, :_reduce_none, 1, 262, :_reduce_none, 2, 262, :_reduce_431, 2, 262, :_reduce_432, 1, 181, :_reduce_none, 1, 181, :_reduce_none, 1, 181, :_reduce_none, 1, 181, :_reduce_none, 1, 181, :_reduce_none, 1, 181, :_reduce_438, 1, 181, :_reduce_439, 1, 181, :_reduce_440, 1, 181, :_reduce_441, 1, 181, :_reduce_442, 1, 181, :_reduce_443, 1, 212, :_reduce_444, 1, 155, :_reduce_445, 1, 158, :_reduce_446, 1, 158, :_reduce_447, 1, 222, :_reduce_448, 0, 275, :_reduce_449, 4, 222, :_reduce_450, 2, 222, :_reduce_451, 4, 224, :_reduce_452, 2, 224, :_reduce_453, 6, 252, :_reduce_454, 8, 252, :_reduce_455, 4, 252, :_reduce_456, 6, 252, :_reduce_457, 4, 252, :_reduce_458, 2, 252, :_reduce_459, 8, 252, :_reduce_460, 6, 252, :_reduce_461, 4, 252, :_reduce_462, 6, 252, :_reduce_463, 2, 252, :_reduce_464, 2, 252, :_reduce_465, 4, 252, :_reduce_466, 4, 252, :_reduce_467, 1, 252, :_reduce_468, 0, 252, :_reduce_469, 1, 281, :_reduce_470, 1, 281, :_reduce_471, 1, 281, :_reduce_472, 1, 281, :_reduce_473, 1, 276, :_reduce_474, 3, 276, :_reduce_475, 3, 282, :_reduce_476, 1, 277, :_reduce_477, 3, 277, :_reduce_478, 1, 283, :_reduce_none, 1, 283, :_reduce_none, 2, 278, :_reduce_481, 1, 278, :_reduce_482, 1, 284, :_reduce_none, 1, 284, :_reduce_none, 2, 280, :_reduce_485, 2, 279, :_reduce_486, 0, 279, :_reduce_487, 1, 225, :_reduce_none, 0, 285, :_reduce_489, 5, 225, :_reduce_490, 1, 213, :_reduce_491, 2, 213, :_reduce_492, 2, 213, :_reduce_493, 1, 195, :_reduce_none, 3, 195, :_reduce_495, 3, 286, :_reduce_496, 2, 286, :_reduce_497, 1, 175, :_reduce_none, 1, 175, :_reduce_none, 1, 175, :_reduce_none, 1, 169, :_reduce_none, 1, 169, :_reduce_none, 1, 169, :_reduce_none, 1, 169, :_reduce_none, 1, 248, :_reduce_none, 1, 248, :_reduce_none, 1, 248, :_reduce_none, 1, 226, :_reduce_none, 1, 226, :_reduce_none, 0, 145, :_reduce_none, 1, 145, :_reduce_none, 0, 191, :_reduce_none, 1, 191, :_reduce_none, 0, 194, :_reduce_none, 1, 194, :_reduce_none, 1, 194, :_reduce_none, 1, 223, :_reduce_517, 1, 223, :_reduce_none, 1, 148, :_reduce_none, 2, 148, :_reduce_520, 0, 146, :_reduce_521, 0, 205, :_reduce_522 ] racc_reduce_n = 523 racc_shift_n = 941 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, :tIDENTIFIER => 50, :tFID => 51, :tGVAR => 52, :tIVAR => 53, :tCONSTANT => 54, :tLABEL => 55, :tCVAR => 56, :tNTH_REF => 57, :tBACK_REF => 58, :tSTRING_CONTENT => 59, :tINTEGER => 60, :tFLOAT => 61, :tREGEXP_END => 62, :tUPLUS => 63, :tUMINUS => 64, :tUMINUS_NUM => 65, :tPOW => 66, :tCMP => 67, :tEQ => 68, :tEQQ => 69, :tNEQ => 70, :tGEQ => 71, :tLEQ => 72, :tANDOP => 73, :tOROP => 74, :tMATCH => 75, :tNMATCH => 76, :tDOT => 77, :tDOT2 => 78, :tDOT3 => 79, :tAREF => 80, :tASET => 81, :tLSHFT => 82, :tRSHFT => 83, :tCOLON2 => 84, :tCOLON3 => 85, :tOP_ASGN => 86, :tASSOC => 87, :tLPAREN => 88, :tLPAREN2 => 89, :tRPAREN => 90, :tLPAREN_ARG => 91, :tLBRACK => 92, :tRBRACK => 93, :tLBRACE => 94, :tLBRACE_ARG => 95, :tSTAR => 96, :tSTAR2 => 97, :tAMPER => 98, :tAMPER2 => 99, :tTILDE => 100, :tPERCENT => 101, :tDIVIDE => 102, :tPLUS => 103, :tMINUS => 104, :tLT => 105, :tGT => 106, :tPIPE => 107, :tBANG => 108, :tCARET => 109, :tLCURLY => 110, :tRCURLY => 111, :tBACK_REF2 => 112, :tSYMBEG => 113, :tSTRING_BEG => 114, :tXSTRING_BEG => 115, :tREGEXP_BEG => 116, :tWORDS_BEG => 117, :tAWORDS_BEG => 118, :tSTRING_DBEG => 119, :tSTRING_DVAR => 120, :tSTRING_END => 121, :tSTRING => 122, :tSYMBOL => 123, :tNL => 124, :tEH => 125, :tCOLON => 126, :tCOMMA => 127, :tSPACE => 128, :tSEMI => 129, :tLAST_TOKEN => 130, :tLAMBDA => 131, :tLAMBEG => 132, :tEQL => 133, :tLOWEST => 134, "[" => 135 } racc_nt_base = 136 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__", "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", "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", "tAWORDS_BEG", "tSTRING_DBEG", "tSTRING_DVAR", "tSTRING_END", "tSTRING", "tSYMBOL", "tNL", "tEH", "tCOLON", "tCOMMA", "tSPACE", "tSEMI", "tLAST_TOKEN", "tLAMBDA", "tLAMBEG", "tEQL", "tLOWEST", "\"[\"", "$start", "program", "compstmt", "bodystmt", "@1", "opt_rescue", "opt_else", "opt_ensure", "stmts", "opt_terms", "none", "stmt", "terms", "fitem", "undef_list", "expr_value", "lhs", "command_call", "mlhs", "var_lhs", "primary_value", "aref_args", "backref", "mrhs", "arg_value", "expr", "@2", "@3", "arg", "command", "block_command", "call_args", "block_call", "operation2", "command_args", "cmd_brace_block", "opt_block_var", "@4", "@5", "operation", "mlhs_basic", "mlhs_entry", "mlhs_head", "mlhs_item", "mlhs_node", "variable", "cname", "cpath", "fname", "op", "reswords", "fsym", "symbol", "dsym", "@6", "opt_nl", "primary", "args", "trailer", "assocs", "paren_args", "opt_paren_args", "opt_block_arg", "block_arg", "call_args2", "open_args", "@7", "@8", "@9", "none_block_pass", "literal", "strings", "xstring", "regexp", "words", "awords", "var_ref", "assoc_list", "brace_block", "method_call", "lambda", "then", "if_tail", "do", "case_body", "block_var", "superclass", "term", "f_arglist", "singleton", "dot_or_colon", "@10", "@11", "@12", "@13", "@14", "@15", "@16", "@17", "@18", "@19", "@20", "@21", "@22", "@23", "@24", "@25", "@26", "@27", "do_block", "@28", "@29", "operation3", "@30", "lambda_body", "f_larglist", "f_args", "@31", "@32", "@33", "@34", "when_args", "cases", "@35", "exc_list", "exc_var", "numeric", "string", "string1", "string_contents", "xstring_contents", "word_list", "word", "string_content", "qword_list", "string_dvar", "@36", "@37", "sym", "@38", "f_arg", "f_optarg", "f_rest_arg", "opt_f_block_arg", "f_block_arg", "f_norm_arg", "f_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 = val[1] result end def _reduce_3(val, _values, result) result = new_body val result end def _reduce_4(val, _values, result) result = new_compstmt val result end # reduce 5 omitted # reduce 6 omitted def _reduce_7(val, _values, result) result = self.block_append val[0], val[2] result end def _reduce_8(val, _values, result) result = val[1] result end def _reduce_9(val, _values, result) lexer.lex_state = :expr_fname result = self.lexer.lineno result end def _reduce_10(val, _values, result) result = s(:alias, val[1], val[3]).line(val[2]) result end def _reduce_11(val, _values, result) result = s(:valias, val[1].to_sym, val[2].to_sym) result end def _reduce_12(val, _values, result) result = s(:valias, val[1].to_sym, :"$#{val[2]}") result end def _reduce_13(val, _values, result) yyerror "can't make alias for the number variables" result end def _reduce_14(val, _values, result) result = val[1] result end def _reduce_15(val, _values, result) result = new_if val[2], val[0], nil result end def _reduce_16(val, _values, result) result = new_if val[2], nil, val[0] result end def _reduce_17(val, _values, result) result = new_while val[0], val[2], true result end def _reduce_18(val, _values, result) result = new_until val[0], val[2], true result end def _reduce_19(val, _values, result) result = s(:rescue, val[0], s(:resbody, s(:array), val[2])) result end def _reduce_20(val, _values, result) if (self.in_def || self.in_single > 0) then yyerror "BEGIN in method" end self.env.extend result end def _reduce_21(val, _values, result) result = new_iter s(:preexe), nil, val[3] # TODO: add test? result = nil # TODO: since it isn't supposed to go in the AST result end def _reduce_22(val, _values, result) if (self.in_def || self.in_single > 0) then yyerror "END in method; use at_exit" end result = new_iter s(:postexe), nil, val[2] result end def _reduce_23(val, _values, result) result = self.node_assign val[0], val[2] result end def _reduce_24(val, _values, result) result = new_masgn val[0], val[2], :wrap result end def _reduce_25(val, _values, result) result = new_op_asgn val result end def _reduce_26(val, _values, result) result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5]) result end def _reduce_27(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2], val[3]) result end def _reduce_28(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2], val[3]) result end def _reduce_29(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2], val[3]) result end def _reduce_30(val, _values, result) self.backref_assign_error val[0] result end def _reduce_31(val, _values, result) result = self.node_assign val[0], s(:svalue, val[2]) result end def _reduce_32(val, _values, result) result = new_masgn val[0], val[2], :wrap result end def _reduce_33(val, _values, result) result = new_masgn val[0], val[2] result end # reduce 34 omitted # reduce 35 omitted def _reduce_36(val, _values, result) result = logop(:and, val[0], val[2]) result end def _reduce_37(val, _values, result) result = logop(:or, val[0], val[2]) result end def _reduce_38(val, _values, result) result = s(:not, val[1]) result end def _reduce_39(val, _values, result) result = s(:not, val[1]) result end # reduce 40 omitted def _reduce_41(val, _values, result) result = value_expr(val[0]) result end # reduce 42 omitted # reduce 43 omitted def _reduce_44(val, _values, result) line = val[0].last result = s(:return, ret_args(val[1])).line(line) result end def _reduce_45(val, _values, result) line = val[0].last result = s(:break, ret_args(val[1])).line(line) result end def _reduce_46(val, _values, result) line = val[0].last result = s(:next, ret_args(val[1])).line(line) result end # reduce 47 omitted def _reduce_48(val, _values, result) result = new_call val[0], val[2], val[3] result end def _reduce_49(val, _values, result) result = new_call val[0], val[2], val[3] result end def _reduce_50(val, _values, result) self.env.extend(:dynamic) result = self.lexer.lineno result end def _reduce_51(val, _values, result) result = self.env.dynamic.keys result end def _reduce_52(val, _values, result) result = new_iter nil, val[2], val[4] self.env.unextend result end def _reduce_53(val, _values, result) result = new_call nil, val[0].to_sym, val[1] result end def _reduce_54(val, _values, result) result = new_call nil, val[0].to_sym, val[1] if val[2] then if result[0] == :block_pass then raise "both block arg and actual block given" end result, operation = val[2], result result.insert 1, operation end result end def _reduce_55(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_56(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_57(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_58(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] if val[4] then if result[0] == :block_pass then # REFACTOR raise "both block arg and actual block given" end val[2] << result result = val[2] end result end def _reduce_59(val, _values, result) result = new_super val[1] result end def _reduce_60(val, _values, result) result = new_yield val[1] result end # reduce 61 omitted def _reduce_62(val, _values, result) result = val[1] result end # reduce 63 omitted def _reduce_64(val, _values, result) result = s(:masgn, s(:array, val[1])) result end def _reduce_65(val, _values, result) result = s(:masgn, val[0]) result end def _reduce_66(val, _values, result) result = s(:masgn, val[0] << val[1].compact) result end def _reduce_67(val, _values, result) result = s(:masgn, val[0] << s(:splat, val[2])) result end def _reduce_68(val, _values, result) result = s(:masgn, val[0] << s(:splat)) result end def _reduce_69(val, _values, result) result = s(:masgn, s(:array, s(:splat, val[1]))) result end def _reduce_70(val, _values, result) result = s(:masgn, s(:array, s(:splat))) result end # reduce 71 omitted def _reduce_72(val, _values, result) result = val[1] result end def _reduce_73(val, _values, result) result = s(:array, val[0]) result end def _reduce_74(val, _values, result) result = val[0] << val[1].compact result end def _reduce_75(val, _values, result) result = self.assignable val[0] result end def _reduce_76(val, _values, result) result = self.aryset val[0], val[2] result end def _reduce_77(val, _values, result) result = s(:attrasgn, val[0], :"#{val[2]}=", s(:arglist)) result end def _reduce_78(val, _values, result) result = s(:attrasgn, val[0], :"#{val[2]}=", s(:arglist)) result end def _reduce_79(val, _values, result) result = s(:attrasgn, val[0], :"#{val[2]}=", s(:arglist)) result end def _reduce_80(val, _values, result) if (self.in_def || self.in_single > 0) then yyerror "dynamic constant assignment" end result = s(:const, s(:colon2, val[0], val[2].to_sym), nil) result end def _reduce_81(val, _values, result) if (self.in_def || self.in_single > 0) then yyerror "dynamic constant assignment" end result = s(:const, nil, s(:colon3, val[1].to_sym)) result end def _reduce_82(val, _values, result) self.backref_assign_error val[0] result end def _reduce_83(val, _values, result) result = self.assignable val[0] result end def _reduce_84(val, _values, result) result = self.aryset val[0], val[2] result end def _reduce_85(val, _values, result) result = s(:attrasgn, val[0], :"#{val[2]}=") result end def _reduce_86(val, _values, result) result = s(:attrasgn, val[0], :"#{val[2]}=") result end def _reduce_87(val, _values, result) result = s(:attrasgn, val[0], :"#{val[2]}=") result end def _reduce_88(val, _values, result) if (self.in_def || self.in_single > 0) then yyerror "dynamic constant assignment" end result = s(:const, s(:colon2, val[0], val[2].to_sym)) result end def _reduce_89(val, _values, result) if (self.in_def || self.in_single > 0) then yyerror "dynamic constant assignment" end result = s(:const, s(:colon3, val[1].to_sym)) result end def _reduce_90(val, _values, result) self.backref_assign_error val[0] result end def _reduce_91(val, _values, result) yyerror "class/module name must be CONSTANT" result end # reduce 92 omitted def _reduce_93(val, _values, result) result = s(:colon3, val[1].to_sym) result end def _reduce_94(val, _values, result) result = val[0].to_sym result end def _reduce_95(val, _values, result) result = s(:colon2, val[0], val[2].to_sym) result end # reduce 96 omitted # reduce 97 omitted # reduce 98 omitted def _reduce_99(val, _values, result) lexer.lex_state = :expr_end result = val[0] result end def _reduce_100(val, _values, result) lexer.lex_state = :expr_end result = val[0] result end # reduce 101 omitted # reduce 102 omitted def _reduce_103(val, _values, result) result = s(:lit, val[0].to_sym) result end # reduce 104 omitted def _reduce_105(val, _values, result) result = new_undef val[0] result end def _reduce_106(val, _values, result) lexer.lex_state = :expr_fname result end def _reduce_107(val, _values, result) result = new_undef val[0], val[3] result end # reduce 108 omitted # reduce 109 omitted # reduce 110 omitted # reduce 111 omitted # reduce 112 omitted # reduce 113 omitted # reduce 114 omitted # reduce 115 omitted # reduce 116 omitted # reduce 117 omitted # reduce 118 omitted # reduce 119 omitted # reduce 120 omitted # reduce 121 omitted # reduce 122 omitted # reduce 123 omitted # reduce 124 omitted # 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 def _reduce_175(val, _values, result) result = self.node_assign val[0], val[2] result end def _reduce_176(val, _values, result) result = self.node_assign val[0], s(:rescue, val[2], s(:resbody, s(:array), val[4])) # result.line = val[0].line result end def _reduce_177(val, _values, result) result = new_op_asgn val result end def _reduce_178(val, _values, result) result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5]) val[2][0] = :arglist result end def _reduce_179(val, _values, result) result = s(:op_asgn2, val[0], :"#{val[2]}=", val[3].to_sym, val[4]) result end def _reduce_180(val, _values, result) result = s(:op_asgn2, val[0], :"#{val[2]}=", val[3].to_sym, val[4]) result end def _reduce_181(val, _values, result) result = s(:op_asgn, val[0], val[4], val[2], val[3]) result end def _reduce_182(val, _values, result) yyerror "constant re-assignment" result end def _reduce_183(val, _values, result) yyerror "constant re-assignment" result end def _reduce_184(val, _values, result) self.backref_assign_error val[0] result end def _reduce_185(val, _values, result) v1, v2 = val[0], val[2] if v1.node_type == :lit and v2.node_type == :lit and Fixnum === v1.last and Fixnum === v2.last then result = s(:lit, (v1.last)..(v2.last)) else result = s(:dot2, v1, v2) end result end def _reduce_186(val, _values, result) v1, v2 = val[0], val[2] if v1.node_type == :lit and v2.node_type == :lit and Fixnum === v1.last and Fixnum === v2.last then result = s(:lit, (v1.last)...(v2.last)) else result = s(:dot3, v1, v2) end result end def _reduce_187(val, _values, result) result = new_call val[0], :+, s(:arglist, val[2]) result end def _reduce_188(val, _values, result) result = new_call val[0], :-, s(:arglist, val[2]) result end def _reduce_189(val, _values, result) result = new_call val[0], :*, s(:arglist, val[2]) result end def _reduce_190(val, _values, result) result = new_call val[0], :"/", s(:arglist, val[2]) result end def _reduce_191(val, _values, result) result = new_call val[0], :%, s(:arglist, val[2]) result end def _reduce_192(val, _values, result) result = new_call val[0], :**, s(:arglist, val[2]) result end def _reduce_193(val, _values, result) result = new_call(new_call(s(:lit, val[1]), :"**", s(:arglist, val[3])), :"-@", s(:arglist)) result end def _reduce_194(val, _values, result) result = new_call(new_call(s(:lit, val[1]), :"**", s(:arglist, val[3])), :"-@", s(:arglist)) result end def _reduce_195(val, _values, result) if val[1][0] == :lit then result = val[1] else result = new_call val[1], :"+@", s(:arglist) end result end def _reduce_196(val, _values, result) result = new_call val[1], :"-@", s(:arglist) result end def _reduce_197(val, _values, result) result = new_call val[0], :"|", s(:arglist, val[2]) result end def _reduce_198(val, _values, result) result = new_call val[0], :"^", s(:arglist, val[2]) result end def _reduce_199(val, _values, result) result = new_call val[0], :"&", s(:arglist, val[2]) result end def _reduce_200(val, _values, result) result = new_call val[0], :"<=>", s(:arglist, val[2]) result end def _reduce_201(val, _values, result) result = new_call val[0], :">", s(:arglist, val[2]) result end def _reduce_202(val, _values, result) result = new_call val[0], :">=", s(:arglist, val[2]) result end def _reduce_203(val, _values, result) result = new_call val[0], :"<", s(:arglist, val[2]) result end def _reduce_204(val, _values, result) result = new_call val[0], :"<=", s(:arglist, val[2]) result end def _reduce_205(val, _values, result) result = new_call val[0], :"==", s(:arglist, val[2]) result end def _reduce_206(val, _values, result) result = new_call val[0], :"===", s(:arglist, val[2]) result end def _reduce_207(val, _values, result) result = new_call val[0], :"!=", s(:arglist, val[2]) result end def _reduce_208(val, _values, result) result = self.get_match_node val[0], val[2] result end def _reduce_209(val, _values, result) result = s(:not, self.get_match_node(val[0], val[2])) result end def _reduce_210(val, _values, result) result = s(:call, val[1], :"!@", s(:arglist)) result end def _reduce_211(val, _values, result) val[2] = value_expr val[2] result = new_call val[1], :"~", s(:arglist) result end def _reduce_212(val, _values, result) val[0] = value_expr val[0] val[2] = value_expr val[2] result = new_call val[0], :"\<\<", s(:arglist, val[2]) result end def _reduce_213(val, _values, result) val[0] = value_expr val[0] val[2] = value_expr val[2] result = new_call val[0], :">>", s(:arglist, val[2]) result end def _reduce_214(val, _values, result) result = logop(:and, val[0], val[2]) result end def _reduce_215(val, _values, result) result = logop(:or, val[0], val[2]) result end def _reduce_216(val, _values, result) result = s(:defined, val[2]) result end def _reduce_217(val, _values, result) result = s(:if, val[0], val[2], val[4]) result end # reduce 218 omitted def _reduce_219(val, _values, result) result = value_expr(val[0]) result end # reduce 220 omitted def _reduce_221(val, _values, result) warning 'parenthesize argument(s) for future version' result = s(:array, val[0]) result end def _reduce_222(val, _values, result) result = val[0] result end def _reduce_223(val, _values, result) result = self.arg_concat val[0], val[3] result end def _reduce_224(val, _values, result) result = s(:array, s(:hash, *val[0].values)) result end def _reduce_225(val, _values, result) result = s(:array, s(:splat, val[1])) result end def _reduce_226(val, _values, result) result = val[1] result end def _reduce_227(val, _values, result) result = val[1] result end def _reduce_228(val, _values, result) warning "parenthesize argument(s) for future version" result = s(:array, val[1]) result end def _reduce_229(val, _values, result) warning "parenthesize argument(s) for future version" result = val[1].add val[3] result end # reduce 230 omitted # reduce 231 omitted def _reduce_232(val, _values, result) warning "parenthesize argument(s) for future version" result = s(:array, val[0]) result end def _reduce_233(val, _values, result) result = self.arg_blk_pass val[0], val[1] result end def _reduce_234(val, _values, result) result = self.arg_concat val[0], val[3] result = self.arg_blk_pass result, val[4] result end def _reduce_235(val, _values, result) result = self.arg_concat val[0], val[3] val[5][1..-1].each {|a| result << a } result = self.arg_blk_pass result, val[6] result end def _reduce_236(val, _values, result) result = s(:array, s(:hash, *val[0].values)) result = self.arg_blk_pass result, val[1] result end def _reduce_237(val, _values, result) result = self.arg_concat s(:array, s(:hash, *val[0].values)), val[3] result = self.arg_blk_pass result, val[4] result end def _reduce_238(val, _values, result) result = val[0] << s(:hash, *val[2].values) result = self.arg_blk_pass result, val[3] result end def _reduce_239(val, _values, result) val[0] << s(:hash, *val[2].values) result = self.arg_concat val[0], val[5] result = self.arg_blk_pass result, val[6] result end def _reduce_240(val, _values, result) result = self.arg_blk_pass s(:splat, val[1]), val[2] result end # reduce 241 omitted def _reduce_242(val, _values, result) args = self.list_prepend val[0], val[2] result = self.arg_blk_pass args, val[3] result end def _reduce_243(val, _values, result) result = self.arg_blk_pass val[0], val[2] result end def _reduce_244(val, _values, result) result = self.arg_concat s(:array, val[0]), val[3] result = self.arg_blk_pass result, val[4] result end def _reduce_245(val, _values, result) result = self.arg_concat s(:array, val[0], s(:hash, *val[2].values)), val[5] result = self.arg_blk_pass result, val[6] result end def _reduce_246(val, _values, result) result = s(:array, s(:hash, *val[0].values)) result = self.arg_blk_pass result, val[1] result end def _reduce_247(val, _values, result) result = s(:array, s(:hash, *val[0].values), val[3]) result = self.arg_blk_pass result, val[4] result end def _reduce_248(val, _values, result) result = s(:array, val[0], s(:hash, *val[2].values)) result = self.arg_blk_pass result, val[3] result end def _reduce_249(val, _values, result) result = s(:array, val[0]).add_all(val[2]).add(s(:hash, *val[4].values)) result = self.arg_blk_pass result, val[5] result end def _reduce_250(val, _values, result) result = self.arg_concat s(:array, val[0]).add(s(:hash, *val[2].values)), val[5] result = self.arg_blk_pass result, val[6] result end def _reduce_251(val, _values, result) result = self.arg_concat s(:array, val[0]).add_all(val[2]).add(s(:hash, *val[4].values)), val[7] result = self.arg_blk_pass result, val[8] result end def _reduce_252(val, _values, result) result = self.arg_blk_pass s(:splat, val[1]), val[2] result end # reduce 253 omitted def _reduce_254(val, _values, result) result = lexer.cmdarg.stack.dup lexer.cmdarg.push true result end def _reduce_255(val, _values, result) lexer.cmdarg.stack.replace val[0] result = val[1] result end # reduce 256 omitted def _reduce_257(val, _values, result) lexer.lex_state = :expr_endarg result end def _reduce_258(val, _values, result) warning "don't put space before argument parentheses" result = nil result end def _reduce_259(val, _values, result) lexer.lex_state = :expr_endarg result end def _reduce_260(val, _values, result) warning "don't put space before argument parentheses" result = val[1] result end def _reduce_261(val, _values, result) result = s(:block_pass, val[1]) result end def _reduce_262(val, _values, result) result = val[1] result end # reduce 263 omitted def _reduce_264(val, _values, result) result = s(:array, val[0]) result end def _reduce_265(val, _values, result) result = self.list_append val[0], val[2] result end def _reduce_266(val, _values, result) result = val[0] << val[2] result end def _reduce_267(val, _values, result) result = self.arg_concat val[0], val[3] result end def _reduce_268(val, _values, result) result = s(:splat, val[1]) result end # reduce 269 omitted # reduce 270 omitted # reduce 271 omitted # reduce 272 omitted # reduce 273 omitted # reduce 274 omitted # reduce 275 omitted # reduce 276 omitted def _reduce_277(val, _values, result) result = new_call nil, val[0].to_sym result end def _reduce_278(val, _values, result) result = self.lexer.lineno result end def _reduce_279(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_280(val, _values, result) lexer.lex_state = :expr_endarg result end def _reduce_281(val, _values, result) warning "(...) interpreted as grouped expression" result = val[1] result end def _reduce_282(val, _values, result) result = val[1] || s(:nil) result.paren = true result end def _reduce_283(val, _values, result) result = s(:colon2, val[0], val[2].to_sym) result end def _reduce_284(val, _values, result) result = s(:colon3, val[1].to_sym) result end def _reduce_285(val, _values, result) result = new_aref val result end def _reduce_286(val, _values, result) result = val[1] || s(:array) result end def _reduce_287(val, _values, result) result = s(:hash, *val[1].values) result end def _reduce_288(val, _values, result) result = s(:return) result end def _reduce_289(val, _values, result) result = new_yield val[2] result end def _reduce_290(val, _values, result) result = new_yield result end def _reduce_291(val, _values, result) result = new_yield result end def _reduce_292(val, _values, result) result = s(:defined, val[3]) result end def _reduce_293(val, _values, result) oper, iter = val[0], val[1] call = new_call(nil, oper.to_sym) iter.insert 1, call result = iter call.line = iter.line result end # reduce 294 omitted def _reduce_295(val, _values, result) call, iter = val[0], val[1] iter.insert 1, call result = iter result end def _reduce_296(val, _values, result) result = val[1] result end def _reduce_297(val, _values, result) result = new_if val[1], val[3], val[4] result end def _reduce_298(val, _values, result) result = new_if val[1], val[4], val[3] result end def _reduce_299(val, _values, result) lexer.cond.push true result end def _reduce_300(val, _values, result) lexer.cond.pop result end def _reduce_301(val, _values, result) result = new_while val[5], val[2], true result end def _reduce_302(val, _values, result) lexer.cond.push true result end def _reduce_303(val, _values, result) lexer.cond.pop result end def _reduce_304(val, _values, result) result = new_until val[5], val[2], true result end def _reduce_305(val, _values, result) result = new_case val[1], val[3] result end def _reduce_306(val, _values, result) result = new_case nil, val[2] result end def _reduce_307(val, _values, result) result = new_case nil, val[3] result end def _reduce_308(val, _values, result) lexer.cond.push true result end def _reduce_309(val, _values, result) lexer.cond.pop result end def _reduce_310(val, _values, result) result = new_for val[4], val[1], val[7] result end def _reduce_311(val, _values, result) result = self.lexer.lineno result end def _reduce_312(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_313(val, _values, result) result = new_class val self.env.unextend result end def _reduce_314(val, _values, result) result = self.lexer.lineno result end def _reduce_315(val, _values, result) result = self.in_def self.in_def = false result end def _reduce_316(val, _values, result) result = self.in_single self.in_single = 0 self.env.extend result end def _reduce_317(val, _values, result) result = new_sclass val self.env.unextend 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 yyerror "module definition in method body" if self.in_def or self.in_single > 0 self.env.extend result end def _reduce_320(val, _values, result) result = new_module val self.env.unextend result end def _reduce_321(val, _values, result) self.comments.push self.lexer.comments self.in_def = true self.env.extend result = lexer.lineno, lexer.src.beginning_of_line? result end def _reduce_322(val, _values, result) result = new_defn val self.env.unextend self.in_def = false result end def _reduce_323(val, _values, result) self.comments.push self.lexer.comments lexer.lex_state = :expr_fname result end def _reduce_324(val, _values, result) self.in_single += 1 self.env.extend lexer.lex_state = :expr_end # force for args result end def _reduce_325(val, _values, result) result = new_defs val self.env.unextend self.in_single -= 1 result end def _reduce_326(val, _values, result) result = s(:break) result end def _reduce_327(val, _values, result) result = s(:next) result end def _reduce_328(val, _values, result) result = s(:redo) result end def _reduce_329(val, _values, result) result = s(:retry) result end def _reduce_330(val, _values, result) result = value_expr(val[0]) result end # reduce 331 omitted # reduce 332 omitted # reduce 333 omitted # reduce 334 omitted # reduce 335 omitted # reduce 336 omitted # reduce 337 omitted # reduce 338 omitted def _reduce_339(val, _values, result) result = s(:if, val[1], val[3], val[4]) result end # reduce 340 omitted def _reduce_341(val, _values, result) result = val[1] result end # reduce 342 omitted def _reduce_343(val, _values, result) val[0].delete_at 1 if val[0][1].nil? # HACK result end # reduce 344 omitted def _reduce_345(val, _values, result) result = 0 self.lexer.command_start = true result end def _reduce_346(val, _values, result) result = 0 self.lexer.command_start = true result end def _reduce_347(val, _values, result) result = val[1] self.lexer.command_start = true result end def _reduce_348(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_349(val, _values, result) result = self.env.dynamic.keys result end def _reduce_350(val, _values, result) vars = val[2] body = val[4] result = new_iter nil, vars, body result.line = val[1] self.env.unextend result end def _reduce_351(val, _values, result) raise SyntaxError, "Both block arg and actual block given." if val[0] && val[0][0] == :blockpass result = val[1] result.insert 1, val[0] result end def _reduce_352(val, _values, result) result = new_call val[0], val[2], val[3] result end def _reduce_353(val, _values, result) result = new_call val[0], val[2], val[3] result end def _reduce_354(val, _values, result) result = self.lexer.lineno result end def _reduce_355(val, _values, result) result = new_call nil, val[0].to_sym, val[2] result end def _reduce_356(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_357(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end def _reduce_358(val, _values, result) result = new_call val[0], val[2].to_sym result end def _reduce_359(val, _values, result) result = new_super val[1] result end def _reduce_360(val, _values, result) result = s(:zsuper) result end def _reduce_361(val, _values, result) call = s(:call, nil, :lambda, s(:arglist)) result = s(:iter, call, nil, val[0]) result end def _reduce_362(val, _values, result) case val[0].size when 1 args = 0 when 2 args = s(:lasgn, val[0][1]) else vars = val[0][1..-1].map{|name| s(:lasgn, name)} args = s(:masgn, s(:array, *vars)) end call = s(:call, nil, :lambda, s(:arglist)) result = s(:iter, call, args, val[1]) result end def _reduce_363(val, _values, result) result = val[1] result end def _reduce_364(val, _values, result) result = val[0] result end def _reduce_365(val, _values, result) result = val[1] result end def _reduce_366(val, _values, result) result = val[1] result end def _reduce_367(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_368(val, _values, result) result = self.env.dynamic.keys result end def _reduce_369(val, _values, result) # REFACTOR args = val[2] body = val[4] result = new_iter nil, args, body self.env.unextend result.line = val[1] result end def _reduce_370(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end def _reduce_371(val, _values, result) result = self.env.dynamic.keys result end def _reduce_372(val, _values, result) args = val[2] body = val[4] result = new_iter nil, args, body self.env.unextend result.line = val[1] result end def _reduce_373(val, _values, result) result = self.lexer.lineno result end def _reduce_374(val, _values, result) result = s(:when, val[2], val[4]) result.line = val[1] result << val[5] if val[5] result end # reduce 375 omitted def _reduce_376(val, _values, result) result = self.list_append val[0], s(:when, val[3], nil) result end def _reduce_377(val, _values, result) result = s(:array, s(:when, val[1], nil)) result end # reduce 378 omitted # reduce 379 omitted def _reduce_380(val, _values, result) klasses, var, body, rest = val[1], val[2], val[4], val[5] klasses ||= s(:array) klasses << node_assign(var, s(:gvar, :"$!")) if var result = s(:resbody, klasses, body) result << rest if rest # UGH, rewritten above result end def _reduce_381(val, _values, result) result = nil result end def _reduce_382(val, _values, result) result = s(:array, val[0]) result end # reduce 383 omitted # reduce 384 omitted def _reduce_385(val, _values, result) result = val[1] result end # reduce 386 omitted def _reduce_387(val, _values, result) if (val[1] != nil) then result = val[1] else result = s(:nil) end result end # reduce 388 omitted def _reduce_389(val, _values, result) result = s(:lit, val[0]) result end def _reduce_390(val, _values, result) result = s(:lit, val[0]) result end # reduce 391 omitted def _reduce_392(val, _values, result) val[0] = s(:dstr, val[0].value) if val[0][0] == :evstr result = val[0] result end # reduce 393 omitted def _reduce_394(val, _values, result) result = self.literal_concat val[0], val[1] result end def _reduce_395(val, _values, result) result = val[1] result end def _reduce_396(val, _values, result) result = s(:str, val[0]) result end def _reduce_397(val, _values, result) result = new_xstring val[1] result end def _reduce_398(val, _values, result) result = new_regexp val result end def _reduce_399(val, _values, result) result = s(:array) result end def _reduce_400(val, _values, result) result = val[1] result end def _reduce_401(val, _values, result) result = s(:array) result end def _reduce_402(val, _values, result) word = val[1][0] == :evstr ? s(:dstr, "", val[1]) : val[1] result = val[0] << word result end # reduce 403 omitted def _reduce_404(val, _values, result) result = self.literal_concat val[0], val[1] result end def _reduce_405(val, _values, result) result = s(:array) result end def _reduce_406(val, _values, result) result = val[1] result end def _reduce_407(val, _values, result) result = s(:array) result end def _reduce_408(val, _values, result) result = val[0] << s(:str, val[1]) result end def _reduce_409(val, _values, result) result = s(:str, "") result end def _reduce_410(val, _values, result) result = literal_concat(val[0], val[1]) result end def _reduce_411(val, _values, result) result = nil result end def _reduce_412(val, _values, result) result = literal_concat(val[0], val[1]) result end def _reduce_413(val, _values, result) result = s(:str, val[0]) result end def _reduce_414(val, _values, result) result = lexer.lex_strterm lexer.lex_strterm = nil lexer.lex_state = :expr_beg result end def _reduce_415(val, _values, result) lexer.lex_strterm = val[1] result = s(:evstr, val[2]) result end def _reduce_416(val, _values, result) result = lexer.lex_strterm lexer.lex_strterm = nil lexer.lex_state = :expr_beg lexer.cond.push false lexer.cmdarg.push false result end def _reduce_417(val, _values, result) lexer.lex_strterm = val[1] lexer.cond.lexpop lexer.cmdarg.lexpop case val[2] when Sexp then case val[2][0] when :str, :dstr, :evstr then result = val[2] else result = s(:evstr, val[2]) end when nil then result = s(:evstr) else raise "unknown rescue body: #{val[2].inspect}" end result end def _reduce_418(val, _values, result) result = s(:gvar, val[0].to_sym) result end def _reduce_419(val, _values, result) result = s(:ivar, val[0].to_sym) result end def _reduce_420(val, _values, result) result = s(:cvar, val[0].to_sym) result end # reduce 421 omitted def _reduce_422(val, _values, result) lexer.lex_state = :expr_end result = val[1].to_sym result end def _reduce_423(val, _values, result) result = val[0].to_sym result end # reduce 424 omitted # reduce 425 omitted # reduce 426 omitted # reduce 427 omitted def _reduce_428(val, _values, result) lexer.lex_state = :expr_end result = val[1] yyerror "empty symbol literal" if result.nil? or result.empty? case result[0] when :dstr then result[0] = :dsym when :str then result = s(:lit, result.last.intern) else result = s(:dsym, "", result) end result end # reduce 429 omitted # reduce 430 omitted def _reduce_431(val, _values, result) result = -val[1] # TODO: pt_testcase result end def _reduce_432(val, _values, result) result = -val[1] # TODO: pt_testcase result end # reduce 433 omitted # reduce 434 omitted # reduce 435 omitted # reduce 436 omitted # reduce 437 omitted def _reduce_438(val, _values, result) result = s(:nil) result end def _reduce_439(val, _values, result) result = s(:self) result end def _reduce_440(val, _values, result) result = s(:true) result end def _reduce_441(val, _values, result) result = s(:false) result end def _reduce_442(val, _values, result) result = s(:str, self.file) result end def _reduce_443(val, _values, result) result = s(:lit, lexer.src.current_line) result end def _reduce_444(val, _values, result) var = val[0] result = Sexp === var ? var : self.gettable(var) result end def _reduce_445(val, _values, result) result = self.assignable val[0] result end def _reduce_446(val, _values, result) result = s(:nth_ref, val[0]) result end def _reduce_447(val, _values, result) result = s(:back_ref, val[0]) result end def _reduce_448(val, _values, result) result = nil result end def _reduce_449(val, _values, result) lexer.lex_state = :expr_beg result end def _reduce_450(val, _values, result) result = val[2] result end def _reduce_451(val, _values, result) yyerrok result = nil result end def _reduce_452(val, _values, result) result = val[1] lexer.lex_state = :expr_beg self.lexer.command_start = true result end def _reduce_453(val, _values, result) result = val[0] result end def _reduce_454(val, _values, result) result = args19 val result end def _reduce_455(val, _values, result) result = args19 val result end def _reduce_456(val, _values, result) result = args19 val result end def _reduce_457(val, _values, result) result = args19 val result end def _reduce_458(val, _values, result) result = args19 val result end def _reduce_459(val, _values, result) result = args19 val result end def _reduce_460(val, _values, result) result = args19 val result end def _reduce_461(val, _values, result) result = args19 val result end def _reduce_462(val, _values, result) result = args19 val result end def _reduce_463(val, _values, result) result = args19 val result end def _reduce_464(val, _values, result) result = args19 val result end def _reduce_465(val, _values, result) result = args19 val result end def _reduce_466(val, _values, result) result = args19 val result end def _reduce_467(val, _values, result) result = args19 val result end def _reduce_468(val, _values, result) result = args19 val result end def _reduce_469(val, _values, result) result = args19 val result end def _reduce_470(val, _values, result) yyerror "formal argument cannot be a constant: #{val[0]}" result end def _reduce_471(val, _values, result) yyerror "formal argument cannot be an instance variable" result end def _reduce_472(val, _values, result) yyerror "formal argument cannot be a class variable" result end def _reduce_473(val, _values, result) identifier = val[0].to_sym self.env[identifier] = :lvar result = val[0] result end def _reduce_474(val, _values, result) result = s(:args) result << val[0].to_sym result end def _reduce_475(val, _values, result) val[0] << val[2].to_sym result = val[0] result end def _reduce_476(val, _values, result) result = self.assignable val[0], val[2] # TODO: detect duplicate names result end def _reduce_477(val, _values, result) result = s(:block, val[0]) result end def _reduce_478(val, _values, result) result = self.block_append val[0], val[2] result end # reduce 479 omitted # reduce 480 omitted def _reduce_481(val, _values, result) # TODO: differs from parse.y - needs tests name = val[1].to_sym self.assignable name result = :"*#{name}" result end def _reduce_482(val, _values, result) name = :"*" self.env[name] = :lvar result = name result end # reduce 483 omitted # reduce 484 omitted def _reduce_485(val, _values, result) identifier = val[1].to_sym self.env[identifier] = :lvar result = s(:block_arg, identifier.to_sym) result end def _reduce_486(val, _values, result) result = val[1] result end def _reduce_487(val, _values, result) result = nil result end # reduce 488 omitted def _reduce_489(val, _values, result) lexer.lex_state = :expr_beg result end def _reduce_490(val, _values, result) result = val[2] yyerror "Can't define single method for literals." if result[0] == :lit result end def _reduce_491(val, _values, result) result = s(:array) result end def _reduce_492(val, _values, result) result = val[0] result end def _reduce_493(val, _values, result) size = val[0].size if (size % 2 != 1) then # != 1 because of leading :array yyerror "Odd number (#{size}) list for Hash. #{val[0].inspect}" end result = val[0] result end # reduce 494 omitted def _reduce_495(val, _values, result) list = val[0].dup more = val[2][1..-1] list.push(*more) unless more.empty? result = list result end def _reduce_496(val, _values, result) result = s(:array, val[0], val[2]) result end def _reduce_497(val, _values, result) result = s(:array, s(:lit, val[0][0].to_sym), val[1]) result end # reduce 498 omitted # reduce 499 omitted # reduce 500 omitted # reduce 501 omitted # reduce 502 omitted # reduce 503 omitted # reduce 504 omitted # reduce 505 omitted # reduce 506 omitted # reduce 507 omitted # reduce 508 omitted # reduce 509 omitted # reduce 510 omitted # reduce 511 omitted # reduce 512 omitted # reduce 513 omitted # reduce 514 omitted # reduce 515 omitted # reduce 516 omitted def _reduce_517(val, _values, result) yyerrok result end # reduce 518 omitted # reduce 519 omitted def _reduce_520(val, _values, result) yyerrok result end def _reduce_521(val, _values, result) result = nil result end def _reduce_522(val, _values, result) result = nil result end def _reduce_none(val, _values, result) val[0] end end # class Ruby19Parser