lib/ruby22_parser.rb in ruby_parser-3.13.1 vs lib/ruby22_parser.rb in ruby_parser-3.14.0

- old
+ new

@@ -18,332 +18,312 @@ # racc-token-length-max:14 ** # End: ** ##### State transition tables begin ### clist = [ -'-526,-112,608,-111,-109,608,942,-526,-526,-526,675,-110,-526,-526,-526', -'284,-526,234,-93,654,225,226,830,608,-526,-635,-526,-526,-526,860,-107', -'-108,-79,128,-537,657,-526,-526,127,-526,-526,-526,-526,-526,608,-101', -'608,-103,-115,-112,95,763,-103,235,225,226,829,-110,96,128,235,886,-109', -'615,127,-114,-112,-526,-526,-526,-526,-526,-526,-526,-526,-526,-526', -'-526,-526,-526,-526,-621,653,-526,-526,-526,235,-526,-526,-113,-107', -'-526,284,-111,-526,-526,284,-526,656,-526,740,-526,286,-526,-526,-526', -'-526,-526,-526,-526,235,-526,-101,-526,-103,-112,128,-111,-109,128,-112', -'127,-111,-109,127,-110,-526,-526,-526,-526,-110,-526,-625,-526,859,-98', -'-99,128,-526,-625,-625,-625,127,-526,235,-625,-625,-101,-625,-103,-101', -'128,-103,-106,-103,-622,127,-625,128,-621,128,963,-101,127,-101,127', -'-103,-100,-625,-625,-105,-625,-625,-625,-625,-625,225,226,588,286,585', -'584,583,286,586,284,588,638,585,584,583,-538,586,-442,-104,481,232,945', -'-102,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625', -'-625,947,-534,-625,-625,-625,-625,681,638,-534,848,-625,-625,949,-625', -'-532,849,-212,821,-625,822,-625,-532,-625,-625,-625,-625,-625,-625,-625', -'674,-625,-625,-625,-442,-108,640,639,-433,-115,-115,-442,-619,-618,879', -'795,-625,-625,-303,-102,-442,-625,1011,951,235,-303,-303,-303,-625,-625', -'286,-303,-303,-111,-303,-625,-625,830,-442,640,639,-621,-625,-114,-110', -'-625,-112,-621,793,775,951,-625,638,776,-303,-303,-110,-303,-303,-303', -'-303,-303,675,-625,232,-526,-523,565,235,-625,564,829,-526,-523,638', -'272,273,-619,-618,638,565,-526,-523,567,957,-303,-303,-303,-303,-303', -'-303,-303,-303,-303,-303,-303,-303,-303,-303,-619,-618,-303,-303,-303', -'638,680,-106,917,638,-303,271,270,-303,640,639,636,638,-303,-112,-303', -'-115,-303,-303,-303,-303,-303,-303,-303,808,-303,730,-303,106,107,707', -'640,639,651,-537,-538,640,639,646,128,-303,-303,-303,-303,127,-303,-212', -'674,730,-303,-303,-303,-303,593,-303,-303,-303,-113,-303,-109,593,640', -'639,636,596,640,639,658,-303,-303,-303,596,539,640,639,641,-98,-99,-303', -'-303,-109,-303,-303,-303,-303,-303,106,107,-105,-101,-107,-108,-523', -'-530,633,225,226,604,603,-523,-530,634,-114,-110,604,603,730,108,109', -'-303,-303,-303,-303,-303,-303,-303,-303,-303,-303,-303,-303,-303,-303', -'128,538,-303,-303,-303,127,824,-303,597,235,-303,235,808,-303,-303,597', -'-303,-78,-303,730,-303,730,-303,-303,-303,-303,-303,-303,-303,128,-303', -'235,-303,588,127,585,584,583,593,586,975,638,108,109,643,-303,-303,-303', -'-303,596,-303,-523,-303,-279,-100,1062,128,-303,-523,-523,-523,127,-113', -'-523,-523,-523,565,-523,-109,567,588,591,585,584,583,-523,586,-523,-523', -'-523,601,600,604,603,604,603,527,-523,-523,-535,-523,-523,-523,-523', -'-523,588,-535,585,584,583,-531,586,640,639,976,-535,740,-531,749,588', -'979,585,584,583,982,586,597,752,-523,-523,-523,-523,-523,-523,-523,-523', -'-523,-523,-523,-523,-523,-523,984,749,-523,-523,-523,231,-523,-523,235', -'986,-523,1041,668,-523,-523,749,-523,235,-523,988,-523,666,-523,-523', -'-523,-523,-523,-523,-523,525,-523,522,-523,588,-529,585,584,583,593', -'586,565,-529,289,567,512,-523,-523,-523,-523,596,-523,-625,-523,234', -'-528,882,886,-523,-625,-625,-625,-528,-523,-625,-625,-625,588,-625,585', -'584,583,591,586,882,886,1000,-625,-625,-625,-625,601,600,604,603,225', -'226,1001,-625,-625,231,-625,-625,-625,-625,-625,588,478,585,584,583', -'231,586,225,226,749,479,588,280,585,584,583,483,586,956,482,480,597', -'431,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625', -'-625,1013,749,-625,-625,-625,426,823,-625,-526,409,-625,730,749,-625', -'-625,-526,-625,787,-625,406,-625,752,-625,-625,-625,-625,-625,-625,-625', -'403,-625,-625,-625,588,400,585,584,583,593,586,1030,255,376,1033,848', -'-625,-625,-625,-625,596,-625,-303,-625,1039,231,1042,951,-625,-303,-303', -'-303,555,-111,255,-303,-303,951,-303,231,-294,479,591,255,252,-533,778', -'-294,254,253,265,266,-533,604,603,780,-294,951,-303,-303,1047,-303,-303', -'-303,-303,-303,252,1013,258,235,254,253,250,251,740,252,256,1056,257', -'254,253,250,251,255,1058,1060,737,597,1062,-303,-303,-303,-303,-303', -'-303,-303,-303,-303,-303,-303,-303,-303,-303,338,255,-303,-303,-303', -'588,680,585,584,583,-303,586,252,-303,727,337,254,253,-303,275,-303', -'1013,-303,-303,-303,-303,-303,-303,-303,730,-303,730,-303,252,227,231', -'224,254,253,250,251,-622,1032,749,-621,-303,-303,-625,-104,235,-303', -'780,223,428,-625,-625,-625,-303,430,429,-625,-625,-113,-625,255,-647', -'-647,-647,-647,272,273,222,-625,-647,-647,131,132,133,134,135,265,266', -'951,-625,-625,1013,-625,-625,-625,-625,-625,588,730,585,584,583,252', -'586,258,727,254,253,250,251,271,270,256,1004,257,585,584,583,733,586', -'-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625,-625', -'-536,749,-625,-625,-625,231,681,-536,527,1062,-625,740,1038,-625,741', -'743,-536,745,-625,747,-625,1036,-625,-625,-625,-625,-625,-625,-625,723', -'-625,-625,-625,-294,755,756,757,907,908,722,-294,909,122,123,759,-625', -'-625,558,-625,-294,-625,311,85,86,87,12,78,-625,730,-345,79,80,-111', -'730,615,83,-345,81,82,84,33,34,76,77,730,-345,235,711,-93,88,31,30,116', -'115,117,118,235,426,22,782,235,787,235,669,11,49,313,13,120,119,121', -'110,60,112,111,113,691,114,122,123,796,106,107,797,45,46,44,255,259', -'260,261,262,272,273,267,268,263,264,-303,248,249,231,798,265,266,-303', -'43,-277,545,36,-622,1085,62,63,-303,809,64,543,38,252,512,258,48,254', -'253,250,251,271,270,256,23,257,512,1062,-536,103,95,97,98,99,101,-536', -'1062,255,96,104,255,269,235,-251,-536,826,66,275,255,93,100,102,835', -'837,108,109,311,85,86,87,12,78,525,527,231,79,80,255,722,235,83,1032', -'81,82,84,33,34,76,77,289,780,289,289,722,88,31,30,116,115,117,118,3', -'673,22,255,672,235,235,669,11,49,313,13,120,119,121,110,60,112,111,113', -'235,114,122,123,665,106,107,664,45,46,44,255,259,260,261,262,272,273', -'267,268,263,264,-535,248,249,-304,-276,265,266,-535,43,662,-304,36,655', -'877,62,63,-535,652,64,-304,38,252,235,258,48,254,253,250,251,271,270', -'256,23,257,886,730,-304,103,95,97,98,99,101,-304,-303,649,96,104,235', -'269,645,-303,-304,621,66,620,-622,93,100,102,-303,419,108,109,311,85', -'86,87,12,78,-278,615,231,79,80,235,1062,568,83,230,81,82,84,33,34,76', -'77,916,228,562,255,124,88,31,30,116,115,117,118,553,1004,22,585,584', -'583,549,586,11,49,313,13,120,119,121,110,60,112,111,113,289,114,122', -'123,933,106,107,722,45,46,44,255,259,260,261,262,272,273,267,268,263', -'264,-303,248,249,-304,235,265,266,-303,43,292,-304,315,-622,-276,62', -'63,-303,938,64,-304,38,252,546,258,48,254,253,250,251,271,270,256,23', -'257,,,231,103,95,97,98,99,101,619,,,96,104,235,269,,,617,,66,,,93,100', -'102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77', -'131,132,133,134,135,88,31,30,116,115,117,118,,,22,131,132,133,134,135', -'11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', -'46,44,255,259,260,261,262,272,273,267,268,263,264,,248,249,,,265,266', -',43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270,256,23', -'257,,,,103,95,97,98,99,101,,,,96,104,,269,,,,,66,,,93,100,102,,,108', -'109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,131,132', -'133,134,135,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119', -'121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,255,259,260,261', -'262,272,273,267,268,263,264,,248,249,,,265,266,,43,,,315,,,62,63,,,64', -',38,252,,258,48,254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99', -'101,,,,96,104,,269,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78', -',,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,', -',22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106', -'107,,45,46,44,255,259,260,261,262,272,273,267,268,263,264,,248,249,', -',265,266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270', -'256,23,257,,,,103,95,97,98,99,101,,,,96,104,,269,,,,,66,,,93,100,102', -',,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,', -',,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60', -'112,111,113,,114,122,123,,106,107,,45,46,44,255,259,260,261,262,272', -'273,267,268,263,264,,248,249,,,265,266,,43,,,36,,,62,63,,,64,,38,252', -',258,48,254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,', -',96,104,,269,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79', -'80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,', -',,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +'-630,284,225,226,-110,225,226,-630,-630,-630,761,601,-626,-630,-630', +'-101,-630,-112,-111,-103,234,829,235,-113,821,-630,225,226,829,601,647', +'-111,284,820,534,650,-630,-630,601,-630,-630,-630,-630,-630,601,-110', +'859,284,-109,-114,-109,-107,-112,95,222,828,235,-212,847,-108,-115,96', +'828,601,848,-299,533,-630,-630,-630,-630,-630,-630,-630,-630,-630,-630', +'-630,-630,-630,-630,-112,-101,-630,-630,-630,-103,674,286,-627,-110', +'-630,235,646,-630,235,-626,-626,649,-630,-299,-630,235,-630,-630,-630', +'-630,-630,-630,-630,128,-630,-630,-630,-114,127,235,-101,-110,286,-101', +'-103,-103,-110,-103,128,-630,-630,-104,-102,127,-630,-111,-305,286,-101', +'-102,-111,-630,-103,-305,-305,-305,128,-111,-305,-305,-305,127,-305', +'-101,858,128,-78,-105,-100,-98,127,128,-305,-305,-305,-109,127,-99,-106', +'-112,-109,284,-305,-305,-112,-305,-305,-305,-305,-305,128,232,-93,966', +'581,127,578,577,576,631,579,807,727,106,107,729,581,-79,578,577,576', +'-623,579,-305,-305,-305,-305,-305,-305,-305,-305,-305,-305,-305,-305', +'-305,-305,225,226,-305,-305,-305,747,823,-305,-624,-630,-305,597,596', +'-305,-305,-542,-305,747,-305,-437,-305,-115,-305,-305,-305,-305,-305', +'-305,-305,-446,-305,-109,-305,633,632,629,581,-528,578,577,576,286,579', +'723,-528,-305,-305,-305,-305,-623,-305,-630,-305,-528,701,108,109,-305', +'-630,-630,-630,-531,-630,-113,-630,-630,773,-630,-531,-630,774,-623', +'-107,-624,-626,255,-630,-531,-630,-630,-543,885,-446,608,918,608,477', +'-630,-630,-446,-630,-630,-630,-630,-630,-624,-630,581,-446,578,577,576', +'-539,579,523,106,107,252,-536,-539,235,254,253,1045,1014,-536,-446,668', +'-630,-630,-630,-630,-630,-630,-630,-630,-630,-630,-630,-630,-630,-630', +'-630,521,-630,-630,-630,-108,674,-630,631,-109,-630,-115,-626,-630,631', +'667,-630,518,-630,723,-630,912,-630,-630,-630,-630,-630,-630,-630,586', +'-630,-630,-630,581,-630,578,577,576,586,579,589,631,-112,878,807,-630', +'-630,631,-630,589,-630,-305,108,109,-278,586,668,-630,-305,-305,-305', +'272,273,-111,-305,-305,589,-305,723,633,632,584,-110,597,596,633,632', +'235,791,642,594,593,597,596,911,631,-100,-305,-305,645,-305,-305,-305', +'-305,-305,289,271,270,-103,597,596,-109,633,632,794,231,508,590,633', +'632,639,631,280,-112,631,757,590,636,-305,-305,-305,-305,-305,-305,-305', +'-305,-305,-305,-305,-305,-305,-305,-537,590,-305,-305,-305,667,673,-537', +'881,885,-305,631,232,-305,633,632,634,234,-305,917,-305,479,-305,-305', +'-305,-305,-305,-305,-305,128,-305,478,-305,581,127,578,577,576,586,579', +'633,632,629,633,632,-305,-305,-101,-104,589,-305,755,-528,476,-106,-542', +'-543,-305,-212,-528,-528,-528,-110,-113,-528,-528,-528,754,-528,-115', +'231,584,633,632,651,753,-528,776,-528,-528,-528,727,597,596,726,128', +'778,648,-528,-528,127,-528,-528,-528,-528,-528,727,-98,-99,729,-105', +'231,745,581,626,578,577,576,661,579,934,627,-107,-108,743,-114,590,659', +'715,-528,-528,-528,-528,-528,-528,-528,-528,-528,-528,-528,-528,-528', +'-528,225,226,-528,-528,-528,-306,-528,-528,747,741,-528,426,-306,-528', +'-528,-276,-528,750,-528,255,-528,-306,-528,-528,-528,-528,-528,-528', +'-528,940,-528,421,-528,581,-528,578,577,576,586,579,727,-528,945,729', +'235,-528,-528,-528,-528,589,-528,252,-528,-531,128,254,253,-528,738', +'127,-531,-531,-531,-528,948,-531,-531,-531,255,-531,581,584,578,577', +'576,950,579,-531,952,-531,-531,-531,597,596,265,266,225,226,954,-531', +'-531,-533,-531,-531,-531,-531,-531,954,-533,235,252,739,258,960,254', +'253,250,251,747,423,256,-531,257,738,425,424,590,959,-531,723,-531,-531', +'-531,-531,-531,-531,-531,-531,-531,-531,-531,-531,-531,-531,404,231', +'-531,-531,-531,231,-531,-531,612,401,-531,723,550,-531,-531,399,-531', +'610,-531,396,-531,475,-531,-531,-531,-531,-531,-531,-531,723,-531,1066', +'-531,581,-538,578,577,576,586,579,235,-538,881,885,-535,-531,-531,-531', +'-531,589,-531,-535,-531,-630,128,372,723,-531,235,127,-630,-630,-630', +'-531,978,-630,-630,-630,255,-630,581,584,578,577,576,735,579,523,-630', +'-630,-630,-630,597,596,265,266,255,979,738,-630,-630,-534,-630,-630', +'-630,-630,-630,982,-534,985,252,987,258,989,254,253,250,251,747,128', +'256,235,257,128,127,991,590,750,127,235,-630,-630,-630,-630,-630,-630', +'-630,-630,-630,-630,-630,-630,-630,-630,731,730,-630,-630,-630,-305', +'822,-630,338,1003,-630,1004,-305,-630,-630,723,-630,-627,-630,720,-630', +'-305,-630,-630,-630,-630,-630,-630,-630,655,-630,-630,-630,581,-276', +'578,577,576,586,579,255,1016,716,337,723,-630,-630,-630,-630,589,-630', +'-305,-630,723,-295,785,715,-630,-305,-305,-305,-295,657,-111,-305,-305', +'553,-305,255,658,-295,584,252,1034,275,954,254,253,250,251,594,593,597', +'596,265,266,1037,-305,-305,847,-305,-305,-305,-305,-305,235,1016,906', +'907,1089,252,908,122,123,254,253,250,251,581,255,578,577,576,1043,579', +'678,590,1046,-305,-305,-305,-305,-305,-305,-305,-305,-305,-305,-305', +'-305,-305,-305,954,255,-305,-305,-305,581,673,578,577,576,-305,579,954', +'-305,747,954,1051,704,-305,1016,-305,-93,-305,-305,-305,-305,-305,-305', +'-305,235,-305,289,-305,252,738,1060,1062,254,253,250,251,1064,231,747', +'1066,-305,-305,1066,-305,540,-305,311,85,86,87,12,78,-305,538,-541,79', +'80,255,-113,227,83,-541,81,82,84,33,34,76,77,720,-541,224,223,255,88', +'31,30,116,115,117,118,235,665,22,1016,723,723,808,662,11,49,313,13,120', +'119,121,110,60,112,111,113,614,114,122,123,613,106,107,666,45,46,44', +'255,259,260,261,262,272,273,267,268,263,264,-540,248,249,-306,508,265', +'266,-540,43,414,-306,315,608,508,62,63,-540,-277,64,-306,38,252,825', +'258,48,254,253,250,251,271,270,256,23,257,235,275,231,103,95,97,98,99', +'101,474,1066,834,96,104,836,269,521,-251,475,523,66,796,235,93,100,102', +'715,235,108,109,311,85,86,87,12,78,255,235,-349,79,80,289,124,235,83', +'-349,81,82,84,33,34,76,77,289,-349,715,548,795,88,31,30,116,115,117', +'118,255,544,22,235,289,3,235,662,11,49,313,13,120,119,121,110,60,112', +'111,113,235,114,122,123,785,106,107,780,45,46,44,255,259,260,261,262', +'272,273,267,268,263,264,-305,248,249,231,1066,265,266,-305,43,292,1036', +'36,-627,1066,62,63,-305,876,64,778,38,252,638,258,48,254,253,250,251', +'271,270,256,23,257,235,885,-540,103,95,97,98,99,101,-540,-541,723,96', +'104,685,269,235,-541,-540,541,66,-627,,93,100,102,-541,,108,109,311', +'85,86,87,12,78,,,231,79,80,,,,83,1042,81,82,84,33,34,76,77,,1040,,,', +'88,31,30,116,115,117,118,,1007,22,578,577,576,,579,11,49,313,13,120', +'119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,255,259,260', +'261,262,272,273,267,268,263,264,-295,248,249,231,,265,266,-295,43,,230', +'36,,,62,63,-295,,64,228,38,252,,258,48,254,253,250,251,271,270,256,23', +'257,,,231,103,95,97,98,99,101,1036,-306,,96,104,,269,,-306,778,,66,', +',93,100,102,-306,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84', +'33,34,76,77,131,132,133,134,135,88,31,30,116,115,117,118,,1007,22,578', +'577,576,,579,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123', +',106,107,,45,46,44,255,259,260,261,262,272,273,267,268,263,264,-305', +'248,249,,,265,266,-305,43,,,36,-627,,62,63,-305,,64,,38,252,,258,48', +'254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,,,96,104', +',269,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83', +',81,82,84,33,34,76,77,131,132,133,134,135,88,31,30,116,115,117,118,', +',22,131,132,133,134,135,11,49,313,13,120,119,121,110,60,112,111,113', +',114,122,123,,106,107,,45,46,44,255,259,260,261,262,272,273,267,268', +'263,264,,248,249,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254', +'253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,,,96,104,235', +'269,,,,,66,,,93,100,102,,,108,109,8,85,86,87,12,78,,,,79,80,,,,83,,81', +'82,84,33,34,76,77,131,132,133,134,135,88,31,30,116,115,117,118,,,22', +',,,,,11,49,10,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107', ',45,46,44,255,259,260,261,262,272,273,267,268,263,264,,248,249,,,265', '266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270,256', '23,257,,,,103,95,97,98,99,101,,,,96,104,,269,,,,,66,,,93,100,102,,,108', '109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88', '31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112', '111,113,,114,122,123,,106,107,,45,46,44,255,259,260,261,262,272,273', -'267,268,263,264,,-647,-647,,,265,266,,43,,,36,,,62,63,,,64,,38,252,', -'258,48,254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,,', -'96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,', -',,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11', -'49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46', -'44,255,259,260,261,262,272,273,267,268,263,264,,-647,-647,,,265,266', -',43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270,256,23', -'257,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109', +'267,268,263,264,,248,249,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258', +'48,254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,,,96,104', +',269,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83', +',81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49', +'313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44', +'255,259,260,261,262,272,273,267,268,263,264,,248,249,,,265,266,,43,', +',315,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270,256,23,257', +',,,103,95,97,98,99,101,,,,96,104,,269,,,,,66,,,93,100,102,,,108,109', '311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30', -'116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113', -',114,122,123,,106,107,,45,46,44,255,259,260,261,262,272,273,267,,263', -'264,,,,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251', -'271,270,256,23,257,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', -'102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77', -',,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110', -'60,112,111,113,,114,122,123,,106,107,,45,46,44,255,-647,-647,-647,-647', -'272,273,,,-647,-647,,,,,,265,266,,43,,,315,,,62,63,,,64,,38,252,,258', +'116,115,117,118,,581,22,578,577,576,,579,11,49,313,13,120,119,121,110', +'60,112,111,113,,114,122,123,,106,107,,45,46,44,255,-652,-652,-652,-652', +'272,273,,747,-652,-652,,,,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258', '48,254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,,,96,104', ',,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81', '82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313', '13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,255', -'-647,-647,-647,-647,272,273,,,-647,-647,,,,,,265,266,,43,,,36,,,62,63', -',,64,,38,252,,258,48,254,253,250,251,271,270,256,23,257,,,,103,95,97', -'98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,8,85,86,87,12,78', -',,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,', -',22,,,,,,11,49,10,13,120,119,121,110,60,112,111,113,,114,122,123,,106', -'107,,45,46,44,255,259,260,261,262,272,273,,,263,264,,,,,,265,266,,43', -',,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270,256,23,257', +'259,260,261,262,272,273,267,268,263,264,,-652,-652,,,265,266,,43,,,36', +',,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270,256,23,257,,,,103', +'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86', +'87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', +'117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122', +'123,,106,107,,45,46,44,255,-652,-652,-652,-652,272,273,,,-652,-652,', +',,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271', +'270,256,23,257,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102', +',,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,', +',,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60', +'112,111,113,,114,122,123,,106,107,,45,46,44,255,259,260,261,262,272', +'273,267,268,263,264,,-652,-652,,,265,266,,43,,,36,,,62,63,,,64,,38,252', +',258,48,254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,', +',96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80', +',,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,', +'11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', +'46,44,255,-652,-652,-652,-652,272,273,,,-652,-652,,,,,,265,266,,43,', +',36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270,256,23,257', ',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311', '85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116', '115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114', -'122,123,,106,107,,45,46,44,255,-647,-647,-647,-647,272,273,,,-647,-647', +'122,123,,106,107,,45,46,44,255,-652,-652,-652,-652,272,273,,,-652,-652', ',,,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271', '270,256,23,257,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102', ',,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,', ',,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60', -'112,111,113,,114,122,123,,106,107,,45,46,44,255,-647,-647,-647,-647', -'272,273,,,-647,-647,,,,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258', -'48,254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,,,96,104', -',,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81', -'82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313', -'13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,255', -',,,,,,,,,,,,,,,265,266,,43,,,36,,255,62,63,,,64,,38,252,,258,48,254', -'253,250,251,265,266,256,23,257,,,,103,95,97,98,99,101,,,252,96,104,', -'254,253,250,251,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79', -'80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,', -',,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107', -',45,46,44,255,-647,-647,-647,-647,272,273,,,-647,-647,,,,,,265,266,', +'112,111,113,,114,122,123,,106,107,,45,46,44,255,259,260,261,262,272', +'273,,,263,264,,,,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254', +'253,250,251,271,270,256,23,257,,,,103,95,97,98,99,101,,,,96,104,,,,', +',,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82', +'84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13', +'120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,255,259', +'260,261,262,272,273,267,,263,264,,,,,,265,266,,43,,,315,,,62,63,,,64', +',38,252,,258,48,254,253,250,251,271,270,256,23,257,,,,103,95,97,98,99', +'101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,', +'79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22', +',,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',45,46,44,255,-652,-652,-652,-652,272,273,,,-652,-652,,,,,,265,266,', '43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,271,270,256,23', '257,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109', '311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30', '116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113', -',114,122,123,,106,107,,45,46,44,255,,,,,,,,,,,,,,,,265,266,,43,,,36', -',,62,63,,,64,,38,252,,258,48,254,253,250,251,,,,23,,,,,103,95,97,98', -'99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,8,85,86,87,12,78,,', -',79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22', -',,,,,11,49,10,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107', -',45,46,44,255,,,,,,,,,,,,,,,,265,266,,43,,,36,,,62,63,,,64,,38,252,', -'258,48,254,253,250,251,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,', -',66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82', -'84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13', -'120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,', -',,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97', -'98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12', -'78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118', -',,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,', -'106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48', -',,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,', -'108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,', -',88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60', +',114,122,123,,106,107,,45,46,44,255,-652,-652,-652,-652,272,273,,,-652', +'-652,,,,,,265,266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250', +'251,271,270,256,23,257,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93', +'100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34', +'76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121', +'110,60,112,111,113,,114,122,123,,106,107,,45,46,44,255,,,,,,,,,,,,,', +',,265,266,,43,,,36,,,62,63,,,64,,38,252,,258,48,254,253,250,251,,,,23', +',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311', +'85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116', +'115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114', +'122,123,,106,107,,45,46,44,255,,,,,,,,,,,,,,,,265,266,,43,,,36,,,62', +'63,,,64,,38,252,,258,48,254,253,250,251,,,,23,,,,,103,95,97,98,99,101', +',,,96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80', +',,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,', +'11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', +'46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,', +',,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311', +'85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116', +'115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114', +'122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,', +'38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', +'102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77', +',,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110', +'60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43', +',,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96', +'104,,,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83', +',81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49', +'313,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44', +',,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103', +'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86', +'87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', +'117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122', +'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,', +',,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102', +',,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,', +',,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60', '112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,', '36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104', ',,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81', '82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313', '13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,', ',,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95', -'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86,87', -'12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117', -'118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123', -',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48', -',,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,', -'108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,', -',88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60', -'112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,', -'36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104', -',,,,,,66,,,93,100,102,,,108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81', -'82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313', -'13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,', -',,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95', -'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,311,85,86,87', -'12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117', -'118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123', -',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48', -',,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,', -'108,109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,', -',88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60', -'112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,', -'36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104', -',,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', -'33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121', -'110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,', -',,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101', -',,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83', -',81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,', -'49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44', -',,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103', -'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,', -'78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117', -'118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106', -'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,', -',,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108', -'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30', -'116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114', -'122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64', -',,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', -'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', -',,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112', -'111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,', -'246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104', -',,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82', -'84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120', -'119,121,110,60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,', -',,,,,,,,,,,,,240,,,246,,,62,63,,,64,,704,,,,48,,,,,,,,245,,,,,103,302', -'97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,', +'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,8,85,86,87,12', '78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118', -',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', -',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245', -',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', -'86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', -'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122', -'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301', -',299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305', -'93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', -'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', -'112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', -',,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101', -',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', -',,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,', -',49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,,45,46', +',,22,,,,,,11,49,10,13,120,119,121,110,60,112,111,113,,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,', +',,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108', +'109,311,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88', +'31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121,110,60,112', +'111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,', +',62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,', +',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', +'330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', +'121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', +',,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99', +'101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', +',,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,', +',,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,,45,46', '44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245', ',,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109', +'85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116', +'115,117,118,,,22,,,,,,11,49,10,13,120,119,121,110,60,112,111,113,,114', +'122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,', +'38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', +'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,', +',88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111', +'113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', +',,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96', +'104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,', +'81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,', +'120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,', +',,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97', +'98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,', +'79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118', +',,247,,,,,,,328,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',,,334,,,,,,,,,,,,,,,,,,,,993,,,246,,,62,63,,,64,,,,,,,,,,,,,,,,,,,103', +'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,', +'78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118', +',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48', +',,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102', +',,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88', +'31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', +'304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', +'63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104', +',,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82', +'84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119', +'121,110,60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,', +',,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302', +'97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,', +'78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117', +'118,,,247,,,,,,,328,,,120,119,121,110,60,112,111,113,,114,122,123,,106', +'107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,,64,,319,,,,,,,,,,', +',,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109', '85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333', '116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111,113,,114', -'122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,,64,,319', -',,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102', +'122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,246,,,62,63,,,64,,', +',,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,336,,,66,,,93,100,102', ',,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', -'327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111', -'113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,246,,,62,63', -',,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,336,,,66,,,93', -'100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77', -',,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112', -'111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,', -'246,,,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,', -',,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,', -',83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,', -',,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46', -'44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,', -'103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86', -'87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115', -'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123', -',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48', -',,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,', -',108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', '327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111', '113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', -'63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', -',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', -'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', -'60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,', -',240,,,246,,,62,63,,,64,,301,,,,48,,,,,,,,245,,,,,103,302,97,98,99,101', -',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', -',,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,', -'49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44', -',,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103', -'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,', -'78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118', -',,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', -',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23', +'63,,,64,,698,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,', +',,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330', +'331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120,119', +'121,110,60,112,111,113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,', +',,,1000,,,246,,,62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,', +'96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,', +'81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49', +',,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,', +',,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', +'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', +',,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118', +',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245', ',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', -'86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', -'117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123', -',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48', -',,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,128,,,,,127,66,,,93,100', +'86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', +'115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', +'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', +',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', '102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', ',,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112', -'111,113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,370,,,36,,,62', -'63,,,64,,38,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,', -',93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', -'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121', -'110,60,112,111,113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,990', -',,246,,,62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,', -',,,,,66,,,93,100,102,,,108,109,85,86,87,12,78,,,,79,80,,,,83,,81,82', -'84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,10,13,120', -'119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,', -',,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98', -'99,101,,,,96,104,,,,,,419,66,,,93,100,102,,,108,109,85,86,87,,78,,,', -'79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22', -',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', -'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,', -',,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86', +'111,113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,993,,,246,,', +'62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', +',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', +'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', +'60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', +',,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96', +'104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81', +'82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,', +',120,119,121,110,60,112,111,113,304,114,122,123,,106,107,,45,46,44,', +',,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,299,,48,,,,,,,,245,,,,,103', +'302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86', '87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117', '118,,,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106', '107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,', ',,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108', '109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30', @@ -351,75 +331,92 @@ '122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64', ',,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', '102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,', ',88,31,30,116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111', '113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', +'63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,128,,,,', +'127,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', +'330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120', +'119,121,110,60,112,111,113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,', +',,,,,,,366,,,36,,,62,63,,,64,,38,,,,,,,,,,,,,,,,,103,95,97,98,99,101', +',,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83', +',81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,,49,,', +'120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,', +',,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97', +'98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,', +'79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22', +',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', +'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,', +',,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86', +'87,12,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', +'117,118,,,22,,,,,,11,49,10,13,120,119,121,110,60,112,111,113,,114,122', +'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,', +',,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,414,66,,,93,100', +'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,', +',88,31,30,116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111', +'113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', '63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', -',,93,100,102,,,108,109,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34', -'76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,,13,120,119,121', -'110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,', -',,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,', -',,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83', -',81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,', -'49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44', -',,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,704,,,,48,,,,,,,,245,,,,', -'103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86', -'87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117', -'118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106', -'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,436,,,,48,', -',,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,', -'108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31', -'30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,', -'114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', -',,64,,436,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', ',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', '77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60', '112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,', ',246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104', ',,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,,49,,,120,119,121', '110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,', ',,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,', ',,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83', -',81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,', -',120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,', -',,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', -'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', -',,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,', -',247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106', -'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48', -',,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102', +',81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,,49,,', +'120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,', +',,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97', +'98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,12,78,', +',,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,', +'22,,,,,,11,49,,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23', +',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', +'86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', +'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123', +',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,431,,', +',48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102', ',,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88', '31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', ',114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', -',,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,', -',93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', +',,64,,431,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', +',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', '77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60', '112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,', ',246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104', ',,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,,49,,,120,119,121', '110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,', ',,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,', -',,96,104,235,,,,,,66,,,93,100,102,,,108,109,85,86,87,12,78,,,,79,80', -',,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,', -'11,49,10,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', -'46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,', -',,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86', -'87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115', -'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123', -',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48', -',,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,', -',108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', -'327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111', -'113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,997,,,246,,,62,63', -',,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', -'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', -',,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112', -'111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', -',,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,', -',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', +',,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83', +',81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,', +',120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,', +',,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', +'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', +',,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,', +',247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48', +',,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102', +',,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', +'327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111', +'113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', +'63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', +',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', +'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', +'112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', +',,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101', +',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', +',,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,', +',49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,,45,46', +'44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245', +',,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109', +'85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116', +'115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114', +'122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64', +',301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,235,,,,', +',66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', '121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', ',,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99', '101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', ',,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', @@ -436,41 +433,231 @@ ',,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,', ',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', '121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', ',,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99', -'101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', -',,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', -',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', -'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,', -',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', -'86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', -'115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', -'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', -',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', +'101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,12,78,,,,79,80', +',,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,', +'11,49,,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46', +'44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103', +'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,', +'78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118', +',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48', +',,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102', +',,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', +'327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111', +'113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,246,,,62,63', +',,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,536,,,66,,,93', +'100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77', +',,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', +'112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,', +',246,,,62,63,,,64,,301,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96', +'104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81', +'82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,', +',120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,', +',,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', +'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', +',,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118', +',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,', +',,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,', +',108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', +'327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111', +'113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', +',,62,63,,,64,,698,,,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104', +',,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82', +'84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120', +'119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,', +',,,,,,,,,,240,,,246,,,62,63,,,64,,431,,,,48,,,,,,,,245,,,,,103,95,97', +'98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,', +'79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118', +',,247,,,,,,,328,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',,,334,,,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,,64,,,,,,,,,,,,,,,,,,,103', +'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,', +'78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117', +'118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,', +',,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108', +'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327', +'333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111,113', +',114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,', +'64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', '102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', ',,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112', '111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', ',,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,', ',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', '121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', -',,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99', -'101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', -',,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', +',,,,,,240,,,246,553,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98', +'99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79', +'80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', +',,,,,,328,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,,', +'334,,,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,,64,,,,,,,,,,,,,,,,,,,103', +'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,12', +'78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118', +',,22,,,,,,11,49,,13,120,119,121,110,60,112,111,113,,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,', +',,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108', +'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327', +'333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', +'304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', +'63,,,64,,301,,,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,', +',,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', +'330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', +'121,110,60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,', +',,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,302,97,98', +'99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,', +'79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118', +',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245', +',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', +'86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', +'117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123', +',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48', +',,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,', +'108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31', +'30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,', +'114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', +',,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,', +',93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', +'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', +'112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,', +',246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104', +',,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', +'33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121', +'110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,', +',,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101', +',,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83', +',81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,', +',120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,', +',,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', +'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', +',,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118', +',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,299,,48,', +',,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102', +',,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', +'327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,615,60,112,111', +'616,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,617,,,246,,,62,63', +',,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', +'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', +',,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,615,60,112', +'111,616,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,617,,,246,,', +'62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', +',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', +'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', +'60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,', +',240,,,246,,,62,63,,,64,,698,,299,,48,,,,,,,,245,,,,,103,302,97,98,99', +'101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79', +'80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', ',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', '46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,', ',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', +'86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', +'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122', +'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301', +',299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305', +'93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', +'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', +'112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,', +',246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104', +',,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', +'330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', +'121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', +',,,,,,240,,,246,,,62,63,,,64,,800,,,,48,,,,,,,,245,,,,,103,95,97,98', +'99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79', +'80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,', +',,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46', +'44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103', +'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,', +'78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118', +',,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23', +',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', +'86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', +'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122', +'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301', +',299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305', +'93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76', +'77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', +'60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', +',,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96', +'104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81', +'82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,,49,,,120', +'119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,', +',,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98', +'99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79', +'80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', +',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', +'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,', +',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', '86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', '115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', '123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', ',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', '102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', -',,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112', -'111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', -',,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,', -',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', +',,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112', +'111,113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,320,,', +'62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', +',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', +'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', +'112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', +',,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101', +',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', +',,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,', +',,,,,328,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,,,334', +',,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97', +'98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,12,78,', +',,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,', +'22,,,,,,11,49,313,13,120,119,121,110,60,112,111,113,,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,', +',,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,414,66,,,93,100,102,,,108', +'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327', +'333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', +',114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', +',,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,', +',93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', +'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', +'60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,', +',240,,,246,,,62,63,,,64,,,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101', +',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', +',,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,', +',,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,,45', +'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,698,,299,,48,,,,,,', +',245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108', +'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327', +'333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', +',114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', +',,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,', +',93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', +'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', +'60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', +',,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96', +'104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81', +'82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,', +',120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,', +',,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', +'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', +',,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,', +',247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245', +',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', +'86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', +'117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123', +',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48', +',,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,', +'108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31', +'30,116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114', +'122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64', +',,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,235,,,,,,66,,,93', +'100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77', +',,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', +'112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,', +',246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104', +',,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', '121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', ',,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99', '101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', ',,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', @@ -488,14 +675,35 @@ ',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', '121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', ',,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99', '101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', -',,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', -',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', -'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,', -',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', +',,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,', +',,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44', +',,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103', +'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,', +'78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117', +'118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106', +'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,', +',,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108', +'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327', +'333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', +',114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', +',,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,', +',93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', +'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', +'60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', +',,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96', +'104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81', +'82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,', +',120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,', +',,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', +'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', +',,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118', +',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', +',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245', +',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', '86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', '115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', '123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', ',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', '102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', @@ -509,27 +717,14 @@ '101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', ',,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', ',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', '46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,', ',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', -'86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115', -'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122', -'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301', -',299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305', -'93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', -'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', -'112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', -',,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101', -',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', -',,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,', -',49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,,45,46', -'44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245', -',,,,103,302,97,98,99,101,,,,96,104,235,,,,,,66,,305,93,100,102,,,108', -'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327', -'333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111,113', -',114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,990,,,246,,,62,63,,', -'64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', +'86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', +'115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', +'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', +',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', '102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', ',,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112', '111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', ',,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,', ',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', @@ -547,102 +742,18 @@ ',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', '102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', ',,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112', '111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', ',,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,', -',,,,66,,,93,100,102,,,108,109,85,86,87,12,78,,,,79,80,,,,83,,81,82,84', -'33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,,13,120,119', -'121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', -',,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101', -',,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83', -',81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,', -'49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,,45,46', -'44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,299,,48,,,,,,,,245,', -',,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109', -'85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116', -'115,117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', -'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', -',,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102', -',,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', -'327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111', -'113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,246,,,62,63', -',,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,541,,,66,,,93', -'100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77', -',,,,,88,31,30,116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60,112', -'111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', -',,62,63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,', -',,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330', -'331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120,119', -'121,110,60,112,111,113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,', -',,,324,,,320,,,62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96', -'104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81', -'82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,', -',120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,', -',,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', -'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', -',,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118', -',,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', -',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245', -',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', -'86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', -'115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', -'123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', -',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', -'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', -',,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112', -'111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', -',,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,', ',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', '121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', -',,,,,,240,,,246,558,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98', -'99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,12,78,,,,79', -'80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22,,', -',,,11,49,,13,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', -'46,44,,,,,,,,,,,,,,,,,,,,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,', -',,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86', -'87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115', -'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123', -',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48', -',,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,', -',108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', -'327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111', -'113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', -'63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', -',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', -'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', -'112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,', -',246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104', -',,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', -'330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', -'121,110,60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,', -',,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,302,97,98', -'99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,', -'79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,22', +',,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99', +'101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', +',,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', ',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', -'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,23,,', -',,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86', -'87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115', -'117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123', -',106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48', -',,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,', -',108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88', -'327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,622,60,112,111', -'623,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,624,,,246,,,62,63', -',,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', -'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', -',,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,622,60,112', -'111,623,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,624,,,246,,', -'62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', -',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', -'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', -'112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', -',,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101', -',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', -',,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,', -',,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46', -'44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,,,48,,,,,,,,245,', +'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,', ',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', '86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', '115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', '123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', ',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', @@ -651,625 +762,522 @@ '111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246', ',,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,', ',,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', '330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', '121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', -',,,,,,240,,,246,,,62,63,,,64,,436,,,,48,,,,,,,,245,,,,,103,95,97,98', -'99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79', -'80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', -',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', -'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,', -',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', -'86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', -'115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111,113,,114,122', -'123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,,64,,,,,,', -',,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108', -'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30', -'116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,304', -'114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', -',,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,', -',,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84', -'330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119', -'121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,', ',,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99', '101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80', ',,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', ',,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45', '46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,', ',,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', '86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', '115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122', '123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,', ',,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', -'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,', -',,,88,327,333,116,115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112', -'111,113,,114,122,123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,320,,', -'62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', -',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', -'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', -'60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', -',,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96', -'104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81', -'82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,', -',120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,', -',,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103,95', -'97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78', -',,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,', -',247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107', -',45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245', -',,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85', -'86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116', -'115,117,118,,,247,,,,,,,328,,,120,119,121,110,60,112,111,113,,114,122', -'123,,106,107,,,,334,,,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,,64,,,,,,', -',,,,,,,,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108', -'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30', -'116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114', -'122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64', -',,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', -'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,', -',88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111', -'113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', -'63,,,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', -',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', -'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', -'60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,', -',240,,,246,,,62,63,,,64,,,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101', -',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', -',,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,', -',,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,,45', -'46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,704,,299,,48,,,,,,', -',245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108', -'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327', -'333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', -',114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', -',,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,', -',93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76', -'77,,,,,,88,31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60', -'112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240', -',,246,,,62,63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101', -',,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79,80,', -',,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247,,,,,', -',49,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,45,46,44', -',,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,,,48,,,,,,,,245,,,,,103', -'95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,', -'78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117', -'118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113,,114,122,123,,106', -'107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,801,,,,48,', -',,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,', -'108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31', -'30,116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111,113,,114', -'122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64', -',,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,,,93,100', -'102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,', -',88,31,30,116,115,117,118,,,22,,,,,,,49,,,120,119,121,110,60,112,111', -'113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', -'63,,,64,,,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66', -',,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331', -'76,77,,,,,,88,327,333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110', -'60,112,111,113,304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,', -',240,,,246,,,62,63,,,64,,704,,299,,48,,,,,,,,245,,,,,103,302,97,98,99', -'101,,,,96,104,,,,,,,66,,305,93,100,102,,,108,109,85,86,87,,78,,,,79', -'80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247', -',,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,', -'45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,,,299,,48,,,,,,', -',245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102,,,108', -'109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,330,331,76,77,,,,,,88,327', -'333,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', -',114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63', -',,64,,,,,,48,,,,,,,,245,,,,,103,95,97,98,99,101,,,,96,104,,,,,,,66,', -',93,100,102,,,108,109,85,86,87,12,78,,,,79,80,,,,83,,81,82,84,33,34', -'76,77,,,,,,88,31,30,116,115,117,118,,,22,,,,,,11,49,313,13,120,119,121', -'110,60,112,111,113,,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,', -',,43,,,36,,,62,63,,,64,,38,,,,48,,,,,,,,23,,,,,103,95,97,98,99,101,', -',,96,104,,,,,,419,66,,,93,100,102,,,108,109,85,86,87,,78,,,,79,80,,', -',83,,81,82,84,330,331,76,77,,,,,,88,327,333,116,115,117,118,,,247,,', -',,,,328,,,120,119,121,110,60,112,111,113,,114,122,123,,106,107,,,,334', -',,,,,,,,,,,,,,,,,,,324,,,320,,,62,63,,,64,,,,,,,,,,,,,,,,,,,103,95,97', -'98,99,101,,,,96,104,,,,,,,66,,,93,100,102,,,108,109,85,86,87,,78,,,', -'79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88,31,30,116,115,117,118,,,247', -',,,,,,49,,,120,119,121,110,60,112,111,113,304,114,122,123,,106,107,', -'45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62,63,,,64,,301,,299,,48,,,', -',,,,245,,,,,103,302,97,98,99,101,,,,96,104,,,,,,,66,,305,93,100,102', -',,108,109,85,86,87,,78,,,,79,80,,,,83,,81,82,84,33,34,76,77,,,,,,88', -'31,30,116,115,117,118,,,247,,,,,,,49,,,120,119,121,110,60,112,111,113', -'304,114,122,123,,106,107,,45,46,44,,,,,,,,,,,,,,,,,,,,240,,,246,,,62', -'63,,,64,,301,,299,,48,,,,,,,,245,,,,,103,302,97,98,99,101,,,,96,104', -',,,,,,66,,305,93,100,102,-295,,108,109,,,,-295,-295,-295,,,-295,-295', -'-295,588,-295,585,584,583,593,586,,,,,-295,-295,-295,,,596,,,,,-295', -'-295,,-295,-295,-295,-295,-295,,,,,,,,,,591,,,,,,,,,601,600,604,603', -',-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295', -',,-295,-295,-295,,,-295,,,-295,,,-295,-295,,-295,597,-295,,-295,,-295', -'-295,-295,-295,-295,-295,-295,,-295,,-295,588,,585,584,583,593,586,', -',,,,-295,-295,-295,-295,596,-295,-627,-295,,,,,-295,-627,-627,-627,', -',-627,-627,-627,,-627,,,,591,,,,,-627,-627,-627,-627,,,604,603,,,,-627', -'-627,,-627,-627,-627,-627,-627,,,,,,,,,,,,,,,,,,,,,,597,,-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,588,,585,584,583,593,586,,,,,,-627,-627,-627', -'-627,596,-627,-626,-627,,,,,-627,-626,-626,-626,,,-626,-626,-626,,-626', -',,,591,,,,,-626,-626,-626,-626,601,600,604,603,,,,-626,-626,,-626,-626', -'-626,-626,-626,,,,,,,,,,,,,,,,,,,,,,597,,-626,-626,-626,-626,-626,-626', -'-626,-626,-626,-626,-626,-626,-626,-626,,,-626,-626,-626,,,-626,,,-626', -',,-626,-626,,-626,,-626,,-626,,-626,-626,-626,-626,-626,-626,-626,,-626', -'-626,-626,588,,585,584,583,593,586,,,,,,-626,-626,-626,-626,596,-626', -'-646,-626,,,,,-626,-646,-646,-646,,,-646,-646,-646,,-646,,,,591,,,,', -'-646,-646,-646,,601,600,604,603,,,,-646,-646,,-646,-646,-646,-646,-646', -',,,,,,,,,,,,,,,,,,,,,597,,-646,-646,-646,-646,-646,-646,-646,-646,-646', -'-646,-646,-646,-646,-646,,,-646,-646,-646,,,-646,,289,-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,588,-646,585,584,583,593,586,,,,-646,-646,,,,,596,,,,,-646,-646', -',-646,-646,-646,-646,-646,,,,,,,,,,591,,,,,,,,,601,600,604,603,,,,,', -',,,,,,,-646,,-311,,,,,-646,,-311,-311,-311,289,-646,-311,-311,-311,', -'-311,,597,,,,,,,,-311,-311,,,,,-646,-646,,,-311,-311,,-311,-311,-311', -'-311,-311,,,-646,,,,,-646,,,,,,,-646,,,,,,,,,-311,-311,-311,-311,-311', -'-311,-311,-311,-311,-311,-311,-311,-311,-311,,,-311,-311,-311,,,-311', -',292,-311,,,-311,-311,,-311,,-311,,-311,,-311,-311,-311,-311,-311,-311', -'-311,,-311,,-311,,,,,,,,,,,,,-311,-311,-441,-311,,-311,,,,-441,-441', -'-441,-311,,-441,-441,-441,588,-441,585,584,583,593,586,,,,-441,-441', -'-441,,,,596,,,,,-441,-441,,-441,-441,-441,-441,-441,,,,,,,,,,591,,,', -',,,,,,,604,603,,-441,-441,-441,-441,-441,-441,-441,-441,-441,-441,-441', -'-441,-441,-441,,,-441,-441,-441,,,-441,,289,-441,,,-441,-441,,-441,597', -'-441,,-441,,-441,-441,-441,-441,-441,-441,-441,,-441,-441,-441,,,,,', -',,,,,,,-441,-441,,-441,,-441,,,,,,,-441,189,200,190,213,186,206,196', +'102,-296,,108,109,,,,-296,-296,-296,,,-296,-296,-296,581,-296,578,577', +'576,586,579,,,,,-296,-296,-296,,,589,,,,,-296,-296,,-296,-296,-296,-296', +'-296,,,,,,,,,,584,,,,,,,,,594,593,597,596,,-296,-296,-296,-296,-296', +'-296,-296,-296,-296,-296,-296,-296,-296,-296,,,-296,-296,-296,,,-296', +',,-296,,,-296,-296,,-296,590,-296,,-296,,-296,-296,-296,-296,-296,-296', +'-296,,-296,,-296,581,,578,577,576,586,579,,,,,,-296,-296,-296,-296,589', +'-296,-445,-296,,,,,-296,-445,-445,-445,,,-445,-445,-445,,-445,,,,584', +',,,,-445,-445,-445,,594,593,597,596,,,,-445,-445,,-445,-445,-445,-445', +'-445,,,,,,,,,,,,,,,,,,,,,,590,,-445,-445,-445,-445,-445,-445,-445,-445', +'-445,-445,-445,-445,-445,-445,,,-445,-445,-445,,,-445,,289,-445,,,-445', +'-445,,-445,,-445,,-445,,-445,-445,-445,-445,-445,-445,-445,,-445,-445', +'-445,,,,,,,,,,,,,-445,-445,-651,-445,,-445,,,,-651,-651,-651,-445,,-651', +'-651,-651,581,-651,578,577,576,586,579,,,,-651,-651,-651,,,,589,,,,', +'-651,-651,,-651,-651,-651,-651,-651,,,,,,,,,,584,,,,,,,,,594,593,597', +'596,,-651,-651,-651,-651,-651,-651,-651,-651,-651,-651,-651,-651,-651', +'-651,,,-651,-651,-651,,,-651,,289,-651,,,-651,-651,,-651,590,-651,,-651', +',-651,-651,-651,-651,-651,-651,-651,,-651,-651,-651,,,,,,,,,,,,,-651', +'-651,-632,-651,,-651,,,,-632,-632,-632,-651,,-632,-632,-632,581,-632', +'578,577,576,586,579,,,,-632,-632,-632,-632,,,589,,,,,-632,-632,,-632', +'-632,-632,-632,-632,,,,,,,,,,584,,,,,,,,,594,593,597,596,,-632,-632', +'-632,-632,-632,-632,-632,-632,-632,-632,-632,-632,-632,-632,,,-632,-632', +'-632,,,-632,,,-632,,,-632,-632,,-632,590,-632,,-632,,-632,-632,-632', +'-632,-632,-632,-632,,-632,-632,-632,581,,578,577,576,586,579,,,,,,-632', +'-632,-632,-632,589,-632,-651,-632,,,,,-632,-651,-651,-651,,,-651,-651', +'-651,,-651,,,,584,,,,,-651,-651,,,,,597,596,,,,-651,-651,,-651,-651', +'-651,-651,-651,,,,,,,,,,,,,,,,,,,,,,590,,,,,,,,,,,,,-651,,-631,,,,,-651', +',-631,-631,-631,289,-651,-631,-631,-631,581,-631,578,577,576,586,579', +',,,-631,-631,-631,-631,,,589,-651,-651,,,-631,-631,,-631,-631,-631,-631', +'-631,,,-651,,,,,-651,,584,,,,,-651,,,,,,597,596,,-631,-631,-631,-631', +'-631,-631,-631,-631,-631,-631,-631,-631,-631,-631,,,-631,-631,-631,', +',-631,,,-631,,,-631,-631,,-631,590,-631,,-631,,-631,-631,-631,-631,-631', +'-631,-631,,-631,-631,-631,581,,578,577,576,586,579,,,,,,-631,-631,-631', +'-631,589,-631,-314,-631,,,,,-631,-314,-314,-314,,,-314,-314,-314,,-314', +',,,584,,,,,,-314,-314,,,,597,596,,,,-314,-314,,-314,-314,-314,-314,-314', +',,,,,,,,,,,,,,,,,,,,,590,,-314,-314,-314,-314,-314,-314,-314,-314,-314', +'-314,-314,-314,-314,-314,,,-314,-314,-314,,,-314,,292,-314,,,-314,-314', +',-314,,-314,,-314,,-314,-314,-314,-314,-314,-314,-314,,-314,,-314,,', +',,,,,,,,,,-314,-314,,-314,,-314,,,,,,,-314,189,200,190,213,186,206,196', '195,216,217,211,194,193,188,214,218,219,198,187,201,205,207,199,192', ',,,208,215,210,209,202,212,197,185,204,203,,,,,,184,191,182,183,179', '180,181,139,141,,,140,,,,,,,,,173,174,,169,151,152,153,160,157,159,', ',154,155,,,,175,176,161,162,,,,,,,,,,,,,,166,165,,150,172,168,167,163', -'164,158,156,148,171,149,,,177,,,,,,,,,,,,,,,,,,,,170,,,,,178,189,200', -'190,213,186,206,196,195,216,217,211,194,193,188,214,218,219,198,187', -'201,205,207,199,192,,,,208,215,210,209,202,212,197,185,204,203,,,,,', -'184,191,182,183,179,180,181,139,141,138,,140,,,,,,,,,173,174,,169,151', +'164,158,156,148,171,149,,,177,103,,,,,,,,,,104,,,,,,,,,170,,,,,178,189', +'200,190,213,186,206,196,195,216,217,211,194,193,188,214,218,219,198', +'187,201,205,207,199,192,,,,208,215,210,209,202,212,197,185,204,203,', +',,,,184,191,182,183,179,180,181,139,141,,,140,,,,,,,,,173,174,,169,151', '152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,,,,,,,,,166,165', ',150,172,168,167,163,164,158,156,148,171,149,,,177,103,,,,,,,,,,104', ',,,,,,,,170,,,,,178,189,200,190,213,186,206,196,195,216,217,211,194', '193,188,214,218,219,198,187,201,205,207,199,192,,,,208,215,210,209,202', -'212,197,185,204,203,,,,,,184,191,182,183,179,180,181,139,141,,,140,', -',,,,,,,173,174,,169,151,152,153,160,157,159,,,154,155,,,,175,176,161', -'162,,,,,,,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171,149', -',,177,103,,,,,,,,,,104,,,,,,,,,170,,,,,178,189,200,190,213,186,206,196', -'195,216,217,211,194,193,188,214,218,219,198,187,201,205,207,199,192', -',,,208,215,210,385,384,386,383,185,204,203,,,,,,184,191,182,183,380', -'381,382,378,141,112,111,379,,114,,,,,,,173,174,,169,151,152,153,160', -'157,159,,,154,155,,,,175,176,161,162,,,,,,392,,,,,,,,166,165,,150,172', -'168,167,163,164,158,156,148,171,149,,,177,,,,,,,,,,,,,,,,,,,,170,,,', -',178,189,200,190,213,186,206,196,195,216,217,211,194,193,188,214,218', -'219,198,187,201,205,207,199,192,,,,208,215,210,209,202,212,197,185,204', -'203,,,,,,184,191,182,183,179,180,181,139,141,,,140,,,,,,,,,173,174,', -'169,151,152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,,,,,,', -',,166,165,,150,172,168,167,163,164,158,156,148,171,149,,,177,103,,,', -',,,,,,104,,,,,,,,,170,,,,,178,189,200,190,213,186,206,196,195,216,217', -'211,194,193,188,214,218,219,198,187,201,205,207,199,192,,,,208,215,210', -'209,202,212,197,185,204,203,,,,,,184,191,182,183,179,180,181,139,141', -'416,415,140,,417,,,,,,,173,174,,169,151,152,153,160,157,159,,,154,155', -',,,175,176,161,162,,,,,,,,,,,,,,166,165,,150,172,168,167,163,164,158', -'156,148,171,149,,,177,,,,,,,,,,,,,,,,,,,,170,,,,,178,189,200,190,213', -'186,206,196,195,216,217,211,194,193,188,214,218,219,198,187,201,205', -'207,199,192,,,,208,215,210,209,202,212,197,185,204,203,,,,,,184,191', -'182,183,179,180,181,139,141,,,140,,,,,,,,,173,174,,169,151,152,153,160', -'157,159,,,154,155,,,,175,176,161,162,,,,,,,,,,,,,,166,165,,150,172,168', -'167,163,164,158,156,148,171,149,,,177,103,,,,,,,,,,104,,687,470,,,688', -',,170,,,,,178,173,174,,169,151,152,153,160,157,159,,,154,155,,,,175', -'176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158,156', -'148,171,149,,,177,,,,,,,,,,1071,470,,,1072,,,,,,170,,,173,174,178,169', -'151,152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,', -',166,165,,150,172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,', -',687,470,,,688,,,,,,170,,,173,174,178,169,151,152,153,160,157,159,,', -'154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167', -'163,164,158,156,148,171,149,,,177,,,,,,,,,,718,470,,,719,,,,,,170,,', +'212,197,185,204,203,,,,,,184,191,182,183,179,180,181,139,141,411,410', +'140,,412,,,,,,,173,174,,169,151,152,153,160,157,159,,,154,155,,,,175', +'176,161,162,,,,,,,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148', +'171,149,,,177,,,,,,,,,,,,,,,,,,,,170,,,,,178,189,200,190,213,186,206', +'196,195,216,217,211,194,193,188,214,218,219,198,187,201,205,207,199', +'192,,,,208,215,210,209,202,212,197,185,204,203,,,,,,184,191,182,183', +'179,180,181,139,141,,,140,,,,,,,,,173,174,,169,151,152,153,160,157,159', +',,154,155,,,,175,176,161,162,,,,,,,,,,,,,,166,165,,150,172,168,167,163', +'164,158,156,148,171,149,,,177,,,,,,,,,,,,,,,,,,,,170,,,,,178,189,200', +'190,213,186,206,196,195,216,217,211,194,193,188,214,218,219,198,187', +'201,205,207,199,192,,,,208,215,210,381,380,382,379,185,204,203,,,,,', +'184,191,182,183,376,377,378,374,141,112,111,375,,114,,,,,,,173,174,', +'169,151,152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,388,,', +',,,,,166,165,,150,172,168,167,163,164,158,156,148,171,149,,,177,,,,', +',,,,,,,,,,,,,,,170,,,,,178,189,200,190,213,186,206,196,195,216,217,211', +'194,193,188,214,218,219,198,187,201,205,207,199,192,,,,208,215,210,209', +'202,212,197,185,204,203,,,,,,184,191,182,183,179,180,181,139,141,138', +',140,,,,,,,,,173,174,,169,151,152,153,160,157,159,,,154,155,,,,175,176', +'161,162,,,,,,,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171', +'149,,,177,103,,,,,,,,,,104,,,,,,,,,170,,,,,178,189,200,190,213,186,206', +'196,195,216,217,211,194,193,188,214,218,219,198,187,201,205,207,199', +'192,,,,208,215,210,209,202,212,197,185,204,203,,,,,,184,191,182,183', +'179,180,181,139,141,,,140,,,,,,,,,173,174,,169,151,152,153,160,157,159', +',,154,155,,,,175,176,161,162,,,,,,,,,,,,,,166,165,,150,172,168,167,163', +'164,158,156,148,171,149,,,177,103,,,,,,,,,,104,,1075,465,,,1076,,,170', +',,,,178,173,174,,169,151,152,153,160,157,159,,,154,155,,,,175,176,161', +'162,,,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171', +'149,,,177,,,,,,,,,,681,465,,,682,,,,,,170,,,173,174,178,169,151,152', +'153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165', +',150,172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,,,461,465', +',,460,,,,,,170,,,173,174,178,169,151,152,153,160,157,159,,,154,155,', +',,175,176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158', +'156,148,171,149,,,177,,,,,,,,,,802,458,,,803,,,,,,170,,,173,174,178', +'169,151,152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,', +',,,,,166,165,,150,172,168,167,163,164,158,156,148,171,149,,,177,,,,', +',,,,,805,465,,,804,,,,,,170,,,173,174,178,169,151,152,153,160,157,159', +',,154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167', +'163,164,158,156,148,171,149,,,177,,,,,,,,,,681,465,,,682,,,,,,170,,', '173,174,178,169,151,152,153,160,157,159,,,154,155,,,,175,176,161,162', ',,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171,149', -',,177,,,,,,,,,,772,470,,,773,,,,,,170,,,173,174,178,169,151,152,153', +',,177,,,,,,,,,,892,465,,,893,,,,,,170,,,173,174,178,169,151,152,153', '160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165,,150', -'172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,,,715,463,,,716', +'172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,,,679,458,,,680', ',,,,,170,,,173,174,178,169,151,152,153,160,157,159,,,154,155,,,,175', '176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158,156', -'148,171,149,,,177,,,,,,,,,,685,463,,,686,,,,,,170,,,173,174,178,169', +'148,171,149,,,177,,,,,,,,,,679,458,,,680,,,,,,170,,,173,174,178,169', '151,152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,', ',166,165,,150,172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,', -',770,463,,,771,,,,,,170,,,173,174,178,169,151,152,153,160,157,159,,', +',454,458,,,455,,,,,,170,,,173,174,178,169,151,152,153,160,157,159,,', '154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167', -'163,164,158,156,148,171,149,,,177,,,,,,,,,,893,470,,,894,,,,,,170,,', +'163,164,158,156,148,171,149,,,177,,,,,,,,,,506,458,,,507,,,,,,170,,', '173,174,178,169,151,152,153,160,157,159,,,154,155,,,,175,176,161,162', ',,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171,149', -',,177,,,,,,,,,,466,470,,,465,,,,,,170,,,173,174,178,169,151,152,153', +',,177,,,,,,,,,,1070,465,,,1069,,,,,,170,,,173,174,178,169,151,152,153', '160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165,,150', -'172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,,,806,470,,,805', +'172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,,,768,458,,,769', ',,,,,170,,,173,174,178,169,151,152,153,160,157,159,,,154,155,,,,175', '176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158,156', -'148,171,149,,588,177,585,584,583,593,586,,,,,510,463,,,511,596,,,,,170', -',,173,174,178,169,151,152,153,160,157,159,,,154,155,591,,,175,176,161', -'162,,,,,604,603,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148', -'171,149,,,177,,,,,,,,,597,459,463,,,460,,,,,,170,,,173,174,178,169,151', -'152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166', -'165,,150,172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,,,803', -'463,,,804,,,,,,170,,,173,174,178,169,151,152,153,160,157,159,,,154,155', -',,,175,176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167,163,164', -'158,156,148,171,149,,,177,,,,,,,,,,510,463,,,511,,,,,,170,,,173,174', -'178,169,151,152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,289', -',,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171,149,,,177,,', -',,,,,,,685,463,,,686,,,,,,170,,,173,174,178,169,151,152,153,160,157', -'159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168', -'167,163,164,158,156,148,171,149,,,177,,,,,,,,,,1066,470,,,1065,,,,,', -'170,,,173,174,178,169,151,152,153,160,157,159,,,154,155,,,,175,176,161', -'162,,,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171', -'149,,,177,,,,,,,,,,1069,463,,,1070,,,,,,170,,,173,174,178,169,151,152', -'153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165', -',150,172,168,167,163,164,158,156,148,171,149,,588,177,585,584,583,593', -'586,588,,585,584,583,593,586,,,596,,,,,170,,596,,588,178,585,584,583', -'593,586,,,,,,,591,,,596,,,,591,,601,600,604,603,,,,601,600,604,603,', -',,,588,591,585,584,583,593,586,,,,,,604,603,,,596,,,,588,597,585,584', -'583,593,586,588,597,585,584,583,593,586,,,596,,591,574,,,,596,,,597', -'601,600,604,603,588,,585,584,583,593,586,591,,,,,,,591,,596,,604,603', -',,,601,600,604,603,,,,,588,597,585,584,583,593,586,591,588,,585,584', -'583,593,586,,596,,604,603,235,597,,,596,,,588,597,585,584,583,593,586', -',,,,591,,,,,596,,,591,,,604,603,,597,,,,,604,603,,,,,,588,591,585,584', -'583,593,586,,,,,,604,603,,,596,,,597,,,,,,,,597,,,,,,,,,,,591,,,,,,', -',597,601,600,604,603,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,597' ] - racc_action_table = arr = ::Array.new(26188, nil) +'148,171,149,,,177,,,,,,,,,,770,465,,,771,,,,,,170,,,173,174,178,169', +'151,152,153,160,157,159,,,154,155,,,,175,176,161,162,,,,,,289,,,,,,', +',166,165,,150,172,168,167,163,164,158,156,148,171,149,,,177,,,,,,,,', +',1073,458,,,1074,,,,,,170,,,173,174,178,169,151,152,153,160,157,159', +',,154,155,,,,175,176,161,162,,,,,,289,,,,,,,,166,165,,150,172,168,167', +'163,164,158,156,148,171,149,,,177,,,,,,,,,,708,458,,,709,,,,,,170,,', +'173,174,178,169,151,152,153,160,157,159,,,154,155,,,,175,176,161,162', +',,,,,289,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171,149', +',581,177,578,577,576,586,579,,,,,506,458,,,507,589,,,,,170,,,173,174', +'178,169,151,152,153,160,157,159,,,154,155,584,,,175,176,161,162,,,594', +'593,597,596,,,,,,,,166,165,,150,172,168,167,163,164,158,156,148,171', +'149,,,177,581,,578,577,576,586,579,,590,711,465,,,712,,,589,,,170,,', +'173,174,178,169,151,152,153,160,157,159,,,154,155,,,584,175,176,161', +'162,,,,,,289,597,596,,,,,,166,165,,150,172,168,167,163,164,158,156,148', +'171,149,,581,177,578,577,576,586,579,,,,,,590,,,,589,,,,,170,,,,581', +'178,578,577,576,586,579,,,,,,,584,567,581,589,578,577,576,586,579,594', +'593,597,596,,,,,581,589,578,577,576,586,579,,584,,,,,,,,589,,,597,596', +',,584,,,,,590,,,,,,597,596,,,584,581,,578,577,576,586,579,,594,593,597', +'596,,,590,581,589,578,577,576,586,579,,,,,,,,590,,589,,,,,235,,584,', +',,,,590,,,594,593,597,596,,581,584,578,577,576,586,579,,,,594,593,597', +'596,,,589,,,,,,,,,,,,,,,590,,,,,,,584,,,,,,,,590,,,597,596,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,590' ] + racc_action_table = arr = ::Array.new(26144, 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 = [ -'113,1070,360,1071,1083,960,861,113,113,113,460,1069,113,113,113,329', -'113,22,710,407,790,790,836,937,113,62,113,113,113,735,367,368,710,364', -'238,410,113,113,364,113,113,113,113,113,890,715,359,716,371,771,92,610', -'460,22,725,725,836,770,92,5,62,1016,891,1016,5,620,460,113,113,113,113', -'113,113,113,113,113,113,113,113,113,113,1071,407,113,113,113,862,113', -'113,773,238,113,694,772,113,113,65,113,410,113,863,113,329,113,113,113', -'113,113,113,113,790,113,715,113,716,1070,360,1071,1083,960,1070,360', -'1071,1083,960,1069,113,113,113,113,1069,113,466,113,735,367,368,937', -'113,466,466,466,937,113,725,466,466,715,466,716,715,610,716,371,771', -'773,610,466,890,772,359,890,770,890,715,359,716,891,466,466,620,466', -'466,466,466,466,475,475,752,694,752,752,752,65,752,29,956,650,956,956', -'956,239,956,842,773,241,443,867,772,466,466,466,466,466,466,466,466', -'466,466,466,466,466,466,868,382,466,466,466,893,466,647,382,726,466', -'718,870,466,381,726,480,685,466,686,466,381,466,466,466,466,466,466', -'466,803,466,466,466,842,239,650,650,29,241,443,842,623,622,752,650,466', -'466,805,466,842,466,956,871,475,805,805,805,466,893,29,805,805,466,805', -'718,893,692,842,647,647,893,718,480,685,893,686,718,647,624,873,718', -'529,624,805,805,803,805,805,805,805,805,804,893,20,623,622,351,876,718', -'351,692,623,622,404,47,47,623,622,401,732,623,622,732,878,805,805,805', -'805,805,805,805,805,805,805,805,805,805,805,623,622,805,805,805,394', -'805,20,825,412,805,47,47,805,529,529,529,396,805,804,805,20,805,805', -'805,805,805,805,805,913,805,881,805,44,44,529,404,404,404,41,42,401', -'401,401,968,805,805,688,805,968,805,338,459,887,688,688,688,805,737', -'688,688,688,805,688,825,976,394,394,394,737,412,412,412,688,688,688', -'976,318,396,396,396,41,42,688,688,913,688,688,688,688,688,334,334,338', -'459,41,42,378,386,388,358,358,737,737,378,386,388,338,459,976,976,892', -'44,44,688,688,688,688,688,688,688,688,688,688,688,688,688,688,308,317', -'688,688,688,308,688,688,737,896,688,316,670,688,688,976,688,314,688', -'900,688,901,688,688,688,688,688,688,688,899,688,902,688,788,899,788', -'788,788,788,788,911,398,334,334,398,688,688,688,688,788,688,110,688', -'912,670,1090,903,688,110,110,110,903,688,110,110,110,352,110,670,352', -'591,788,591,591,591,110,591,110,110,110,788,788,788,788,740,740,300', -'110,110,994,110,110,110,110,110,1013,994,1013,1013,1013,383,1013,398', -'398,919,994,920,383,591,1011,922,1011,1011,1011,923,1011,788,591,110', -'110,110,110,110,110,110,110,110,110,110,110,110,110,924,1013,110,110', -'110,442,110,110,1002,926,110,1002,442,110,110,1011,110,927,110,928,110', -'442,110,110,110,110,110,110,110,297,110,296,110,574,385,574,574,574', -'574,574,571,385,285,571,281,110,110,110,110,574,110,687,110,247,384', -'758,758,110,687,687,687,384,110,687,687,687,877,687,877,877,877,574', -'877,1049,1049,940,687,687,687,687,574,574,574,574,784,784,941,687,687', -'237,687,687,687,687,687,957,237,957,957,957,27,957,17,17,877,237,749', -'27,749,749,749,243,749,877,242,240,574,220,687,687,687,687,687,687,687', -'687,687,687,687,687,687,687,958,957,687,687,687,136,687,687,379,102', -'687,967,749,687,687,379,687,974,687,101,687,749,687,687,687,687,687', -'687,687,100,687,687,687,1058,99,1058,1058,1058,1058,1058,987,486,73', -'990,992,687,687,687,687,1058,687,465,687,997,340,1006,1007,687,465,465', -'465,340,687,506,465,465,1008,465,626,325,340,1058,502,486,380,626,325', -'486,486,506,506,380,1058,1058,626,325,1009,465,465,1010,465,465,465', -'465,465,506,1012,506,49,506,506,506,506,1021,502,506,1024,506,502,502', -'502,502,487,1025,1026,576,1058,1029,465,465,465,465,465,465,465,465', -'465,465,465,465,465,465,43,501,465,465,465,879,465,879,879,879,465,879', -'487,465,1035,40,487,487,465,25,465,1048,465,465,465,465,465,465,465', -'1053,465,1054,465,501,18,989,16,501,501,501,501,1065,989,879,1066,465', -'465,806,465,1068,465,989,15,138,806,806,806,465,138,138,806,806,465', -'806,495,495,495,495,495,495,495,13,806,495,495,9,9,9,9,9,495,495,1074', -'806,806,1075,806,806,806,806,806,1047,560,1047,1047,1047,495,1047,495', -'559,495,495,495,495,495,495,495,1041,495,1041,1041,1041,569,1041,806', -'806,806,806,806,806,806,806,806,806,806,806,806,806,995,1047,806,806', -'806,996,806,995,572,1027,806,577,996,806,579,580,995,581,806,590,806', -'996,806,806,806,806,806,806,806,552,806,806,806,998,598,602,605,791', -'791,550,998,791,791,791,607,806,806,547,806,998,806,363,363,363,363', -'363,363,806,611,50,363,363,806,612,613,363,50,363,363,363,363,363,363', -'363,614,50,542,540,537,363,363,363,363,363,363,363,536,535,363,628,519', -'631,518,447,363,363,363,363,363,363,363,363,363,363,363,363,507,363', -'363,363,654,363,363,657,363,363,363,447,447,447,447,447,447,447,447', -'447,447,447,719,447,447,323,659,447,447,719,363,663,323,363,719,1079', -'363,363,719,671,363,323,363,447,676,447,363,447,447,447,447,447,447', -'447,363,447,682,1080,322,363,363,363,363,363,363,322,1081,491,363,363', -'490,447,689,447,322,690,363,693,489,363,363,363,696,698,363,363,362', -'362,362,362,362,362,701,703,1031,362,362,488,712,714,362,1031,362,362', -'362,362,362,362,362,717,1031,467,720,721,362,362,362,362,362,362,362', -'1,458,362,724,457,454,731,453,362,362,362,362,362,362,362,362,362,362', -'362,362,736,362,362,362,440,362,362,437,362,362,362,453,453,453,453', -'453,453,453,453,453,453,453,321,453,453,776,435,453,453,321,362,432', -'776,362,409,751,362,362,321,406,362,776,362,453,753,453,362,453,453', -'453,453,453,453,453,362,453,760,766,1039,362,362,362,362,362,362,1039', -'894,403,362,362,769,453,400,894,1039,372,362,370,894,362,362,362,894', -'366,362,362,320,320,320,320,320,320,800,365,19,320,320,802,1082,353', -'320,19,320,320,320,320,320,320,320,810,19,349,342,3,320,320,320,320', -'320,320,320,339,942,320,942,942,942,335,942,320,320,320,320,320,320', -'320,320,320,320,320,320,333,320,320,320,834,320,320,841,320,320,320', -'505,505,505,505,505,505,505,505,505,505,505,1072,505,505,546,328,505', -'505,1072,320,327,546,320,1072,852,320,320,1072,853,320,546,320,505,324', -'505,320,505,505,505,505,505,505,505,320,505,,,369,320,320,320,320,320', -'320,369,,,320,320,505,505,,,369,,320,,,320,320,320,,,320,320,897,897', -'897,897,897,897,,,,897,897,,,,897,,897,897,897,897,897,897,897,312,312', -'312,312,312,897,897,897,897,897,897,897,,,897,561,561,561,561,561,897', -'897,897,897,897,897,897,897,897,897,897,897,,897,897,897,,897,897,,897', -'897,897,557,557,557,557,557,557,557,557,557,557,557,,557,557,,,557,557', -',897,,,897,,,897,897,,,897,,897,557,,557,897,557,557,557,557,557,557', -'557,897,557,,,,897,897,897,897,897,897,,,,897,897,,557,,,,,897,,,897', -'897,897,,,897,897,315,315,315,315,315,315,,,,315,315,,,,315,,315,315', -'315,315,315,315,315,534,534,534,534,534,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,918,918,918,918,918,918,918,918,918,918,918', -',918,918,,,918,918,,315,,,315,,,315,315,,,315,,315,918,,918,315,918', -'918,918,918,918,918,918,315,918,,,,315,315,315,315,315,315,,,,315,315', -',918,,,,,315,,,315,315,315,,,315,315,934,934,934,934,934,934,,,,934', -'934,,,,934,,934,934,934,934,934,934,934,,,,,,934,934,934,934,934,934', -'934,,,934,,,,,,934,934,934,934,934,934,934,934,934,934,934,934,,934', -'934,934,,934,934,,934,934,934,294,294,294,294,294,294,294,294,294,294', -'294,,294,294,,,294,294,,934,,,934,,,934,934,,,934,,934,294,,294,934', -'294,294,294,294,294,294,294,934,294,,,,934,934,934,934,934,934,,,,934', -'934,,294,,,,,934,,,934,934,934,,,934,934,935,935,935,935,935,935,,,', -'935,935,,,,935,,935,935,935,935,935,935,935,,,,,,935,935,935,935,935', -'935,935,,,935,,,,,,935,935,935,935,935,935,935,935,935,935,935,935,', -'935,935,935,,935,935,,935,935,935,807,807,807,807,807,807,807,807,807', -'807,807,,807,807,,,807,807,,935,,,935,,,935,935,,,935,,935,807,,807', -'935,807,807,807,807,807,807,807,935,807,,,,935,935,935,935,935,935,', -',,935,935,,807,,,,,935,,,935,935,935,,,935,935,964,964,964,964,964,964', -',,,964,964,,,,964,,964,964,964,964,964,964,964,,,,,,964,964,964,964', -'964,964,964,,,964,,,,,,964,964,964,964,964,964,964,964,964,964,964,964', -',964,964,964,,964,964,,964,964,964,24,24,24,24,24,24,24,24,24,24,24', -',24,24,,,24,24,,964,,,964,,,964,964,,,964,,964,24,,24,964,24,24,24,24', -'24,24,24,964,24,,,,964,964,964,964,964,964,,,,964,964,,24,,,,,964,,', -'964,964,964,,,964,964,246,246,246,246,246,246,,,,246,246,,,,246,,246', -'246,246,246,246,246,246,,,,,,246,246,246,246,246,246,246,,,246,,,,,', -'246,246,246,246,246,246,246,246,246,246,246,246,,246,246,246,,246,246', -',246,246,246,484,484,484,484,484,484,484,484,484,484,484,,484,484,,', -'484,484,,246,,,246,,,246,246,,,246,,246,484,,484,246,484,484,484,484', -'484,484,484,246,484,,,,246,246,246,246,246,246,,,,246,246,,,,,,,246', -',,246,246,246,,,246,246,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,485,485,485,485,485,485,485,485,485,485,485,,485,485,,', -'485,485,,606,,,606,,,606,606,,,606,,606,485,,485,606,485,485,485,485', -'485,485,485,606,485,,,,606,606,606,606,606,606,,,,606,606,,,,,,,606', -',,606,606,606,,,606,606,609,609,609,609,609,609,,,,609,609,,,,609,,609', -'609,609,609,609,609,609,,,,,,609,609,609,609,609,609,609,,,609,,,,,', -'609,609,609,609,609,609,609,609,609,609,609,609,,609,609,609,,609,609', -',609,609,609,504,504,504,504,504,504,504,504,,504,504,,,,,,504,504,', -'609,,,609,,,609,609,,,609,,609,504,,504,609,504,504,504,504,504,504', -'504,609,504,,,,609,609,609,609,609,609,,,,609,609,,,,,,,609,,,609,609', -'609,,,609,609,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,496,496,496,496,496,496,496,,,496,496', -',,,,,496,496,,36,,,36,,,36,36,,,36,,36,496,,496,36,496,496,496,496,496', -'496,496,36,496,,,,36,36,36,36,36,36,,,,36,36,,,,,,,36,,,36,36,36,,,36', -'36,222,222,222,222,222,222,,,,222,222,,,,222,,222,222,222,222,222,222', -'222,,,,,,222,222,222,222,222,222,222,,,222,,,,,,222,222,222,222,222', -'222,222,222,222,222,222,222,,222,222,222,,222,222,,222,222,222,497,497', -'497,497,497,497,497,,,497,497,,,,,,497,497,,222,,,222,,,222,222,,,222', -',222,497,,497,222,497,497,497,497,497,497,497,222,497,,,,222,222,222', -'222,222,222,,,,222,222,,,,,,,222,,,222,222,222,,,222,222,426,426,426', -'426,426,426,,,,426,426,,,,426,,426,426,426,426,426,426,426,,,,,,426', -'426,426,426,426,426,426,,,426,,,,,,426,426,426,426,426,426,426,426,426', -'426,426,426,,426,426,426,,426,426,,426,426,426,503,503,503,503,503,503', -'503,,,503,503,,,,,,503,503,,426,,,426,,,426,426,,,426,,426,503,,503', -'426,503,503,503,503,503,503,503,426,503,,,,426,426,426,426,426,426,', -',,426,426,,,,,,,426,,,426,426,426,,,426,426,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,346,346,346,346,346,346,346,346,346,346', -',346,346,346,,346,346,,346,346,346,499,499,499,499,499,499,499,,,499', -'499,,,,,,499,499,,346,,,346,,,346,346,,,346,,346,499,,499,346,499,499', -'499,499,499,499,499,346,499,,,,346,346,346,346,346,346,,,,346,346,,', -',,,,346,,,346,346,346,,,346,346,831,831,831,831,831,831,,,,831,831,', -',,831,,831,831,831,831,831,831,831,,,,,,831,831,831,831,831,831,831', -',,831,,,,,,831,831,831,831,831,831,831,831,831,831,831,831,,831,831', -'831,,831,831,,831,831,831,498,498,498,498,498,498,498,,,498,498,,,,', -',498,498,,831,,,831,,,831,831,,,831,,831,498,,498,831,498,498,498,498', -'498,498,498,831,498,,,,831,831,831,831,831,831,,,,831,831,,,,,,,831', -',,831,831,831,,,831,831,850,850,850,850,850,850,,,,850,850,,,,850,,850', -'850,850,850,850,850,850,,,,,,850,850,850,850,850,850,850,,,850,,,,,', -'850,850,850,850,850,850,850,850,850,850,850,850,,850,850,850,,850,850', -',850,850,850,556,,,,,,,,,,,,,,,,556,556,,850,,,850,,494,850,850,,,850', -',850,556,,556,850,556,556,556,556,494,494,556,850,556,,,,850,850,850', -'850,850,850,,,494,850,850,,494,494,494,494,,850,,,850,850,850,,,850', -'850,859,859,859,859,859,859,,,,859,859,,,,859,,859,859,859,859,859,859', -'859,,,,,,859,859,859,859,859,859,859,,,859,,,,,,859,859,859,859,859', -'859,859,859,859,859,859,859,,859,859,859,,859,859,,859,859,859,500,500', -'500,500,500,500,500,,,500,500,,,,,,500,500,,859,,,859,,,859,859,,,859', -',859,500,,500,859,500,500,500,500,500,500,500,859,500,,,,859,859,859', -'859,859,859,,,,859,859,,,,,,,859,,,859,859,859,,,859,859,774,774,774', -'774,774,774,,,,774,774,,,,774,,774,774,774,774,774,774,774,,,,,,774', -'774,774,774,774,774,774,,,774,,,,,,774,774,774,774,774,774,774,774,774', -'774,774,774,,774,774,774,,774,774,,774,774,774,493,,,,,,,,,,,,,,,,493', -'493,,774,,,774,,,774,774,,,774,,774,493,,493,774,493,493,493,493,,,', -'774,,,,,774,774,774,774,774,774,,,,774,774,,,,,,,774,,,774,774,774,', -',774,774,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,492,,,,,,,,,,,,,', -',,492,492,,2,,,2,,,2,2,,,2,,2,492,,492,2,492,492,492,492,,,,2,,,,,2', -'2,2,2,2,2,,,,2,2,,,,,,,2,,,2,2,2,,,2,2,785,785,785,785,785,785,,,,785', -'785,,,,785,,785,785,785,785,785,785,785,,,,,,785,785,785,785,785,785', -'785,,,785,,,,,,785,785,785,785,785,785,785,785,785,785,785,785,,785', -'785,785,,785,785,,785,785,785,,,,,,,,,,,,,,,,,,,,785,,,785,,,785,785', -',,785,,785,,,,785,,,,,,,,785,,,,,785,785,785,785,785,785,,,,785,785', -',,,,,,785,,,785,785,785,,,785,785,1020,1020,1020,1020,1020,1020,,,,1020', -'1020,,,,1020,,1020,1020,1020,1020,1020,1020,1020,,,,,,1020,1020,1020', -'1020,1020,1020,1020,,,1020,,,,,,1020,1020,1020,1020,1020,1020,1020,1020', -'1020,1020,1020,1020,,1020,1020,1020,,1020,1020,,1020,1020,1020,,,,,', -',,,,,,,,,,,,,,1020,,,1020,,,1020,1020,,,1020,,1020,,,,1020,,,,,,,,1020', -',,,,1020,1020,1020,1020,1020,1020,,,,1020,1020,,,,,,,1020,,,1020,1020', -'1020,,,1020,1020,1019,1019,1019,1019,1019,1019,,,,1019,1019,,,,1019', -',1019,1019,1019,1019,1019,1019,1019,,,,,,1019,1019,1019,1019,1019,1019', -'1019,,,1019,,,,,,1019,1019,1019,1019,1019,1019,1019,1019,1019,1019,1019', -'1019,,1019,1019,1019,,1019,1019,,1019,1019,1019,,,,,,,,,,,,,,,,,,,,1019', -',,1019,,,1019,1019,,,1019,,1019,,,,1019,,,,,,,,1019,,,,,1019,1019,1019', -'1019,1019,1019,,,,1019,1019,,,,,,,1019,,,1019,1019,1019,,,1019,1019', -'1014,1014,1014,1014,1014,1014,,,,1014,1014,,,,1014,,1014,1014,1014,1014', -'1014,1014,1014,,,,,,1014,1014,1014,1014,1014,1014,1014,,,1014,,,,,,1014', -'1014,1014,1014,1014,1014,1014,1014,1014,1014,1014,1014,,1014,1014,1014', -',1014,1014,,1014,1014,1014,,,,,,,,,,,,,,,,,,,,1014,,,1014,,,1014,1014', -',,1014,,1014,,,,1014,,,,,,,,1014,,,,,1014,1014,1014,1014,1014,1014,', -',,1014,1014,,,,,,,1014,,,1014,1014,1014,,,1014,1014,860,860,860,860', -'860,860,,,,860,860,,,,860,,860,860,860,860,860,860,860,,,,,,860,860', -'860,860,860,860,860,,,860,,,,,,860,860,860,860,860,860,860,860,860,860', -'860,860,,860,860,860,,860,860,,860,860,860,,,,,,,,,,,,,,,,,,,,860,,', -'860,,,860,860,,,860,,860,,,,860,,,,,,,,860,,,,,860,860,860,860,860,860', -',,,860,860,,,,,,,860,,,860,860,860,,,860,860,993,993,993,993,993,993', -',,,993,993,,,,993,,993,993,993,993,993,993,993,,,,,,993,993,993,993', -'993,993,993,,,993,,,,,,993,993,993,993,993,993,993,993,993,993,993,993', -',993,993,993,,993,993,,993,993,993,,,,,,,,,,,,,,,,,,,,993,,,993,,,993', -'993,,,993,,993,,,,993,,,,,,,,993,,,,,993,993,993,993,993,993,,,,993', -'993,,,,,,,993,,,993,993,993,,,993,993,886,886,886,886,886,886,,,,886', -'886,,,,886,,886,886,886,886,886,886,886,,,,,,886,886,886,886,886,886', -'886,,,886,,,,,,886,886,886,886,886,886,886,886,886,886,886,886,,886', -'886,886,,886,886,,886,886,886,,,,,,,,,,,,,,,,,,,,886,,,886,,,886,886', -',,886,,886,,,,886,,,,,,,,886,,,,,886,886,886,886,886,886,,,,886,886', -',,,,,,886,,,886,886,886,,,886,886,786,786,786,786,786,786,,,,786,786', -',,,786,,786,786,786,786,786,786,786,,,,,,786,786,786,786,786,786,786', -',,786,,,,,,786,786,786,786,786,786,786,786,786,786,786,786,,786,786', -'786,,786,786,,786,786,786,,,,,,,,,,,,,,,,,,,,786,,,786,,,786,786,,,786', -',786,,,,786,,,,,,,,786,,,,,786,786,786,786,786,786,,,,786,786,,,,,,', -'786,,,786,786,786,,,786,786,792,792,792,792,792,792,,,,792,792,,,,792', -',792,792,792,792,792,792,792,,,,,,792,792,792,792,792,792,792,,,792', -',,,,,792,792,792,792,792,792,792,792,792,792,792,792,,792,792,792,,792', -'792,,792,792,792,,,,,,,,,,,,,,,,,,,,792,,,792,,,792,792,,,792,,792,', -',,792,,,,,,,,792,,,,,792,792,792,792,792,792,,,,792,792,,,,,,,792,,', -'792,792,792,,,792,792,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,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,,,,680,680,,,,,,,680,,,680,680,680,,,680,680,594', -'594,594,,594,,,,594,594,,,,594,,594,594,594,594,594,594,594,,,,,,594', -'594,594,594,594,594,594,,,594,,,,,,,594,,,594,594,594,594,594,594,594', -'594,,594,594,594,,594,594,,594,594,594,,,,,,,,,,,,,,,,,,,,594,,,594', -',,594,594,,,594,,,,,,594,,,,,,,,594,,,,,594,594,594,594,594,594,,,,594', -'594,,,,,,,594,,,594,594,594,,,594,594,553,553,553,,553,,,,553,553,,', -',553,,553,553,553,553,553,553,553,,,,,,553,553,553,553,553,553,553,', -',553,,,,,,,553,,,553,553,553,553,553,553,553,553,,553,553,553,,553,553', -',553,553,553,,,,,,,,,,,,,,,,,,,,553,,,553,,,553,553,,,553,,,,,,553,', -',,,,,,553,,,,,553,553,553,553,553,553,,,,553,553,,,,,,,553,,,553,553', -'553,,,553,553,558,558,558,,558,,,,558,558,,,,558,,558,558,558,558,558', -'558,558,,,,,,558,558,558,558,558,558,558,,,558,,,,,,,558,,,558,558,558', -'558,558,558,558,558,,558,558,558,,558,558,,558,558,558,,,,,,,,,,,,,', -',,,,,,558,,,558,,,558,558,,,558,,,,,,558,,,,,,,,558,,,,,558,558,558', -'558,558,558,,,,558,558,,,,,,,558,,,558,558,558,,,558,558,567,567,567', -',567,,,,567,567,,,,567,,567,567,567,567,567,567,567,,,,,,567,567,567', -'567,567,567,567,,,567,,,,,,,567,,,567,567,567,567,567,567,567,567,567', -'567,567,567,,567,567,,567,567,567,,,,,,,,,,,,,,,,,,,,567,,,567,,,567', -'567,,,567,,,,,,567,,,,,,,,567,,,,,567,567,567,567,567,567,,,,567,567', -',,,,,,567,,567,567,567,567,,,567,567,564,564,564,,564,,,,564,564,,,', -'564,,564,564,564,564,564,564,564,,,,,,564,564,564,564,564,564,564,,', -'564,,,,,,,564,,,564,564,564,564,564,564,564,564,564,564,564,564,,564', -'564,,564,564,564,,,,,,,,,,,,,,,,,,,,564,,,564,,,564,564,,,564,,564,', -',,564,,,,,,,,564,,,,,564,564,564,564,564,564,,,,564,564,,,,,,,564,,564', -'564,564,564,,,564,564,23,23,23,,23,,,,23,23,,,,23,,23,23,23,23,23,23', -'23,,,,,,23,23,23,23,23,23,23,,,23,,,,,,,23,,,23,23,23,23,23,23,23,23', -',23,23,23,,23,23,,23,23,23,,,,,,,,,,,,,,,,,,,,23,,,23,,,23,23,,,23,', -',,,,23,,,,,,,,23,,,,,23,23,23,23,23,23,,,,23,23,,,,,,,23,,,23,23,23', -',,23,23,32,32,32,,32,,,,32,32,,,,32,,32,32,32,32,32,32,32,,,,,,32,32', -'32,32,32,32,32,,,32,,,,,,,32,,,32,32,32,32,32,32,32,32,32,32,32,32,', -'32,32,,32,32,32,,,,,,,,,,,,,,,,,,,,32,,,32,,,32,32,,,32,,32,,32,,32', -',,,,,,,32,,,,,32,32,32,32,32,32,,,,32,32,,,,,,,32,,32,32,32,32,,,32', -'32,33,33,33,,33,,,,33,33,,,,33,,33,33,33,33,33,33,33,,,,,,33,33,33,33', -'33,33,33,,,33,,,,,,,33,,,33,33,33,33,33,33,33,33,33,33,33,33,,33,33', -',33,33,33,,,,,,,,,,,,,,,,,,,,33,,,33,,,33,33,,,33,,33,,33,,33,,,,,,', -',33,,,,,33,33,33,33,33,33,,,,33,33,,,,,,,33,,33,33,33,33,,,33,33,34', -'34,34,,34,,,,34,34,,,,34,,34,34,34,34,34,34,34,,,,,,34,34,34,34,34,34', -'34,,,34,,,,,,,34,,,34,34,34,34,34,34,34,34,34,34,34,34,,34,34,,34,34', -'34,,,,,,,,,,,,,,,,,,,,34,,,34,,,34,34,,,34,,34,,34,,34,,,,,,,,34,,,', -',34,34,34,34,34,34,,,,34,34,,,,,,,34,,34,34,34,34,,,34,34,37,37,37,', -'37,,,,37,37,,,,37,,37,37,37,37,37,37,37,,,,,,37,37,37,37,37,37,37,,', -'37,,,,,,,37,,,37,37,37,37,37,37,37,37,,37,37,37,,37,37,,,,37,,,,,,,', -',,,,,,,,,,,,37,,,37,,,37,37,,,37,,37,,,,,,,,,,,,,,,,,37,37,37,37,37', -'37,,,,37,37,,,,,,,37,,,37,37,37,,,37,37,38,38,38,,38,,,,38,38,,,,38', -',38,38,38,38,38,38,38,,,,,,38,38,38,38,38,38,38,,,38,,,,,,,38,,,38,38', -'38,38,38,38,38,38,,38,38,38,,38,38,,,,38,,,,,,,,,,,,,,,,,,,,38,,,38', -',,38,38,,,38,,,,,,,,,,,,,,,,,,,38,38,38,38,38,38,,,,38,38,,,,38,,,38', -',,38,38,38,,,38,38,1036,1036,1036,,1036,,,,1036,1036,,,,1036,,1036,1036', -'1036,1036,1036,1036,1036,,,,,,1036,1036,1036,1036,1036,1036,1036,,,1036', -',,,,,,1036,,,1036,1036,1036,1036,1036,1036,1036,1036,1036,1036,1036', -'1036,,1036,1036,,1036,1036,1036,,,,,,,,,,,,,,,,,,,,1036,,,1036,,,1036', -'1036,,,1036,,1036,,1036,,1036,,,,,,,,1036,,,,,1036,1036,1036,1036,1036', -'1036,,,,1036,1036,,,,,,,1036,,1036,1036,1036,1036,,,1036,1036,45,45', -'45,,45,,,,45,45,,,,45,,45,45,45,45,45,45,45,,,,,,45,45,45,45,45,45,45', -',,45,,,,,,,45,,,45,45,45,45,45,45,45,45,,45,45,45,,45,45,,45,45,45,', -',,,,,,,,,,,,,,,,,,45,,,45,,,45,45,,,45,,,,,,45,,,,,,,,45,,,,,45,45,45', -'45,45,45,,,,45,45,,,,,,,45,,,45,45,45,,,45,45,46,46,46,,46,,,,46,46', -',,,46,,46,46,46,46,46,46,46,,,,,,46,46,46,46,46,46,46,,,46,,,,,,,46', -',,46,46,46,46,46,46,46,46,,46,46,46,,46,46,,46,46,46,,,,,,,,,,,,,,,', -',,,,46,,,46,,,46,46,,,46,,,,,,46,,,,,,,,46,,,,,46,46,46,46,46,46,,,', -'46,46,,,,,,,46,,,46,46,46,,,46,46,48,48,48,,48,,,,48,48,,,,48,,48,48', -'48,48,48,48,48,,,,,,48,48,48,48,48,48,48,,,48,,,,,,,48,,,48,48,48,48', -'48,48,48,48,,48,48,48,,48,48,,48,48,48,,,,,,,,,,,,,,,,,,,,48,,,48,,', -'48,48,,,48,,,,,,48,,,,,,,,48,,,,,48,48,48,48,48,48,,,,48,48,,,,,,,48', -',,48,48,48,,,48,48,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,63,63,63,63,63,,,,63,63,,,,,,,63,,63,63,63,63', -',,63,63,67,67,67,,67,,,,67,67,,,,67,,67,67,67,67,67,67,67,,,,,,67,67', -'67,67,67,67,67,,,67,,,,,,,67,,,67,67,67,67,67,67,67,67,,67,67,67,,67', -'67,,67,67,67,,,,,,,,,,,,,,,,,,,,67,,,67,,,67,67,,,67,,,,,,67,,,,,,,', -'67,,,,,67,67,67,67,67,67,,,,67,67,,,,,,,67,,,67,67,67,,,67,67,68,68', -'68,,68,,,,68,68,,,,68,,68,68,68,68,68,68,68,,,,,,68,68,68,68,68,68,68', -',,68,,,,,,,68,,,68,68,68,68,68,68,68,68,,68,68,68,,68,68,,68,68,68,', -',,,,,,,,,,,,,,,,,,68,,,68,,,68,68,,,68,,,,,,68,,,,,,,,68,,,,,68,68,68', -'68,68,68,,,,68,68,,,,,,,68,,,68,68,68,,,68,68,71,71,71,,71,,,,71,71', -',,,71,,71,71,71,71,71,71,71,,,,,,71,71,71,71,71,71,71,,,71,,,,,,,71', -',,71,71,71,71,71,71,71,71,,71,71,71,,71,71,,71,71,71,,,,,,,,,,,,,,,', -',,,,71,,,71,,,71,71,,,71,,,,,,71,,,,,,,,71,,,,,71,71,71,71,71,71,,,', -'71,71,71,,,,,71,71,,,71,71,71,,,71,71,72,72,72,,72,,,,72,72,,,,72,,72', -'72,72,72,72,72,72,,,,,,72,72,72,72,72,72,72,,,72,,,,,,,72,,,72,72,72', -'72,72,72,72,72,,72,72,72,,72,72,,,,72,,,,,,,,,,,,,,,,,,,,72,,,72,,,72', -'72,,,72,,72,,,,,,,,,,,,,,,,,72,72,72,72,72,72,,,,72,72,,,,,,,72,,,72', -'72,72,,,72,72,988,988,988,,988,,,,988,988,,,,988,,988,988,988,988,988', -'988,988,,,,,,988,988,988,988,988,988,988,,,988,,,,,,,988,,,988,988,988', -'988,988,988,988,988,,988,988,988,,988,988,,,,988,,,,,,,,,,,,,,,,,,,', -'988,,,988,,,988,988,,,988,,,,,,,,,,,,,,,,,,,988,988,988,988,988,988', -',,,988,988,,,,,,,988,,,988,988,988,,,988,988,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,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,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,131,131,131,131,,,,131,131,,,,,,,131,,,131,131', -'131,,,131,131,132,132,132,,132,,,,132,132,,,,132,,132,132,132,132,132', -'132,132,,,,,,132,132,132,132,132,132,132,,,132,,,,,,,132,,,132,132,132', -'132,132,132,132,132,,132,132,132,,132,132,,132,132,132,,,,,,,,,,,,,', -',,,,,,132,,,132,,,132,132,,,132,,,,,,132,,,,,,,,132,,,,,132,132,132', -'132,132,132,,,,132,132,,,,,,,132,,,132,132,132,,,132,132,133,133,133', -',133,,,,133,133,,,,133,,133,133,133,133,133,133,133,,,,,,133,133,133', -'133,133,133,133,,,133,,,,,,,133,,,133,133,133,133,133,133,133,133,,133', -'133,133,,133,133,,133,133,133,,,,,,,,,,,,,,,,,,,,133,,,133,,,133,133', -',,133,,,,,,133,,,,,,,,133,,,,,133,133,133,133,133,133,,,,133,133,,,', -',,,133,,,133,133,133,,,133,133,134,134,134,,134,,,,134,134,,,,134,,134', -'134,134,134,134,134,134,,,,,,134,134,134,134,134,134,134,,,134,,,,,', -',134,,,134,134,134,134,134,134,134,134,,134,134,134,,134,134,,134,134', -'134,,,,,,,,,,,,,,,,,,,,134,,,134,,,134,134,,,134,,,,,,134,,,,,,,,134', -',,,,134,134,134,134,134,134,,,,134,134,,,,,,,134,,,134,134,134,,,134', -'134,135,135,135,135,135,,,,135,135,,,,135,,135,135,135,135,135,135,135', -',,,,,135,135,135,135,135,135,135,,,135,,,,,,135,135,,135,135,135,135', -'135,135,135,135,135,,135,135,135,,135,135,,135,135,135,,,,,,,,,,,,,', -',,,,,,135,,,135,,,135,135,,,135,,135,,,,135,,,,,,,,135,,,,,135,135,135', -'135,135,135,,,,135,135,,,,,,,135,,,135,135,135,,,135,135,963,963,963', -',963,,,,963,963,,,,963,,963,963,963,963,963,963,963,,,,,,963,963,963', -'963,963,963,963,,,963,,,,,,,963,,,963,963,963,963,963,963,963,963,,963', -'963,963,,963,963,,963,963,963,,,,,,,,,,,,,,,,,,,,963,,,963,,,963,963', -',,963,,963,,,,963,,,,,,,,963,,,,,963,963,963,963,963,963,,,,963,963', -',,,,,,963,,,963,963,963,,,963,963,223,223,223,,223,,,,223,223,,,,223', +'461,329,788,788,1073,718,718,461,461,461,603,963,1070,461,461,708,461', +'769,1075,709,22,835,1072,771,680,461,470,470,686,355,402,770,65,679', +'318,405,461,461,356,461,461,461,461,461,939,768,733,688,1087,613,890', +'363,1074,92,13,835,22,476,719,364,367,92,686,889,719,62,317,461,461', +'461,461,461,461,461,461,461,461,461,461,461,461,680,708,461,461,461', +'709,461,329,771,679,461,788,402,461,718,1075,770,405,461,62,461,316', +'461,461,461,461,461,461,461,603,461,461,461,476,603,470,708,1073,65', +'708,709,769,1073,709,963,461,461,771,461,963,461,1075,682,688,708,770', +'1075,461,709,682,682,682,355,461,682,682,682,355,682,768,733,356,314', +'613,890,363,356,939,682,682,682,1087,939,364,367,1074,1087,29,682,682', +'1074,682,682,682,682,682,889,438,703,889,878,889,878,878,878,525,878', +'914,856,334,334,856,1051,703,1051,1051,1051,615,1051,682,682,682,682', +'682,682,682,682,682,682,682,682,682,682,782,782,682,682,682,878,682', +'682,616,711,682,738,738,682,682,238,682,1051,682,29,682,438,682,682', +'682,682,682,682,682,841,682,914,682,525,525,525,959,615,959,959,959', +'29,959,607,615,682,682,682,682,615,682,805,682,615,525,334,334,682,805', +'805,805,616,711,682,805,805,617,805,616,711,617,615,238,616,711,483', +'805,616,711,892,239,1019,841,1019,824,606,241,805,805,841,805,805,805', +'805,805,616,711,750,841,750,750,750,378,750,300,44,44,483,379,378,1005', +'483,483,1005,959,379,841,803,805,805,805,805,805,805,805,805,805,805', +'805,805,805,805,892,297,805,805,805,239,805,892,640,824,805,241,892', +'805,793,802,892,296,805,605,805,797,805,805,805,805,805,805,805,735', +'805,805,805,982,892,982,982,982,982,982,735,643,803,750,663,805,805', +'397,805,982,805,460,44,44,799,979,455,805,460,460,460,47,47,805,460', +'460,979,460,604,640,640,982,802,735,735,793,793,801,640,399,982,982', +'982,982,793,392,663,460,460,401,460,460,460,460,460,285,47,47,455,979', +'979,663,643,643,643,27,281,735,397,397,397,390,27,455,394,600,982,394', +'460,460,460,460,460,460,460,460,460,460,460,460,460,460,377,979,460', +'460,460,454,460,377,756,756,460,407,20,460,392,392,392,247,460,809,460', +'243,460,460,460,460,460,460,460,902,460,242,460,954,902,954,954,954', +'954,954,390,390,390,394,394,460,460,454,460,954,460,598,110,240,20,41', +'42,460,338,110,110,110,454,460,110,110,110,595,110,20,619,954,407,407', +'407,591,110,619,110,110,110,559,954,954,559,360,619,404,110,110,360', +'110,110,110,110,110,560,41,42,560,338,437,583,747,384,747,747,747,437', +'747,833,384,41,42,574,338,954,437,840,110,110,110,110,110,110,110,110', +'110,110,110,110,110,110,17,17,110,110,110,541,110,110,747,573,110,220', +'541,110,110,851,110,747,110,482,110,541,110,110,110,110,110,110,110', +'852,110,136,110,952,374,952,952,952,952,952,564,374,860,564,861,110', +'110,110,110,952,110,482,110,113,971,482,482,110,862,971,113,113,113', +'110,866,113,113,113,551,113,876,952,876,876,876,867,876,113,869,113', +'113,113,952,952,551,551,354,354,870,113,113,380,113,113,113,113,113', +'872,380,875,551,572,551,877,551,551,551,551,876,138,551,375,551,570', +'138,138,952,876,375,880,113,113,113,113,113,113,113,113,113,113,113', +'113,113,113,102,365,113,113,113,340,113,113,365,101,113,886,340,113', +'113,100,113,365,113,99,113,340,113,113,113,113,113,113,113,891,113,1094', +'113,950,376,950,950,950,950,950,895,376,1053,1053,382,113,113,113,113', +'950,113,382,113,681,5,73,899,113,901,5,681,681,681,113,910,681,681,681', +'502,681,584,950,584,584,584,569,584,565,681,681,681,681,950,950,502', +'502,484,920,921,681,681,381,681,681,681,681,681,923,381,924,502,925', +'502,927,502,502,502,502,584,308,502,928,502,898,308,929,950,584,898', +'49,681,681,681,681,681,681,681,681,681,681,681,681,681,681,562,561,681', +'681,681,712,681,681,43,943,681,944,712,681,681,555,681,712,681,554,681', +'712,681,681,681,681,681,681,681,427,681,681,681,948,430,948,948,948', +'948,948,498,961,547,40,970,681,681,681,681,948,681,804,681,974,325,977', +'545,681,804,804,804,325,432,681,804,804,542,804,490,435,325,948,498', +'990,25,1078,498,498,498,498,948,948,948,948,490,490,993,804,804,995', +'804,804,804,804,804,537,1079,789,789,1083,490,789,789,789,490,490,490', +'490,1014,487,1014,1014,1014,1000,1014,472,948,1009,804,804,804,804,804', +'804,804,804,804,804,804,804,804,804,1010,497,804,804,804,960,804,960', +'960,960,804,960,1011,804,1014,1012,1013,535,804,1015,804,532,804,804', +'804,804,804,804,804,531,804,462,804,497,1025,1028,1029,497,497,497,497', +'1030,323,960,1031,804,804,1033,804,323,804,320,320,320,320,320,320,804', +'323,322,320,320,486,804,18,320,322,320,320,320,320,320,320,320,1039', +'322,16,15,485,320,320,320,320,320,320,320,449,452,320,1052,1057,1058', +'664,442,320,320,320,320,320,320,320,320,320,320,320,320,368,320,320', +'320,366,320,320,453,320,320,320,442,442,442,442,442,442,442,442,442', +'442,442,321,442,442,774,669,442,442,321,320,362,774,320,361,675,320', +'320,321,656,320,774,320,442,684,442,320,442,442,442,442,442,442,442', +'320,442,683,687,237,320,320,320,320,320,320,237,1086,690,320,320,692', +'442,695,442,237,697,320,650,347,320,320,320,705,707,320,320,602,602', +'602,602,602,602,342,515,50,602,602,710,3,514,602,50,602,602,602,602', +'602,602,602,713,50,714,339,647,602,602,602,602,602,602,602,717,335,602', +'724,333,1,328,448,602,602,602,602,602,602,602,602,602,602,602,602,734', +'602,602,602,624,602,602,621,602,602,602,448,448,448,448,448,448,448', +'448,448,448,448,893,448,448,992,1085,448,448,893,602,327,992,602,893', +'1084,602,602,893,749,602,992,602,448,396,448,602,448,448,448,448,448', +'448,448,602,448,751,758,997,602,602,602,602,602,602,997,998,764,602', +'602,503,448,767,998,997,324,602,1069,,602,602,602,998,,602,602,790,790', +'790,790,790,790,,,999,790,790,,,,790,999,790,790,790,790,790,790,790', +',999,,,,790,790,790,790,790,790,790,,945,790,945,945,945,,945,790,790', +'790,790,790,790,790,790,790,790,790,790,,790,790,790,,790,790,,790,790', +'790,294,294,294,294,294,294,294,294,294,294,294,1001,294,294,19,,294', +'294,1001,790,,19,790,,,790,790,1001,,790,19,790,294,,294,790,294,294', +'294,294,294,294,294,790,294,,,1035,790,790,790,790,790,790,1035,1043', +',790,790,,294,,1043,1035,,790,,,790,790,790,1043,,790,790,896,896,896', +'896,896,896,,,,896,896,,,,896,,896,896,896,896,896,896,896,530,530,530', +'530,530,896,896,896,896,896,896,896,,1045,896,1045,1045,1045,,1045,896', +'896,896,896,896,896,896,896,896,896,896,896,,896,896,896,,896,896,,896', +'896,896,552,552,552,552,552,552,552,552,552,552,552,1076,552,552,,,552', +'552,1076,896,,,896,1076,,896,896,1076,,896,,896,552,,552,896,552,552', +'552,552,552,552,552,896,552,,,,896,896,896,896,896,896,,,,896,896,,552', +',,,,896,,,896,896,896,,,896,896,885,885,885,885,885,885,,,,885,885,', +',,885,,885,885,885,885,885,885,885,557,557,557,557,557,885,885,885,885', +'885,885,885,,,885,312,312,312,312,312,885,885,885,885,885,885,885,885', +'885,885,885,885,,885,885,885,,885,885,,885,885,885,501,501,501,501,501', +'501,501,501,501,501,501,,501,501,,,501,501,,885,,,885,,,885,885,,,885', +',885,501,,501,885,501,501,501,501,501,501,501,885,501,,,,885,885,885', +'885,885,885,,,,885,885,501,501,,,,,885,,,885,885,885,,,885,885,652,652', +'652,652,652,652,,,,652,652,,,,652,,652,652,652,652,652,652,652,9,9,9', +'9,9,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,24,24,24,24,24', +'24,24,24,24,24,24,,24,24,,,24,24,,652,,,652,,,652,652,,,652,,652,24', +',24,652,24,24,24,24,24,24,24,652,24,,,,652,652,652,652,652,652,,,,652', +'652,,24,,,,,652,,,652,652,652,,,652,652,246,246,246,246,246,246,,,,246', +'246,,,,246,,246,246,246,246,246,246,246,,,,,,246,246,246,246,246,246', +'246,,,246,,,,,,246,246,246,246,246,246,246,246,246,246,246,246,,246', +'246,246,,246,246,,246,246,246,806,806,806,806,806,806,806,806,806,806', +'806,,806,806,,,806,806,,246,,,246,,,246,246,,,246,,246,806,,806,246', +'806,806,806,806,806,806,806,246,806,,,,246,246,246,246,246,246,,,,246', +'246,,806,,,,,246,,,246,246,246,,,246,246,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,919,919,919', +'919,919,919,919,919,919,919,919,,919,919,,,919,919,,36,,,36,,,36,36', +',,36,,36,919,,919,36,919,919,919,919,919,919,919,36,919,,,,36,36,36', +'36,36,36,,,,36,36,,919,,,,,36,,,36,36,36,,,36,36,359,359,359,359,359', +'359,,,,359,359,,,,359,,359,359,359,359,359,359,359,,,,,,359,359,359', +'359,359,359,359,,1016,359,1016,1016,1016,,1016,359,359,359,359,359,359', +'359,359,359,359,359,359,,359,359,359,,359,359,,359,359,359,496,496,496', +'496,496,496,496,,1016,496,496,,,,,,496,496,,359,,,359,,,359,359,,,359', +',359,496,,496,359,496,496,496,496,496,496,496,359,496,,,,359,359,359', +'359,359,359,,,,359,359,,,,,,,359,,,359,359,359,,,359,359,358,358,358', +'358,358,358,,,,358,358,,,,358,,358,358,358,358,358,358,358,,,,,,358', +'358,358,358,358,358,358,,,358,,,,,,358,358,358,358,358,358,358,358,358', +'358,358,358,,358,358,358,,358,358,,358,358,358,481,481,481,481,481,481', +'481,481,481,481,481,,481,481,,,481,481,,358,,,358,,,358,358,,,358,,358', +'481,,481,358,481,481,481,481,481,481,481,358,481,,,,358,358,358,358', +'358,358,,,,358,358,,,,,,,358,,,358,358,358,,,358,358,772,772,772,772', +'772,772,,,,772,772,,,,772,,772,772,772,772,772,772,772,,,,,,772,772', +'772,772,772,772,772,,,772,,,,,,772,772,772,772,772,772,772,772,772,772', +'772,772,,772,772,772,,772,772,,772,772,772,492,492,492,492,492,492,492', +',,492,492,,,,,,492,492,,772,,,772,,,772,772,,,772,,772,492,,492,772', +'492,492,492,492,492,492,492,772,492,,,,772,772,772,772,772,772,,,,772', +'772,,,,,,,772,,,772,772,772,,,772,772,859,859,859,859,859,859,,,,859', +'859,,,,859,,859,859,859,859,859,859,859,,,,,,859,859,859,859,859,859', +'859,,,859,,,,,,859,859,859,859,859,859,859,859,859,859,859,859,,859', +'859,859,,859,859,,859,859,859,480,480,480,480,480,480,480,480,480,480', +'480,,480,480,,,480,480,,859,,,859,,,859,859,,,859,,859,480,,480,859', +'480,480,480,480,480,480,480,859,480,,,,859,859,859,859,859,859,,,,859', +'859,,,,,,,859,,,859,859,859,,,859,859,858,858,858,858,858,858,,,,858', +'858,,,,858,,858,858,858,858,858,858,858,,,,,,858,858,858,858,858,858', +'858,,,858,,,,,,858,858,858,858,858,858,858,858,858,858,858,858,,858', +'858,858,,858,858,,858,858,858,493,493,493,493,493,493,493,,,493,493', +',,,,,493,493,,858,,,858,,,858,858,,,858,,858,493,,493,858,493,493,493', +'493,493,493,493,858,493,,,,858,858,858,858,858,858,,,,858,858,,,,,,', +'858,,,858,858,858,,,858,858,849,849,849,849,849,849,,,,849,849,,,,849', +',849,849,849,849,849,849,849,,,,,,849,849,849,849,849,849,849,,,849', +',,,,,849,849,849,849,849,849,849,849,849,849,849,849,,849,849,849,,849', +'849,,849,849,849,494,494,494,494,494,494,494,,,494,494,,,,,,494,494', +',849,,,849,,,849,849,,,849,,849,494,,494,849,494,494,494,494,494,494', +'494,849,494,,,,849,849,849,849,849,849,,,,849,849,,,,,,,849,,,849,849', +'849,,,849,849,222,222,222,222,222,222,,,,222,222,,,,222,,222,222,222', +'222,222,222,222,,,,,,222,222,222,222,222,222,222,,,222,,,,,,222,222', +'222,222,222,222,222,222,222,222,222,222,,222,222,222,,222,222,,222,222', +'222,499,499,499,499,499,499,499,,,499,499,,,,,,499,499,,222,,,222,,', +'222,222,,,222,,222,499,,499,222,499,499,499,499,499,499,499,222,499', +',,,222,222,222,222,222,222,,,,222,222,,,,,,,222,,,222,222,222,,,222', +'222,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,500,500', +'500,500,500,500,500,500,,500,500,,,,,,500,500,,315,,,315,,,315,315,', +',315,,315,500,,500,315,500,500,500,500,500,500,500,315,500,,,,315,315', +'315,315,315,315,,,,315,315,,,,,,,315,,,315,315,315,,,315,315,937,937', +'937,937,937,937,,,,937,937,,,,937,,937,937,937,937,937,937,937,,,,,', +'937,937,937,937,937,937,937,,,937,,,,,,937,937,937,937,937,937,937,937', +'937,937,937,937,,937,937,937,,937,937,,937,937,937,495,495,495,495,495', +'495,495,,,495,495,,,,,,495,495,,937,,,937,,,937,937,,,937,,937,495,', +'495,937,495,495,495,495,495,495,495,937,495,,,,937,937,937,937,937,937', +',,,937,937,,,,,,,937,,,937,937,937,,,937,937,1024,1024,1024,1024,1024', +'1024,,,,1024,1024,,,,1024,,1024,1024,1024,1024,1024,1024,1024,,,,,,1024', +'1024,1024,1024,1024,1024,1024,,,1024,,,,,,1024,1024,1024,1024,1024,1024', +'1024,1024,1024,1024,1024,1024,,1024,1024,1024,,1024,1024,,1024,1024', +'1024,491,491,491,491,491,491,491,,,491,491,,,,,,491,491,,1024,,,1024', +',,1024,1024,,,1024,,1024,491,,491,1024,491,491,491,491,491,491,491,1024', +'491,,,,1024,1024,1024,1024,1024,1024,,,,1024,1024,,,,,,,1024,,,1024', +'1024,1024,,,1024,1024,1022,1022,1022,1022,1022,1022,,,,1022,1022,,,', +'1022,,1022,1022,1022,1022,1022,1022,1022,,,,,,1022,1022,1022,1022,1022', +'1022,1022,,,1022,,,,,,1022,1022,1022,1022,1022,1022,1022,1022,1022,1022', +'1022,1022,,1022,1022,1022,,1022,1022,,1022,1022,1022,489,,,,,,,,,,,', +',,,,489,489,,1022,,,1022,,,1022,1022,,,1022,,1022,489,,489,1022,489', +'489,489,489,,,,1022,,,,,1022,1022,1022,1022,1022,1022,,,,1022,1022,', +',,,,,1022,,,1022,1022,1022,,,1022,1022,935,935,935,935,935,935,,,,935', +'935,,,,935,,935,935,935,935,935,935,935,,,,,,935,935,935,935,935,935', +'935,,,935,,,,,,935,935,935,935,935,935,935,935,935,935,935,935,,935', +'935,935,,935,935,,935,935,935,488,,,,,,,,,,,,,,,,488,488,,935,,,935', +',,935,935,,,935,,935,488,,488,935,488,488,488,488,,,,935,,,,,935,935', +'935,935,935,935,,,,935,935,,,,,,,935,,,935,935,935,,,935,935,1017,1017', +'1017,1017,1017,1017,,,,1017,1017,,,,1017,,1017,1017,1017,1017,1017,1017', +'1017,,,,,,1017,1017,1017,1017,1017,1017,1017,,,1017,,,,,,1017,1017,1017', +'1017,1017,1017,1017,1017,1017,1017,1017,1017,,1017,1017,1017,,1017,1017', +',1017,1017,1017,,,,,,,,,,,,,,,,,,,,1017,,,1017,,,1017,1017,,,1017,,1017', +',,,1017,,,,,,,,1017,,,,,1017,1017,1017,1017,1017,1017,,,,1017,1017,', +',,,,,1017,,,1017,1017,1017,,,1017,1017,830,830,830,830,830,830,,,,830', +'830,,,,830,,830,830,830,830,830,830,830,,,,,,830,830,830,830,830,830', +'830,,,830,,,,,,830,830,830,830,830,830,830,830,830,830,830,830,,830', +'830,830,,830,830,,830,830,830,,,,,,,,,,,,,,,,,,,,830,,,830,,,830,830', +',,830,,830,,,,830,,,,,,,,830,,,,,830,830,830,830,830,830,,,,830,830', +',,,,,,830,,,830,830,830,,,830,830,996,996,996,996,996,996,,,,996,996', +',,,996,,996,996,996,996,996,996,996,,,,,,996,996,996,996,996,996,996', +',,996,,,,,,996,996,996,996,996,996,996,996,996,996,996,996,,996,996', +'996,,996,996,,996,996,996,,,,,,,,,,,,,,,,,,,,996,,,996,,,996,996,,,996', +',996,,,,996,,,,,,,,996,,,,,996,996,996,996,996,996,,,,996,996,,,,,,', +'996,,,996,996,996,,,996,996,783,783,783,783,783,783,,,,783,783,,,,783', +',783,783,783,783,783,783,783,,,,,,783,783,783,783,783,783,783,,,783', +',,,,,783,783,783,783,783,783,783,783,783,783,783,783,,783,783,783,,783', +'783,,783,783,783,,,,,,,,,,,,,,,,,,,,783,,,783,,,783,783,,,783,,783,', +',,783,,,,,,,,783,,,,,783,783,783,783,783,783,,,,783,783,,,,,,,783,,', +'783,783,783,,,783,783,599,599,599,599,599,599,,,,599,599,,,,599,,599', +'599,599,599,599,599,599,,,,,,599,599,599,599,599,599,599,,,599,,,,,', +'599,599,599,599,599,599,599,599,599,599,599,599,,599,599,599,,599,599', +',599,599,599,,,,,,,,,,,,,,,,,,,,599,,,599,,,599,599,,,599,,599,,,,599', +',,,,,,,599,,,,,599,599,599,599,599,599,,,,599,599,,,,,,,599,,,599,599', +'599,,,599,599,784,784,784,784,784,784,,,,784,784,,,,784,,784,784,784', +'784,784,784,784,,,,,,784,784,784,784,784,784,784,,,784,,,,,,784,784', +'784,784,784,784,784,784,784,784,784,784,,784,784,784,,784,784,,784,784', +'784,,,,,,,,,,,,,,,,,,,,784,,,784,,,784,784,,,784,,784,,,,784,,,,,,,', +'784,,,,,784,784,784,784,784,784,,,,784,784,,,,,,,784,,,784,784,784,', +',784,784,967,967,967,967,967,967,,,,967,967,,,,967,,967,967,967,967', +'967,967,967,,,,,,967,967,967,967,967,967,967,,,967,,,,,,967,967,967', +'967,967,967,967,967,967,967,967,967,,967,967,967,,967,967,,967,967,967', +',,,,,,,,,,,,,,,,,,,967,,,967,,,967,967,,,967,,967,,,,967,,,,,,,,967', +',,,,967,967,967,967,967,967,,,,967,967,,,,,,,967,,,967,967,967,,,967', +'967,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,2,2,2,2,2,,,,2,2,,,,,,,2,,,2,2,2', +',,2,2,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,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,', +',,,346,346,346,346,346,346,,,,346,346,,,,,,,346,,,346,346,346,,,346', +'346,821,821,821,,821,,,,821,821,,,,821,,821,821,821,821,821,821,821', +',,,,,821,821,821,821,821,821,821,,,821,,,,,,,821,,,821,821,821,821,821', +'821,821,821,,821,821,821,,821,821,,821,821,821,,,,,,,,,,,,,,,,,,,,821', +',,821,,,821,821,,,821,,,,,,821,,,,,,,,821,,,,,821,821,821,821,821,821', +',,,821,821,,,,,,,821,,,821,821,821,,,821,821,475,475,475,,475,,,,475', +'475,,,,475,,475,475,475,475,475,475,475,,,,,,475,475,475,475,475,475', +'475,,,475,,,,,,,475,,,475,475,475,475,475,475,475,475,475,475,475,475', +',475,475,,475,475,475,,,,,,,,,,,,,,,,,,,,475,,,475,,,475,475,,,475,', +'475,,475,,475,,,,,,,,475,,,,,475,475,475,475,475,475,,,,475,475,,,,', +',,475,,475,475,475,475,,,475,475,8,8,8,8,8,,,,8,8,,,,8,,8,8,8,8,8,8', +'8,,,,,,8,8,8,8,8,8,8,,,8,,,,,,8,8,8,8,8,8,8,8,8,8,8,8,,8,8,8,,8,8,,8', +'8,8,,,,,,,,,,,,,,,,,,,,8,,,8,,,8,8,,,8,,8,,,,8,,,,,,,,8,,,,,8,8,8,8', +'8,8,,,,8,8,,,,,,,8,,,8,8,8,,,8,8,1040,1040,1040,,1040,,,,1040,1040,', +',,1040,,1040,1040,1040,1040,1040,1040,1040,,,,,,1040,1040,1040,1040', +'1040,1040,1040,,,1040,,,,,,,1040,,,1040,1040,1040,1040,1040,1040,1040', +'1040,1040,1040,1040,1040,,1040,1040,,1040,1040,1040,,,,,,,,,,,,,,,,', +',,,1040,,,1040,,,1040,1040,,,1040,,1040,,1040,,1040,,,,,,,,1040,,,,', +'1040,1040,1040,1040,1040,1040,,,,1040,1040,,,,,,,1040,,1040,1040,1040', +'1040,,,1040,1040,23,23,23,,23,,,,23,23,,,,23,,23,23,23,23,23,23,23,', +',,,,23,23,23,23,23,23,23,,,23,,,,,,,23,,,23,23,23,23,23,23,23,23,,23', +'23,23,,23,23,,23,23,23,,,,,,,,,,,,,,,,,,,,23,,,23,,,23,23,,,23,,,,,', +'23,,,,,,,,23,,,,,23,23,23,23,23,23,,,,23,23,,,,,,,23,,,23,23,23,,,23', +'23,991,991,991,,991,,,,991,991,,,,991,,991,991,991,991,991,991,991,', +',,,,991,991,991,991,991,991,991,,,991,,,,,,,991,,,991,991,991,991,991', +'991,991,991,,991,991,991,,991,991,,,,991,,,,,,,,,,,,,,,,,,,,991,,,991', +',,991,991,,,991,,,,,,,,,,,,,,,,,,,991,991,991,991,991,991,,,,991,991', +',,,,,,991,,,991,991,991,,,991,991,32,32,32,,32,,,,32,32,,,,32,,32,32', +'32,32,32,32,32,,,,,,32,32,32,32,32,32,32,,,32,,,,,,,32,,,32,32,32,32', +'32,32,32,32,32,32,32,32,,32,32,,32,32,32,,,,,,,,,,,,,,,,,,,,32,,,32', +',,32,32,,,32,,32,,32,,32,,,,,,,,32,,,,,32,32,32,32,32,32,,,,32,32,,', +',,,,32,,32,32,32,32,,,32,32,33,33,33,,33,,,,33,33,,,,33,,33,33,33,33', +'33,33,33,,,,,,33,33,33,33,33,33,33,,,33,,,,,,,33,,,33,33,33,33,33,33', +'33,33,33,33,33,33,,33,33,,33,33,33,,,,,,,,,,,,,,,,,,,,33,,,33,,,33,33', +',,33,,33,,33,,33,,,,,,,,33,,,,,33,33,33,33,33,33,,,,33,33,,,,,,,33,', +'33,33,33,33,,,33,33,34,34,34,,34,,,,34,34,,,,34,,34,34,34,34,34,34,34', +',,,,,34,34,34,34,34,34,34,,,34,,,,,,,34,,,34,34,34,34,34,34,34,34,34', +'34,34,34,,34,34,,34,34,34,,,,,,,,,,,,,,,,,,,,34,,,34,,,34,34,,,34,,34', +',34,,34,,,,,,,,34,,,,,34,34,34,34,34,34,,,,34,34,,,,,,,34,,34,34,34', +'34,,,34,34,37,37,37,,37,,,,37,37,,,,37,,37,37,37,37,37,37,37,,,,,,37', +'37,37,37,37,37,37,,,37,,,,,,,37,,,37,37,37,37,37,37,37,37,,37,37,37', +',37,37,,,,37,,,,,,,,,,,,,,,,,,,,37,,,37,,,37,37,,,37,,37,,,,,,,,,,,', +',,,,,37,37,37,37,37,37,,,,37,37,,,,,,,37,,,37,37,37,,,37,37,38,38,38', +',38,,,,38,38,,,,38,,38,38,38,38,38,38,38,,,,,,38,38,38,38,38,38,38,', +',38,,,,,,,38,,,38,38,38,38,38,38,38,38,,38,38,38,,38,38,,,,38,,,,,,', +',,,,,,,,,,,,,38,,,38,,,38,38,,,38,,,,,,,,,,,,,,,,,,,38,38,38,38,38,38', +',,,38,38,,,,38,,,38,,,38,38,38,,,38,38,966,966,966,,966,,,,966,966,', +',,966,,966,966,966,966,966,966,966,,,,,,966,966,966,966,966,966,966', +',,966,,,,,,,966,,,966,966,966,966,966,966,966,966,,966,966,966,,966', +'966,,966,966,966,,,,,,,,,,,,,,,,,,,,966,,,966,,,966,966,,,966,,966,', +',,966,,,,,,,,966,,,,,966,966,966,966,966,966,,,,966,966,,,,,,,966,,', +'966,966,966,,,966,966,940,940,940,,940,,,,940,940,,,,940,,940,940,940', +'940,940,940,940,,,,,,940,940,940,940,940,940,940,,,940,,,,,,,940,,,940', +'940,940,940,940,940,940,940,,940,940,940,,940,940,,,,940,,,,,,,,,,,', +',,,,,,,,940,,,940,,,940,940,,,940,,,,,,,,,,,,,,,,,,,940,940,940,940', +'940,940,,,,940,940,,,,,,,940,,,940,940,940,,,940,940,45,45,45,,45,,', +',45,45,,,,45,,45,45,45,45,45,45,45,,,,,,45,45,45,45,45,45,45,,,45,,', +',,,,45,,,45,45,45,45,45,45,45,45,,45,45,45,,45,45,,45,45,45,,,,,,,,', +',,,,,,,,,,,45,,,45,,,45,45,,,45,,,,,,45,,,,,,,,45,,,,,45,45,45,45,45', +'45,,,,45,45,,,,,,,45,,,45,45,45,,,45,45,46,46,46,,46,,,,46,46,,,,46', +',46,46,46,46,46,46,46,,,,,,46,46,46,46,46,46,46,,,46,,,,,,,46,,,46,46', +'46,46,46,46,46,46,,46,46,46,,46,46,,46,46,46,,,,,,,,,,,,,,,,,,,,46,', +',46,,,46,46,,,46,,,,,,46,,,,,,,,46,,,,,46,46,46,46,46,46,,,,46,46,,', +',,,,46,,,46,46,46,,,46,46,48,48,48,,48,,,,48,48,,,,48,,48,48,48,48,48', +'48,48,,,,,,48,48,48,48,48,48,48,,,48,,,,,,,48,,,48,48,48,48,48,48,48', +'48,,48,48,48,,48,48,,48,48,48,,,,,,,,,,,,,,,,,,,,48,,,48,,,48,48,,,48', +',,,,,48,,,,,,,,48,,,,,48,48,48,48,48,48,,,,48,48,,,,,,,48,,,48,48,48', +',,48,48,930,930,930,,930,,,,930,930,,,,930,,930,930,930,930,930,930', +'930,,,,,,930,930,930,930,930,930,930,,,930,,,,,,,930,,,930,930,930,930', +'930,930,930,930,,930,930,930,,930,930,,,,930,,,,,,,,,,,,,,,,,,,,930', +',,930,,,930,930,,,930,,,,,,,,,,,,,,,,,,,930,930,930,930,930,930,,,,930', +'930,,,,,,,930,,,930,930,930,,,930,930,918,918,918,,918,,,,918,918,,', +',918,,918,918,918,918,918,918,918,,,,,,918,918,918,918,918,918,918,', +',918,,,,,,,918,,,918,918,918,918,918,918,918,918,,918,918,918,,918,918', +',918,918,918,,,,,,,,,,,,,,,,,,,,918,,,918,,,918,918,,,918,,,,,,918,', +',,,,,,918,,,,,918,918,918,918,918,918,,,,918,918,,,,,,,918,,,918,918', +'918,,,918,918,917,917,917,,917,,,,917,917,,,,917,,917,917,917,917,917', +'917,917,,,,,,917,917,917,917,917,917,917,,,917,,,,,,,917,,,917,917,917', +'917,917,917,917,917,917,917,917,917,,917,917,,917,917,917,,,,,,,,,,', +',,,,,,,,,917,,,917,,,917,917,,,917,,,,917,,917,,,,,,,,917,,,,,917,917', +'917,917,917,917,,,,917,917,,,,,,,917,,917,917,917,917,,,917,917,67,67', +'67,,67,,,,67,67,,,,67,,67,67,67,67,67,67,67,,,,,,67,67,67,67,67,67,67', +',,67,,,,,,,67,,,67,67,67,67,67,67,67,67,,67,67,67,,67,67,,67,67,67,', +',,,,,,,,,,,,,,,,,,67,,,67,,,67,67,,,67,,,,,,67,,,,,,,,67,,,,,67,67,67', +'67,67,67,,,,67,67,,,,,,,67,,,67,67,67,,,67,67,68,68,68,,68,,,,68,68', +',,,68,,68,68,68,68,68,68,68,,,,,,68,68,68,68,68,68,68,,,68,,,,,,,68', +',,68,68,68,68,68,68,68,68,,68,68,68,,68,68,,68,68,68,,,,,,,,,,,,,,,', +',,,,68,,,68,,,68,68,,,68,,,,,,68,,,,,,,,68,,,,,68,68,68,68,68,68,,,', +'68,68,,,,,,,68,,,68,68,68,,,68,68,71,71,71,,71,,,,71,71,,,,71,,71,71', +'71,71,71,71,71,,,,,,71,71,71,71,71,71,71,,,71,,,,,,,71,,,71,71,71,71', +'71,71,71,71,,71,71,71,,71,71,,71,71,71,,,,,,,,,,,,,,,,,,,,71,,,71,,', +'71,71,,,71,,,,,,71,,,,,,,,71,,,,,71,71,71,71,71,71,,,,71,71,71,,,,,71', +'71,,,71,71,71,,,71,71,72,72,72,,72,,,,72,72,,,,72,,72,72,72,72,72,72', +'72,,,,,,72,72,72,72,72,72,72,,,72,,,,,,,72,,,72,72,72,72,72,72,72,72', +',72,72,72,,72,72,,,,72,,,,,,,,,,,,,,,,,,,,72,,,72,,,72,72,,,72,,72,', +',,,,,,,,,,,,,,,72,72,72,72,72,72,,,,72,72,,,,,,,72,,,72,72,72,,,72,72', +'897,897,897,,897,,,,897,897,,,,897,,897,897,897,897,897,897,897,,,,', +',897,897,897,897,897,897,897,,,897,,,,,,,897,,,897,897,897,897,897,897', +'897,897,,897,897,897,,897,897,,897,897,897,,,,,,,,,,,,,,,,,,,,897,,', +'897,,,897,897,,,897,,,,,,897,,,,,,,,897,,,,,897,897,897,897,897,897', +',,,897,897,,,,,,,897,,,897,897,897,,,897,897,883,883,883,,883,,,,883', +'883,,,,883,,883,883,883,883,883,883,883,,,,,,883,883,883,883,883,883', +'883,,,883,,,,,,,883,,,883,883,883,883,883,883,883,883,,883,883,883,', +'883,883,,883,883,883,,,,,,,,,,,,,,,,,,,,883,,,883,,,883,883,,,883,,', +',,,883,,,,,,,,883,,,,,883,883,883,883,883,883,,,,883,883,,,,,,,883,', +',883,883,883,,,883,883,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,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,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,131', +'131,131,131,,,,131,131,,,,,,,131,,,131,131,131,,,131,131,132,132,132', +',132,,,,132,132,,,,132,,132,132,132,132,132,132,132,,,,,,132,132,132', +'132,132,132,132,,,132,,,,,,,132,,,132,132,132,132,132,132,132,132,,132', +'132,132,,132,132,,132,132,132,,,,,,,,,,,,,,,,,,,,132,,,132,,,132,132', +',,132,,,,,,132,,,,,,,,132,,,,,132,132,132,132,132,132,,,,132,132,,,', +',,,132,,,132,132,132,,,132,132,133,133,133,,133,,,,133,133,,,,133,,133', +'133,133,133,133,133,133,,,,,,133,133,133,133,133,133,133,,,133,,,,,', +',133,,,133,133,133,133,133,133,133,133,,133,133,133,,133,133,,133,133', +'133,,,,,,,,,,,,,,,,,,,,133,,,133,,,133,133,,,133,,,,,,133,,,,,,,,133', +',,,,133,133,133,133,133,133,,,,133,133,,,,,,,133,,,133,133,133,,,133', +'133,134,134,134,,134,,,,134,134,,,,134,,134,134,134,134,134,134,134', +',,,,,134,134,134,134,134,134,134,,,134,,,,,,,134,,,134,134,134,134,134', +'134,134,134,,134,134,134,,134,134,,134,134,134,,,,,,,,,,,,,,,,,,,,134', +',,134,,,134,134,,,134,,,,,,134,,,,,,,,134,,,,,134,134,134,134,134,134', +',,,134,134,,,,,,,134,,,134,134,134,,,134,134,135,135,135,135,135,,,', +'135,135,,,,135,,135,135,135,135,135,135,135,,,,,,135,135,135,135,135', +'135,135,,,135,,,,,,135,135,,135,135,135,135,135,135,135,135,135,,135', +'135,135,,135,135,,135,135,135,,,,,,,,,,,,,,,,,,,,135,,,135,,,135,135', +',,135,,135,,,,135,,,,,,,,135,,,,,135,135,135,135,135,135,,,,135,135', +',,,,,,135,,,135,135,135,,,135,135,223,223,223,,223,,,,223,223,,,,223', ',223,223,223,223,223,223,223,,,,,,223,223,223,223,223,223,223,,,223', ',,,,,,223,,,223,223,223,223,223,223,223,223,,223,223,223,,223,223,,223', '223,223,,,,,,,,,,,,,,,,,,,,223,,,223,,,223,223,,,223,,223,,,,223,,,', ',,,,223,,,,,223,223,223,223,223,223,,,,223,223,,,,,,,223,,,223,223,223', ',,223,223,224,224,224,,224,,,,224,224,,,,224,,224,224,224,224,224,224', @@ -1293,1075 +1301,1073 @@ ',,,227,227,,,,,,,227,,,227,227,227,,,227,227,228,228,228,,228,,,,228', '228,,,,228,,228,228,228,228,228,228,228,,,,,,228,228,228,228,228,228', '228,,,228,,,,,,,228,,,228,228,228,228,228,228,228,228,228,228,228,228', ',228,228,,228,228,228,,,,,,,,,,,,,,,,,,,,228,,,228,,,228,228,,,228,', '228,,228,,228,,,,,,,,228,,,,,228,228,228,228,228,228,,,,228,228,,,,', -',,228,,228,228,228,228,,,228,228,232,232,232,,232,,,,232,232,,,,232', -',232,232,232,232,232,232,232,,,,,,232,232,232,232,232,232,232,,,232', -',,,,,,232,,,232,232,232,232,232,232,232,232,,232,232,232,,232,232,,232', -'232,232,,,,,,,,,,,,,,,,,,,,232,,,232,,,232,232,,,232,,,,,,232,,,,,,', -',232,,,,,232,232,232,232,232,232,,,,232,232,,,,,,,232,,,232,232,232', -',,232,232,233,233,233,,233,,,,233,233,,,,233,,233,233,233,233,233,233', -'233,,,,,,233,233,233,233,233,233,233,,,233,,,,,,,233,,,233,233,233,233', -'233,233,233,233,,233,233,233,,233,233,,233,233,233,,,,,,,,,,,,,,,,,', -',,233,,,233,,,233,233,,,233,,,,,,233,,,,,,,,233,,,,,233,233,233,233', -'233,233,,,,233,233,,,,,,,233,,,233,233,233,,,233,233,234,234,234,,234', -',,,234,234,,,,234,,234,234,234,234,234,234,234,,,,,,234,234,234,234', -'234,234,234,,,234,,,,,,,234,,,234,234,234,234,234,234,234,234,,234,234', -'234,,234,234,,234,234,234,,,,,,,,,,,,,,,,,,,,234,,,234,,,234,234,,,234', -',,,,,234,,,,,,,,234,,,,,234,234,234,234,234,234,,,,234,234,234,,,,,', -'234,,,234,234,234,,,234,234,8,8,8,8,8,,,,8,8,,,,8,,8,8,8,8,8,8,8,,,', -',,8,8,8,8,8,8,8,,,8,,,,,,8,8,8,8,8,8,8,8,8,8,8,8,,8,8,8,,8,8,,8,8,8', -',,,,,,,,,,,,,,,,,,,8,,,8,,,8,8,,,8,,8,,,,8,,,,,,,,8,,,,,8,8,8,8,8,8', -',,,8,8,,,,,,,8,,,8,8,8,,,8,8,245,245,245,,245,,,,245,245,,,,245,,245', -'245,245,245,245,245,245,,,,,,245,245,245,245,245,245,245,,,245,,,,,', -',245,,,245,245,245,245,245,245,245,245,,245,245,245,,245,245,,245,245', -'245,,,,,,,,,,,,,,,,,,,,245,,,245,,,245,245,,,245,,,,,,245,,,,,,,,245', -',,,,245,245,245,245,245,245,,,,245,245,,,,,,,245,,,245,245,245,,,245', -'245,938,938,938,,938,,,,938,938,,,,938,,938,938,938,938,938,938,938', -',,,,,938,938,938,938,938,938,938,,,938,,,,,,,938,,,938,938,938,938,938', -'938,938,938,,938,938,938,,938,938,,,,938,,,,,,,,,,,,,,,,,,,,938,,,938', -',,938,938,,,938,,,,,,,,,,,,,,,,,,,938,938,938,938,938,938,,,,938,938', -',,,,,,938,,,938,938,938,,,938,938,248,248,248,,248,,,,248,248,,,,248', -',248,248,248,248,248,248,248,,,,,,248,248,248,248,248,248,248,,,248', -',,,,,,248,,,248,248,248,248,248,248,248,248,,248,248,248,,248,248,,248', -'248,248,,,,,,,,,,,,,,,,,,,,248,,,248,,,248,248,,,248,,,,,,248,,,,,,', -',248,,,,,248,248,248,248,248,248,,,,248,248,,,,,,,248,,,248,248,248', -',,248,248,249,249,249,,249,,,,249,249,,,,249,,249,249,249,249,249,249', -'249,,,,,,249,249,249,249,249,249,249,,,249,,,,,,,249,,,249,249,249,249', -'249,249,249,249,,249,249,249,,249,249,,249,249,249,,,,,,,,,,,,,,,,,', -',,249,,,249,,,249,249,,,249,,,,,,249,,,,,,,,249,,,,,249,249,249,249', -'249,249,,,,249,249,,,,,,,249,,,249,249,249,,,249,249,250,250,250,,250', -',,,250,250,,,,250,,250,250,250,250,250,250,250,,,,,,250,250,250,250', -'250,250,250,,,250,,,,,,,250,,,250,250,250,250,250,250,250,250,,250,250', -'250,,250,250,,250,250,250,,,,,,,,,,,,,,,,,,,,250,,,250,,,250,250,,,250', -',,,,,250,,,,,,,,250,,,,,250,250,250,250,250,250,,,,250,250,,,,,,,250', -',,250,250,250,,,250,250,251,251,251,,251,,,,251,251,,,,251,,251,251', -'251,251,251,251,251,,,,,,251,251,251,251,251,251,251,,,251,,,,,,,251', -',,251,251,251,251,251,251,251,251,,251,251,251,,251,251,,251,251,251', -',,,,,,,,,,,,,,,,,,,251,,,251,,,251,251,,,251,,,,,,251,,,,,,,,251,,,', -',251,251,251,251,251,251,,,,251,251,,,,,,,251,,,251,251,251,,,251,251', -'252,252,252,,252,,,,252,252,,,,252,,252,252,252,252,252,252,252,,,,', -',252,252,252,252,252,252,252,,,252,,,,,,,252,,,252,252,252,252,252,252', -'252,252,,252,252,252,,252,252,,252,252,252,,,,,,,,,,,,,,,,,,,,252,,', -'252,,,252,252,,,252,,,,,,252,,,,,,,,252,,,,,252,252,252,252,252,252', -',,,252,252,,,,,,,252,,,252,252,252,,,252,252,253,253,253,,253,,,,253', -'253,,,,253,,253,253,253,253,253,253,253,,,,,,253,253,253,253,253,253', -'253,,,253,,,,,,,253,,,253,253,253,253,253,253,253,253,,253,253,253,', -'253,253,,253,253,253,,,,,,,,,,,,,,,,,,,,253,,,253,,,253,253,,,253,,', -',,,253,,,,,,,,253,,,,,253,253,253,253,253,253,,,,253,253,,,,,,,253,', -',253,253,253,,,253,253,254,254,254,,254,,,,254,254,,,,254,,254,254,254', -'254,254,254,254,,,,,,254,254,254,254,254,254,254,,,254,,,,,,,254,,,254', -'254,254,254,254,254,254,254,,254,254,254,,254,254,,254,254,254,,,,,', -',,,,,,,,,,,,,,254,,,254,,,254,254,,,254,,,,,,254,,,,,,,,254,,,,,254', -'254,254,254,254,254,,,,254,254,,,,,,,254,,,254,254,254,,,254,254,255', -'255,255,,255,,,,255,255,,,,255,,255,255,255,255,255,255,255,,,,,,255', -'255,255,255,255,255,255,,,255,,,,,,,255,,,255,255,255,255,255,255,255', -'255,,255,255,255,,255,255,,255,255,255,,,,,,,,,,,,,,,,,,,,255,,,255', -',,255,255,,,255,,,,,,255,,,,,,,,255,,,,,255,255,255,255,255,255,,,,255', -'255,,,,,,,255,,,255,255,255,,,255,255,256,256,256,,256,,,,256,256,,', -',256,,256,256,256,256,256,256,256,,,,,,256,256,256,256,256,256,256,', -',256,,,,,,,256,,,256,256,256,256,256,256,256,256,,256,256,256,,256,256', -',256,256,256,,,,,,,,,,,,,,,,,,,,256,,,256,,,256,256,,,256,,,,,,256,', -',,,,,,256,,,,,256,256,256,256,256,256,,,,256,256,,,,,,,256,,,256,256', -'256,,,256,256,257,257,257,,257,,,,257,257,,,,257,,257,257,257,257,257', -'257,257,,,,,,257,257,257,257,257,257,257,,,257,,,,,,,257,,,257,257,257', -'257,257,257,257,257,,257,257,257,,257,257,,257,257,257,,,,,,,,,,,,,', -',,,,,,257,,,257,,,257,257,,,257,,,,,,257,,,,,,,,257,,,,,257,257,257', -'257,257,257,,,,257,257,,,,,,,257,,,257,257,257,,,257,257,258,258,258', -',258,,,,258,258,,,,258,,258,258,258,258,258,258,258,,,,,,258,258,258', -'258,258,258,258,,,258,,,,,,,258,,,258,258,258,258,258,258,258,258,,258', -'258,258,,258,258,,258,258,258,,,,,,,,,,,,,,,,,,,,258,,,258,,,258,258', -',,258,,,,,,258,,,,,,,,258,,,,,258,258,258,258,258,258,,,,258,258,,,', -',,,258,,,258,258,258,,,258,258,259,259,259,,259,,,,259,259,,,,259,,259', -'259,259,259,259,259,259,,,,,,259,259,259,259,259,259,259,,,259,,,,,', -',259,,,259,259,259,259,259,259,259,259,,259,259,259,,259,259,,259,259', -'259,,,,,,,,,,,,,,,,,,,,259,,,259,,,259,259,,,259,,,,,,259,,,,,,,,259', -',,,,259,259,259,259,259,259,,,,259,259,,,,,,,259,,,259,259,259,,,259', -'259,260,260,260,,260,,,,260,260,,,,260,,260,260,260,260,260,260,260', -',,,,,260,260,260,260,260,260,260,,,260,,,,,,,260,,,260,260,260,260,260', -'260,260,260,,260,260,260,,260,260,,260,260,260,,,,,,,,,,,,,,,,,,,,260', -',,260,,,260,260,,,260,,,,,,260,,,,,,,,260,,,,,260,260,260,260,260,260', -',,,260,260,,,,,,,260,,,260,260,260,,,260,260,261,261,261,,261,,,,261', -'261,,,,261,,261,261,261,261,261,261,261,,,,,,261,261,261,261,261,261', -'261,,,261,,,,,,,261,,,261,261,261,261,261,261,261,261,,261,261,261,', -'261,261,,261,261,261,,,,,,,,,,,,,,,,,,,,261,,,261,,,261,261,,,261,,', -',,,261,,,,,,,,261,,,,,261,261,261,261,261,261,,,,261,261,,,,,,,261,', -',261,261,261,,,261,261,262,262,262,,262,,,,262,262,,,,262,,262,262,262', -'262,262,262,262,,,,,,262,262,262,262,262,262,262,,,262,,,,,,,262,,,262', -'262,262,262,262,262,262,262,,262,262,262,,262,262,,262,262,262,,,,,', -',,,,,,,,,,,,,,262,,,262,,,262,262,,,262,,,,,,262,,,,,,,,262,,,,,262', -'262,262,262,262,262,,,,262,262,,,,,,,262,,,262,262,262,,,262,262,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,263,263,,,,,,,,,,,,,,,,,,,,263,,,263', -',,263,263,,,263,,,,,,263,,,,,,,,263,,,,,263,263,263,263,263,263,,,,263', -'263,,,,,,,263,,,263,263,263,,,263,263,264,264,264,,264,,,,264,264,,', -',264,,264,264,264,264,264,264,264,,,,,,264,264,264,264,264,264,264,', -',264,,,,,,,264,,,264,264,264,264,264,264,264,264,,264,264,264,,264,264', -',264,264,264,,,,,,,,,,,,,,,,,,,,264,,,264,,,264,264,,,264,,,,,,264,', -',,,,,,264,,,,,264,264,264,264,264,264,,,,264,264,,,,,,,264,,,264,264', -'264,,,264,264,265,265,265,,265,,,,265,265,,,,265,,265,265,265,265,265', -'265,265,,,,,,265,265,265,265,265,265,265,,,265,,,,,,,265,,,265,265,265', -'265,265,265,265,265,,265,265,265,,265,265,,265,265,265,,,,,,,,,,,,,', -',,,,,,265,,,265,,,265,265,,,265,,,,,,265,,,,,,,,265,,,,,265,265,265', -'265,265,265,,,,265,265,,,,,,,265,,,265,265,265,,,265,265,266,266,266', -',266,,,,266,266,,,,266,,266,266,266,266,266,266,266,,,,,,266,266,266', -'266,266,266,266,,,266,,,,,,,266,,,266,266,266,266,266,266,266,266,,266', -'266,266,,266,266,,266,266,266,,,,,,,,,,,,,,,,,,,,266,,,266,,,266,266', -',,266,,,,,,266,,,,,,,,266,,,,,266,266,266,266,266,266,,,,266,266,,,', -',,,266,,,266,266,266,,,266,266,267,267,267,,267,,,,267,267,,,,267,,267', -'267,267,267,267,267,267,,,,,,267,267,267,267,267,267,267,,,267,,,,,', -',267,,,267,267,267,267,267,267,267,267,,267,267,267,,267,267,,267,267', -'267,,,,,,,,,,,,,,,,,,,,267,,,267,,,267,267,,,267,,,,,,267,,,,,,,,267', -',,,,267,267,267,267,267,267,,,,267,267,,,,,,,267,,,267,267,267,,,267', -'267,268,268,268,,268,,,,268,268,,,,268,,268,268,268,268,268,268,268', -',,,,,268,268,268,268,268,268,268,,,268,,,,,,,268,,,268,268,268,268,268', -'268,268,268,,268,268,268,,268,268,,268,268,268,,,,,,,,,,,,,,,,,,,,268', -',,268,,,268,268,,,268,,,,,,268,,,,,,,,268,,,,,268,268,268,268,268,268', -',,,268,268,,,,,,,268,,,268,268,268,,,268,268,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,,', -',,,269,,,,,,,,269,,,,,269,269,269,269,269,269,,,,269,269,,,,,,,269,', -',269,269,269,,,269,269,274,274,274,,274,,,,274,274,,,,274,,274,274,274', -'274,274,274,274,,,,,,274,274,274,274,274,274,274,,,274,,,,,,,274,,,274', -'274,274,274,274,274,274,274,,274,274,274,,274,274,,274,274,274,,,,,', -',,,,,,,,,,,,,,274,,,274,,,274,274,,,274,,,,,,274,,,,,,,,274,,,,,274', -'274,274,274,274,274,,,,274,274,,,,,,,274,,,274,274,274,,,274,274,282', -'282,282,,282,,,,282,282,,,,282,,282,282,282,282,282,282,282,,,,,,282', -'282,282,282,282,282,282,,,282,,,,,,,282,,,282,282,282,282,282,282,282', -'282,282,282,282,282,,282,282,,282,282,282,,,,,,,,,,,,,,,,,,,,282,,,282', -',,282,282,,,282,,282,,282,,282,,,,,,,,282,,,,,282,282,282,282,282,282', -',,,282,282,,,,,,,282,,282,282,282,282,,,282,282,289,289,289,,289,,,', -'289,289,,,,289,,289,289,289,289,289,289,289,,,,,,289,289,289,289,289', -'289,289,,,289,,,,,,,289,,,289,289,289,289,289,289,289,289,289,289,289', -'289,,289,289,,289,289,289,,,,,,,,,,,,,,,,,,,,289,,,289,,,289,289,,,289', -',289,,289,,289,,,,,,,,289,,,,,289,289,289,289,289,289,,,,289,289,,,', -',,,289,,289,289,289,289,,,289,289,292,292,292,,292,,,,292,292,,,,292', -',292,292,292,292,292,292,292,,,,,,292,292,292,292,292,292,292,,,292', -',,,,,,292,,,292,292,292,292,292,292,292,292,292,292,292,292,,292,292', -',292,292,292,,,,,,,,,,,,,,,,,,,,292,,,292,,,292,292,,,292,,292,,292', -',292,,,,,,,,292,,,,,292,292,292,292,292,292,,,,292,292,292,,,,,,292', -',292,292,292,292,,,292,292,929,929,929,,929,,,,929,929,,,,929,,929,929', -'929,929,929,929,929,,,,,,929,929,929,929,929,929,929,,,929,,,,,,,929', -',,929,929,929,929,929,929,929,929,,929,929,929,,929,929,,,,929,,,,,', -',,,,,,,,,,,,,,929,,,929,,,929,929,,,929,,,,,,,,,,,,,,,,,,,929,929,929', -'929,929,929,,,,929,929,,,,,,,929,,,929,929,929,,,929,929,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,299,299,299,299,,,,299,299,,,', -',,,299,,,299,299,299,,,299,299,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,301,301,301,301,,,,301,301,,,,,,,301,,,301,301,301,,,301', -'301,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,304,304,304,304', -',,,304,304,,,,,,,304,,,304,304,304,,,304,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,305,305,305,305,,,,305,305,,,,,,,305,', -',305,305,305,,,305,305,917,917,917,,917,,,,917,917,,,,917,,917,917,917', -'917,917,917,917,,,,,,917,917,917,917,917,917,917,,,917,,,,,,,917,,,917', -'917,917,917,917,917,917,917,,917,917,917,,917,917,,917,917,917,,,,,', -',,,,,,,,,,,,,,917,,,917,,,917,917,,,917,,,,,,917,,,,,,,,917,,,,,917', -'917,917,917,917,917,,,,917,917,,,,,,,917,,,917,917,917,,,917,917,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,,,,311,,,,,,,,311,,,,,311,311,311,311', -'311,311,,,,311,311,,,,,,,311,,,311,311,311,,,311,311,916,916,916,,916', -',,,916,916,,,,916,,916,916,916,916,916,916,916,,,,,,916,916,916,916', -'916,916,916,,,916,,,,,,,916,,,916,916,916,916,916,916,916,916,916,916', -'916,916,,916,916,,916,916,916,,,,,,,,,,,,,,,,,,,,916,,,916,,,916,916', -',,916,,,,916,,916,,,,,,,,916,,,,,916,916,916,916,916,916,,,,916,916', -',,,,,,916,,916,916,916,916,,,916,916,898,898,898,,898,,,,898,898,,,', -'898,,898,898,898,898,898,898,898,,,,,,898,898,898,898,898,898,898,,', -'898,,,,,,,898,,,898,898,898,898,898,898,898,898,,898,898,898,,898,898', -',898,898,898,,,,,,,,,,,,,,,,,,,,898,,,898,,,898,898,,,898,,,,,,898,', -',,,,,,898,,,,,898,898,898,898,898,898,,,,898,898,,,,,,,898,,,898,898', -'898,,,898,898,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,,,319,,,319,319,319,,,319,319,884,884,884,,884,,,', -'884,884,,,,884,,884,884,884,884,884,884,884,,,,,,884,884,884,884,884', -'884,884,,,884,,,,,,,884,,,884,884,884,884,884,884,884,884,,884,884,884', -',884,884,,884,884,884,,,,,,,,,,,,,,,,,,,,884,,,884,,,884,884,,,884,', -',,,,884,,,,,,,,884,,,,,884,884,884,884,884,884,,,,884,884,,,,,,,884', -',,884,884,884,,,884,884,336,336,336,,336,,,,336,336,,,,336,,336,336', -'336,336,336,336,336,,,,,,336,336,336,336,336,336,336,,,336,,,,,,,336', -',,336,336,336,336,336,336,336,336,,336,336,336,,336,336,,,,336,,,,,', -',,,,,,,,,,,,,,336,,,336,,,336,336,,,336,,,,,,,,,,,,,,,,,,,336,336,336', -'336,336,336,,,,336,336,,,,,,,336,,,336,336,336,,,336,336,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,826,826,826,826,,,,826,826,,,', -',,,826,,,826,826,826,,,826,826,824,824,824,,824,,,,824,824,,,,824,,824', -'824,824,824,824,824,824,,,,,,824,824,824,824,824,824,824,,,824,,,,,', -',824,,,824,824,824,824,824,824,824,824,,824,824,824,,824,824,,824,824', -'824,,,,,,,,,,,,,,,,,,,,824,,,824,,,824,824,,,824,,,,,,824,,,,,,,,824', -',,,,824,824,824,824,824,824,,,,824,824,,,,,,,824,,,824,824,824,,,824', -'824,823,823,823,,823,,,,823,823,,,,823,,823,823,823,823,823,823,823', -',,,,,823,823,823,823,823,823,823,,,823,,,,,,,823,,,823,823,823,823,823', -'823,823,823,,823,823,823,,823,823,,823,823,823,,,,,,,,,,,,,,,,,,,,823', -',,823,,,823,823,,,823,,,,,,823,,,,,,,,823,,,,,823,823,823,823,823,823', -',,,823,823,,,,,,,823,,,823,823,823,,,823,823,343,343,343,,343,,,,343', -'343,,,,343,,343,343,343,343,343,343,343,,,,,,343,343,343,343,343,343', -'343,,,343,,,,,,,343,,,343,343,343,343,343,343,343,343,,343,343,343,', -'343,343,,343,343,343,,,,,,,,,,,,,,,,,,,,343,,,343,,,343,343,,,343,,', -',,,343,,,,,,,,343,,,,,343,343,343,343,343,343,,,,343,343,,,,,,,343,', -',343,343,343,,,343,343,345,345,345,,345,,,,345,345,,,,345,,345,345,345', -'345,345,345,345,,,,,,345,345,345,345,345,345,345,,,345,,,,,,,345,,,345', -'345,345,345,345,345,345,345,,345,345,345,,345,345,,345,345,345,,,,,', -',,,,,,,,,,,,,,345,,,345,345,,345,345,,,345,,,,,,345,,,,,,,,345,,,,,345', -'345,345,345,345,345,,,,345,345,,,,,,,345,,,345,345,345,,,345,345,348', -'348,348,348,348,,,,348,348,,,,348,,348,348,348,348,348,348,348,,,,,', -'348,348,348,348,348,348,348,,,348,,,,,,348,348,,348,348,348,348,348', -'348,348,348,348,,348,348,348,,348,348,,348,348,348,,,,,,,,,,,,,,,,,', -',,348,,,348,,,348,348,,,348,,348,,,,348,,,,,,,,348,,,,,348,348,348,348', -'348,348,,,,348,348,,,,,,,348,,,348,348,348,,,348,348,822,822,822,,822', +',,228,,228,228,228,228,,,228,228,274,274,274,,274,,,,274,274,,,,274', +',274,274,274,274,274,274,274,,,,,,274,274,274,274,274,274,274,,,274', +',,,,,,274,,,274,274,274,274,274,274,274,274,,274,274,274,,274,274,,274', +'274,274,,,,,,,,,,,,,,,,,,,,274,,,274,,,274,274,,,274,,,,,,274,,,,,,', +',274,,,,,274,274,274,274,274,274,,,,274,274,,,,,,,274,,,274,274,274', +',,274,274,282,282,282,,282,,,,282,282,,,,282,,282,282,282,282,282,282', +'282,,,,,,282,282,282,282,282,282,282,,,282,,,,,,,282,,,282,282,282,282', +'282,282,282,282,282,282,282,282,,282,282,,282,282,282,,,,,,,,,,,,,,', +',,,,,282,,,282,,,282,282,,,282,,282,,282,,282,,,,,,,,282,,,,,282,282', +'282,282,282,282,,,,282,282,,,,,,,282,,282,282,282,282,,,282,282,289', +'289,289,,289,,,,289,289,,,,289,,289,289,289,289,289,289,289,,,,,,289', +'289,289,289,289,289,289,,,289,,,,,,,289,,,289,289,289,289,289,289,289', +'289,289,289,289,289,,289,289,,289,289,289,,,,,,,,,,,,,,,,,,,,289,,,289', +',,289,289,,,289,,289,,289,,289,,,,,,,,289,,,,,289,289,289,289,289,289', +',,,289,289,,,,,,,289,,289,289,289,289,,,289,289,292,292,292,,292,,,', +'292,292,,,,292,,292,292,292,292,292,292,292,,,,,,292,292,292,292,292', +'292,292,,,292,,,,,,,292,,,292,292,292,292,292,292,292,292,292,292,292', +'292,,292,292,,292,292,292,,,,,,,,,,,,,,,,,,,,292,,,292,,,292,292,,,292', +',292,,292,,292,,,,,,,,292,,,,,292,292,292,292,292,292,,,,292,292,292', +',,,,,292,,292,292,292,292,,,292,292,800,800,800,,800,,,,800,800,,,,800', +',800,800,800,800,800,800,800,,,,,,800,800,800,800,800,800,800,,,800', +',,,,,,800,,,800,800,800,800,800,800,800,800,,800,800,800,,800,800,,800', +'800,800,,,,,,,,,,,,,,,,,,,,800,,,800,,,800,800,,,800,,,,,,800,,,,,,', +',800,,,,,800,800,800,800,800,800,,,,800,800,,,,,,,800,,,800,800,800', +',,800,800,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,299,299', +'299,299,,,,299,299,,,,,,,299,,,299,299,299,,,299,299,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,301,301,301,301,,,,301,301,,,,,,,301', +',,301,301,301,,,301,301,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,304,304,304,304,,,,304,304,,,,,,,304,,,304,304,304,,,304,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,305,305,305,305', +',,,305,305,,,,,,,305,,,305,305,305,,,305,305,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,,,,311,,,,,,,,311,,,,,311,311,311,311,311,311,,,,311,311', +',,,,,,311,,,311,311,311,,,311,311,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,,,,,778,778,778,778,778,778,,,,778,778,,,,,,,778,,778', +'778,778,778,,,778,778,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,,,319,,,319,319,319,,,319,319,766,766,766', +',766,,,,766,766,,,,766,,766,766,766,766,766,766,766,,,,,,766,766,766', +'766,766,766,766,,,766,,,,,,,766,,,766,766,766,766,766,766,766,766,,766', +'766,766,,766,766,,766,766,766,,,,,,,,,,,,,,,,,,,,766,,,766,,,766,766', +',,766,,766,,,,766,,,,,,,,766,,,,,766,766,766,766,766,766,,,,766,766', +',,,,,,766,,,766,766,766,,,766,766,745,745,745,,745,,,,745,745,,,,745', +',745,745,745,745,745,745,745,,,,,,745,745,745,745,745,745,745,,,745', +',,,,,,745,,,745,745,745,745,745,745,745,745,,745,745,745,,745,745,,745', +'745,745,,,,,,,,,,,,,,,,,,,,745,,,745,,,745,745,,,745,,,,,,745,,,,,,', +',745,,,,,745,745,745,745,745,745,,,,745,745,,,,,,,745,,,745,745,745', +',,745,745,729,729,729,,729,,,,729,729,,,,729,,729,729,729,729,729,729', +'729,,,,,,729,729,729,729,729,729,729,,,729,,,,,,,729,,,729,729,729,729', +'729,729,729,729,729,729,729,729,,729,729,,729,729,729,,,,,,,,,,,,,,', +',,,,,729,,,729,,,729,729,,,729,,,,,,729,,,,,,,,729,,,,,729,729,729,729', +'729,729,,,,729,729,,,,,,,729,,729,729,729,729,,,729,729,726,726,726', +',726,,,,726,726,,,,726,,726,726,726,726,726,726,726,,,,,,726,726,726', +'726,726,726,726,,,726,,,,,,,726,,,726,726,726,726,726,726,726,726,726', +'726,726,726,,726,726,,726,726,726,,,,,,,,,,,,,,,,,,,,726,,,726,,,726', +'726,,,726,,726,,,,726,,,,,,,,726,,,,,726,726,726,726,726,726,,,,726', +'726,,,,,,,726,,726,726,726,726,,,726,726,721,721,721,,721,,,,721,721', +',,,721,,721,721,721,721,721,721,721,,,,,,721,721,721,721,721,721,721', +',,721,,,,,,,721,,,721,721,721,721,721,721,721,721,,721,721,721,,721', +'721,,721,721,721,,,,,,,,,,,,,,,,,,,,721,,,721,,,721,721,,,721,,721,', +',,721,,,,,,,,721,,,,,721,721,721,721,721,721,,,,721,721,,,,,,,721,,', +'721,721,721,,,721,721,336,336,336,,336,,,,336,336,,,,336,,336,336,336', +'336,336,336,336,,,,,,336,336,336,336,336,336,336,,,336,,,,,,,336,,,336', +'336,336,336,336,336,336,336,,336,336,336,,336,336,,,,336,,,,,,,,,,,', +',,,,,,,,336,,,336,,,336,336,,,336,,,,,,,,,,,,,,,,,,,336,336,336,336', +'336,336,,,,336,336,,,,,,,336,,,336,336,336,,,336,336,716,716,716,,716', +',,,716,716,,,,716,,716,716,716,716,716,716,716,,,,,,716,716,716,716', +'716,716,716,,,716,,,,,,,716,,,716,716,716,716,716,716,716,716,,716,716', +'716,,716,716,,716,716,716,,,,,,,,,,,,,,,,,,,,716,,,716,,,716,716,,,716', +',,,,,716,,,,,,,,716,,,,,716,716,716,716,716,716,,,,716,716,,,,,,,716', +',,716,716,716,,,716,716,715,715,715,,715,,,,715,715,,,,715,,715,715', +'715,715,715,715,715,,,,,,715,715,715,715,715,715,715,,,715,,,,,,,715', +',,715,715,715,715,715,715,715,715,,715,715,715,,715,715,,,,715,,,,,', +',,,,,,,,,,,,,,715,,,715,,,715,715,,,715,,,,,,,,,,,,,,,,,,,715,715,715', +'715,715,715,,,,715,715,,,,,,,715,,,715,715,715,,,715,715,343,343,343', +',343,,,,343,343,,,,343,,343,343,343,343,343,343,343,,,,,,343,343,343', +'343,343,343,343,,,343,,,,,,,343,,,343,343,343,343,343,343,343,343,,343', +'343,343,,343,343,,343,343,343,,,,,,,,,,,,,,,,,,,,343,,,343,,,343,343', +',,343,,,,,,343,,,,,,,,343,,,,,343,343,343,343,343,343,,,,343,343,,,', +',,,343,,,343,343,343,,,343,343,345,345,345,,345,,,,345,345,,,,345,,345', +'345,345,345,345,345,345,,,,,,345,345,345,345,345,345,345,,,345,,,,,', +',345,,,345,345,345,345,345,345,345,345,,345,345,345,,345,345,,345,345', +'345,,,,,,,,,,,,,,,,,,,,345,,,345,345,,345,345,,,345,,,,,,345,,,,,,,', +'345,,,,,345,345,345,345,345,345,,,,345,345,,,,,,,345,,,345,345,345,', +',345,345,704,704,704,,704,,,,704,704,,,,704,,704,704,704,704,704,704', +'704,,,,,,704,704,704,704,704,704,704,,,704,,,,,,,704,,,704,704,704,704', +'704,704,704,704,,704,704,704,,704,704,,,,704,,,,,,,,,,,,,,,,,,,,704', +',,704,,,704,704,,,704,,,,,,,,,,,,,,,,,,,704,704,704,704,704,704,,,,704', +'704,,,,,,,704,,,704,704,704,,,704,704,348,348,348,348,348,,,,348,348', +',,,348,,348,348,348,348,348,348,348,,,,,,348,348,348,348,348,348,348', +',,348,,,,,,348,348,,348,348,348,348,348,348,348,348,348,,348,348,348', +',348,348,,348,348,348,,,,,,,,,,,,,,,,,,,,348,,,348,,,348,348,,,348,', +'348,,,,348,,,,,,,,348,,,,,348,348,348,348,348,348,,,,348,348,,,,,,,348', +',,348,348,348,,,348,348,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,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,,,,349,349,,,,,,,349,,349,349,349,349', +',,349,349,350,350,350,,350,,,,350,350,,,,350,,350,350,350,350,350,350', +'350,,,,,,350,350,350,350,350,350,350,,,350,,,,,,,350,,,350,350,350,350', +'350,350,350,350,350,350,350,350,,350,350,,350,350,350,,,,,,,,,,,,,,', +',,,,,350,,,350,,,350,350,,,350,,,,,,350,,,,,,,,350,,,,,350,350,350,350', +'350,350,,,,350,350,,,,,,,350,,350,350,350,350,,,350,350,701,701,701', +',701,,,,701,701,,,,701,,701,701,701,701,701,701,701,,,,,,701,701,701', +'701,701,701,701,,,701,,,,,,,701,,,701,701,701,701,701,701,701,701,,701', +'701,701,,701,701,,701,701,701,,,,,,,,,,,,,,,,,,,,701,,,701,,,701,701', +',,701,,,,,,701,,,,,,,,701,,,,,701,701,701,701,701,701,,,,701,701,,,', +',,,701,,,701,701,701,,,701,701,357,357,357,,357,,,,357,357,,,,357,,357', +'357,357,357,357,357,357,,,,,,357,357,357,357,357,357,357,,,357,,,,,', +',357,,,357,357,357,357,357,357,357,357,,357,357,357,,357,357,,357,357', +'357,,,,,,,,,,,,,,,,,,,,357,,,357,,,357,357,,,357,,,,,,357,,,,,,,,357', +',,,,357,357,357,357,357,357,,,,357,357,,,,,,,357,,,357,357,357,,,357', +'357,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,674,674,674,674', +',,,674,674,,,,,,,674,,,674,674,674,,,674,674,673,673,673,,673,,,,673', +'673,,,,673,,673,673,673,673,673,673,673,,,,,,673,673,673,673,673,673', +'673,,,673,,,,,,,673,,,673,673,673,673,673,673,673,673,,673,673,673,', +'673,673,,673,673,673,,,,,,,,,,,,,,,,,,,,673,,,673,,,673,673,,,673,,', +',,,673,,,,,,,,673,,,,,673,673,673,673,673,673,,,,673,673,,,,,,,673,', +',673,673,673,,,673,673,668,668,668,,668,,,,668,668,,,,668,,668,668,668', +'668,668,668,668,,,,,,668,668,668,668,668,668,668,,,668,,,,,,,668,,,668', +'668,668,668,668,668,668,668,,668,668,668,,668,668,,668,668,668,,,,,', +',,,,,,,,,,,,,,668,,,668,,,668,668,,,668,,,,,,668,,,,,,,,668,,,,,668', +'668,668,668,668,668,,,,668,668,,,,,,,668,,,668,668,668,,,668,668,667', +'667,667,,667,,,,667,667,,,,667,,667,667,667,667,667,667,667,,,,,,667', +'667,667,667,667,667,667,,,667,,,,,,,667,,,667,667,667,667,667,667,667', +'667,,667,667,667,,667,667,,667,667,667,,,,,,,,,,,,,,,,,,,,667,,,667', +',,667,667,,,667,,,,,,667,,,,,,,,667,,,,,667,667,667,667,667,667,,,,667', +'667,,,,,,,667,,,667,667,667,,,667,667,666,666,666,,666,,,,666,666,,', +',666,,666,666,666,666,666,666,666,,,,,,666,666,666,666,666,666,666,', +',666,,,,,,,666,,,666,666,666,666,666,666,666,666,666,666,666,666,,666', +'666,,666,666,666,,,,,,,,,,,,,,,,,,,,666,,,666,,,666,666,,,666,,,,666', +',666,,,,,,,,666,,,,,666,666,666,666,666,666,,,,666,666,,,,,,,666,,666', +'666,666,666,,,666,666,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,371,,,,,,,371,,,371,371,371,,,371,371,373,373,373,,373', +',,,373,373,,,,373,,373,373,373,373,373,373,373,,,,,,373,373,373,373', +'373,373,373,,,373,,,,,,,373,,,373,373,373,373,373,373,373,373,,373,373', +'373,,373,373,,,,373,,,,,,,,,,,,,,,,,,,,373,,,373,,,373,373,,,373,,,', +',,,,,,,,,,,,,,,373,373,373,373,373,373,,,,373,373,,,,,,,373,,,373,373', +'373,,,373,373,665,665,665,,665,,,,665,665,,,,665,,665,665,665,665,665', +'665,665,,,,,,665,665,665,665,665,665,665,,,665,,,,,,,665,,,665,665,665', +'665,665,665,665,665,665,665,665,665,,665,665,,665,665,665,,,,,,,,,,', +',,,,,,,,,665,,,665,,,665,665,,,665,,665,,665,,665,,,,,,,,665,,,,,665', +'665,665,665,665,665,,,,665,665,,,,,,,665,,665,665,665,665,,,665,665', +'662,662,662,,662,,,,662,662,,,,662,,662,662,662,662,662,662,662,,,,', +',662,662,662,662,662,662,662,,,662,,,,,,,662,,,662,662,662,662,662,662', +'662,662,,662,662,662,,662,662,,662,662,662,,,,,,,,,,,,,,,,,,,,662,,', +'662,,,662,662,,,662,,,,,,662,,,,,,,,662,,,,,662,662,662,662,662,662', +',,,662,662,,,,,,,662,,,662,662,662,,,662,662,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,,,,,659,659,659,659,659,659,,,,659,659,,,,', +',,659,,659,659,659,659,,,659,659,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,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,657,657,657', +'657,657,,,,657,657,,,,,,,657,,,657,657,657,,,657,657,628,628,628,,628', +',,,628,628,,,,628,,628,628,628,628,628,628,628,,,,,,628,628,628,628', +'628,628,628,,,628,,,,,,,628,,,628,628,628,628,628,628,628,628,,628,628', +'628,,628,628,,628,628,628,,,,,,,,,,,,,,,,,,,,628,,,628,,,628,628,,,628', +',,,,,628,,,,,,,,628,,,,,628,628,628,628,628,628,,,,628,628,,,,,,,628', +',,628,628,628,,,628,628,622,622,622,,622,,,,622,622,,,,622,,622,622', +'622,622,622,622,622,,,,,,622,622,622,622,622,622,622,,,622,,,,,,,622', +',,622,622,622,622,622,622,622,622,,622,622,622,,622,622,,622,622,622', +',,,,,,,,,,,,,,,,,,,622,,,622,,,622,622,,,622,,,,,,622,,,,,,,,622,,,', +',622,622,622,622,622,622,,,,622,622,,,,,,,622,,,622,622,622,,,622,622', +'610,610,610,,610,,,,610,610,,,,610,,610,610,610,610,610,610,610,,,,', +',610,610,610,610,610,610,610,,,610,,,,,,,610,,,610,610,610,610,610,610', +'610,610,610,610,610,610,,610,610,,610,610,610,,,,,,,,,,,,,,,,,,,,610', +',,610,,,610,610,,,610,,610,,610,,610,,,,,,,,610,,,,,610,610,610,610', +'610,610,,,,610,610,,,,,,,610,,610,610,610,610,,,610,610,587,587,587', +',587,,,,587,587,,,,587,,587,587,587,587,587,587,587,,,,,,587,587,587', +'587,587,587,587,,,587,,,,,,,587,,,587,587,587,587,587,587,587,587,,587', +'587,587,,587,587,,587,587,587,,,,,,,,,,,,,,,,,,,,587,,,587,,,587,587', +',,587,,,,,,587,,,,,,,,587,,,,,587,587,587,587,587,587,,,,587,587,,,', +',,,587,,,587,587,587,,,587,587,553,553,553,,553,,,,553,553,,,,553,,553', +'553,553,553,553,553,553,,,,,,553,553,553,553,553,553,553,,,553,,,,,', +',553,,,553,553,553,553,553,553,553,553,,553,553,553,,553,553,,553,553', +'553,,,,,,,,,,,,,,,,,,,,553,,,553,,,553,553,,,553,,,,,,553,,,,,,,,553', +',,,,553,553,553,553,553,553,,,,553,553,,,,,,,553,,,553,553,553,,,553', +'553,548,548,548,,548,,,,548,548,,,,548,,548,548,548,548,548,548,548', +',,,,,548,548,548,548,548,548,548,,,548,,,,,,,548,,,548,548,548,548,548', +'548,548,548,,548,548,548,,548,548,,548,548,548,,,,,,,,,,,,,,,,,,,,548', +',,548,,,548,548,,,548,,,,,,548,,,,,,,,548,,,,,548,548,548,548,548,548', +',,,548,548,,,,,,,548,,,548,548,548,,,548,548,431,431,431,,431,,,,431', +'431,,,,431,,431,431,431,431,431,431,431,,,,,,431,431,431,431,431,431', +'431,,,431,,,,,,,431,,,431,431,431,431,431,431,431,431,,431,431,431,', +'431,431,,431,431,431,,,,,,,,,,,,,,,,,,,,431,,,431,,,431,431,,,431,,', +',,,431,,,,,,,,431,,,,,431,431,431,431,431,431,,,,431,431,,,,,,,431,', +',431,431,431,,,431,431,544,544,544,,544,,,,544,544,,,,544,,544,544,544', +'544,544,544,544,,,,,,544,544,544,544,544,544,544,,,544,,,,,,,544,,,544', +'544,544,544,544,544,544,544,,544,544,544,,544,544,,,,544,,,,,,,,,,,', +',,,,,,,,544,,,544,,,544,544,,,544,,,,,,,,,,,,,,,,,,,544,544,544,544', +'544,544,,,,544,544,,,,,,,544,,,544,544,544,,,544,544,538,538,538,,538', +',,,538,538,,,,538,,538,538,538,538,538,538,538,,,,,,538,538,538,538', +'538,538,538,,,538,,,,,,,538,,,538,538,538,538,538,538,538,538,538,538', +'538,538,,538,538,,538,538,538,,,,,,,,,,,,,,,,,,,,538,,,538,,,538,538', +',,538,,538,,538,,538,,,,,,,,538,,,,,538,538,538,538,538,538,,,,538,538', +',,,,,,538,,538,538,538,538,,,538,538,536,536,536,,536,,,,536,536,,,', +'536,,536,536,536,536,536,536,536,,,,,,536,536,536,536,536,536,536,,', +'536,,,,,,,536,,,536,536,536,536,536,536,536,536,,536,536,536,,536,536', +',,,536,,,,,,,,,,,,,,,,,,,,536,,,536,,,536,536,,,536,,,,,,,,,,,,,,,,', +',,536,536,536,536,536,536,,,,536,536,,,,,,,536,,,536,536,536,,,536,536', +'529,529,529,529,529,,,,529,529,,,,529,,529,529,529,529,529,529,529,', +',,,,529,529,529,529,529,529,529,,,529,,,,,,529,529,529,529,529,529,529', +'529,529,529,529,529,,529,529,529,,529,529,,529,529,529,,,,,,,,,,,,,', +',,,,,,529,,,529,,,529,529,,,529,,529,,,,529,,,,,,,,529,,,,,529,529,529', +'529,529,529,,,,529,529,,,,,,529,529,,,529,529,529,,,529,529,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,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', +',,,,,,523,,,523,523,523,,,523,523,521,521,521,,521,,,,521,521,,,,521', +',521,521,521,521,521,521,521,,,,,,521,521,521,521,521,521,521,,,521', +',,,,,,521,,,521,521,521,521,521,521,521,521,521,521,521,521,,521,521', +',521,521,521,,,,,,,,,,,,,,,,,,,,521,,,521,,,521,521,,,521,,,,521,,521', +',,,,,,,521,,,,,521,521,521,521,521,521,,,,521,521,,,,,,,521,,521,521', +'521,521,,,521,521,518,518,518,,518,,,,518,518,,,,518,,518,518,518,518', +'518,518,518,,,,,,518,518,518,518,518,518,518,,,518,,,,,,,518,,,518,518', +'518,518,518,518,518,518,518,518,518,518,,518,518,,518,518,518,,,,,,', +',,,,,,,,,,,,,518,,,518,,,518,518,,,518,,518,,518,,518,,,,,,,,518,,,', +',518,518,518,518,518,518,,,,518,518,,,,,,,518,,518,518,518,518,,,518', +'518,479,479,479,,479,,,,479,479,,,,479,,479,479,479,479,479,479,479', +',,,,,479,479,479,479,479,479,479,,,479,,,,,,,479,,,479,479,479,479,479', +'479,479,479,,479,479,479,,479,479,,479,479,479,,,,,,,,,,,,,,,,,,,,479', +',,479,,,479,479,,,479,,,,,,479,,,,,,,,479,,,,,479,479,479,479,479,479', +',,,479,479,,,,,,,479,,,479,479,479,,,479,479,478,478,478,,478,,,,478', +'478,,,,478,,478,478,478,478,478,478,478,,,,,,478,478,478,478,478,478', +'478,,,478,,,,,,,478,,,478,478,478,478,478,478,478,478,,478,478,478,', +'478,478,,478,478,478,,,,,,,,,,,,,,,,,,,,478,,,478,,,478,478,,,478,,', +',,,478,,,,,,,,478,,,,,478,478,478,478,478,478,,,,478,478,,,,,,,478,', +',478,478,478,,,478,478,477,477,477,,477,,,,477,477,,,,477,,477,477,477', +'477,477,477,477,,,,,,477,477,477,477,477,477,477,,,477,,,,,,,477,,,477', +'477,477,477,477,477,477,477,,477,477,477,,477,477,,477,477,477,,,,,', +',,,,,,,,,,,,,,477,,,477,,,477,477,,,477,,,,,,477,,,,,,,,477,,,,,477', +'477,477,477,477,477,,,,477,477,,,,,,,477,,,477,477,477,,,477,477,232', +'232,232,,232,,,,232,232,,,,232,,232,232,232,232,232,232,232,,,,,,232', +'232,232,232,232,232,232,,,232,,,,,,,232,,,232,232,232,232,232,232,232', +'232,,232,232,232,,232,232,,232,232,232,,,,,,,,,,,,,,,,,,,,232,,,232', +',,232,232,,,232,,,,,,232,,,,,,,,232,,,,,232,232,232,232,232,232,,,,232', +'232,,,,,,,232,,,232,232,232,,,232,232,233,233,233,,233,,,,233,233,,', +',233,,233,233,233,233,233,233,233,,,,,,233,233,233,233,233,233,233,', +',233,,,,,,,233,,,233,233,233,233,233,233,233,233,,233,233,233,,233,233', +',233,233,233,,,,,,,,,,,,,,,,,,,,233,,,233,,,233,233,,,233,,,,,,233,', +',,,,,,233,,,,,233,233,233,233,233,233,,,,233,233,,,,,,,233,,,233,233', +'233,,,233,233,234,234,234,,234,,,,234,234,,,,234,,234,234,234,234,234', +'234,234,,,,,,234,234,234,234,234,234,234,,,234,,,,,,,234,,,234,234,234', +'234,234,234,234,234,,234,234,234,,234,234,,234,234,234,,,,,,,,,,,,,', +',,,,,,234,,,234,,,234,234,,,234,,,,,,234,,,,,,,,234,,,,,234,234,234', +'234,234,234,,,,234,234,234,,,,,,234,,,234,234,234,,,234,234,838,838', +'838,,838,,,,838,838,,,,838,,838,838,838,838,838,838,838,,,,,,838,838', +'838,838,838,838,838,,,838,,,,,,,838,,,838,838,838,838,838,838,838,838', +',838,838,838,,838,838,,838,838,838,,,,,,,,,,,,,,,,,,,,838,,,838,,,838', +'838,,,838,,,,,,838,,,,,,,,838,,,,,838,838,838,838,838,838,,,,838,838', +',,,,,,838,,,838,838,838,,,838,838,825,825,825,,825,,,,825,825,,,,825', +',825,825,825,825,825,825,825,,,,,,825,825,825,825,825,825,825,,,825', +',,,,,,825,,,825,825,825,825,825,825,825,825,,825,825,825,,825,825,,825', +'825,825,,,,,,,,,,,,,,,,,,,,825,,,825,,,825,825,,,825,,,,,,825,,,,,,', +',825,,,,,825,825,825,825,825,825,,,,825,825,,,,,,,825,,,825,825,825', +',,825,825,823,823,823,,823,,,,823,823,,,,823,,823,823,823,823,823,823', +'823,,,,,,823,823,823,823,823,823,823,,,823,,,,,,,823,,,823,823,823,823', +'823,823,823,823,,823,823,823,,823,823,,823,823,823,,,,,,,,,,,,,,,,,', +',,823,,,823,,,823,823,,,823,,,,,,823,,,,,,,,823,,,,,823,823,823,823', +'823,823,,,,823,823,,,,,,,823,,,823,823,823,,,823,823,822,822,822,,822', ',,,822,822,,,,822,,822,822,822,822,822,822,822,,,,,,822,822,822,822', '822,822,822,,,822,,,,,,,822,,,822,822,822,822,822,822,822,822,,822,822', '822,,822,822,,822,822,822,,,,,,,,,,,,,,,,,,,,822,,,822,,,822,822,,,822', ',,,,,822,,,,,,,,822,,,,,822,822,822,822,822,822,,,,822,822,,,,,,,822', -',,822,822,822,,,822,822,821,821,821,,821,,,,821,821,,,,821,,821,821', -'821,821,821,821,821,,,,,,821,821,821,821,821,821,821,,,821,,,,,,,821', -',,821,821,821,821,821,821,821,821,,821,821,821,,821,821,,821,821,821', -',,,,,,,,,,,,,,,,,,,821,,,821,,,821,821,,,821,,,,,,821,,,,,,,,821,,,', -',821,821,821,821,821,821,,,,821,821,,,,,,,821,,,821,821,821,,,821,821', -'808,808,808,,808,,,,808,808,,,,808,,808,808,808,808,808,808,808,,,,', -',808,808,808,808,808,808,808,,,808,,,,,,,808,,,808,808,808,808,808,808', -'808,808,,808,808,808,,808,808,,808,808,808,,,,,,,,,,,,,,,,,,,,808,,', -'808,,,808,808,,,808,,,,,,808,,,,,,,,808,,,,,808,808,808,808,808,808', -',,,808,808,,,,,,,808,,,808,808,808,,,808,808,354,354,354,,354,,,,354', -'354,,,,354,,354,354,354,354,354,354,354,,,,,,354,354,354,354,354,354', -'354,,,354,,,,,,,354,,,354,354,354,354,354,354,354,354,354,354,354,354', -',354,354,,354,354,354,,,,,,,,,,,,,,,,,,,,354,,,354,,,354,354,,,354,', -',,,,354,,,,,,,,354,,,,,354,354,354,354,354,354,,,,354,354,,,,,,,354', -',354,354,354,354,,,354,354,361,361,361,,361,,,,361,361,,,,361,,361,361', -'361,361,361,361,361,,,,,,361,361,361,361,361,361,361,,,361,,,,,,,361', -',,361,361,361,361,361,361,361,361,,361,361,361,,361,361,,361,361,361', -',,,,,,,,,,,,,,,,,,,361,,,361,,,361,361,,,361,,,,,,361,,,,,,,,361,,,', -',361,361,361,361,361,361,,,,361,361,,,,,,,361,,,361,361,361,,,361,361', -'801,801,801,,801,,,,801,801,,,,801,,801,801,801,801,801,801,801,,,,', -',801,801,801,801,801,801,801,,,801,,,,,,,801,,,801,801,801,801,801,801', -'801,801,,801,801,801,,801,801,,801,801,801,,,,,,,,,,,,,,,,,,,,801,,', -'801,,,801,801,,,801,,,,,,801,,,,,,,,801,,,,,801,801,801,801,801,801', -',,,801,801,,,,,,,801,,,801,801,801,,,801,801,375,375,375,,375,,,,375', -'375,,,,375,,375,375,375,375,375,375,375,,,,,,375,375,375,375,375,375', -'375,,,375,,,,,,,375,,,375,375,375,375,375,375,375,375,,375,375,375,', -'375,375,,,,375,,,,,,,,,,,,,,,,,,,,375,,,375,,,375,375,,,375,,,,,,,,', -',,,,,,,,,,375,375,375,375,375,375,,,,375,375,,,,,,,375,,,375,375,375', -',,375,375,377,377,377,,377,,,,377,377,,,,377,,377,377,377,377,377,377', -'377,,,,,,377,377,377,377,377,377,377,,,377,,,,,,,377,,,377,377,377,377', -'377,377,377,377,,377,377,377,,377,377,,,,377,,,,,,,,,,,,,,,,,,,,377', -',,377,,,377,377,,,377,,,,,,,,,,,,,,,,,,,377,377,377,377,377,377,,,,377', -'377,,,,,,,377,,,377,377,377,,,377,377,780,780,780,,780,,,,780,780,,', -',780,,780,780,780,780,780,780,780,,,,,,780,780,780,780,780,780,780,', -',780,,,,,,,780,,,780,780,780,780,780,780,780,780,780,780,780,780,,780', -'780,,780,780,780,,,,,,,,,,,,,,,,,,,,780,,,780,,,780,780,,,780,,780,', -'780,,780,,,,,,,,780,,,,,780,780,780,780,780,780,,,,780,780,,,,,,,780', -',780,780,780,780,,,780,780,768,768,768,,768,,,,768,768,,,,768,,768,768', -'768,768,768,768,768,,,,,,768,768,768,768,768,768,768,,,768,,,,,,,768', -',,768,768,768,768,768,768,768,768,,768,768,768,,768,768,,768,768,768', -',,,,,,,,,,,,,,,,,,,768,,,768,,,768,768,,,768,,768,,,,768,,,,,,,,768', -',,,,768,768,768,768,768,768,,,,768,768,,,,,,,768,,,768,768,768,,,768', -'768,747,747,747,,747,,,,747,747,,,,747,,747,747,747,747,747,747,747', -',,,,,747,747,747,747,747,747,747,,,747,,,,,,,747,,,747,747,747,747,747', -'747,747,747,,747,747,747,,747,747,,747,747,747,,,,,,,,,,,,,,,,,,,,747', -',,747,,,747,747,,,747,,,,,,747,,,,,,,,747,,,,,747,747,747,747,747,747', -',,,747,747,,,,,,,747,,,747,747,747,,,747,747,436,436,436,,436,,,,436', -'436,,,,436,,436,436,436,436,436,436,436,,,,,,436,436,436,436,436,436', -'436,,,436,,,,,,,436,,,436,436,436,436,436,436,436,436,,436,436,436,', -'436,436,,436,436,436,,,,,,,,,,,,,,,,,,,,436,,,436,,,436,436,,,436,,', -',,,436,,,,,,,,436,,,,,436,436,436,436,436,436,,,,436,436,,,,,,,436,', -',436,436,436,,,436,436,728,728,728,,728,,,,728,728,,,,728,,728,728,728', -'728,728,728,728,,,,,,728,728,728,728,728,728,728,,,728,,,,,,,728,,,728', -'728,728,728,728,728,728,728,,728,728,728,,728,728,,728,728,728,,,,,', -',,,,,,,,,,,,,,728,,,728,,,728,728,,,728,,728,,,,728,,,,,,,,728,,,,,728', -'728,728,728,728,728,,,,728,728,,,,,,,728,,,728,728,728,,,728,728,723', -'723,723,,723,,,,723,723,,,,723,,723,723,723,723,723,723,723,,,,,,723', -'723,723,723,723,723,723,,,723,,,,,,,723,,,723,723,723,723,723,723,723', -'723,,723,723,723,,723,723,,723,723,723,,,,,,,,,,,,,,,,,,,,723,,,723', -',,723,723,,,723,,,,,,723,,,,,,,,723,,,,,723,723,723,723,723,723,,,,723', -'723,,,,,,,723,,,723,723,723,,,723,723,722,722,722,,722,,,,722,722,,', -',722,,722,722,722,722,722,722,722,,,,,,722,722,722,722,722,722,722,', -',722,,,,,,,722,,,722,722,722,722,722,722,722,722,,722,722,722,,722,722', -',,,722,,,,,,,,,,,,,,,,,,,,722,,,722,,,722,722,,,722,,,,,,,,,,,,,,,,', -',,722,722,722,722,722,722,,,,722,722,,,,,,,722,,,722,722,722,,,722,722', -'479,479,479,,479,,,,479,479,,,,479,,479,479,479,479,479,479,479,,,,', -',479,479,479,479,479,479,479,,,479,,,,,,,479,,,479,479,479,479,479,479', -'479,479,479,479,479,479,,479,479,,479,479,479,,,,,,,,,,,,,,,,,,,,479', -',,479,,,479,479,,,479,,479,,479,,479,,,,,,,,479,,,,,479,479,479,479', -'479,479,,,,479,479,,,,,,,479,,479,479,479,479,,,479,479,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,482,482,482,,482,,,,482,482,,,,482,,482', -'482,482,482,482,482,482,,,,,,482,482,482,482,482,482,482,,,482,,,,,', -',482,,,482,482,482,482,482,482,482,482,,482,482,482,,482,482,,482,482', -'482,,,,,,,,,,,,,,,,,,,,482,,,482,,,482,482,,,482,,,,,,482,,,,,,,,482', -',,,,482,482,482,482,482,482,,,,482,482,,,,,,,482,,,482,482,482,,,482', -'482,483,483,483,,483,,,,483,483,,,,483,,483,483,483,483,483,483,483', -',,,,,483,483,483,483,483,483,483,,,483,,,,,,,483,,,483,483,483,483,483', -'483,483,483,,483,483,483,,483,483,,483,483,483,,,,,,,,,,,,,,,,,,,,483', -',,483,,,483,483,,,483,,,,,,483,,,,,,,,483,,,,,483,483,483,483,483,483', -',,,483,483,,,,,,,483,,,483,483,483,,,483,483,711,711,711,,711,,,,711', -'711,,,,711,,711,711,711,711,711,711,711,,,,,,711,711,711,711,711,711', -'711,,,711,,,,,,,711,,,711,711,711,711,711,711,711,711,,711,711,711,', -'711,711,,,,711,,,,,,,,,,,,,,,,,,,,711,,,711,,,711,711,,,711,,,,,,,,', -',,,,,,,,,,711,711,711,711,711,711,,,,711,711,,,,,,,711,,,711,711,711', -',,711,711,707,707,707,,707,,,,707,707,,,,707,,707,707,707,707,707,707', -'707,,,,,,707,707,707,707,707,707,707,,,707,,,,,,,707,,,707,707,707,707', -'707,707,707,707,,707,707,707,,707,707,,707,707,707,,,,,,,,,,,,,,,,,', -',,707,,,707,,,707,707,,,707,,,,,,707,,,,,,,,707,,,,,707,707,707,707', -'707,707,,,,707,707,,,,,,,707,,,707,707,707,,,707,707,704,704,704,,704', -',,,704,704,,,,704,,704,704,704,704,704,704,704,,,,,,704,704,704,704', -'704,704,704,,,704,,,,,,,704,,,704,704,704,704,704,704,704,704,,704,704', -'704,,704,704,,704,704,704,,,,,,,,,,,,,,,,,,,,704,,,704,,,704,704,,,704', -',,,,,704,,,,,,,,704,,,,,704,704,704,704,704,704,,,,704,704,,,,,,,704', -',,704,704,704,,,704,704,681,681,681,,681,,,,681,681,,,,681,,681,681', -'681,681,681,681,681,,,,,,681,681,681,681,681,681,681,,,681,,,,,,,681', -',,681,681,681,681,681,681,681,681,,681,681,681,,681,681,,681,681,681', -',,,,,,,,,,,,,,,,,,,681,,,681,,,681,681,,,681,,,,,,681,,,,,,,,681,,,', -',681,681,681,681,681,681,,,,681,681,,,,,,,681,,,681,681,681,,,681,681', -'549,549,549,,549,,,,549,549,,,,549,,549,549,549,549,549,549,549,,,,', -',549,549,549,549,549,549,549,,,549,,,,,,,549,,,549,549,549,549,549,549', -'549,549,,549,549,549,,549,549,,,,549,,,,,,,,,,,,,,,,,,,,549,,,549,,', -'549,549,,,549,,,,,,,,,,,,,,,,,,,549,549,549,549,549,549,,,,549,549,', -',,,,,549,,,549,549,549,,,549,549,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,675,,,,675,675,,,,,,,675,,,675,675,675', -',,675,675,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,674,674', -'674,674,,,,674,674,,,,,,,674,,,674,674,674,,,674,674,673,673,673,,673', -',,,673,673,,,,673,,673,673,673,673,673,673,673,,,,,,673,673,673,673', -'673,673,673,,,673,,,,,,,673,,,673,673,673,673,673,673,673,673,673,673', -'673,673,,673,673,,673,673,673,,,,,,,,,,,,,,,,,,,,673,,,673,,,673,673', -',,673,,,,673,,673,,,,,,,,673,,,,,673,673,673,673,673,673,,,,673,673', -',,,,,,673,,673,673,673,673,,,673,673,672,672,672,,672,,,,672,672,,,', -'672,,672,672,672,672,672,672,672,,,,,,672,672,672,672,672,672,672,,', -'672,,,,,,,672,,,672,672,672,672,672,672,672,672,672,672,672,672,,672', -'672,,672,672,672,,,,,,,,,,,,,,,,,,,,672,,,672,,,672,672,,,672,,672,', -'672,,672,,,,,,,,672,,,,,672,672,672,672,672,672,,,,672,672,,,,,,,672', -',672,672,672,672,,,672,672,669,669,669,,669,,,,669,669,,,,669,,669,669', -'669,669,669,669,669,,,,,,669,669,669,669,669,669,669,,,669,,,,,,,669', -',,669,669,669,669,669,669,669,669,,669,669,669,,669,669,,669,669,669', -',,,,,,,,,,,,,,,,,,,669,,,669,,,669,669,,,669,,,,,,669,,,,,,,,669,,,', -',669,669,669,669,669,669,,,,669,669,,,,,,,669,,,669,669,669,,,669,669', -'666,666,666,,666,,,,666,666,,,,666,,666,666,666,666,666,666,666,,,,', -',666,666,666,666,666,666,666,,,666,,,,,,,666,,,666,666,666,666,666,666', -'666,666,666,666,666,666,,666,666,,666,666,666,,,,,,,,,,,,,,,,,,,,666', -',,666,,,666,666,,,666,,666,,666,,666,,,,,,,,666,,,,,666,666,666,666', -'666,666,,,,666,666,,,,,,,666,,666,666,666,666,,,666,666,665,665,665', -',665,,,,665,665,,,,665,,665,665,665,665,665,665,665,,,,,,665,665,665', -'665,665,665,665,,,665,,,,,,,665,,,665,665,665,665,665,665,665,665,,665', -'665,665,,665,665,,665,665,665,,,,,,,,,,,,,,,,,,,,665,,,665,,,665,665', -',,665,,,,,,665,,,,,,,,665,,,,,665,665,665,665,665,665,,,,665,665,,,', -',,,665,,,665,665,665,,,665,665,664,664,664,,664,,,,664,664,,,,664,,664', -'664,664,664,664,664,664,,,,,,664,664,664,664,664,664,664,,,664,,,,,', -',664,,,664,664,664,664,664,664,664,664,,664,664,664,,664,664,,664,664', -'664,,,,,,,,,,,,,,,,,,,,664,,,664,,,664,664,,,664,,664,,,,664,,,,,,,', -'664,,,,,664,664,664,664,664,664,,,,664,664,,,,,,,664,,,664,664,664,', -',664,664,635,635,635,,635,,,,635,635,,,,635,,635,635,635,635,635,635', -'635,,,,,,635,635,635,635,635,635,635,,,635,,,,,,,635,,,635,635,635,635', -'635,635,635,635,,635,635,635,,635,635,,635,635,635,,,,,,,,,,,,,,,,,', -',,635,,,635,,,635,635,,,635,,,,,,635,,,,,,,,635,,,,,635,635,635,635', -'635,635,,,,635,635,,,,,,,635,,,635,635,635,,,635,635,629,629,629,,629', -',,,629,629,,,,629,,629,629,629,629,629,629,629,,,,,,629,629,629,629', -'629,629,629,,,629,,,,,,,629,,,629,629,629,629,629,629,629,629,,629,629', -'629,,629,629,,629,629,629,,,,,,,,,,,,,,,,,,,,629,,,629,,,629,629,,,629', -',,,,,629,,,,,,,,629,,,,,629,629,629,629,629,629,,,,629,629,,,,,,,629', -',,629,629,629,,,629,629,522,522,522,,522,,,,522,522,,,,522,,522,522', -'522,522,522,522,522,,,,,,522,522,522,522,522,522,522,,,522,,,,,,,522', -',,522,522,522,522,522,522,522,522,522,522,522,522,,522,522,,522,522', -'522,,,,,,,,,,,,,,,,,,,,522,,,522,,,522,522,,,522,,522,,522,,522,,,,', -',,,522,,,,,522,522,522,522,522,522,,,,522,522,,,,,,,522,,522,522,522', -'522,,,522,522,525,525,525,,525,,,,525,525,,,,525,,525,525,525,525,525', -'525,525,,,,,,525,525,525,525,525,525,525,,,525,,,,,,,525,,,525,525,525', -'525,525,525,525,525,525,525,525,525,,525,525,,525,525,525,,,,,,,,,,', -',,,,,,,,,525,,,525,,,525,525,,,525,,,,525,,525,,,,,,,,525,,,,,525,525', -'525,525,525,525,,,,525,525,,,,,,,525,,525,525,525,525,,,525,525,527', -'527,527,,527,,,,527,527,,,,527,,527,527,527,527,527,527,527,,,,,,527', -'527,527,527,527,527,527,,,527,,,,,,,527,,,527,527,527,527,527,527,527', -'527,,527,527,527,,527,527,,527,527,527,,,,,,,,,,,,,,,,,,,,527,,,527', -',,527,527,,,527,,,,,,527,,,,,,,,527,,,,,527,527,527,527,527,527,,,,527', -'527,,,,,,,527,,,527,527,527,,,527,527,533,533,533,533,533,,,,533,533', -',,,533,,533,533,533,533,533,533,533,,,,,,533,533,533,533,533,533,533', -',,533,,,,,,533,533,533,533,533,533,533,533,533,533,533,533,,533,533', -'533,,533,533,,533,533,533,,,,,,,,,,,,,,,,,,,,533,,,533,,,533,533,,,533', -',533,,,,533,,,,,,,,533,,,,,533,533,533,533,533,533,,,,533,533,,,,,,533', -'533,,,533,533,533,,,533,533,541,541,541,,541,,,,541,541,,,,541,,541', -'541,541,541,541,541,541,,,,,,541,541,541,541,541,541,541,,,541,,,,,', -',541,,,541,541,541,541,541,541,541,541,,541,541,541,,541,541,,,,541', -',,,,,,,,,,,,,,,,,,,541,,,541,,,541,541,,,541,,,,,,,,,,,,,,,,,,,541,541', -'541,541,541,541,,,,541,541,,,,,,,541,,,541,541,541,,,541,541,617,617', -'617,,617,,,,617,617,,,,617,,617,617,617,617,617,617,617,,,,,,617,617', -'617,617,617,617,617,,,617,,,,,,,617,,,617,617,617,617,617,617,617,617', -'617,617,617,617,,617,617,,617,617,617,,,,,,,,,,,,,,,,,,,,617,,,617,', -',617,617,,,617,,617,,617,,617,,,,,,,,617,,,,,617,617,617,617,617,617', -',,,617,617,,,,,,,617,,617,617,617,617,,,617,617,543,543,543,,543,,,', -'543,543,,,,543,,543,543,543,543,543,543,543,,,,,,543,543,543,543,543', -'543,543,,,543,,,,,,,543,,,543,543,543,543,543,543,543,543,543,543,543', -'543,,543,543,,543,543,543,,,,,,,,,,,,,,,,,,,,543,,,543,,,543,543,,,543', -',543,,543,,543,,,,,,,,543,,,,,543,543,543,543,543,543,,,,543,543,,,', -',,,543,,543,543,543,543,60,,543,543,,,,60,60,60,,,60,60,60,1056,60,1056', -'1056,1056,1056,1056,,,,,60,60,60,,,1056,,,,,60,60,,60,60,60,60,60,,', -',,,,,,,1056,,,,,,,,,1056,1056,1056,1056,,60,60,60,60,60,60,60,60,60', -'60,60,60,60,60,,,60,60,60,,,60,,,60,,,60,60,,60,1056,60,,60,,60,60,60', -'60,60,60,60,,60,,60,745,,745,745,745,745,745,,,,,,60,60,60,60,745,60', -'471,60,,,,,60,471,471,471,,,471,471,471,,471,,,,745,,,,,471,471,471', -'471,,,745,745,,,,471,471,,471,471,471,471,471,,,,,,,,,,,,,,,,,,,,,,745', -',471,471,471,471,471,471,471,471,471,471,471,471,471,471,,,471,471,471', -',,471,,,471,,,471,471,,471,,471,,471,,471,471,471,471,471,471,471,,471', -'471,471,743,,743,743,743,743,743,,,,,,471,471,471,471,743,471,470,471', -',,,,471,470,470,470,,,470,470,470,,470,,,,743,,,,,470,470,470,470,743', -'743,743,743,,,,470,470,,470,470,470,470,470,,,,,,,,,,,,,,,,,,,,,,743', -',470,470,470,470,470,470,470,470,470,470,470,470,470,470,,,470,470,470', -',,470,,,470,,,470,470,,470,,470,,470,,470,470,470,470,470,470,470,,470', -'470,470,741,,741,741,741,741,741,,,,,,470,470,470,470,741,470,461,470', -',,,,470,461,461,461,,,461,461,461,,461,,,,741,,,,,461,461,461,,741,741', -'741,741,,,,461,461,,461,461,461,461,461,,,,,,,,,,,,,,,,,,,,,,741,,461', -'461,461,461,461,461,461,461,461,461,461,461,461,461,,,461,461,461,,', -'461,,461,461,,,461,461,,461,,461,,461,,461,461,461,461,461,461,461,', -'461,461,461,,,,,,,,,,,,,461,461,509,461,,461,,,,509,509,509,461,,509', -'509,509,979,509,979,979,979,979,979,,,,509,509,,,,,979,,,,,509,509,', -'509,509,509,509,509,,,,,,,,,,979,,,,,,,,,979,979,979,979,,,,,,,,,,,', -',509,,31,,,,,509,,31,31,31,509,509,31,31,31,,31,,979,,,,,,,,31,31,,', -',,509,509,,,31,31,,31,31,31,31,31,,,509,,,,,509,,,,,,,509,,,,,,,,,31', -'31,31,31,31,31,31,31,31,31,31,31,31,31,,,31,31,31,,,31,,31,31,,,31,31', -',31,,31,,31,,31,31,31,31,31,31,31,,31,,31,,,,,,,,,,,,,31,31,30,31,,31', -',,,30,30,30,31,,30,30,30,1042,30,1042,1042,1042,1042,1042,,,,30,30,30', -',,,1042,,,,,30,30,,30,30,30,30,30,,,,,,,,,,1042,,,,,,,,,,,1042,1042', -',30,30,30,30,30,30,30,30,30,30,30,30,30,30,,,30,30,30,,,30,,30,30,,', -'30,30,,30,1042,30,,30,,30,30,30,30,30,30,30,,30,30,30,,,,,,,,,,,,,30', -'30,,30,,30,,,,,,,30,789,789,789,789,789,789,789,789,789,789,789,789', -'789,789,789,789,789,789,789,789,789,789,789,789,,,,789,789,789,789,789', -'789,789,789,789,789,,,,,,789,789,789,789,789,789,789,789,789,,,789,', -',,,,,,,789,789,,789,789,789,789,789,789,789,,,789,789,,,,789,789,789', -'789,,,,,,,,,,,,,,789,789,,789,789,789,789,789,789,789,789,789,789,789', -',,789,,,,,,,,,,,,,,,,,,,,789,,,,,789,11,11,11,11,11,11,11,11,11,11,11', -'11,11,11,11,11,11,11,11,11,11,11,11,11,,,,11,11,11,11,11,11,11,11,11', -'11,,,,,,11,11,11,11,11,11,11,11,11,11,,11,,,,,,,,,11,11,,11,11,11,11', -'11,11,11,,,11,11,,,,11,11,11,11,,,,,,,,,,,,,,11,11,,11,11,11,11,11,11', -'11,11,11,11,11,,,11,11,,,,,,,,,,11,,,,,,,,,11,,,,,11,661,661,661,661', -'661,661,661,661,661,661,661,661,661,661,661,661,661,661,661,661,661', -'661,661,661,,,,661,661,661,661,661,661,661,661,661,661,,,,,,661,661', -'661,661,661,661,661,661,661,,,661,,,,,,,,,661,661,,661,661,661,661,661', -'661,661,,,661,661,,,,661,661,661,661,,,,,,,,,,,,,,661,661,,661,661,661', -'661,661,661,661,661,661,661,661,,,661,661,,,,,,,,,,661,,,,,,,,,661,', -',,,661,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75,75', -'75,75,75,,,,75,75,75,75,75,75,75,75,75,75,,,,,,75,75,75,75,75,75,75', -'75,75,75,75,75,,75,,,,,,,75,75,,75,75,75,75,75,75,75,,,75,75,,,,75,75', -'75,75,,,,,,75,,,,,,,,75,75,,75,75,75,75,75,75,75,75,75,75,75,,,75,,', -',,,,,,,,,,,,,,,,,75,,,,,75,427,427,427,427,427,427,427,427,427,427,427', -'427,427,427,427,427,427,427,427,427,427,427,427,427,,,,427,427,427,427', -'427,427,427,427,427,427,,,,,,427,427,427,427,427,427,427,427,427,,,427', -',,,,,,,,427,427,,427,427,427,427,427,427,427,,,427,427,,,,427,427,427', -'427,,,,,,,,,,,,,,427,427,,427,427,427,427,427,427,427,427,427,427,427', -',,427,427,,,,,,,,,,427,,,,,,,,,427,,,,,427,103,103,103,103,103,103,103', +',,822,822,822,,,822,822,820,820,820,,820,,,,820,820,,,,820,,820,820', +'820,820,820,820,820,,,,,,820,820,820,820,820,820,820,,,820,,,,,,,820', +',,820,820,820,820,820,820,820,820,,820,820,820,,820,820,,820,820,820', +',,,,,,,,,,,,,,,,,,,820,,,820,,,820,820,,,820,,,,,,820,,,,,,,,820,,,', +',820,820,820,820,820,820,,,,820,820,,,,,,,820,,,820,820,820,,,820,820', +'245,245,245,,245,,,,245,245,,,,245,,245,245,245,245,245,245,245,,,,', +',245,245,245,245,245,245,245,,,245,,,,,,,245,,,245,245,245,245,245,245', +'245,245,,245,245,245,,245,245,,245,245,245,,,,,,,,,,,,,,,,,,,,245,,', +'245,,,245,245,,,245,,,,,,245,,,,,,,,245,,,,,245,245,245,245,245,245', +',,,245,245,,,,,,,245,,,245,245,245,,,245,245,807,807,807,,807,,,,807', +'807,,,,807,,807,807,807,807,807,807,807,,,,,,807,807,807,807,807,807', +'807,,,807,,,,,,,807,,,807,807,807,807,807,807,807,807,,807,807,807,', +'807,807,,807,807,807,,,,,,,,,,,,,,,,,,,,807,,,807,,,807,807,,,807,,', +',,,807,,,,,,,,807,,,,,807,807,807,807,807,807,,,,807,807,,,,,,,807,', +',807,807,807,,,807,807,248,248,248,,248,,,,248,248,,,,248,,248,248,248', +'248,248,248,248,,,,,,248,248,248,248,248,248,248,,,248,,,,,,,248,,,248', +'248,248,248,248,248,248,248,,248,248,248,,248,248,,248,248,248,,,,,', +',,,,,,,,,,,,,,248,,,248,,,248,248,,,248,,,,,,248,,,,,,,,248,,,,,248', +'248,248,248,248,248,,,,248,248,,,,,,,248,,,248,248,248,,,248,248,249', +'249,249,,249,,,,249,249,,,,249,,249,249,249,249,249,249,249,,,,,,249', +'249,249,249,249,249,249,,,249,,,,,,,249,,,249,249,249,249,249,249,249', +'249,,249,249,249,,249,249,,249,249,249,,,,,,,,,,,,,,,,,,,,249,,,249', +',,249,249,,,249,,,,,,249,,,,,,,,249,,,,,249,249,249,249,249,249,,,,249', +'249,,,,,,,249,,,249,249,249,,,249,249,250,250,250,,250,,,,250,250,,', +',250,,250,250,250,250,250,250,250,,,,,,250,250,250,250,250,250,250,', +',250,,,,,,,250,,,250,250,250,250,250,250,250,250,,250,250,250,,250,250', +',250,250,250,,,,,,,,,,,,,,,,,,,,250,,,250,,,250,250,,,250,,,,,,250,', +',,,,,,250,,,,,250,250,250,250,250,250,,,,250,250,,,,,,,250,,,250,250', +'250,,,250,250,251,251,251,,251,,,,251,251,,,,251,,251,251,251,251,251', +'251,251,,,,,,251,251,251,251,251,251,251,,,251,,,,,,,251,,,251,251,251', +'251,251,251,251,251,,251,251,251,,251,251,,251,251,251,,,,,,,,,,,,,', +',,,,,,251,,,251,,,251,251,,,251,,,,,,251,,,,,,,,251,,,,,251,251,251', +'251,251,251,,,,251,251,,,,,,,251,,,251,251,251,,,251,251,252,252,252', +',252,,,,252,252,,,,252,,252,252,252,252,252,252,252,,,,,,252,252,252', +'252,252,252,252,,,252,,,,,,,252,,,252,252,252,252,252,252,252,252,,252', +'252,252,,252,252,,252,252,252,,,,,,,,,,,,,,,,,,,,252,,,252,,,252,252', +',,252,,,,,,252,,,,,,,,252,,,,,252,252,252,252,252,252,,,,252,252,,,', +',,,252,,,252,252,252,,,252,252,253,253,253,,253,,,,253,253,,,,253,,253', +'253,253,253,253,253,253,,,,,,253,253,253,253,253,253,253,,,253,,,,,', +',253,,,253,253,253,253,253,253,253,253,,253,253,253,,253,253,,253,253', +'253,,,,,,,,,,,,,,,,,,,,253,,,253,,,253,253,,,253,,,,,,253,,,,,,,,253', +',,,,253,253,253,253,253,253,,,,253,253,,,,,,,253,,,253,253,253,,,253', +'253,254,254,254,,254,,,,254,254,,,,254,,254,254,254,254,254,254,254', +',,,,,254,254,254,254,254,254,254,,,254,,,,,,,254,,,254,254,254,254,254', +'254,254,254,,254,254,254,,254,254,,254,254,254,,,,,,,,,,,,,,,,,,,,254', +',,254,,,254,254,,,254,,,,,,254,,,,,,,,254,,,,,254,254,254,254,254,254', +',,,254,254,,,,,,,254,,,254,254,254,,,254,254,255,255,255,,255,,,,255', +'255,,,,255,,255,255,255,255,255,255,255,,,,,,255,255,255,255,255,255', +'255,,,255,,,,,,,255,,,255,255,255,255,255,255,255,255,,255,255,255,', +'255,255,,255,255,255,,,,,,,,,,,,,,,,,,,,255,,,255,,,255,255,,,255,,', +',,,255,,,,,,,,255,,,,,255,255,255,255,255,255,,,,255,255,,,,,,,255,', +',255,255,255,,,255,255,256,256,256,,256,,,,256,256,,,,256,,256,256,256', +'256,256,256,256,,,,,,256,256,256,256,256,256,256,,,256,,,,,,,256,,,256', +'256,256,256,256,256,256,256,,256,256,256,,256,256,,256,256,256,,,,,', +',,,,,,,,,,,,,,256,,,256,,,256,256,,,256,,,,,,256,,,,,,,,256,,,,,256', +'256,256,256,256,256,,,,256,256,,,,,,,256,,,256,256,256,,,256,256,257', +'257,257,,257,,,,257,257,,,,257,,257,257,257,257,257,257,257,,,,,,257', +'257,257,257,257,257,257,,,257,,,,,,,257,,,257,257,257,257,257,257,257', +'257,,257,257,257,,257,257,,257,257,257,,,,,,,,,,,,,,,,,,,,257,,,257', +',,257,257,,,257,,,,,,257,,,,,,,,257,,,,,257,257,257,257,257,257,,,,257', +'257,,,,,,,257,,,257,257,257,,,257,257,258,258,258,,258,,,,258,258,,', +',258,,258,258,258,258,258,258,258,,,,,,258,258,258,258,258,258,258,', +',258,,,,,,,258,,,258,258,258,258,258,258,258,258,,258,258,258,,258,258', +',258,258,258,,,,,,,,,,,,,,,,,,,,258,,,258,,,258,258,,,258,,,,,,258,', +',,,,,,258,,,,,258,258,258,258,258,258,,,,258,258,,,,,,,258,,,258,258', +'258,,,258,258,259,259,259,,259,,,,259,259,,,,259,,259,259,259,259,259', +'259,259,,,,,,259,259,259,259,259,259,259,,,259,,,,,,,259,,,259,259,259', +'259,259,259,259,259,,259,259,259,,259,259,,259,259,259,,,,,,,,,,,,,', +',,,,,,259,,,259,,,259,259,,,259,,,,,,259,,,,,,,,259,,,,,259,259,259', +'259,259,259,,,,259,259,,,,,,,259,,,259,259,259,,,259,259,260,260,260', +',260,,,,260,260,,,,260,,260,260,260,260,260,260,260,,,,,,260,260,260', +'260,260,260,260,,,260,,,,,,,260,,,260,260,260,260,260,260,260,260,,260', +'260,260,,260,260,,260,260,260,,,,,,,,,,,,,,,,,,,,260,,,260,,,260,260', +',,260,,,,,,260,,,,,,,,260,,,,,260,260,260,260,260,260,,,,260,260,,,', +',,,260,,,260,260,260,,,260,260,261,261,261,,261,,,,261,261,,,,261,,261', +'261,261,261,261,261,261,,,,,,261,261,261,261,261,261,261,,,261,,,,,', +',261,,,261,261,261,261,261,261,261,261,,261,261,261,,261,261,,261,261', +'261,,,,,,,,,,,,,,,,,,,,261,,,261,,,261,261,,,261,,,,,,261,,,,,,,,261', +',,,,261,261,261,261,261,261,,,,261,261,,,,,,,261,,,261,261,261,,,261', +'261,262,262,262,,262,,,,262,262,,,,262,,262,262,262,262,262,262,262', +',,,,,262,262,262,262,262,262,262,,,262,,,,,,,262,,,262,262,262,262,262', +'262,262,262,,262,262,262,,262,262,,262,262,262,,,,,,,,,,,,,,,,,,,,262', +',,262,,,262,262,,,262,,,,,,262,,,,,,,,262,,,,,262,262,262,262,262,262', +',,,262,262,,,,,,,262,,,262,262,262,,,262,262,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,263,263,,,,,,,,,,,,,,,,,,,,263,,,263,,,263,263,,,263,,', +',,,263,,,,,,,,263,,,,,263,263,263,263,263,263,,,,263,263,,,,,,,263,', +',263,263,263,,,263,263,264,264,264,,264,,,,264,264,,,,264,,264,264,264', +'264,264,264,264,,,,,,264,264,264,264,264,264,264,,,264,,,,,,,264,,,264', +'264,264,264,264,264,264,264,,264,264,264,,264,264,,264,264,264,,,,,', +',,,,,,,,,,,,,,264,,,264,,,264,264,,,264,,,,,,264,,,,,,,,264,,,,,264', +'264,264,264,264,264,,,,264,264,,,,,,,264,,,264,264,264,,,264,264,265', +'265,265,,265,,,,265,265,,,,265,,265,265,265,265,265,265,265,,,,,,265', +'265,265,265,265,265,265,,,265,,,,,,,265,,,265,265,265,265,265,265,265', +'265,,265,265,265,,265,265,,265,265,265,,,,,,,,,,,,,,,,,,,,265,,,265', +',,265,265,,,265,,,,,,265,,,,,,,,265,,,,,265,265,265,265,265,265,,,,265', +'265,,,,,,,265,,,265,265,265,,,265,265,266,266,266,,266,,,,266,266,,', +',266,,266,266,266,266,266,266,266,,,,,,266,266,266,266,266,266,266,', +',266,,,,,,,266,,,266,266,266,266,266,266,266,266,,266,266,266,,266,266', +',266,266,266,,,,,,,,,,,,,,,,,,,,266,,,266,,,266,266,,,266,,,,,,266,', +',,,,,,266,,,,,266,266,266,266,266,266,,,,266,266,,,,,,,266,,,266,266', +'266,,,266,266,267,267,267,,267,,,,267,267,,,,267,,267,267,267,267,267', +'267,267,,,,,,267,267,267,267,267,267,267,,,267,,,,,,,267,,,267,267,267', +'267,267,267,267,267,,267,267,267,,267,267,,267,267,267,,,,,,,,,,,,,', +',,,,,,267,,,267,,,267,267,,,267,,,,,,267,,,,,,,,267,,,,,267,267,267', +'267,267,267,,,,267,267,,,,,,,267,,,267,267,267,,,267,267,268,268,268', +',268,,,,268,268,,,,268,,268,268,268,268,268,268,268,,,,,,268,268,268', +'268,268,268,268,,,268,,,,,,,268,,,268,268,268,268,268,268,268,268,,268', +'268,268,,268,268,,268,268,268,,,,,,,,,,,,,,,,,,,,268,,,268,,,268,268', +',,268,,,,,,268,,,,,,,,268,,,,,268,268,268,268,268,268,,,,268,268,,,', +',,,268,,,268,268,268,,,268,268,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,,,,,,269,,,,,,,,269', +',,,,269,269,269,269,269,269,,,,269,269,,,,,,,269,,,269,269,269,60,,269', +'269,,,,60,60,60,,,60,60,60,567,60,567,567,567,567,567,,,,,60,60,60,', +',567,,,,,60,60,,60,60,60,60,60,,,,,,,,,,567,,,,,,,,,567,567,567,567', +',60,60,60,60,60,60,60,60,60,60,60,60,60,60,,,60,60,60,,,60,,,60,,,60', +'60,,60,567,60,,60,,60,60,60,60,60,60,60,,60,,60,985,,985,985,985,985', +'985,,,,,,60,60,60,60,985,60,30,60,,,,,60,30,30,30,,,30,30,30,,30,,,', +'985,,,,,30,30,30,,985,985,985,985,,,,30,30,,30,30,30,30,30,,,,,,,,,', +',,,,,,,,,,,,985,,30,30,30,30,30,30,30,30,30,30,30,30,30,30,,,30,30,30', +',,30,,30,30,,,30,30,,30,,30,,30,,30,30,30,30,30,30,30,,30,30,30,,,,', +',,,,,,,,30,30,456,30,,30,,,,456,456,456,30,,456,456,456,739,456,739', +'739,739,739,739,,,,456,456,456,,,,739,,,,,456,456,,456,456,456,456,456', +',,,,,,,,,739,,,,,,,,,739,739,739,739,,456,456,456,456,456,456,456,456', +'456,456,456,456,456,456,,,456,456,456,,,456,,456,456,,,456,456,,456', +'739,456,,456,,456,456,456,456,456,456,456,,456,456,456,,,,,,,,,,,,,456', +'456,466,456,,456,,,,466,466,466,456,,466,466,466,741,466,741,741,741', +'741,741,,,,466,466,466,466,,,741,,,,,466,466,,466,466,466,466,466,,', +',,,,,,,741,,,,,,,,,741,741,741,741,,466,466,466,466,466,466,466,466', +'466,466,466,466,466,466,,,466,466,466,,,466,,,466,,,466,466,,466,741', +'466,,466,,466,466,466,466,466,466,466,,466,466,466,743,,743,743,743', +'743,743,,,,,,466,466,466,466,743,466,505,466,,,,,466,505,505,505,,,505', +'505,505,,505,,,,743,,,,,505,505,,,,,743,743,,,,505,505,,505,505,505', +'505,505,,,,,,,,,,,,,,,,,,,,,,743,,,,,,,,,,,,,505,,465,,,,,505,,465,465', +'465,505,505,465,465,465,1089,465,1089,1089,1089,1089,1089,,,,465,465', +'465,465,,,1089,505,505,,,465,465,,465,465,465,465,465,,,505,,,,,505', +',1089,,,,,505,,,,,,1089,1089,,465,465,465,465,465,465,465,465,465,465', +'465,465,465,465,,,465,465,465,,,465,,,465,,,465,465,,465,1089,465,,465', +',465,465,465,465,465,465,465,,465,465,465,987,,987,987,987,987,987,', +',,,,465,465,465,465,987,465,31,465,,,,,465,31,31,31,,,31,31,31,,31,', +',,987,,,,,,31,31,,,,987,987,,,,31,31,,31,31,31,31,31,,,,,,,,,,,,,,,', +',,,,,,987,,31,31,31,31,31,31,31,31,31,31,31,31,31,31,,,31,31,31,,,31', +',31,31,,,31,31,,31,,31,,31,,31,31,31,31,31,31,31,,31,,31,,,,,,,,,,,', +',31,31,,31,,31,,,,,,,31,654,654,654,654,654,654,654,654,654,654,654', +'654,654,654,654,654,654,654,654,654,654,654,654,654,,,,654,654,654,654', +'654,654,654,654,654,654,,,,,,654,654,654,654,654,654,654,654,654,,,654', +',,,,,,,,654,654,,654,654,654,654,654,654,654,,,654,654,,,,654,654,654', +'654,,,,,,,,,,,,,,654,654,,654,654,654,654,654,654,654,654,654,654,654', +',,654,654,,,,,,,,,,654,,,,,,,,,654,,,,,654,422,422,422,422,422,422,422', +'422,422,422,422,422,422,422,422,422,422,422,422,422,422,422,422,422', +',,,422,422,422,422,422,422,422,422,422,422,,,,,,422,422,422,422,422', +'422,422,422,422,,,422,,,,,,,,,422,422,,422,422,422,422,422,422,422,', +',422,422,,,,422,422,422,422,,,,,,,,,,,,,,422,422,,422,422,422,422,422', +'422,422,422,422,422,422,,,422,422,,,,,,,,,,422,,,,,,,,,422,,,,,422,103', '103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103', -',,,103,103,103,103,103,103,103,103,103,103,,,,,,103,103,103,103,103', -'103,103,103,103,103,103,103,,103,,,,,,,103,103,,103,103,103,103,103', -'103,103,,,103,103,,,,103,103,103,103,,,,,,,,,,,,,,103,103,,103,103,103', -'103,103,103,103,103,103,103,103,,,103,,,,,,,,,,,,,,,,,,,,103,,,,,103', -'12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12', -'12,,,,12,12,12,12,12,12,12,12,12,12,,,,,,12,12,12,12,12,12,12,12,12', -',,12,,,,,,,,,12,12,,12,12,12,12,12,12,12,,,12,12,,,,12,12,12,12,,,,', -',,,,,,,,,12,12,,12,12,12,12,12,12,12,12,12,12,12,,,12,12,,,,,,,,,,12', -',478,478,,,478,,,12,,,,,12,478,478,,478,478,478,478,478,478,478,,,478', -'478,,,,478,478,478,478,,,,,,478,,,,,,,,478,478,,478,478,478,478,478', -'478,478,478,478,478,478,,,478,,,,,,,,,,1038,1038,,,1038,,,,,,478,,,1038', -'1038,478,1038,1038,1038,1038,1038,1038,1038,,,1038,1038,,,,1038,1038', -'1038,1038,,,,,,1038,,,,,,,,1038,1038,,1038,1038,1038,1038,1038,1038', -'1038,1038,1038,1038,1038,,,1038,,,,,,,,,,555,555,,,555,,,,,,1038,,,555', -'555,1038,555,555,555,555,555,555,555,,,555,555,,,,555,555,555,555,,', -',,,555,,,,,,,,555,555,,555,555,555,555,555,555,555,555,555,555,555,', -',555,,,,,,,,,,545,545,,,545,,,,,,555,,,545,545,555,545,545,545,545,545', -'545,545,,,545,545,,,,545,545,545,545,,,,,,545,,,,,,,,545,545,,545,545', -'545,545,545,545,545,545,545,545,545,,,545,,,,,,,,,,619,619,,,619,,,', -',,545,,,619,619,545,619,619,619,619,619,619,619,,,619,619,,,,619,619', -'619,619,,,,,,619,,,,,,,,619,619,,619,619,619,619,619,619,619,619,619', -'619,619,,,619,,,,,,,,,,544,544,,,544,,,,,,619,,,544,544,619,544,544', -'544,544,544,544,544,,,544,544,,,,544,544,544,544,,,,,,544,,,,,,,,544', -'544,,544,544,544,544,544,544,544,544,544,544,544,,,544,,,,,,,,,,554', -'554,,,554,,,,,,544,,,554,554,544,554,554,554,554,554,554,554,,,554,554', -',,,554,554,554,554,,,,,,554,,,,,,,,554,554,,554,554,554,554,554,554', -'554,554,554,554,554,,,554,,,,,,,,,,618,618,,,618,,,,,,554,,,618,618', -'554,618,618,618,618,618,618,618,,,618,618,,,,618,618,618,618,,,,,,618', -',,,,,,,618,618,,618,618,618,618,618,618,618,618,618,618,618,,,618,,', -',,,,,,,778,778,,,778,,,,,,618,,,778,778,618,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,,,,,,,,,,230,230,,,230,,,,,,778', -',,230,230,778,230,230,230,230,230,230,230,,,230,230,,,,230,230,230,230', +'103,103,103,103,103,103,,,,103,103,103,103,103,103,103,103,103,103,', +',,,,103,103,103,103,103,103,103,103,103,103,103,103,,103,,,,,,,103,103', +',103,103,103,103,103,103,103,,,103,103,,,,103,103,103,103,,,,,,,,,,', +',,,103,103,,103,103,103,103,103,103,103,103,103,103,103,,,103,,,,,,', +',,,,,,,,,,,,,103,,,,,103,787,787,787,787,787,787,787,787,787,787,787', +'787,787,787,787,787,787,787,787,787,787,787,787,787,,,,787,787,787,787', +'787,787,787,787,787,787,,,,,,787,787,787,787,787,787,787,787,787,,,787', +',,,,,,,,787,787,,787,787,787,787,787,787,787,,,787,787,,,,787,787,787', +'787,,,,,,,,,,,,,,787,787,,787,787,787,787,787,787,787,787,787,787,787', +',,787,,,,,,,,,,,,,,,,,,,,787,,,,,787,75,75,75,75,75,75,75,75,75,75,75', +'75,75,75,75,75,75,75,75,75,75,75,75,75,,,,75,75,75,75,75,75,75,75,75', +'75,,,,,,75,75,75,75,75,75,75,75,75,75,75,75,,75,,,,,,,75,75,,75,75,75', +'75,75,75,75,,,75,75,,,,75,75,75,75,,,,,,75,,,,,,,,75,75,,75,75,75,75', +'75,75,75,75,75,75,75,,,75,,,,,,,,,,,,,,,,,,,,75,,,,,75,11,11,11,11,11', +'11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,,,,11,11,11', +'11,11,11,11,11,11,11,,,,,,11,11,11,11,11,11,11,11,11,11,,11,,,,,,,,', +'11,11,,11,11,11,11,11,11,11,,,11,11,,,,11,11,11,11,,,,,,,,,,,,,,11,11', +',11,11,11,11,11,11,11,11,11,11,11,,,11,11,,,,,,,,,,11,,,,,,,,,11,,,', +',11,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12', +'12,12,,,,12,12,12,12,12,12,12,12,12,12,,,,,,12,12,12,12,12,12,12,12', +'12,,,12,,,,,,,,,12,12,,12,12,12,12,12,12,12,,,12,12,,,,12,12,12,12,', +',,,,,,,,,,,,12,12,,12,12,12,12,12,12,12,12,12,12,12,,,12,12,,,,,,,,', +',12,,1042,1042,,,1042,,,12,,,,,12,1042,1042,,1042,1042,1042,1042,1042', +'1042,1042,,,1042,1042,,,,1042,1042,1042,1042,,,,,,1042,,,,,,,,1042,1042', +',1042,1042,1042,1042,1042,1042,1042,1042,1042,1042,1042,,,1042,,,,,', +',,,,550,550,,,550,,,,,,1042,,,550,550,1042,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,,,,,,,,,,230,230,,,230,,,,,,550,,', +'230,230,550,230,230,230,230,230,230,230,,,230,230,,,,230,230,230,230', ',,,,,230,,,,,,,,230,230,,230,230,230,230,230,230,230,230,230,230,230', -',,230,,,,,,,,,,668,668,,,668,,,,,,230,,,668,668,230,668,668,668,668', -'668,668,668,,,668,668,,,,668,668,668,668,,,,,,668,,,,,,,,668,668,,668', -'668,668,668,668,668,668,668,668,668,668,,1060,668,1060,1060,1060,1060', -'1060,,,,,278,278,,,278,1060,,,,,668,,,278,278,668,278,278,278,278,278', -'278,278,,,278,278,1060,,,278,278,278,278,,,,,1060,1060,,,,,,,,278,278', -',278,278,278,278,278,278,278,278,278,278,278,,,278,,,,,,,,,1060,229', -'229,,,229,,,,,,278,,,229,229,278,229,229,229,229,229,229,229,,,229,229', -',,,229,229,229,229,,,,,,229,,,,,,,,229,229,,229,229,229,229,229,229', -'229,229,229,229,229,,,229,,,,,,,,,,667,667,,,667,,,,,,229,,,667,667', -'229,667,667,667,667,667,667,667,,,667,667,,,,667,667,667,667,,,,,,667', -',,,,,,,667,667,,667,667,667,667,667,667,667,667,667,667,667,,,667,,', -',,,,,,,779,779,,,779,,,,,,667,,,779,779,667,779,779,779,779,779,779', -'779,,,779,779,,,,779,779,779,779,,,,,,779,,,,,,,,779,779,,779,779,779', -'779,779,779,779,779,779,779,779,,,779,,,,,,,,,,477,477,,,477,,,,,,779', -',,477,477,779,477,477,477,477,477,477,477,,,477,477,,,,477,477,477,477', -',,,,,477,,,,,,,,477,477,,477,477,477,477,477,477,477,477,477,477,477', -',,477,,,,,,,,,,1032,1032,,,1032,,,,,,477,,,1032,1032,477,1032,1032,1032', -'1032,1032,1032,1032,,,1032,1032,,,,1032,1032,1032,1032,,,,,,1032,,,', -',,,,1032,1032,,1032,1032,1032,1032,1032,1032,1032,1032,1032,1032,1032', -',,1032,,,,,,,,,,1037,1037,,,1037,,,,,,1032,,,1037,1037,1032,1037,1037', -'1037,1037,1037,1037,1037,,,1037,1037,,,,1037,1037,1037,1037,,,,,,1037', -',,,,,,,1037,1037,,1037,1037,1037,1037,1037,1037,1037,1037,1037,1037', -'1037,,787,1037,787,787,787,787,787,982,,982,982,982,982,982,,,787,,', -',,1037,,982,,984,1037,984,984,984,984,984,,,,,,,787,,,984,,,,982,,787', -'787,787,787,,,,982,982,982,982,,,,,357,984,357,357,357,357,357,,,,,', -'984,984,,,357,,,,951,787,951,951,951,951,951,829,982,829,829,829,829', -'829,,,951,,357,357,,,,829,,,984,357,357,357,357,1062,,1062,1062,1062', -'1062,1062,951,,,,,,,829,,1062,,951,951,,,,829,829,829,829,,,,,1085,357', -'1085,1085,1085,1085,1085,1062,949,,949,949,949,949,949,,1085,,1062,1062', -'829,951,,,949,,,947,829,947,947,947,947,947,,,,,1085,,,,,947,,,949,', -',1085,1085,,1062,,,,,949,949,,,,,,945,947,945,945,945,945,945,,,,,,947', -'947,,,945,,,1085,,,,,,,,949,,,,,,,,,,,945,,,,,,,,947,945,945,945,945', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,945' ] - racc_action_check = arr = ::Array.new(26188, nil) +',,230,,,,,,,,,,660,660,,,660,,,,,,230,,,660,660,230,660,660,660,660', +'660,660,660,,,660,660,,,,660,660,660,660,,,,,,660,,,,,,,,660,660,,660', +'660,660,660,660,660,660,660,660,660,660,,,660,,,,,,,,,,661,661,,,661', +',,,,,660,,,661,661,660,661,661,661,661,661,661,661,,,661,661,,,,661', +'661,661,661,,,,,,661,,,,,,,,661,661,,661,661,661,661,661,661,661,661', +'661,661,661,,,661,,,,,,,,,,474,474,,,474,,,,,,661,,,474,474,661,474', +'474,474,474,474,474,474,,,474,474,,,,474,474,474,474,,,,,,474,,,,,,', +',474,474,,474,474,474,474,474,474,474,474,474,474,474,,,474,,,,,,,,', +',776,776,,,776,,,,,,474,,,776,776,474,776,776,776,776,776,776,776,,', +'776,776,,,,776,776,776,776,,,,,,776,,,,,,,,776,776,,776,776,776,776', +'776,776,776,776,776,776,776,,,776,,,,,,,,,,549,549,,,549,,,,,,776,,', +'549,549,776,549,549,549,549,549,549,549,,,549,549,,,,549,549,549,549', +',,,,,549,,,,,,,,549,549,,549,549,549,549,549,549,549,549,549,549,549', +',,549,,,,,,,,,,473,473,,,473,,,,,,549,,,473,473,549,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,473,,,473,,,,,,,,,,229,229,,,229', +',,,,,473,,,229,229,473,229,229,229,229,229,229,229,,,229,229,,,,229', +'229,229,229,,,,,,229,,,,,,,,229,229,,229,229,229,229,229,229,229,229', +'229,229,229,,,229,,,,,,,,,,777,777,,,777,,,,,,229,,,777,777,229,777', +'777,777,777,777,777,777,,,777,777,,,,777,777,777,777,,,,,,777,,,,,,', +',777,777,,777,777,777,777,777,777,777,777,777,777,777,,,777,,,,,,,,', +',1036,1036,,,1036,,,,,,777,,,1036,1036,777,1036,1036,1036,1036,1036', +'1036,1036,,,1036,1036,,,,1036,1036,1036,1036,,,,,,1036,,,,,,,,1036,1036', +',1036,1036,1036,1036,1036,1036,1036,1036,1036,1036,1036,,,1036,,,,,', +',,,,611,611,,,611,,,,,,1036,,,611,611,1036,611,611,611,611,611,611,611', +',,611,611,,,,611,611,611,611,,,,,,611,,,,,,,,611,611,,611,611,611,611', +'611,611,611,611,611,611,611,,,611,,,,,,,,,,612,612,,,612,,,,,,611,,', +'612,612,611,612,612,612,612,612,612,612,,,612,612,,,,612,612,612,612', +',,,,,612,,,,,,,,612,612,,612,612,612,612,612,612,612,612,612,612,612', +',,612,,,,,,,,,,1041,1041,,,1041,,,,,,612,,,1041,1041,612,1041,1041,1041', +'1041,1041,1041,1041,,,1041,1041,,,,1041,1041,1041,1041,,,,,,1041,,,', +',,,,1041,1041,,1041,1041,1041,1041,1041,1041,1041,1041,1041,1041,1041', +',,1041,,,,,,,,,,539,539,,,539,,,,,,1041,,,539,539,1041,539,539,539,539', +'539,539,539,,,539,539,,,,539,539,539,539,,,,,,539,,,,,,,,539,539,,539', +'539,539,539,539,539,539,539,539,539,539,,1060,539,1060,1060,1060,1060', +'1060,,,,,278,278,,,278,1060,,,,,539,,,278,278,539,278,278,278,278,278', +'278,278,,,278,278,1060,,,278,278,278,278,,,1060,1060,1060,1060,,,,,', +',,278,278,,278,278,278,278,278,278,278,278,278,278,278,,,278,1046,,1046', +'1046,1046,1046,1046,,1060,540,540,,,540,,,1046,,,278,,,540,540,278,540', +'540,540,540,540,540,540,,,540,540,,,1046,540,540,540,540,,,,,,540,1046', +'1046,,,,,,540,540,,540,540,540,540,540,540,540,540,540,540,540,,353', +'540,353,353,353,353,353,,,,,,1046,,,,353,,,,,540,,,,1064,540,1064,1064', +'1064,1064,1064,,,,,,,353,353,1062,1064,1062,1062,1062,1062,1062,353', +'353,353,353,,,,,828,1062,828,828,828,828,828,,1064,,,,,,,,828,,,1064', +'1064,,,1062,,,,,353,,,,,,1062,1062,,,828,785,,785,785,785,785,785,,828', +'828,828,828,,,1064,786,785,786,786,786,786,786,,,,,,,,1062,,786,,,,', +'828,,785,,,,,,828,,,785,785,785,785,,1066,786,1066,1066,1066,1066,1066', +',,,786,786,786,786,,,1066,,,,,,,,,,,,,,,785,,,,,,,1066,,,,,,,,786,,', +'1066,1066,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,1066' ] + racc_action_check = arr = ::Array.new(26144, 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, 1220, 3722, 1353, nil, -67, nil, nil, 10451, 901, - nil, 23776, 24466, 824, nil, 774, 758, 667, 812, 1256, - 219, nil, -73, 5971, 2030, 857, nil, 623, nil, 160, - 23501, 23373, 6111, 6251, 6391, nil, 2594, 6531, 6671, nil, - 751, 293, 294, 810, 313, 6951, 7091, 245, 7231, 705, - 974, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 22769, nil, -66, 7371, nil, 71, nil, 7511, 7651, nil, - nil, 7791, 7931, 692, nil, 24052, nil, nil, nil, nil, + nil, 1243, 4868, 1215, nil, 673, nil, nil, 5429, 1751, + nil, 24346, 24484, -58, nil, 944, 943, 575, 988, 1346, + 403, nil, -70, 5709, 1766, 926, nil, 373, nil, 143, + 22919, 23519, 5989, 6129, 6269, nil, 2048, 6409, 6549, nil, + 793, 446, 447, 832, 258, 6969, 7109, 335, 7249, 738, + 1133, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 22787, nil, -26, nil, nil, 7, nil, 7809, 7949, nil, + nil, 8089, 8229, 717, nil, 24208, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, -66, nil, nil, nil, nil, nil, nil, 637, - 632, 622, 612, 24328, nil, nil, nil, nil, nil, nil, - 520, nil, nil, 0, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 8211, nil, nil, nil, - nil, 8351, 8491, 8631, 8771, 8911, 626, nil, 865, nil, + nil, nil, -63, nil, nil, nil, nil, nil, nil, 634, + 630, 624, 615, 23932, nil, nil, nil, nil, nil, nil, + 530, nil, nil, 664, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 8649, nil, nil, nil, + nil, 8789, 8929, 9069, 9209, 9349, 530, nil, 667, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 589, nil, 2735, 9191, 9331, 9471, 9611, 9751, 9891, 25418, - 25199, nil, 10031, 10171, 10311, nil, nil, 612, -53, 104, - 661, 108, 572, 625, nil, 10591, 2171, 564, 10871, 11011, - 11151, 11291, 11431, 11571, 11711, 11851, 11991, 12131, 12271, 12411, - 12551, 12691, 12831, 12971, 13111, 13251, 13391, 13531, 13671, 13811, - nil, nil, nil, nil, 13951, nil, nil, nil, 25345, nil, - nil, 548, 14091, nil, nil, 553, nil, nil, nil, 14231, - nil, nil, 14371, nil, 1748, nil, 503, 501, nil, 14651, - 467, 14791, nil, nil, 14931, 15071, nil, nil, 343, nil, - nil, 15351, 1451, nil, 343, 1607, 354, 379, 289, 15771, - 1325, 1184, 1079, 1046, 1370, 724, nil, 1322, 1281, -10, - nil, nil, nil, 1291, 371, 1238, 16051, nil, 305, 1294, - 709, nil, 1285, 16611, nil, 16751, 3017, nil, 16891, 1260, - nil, 183, 409, 1244, 17451, nil, nil, 25907, 405, 34, - -10, 17591, 1184, 1043, -93, 1317, 1192, 6, 7, 1361, - 1262, 24, 1291, nil, nil, 17871, nil, 18011, 360, 663, - 729, 149, 136, 491, 577, 557, 361, nil, 362, nil, - nil, nil, nil, nil, 286, nil, 298, nil, 450, nil, - 1189, 261, nil, 1184, 256, nil, 1156, -41, nil, 1151, - -25, nil, 290, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 2876, 24190, nil, nil, - nil, nil, 1158, nil, nil, 1137, 18571, 1118, nil, nil, - 1101, nil, 528, 109, nil, nil, nil, 1043, nil, nil, - nil, nil, nil, 1184, 1099, nil, nil, 1095, 1092, 306, - -77, 23165, nil, nil, nil, 784, 132, 1120, nil, nil, - 23033, 22901, nil, nil, nil, 140, nil, 25637, 24542, 19131, - 142, 19271, 19411, 19551, 2171, 2312, 707, 778, 1129, 1110, - 1102, 1099, 3722, 3581, 3323, 862, 2594, 2735, 3158, 3017, - 3440, 799, 738, 2876, 2453, 1325, 729, 1090, nil, 23293, - nil, nil, nil, nil, nil, nil, nil, nil, 959, 957, - nil, nil, 21791, nil, nil, 21931, nil, 22071, nil, 234, - nil, nil, nil, 22211, 1592, 968, 953, 942, nil, nil, - 941, 22351, 943, 22631, 24907, 24761, 1328, 950, nil, 20251, - 903, nil, 935, 5411, 24980, 24688, 3299, 1466, 5551, 957, - 948, 1466, nil, nil, 5831, nil, nil, 5691, nil, 864, - nil, 515, 913, nil, 583, nil, 719, 875, nil, 878, - 879, 881, nil, nil, nil, nil, nil, nil, nil, nil, - 869, 488, nil, nil, 5271, nil, nil, nil, 976, nil, - nil, nil, 977, nil, nil, 978, 2312, 1025, nil, 2453, - 25, 1042, 1047, 1041, 1058, nil, nil, 22491, 25053, 24834, - 41, nil, 230, 229, 240, nil, 723, nil, 975, 21651, - nil, 994, nil, nil, nil, 21511, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 160, nil, nil, - 127, nil, nil, nil, 973, nil, nil, 976, nil, 1012, - nil, 23914, nil, 1001, 21371, 21231, 21091, 25491, 25272, 20951, - 394, 1043, 20811, 20671, 20531, 20391, 1046, nil, nil, nil, - 5131, 20111, 1058, nil, nil, 143, 145, 652, 388, 1045, - 1046, nil, 204, 1149, 67, nil, 1068, nil, 1173, nil, - nil, 1062, nil, 1104, 19971, nil, nil, 19831, nil, nil, - -111, 19691, 1068, nil, 1072, 21, 23, 1118, 199, 1043, - 1121, 1083, 18991, 18851, 1156, 18, 214, nil, 18711, nil, - nil, 1100, 196, nil, nil, 1, 1114, 343, nil, nil, - 453, 23096, nil, 22964, nil, 22832, nil, 18431, nil, 656, - nil, 1146, 127, 1158, nil, nil, nil, nil, 643, nil, - 1282, nil, nil, nil, nil, nil, 1288, nil, 18291, 1184, - 33, 25, 69, 65, 3581, nil, 1187, nil, 25126, 25564, - 18151, nil, nil, nil, 649, 3863, 4850, 25845, 451, 23638, - -16, 977, 4991, nil, nil, nil, nil, nil, nil, nil, - 1203, 17731, 1211, 155, 217, 260, 912, 1889, 17311, nil, - 1220, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 17171, 17031, 16471, 16331, 262, 16191, nil, nil, 25934, - nil, 3158, nil, nil, 1272, nil, -53, nil, nil, nil, - nil, 1259, 168, nil, nil, nil, nil, nil, nil, nil, - 3299, nil, 1287, 1332, nil, nil, nil, nil, nil, 3440, - 4427, -125, -40, -29, nil, nil, nil, 68, 84, nil, - 96, 136, nil, 163, nil, nil, 184, 616, 197, 819, - nil, 363, nil, nil, 15911, nil, 4709, 385, nil, nil, - 32, 38, 443, 193, 1228, nil, 352, 1466, 15631, 372, - 479, 481, 374, 399, nil, nil, nil, nil, nil, nil, - nil, 371, 393, 283, nil, nil, 15491, 15211, 1607, 444, - 446, nil, 450, 454, 472, nil, 501, 492, 477, 14511, - nil, nil, nil, nil, 1748, 1889, nil, 11, 10731, nil, - 563, 678, 1311, nil, nil, 26053, nil, 26016, nil, 25997, - nil, 25927, nil, nil, nil, nil, 135, 645, 604, nil, - -7, nil, nil, 9051, 2030, nil, nil, 735, 259, nil, - nil, nil, nil, nil, 660, nil, 350, nil, nil, 23257, - nil, nil, 25852, nil, 25870, nil, nil, 664, 8071, 822, - 721, nil, 769, 4568, 480, 915, 920, 731, 948, nil, - nil, nil, 483, nil, nil, nil, 659, 660, 670, 690, - 693, 527, 700, 513, 4286, nil, 47, nil, nil, 4145, - 4004, 707, nil, nil, 710, 717, 718, 873, nil, 721, - nil, 1115, 25710, nil, nil, 872, 6811, 25783, 24615, 1220, - nil, 921, 23465, nil, nil, nil, nil, 905, 757, 661, - nil, nil, nil, 885, 887, nil, 22733, nil, 715, nil, - 25334, nil, 25958, nil, nil, 816, 819, nil, 788, -1, - -11, -9, 1325, nil, 818, 821, nil, nil, nil, 1005, - 1027, 1036, 1209, -8, nil, 25989, nil, nil, nil, nil, - 395, nil ] + 493, nil, 3035, 9489, 9629, 9769, 9909, 10049, 10189, 25217, + 24706, nil, 18309, 18449, 18589, nil, nil, 1097, 142, 207, + 476, 213, 365, 412, nil, 19429, 1907, 405, 19709, 19849, + 19989, 20129, 20269, 20409, 20549, 20689, 20829, 20969, 21109, 21249, + 21389, 21529, 21669, 21809, 21949, 22089, 22229, 22369, 22509, 22649, + nil, nil, nil, nil, 10329, nil, nil, nil, 25728, nil, + nil, 355, 10469, nil, nil, 351, nil, nil, nil, 10609, + nil, nil, 10749, nil, 1343, nil, 234, 218, nil, 11029, + 230, 11169, nil, nil, 11309, 11449, nil, nil, 728, nil, + nil, 11589, 1625, nil, 9, 3176, -24, -25, -95, 11869, + 1061, 1061, 992, 975, 1278, 855, nil, 1199, 1118, -24, + nil, nil, nil, 1152, 129, 1110, 12709, nil, 449, 1162, + 672, nil, 1142, 13129, nil, 13269, 5009, 1069, 13549, 13689, + 13829, nil, nil, 25863, 661, 17, 26, 14109, 2330, 2189, + 437, 1135, 1017, 27, 35, 668, 1066, 36, 1093, nil, + nil, 14949, nil, 15089, 567, 644, 701, 400, 238, 244, + 624, 758, 711, nil, 504, nil, nil, nil, nil, nil, + 397, nil, 371, nil, 400, nil, 1179, 333, nil, 302, + nil, 312, -30, nil, 442, -25, nil, 429, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 23794, nil, nil, nil, nil, 795, nil, nil, + 784, 16769, 812, nil, nil, 804, nil, 501, 91, nil, + nil, nil, 1061, nil, nil, nil, nil, nil, 1202, 971, + nil, nil, 969, 995, 396, 315, 23047, nil, nil, nil, + 397, 0, 952, nil, nil, 23387, 23175, nil, nil, nil, + -10, nil, 903, 25144, 24925, 5289, -30, 18169, 18029, 17889, + 2612, 2330, 563, 222, 764, 1022, 1006, 921, 3740, 3599, + 880, 3458, 2471, 2753, 2894, 3317, 2189, 945, 852, 3035, + 3176, 1625, 746, 1319, nil, 23307, nil, nil, nil, nil, + nil, nil, nil, nil, 1090, 1084, nil, nil, 17749, nil, + nil, 17609, nil, 17469, nil, 126, nil, nil, nil, 17329, + 1469, 914, 903, nil, nil, 899, 17189, 848, 17049, 25655, + 25801, 538, 855, nil, 16909, 806, nil, 834, 16629, 25071, + 24633, 612, 1484, 16489, 891, 885, nil, 1610, nil, 433, + 448, 785, 766, nil, 525, 734, nil, 22751, nil, 691, + 595, nil, 583, 491, 463, nil, nil, nil, nil, nil, + nil, nil, nil, 436, 764, nil, nil, 16349, nil, nil, + nil, 502, nil, nil, nil, 494, nil, nil, 478, 4445, + 449, nil, 1202, -16, 405, 356, 283, 248, nil, nil, + 16209, 25436, 25509, 25, nil, 173, 197, 229, nil, 470, + nil, 1158, 16069, nil, 1172, nil, nil, nil, 15929, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 294, nil, nil, 327, nil, nil, nil, 1100, nil, nil, + 1064, nil, 1766, nil, 23656, nil, 1027, 15789, 15649, 15509, + 24779, 24852, 15369, 303, 1008, 15229, 14809, 14669, 14529, 1046, + nil, nil, nil, 14389, 14249, 1055, nil, nil, nil, -54, + -63, 798, 133, 1047, 1033, nil, -47, 1147, 22, nil, + 1071, nil, 1178, nil, nil, 1060, nil, 1104, nil, nil, + nil, 13969, nil, 50, 13409, 1070, nil, 1074, -9, -5, + 1124, 198, 806, 1136, 1099, 12989, 12849, 1171, -31, 50, + nil, 12569, nil, nil, 1115, nil, 12429, nil, nil, 12289, + nil, nil, nil, 18, 1132, 319, nil, nil, 125, 23011, + nil, 23139, nil, 23238, nil, 12149, nil, 530, nil, 1168, + 260, 1188, nil, nil, nil, nil, 473, nil, 1301, nil, + nil, nil, nil, nil, 1316, nil, 12009, 1204, 21, -7, + 7, -1, 2471, nil, 1064, nil, 24998, 25290, 11729, nil, + nil, nil, 178, 4304, 4586, 25957, 25972, 24070, -34, 923, + 1343, nil, nil, 300, nil, nil, nil, 254, nil, 271, + 10889, 297, 274, 244, 930, 265, 1907, 19569, nil, 368, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 19289, 5149, 19149, 19009, 211, 18869, nil, nil, 25918, nil, + 4022, nil, nil, 475, nil, -54, nil, nil, 18729, nil, + 467, 218, nil, nil, nil, nil, nil, nil, nil, 2894, + nil, 497, 552, nil, nil, nil, 63, nil, 2753, 2612, + 522, 529, 540, nil, nil, nil, 546, 557, nil, 560, + 570, nil, 579, nil, nil, 584, 630, 585, 130, nil, + 721, nil, nil, 8509, nil, 1625, 747, nil, nil, 51, + 26, 765, 268, 1202, nil, 659, 1484, 8369, 732, 792, + nil, 677, 381, nil, nil, nil, nil, nil, nil, nil, + 671, nil, nil, nil, 101, nil, nil, 7669, 7529, 2048, + 703, 704, nil, 713, 715, 717, nil, 739, 730, 716, + 7389, nil, nil, nil, nil, 3740, nil, 3317, nil, 32, + 6829, nil, nil, 775, 881, 1329, nil, nil, 861, nil, + 727, nil, 593, nil, 460, nil, nil, nil, nil, 199, + 965, 791, nil, -1, nil, nil, 6689, 4727, nil, nil, + 914, 539, nil, nil, 923, nil, nil, 844, nil, 345, + nil, nil, 328, nil, nil, 22850, nil, 23450, nil, nil, + 843, 5849, 1205, 910, nil, 960, 4163, 1238, 1246, 1274, + 937, 1343, nil, nil, nil, 198, nil, nil, nil, 867, + 882, 894, 897, 898, 936, 901, 2175, 3881, nil, 281, + nil, nil, 3599, nil, 3458, 916, nil, nil, 917, 918, + 923, 926, nil, 929, nil, 1379, 25363, nil, nil, 1078, + 5569, 25582, 24560, 1387, nil, 1470, 25792, nil, nil, nil, + nil, 142, 971, 774, nil, nil, nil, 1092, 1093, nil, + 25717, nil, 25903, nil, 25888, nil, 26009, nil, nil, 1245, + -78, nil, -104, -8, 40, 6, 1484, nil, 825, 846, + nil, nil, nil, 849, 1164, 1155, 1054, 36, nil, 23351, + nil, nil, nil, nil, 647, nil ] racc_action_default = [ - -1, -647, -646, -647, -2, -633, -4, -5, -647, -8, - -9, -647, -647, -647, -35, -647, -647, -39, -647, -647, - -294, -50, -635, -647, -55, -60, -61, -62, -66, -271, - -271, -271, -308, -341, -342, -78, -646, -82, -90, -92, - -647, -535, -536, -647, -647, -647, -647, -230, -647, -635, - -244, -285, -286, -287, -288, -289, -290, -291, -292, -293, - -620, -296, -299, -646, -306, -316, -421, -647, -647, -57, - -57, -633, -647, -326, -333, -647, -343, -344, -346, -347, - -348, -349, -350, -351, -352, -353, -354, -355, -364, -466, - -467, -468, -469, -470, -471, -646, -474, -646, -646, -646, - -646, -646, -646, -646, -511, -517, -519, -520, -521, -522, - -618, -524, -525, -619, -527, -528, -529, -530, -531, -532, - -533, -534, -539, -540, 1092, -3, -634, -642, -643, -644, - -7, -647, -647, -647, -647, -647, -647, -23, -647, -121, + -1, -652, -651, -652, -2, -638, -4, -5, -652, -8, + -9, -652, -652, -652, -35, -652, -652, -39, -652, -652, + -295, -50, -640, -652, -55, -60, -61, -62, -66, -271, + -271, -271, -311, -345, -346, -78, -651, -82, -90, -92, + -652, -540, -541, -652, -652, -652, -652, -230, -652, -640, + -244, -286, -287, -288, -289, -290, -291, -292, -293, -294, + -625, -297, -301, -307, -309, -319, -425, -652, -652, -57, + -57, -638, -652, -329, -336, -652, -347, -348, -350, -351, + -352, -353, -354, -355, -356, -357, -358, -359, -368, -470, + -471, -472, -473, -474, -475, -651, -478, -651, -651, -651, + -488, -651, -651, -651, -516, -522, -524, -525, -526, -527, + -623, -529, -530, -624, -532, -533, -534, -535, -536, -537, + -538, -539, -544, -545, 1096, -3, -639, -647, -648, -649, + -7, -652, -652, -652, -652, -652, -652, -23, -652, -121, -122, -123, -124, -125, -126, -127, -128, -129, -133, -134, -135, -136, -137, -138, -139, -140, -141, -142, -143, -144, -145, -146, -147, -148, -149, -150, -151, -152, -153, -154, -155, -156, -157, -158, -159, -160, -161, -162, -163, -164, -165, -166, -167, -168, -169, -170, -171, -172, -173, -174, -175, -176, -177, -178, -179, -180, -181, -182, -183, -184, -185, -186, -187, -188, -189, -190, -191, -192, -193, -194, -195, -196, -197, -198, -199, -200, -201, -202, -203, -204, - -28, -130, -646, -647, -647, -647, -647, -647, -646, -647, - -647, -630, -647, -647, -635, -636, -54, -647, -535, -536, - -647, -294, -647, -647, -236, -647, -646, -647, -647, -647, - -647, -647, -647, -647, -647, -647, -647, -647, -647, -647, - -647, -647, -647, -647, -647, -647, -647, -647, -647, -647, - -245, -246, -247, -248, -647, -357, -450, -429, -647, -631, - -632, -67, -647, -315, -356, -647, -443, -445, -73, -646, - -440, -74, -635, -75, -251, -266, -646, -646, -270, -647, - -276, -647, -646, -612, -647, -647, -76, -77, -633, -16, - -17, -647, -20, -21, -80, -646, -635, -647, -83, -86, - -646, -98, -99, -647, -647, -106, -308, -311, -635, -433, - -341, -342, -345, -441, -647, -88, -647, -94, -304, -518, - -647, -224, -225, -647, -237, -647, -646, -298, -647, -647, - -252, -639, -639, -647, -646, -317, -318, -567, -56, -647, - -647, -647, -646, -646, -633, -647, -634, -535, -536, -647, - -647, -294, -647, -374, -375, -647, -329, -647, -121, -122, - -164, -165, -166, -182, -187, -194, -197, -336, -647, -535, - -536, -607, -608, -472, -647, -495, -647, -497, -647, -499, - -647, -647, -479, -647, -647, -485, -647, -647, -491, -647, - -647, -493, -647, -510, -512, -513, -514, -515, -6, -645, - -29, -30, -31, -32, -33, -10, -646, -647, -25, -26, - -27, -131, -647, -36, -38, -281, -647, -647, -280, -37, - -647, -40, -647, -294, -48, -49, -205, -256, -276, -51, - -52, -41, -206, -256, -635, -261, -262, -646, -646, -621, - -622, -271, -438, -623, -624, -622, -621, -271, -437, -439, - -623, -624, -47, -214, -53, -635, -314, -647, -647, -646, - -304, -647, -647, -647, -215, -216, -217, -218, -219, -220, - -221, -222, -226, -227, -228, -229, -231, -232, -233, -234, - -235, -238, -239, -240, -241, -635, -249, -647, -451, -271, - -621, -622, -64, -68, -272, -434, -447, -450, -635, -635, - -310, -267, -647, -275, -268, -647, -273, -647, -277, -647, - -615, -617, -15, -634, -19, -647, -635, -79, -302, -95, - -84, -647, -635, -646, -647, -647, -105, -647, -518, -647, - -91, -96, -647, -647, -647, -647, -250, -242, -647, -458, - -647, -300, -637, -253, -641, -640, -255, -641, -305, -647, - -610, -639, -647, -422, -567, -425, -606, -606, -550, -552, - -552, -552, -566, -568, -569, -570, -571, -572, -573, -574, - -575, -647, -577, -579, -581, -586, -588, -589, -591, -596, - -598, -599, -601, -602, -603, -647, -646, -365, -366, -646, - -647, -647, -647, -647, -647, -360, -453, -646, -647, -647, - -304, -57, -116, -117, -647, -119, -647, -294, -646, -647, - -334, -545, -338, -628, -629, -647, -473, -496, -501, -502, - -504, -475, -498, -476, -500, -477, -478, -647, -481, -483, - -647, -484, -487, -488, -647, -489, -490, -647, -516, -647, - -24, -647, -34, -284, -647, -647, -646, -647, -647, -647, - -442, -647, -263, -265, -647, -647, -69, -259, -260, -435, - -647, -647, -71, -436, -313, -621, -622, -621, -622, -635, - -647, -428, -646, -63, -430, -447, -647, -448, -647, -258, - -309, -646, -274, -278, -647, -613, -614, -647, -18, -22, - -81, -647, -87, -93, -635, -621, -622, -646, -102, -104, - -647, -89, -647, -647, -223, -635, -646, -358, -646, -297, - -363, -635, -639, -307, -611, -647, -635, -647, -548, -549, - -647, -647, -559, -647, -562, -647, -564, -647, -376, -647, - -378, -380, -387, -635, -580, -590, -600, -604, -646, -367, - -646, -58, -368, -369, -321, -322, -647, -324, -647, -635, - -621, -622, -625, -303, -646, -116, -117, -118, -647, -647, - -646, -327, -541, -543, -330, -646, -646, -567, -567, -647, - -635, -647, -646, -480, -482, -486, -492, -494, -11, -132, - -282, -647, -635, -621, -622, -622, -621, -257, -647, -638, - -646, -43, -208, -44, -209, -70, -45, -211, -46, -210, - -72, -647, -647, -647, -647, -442, -647, -410, -411, -635, - -413, -646, -432, -431, -647, -444, -646, -446, -269, -279, - -616, -85, -100, -97, -213, -312, -12, -14, -359, -361, - -646, -465, -459, -646, -460, -461, -301, -254, -423, -646, - -646, -415, -635, -606, -587, -605, -551, -552, -552, -578, - -552, -552, -597, -552, -575, -592, -635, -647, -385, -647, - -576, -647, -362, -370, -647, -372, -646, -647, -59, -323, - -647, -442, -647, -116, -117, -120, -635, -646, -647, -647, - -647, -647, -635, -647, -339, -609, -503, -506, -507, -508, - -509, -647, -283, -442, -42, -207, -264, -647, -243, -606, - -606, -392, -646, -646, -646, -409, -647, -635, -575, -583, - -584, -594, -452, -65, -646, -646, -464, -647, -647, -463, - -647, -647, -647, -424, -547, -647, -555, -647, -557, -647, - -560, -647, -563, -565, -377, -379, -383, -647, -388, -319, - -647, -373, -320, -647, -646, -325, -442, -647, -647, -331, - -335, -337, -544, -546, -545, -505, -647, -390, -391, -400, - -394, -402, -647, -405, -647, -407, -412, -647, -647, -582, - -647, -449, -646, -646, -107, -108, -647, -647, -115, -462, - -426, -427, -635, -417, -419, -420, -552, -552, -552, -552, - -381, -647, -386, -647, -646, -278, -646, -328, -542, -646, - -646, -606, -585, -393, -646, -646, -646, -646, -595, -646, - -414, -593, -647, -304, -13, -458, -646, -647, -647, -114, - -416, -647, -647, -553, -556, -558, -561, -647, -384, -646, - -454, -455, -456, -647, -647, -389, -647, -397, -647, -399, - -647, -403, -647, -406, -408, -303, -625, -457, -635, -621, - -622, -625, -113, -418, -552, -382, -371, -332, -340, -646, - -646, -646, -646, -442, -554, -647, -395, -398, -401, -404, - -646, -396 ] + -28, -130, -651, -652, -652, -652, -652, -652, -651, -652, + -652, -635, -652, -652, -640, -641, -54, -652, -540, -541, + -652, -295, -652, -652, -236, -652, -651, -652, -652, -652, + -652, -652, -652, -652, -652, -652, -652, -652, -652, -652, + -652, -652, -652, -652, -652, -652, -652, -652, -652, -652, + -245, -246, -247, -248, -652, -361, -454, -433, -652, -636, + -637, -67, -652, -318, -360, -652, -447, -449, -73, -651, + -444, -74, -640, -75, -251, -266, -651, -651, -270, -652, + -276, -652, -651, -617, -652, -652, -76, -77, -638, -17, + -18, -652, -21, -22, -80, -651, -640, -652, -83, -86, + -651, -98, -99, -652, -652, -106, -311, -314, -640, -437, + -345, -346, -349, -445, -652, -88, -652, -94, -306, -523, + -652, -224, -225, -652, -237, -652, -651, -640, -652, -651, + -651, -320, -321, -572, -56, -652, -652, -652, -651, -651, + -638, -652, -639, -540, -541, -652, -652, -295, -652, -378, + -379, -652, -332, -652, -121, -122, -164, -165, -166, -182, + -187, -194, -197, -339, -652, -540, -541, -612, -613, -476, + -652, -500, -652, -502, -652, -504, -652, -652, -483, -652, + -651, -652, -652, -496, -652, -652, -498, -652, -515, -517, + -518, -519, -520, -6, -650, -29, -30, -31, -32, -33, + -10, -11, -652, -25, -26, -27, -131, -652, -36, -38, + -282, -652, -652, -281, -37, -652, -40, -652, -295, -48, + -49, -205, -256, -276, -51, -52, -41, -206, -256, -640, + -261, -262, -651, -651, -626, -627, -271, -442, -628, -629, + -627, -626, -271, -441, -443, -628, -629, -47, -214, -53, + -640, -317, -652, -652, -652, -651, -306, -652, -652, -652, + -215, -216, -217, -218, -219, -220, -221, -222, -226, -227, + -228, -229, -231, -232, -233, -234, -235, -238, -239, -240, + -241, -640, -249, -652, -455, -271, -626, -627, -64, -68, + -272, -438, -451, -454, -640, -640, -313, -267, -652, -275, + -268, -652, -273, -652, -277, -652, -620, -622, -16, -639, + -20, -640, -79, -304, -95, -84, -652, -640, -651, -652, + -652, -105, -652, -523, -652, -91, -96, -652, -652, -652, + -652, -250, -242, -652, -462, -652, -300, -302, -252, -644, + -644, -652, -652, -615, -644, -652, -426, -572, -429, -611, + -611, -555, -557, -557, -557, -571, -573, -574, -575, -576, + -577, -578, -579, -580, -652, -582, -584, -586, -591, -593, + -594, -596, -601, -603, -604, -606, -607, -608, -652, -651, + -369, -370, -651, -652, -652, -652, -652, -652, -364, -457, + -651, -652, -652, -306, -57, -116, -117, -652, -119, -652, + -295, -651, -652, -337, -550, -342, -633, -634, -652, -477, + -501, -506, -507, -509, -479, -503, -480, -505, -481, -482, + -652, -485, -487, -652, -490, -492, -493, -652, -494, -495, + -652, -521, -651, -24, -652, -34, -285, -652, -652, -651, + -652, -652, -652, -446, -652, -263, -265, -652, -652, -69, + -259, -260, -439, -652, -652, -71, -440, -316, -642, -626, + -627, -626, -627, -640, -652, -432, -651, -63, -434, -451, + -652, -452, -652, -258, -312, -651, -274, -278, -279, -618, + -619, -652, -19, -81, -652, -87, -93, -640, -626, -627, + -651, -102, -104, -652, -89, -652, -652, -223, -640, -651, + -362, -651, -298, -367, -640, -253, -646, -645, -255, -646, + -308, -310, -616, -652, -640, -652, -553, -554, -652, -652, + -564, -652, -567, -652, -569, -652, -380, -652, -382, -384, + -391, -640, -585, -595, -605, -609, -651, -371, -651, -58, + -372, -373, -324, -325, -652, -327, -652, -640, -626, -627, + -630, -305, -651, -116, -117, -118, -652, -652, -651, -330, + -546, -548, -333, -651, -651, -572, -572, -652, -640, -652, + -651, -484, -486, -652, -489, -497, -499, -652, -132, -283, + -652, -640, -626, -627, -627, -626, -257, -652, -643, -651, + -43, -208, -44, -209, -70, -45, -211, -46, -210, -72, + -652, -652, -652, -652, -446, -652, -414, -415, -640, -417, + -651, -436, -435, -652, -448, -651, -450, -269, -652, -621, + -85, -100, -97, -213, -315, -13, -15, -363, -365, -651, + -469, -463, -651, -464, -465, -303, -644, -427, -651, -651, + -419, -640, -611, -592, -610, -556, -557, -557, -583, -557, + -557, -602, -557, -580, -597, -640, -652, -389, -652, -581, + -652, -366, -374, -652, -376, -651, -652, -59, -326, -652, + -446, -652, -116, -117, -120, -640, -651, -652, -652, -652, + -340, -640, -652, -343, -614, -508, -511, -512, -513, -514, + -652, -491, -12, -284, -446, -42, -207, -264, -652, -243, + -611, -611, -396, -651, -651, -651, -413, -652, -640, -580, + -588, -589, -599, -456, -65, -651, -280, -651, -468, -652, + -652, -467, -254, -652, -652, -652, -428, -552, -652, -560, + -652, -562, -652, -565, -652, -568, -570, -381, -383, -387, + -652, -392, -322, -652, -377, -323, -652, -651, -328, -446, + -652, -652, -334, -338, -652, -549, -551, -550, -510, -652, + -394, -395, -404, -398, -406, -652, -409, -652, -411, -416, + -652, -652, -587, -652, -453, -651, -651, -107, -108, -652, + -652, -115, -466, -430, -431, -640, -421, -423, -424, -557, + -557, -557, -557, -385, -652, -390, -652, -651, -278, -651, + -331, -547, -651, -341, -651, -611, -590, -397, -651, -651, + -651, -651, -600, -651, -418, -598, -652, -306, -14, -462, + -651, -652, -652, -114, -420, -652, -652, -558, -561, -563, + -566, -652, -388, -651, -458, -459, -460, -652, -652, -393, + -652, -401, -652, -403, -652, -407, -652, -410, -412, -305, + -630, -461, -640, -626, -627, -630, -113, -422, -557, -386, + -375, -335, -344, -651, -651, -651, -651, -446, -559, -652, + -399, -402, -405, -408, -651, -400 ] clist = [ -'6,614,233,229,461,467,355,317,277,387,726,279,318,147,147,129,142,142', -'359,360,670,575,364,524,295,295,295,362,363,345,4,316,296,296,296,290', -'425,414,358,358,786,29,358,438,439,137,221,29,145,145,869,881,454,509', -'606,609,560,332,332,563,566,350,29,351,314,339,281,288,291,394,126,29', -'29,29,513,29,738,739,847,335,142,129,420,421,422,423,451,753,705,582', -'729,472,332,395,777,397,399,402,405,408,411,397,358,358,358,358,29,29', -'142,550,29,872,831,518,887,293,306,307,702,696,507,702,297,297,297,862', -'130,923,1005,1003,705,396,1028,647,125,375,650,412,628,955,630,764,765', -'868,767,870,897,629,899,1019,377,785,642,352,644,631,789,648,974,388', -'648,781,372,356,925,29,569,391,642,958,29,29,29,29,29,694,353,927,343', -'661,445,695,278,445,524,1002,2,1,445,573,858,357,735,432,888,761,449', -'450,427,516,365,517,836,692,474,475,1028,1050,768,853,937,393,434,398', -'236,401,9,317,926,590,295,477,9,437,437,374,455,1005,1073,404,407,924', -'410,906,462,471,705,791,736,792,413,898,220,535,418,876,867,1012,895', -'766,708,935,461,467,846,825,934,864,1022,136,869,29,29,29,29,29,29,29', -'702,702,635,29,29,29,295,955,529,1024,346,734,842,295,296,18,295,29', -'317,455,869,18,515,317,296,632,523,523,889,348,834,731,395,1048,354', -'689,,,582,544,547,,536,551,610,872,712,542,987,18,129,717,,29,721,,554', -'742,744,746,29,717,,29,358,611,612,891,,1075,290,332,9,,1076,314,1034', -',,1006,314,424,29,,570,618,29,548,332,,,29,540,698,,944,,514,,714,913', -',1051,869,297,533,129,519,,,,,,1025,297,1020,1026,29,,29,,,,,,717,,332', -',332,,,29,29,29,794,,,794,18,,,,959,,,433,444,18,962,444,977,978,,965', -'444,6,,667,838,,147,970,971,142,,671,709,590,532,,,857,769,461,467,571', -',,,,,,902,903,,659,523,523,32,1079,677,,660,966,32,145,29,678,,,815', -',295,683,,,820,,455,32,705,,,462,471,841,690,1067,32,32,32,802,32,,613', -',900,901,1017,676,,,,,18,682,18,,677,18,,,,702,18,678,,551,,29,582,582', -'1055,32,32,551,534,32,18,,725,,,,811,813,295,838,,,816,818,455,,,,,693', -',854,462,471,,,,717,,,,,462,471,332,561,,,,,,,332,941,,29,,,748,,758', -',774,760,32,29,1077,1078,964,32,32,32,32,32,,18,,,,18,29,,,784,18,,590', -'896,590,790,967,,295,,,701,946,948,455,950,952,,953,762,445,,462,471', -',783,18,,18,445,445,993,,1083,833,445,445,,,9,,,18,18,29,863,,29,590', -'590,,1052,,732,1014,29,,295,,,,,147,455,,142,914,29,671,,,462,471,29', -',832,32,32,32,32,32,32,32,,,551,32,32,32,827,928,,,671,799,347,843,145', -'523,,32,,,29,29,,18,,,,,,29,29,677,861,,,29,29,,678,904,851,683,855', -',437,1053,1054,332,,748,,,878,32,920,,,,332,,32,892,,32,,671,,,1043', -'1044,1045,1046,885,,885,,,,810,911,445,,32,,890,,32,,295,,,32,,,455', -',,,671,471,462,,,,,,,,,,142,,,,,,,32,932,32,,,,590,523,861,,,717,29', -'18,,32,32,32,29,1084,936,,865,29,29,865,,,,940,29,,,827,960,,,,,,928', -',,928,,,29,,968,,939,,,,358,444,961,,,1068,748,,748,,444,444,,476,358', -'29,444,444,,,,671,,,,,32,,,,1021,,18,920,29,18,920,,920,,,,,29,29,,', -',,,991,992,861,,969,,,,973,,921,,,928,,980,980,980,29,,29,520,,,,,,', -',32,1016,29,29,452,,1010,748,,473,,,18,,929,332,537,,,,,18,18,,332,', -',18,18,,1035,920,,920,,920,,920,,29,29,19,,,1018,,1037,19,1040,,,1049', -',,32,,851,,,,920,748,237,748,32,444,,,,29,,237,237,237,332,19,323,323', -',32,885,,,,,,,,980,980,980,980,,980,295,,,748,29,,455,,,471,,,237,237', -'462,471,237,369,,885,671,,,,,29,,18,,,29,29,,32,865,,32,921,18,18,921', -',921,,32,18,,29,,980,980,980,980,,,,32,,,,980,18,32,,,,,929,,,929,19', -',929,,929,237,237,237,237,19,684,,,18,,,,,,,,32,32,871,,873,,,,,32,32', -'18,,,,32,32,,,,18,18,921,,921,,921,,921,,,,699,700,,,435,448,,,,,,,', -',,18,,,710,921,,,,929,713,929,18,929,,929,,,,,,,,,,,473,,452,19,237', -'442,237,237,442,237,,,929,442,237,237,922,,,,,,,18,18,,,19,,,,,,,,,', -'32,,,526,,528,32,,530,531,,32,32,,42,,18,,32,,42,,,,,,237,,,,,,,237', -'32,,237,,,981,983,985,,,,18,,,42,322,322,,,,,19,,32,572,19,,,,323,19', -',18,,,,,18,18,,,,32,,,,323,,,,368,32,32,390,,,19,,19,,,1007,,1008,,1009', -',,,,,237,19,19,,,32,,32,,,,,,,626,,626,,32,32,,,,,,845,,1027,,1029,', -'856,,42,,663,1057,1059,1061,1063,,1064,42,,,,,,,,,812,814,880,,32,32', -'817,819,,,,,,,19,,,,,,,,,,,,,,,,,,,,32,,1074,,,905,1086,1087,1088,1089', -',,,,,844,1080,1091,1081,,1082,,,,,,,,,32,,,,237,,,703,,,572,,706,,,42', -'1090,,,,,32,,,,,32,32,,,,,,,,,,,,42,,,,32,,,,,943,703,,,572,,,,,,19', -',,,954,,,,323,,237,,,915,,,323,,,,,754,,,,237,812,814,819,817,972,,', -',,,,,,,,,,41,,,42,,,41,42,,,,322,42,,,,,,,,,,,,,,,,322,,19,,,19,41,321', -'321,,42,,42,237,,,,,,,800,,,,,237,42,42,703,572,,237,,,,,,,,390,,390', -'367,,16,389,,,,,16,915,,,,,,,,,839,442,237,840,,,,,,,442,442,,,,,442', -'442,16,,,,,,852,,,,,,42,,,,,,41,,,,,,,875,,41,,323,,,,,,,373,,,,323', -',,,,,448,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,912,,,,,,,,,,,16,,19,,,,,,237', -'16,,,,19,19,,,,,,19,,,,41,,,,,42,,,,,,,442,322,,,,,,,,322,,,41,,,,,', -',,,,,19,,,,,,,,,,,,,,,,,,,19,,,,,,,,,19,19,,,,,,,,16,,440,,,440,42,', -'572,42,440,,,,,,237,41,19,,,41,,,16,321,41,,,19,237,,,,,,,,,,,,321,', -',,,,,,,,41,,41,1015,,,,,,989,,,,20,19,19,41,41,996,20,,,,,,,,,,389,', -'389,,,,,,16,,,,16,,,19,,16,20,325,325,,,,,,,,,,322,,,,,,,,,1031,,322', -',16,19,16,,,,,,41,,,371,,,,,16,16,,,,,19,,,,,19,19,,,,,,,,,,,,,,,,237', -',,,,,42,,,,,,,,,,,42,42,,,20,,,42,,,,,,20,,,,,,16,,,,,,,,,,,,,,,,,,', -',,,,,,,,42,,,,,,,,41,,,,,,,,321,,,42,,,,,321,,,,42,42,,,,,,,,,,,,,,', -',,,,,,,,,,20,42,443,,,443,,,,,443,,42,,,,,,,,,,,,20,,16,41,,,41,,,,', -',,,,,,,,,390,,,,,42,42,,,995,,,,,,,,,,,,,,,,,,,,,,,,,,42,,,,,,,,,,20', -',,,20,,,,325,20,16,,,16,390,,,,,42,,,,,,325,,,,,,,,,,20,,20,,,42,,,321', -',42,42,,,,,20,20,,321,,,,,,,,,,627,,627,,,440,,,,,,,,,440,440,,,,,440', -'440,,,,,,,,,,,,,,,,,,,,,41,,,,,,,,,20,,41,41,,,,,,41,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,,41,,,,,,,,,,,,,,,16,,,,41,,,,,,,16,16,41,41,', -',,16,,,,,,,,,,,,,,,,440,,,,,,41,,,,20,,,,,,,41,325,,,,,16,,,325,,,,', -',,,,,,,,,,,16,,,,,,,389,,16,16,,41,41,,,994,,,,,,,,,,,,,,,,,,,,16,,', -',,20,41,,20,,,16,,,,,,,,,,,,,,,,,,,389,,,,,41,,,,,,,,,,,,,16,16,,,999', -',,,41,,,,,41,41,,443,,,,,,,,,443,443,,,,16,443,443,,,,,,,,,,,,,,,,,', -',,,,,,,,,16,,,325,,,244,,,,,,,,325,294,294,294,,,,16,,,,,16,16,341,342', -',344,,,,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,20,,,,,,,,,,,20,20,,,,,910', -'20,,,,,,,,,,,,,,,,443,,,,,,,,,,,,,,,,,,,,,,,20,,,,,,,,,,,,,,,,,,,20', -',,,,,,,,20,20,,,,,,,,,,,,,,,,,,,,,,,,,,20,,,,,,,,,,,20,,,,,,,,,,,,,', -',,,294,447,,,453,294,,,,453,,,,,,627,,,,,20,20,244,,998,484,485,486', -'487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503', -'504,505,,,,20,506,,,,,,,,294,,,,,,,294,,,294,,,,,627,,294,,294,20,,294', -'294,,,,,,,,,,,,,,,,,,20,,,,,20,20,,,,,,,,,,,,,,556,,557,,,,,,,,,294', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294,,453', -'453,453,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294,,,294,,294,,,,,,,', -',,,,,,,,294,,,,,,,,,,724,,,,,,,,,,,294,,,294,,,,,,,,,,,,,,,,,,,,,,,', -',,,294,,,,,,,,,,,,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,,294,453,294,,,807,,,294,294,453,453,,,,,453,453,,,,,,,,,', -',,,,,,,,,,,,,294,,,294,,,,,,,,,,,,,,,,453,,,,,294,,,,,,,,,,,,,,,,,,', -'294,,,,,,,,,,,,,,,,,,,,,294,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,,294,', -',,,,,453,,,,,,,,,,,,,453,453,453,453,,918,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294,453', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294' ] - racc_goto_table = arr = ::Array.new(3632, nil) +'6,236,233,383,449,4,277,229,296,296,296,607,290,129,719,279,351,32,509', +'145,145,599,602,32,358,359,295,295,295,345,520,409,137,221,318,456,462', +'699,32,297,297,297,784,317,880,555,746,32,32,32,9,32,568,355,356,126', +'9,360,736,737,147,147,339,142,142,514,868,640,332,332,316,663,125,696', +'433,434,696,575,886,129,503,335,32,32,505,545,32,690,846,390,740,742', +'744,391,871,393,395,398,861,403,406,393,751,332,354,354,924,583,354', +'130,281,288,291,440,775,1032,440,415,416,417,418,440,624,830,446,392', +'2,142,1008,467,1006,407,420,961,725,728,314,958,361,732,621,32,623,136', +'652,845,32,32,32,32,32,937,702,220,370,142,429,422,759,887,635,278,637', +'689,654,641,343,561,354,354,354,354,688,387,9,635,293,306,307,562,352', +'368,699,419,779,384,520,625,346,347,1032,348,927,724,349,350,371,896', +'622,432,432,428,439,898,1022,439,373,783,1,746,439,457,877,974,787,1015', +'977,926,928,1005,696,696,295,566,857,473,450,413,1008,427,1077,353,733', +'512,513,835,686,32,32,32,32,32,32,32,1054,699,766,32,32,32,852,683,939', +'317,389,867,764,869,296,394,1028,32,444,445,833,875,734,511,296,1052', +'469,470,935,894,397,643,295,958,400,456,462,868,466,295,402,705,295', +'450,405,297,905,575,990,714,519,519,525,32,789,297,391,871,790,408,32', +'824,1079,32,542,868,897,539,866,793,707,290,129,692,863,1026,628,583', +'317,,,559,32,317,549,841,32,,,546,,32,,,746,1055,746,1080,,603,925,710', +',558,563,531,332,947,543,611,537,710,560,564,529,530,,32,535,32,1038', +'604,605,332,129,,,,32,32,32,528,,,,,,430,443,,949,951,767,953,955,890', +'956,,,868,354,1024,557,,644,,,,332,,332,,814,,792,980,981,641,819,,', +'314,,710,,,314,1013,746,914,,660,510,606,837,664,145,942,,699,,801,515', +',671,,,,,653,676,,,,,,519,519,,840,670,457,,522,,524,,,526,527,1009', +',456,462,,295,,147,696,450,142,,746,,746,,,684,899,900,901,902,,671', +',,32,,,583,,583,,,1029,1071,,1030,,670,,,,,565,575,575,,,746,1059,,', +'969,,,,457,,,,695,466,1047,1048,1049,1050,457,295,546,,,450,669,,583', +'583,546,837,675,32,,,440,,,,,,32,895,967,440,440,944,,,792,440,440,810', +'812,,332,32,772,815,817,853,,,332,1083,,,,,,929,710,,,687,,,656,718', +',466,457,,970,1088,,,,,,466,,295,996,756,,450,758,,760,,,32,,,32,,781', +',,,,,32,,,,1017,,,,,,,439,32,,832,,,457,32,,439,439,,,,6,439,439,295', +',797,,450,,782,,,145,664,466,788,,32,831,1056,,,809,32,32,798,697,,', +'565,,700,32,32,826,,,664,32,32,,,671,519,1087,676,440,432,,,9,546,583', +'147,915,,142,,670,,,,842,466,860,903,,850,,854,,1057,,1058,,,,,,,,,', +'856,,332,929,,,929,,,889,,,752,332,664,447,,,,,468,884,,884,,,457,,', +',,,,,,722,,,,295,,,,450,,,891,,664,,,,439,,32,,,,,,32,,,,910,32,32,', +',,,,32,,519,860,,,,,,929,799,1072,762,763,,765,,32,697,565,,,,466,,', +',,826,,,29,933,,142,,,29,,,32,,710,,,941,,,,,,938,29,,839,,,,,32,943', +'29,29,29,963,29,,,32,32,664,,,,851,,,,971,697,,,565,,,862,,964,,,,,', +'32,,32,29,29,874,,29,972,,860,,976,32,32,,,,,,,,354,983,983,983,443', +',864,,,864,,,,471,354,,,,,,,,994,,995,,,,,,32,,32,,,,,,913,,29,332,', +',,29,29,29,29,29,,332,,,1019,,,888,19,1021,,,32,921,19,1044,,1041,,', +',516,,850,,,936,,468,237,447,,,1039,,,,,237,237,237,32,19,323,323,532', +',884,,922,,,332,457,1053,,983,983,983,983,,983,32,,295,,,32,450,32,', +',,237,237,,556,237,365,,,884,664,,,32,29,29,29,29,29,29,29,,,,29,29', +'29,930,,,18,,870,565,872,,18,,29,983,983,983,983,,,,466,,,,983,962,466', +',,,,965,,,19,,968,,18,237,237,237,237,19,973,,,,29,,,,,,,29,1018,,29', +',,,,,,,1025,,,921,,,921,,921,,,29,,,,29,,,,,29,,,,,,,923,,,,,,,,677', +'864,,,922,,,922,,922,,29,,29,1020,,,,1023,811,813,,29,29,29,816,818', +'18,,19,237,437,237,237,437,237,18,,,437,237,237,,,693,694,921,,921,', +'921,930,921,19,930,,,930,,930,,703,,,,,,706,843,,,,,,,921,,,,984,986', +'988,922,,922,,922,,922,237,,,,,,,237,,,237,,1081,1082,,,,,,,,,922,1010', +',1011,,1012,,19,,,,19,18,,18,323,19,18,,,,930,18,930,,930,,930,,29,', +',323,,,,18,,1031,,1033,,19,,19,,,,916,,930,,,237,19,19,,,,,,811,813', +'818,816,,,619,,619,,,,1061,1063,1065,1067,,1068,,,,,29,,,,,,,,,29,,', +',,,,1078,,18,,,,18,,29,,,18,,,1084,,1085,,1086,,,,,,,,,,,1090,1091,1092', +'1093,,,,,18,844,18,1095,,,1094,855,,,,,18,18,,,,29,,,29,,,916,,,,,29', +',,,,,879,237,,,,,29,,,,,,29,,,,,,,,,,,,,,,,,,,,,,,,29,904,,,,,29,29', +',,,,,,,29,29,,,19,,29,29,,,,323,,237,,,,,,323,,,,,,,,,237,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,946,,,,,,,,,,,,,,957,19,,,19,,,,,,,,237,,,,,,,,', +',,,237,18,975,,,,237,,29,,,,,,29,,,,,29,29,,,,,,29,,,,19,,,,,,437,237', +',,,,,29,,437,437,,,,,437,437,,,,,,,,,,,,,,29,20,,,,18,,20,18,,,,,,,', +'323,,,29,,,,,,,,323,29,29,,,,,,20,325,325,,,,,,,,,,,,,,,,29,,29,,,18', +',,,,,18,,29,29,,,,367,,18,18,,,,,18,18,,,,19,,,,,,237,,,,,19,19,,,,', +',19,,,29,,29,,,,,,,,,,,,437,,,,,,20,,,,,,,,,20,,,29,,,,,19,,,,,,,42', +',,,,,42,,,,,,19,,,,,29,,,,19,19,,,,,,,18,,,,,42,322,322,,29,,18,18,', +'29,,29,237,18,19,,,,,,,,,,,19,237,29,,,18,,,,,,364,,20,386,438,,,438', +',,,,438,,,,,18,,,,,,992,,,20,,19,,19,,,999,,,18,,,,,,,,,18,18,,,,,,', +',42,,,,,,19,,,42,,,,,,,,,18,,,,,,,,,,,18,1035,,,,,19,,20,,,,20,,,,325', +'20,,,,,,,,,,19,,,,,19,325,19,,,,,18,,18,,20,,20,,,,,237,,,,,20,20,,', +',,,,,,,,42,620,,620,18,,,,,,41,,,,,,41,,,,,,,,42,,,,,,,,,18,,,,,,,,', +',,41,321,321,,,,,,,,18,,,,,18,,18,,,,,,,,,,,,,,,,,,,363,,,385,,,,,,42', +',,,42,,,,322,42,,,,,,,,,,,,,,,,322,,,,,,,,,,42,,42,,,,,,,,41,,42,42', +',,,,,41,,,,,,386,,386,,,,,,,,20,,,,,,,325,,,,,,,,325,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,20,41,,20,,,,16,,,,,,16,,,,,', +',,,,,,41,,,,,,,,,,,,,,,,16,,,,,,,,,,,,20,,,,,,438,,,,,,,,,438,438,,', +',,438,438,,369,42,,,,,,,322,,,,,41,,,322,41,,,,321,41,,,,,,325,,,,,', +',,,,321,325,,,,,,,,,41,,41,,,,16,,,,,,41,41,,16,,,,,,,,42,,385,42,385', +',,,,,,,,,,,,,,,,,,,,20,,,,,,,,,,,20,20,,,,,909,20,,,,,,,,,,42,,,,,,', +'438,,,,,,,,,,,,,,,,,,,16,,435,,20,435,,,,,435,,,,,,,,,,,,,20,16,,322', +',,,,,20,20,,,,322,,,,,,,,,,,,,,,,,,,,,,20,,,,,,,,,,,20,,,,,,,,,,,41', +',,,,,,321,16,,,,16,42,,321,,16,,,,,,620,42,42,,,20,,20,42,,1001,,,,', +',,,,,16,,16,,,,,,,,,,16,16,,,,20,,,,,,,,,,41,42,,41,,,,,,,,,,,620,,', +',,20,42,,,,,,,,,42,42,,,,,,,,,,20,,,,,20,,20,,,,,,41,,,42,,,,,,,,,,', +'42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,386,,,,321,42,,42,,,998,,,,,321', +',,,244,,,,,,,,,294,294,294,,,,,,,42,,,,341,342,,344,,,,,,,,,,,16,,,', +',,386,,,,,42,,,,,,41,,,,,,,,,,,41,41,,,42,,,41,,42,,42,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,16,,,16,,41,,,,,,,,,,,,,,,,,,,41,,,,,,,,,41,41,,,,', +',,,,,,,,,,,,,,16,,,,,,435,41,,,,,,,,435,435,,41,,,435,435,,,,,,,,,,', +',,,,,,,,294,442,,,448,294,,,,448,,385,,,,,41,,41,,,997,244,,,480,481', +'482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498', +'499,500,501,,41,,,502,,,,,,,,294,,,,,,,294,,,294,,,385,,,,294,41,294', +'16,,294,294,,,,,,,,16,16,,,,,,16,41,,,,,41,,41,,,,,,,,,435,,,,,,551', +',552,,,,294,294,,,,,,,,,,16,,,,,,,,,,,,,,,,,,,16,,,,,,,,,16,16,,,,,', +',,,,,,,,,,,,,,,,,,,,16,,,,,,,,,,,16,,,,,294,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,16,,16,,,1002,,,,,294,,448,448,448,,,,,,,,,,,,,,,,,,16,,,,', +',,,,,,,,,,,,,,,,294,,,294,,294,,,16,,,,,,,,,,,,294,,,,,,,,,16,717,,', +',16,,16,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,,,,294', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294,448,294,,,806,,,294', +'294,448,448,,,,,448,448,,,,,,,,,,,,,,,,,,,,,,,,,,,294,,,,,,,,,,,,,,', +'448,,,,,294,,,,,294,,,294,,,,,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,,294', +',,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,,,294,,,,,,,448,,,,,,,,,,,,,448,448', +'448,448,,919,,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294,448,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,294,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,294' ] + racc_goto_table = arr = ::Array.new(3778, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end clist = [ -'6,115,39,37,49,49,104,13,171,69,14,37,62,74,74,120,70,70,23,23,36,170', -'23,89,45,45,45,41,41,39,2,59,84,84,84,87,10,69,30,30,123,53,30,28,28', -'21,21,53,73,73,208,109,35,49,108,108,12,79,79,85,85,6,53,84,58,77,50', -'50,50,188,8,53,53,53,51,53,153,153,16,63,70,120,23,23,23,23,32,148,218', -'202,102,32,79,6,67,6,6,6,6,6,6,6,30,30,30,30,53,53,70,64,53,213,160', -'35,111,57,57,57,90,52,172,90,86,86,86,162,7,158,165,164,218,189,214', -'192,5,130,192,189,68,146,68,102,102,159,102,159,131,132,133,134,135', -'136,193,86,193,137,138,193,139,124,193,119,117,106,150,53,103,100,193', -'149,53,53,53,53,53,88,83,156,80,75,24,54,48,24,89,163,3,1,24,166,167', -'168,169,13,44,42,30,30,31,175,5,176,178,180,30,30,214,181,182,183,184', -'187,29,190,26,191,9,13,162,207,45,37,9,84,84,25,6,165,164,194,195,159', -'196,197,87,70,218,198,170,199,200,201,22,20,7,148,206,149,67,115,19', -'17,49,49,15,36,160,210,211,11,208,53,53,53,53,53,53,53,90,90,217,53', -'53,53,45,146,188,158,126,85,36,45,84,33,45,53,13,6,208,33,87,13,84,125', -'6,6,102,127,52,128,6,149,129,35,,,202,37,39,,59,62,23,213,64,59,162', -'33,120,49,,53,64,,37,205,205,205,53,49,,53,30,13,13,36,,149,87,79,9', -',109,58,16,,,159,58,9,53,,6,37,53,77,79,,,53,63,172,,153,,57,,35,36', -',111,208,86,8,120,57,,,,,,159,86,123,159,53,,53,,,,,,49,,79,,79,,,53', -'53,53,193,,,193,33,,,,102,,,26,26,33,102,26,153,153,,102,26,6,,37,89', -',74,102,102,70,,39,10,207,5,,,85,35,49,49,86,,,,,,,170,170,,2,6,6,56', -'159,6,,21,36,56,73,53,87,,,51,,45,87,,,51,,6,56,218,,,87,70,64,39,14', -'56,56,56,35,56,,5,,12,12,102,50,,,,,33,50,33,,6,33,,,,90,33,87,,62,', -'53,202,202,153,56,56,62,9,56,33,,30,,,,32,32,45,89,,,32,32,6,,,,,50', -',28,87,70,,,,49,,,,,87,70,79,9,,,,,,,79,12,,53,,,147,,13,,41,13,56,53', -'102,102,108,56,56,56,56,56,,33,,,,33,53,,,30,33,,207,35,207,30,12,,45', -',,86,205,205,6,205,205,,205,120,24,,87,70,,6,33,,33,24,24,108,,36,104', -'24,24,,,9,,,33,33,53,152,,53,207,207,,115,,86,108,53,,45,,,,,74,6,,70', -'32,53,39,,,87,70,53,,171,56,56,56,56,56,56,56,,,62,56,56,56,6,207,,', -'39,21,60,62,73,6,,56,,,53,53,,33,,,,,,53,53,6,39,,,53,53,,87,69,6,87', -'6,,84,12,12,79,,147,,,147,56,152,,,,79,,56,13,,56,,39,,,205,205,205', -'205,6,,6,,,,86,13,24,,56,,84,,56,,45,,,56,,,6,,,,39,70,87,,,,,,,,,,70', -',,,,,,56,13,56,,,,207,6,39,,,49,53,33,,56,56,56,53,205,13,,154,53,53', -'154,,,,13,53,,,6,23,,,,,,207,,,207,,,53,,23,,6,,,,30,26,13,,,35,147', -',147,,26,26,,60,30,53,26,26,,,,39,,,,,56,,,,152,,33,152,53,33,152,,152', -',,,,53,53,,,,,,13,13,39,,120,,,,120,,154,,,207,,6,6,6,53,,53,60,,,,', -',,,56,13,53,53,76,,147,147,,76,,,33,,209,79,60,,,,,33,33,,79,,,33,33', -',13,152,,152,,152,,152,,53,53,34,,,120,,37,34,39,,,13,,,56,,6,,,,152', -'147,34,147,56,26,,,,53,,34,34,34,79,34,34,34,,56,6,,,,,,,,6,6,6,6,,6', -'45,,,147,53,,6,,,70,,,34,34,87,70,34,34,,6,39,,,,,53,,33,,,53,53,,56', -'154,,56,154,33,33,154,,154,,56,33,,53,,6,6,6,6,,,,56,,,,6,33,56,,,,', -'209,,,209,34,,209,,209,34,34,34,34,34,60,,,33,,,,,,,,56,56,157,,157', -',,,,56,56,33,,,,56,56,,,,33,33,154,,154,,154,,154,,,,60,60,,,82,82,', -',,,,,,,,33,,,60,154,,,,209,60,209,33,209,,209,,,,,,,,,,,76,,76,34,34', -'34,34,34,34,34,,,209,34,34,34,157,,,,,,,33,33,,,34,,,,,,,,,,56,,,82', -',82,56,,82,82,,56,56,,66,,33,,56,,66,,,,,,34,,,,,,,34,56,,34,,,155,155', -'155,,,,33,,,66,66,66,,,,,34,,56,82,34,,,,34,34,,33,,,,,33,33,,,,56,', -',,34,,,,66,56,56,66,,,34,,34,,,157,,157,,157,,,,,,34,34,34,,,56,,56', -',,,,,,34,,34,,56,56,,,,,,60,,157,,157,,60,,66,,82,155,155,155,155,,155', -'66,,,,,,,,,76,76,60,,56,56,76,76,,,,,,,34,,,,,,,,,,,,,,,,,,,,56,,157', -',,60,155,155,155,155,,,,,,76,157,155,157,,157,,,,,,,,,56,,,,34,,,82', -',,82,,82,,,66,157,,,,,56,,,,,56,56,,,,,,,,,,,,66,,,,56,,,,,60,82,,,82', -',,,,,34,,,,60,,,,34,,34,,,76,,,34,,,,,82,,,,34,76,76,76,76,60,,,,,,', -',,,,,,65,,,66,,,65,66,,,,66,66,,,,,,,,,,,,,,,,66,,34,,,34,65,65,65,', -'66,,66,34,,,,,,,82,,,,,34,66,66,82,82,,34,,,,,,,,66,,66,65,,27,65,,', -',,27,76,,,,,,,,,82,34,34,82,,,,,,,34,34,,,,,34,34,27,,,,,,82,,,,,,66', -',,,,,65,,,,,,,82,,65,,34,,,,,,,27,,,,34,,,,,,82,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,82,,,,,,,,,,,27,,34,,,,,,34,27,,,,34,34,,,,,,34,,,,65,,', -',,66,,,,,,,34,66,,,,,,,,66,,,65,,,,,,,,,,,34,,,,,,,,,,,,,,,,,,,34,,', -',,,,,,34,34,,,,,,,,27,,27,,,27,66,,82,66,27,,,,,,34,65,34,,,65,,,27', -'65,65,,,34,34,,,,,,,,,,,,65,,,,,,,,,,65,,65,82,,,,,,34,,,,38,34,34,65', -'65,34,38,,,,,,,,,,65,,65,,,,,,27,,,,27,,,34,,27,38,38,38,,,,,,,,,,66', -',,,,,,,,34,,66,,27,34,27,,,,,,65,,,38,,,,,27,27,,,,,34,,,,,34,34,,,', -',,,,,,,,,,,,34,,,,,,66,,,,,,,,,,,66,66,,,38,,,66,,,,,,38,,,,,,27,,,', -',,,,,,,,,,,,,,,,,,,,,,,66,,,,,,,,65,,,,,,,,65,,,66,,,,,65,,,,66,66,', -',,,,,,,,,,,,,,,,,,,,,,,38,66,38,,,38,,,,,38,,66,,,,,,,,,,,,38,,27,65', -',,65,,,,,,,,,,,,,,66,,,,,66,66,,,66,,,,,,,,,,,,,,,,,,,,,,,,,,66,,,,', -',,,,,38,,,,38,,,,38,38,27,,,27,66,,,,,66,,,,,,38,,,,,,,,,,38,,38,,,66', -',,65,,66,66,,,,,38,38,,65,,,,,,,,,,38,,38,,,27,,,,,,,,,27,27,,,,,27', -'27,,,,,,,,,,,,,,,,,,,,,65,,,,,,,,,38,,65,65,,,,,,65,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,65,,,,,,,,,,,,,,,27,,,,65,,,,,,,27,27,65,65,,', -',27,,,,,,,,,,,,,,,,27,,,,,,65,,,,38,,,,,,,65,38,,,,,27,,,38,,,,,,,,', -',,,,,,,27,,,,,,,65,,27,27,,65,65,,,65,,,,,,,,,,,,,,,,,,,,27,,,,,38,65', -',38,,,27,,,,,,,,,,,,,,,,,,,65,,,,,65,,,,,,,,,,,,,27,27,,,27,,,,65,,', -',,65,65,,38,,,,,,,,,38,38,,,,27,38,38,,,,,,,,,,,,,,,,,,,,,,,,,,,27,', -',38,,,40,,,,,,,,38,40,40,40,,,,27,,,,,27,27,40,40,,40,,,,,,,,,,,,,,', -'40,,,,,,,,,,,,,,,,,,,,38,,,,,,,,,,,38,38,,,,,38,38,,,,,,,,,,,,,,,,38', -',,,,,,,,,,,,,,,,,,,,,,38,,,,,,,,,,,,,,,,,,,38,,,,,,,,,38,38,,,,,,,,', -',,,,,,,,,,,,,,,,,38,,,,,,,,,,,38,,,,,,,,,,,,,,,,,40,40,,,40,40,,,,40', -',,,,,38,,,,,38,38,40,,38,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40', -'40,40,40,40,40,40,40,,,,38,40,,,,,,,,40,,,,,,,40,,,40,,,,,38,,40,,40', -'38,,40,40,,,,,,,,,,,,,,,,,,38,,,,,38,38,,,,,,,,,,,,,,40,,40,,,,,,,,', -'40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,,,40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,40,,40', -'40,40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,40,,,40,,40,,,,,,,,,,,,', -',,,40,,,,,,,,,,40,,,,,,,,,,,40,,,40,,,,,,,,,,,,,,,,,,,,,,,,,,,40,,,', -',,,,,,,,,,,,,,,,,,,40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -'40,40,40,,,40,,,40,40,40,40,,,,,40,40,,,,,,,,,,,,,,,,,,,,,,,40,,,40', -',,,,,,,,,,,,,,,40,,,,,40,,,,,,,,,,,,,,,,,,,40,,,,,,,,,,,,,,,,,,,,,40', -',,,,,,,,,,,40,,,,,,,,,,,,,,,,,,,,,40,,,,,,,40,,,,,,,,,,,,,40,40,40,40', -',40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,,40,40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,,40' ] - racc_goto_check = arr = ::Array.new(3632, nil) +'6,26,39,69,35,2,175,37,84,84,84,116,87,121,15,37,105,56,51,73,73,109', +'109,56,41,41,45,45,45,39,89,69,21,21,62,49,49,223,56,86,86,86,124,14', +'110,12,151,56,56,56,9,56,174,23,23,8,9,23,157,157,74,74,77,70,70,35', +'213,196,79,79,59,36,5,90,28,28,90,207,112,121,176,63,56,56,49,64,56', +'52,17,192,210,210,210,6,218,6,6,6,166,6,6,6,152,79,30,30,162,212,30', +'7,50,50,50,24,67,219,24,23,23,23,23,24,140,164,32,193,3,70,169,32,168', +'193,10,153,85,85,58,150,5,85,68,56,68,11,13,16,56,56,56,56,56,18,20', +'22,25,70,29,31,42,44,197,48,197,54,75,197,80,83,30,30,30,30,88,101,9', +'197,57,57,57,104,107,118,223,9,120,125,89,126,127,128,219,129,166,130', +'131,132,133,134,135,84,84,26,26,136,137,26,138,139,1,151,26,87,151,141', +'142,153,143,154,160,167,90,90,45,170,171,37,6,7,169,14,168,172,173,179', +'180,182,184,56,56,56,56,56,56,56,185,223,186,56,56,56,187,35,188,14', +'191,163,116,163,84,194,162,56,30,30,52,152,174,87,84,153,30,30,164,67', +'195,198,45,150,199,49,49,213,70,45,200,64,45,6,201,86,202,207,166,64', +'6,6,192,56,203,86,6,218,204,205,56,36,153,56,39,213,206,37,211,196,35', +'87,121,176,215,216,222,212,14,,,84,56,14,37,36,56,,,62,,56,,,151,112', +'151,110,,23,163,49,,6,6,59,79,157,77,37,59,49,86,86,8,9,,56,63,56,17', +'14,14,79,121,,,,56,56,56,5,,,,,,82,82,,210,210,35,210,210,36,210,,,213', +'30,124,9,,6,,,,79,,79,,51,,197,157,157,197,51,,,58,,49,,,58,151,151', +'36,,37,57,5,89,39,73,85,,223,,35,57,,87,,,,,21,87,,,,,,6,6,,64,6,87', +',82,,82,,,82,82,163,,49,49,,45,,74,90,6,70,,151,,151,,,39,12,12,174', +'174,,87,,,56,,,212,,212,,,163,15,,163,,6,,,,,82,207,207,,,151,157,,', +'36,,,,87,,,,86,70,210,210,210,210,87,45,62,,,6,50,,212,212,62,89,50', +'56,,,24,,,,,,56,35,109,24,24,12,,,197,24,24,32,32,,79,56,41,32,32,28', +',,79,163,,,,,,212,49,,,50,,,82,30,,70,87,,12,210,,,,,,70,,45,109,14', +',6,14,,121,,,56,,,56,,6,,,,,,56,,,,109,,,,,,,26,56,,105,,,87,56,,26', +'26,,,,6,26,26,45,,2,,6,,30,,,73,39,70,30,,56,175,116,,,86,56,56,21,82', +',,82,,82,56,56,6,,,39,56,56,,,87,6,36,87,24,84,,,9,62,212,74,32,,70', +',6,,,,62,70,39,69,,6,,6,,12,,12,,,,,,,,,,86,,79,212,,,212,,,84,,,82', +'79,39,76,,,,,76,6,,6,,,87,,,,,,,,,103,,,,45,,,,6,,,14,,39,,,,26,,56', +',,,,,56,,,,14,56,56,,,,,,56,,6,39,,,,,,212,82,35,103,103,,103,,56,82', +'82,,,,70,,,,,6,,,53,14,,70,,,53,,,56,,49,,,6,,,,,,14,53,,82,,,,,56,14', +'53,53,53,23,53,,,56,56,39,,,,82,,,,23,82,,,82,,,156,,14,,,,,,56,,56', +'53,53,82,,53,121,,39,,121,56,56,,,,,,,,30,6,6,6,82,,158,,,158,,,,60', +'30,,,,,,,,14,,14,,,,,,56,,56,,,,,,82,,53,79,,,,53,53,53,53,53,,79,,', +'14,,,103,34,121,,,56,156,34,39,,37,,,,60,,6,,,82,,76,34,76,,,14,,,,', +'34,34,34,56,34,34,34,60,,6,,158,,,79,87,14,,6,6,6,6,,6,56,,45,,,56,6', +'56,,,,34,34,,60,34,34,,,6,39,,,56,53,53,53,53,53,53,53,,,,53,53,53,214', +',,33,,161,82,161,,33,,53,6,6,6,6,,,,70,,,,6,103,70,,,,,103,,,34,,103', +',33,34,34,34,34,34,103,,,,53,,,,,,,53,82,,53,,,,,,,,156,,,156,,,156', +',156,,,53,,,,53,,,,,53,,,,,,,161,,,,,,,,60,158,,,158,,,158,,158,,53', +',53,103,,,,103,76,76,,53,53,53,76,76,33,,34,34,34,34,34,34,34,33,,,34', +'34,34,,,60,60,156,,156,,156,214,156,34,214,,,214,,214,,60,,,,,,60,76', +',,,,,,156,,,,159,159,159,158,,158,,158,,158,34,,,,,,,34,,,34,,103,103', +',,,,,,,,158,161,,161,,161,,34,,,,34,33,,33,34,34,33,,,,214,33,214,,214', +',214,,53,,,34,,,,33,,161,,161,,34,,34,,,,76,,214,,,34,34,34,,,,,,76', +'76,76,76,,,34,,34,,,,159,159,159,159,,159,,,,,53,,,,,,,,,53,,,,,,,161', +',33,,,,33,,53,,,33,,,161,,161,,161,,,,,,,,,,,159,159,159,159,,,,,33', +'60,33,159,,,161,60,,,,,33,33,,,,53,,,53,,,76,,,,,53,,,,,,60,34,,,,,53', +',,,,,53,,,,,,,,,,,,,,,,,,,,,,,,53,60,,,,,53,53,,,,,,,,53,53,,,34,,53', +'53,,,,34,,34,,,,,,34,,,,,,,,,34,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,60,,,', +',,,,,,,,,,60,34,,,34,,,,,,,,34,,,,,,,,,,,,34,33,60,,,,34,,53,,,,,,53', +',,,,53,53,,,,,,53,,,,34,,,,,,34,34,,,,,,53,,34,34,,,,,34,34,,,,,,,,', +',,,,,53,38,,,,33,,38,33,,,,,,,,34,,,53,,,,,,,,34,53,53,,,,,,38,38,38', +',,,,,,,,,,,,,,,53,,53,,,33,,,,,,33,,53,53,,,,38,,33,33,,,,,33,33,,,', +'34,,,,,,34,,,,,34,34,,,,,,34,,,53,,53,,,,,,,,,,,,34,,,,,,38,,,,,,,,', +'38,,,53,,,,,34,,,,,,,66,,,,,,66,,,,,,34,,,,,53,,,,34,34,,,,,,,33,,,', +',66,66,66,,53,,33,33,,53,,53,34,33,34,,,,,,,,,,,34,34,53,,,33,,,,,,66', +',38,66,38,,,38,,,,,38,,,,,33,,,,,,34,,,38,,34,,34,,,34,,,33,,,,,,,,', +'33,33,,,,,,,,66,,,,,,34,,,66,,,,,,,,,33,,,,,,,,,,,33,34,,,,,34,,38,', +',,38,,,,38,38,,,,,,,,,,34,,,,,34,38,34,,,,,33,,33,,38,,38,,,,,34,,,', +',38,38,,,,,,,,,,,66,38,,38,33,,,,,,65,,,,,,65,,,,,,,,66,,,,,,,,,33,', +',,,,,,,,,65,65,65,,,,,,,,33,,,,,33,,33,,,,,,,,,,,,,,,,,,,65,,,65,,,', +',,66,,,,66,,,,66,66,,,,,,,,,,,,,,,,66,,,,,,,,,,66,,66,,,,,,,,65,,66', +'66,,,,,,65,,,,,,66,,66,,,,,,,,38,,,,,,,38,,,,,,,,38,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,65,,38,,,,27,,,,,,27,,,,,,', +',,,,,65,,,,,,,,,,,,,,,,27,,,,,,,,,,,,38,,,,,,38,,,,,,,,,38,38,,,,,38', +'38,,27,66,,,,,,,66,,,,,65,,,66,65,,,,65,65,,,,,,38,,,,,,,,,,65,38,,', +',,,,,,65,,65,,,,27,,,,,,65,65,,27,,,,,,,,66,,65,66,65,,,,,,,,,,,,,,', +',,,,,,38,,,,,,,,,,,38,38,,,,,38,38,,,,,,,,,,66,,,,,,,38,,,,,,,,,,,,', +',,,,,,27,,27,,38,27,,,,,27,,,,,,,,,,,,,38,27,,66,,,,,,38,38,,,,66,,', +',,,,,,,,,,,,,,,,,,,38,,,,,,,,,,,38,,,,,,,,,,,65,,,,,,,65,27,,,,27,66', +',65,,27,,,,,,38,66,66,,,38,,38,66,,38,,,,,,,,,,27,,27,,,,,,,,,,27,27', +',,,38,,,,,,,,,,65,66,,65,,,,,,,,,,,38,,,,,38,66,,,,,,,,,66,66,,,,,,', +',,,38,,,,,38,,38,,,,,,65,,,66,,,,,,,,,,,66,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,66,,,,65,66,,66,,,66,,,,,65,,,,40,,,,,,,,,40,40,40,,,,,,,66', +',,,40,40,,40,,,,,,,,,,,27,,,,,,66,,,,,66,,,,,,65,,,,,,,,,,,65,65,,,66', +',,65,,66,,66,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,27,,,27,,65,,,,,,,,,,,,,', +',,,,,65,,,,,,,,,65,65,,,,,,,,,,,,,,,,,,,27,,,,,,27,65,,,,,,,,27,27,', +'65,,,27,27,,,,,,,,,,,,,,,,,,,40,40,,,40,40,,,,40,,65,,,,,65,,65,,,65', +'40,,,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40', +'40,,65,,,40,,,,,,,,40,,,,,,,40,,,40,,,65,,,,40,65,40,27,,40,40,,,,,', +',,27,27,,,,,,27,65,,,,,65,,65,,,,,,,,,27,,,,,,40,,40,,,,40,40,,,,,,', +',,,27,,,,,,,,,,,,,,,,,,,27,,,,,,,,,27,27,,,,,,,,,,,,,,,,,,,,,,,,,,27', +',,,,,,,,,,27,,,,,40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,27,,27,,,27,,,', +',40,,40,40,40,,,,,,,,,,,,,,,,,,27,,,,,,,,,,,,,,,,,,,,,40,,,40,,40,,', +'27,,,,,,,,,,,,40,,,,,,,,,27,40,,,,27,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,40,,,,,,,,,,,,,,,,,,,,,,,40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,,,40,40,40,,,40,,,40,40,40,40,,,,,40,40,,,,,,,,,,,,,,,,,,,', +',,,,,,,40,,,,,,,,,,,,,,,40,,,,,40,,,,,40,,,40,,,,,,,,,,,,,,,,40,,,,', +',,,,,,,,,,,,,,,,40,,,,,,,,,,,,40,,,,,,,,,,,,,,,,,,,,,,40,,,,,,,40,,', +',,,,,,,,,,40,40,40,40,,40,,,,,,,,,,,,,40,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,40,40,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,40,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,40' ] + racc_goto_check = arr = ::Array.new(3778, 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, 187, 28, 186, nil, 129, -2, 118, 65, 214, - -100, 249, -290, -29, -549, -472, -648, -595, nil, -283, - -70, 34, 230, -49, -44, 153, 191, 1619, -180, -11, - -29, 61, -141, 281, 973, -176, -434, -16, 1904, -20, - 2595, -42, -415, nil, -567, -8, nil, nil, 155, -225, - 37, -207, -397, 39, -331, nil, 455, 83, 28, -5, - 634, nil, -25, 41, -227, 1547, 1241, -530, -237, -66, - 5, nil, nil, 37, 2, -252, 711, 21, nil, 20, - 131, nil, 933, 113, 0, -292, 90, 5, -334, -274, - -404, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 92, nil, -470, -188, -59, nil, 97, nil, -305, -707, - nil, -646, nil, nil, nil, -364, nil, 90, nil, -467, - 10, nil, nil, -591, 84, -95, 217, 235, -262, 238, - 62, -635, -229, -636, -820, 76, -479, -232, -476, -746, - nil, nil, nil, nil, nil, nil, -738, -16, -504, -710, - -665, nil, -91, -500, 86, 346, -652, 379, -702, -598, - -580, nil, -611, -757, -813, -814, -168, -545, 125, -381, - -336, -17, -156, nil, nil, -87, -86, nil, -495, nil, - -305, -809, -408, -519, -643, nil, nil, 119, -26, 34, - 115, 116, -268, -244, 129, 129, 130, -558, -402, -401, - 137, -541, -268, nil, nil, -254, -495, -138, -691, 119, - -480, -718, nil, -632, -850, nil, nil, -122, -437 ] + nil, 208, 3, 126, nil, 67, -2, 101, 50, 48, + -4, 133, -301, -277, 7, -540, -574, -631, -694, nil, + -377, 21, 141, -14, -111, 82, -22, 2267, -149, -67, + 37, 20, -103, 1070, 976, -224, -378, -12, 1663, -20, + 2737, -45, -445, nil, -600, -6, nil, nil, 134, -194, + 81, -263, -425, 834, -345, nil, 15, 144, 100, 34, + 699, nil, -3, 43, -251, 2041, 1811, -503, -231, -72, + 52, nil, nil, 8, 49, -262, 521, 18, nil, 31, + 119, nil, 158, -182, -24, -425, 7, -18, -333, -267, + -445, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, 98, nil, 213, -171, -49, nil, 114, nil, -334, + -712, nil, -680, nil, nil, nil, -350, nil, 109, nil, + -437, 8, nil, nil, -582, 110, -197, 127, 127, 129, + -364, 131, 131, 123, -582, -174, -579, -768, 132, -416, + -261, -687, -411, -687, nil, nil, nil, nil, nil, nil, + -739, -538, -482, -745, -611, nil, 155, -511, 191, 325, + -610, 333, -722, -484, -563, nil, -636, -726, -815, -817, + -130, -509, 165, -334, -301, -19, -196, nil, nil, -53, + -53, nil, -456, nil, -268, -775, -363, -471, -600, nil, + nil, 162, -6, 28, 161, 175, -330, -232, -125, 178, + 183, 186, -499, -334, -331, 200, -470, -276, nil, nil, + -482, -427, -246, -673, 241, -417, -660, nil, -647, -870, + nil, nil, -68, -484 ] racc_goto_default = [ - nil, nil, nil, nil, 5, nil, 309, 7, 366, 312, - nil, nil, nil, 559, nil, nil, nil, nil, 308, 310, - nil, nil, nil, nil, 14, 15, 21, 242, nil, nil, - 17, nil, 441, 243, 340, nil, nil, 779, 241, 349, - 24, nil, nil, 361, nil, 25, 26, 27, nil, 720, - nil, nil, nil, 329, nil, 28, 326, 456, 35, nil, - nil, 37, 40, 39, nil, 238, 239, 625, nil, 144, - 464, 143, 146, 90, 91, nil, 446, 105, 47, 50, - 274, 552, 300, nil, 457, nil, 458, 469, 679, 521, - 298, 282, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 61, nil, nil, 283, 65, nil, 67, nil, nil, - 68, 883, 69, 70, 71, nil, 72, nil, 73, nil, - 607, 74, 75, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 5, nil, 309, 7, 362, 312, + nil, nil, nil, nil, 554, nil, nil, nil, nil, 308, + 310, nil, nil, nil, 14, 15, 21, 242, nil, nil, + 17, nil, 436, 243, 340, nil, nil, 777, 241, 472, + 24, nil, nil, 357, nil, 25, 26, 27, nil, 713, + nil, nil, nil, 329, nil, 28, 326, 451, 35, nil, + nil, 37, 40, 39, nil, 238, 239, 618, nil, 144, + 459, 143, 146, 90, 91, nil, 441, 105, 47, 50, + 274, 547, 300, nil, 452, nil, 453, 464, 672, 517, + 298, 282, 838, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 61, nil, nil, 283, 65, nil, 67, nil, + nil, 68, 882, 69, 70, 71, nil, 72, nil, 73, + nil, 600, 74, 75, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 287, 276, 728, 850, 616, 884, 750, 589, nil, 751, - 1023, 919, 577, nil, 578, nil, nil, 579, nil, 581, - nil, 828, nil, nil, nil, 587, nil, nil, nil, nil, - nil, nil, nil, 468, 285, nil, nil, 697, nil, 508, - nil, nil, nil, nil, nil, 89, 92, 94, nil, nil, - nil, nil, nil, 637, nil, nil, nil, nil, nil, nil, - nil, nil, 866, 788, 576, nil, 580, 874, 592, 594, - 595, 930, 598, 599, 931, 602, 605, nil, 303 ] + nil, nil, nil, nil, 287, 276, 721, 849, 609, 883, + 748, 582, nil, 749, 1027, 920, 570, nil, 571, nil, + nil, 572, nil, 574, nil, 827, nil, nil, nil, 580, + nil, nil, nil, nil, nil, nil, nil, 463, 285, nil, + nil, 691, nil, 504, nil, nil, nil, nil, nil, 89, + 92, 94, nil, nil, nil, nil, nil, 630, nil, nil, + nil, nil, nil, nil, nil, nil, nil, 865, 786, 569, + nil, 573, 873, 585, 587, 588, 931, 591, 592, 932, + 595, 598, nil, 303 ] racc_reduce_table = [ 0, 0, :racc_error, 0, 148, :_reduce_1, 2, 146, :_reduce_2, 2, 147, :_reduce_3, 1, 149, :_reduce_none, 1, 149, :_reduce_none, 3, 149, :_reduce_6, 2, 149, :_reduce_none, - 1, 152, :_reduce_8, + 1, 152, :_reduce_none, 0, 156, :_reduce_9, 3, 152, :_reduce_10, - 3, 155, :_reduce_11, - 0, 162, :_reduce_12, - 6, 157, :_reduce_13, - 3, 157, :_reduce_14, - 2, 158, :_reduce_15, - 1, 163, :_reduce_none, - 1, 163, :_reduce_none, - 3, 163, :_reduce_18, - 2, 163, :_reduce_19, + 0, 158, :_reduce_11, + 4, 155, :_reduce_12, + 0, 163, :_reduce_13, + 6, 157, :_reduce_14, + 3, 157, :_reduce_15, + 2, 159, :_reduce_16, 1, 164, :_reduce_none, - 0, 165, :_reduce_21, - 3, 164, :_reduce_22, + 1, 164, :_reduce_none, + 3, 164, :_reduce_19, + 2, 164, :_reduce_20, + 1, 165, :_reduce_none, + 1, 165, :_reduce_22, 0, 176, :_reduce_23, 4, 154, :_reduce_24, 3, 154, :_reduce_25, 3, 154, :_reduce_26, 3, 154, :_reduce_27, @@ -2596,12 +2602,12 @@ 1, 221, :_reduce_none, 3, 221, :_reduce_257, 3, 232, :_reduce_258, 1, 233, :_reduce_none, 1, 233, :_reduce_none, - 1, 180, :_reduce_261, - 1, 180, :_reduce_262, + 1, 180, :_reduce_none, + 1, 180, :_reduce_none, 2, 180, :_reduce_263, 4, 180, :_reduce_264, 2, 180, :_reduce_265, 1, 202, :_reduce_266, 2, 202, :_reduce_267, @@ -2614,361 +2620,366 @@ 2, 234, :_reduce_274, 1, 234, :_reduce_none, 1, 229, :_reduce_276, 2, 229, :_reduce_277, 3, 229, :_reduce_278, - 4, 229, :_reduce_279, - 1, 174, :_reduce_280, + 0, 237, :_reduce_279, + 5, 229, :_reduce_280, 1, 174, :_reduce_281, - 3, 173, :_reduce_282, - 4, 173, :_reduce_283, - 2, 173, :_reduce_284, + 1, 174, :_reduce_282, + 3, 173, :_reduce_283, + 4, 173, :_reduce_284, + 2, 173, :_reduce_285, 1, 224, :_reduce_none, 1, 224, :_reduce_none, 1, 224, :_reduce_none, 1, 224, :_reduce_none, 1, 224, :_reduce_none, 1, 224, :_reduce_none, 1, 224, :_reduce_none, 1, 224, :_reduce_none, 1, 224, :_reduce_none, 1, 224, :_reduce_none, - 1, 224, :_reduce_295, - 0, 271, :_reduce_296, - 4, 224, :_reduce_297, - 2, 224, :_reduce_298, - 0, 272, :_reduce_299, - 0, 273, :_reduce_300, - 5, 224, :_reduce_301, - 3, 224, :_reduce_302, - 3, 224, :_reduce_303, - 2, 224, :_reduce_304, + 1, 224, :_reduce_296, + 0, 272, :_reduce_297, + 4, 224, :_reduce_298, + 0, 273, :_reduce_299, + 3, 224, :_reduce_300, + 0, 274, :_reduce_301, + 0, 275, :_reduce_302, + 5, 224, :_reduce_303, + 3, 224, :_reduce_304, 3, 224, :_reduce_305, - 0, 274, :_reduce_306, - 4, 224, :_reduce_307, - 1, 224, :_reduce_308, - 4, 224, :_reduce_309, - 3, 224, :_reduce_310, + 2, 224, :_reduce_306, + 0, 276, :_reduce_307, + 4, 224, :_reduce_308, + 0, 277, :_reduce_309, + 4, 224, :_reduce_310, 1, 224, :_reduce_311, - 5, 224, :_reduce_312, - 4, 224, :_reduce_313, - 3, 224, :_reduce_314, - 2, 224, :_reduce_315, - 1, 224, :_reduce_none, - 2, 224, :_reduce_317, + 4, 224, :_reduce_312, + 3, 224, :_reduce_313, + 1, 224, :_reduce_314, + 5, 224, :_reduce_315, + 4, 224, :_reduce_316, + 3, 224, :_reduce_317, 2, 224, :_reduce_318, - 6, 224, :_reduce_319, - 6, 224, :_reduce_320, - 4, 224, :_reduce_321, - 4, 224, :_reduce_322, - 5, 224, :_reduce_323, + 1, 224, :_reduce_none, + 2, 224, :_reduce_320, + 2, 224, :_reduce_321, + 6, 224, :_reduce_322, + 6, 224, :_reduce_323, 4, 224, :_reduce_324, - 6, 224, :_reduce_325, - 0, 275, :_reduce_326, - 0, 276, :_reduce_327, - 7, 224, :_reduce_328, - 0, 277, :_reduce_329, - 0, 278, :_reduce_330, - 0, 279, :_reduce_331, - 9, 224, :_reduce_332, - 0, 280, :_reduce_333, - 0, 281, :_reduce_334, - 6, 224, :_reduce_335, - 0, 282, :_reduce_336, - 6, 224, :_reduce_337, - 0, 283, :_reduce_338, - 0, 284, :_reduce_339, - 9, 224, :_reduce_340, - 1, 224, :_reduce_341, - 1, 224, :_reduce_342, - 1, 224, :_reduce_343, - 1, 224, :_reduce_344, - 1, 179, :_reduce_345, - 1, 246, :_reduce_none, - 1, 252, :_reduce_none, - 1, 255, :_reduce_none, - 1, 257, :_reduce_none, + 4, 224, :_reduce_325, + 5, 224, :_reduce_326, + 4, 224, :_reduce_327, + 6, 224, :_reduce_328, + 0, 278, :_reduce_329, + 0, 279, :_reduce_330, + 7, 224, :_reduce_331, + 0, 280, :_reduce_332, + 0, 281, :_reduce_333, + 0, 282, :_reduce_334, + 9, 224, :_reduce_335, + 0, 283, :_reduce_336, + 0, 284, :_reduce_337, + 6, 224, :_reduce_338, + 0, 285, :_reduce_339, + 0, 286, :_reduce_340, + 7, 224, :_reduce_341, + 0, 287, :_reduce_342, + 0, 288, :_reduce_343, + 9, 224, :_reduce_344, + 1, 224, :_reduce_345, + 1, 224, :_reduce_346, + 1, 224, :_reduce_347, + 1, 224, :_reduce_348, + 1, 179, :_reduce_349, + 1, 247, :_reduce_none, + 1, 253, :_reduce_none, + 1, 256, :_reduce_none, 1, 258, :_reduce_none, 1, 259, :_reduce_none, - 1, 261, :_reduce_none, - 1, 263, :_reduce_none, - 1, 266, :_reduce_none, + 1, 260, :_reduce_none, + 1, 262, :_reduce_none, + 1, 264, :_reduce_none, 1, 267, :_reduce_none, - 1, 285, :_reduce_none, - 1, 286, :_reduce_none, - 1, 287, :_reduce_none, - 1, 288, :_reduce_none, + 1, 268, :_reduce_none, 1, 289, :_reduce_none, - 1, 160, :_reduce_none, 1, 290, :_reduce_none, - 1, 247, :_reduce_none, + 1, 291, :_reduce_none, + 1, 292, :_reduce_none, + 1, 293, :_reduce_none, + 1, 161, :_reduce_none, + 1, 294, :_reduce_none, + 1, 248, :_reduce_none, 1, 201, :_reduce_none, - 1, 253, :_reduce_none, - 1, 253, :_reduce_none, - 2, 253, :_reduce_none, + 1, 254, :_reduce_none, + 1, 254, :_reduce_none, + 2, 254, :_reduce_none, 1, 187, :_reduce_none, 1, 187, :_reduce_none, - 1, 254, :_reduce_none, - 5, 254, :_reduce_371, - 1, 256, :_reduce_none, - 2, 256, :_reduce_373, - 1, 262, :_reduce_none, - 1, 262, :_reduce_375, - 1, 291, :_reduce_none, - 3, 291, :_reduce_377, - 1, 294, :_reduce_378, - 3, 294, :_reduce_379, - 1, 293, :_reduce_380, - 4, 293, :_reduce_381, - 6, 293, :_reduce_382, - 3, 293, :_reduce_383, - 5, 293, :_reduce_384, - 2, 293, :_reduce_385, - 4, 293, :_reduce_386, - 1, 293, :_reduce_387, - 3, 293, :_reduce_388, - 4, 295, :_reduce_389, - 2, 295, :_reduce_390, - 2, 295, :_reduce_391, - 1, 295, :_reduce_392, - 2, 300, :_reduce_393, - 1, 300, :_reduce_none, - 6, 301, :_reduce_395, - 8, 301, :_reduce_396, - 4, 301, :_reduce_397, - 6, 301, :_reduce_398, - 4, 301, :_reduce_399, - 2, 301, :_reduce_400, - 6, 301, :_reduce_401, - 2, 301, :_reduce_402, - 4, 301, :_reduce_403, - 6, 301, :_reduce_404, - 2, 301, :_reduce_405, - 4, 301, :_reduce_406, - 2, 301, :_reduce_407, - 4, 301, :_reduce_408, - 1, 301, :_reduce_409, - 1, 305, :_reduce_410, - 1, 305, :_reduce_411, - 3, 306, :_reduce_412, - 1, 306, :_reduce_413, - 4, 306, :_reduce_414, - 1, 307, :_reduce_none, - 4, 307, :_reduce_416, - 1, 308, :_reduce_417, - 3, 308, :_reduce_418, - 1, 309, :_reduce_419, - 1, 309, :_reduce_none, - 0, 313, :_reduce_421, - 0, 314, :_reduce_422, - 4, 251, :_reduce_423, - 4, 311, :_reduce_424, - 1, 311, :_reduce_425, - 3, 312, :_reduce_426, - 3, 312, :_reduce_427, - 3, 316, :_reduce_428, - 2, 192, :_reduce_429, - 4, 192, :_reduce_430, - 5, 192, :_reduce_431, - 5, 192, :_reduce_432, - 0, 319, :_reduce_433, - 3, 250, :_reduce_434, - 4, 250, :_reduce_435, - 4, 250, :_reduce_436, - 3, 250, :_reduce_437, - 3, 250, :_reduce_438, - 3, 250, :_reduce_439, - 2, 250, :_reduce_440, - 1, 250, :_reduce_441, - 4, 250, :_reduce_442, - 0, 320, :_reduce_443, - 4, 249, :_reduce_444, - 0, 321, :_reduce_445, - 4, 249, :_reduce_446, - 0, 322, :_reduce_447, - 0, 323, :_reduce_448, - 4, 197, :_reduce_449, - 0, 324, :_reduce_450, - 0, 325, :_reduce_451, - 4, 317, :_reduce_452, - 0, 327, :_reduce_453, - 6, 260, :_reduce_454, - 1, 326, :_reduce_none, - 1, 326, :_reduce_none, - 6, 159, :_reduce_457, - 0, 159, :_reduce_458, - 1, 328, :_reduce_459, - 1, 328, :_reduce_none, - 1, 328, :_reduce_none, - 2, 329, :_reduce_462, - 1, 329, :_reduce_none, - 2, 161, :_reduce_464, - 1, 161, :_reduce_none, - 1, 237, :_reduce_466, - 1, 237, :_reduce_467, - 1, 237, :_reduce_none, - 1, 238, :_reduce_469, - 1, 331, :_reduce_470, - 1, 331, :_reduce_none, - 2, 331, :_reduce_472, - 3, 332, :_reduce_473, - 1, 332, :_reduce_474, - 3, 239, :_reduce_475, - 3, 240, :_reduce_476, - 3, 241, :_reduce_477, - 3, 241, :_reduce_478, - 1, 336, :_reduce_479, - 3, 336, :_reduce_480, - 1, 337, :_reduce_none, - 2, 337, :_reduce_482, - 3, 243, :_reduce_483, - 3, 243, :_reduce_484, - 1, 339, :_reduce_485, - 3, 339, :_reduce_486, - 3, 242, :_reduce_487, - 3, 242, :_reduce_488, - 3, 244, :_reduce_489, - 3, 244, :_reduce_490, - 1, 340, :_reduce_491, - 3, 340, :_reduce_492, - 1, 341, :_reduce_493, - 3, 341, :_reduce_494, - 1, 333, :_reduce_495, - 2, 333, :_reduce_496, - 1, 334, :_reduce_497, - 2, 334, :_reduce_498, - 1, 335, :_reduce_499, - 2, 335, :_reduce_500, - 1, 338, :_reduce_501, - 0, 343, :_reduce_502, - 3, 338, :_reduce_503, - 0, 344, :_reduce_504, - 4, 338, :_reduce_505, - 1, 342, :_reduce_506, - 1, 342, :_reduce_507, - 1, 342, :_reduce_508, - 1, 342, :_reduce_none, - 2, 218, :_reduce_510, - 1, 218, :_reduce_511, - 1, 345, :_reduce_none, - 1, 345, :_reduce_none, - 1, 345, :_reduce_none, - 1, 345, :_reduce_none, - 3, 219, :_reduce_516, + 1, 255, :_reduce_none, + 5, 255, :_reduce_375, + 1, 257, :_reduce_none, + 2, 257, :_reduce_377, + 1, 263, :_reduce_none, + 1, 263, :_reduce_379, + 1, 295, :_reduce_none, + 3, 295, :_reduce_381, + 1, 298, :_reduce_382, + 3, 298, :_reduce_383, + 1, 297, :_reduce_384, + 4, 297, :_reduce_385, + 6, 297, :_reduce_386, + 3, 297, :_reduce_387, + 5, 297, :_reduce_388, + 2, 297, :_reduce_389, + 4, 297, :_reduce_390, + 1, 297, :_reduce_391, + 3, 297, :_reduce_392, + 4, 299, :_reduce_393, + 2, 299, :_reduce_394, + 2, 299, :_reduce_395, + 1, 299, :_reduce_396, + 2, 304, :_reduce_397, + 1, 304, :_reduce_none, + 6, 305, :_reduce_399, + 8, 305, :_reduce_400, + 4, 305, :_reduce_401, + 6, 305, :_reduce_402, + 4, 305, :_reduce_403, + 2, 305, :_reduce_404, + 6, 305, :_reduce_405, + 2, 305, :_reduce_406, + 4, 305, :_reduce_407, + 6, 305, :_reduce_408, + 2, 305, :_reduce_409, + 4, 305, :_reduce_410, + 2, 305, :_reduce_411, + 4, 305, :_reduce_412, + 1, 305, :_reduce_413, + 1, 309, :_reduce_414, + 1, 309, :_reduce_415, + 3, 310, :_reduce_416, + 1, 310, :_reduce_417, + 4, 310, :_reduce_418, + 1, 311, :_reduce_none, + 4, 311, :_reduce_420, + 1, 312, :_reduce_421, + 3, 312, :_reduce_422, + 1, 313, :_reduce_423, + 1, 313, :_reduce_none, + 0, 317, :_reduce_425, + 0, 318, :_reduce_426, + 4, 252, :_reduce_427, + 4, 315, :_reduce_428, + 1, 315, :_reduce_429, + 3, 316, :_reduce_430, + 3, 316, :_reduce_431, + 3, 320, :_reduce_432, + 2, 192, :_reduce_433, + 4, 192, :_reduce_434, + 5, 192, :_reduce_435, + 5, 192, :_reduce_436, + 0, 323, :_reduce_437, + 3, 251, :_reduce_438, + 4, 251, :_reduce_439, + 4, 251, :_reduce_440, + 3, 251, :_reduce_441, + 3, 251, :_reduce_442, + 3, 251, :_reduce_443, + 2, 251, :_reduce_444, + 1, 251, :_reduce_445, + 4, 251, :_reduce_446, + 0, 324, :_reduce_447, + 4, 250, :_reduce_448, + 0, 325, :_reduce_449, + 4, 250, :_reduce_450, + 0, 326, :_reduce_451, + 0, 327, :_reduce_452, + 4, 197, :_reduce_453, + 0, 328, :_reduce_454, + 0, 329, :_reduce_455, + 4, 321, :_reduce_456, + 0, 331, :_reduce_457, + 6, 261, :_reduce_458, 1, 330, :_reduce_none, - 2, 330, :_reduce_518, + 1, 330, :_reduce_none, + 6, 160, :_reduce_461, + 0, 160, :_reduce_462, + 1, 332, :_reduce_463, + 1, 332, :_reduce_none, + 1, 332, :_reduce_none, + 2, 333, :_reduce_466, + 1, 333, :_reduce_none, + 2, 162, :_reduce_468, + 1, 162, :_reduce_none, + 1, 238, :_reduce_470, + 1, 238, :_reduce_471, + 1, 238, :_reduce_none, + 1, 239, :_reduce_473, + 1, 335, :_reduce_474, + 1, 335, :_reduce_none, + 2, 335, :_reduce_476, + 3, 336, :_reduce_477, + 1, 336, :_reduce_478, + 3, 240, :_reduce_479, + 3, 241, :_reduce_480, + 3, 242, :_reduce_481, + 3, 242, :_reduce_482, + 1, 340, :_reduce_483, + 3, 340, :_reduce_484, + 1, 341, :_reduce_none, + 2, 341, :_reduce_486, + 3, 244, :_reduce_487, + 0, 344, :_reduce_488, + 4, 244, :_reduce_489, + 1, 343, :_reduce_490, + 3, 343, :_reduce_491, + 3, 243, :_reduce_492, + 3, 243, :_reduce_493, + 3, 245, :_reduce_494, + 3, 245, :_reduce_495, + 1, 345, :_reduce_496, + 3, 345, :_reduce_497, + 1, 346, :_reduce_498, + 3, 346, :_reduce_499, + 1, 337, :_reduce_500, + 2, 337, :_reduce_501, + 1, 338, :_reduce_502, + 2, 338, :_reduce_503, + 1, 339, :_reduce_504, + 2, 339, :_reduce_505, + 1, 342, :_reduce_506, + 0, 348, :_reduce_507, + 3, 342, :_reduce_508, + 0, 349, :_reduce_509, + 4, 342, :_reduce_510, + 1, 347, :_reduce_511, + 1, 347, :_reduce_512, + 1, 347, :_reduce_513, + 1, 347, :_reduce_none, + 2, 218, :_reduce_515, + 1, 218, :_reduce_516, + 1, 350, :_reduce_none, + 1, 350, :_reduce_none, + 1, 350, :_reduce_none, + 1, 350, :_reduce_none, + 3, 219, :_reduce_521, + 1, 334, :_reduce_none, + 2, 334, :_reduce_523, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 210, :_reduce_none, 1, 210, :_reduce_none, 1, 210, :_reduce_none, 1, 210, :_reduce_none, 1, 210, :_reduce_none, - 1, 211, :_reduce_528, - 1, 211, :_reduce_529, - 1, 211, :_reduce_530, - 1, 211, :_reduce_531, - 1, 211, :_reduce_532, 1, 211, :_reduce_533, 1, 211, :_reduce_534, - 1, 245, :_reduce_535, - 1, 245, :_reduce_536, - 1, 178, :_reduce_537, - 1, 178, :_reduce_538, - 1, 183, :_reduce_539, - 1, 183, :_reduce_540, - 0, 346, :_reduce_541, - 4, 264, :_reduce_542, - 1, 264, :_reduce_543, - 3, 268, :_reduce_544, - 0, 348, :_reduce_545, - 3, 268, :_reduce_546, - 4, 347, :_reduce_547, - 2, 347, :_reduce_548, - 2, 347, :_reduce_549, - 1, 347, :_reduce_none, - 2, 350, :_reduce_551, - 0, 350, :_reduce_552, - 6, 315, :_reduce_553, - 8, 315, :_reduce_554, - 4, 315, :_reduce_555, - 6, 315, :_reduce_556, - 4, 315, :_reduce_557, - 6, 315, :_reduce_558, - 2, 315, :_reduce_559, - 4, 315, :_reduce_560, - 6, 315, :_reduce_561, - 2, 315, :_reduce_562, - 4, 315, :_reduce_563, - 2, 315, :_reduce_564, - 4, 315, :_reduce_565, - 1, 315, :_reduce_566, - 0, 315, :_reduce_567, - 1, 310, :_reduce_568, - 1, 310, :_reduce_569, - 1, 310, :_reduce_570, - 1, 310, :_reduce_571, - 1, 292, :_reduce_none, - 1, 292, :_reduce_573, + 1, 211, :_reduce_535, + 1, 211, :_reduce_536, + 1, 211, :_reduce_537, + 1, 211, :_reduce_538, + 1, 211, :_reduce_539, + 1, 246, :_reduce_540, + 1, 246, :_reduce_541, + 1, 178, :_reduce_542, + 1, 178, :_reduce_543, + 1, 183, :_reduce_544, + 1, 183, :_reduce_545, + 0, 351, :_reduce_546, + 4, 265, :_reduce_547, + 1, 265, :_reduce_548, + 3, 269, :_reduce_549, + 0, 353, :_reduce_550, + 3, 269, :_reduce_551, + 4, 352, :_reduce_552, + 2, 352, :_reduce_553, + 2, 352, :_reduce_554, 1, 352, :_reduce_none, - 1, 353, :_reduce_none, - 3, 353, :_reduce_576, - 1, 302, :_reduce_577, - 3, 302, :_reduce_578, - 1, 354, :_reduce_none, - 2, 355, :_reduce_580, - 1, 355, :_reduce_581, - 2, 356, :_reduce_582, - 1, 356, :_reduce_583, + 2, 355, :_reduce_556, + 0, 355, :_reduce_557, + 6, 319, :_reduce_558, + 8, 319, :_reduce_559, + 4, 319, :_reduce_560, + 6, 319, :_reduce_561, + 4, 319, :_reduce_562, + 6, 319, :_reduce_563, + 2, 319, :_reduce_564, + 4, 319, :_reduce_565, + 6, 319, :_reduce_566, + 2, 319, :_reduce_567, + 4, 319, :_reduce_568, + 2, 319, :_reduce_569, + 4, 319, :_reduce_570, + 1, 319, :_reduce_571, + 0, 319, :_reduce_572, + 1, 314, :_reduce_573, + 1, 314, :_reduce_574, + 1, 314, :_reduce_575, + 1, 314, :_reduce_576, 1, 296, :_reduce_none, - 3, 296, :_reduce_585, - 1, 349, :_reduce_none, - 3, 349, :_reduce_587, + 1, 296, :_reduce_578, 1, 357, :_reduce_none, - 1, 357, :_reduce_none, - 2, 297, :_reduce_590, - 1, 297, :_reduce_591, - 3, 358, :_reduce_592, - 3, 359, :_reduce_593, - 1, 303, :_reduce_594, - 3, 303, :_reduce_595, - 1, 351, :_reduce_596, - 3, 351, :_reduce_597, - 1, 360, :_reduce_none, - 1, 360, :_reduce_none, - 2, 304, :_reduce_600, - 1, 304, :_reduce_601, - 1, 361, :_reduce_none, - 1, 361, :_reduce_none, - 2, 299, :_reduce_604, - 2, 298, :_reduce_605, - 0, 298, :_reduce_606, - 1, 269, :_reduce_none, - 0, 362, :_reduce_608, - 4, 269, :_reduce_609, - 1, 248, :_reduce_610, - 2, 248, :_reduce_611, + 1, 358, :_reduce_none, + 3, 358, :_reduce_581, + 1, 306, :_reduce_582, + 3, 306, :_reduce_583, + 1, 359, :_reduce_none, + 2, 360, :_reduce_585, + 1, 360, :_reduce_586, + 2, 361, :_reduce_587, + 1, 361, :_reduce_588, + 1, 300, :_reduce_none, + 3, 300, :_reduce_590, + 1, 354, :_reduce_none, + 3, 354, :_reduce_592, + 1, 362, :_reduce_none, + 1, 362, :_reduce_none, + 2, 301, :_reduce_595, + 1, 301, :_reduce_596, + 3, 363, :_reduce_597, + 3, 364, :_reduce_598, + 1, 307, :_reduce_599, + 3, 307, :_reduce_600, + 1, 356, :_reduce_601, + 3, 356, :_reduce_602, + 1, 365, :_reduce_none, + 1, 365, :_reduce_none, + 2, 308, :_reduce_605, + 1, 308, :_reduce_606, + 1, 366, :_reduce_none, + 1, 366, :_reduce_none, + 2, 303, :_reduce_609, + 2, 302, :_reduce_610, + 0, 302, :_reduce_611, + 1, 270, :_reduce_none, + 0, 367, :_reduce_613, + 4, 270, :_reduce_614, + 1, 249, :_reduce_615, + 2, 249, :_reduce_none, 1, 231, :_reduce_none, - 3, 231, :_reduce_613, - 3, 363, :_reduce_614, - 2, 363, :_reduce_615, - 4, 363, :_reduce_616, - 2, 363, :_reduce_617, + 3, 231, :_reduce_618, + 3, 368, :_reduce_619, + 2, 368, :_reduce_620, + 4, 368, :_reduce_621, + 2, 368, :_reduce_622, 1, 200, :_reduce_none, 1, 200, :_reduce_none, 1, 200, :_reduce_none, 1, 194, :_reduce_none, 1, 194, :_reduce_none, 1, 194, :_reduce_none, 1, 194, :_reduce_none, - 1, 318, :_reduce_none, - 1, 318, :_reduce_none, - 1, 318, :_reduce_none, - 1, 270, :_reduce_none, - 1, 270, :_reduce_none, + 1, 322, :_reduce_none, + 1, 322, :_reduce_none, + 1, 322, :_reduce_none, + 1, 271, :_reduce_none, + 1, 271, :_reduce_none, 1, 182, :_reduce_none, 1, 193, :_reduce_none, 1, 193, :_reduce_none, 0, 150, :_reduce_none, 1, 150, :_reduce_none, @@ -2977,19 +2988,19 @@ 2, 205, :_reduce_none, 2, 181, :_reduce_none, 0, 230, :_reduce_none, 1, 230, :_reduce_none, 1, 230, :_reduce_none, - 1, 265, :_reduce_642, - 1, 265, :_reduce_none, + 1, 266, :_reduce_647, + 1, 266, :_reduce_none, 1, 153, :_reduce_none, - 2, 153, :_reduce_645, - 0, 151, :_reduce_646 ] + 2, 153, :_reduce_650, + 0, 151, :_reduce_651 ] -racc_reduce_n = 647 +racc_reduce_n = 652 -racc_shift_n = 1092 +racc_shift_n = 1096 racc_token_table = { false => 0, :error => 1, :kCLASS => 2, @@ -3131,12 +3142,12 @@ :tSTRING_DEND => 138, :tUBANG => 139, :tRATIONAL => 140, :tIMAGINARY => 141, :tLABEL_END => 142, - :tEQL => 143, - :tLOWEST => 144 } + :tLOWEST => 143, + :tEQL => 144 } racc_nt_base = 145 racc_use_result_var = true @@ -3298,12 +3309,12 @@ "tSTRING_DEND", "tUBANG", "tRATIONAL", "tIMAGINARY", "tLABEL_END", - "tEQL", "tLOWEST", + "tEQL", "$start", "program", "top_compstmt", "@1", "top_stmts", @@ -3313,18 +3324,18 @@ "terms", "stmt", "begin_block", "@2", "bodystmt", + "@3", "compstmt", "opt_rescue", "k_else", "opt_ensure", - "@3", + "@4", "stmts", "stmt_or_begin", - "@4", "fitem", "undef_list", "expr_value", "command_asgn", "mlhs", @@ -3392,10 +3403,11 @@ "paren_args", "opt_paren_args", "opt_block_arg", "block_arg", "@11", + "@12", "literal", "strings", "xstring", "regexp", "words", @@ -3426,11 +3438,10 @@ "k_module", "k_def", "f_arglist", "singleton", "dot_or_colon", - "@12", "@13", "@14", "@15", "@16", "@17", @@ -3440,10 +3451,14 @@ "@21", "@22", "@23", "@24", "@25", + "@26", + "@27", + "@28", + "@29", "k_do", "k_do_block", "k_rescue", "k_ensure", "k_when", @@ -3468,25 +3483,25 @@ "bv_decls", "bvar", "f_bad_arg", "f_larglist", "lambda_body", - "@26", - "@27", + "@30", + "@31", "f_args", "do_block", "do_body", "operation3", - "@28", - "@29", - "@30", - "@31", "@32", "@33", "@34", - "cases", "@35", + "@36", + "@37", + "@38", + "cases", + "@39", "exc_list", "exc_var", "numeric", "string", "string1", @@ -3495,19 +3510,20 @@ "regexp_contents", "word_list", "word", "string_content", "symbol_list", + "@40", "qword_list", "qsym_list", "string_dvar", - "@36", - "@37", + "@41", + "@42", "sym", - "@38", + "@43", "args_tail", - "@39", + "@44", "f_kwarg", "opt_args_tail", "f_optarg", "f_arg_asgn", "f_arg_item", @@ -3517,11 +3533,11 @@ "kwrest_mark", "f_opt", "f_block_opt", "restarg_mark", "blkarg_mark", - "@40", + "@45", "assoc" ] Racc_debug_parser = false ##### State transition tables end ##### @@ -3539,11 +3555,12 @@ result end def _reduce_3(val, _values, result) - result = val[0] + stmt, _ = val + result = stmt result end # reduce 4 omitted @@ -3556,21 +3573,12 @@ result end # reduce 7 omitted -def _reduce_8(val, _values, result) - result = val[0] +# reduce 8 omitted - # TODO: remove once I have more confidence this is fixed - # result.each_of_type :call_args do |s| - # debug20 666, s, result - # end - - result -end - def _reduce_9(val, _values, result) if (self.in_def || self.in_single > 0) then debug20 1 yyerror "BEGIN in method" end @@ -3578,109 +3586,110 @@ result end def _reduce_10(val, _values, result) - _, _, block = val - result = block + (_, lineno), _, iter = val + iter.line lineno + + (_, preexe,) = iter + preexe.line lineno + + result = iter result end def _reduce_11(val, _values, result) - _, stmt, _ = val - result = new_iter s(:preexe), 0, stmt - + result = lexer.lineno result end def _reduce_12(val, _values, result) + _, line, stmt, _ = val + result = new_iter s(:preexe).line(line), 0, stmt + + result +end + +def _reduce_13(val, _values, result) res = _values[-2] yyerror "else without rescue is useless" unless res result end -def _reduce_13(val, _values, result) +def _reduce_14(val, _values, result) body, resc, _, _, els, ens = val result = new_body [body, resc, els, ens] result end -def _reduce_14(val, _values, result) +def _reduce_15(val, _values, result) body, resc, ens = val result = new_body [body, resc, nil, ens] result end -def _reduce_15(val, _values, result) +def _reduce_16(val, _values, result) result = new_compstmt val result end -# reduce 16 omitted - # reduce 17 omitted -def _reduce_18(val, _values, result) +# reduce 18 omitted + +def _reduce_19(val, _values, result) result = self.block_append val[0], val[2] result end -def _reduce_19(val, _values, result) +def _reduce_20(val, _values, result) result = val[1] debug20 2, val, result result end -# reduce 20 omitted +# reduce 21 omitted -def _reduce_21(val, _values, result) - if (self.in_def || self.in_single > 0) then - debug20 1 - yyerror "BEGIN in method" - end - self.env.extend - - result -end - def _reduce_22(val, _values, result) - _, _, stmt = val - result = stmt + yyerror "BEGIN is permitted only at toplevel" result end def _reduce_23(val, _values, result) lexer.lex_state = EXPR_FNAME - result = self.lexer.lineno result end def _reduce_24(val, _values, result) - result = s(:alias, val[1], val[3]).line(val[2]) + (_, line), lhs, _, rhs = val + result = s(:alias, lhs, rhs).line(line).line line result end def _reduce_25(val, _values, result) - result = s(:valias, val[1].to_sym, val[2].to_sym) + (_, line), lhs, rhs = val + result = s(:valias, lhs.to_sym, rhs.to_sym).line line result end def _reduce_26(val, _values, result) - result = s(:valias, val[1].to_sym, :"$#{val[2]}") + (_, line), lhs, rhs = val + result = s(:valias, lhs.to_sym, :"$#{rhs}").line line result end def _reduce_27(val, _values, result) @@ -3694,46 +3703,55 @@ result end def _reduce_29(val, _values, result) - result = new_if val[2], val[0], nil + t, _, c = val + result = new_if c, t, nil result end def _reduce_30(val, _values, result) - result = new_if val[2], nil, val[0] + f, _, c = val + result = new_if c, nil, f result end def _reduce_31(val, _values, result) - result = new_while val[0], val[2], true + e, _, c = val + result = new_while e, c, true result end def _reduce_32(val, _values, result) - result = new_until val[0], val[2], true + e, _, c = val + result = new_until e, c, true result end def _reduce_33(val, _values, result) body, _, resbody = val - result = new_rescue body, new_resbody(s(:array), resbody) + + resbody = new_resbody s(:array).line(resbody.line), resbody + result = new_rescue body, resbody result end def _reduce_34(val, _values, result) + (_, line), _, stmt, _ = val + if (self.in_def || self.in_single > 0) then debug20 3 yyerror "END in method; use at_exit" end - result = new_iter s(:postexe), 0, val[2] + + result = new_iter s(:postexe).line(line), 0, stmt result end # reduce 35 omitted @@ -3743,11 +3761,12 @@ result end def _reduce_37(val, _values, result) - result = new_assign val[0], s(:svalue, val[2]) + lhs, _, rhs = val + result = new_assign lhs, s(:svalue, rhs).line(rhs.line) result end def _reduce_38(val, _values, result) @@ -3769,17 +3788,18 @@ result end def _reduce_42(val, _values, result) - result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5]) + result = new_op_asgn1 val result end def _reduce_43(val, _values, result) - result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym) + prim, _, id, opasgn, rhs = val + result = s(:op_asgn, prim, rhs, id.to_sym, opasgn.to_sym) if val[1] == '&.' result.sexp_type = :safe_op_asgn end result.line = val[0].line @@ -3826,29 +3846,36 @@ # reduce 49 omitted # reduce 50 omitted def _reduce_51(val, _values, result) - result = logical_op :and, val[0], val[2] + lhs, _, rhs = val + result = logical_op :and, lhs, rhs result end def _reduce_52(val, _values, result) - result = logical_op :or, val[0], val[2] + lhs, _, rhs = val + result = logical_op :or, lhs, rhs result end def _reduce_53(val, _values, result) - result = s(:call, val[2], :"!") + (_, line), _, expr = val + result = new_call(expr, :"!").line line + # REFACTOR: call_uni_op result end def _reduce_54(val, _values, result) - result = s(:call, val[1], :"!") + _, cmd = val + result = new_call(cmd, :"!").line cmd.line + # TODO: fix line number to tBANG... but causes BAD shift/reduce conflict + # REFACTOR: call_uni_op -- see parse26.y result end # reduce 55 omitted @@ -3883,11 +3910,12 @@ # reduce 61 omitted # reduce 62 omitted def _reduce_63(val, _values, result) - result = new_call val[0], val[2].to_sym, val[3] + blk, _, msg, args = val + result = new_call(blk, msg.to_sym, args).line blk.line result end def _reduce_64(val, _values, result) @@ -3907,35 +3935,41 @@ result end def _reduce_66(val, _values, result) - result = new_call nil, val[0].to_sym + msg, = val + result = new_call(nil, msg.to_sym).line lexer.lineno result end def _reduce_67(val, _values, result) - result = val[0].concat val[1].sexp_body # REFACTOR pattern + call, args = val + result = call.concat args.sexp_body result end def _reduce_68(val, _values, result) - result = val[0].concat val[1].sexp_body - if val[2] then - block_dup_check result, val[2] + call, args, block = val - result, operation = val[2], result + result = call.concat args.sexp_body + + if block then + block_dup_check result, block + + result, operation = block, result result.insert 1, operation end result end def _reduce_69(val, _values, result) - result = new_call val[0], val[2].to_sym, val[3], val[1] + lhs, callop, op, args = val + result = new_call lhs, op.to_sym, args, callop result end def _reduce_70(val, _values, result) @@ -3973,11 +4007,13 @@ result end def _reduce_74(val, _values, result) - result = new_yield val[1] + (_, line), args = val + result = new_yield args + result.line line # TODO: push to new_yield result end def _reduce_75(val, _values, result) @@ -3986,12 +4022,12 @@ result end def _reduce_76(val, _values, result) - line = val[0].last - result = s(:break, ret_args(val[1])).line(line) + (_, line), args = val + result = s(:break, ret_args(args)).line line result end def _reduce_77(val, _values, result) @@ -4010,79 +4046,102 @@ end # reduce 80 omitted def _reduce_81(val, _values, result) - result = s(:masgn, s(:array, val[1])) + _, arg, _ = val + l = arg.line + + result = s(:masgn, s(:array, arg).line(l)).line l result end def _reduce_82(val, _values, result) - result = s(:masgn, val[0]) + head, = val + result = s(:masgn, head).line head.line result end def _reduce_83(val, _values, result) - result = s(:masgn, val[0] << val[1].compact) + lhs, rhs = val + result = s(:masgn, lhs << rhs.compact).line lhs.line result end def _reduce_84(val, _values, result) - result = s(:masgn, val[0] << s(:splat, val[2])) + head, _, tail = val + head << s(:splat, tail).line(tail.line) + result = s(:masgn, head).line head.line result end def _reduce_85(val, _values, result) ary1, _, splat, _, ary2 = val - result = list_append ary1, s(:splat, splat) + result = list_append ary1, s(:splat, splat).line(splat.line) result.concat ary2.sexp_body - result = s(:masgn, result) + result = s(:masgn, result).line result.line result end def _reduce_86(val, _values, result) - result = s(:masgn, val[0] << s(:splat)) + head, _ = val + l = head.line + result = s(:masgn, head << s(:splat).line(l)).line l result end def _reduce_87(val, _values, result) - ary = list_append val[0], s(:splat) - ary.concat val[3].sexp_body - result = s(:masgn, ary) + head, _, _, post = val + ary = list_append head, s(:splat).line(head.line) + ary.concat post.sexp_body + result = s(:masgn, ary).line ary.line result end def _reduce_88(val, _values, result) - result = s(:masgn, s(:array, s(:splat, val[1]))) + _, node = val + l = node.line + splat = s(:splat, node).line l + ary = s(:array, splat).line l + result = s(:masgn, ary).line l result end def _reduce_89(val, _values, result) - ary = s(:array, s(:splat, val[1])) - ary.concat val[3].sexp_body - result = s(:masgn, ary) + _, node, _, post = val + + splat = s(:splat, node).line node.line + ary = s(:array, splat).line splat.line + ary.concat post.sexp_body + result = s(:masgn, ary).line ary.line result end def _reduce_90(val, _values, result) - result = s(:masgn, s(:array, s(:splat))) + l = lexer.lineno + result = s(:masgn, s(:array, s(:splat).line(l)).line(l)).line l result end def _reduce_91(val, _values, result) - result = s(:masgn, s(:array, s(:splat), *val[2].sexp_body)) + _, _, post = val + l = post.line + + splat = s(:splat).line l + ary = s(:array, splat, *post.sexp_body).line l + result = s(:masgn, ary).line l result end # reduce 92 omitted @@ -4092,11 +4151,12 @@ result end def _reduce_94(val, _values, result) - result = s(:array, val[0]) + lhs, _ = val + result = s(:array, lhs).line lhs.line result end def _reduce_95(val, _values, result) @@ -4104,11 +4164,12 @@ result end def _reduce_96(val, _values, result) - result = s(:array, val[0]) + item, = val + result = s(:array, item).line item.line result end def _reduce_97(val, _values, result) @@ -4140,11 +4201,12 @@ result end def _reduce_102(val, _values, result) - result = s(:attrasgn, val[0], :"#{val[2]}=") + recv, _, id = val + result = new_attrasgn recv, id result end def _reduce_103(val, _values, result) @@ -4157,22 +4219,28 @@ if (self.in_def || self.in_single > 0) then debug20 7 yyerror "dynamic constant assignment" end - result = s(:const, s(:colon2, val[0], val[2].to_sym), nil) + expr, _, id = val + l = expr.line + + result = s(:const, s(:colon2, expr, id.to_sym).line(l), nil).line l result end def _reduce_105(val, _values, result) if (self.in_def || self.in_single > 0) then debug20 8 yyerror "dynamic constant assignment" end - result = s(:const, nil, s(:colon3, val[1].to_sym)) + _, id = val + l = lexer.lineno + + result = s(:const, nil, s(:colon3, id.to_sym).line(l)).line l result end def _reduce_106(val, _values, result) @@ -4180,36 +4248,43 @@ result end def _reduce_107(val, _values, result) + line = lexer.lineno result = self.assignable val[0] + result.line = line result end def _reduce_108(val, _values, result) + line = lexer.lineno result = self.assignable val[0] + result.line = line debug20 9, val, result result end def _reduce_109(val, _values, result) - result = self.aryset val[0], val[2] + lhs, _, args, _ = val + result = self.aryset lhs, args result end def _reduce_110(val, _values, result) - result = new_attrasgn val[0], val[2], val[1] + lhs, op, id = val + result = new_attrasgn lhs, id, op result end def _reduce_111(val, _values, result) - result = s(:attrasgn, val[0], :"#{val[2]}=") + lhs, _, id = val + result = new_attrasgn lhs, id result end def _reduce_112(val, _values, result) @@ -4217,27 +4292,33 @@ result end def _reduce_113(val, _values, result) + expr, _, id = val + if (self.in_def || self.in_single > 0) then debug20 10 yyerror "dynamic constant assignment" end - result = s(:const, s(:colon2, val[0], val[2].to_sym)) + l = expr.line + result = s(:const, s(:colon2, expr, id.to_sym).line(l)).line l result end def _reduce_114(val, _values, result) + _, id = val + if (self.in_def || self.in_single > 0) then debug20 11 yyerror "dynamic constant assignment" end - result = s(:const, s(:colon3, val[1].to_sym)) + l = lexer.lineno + result = s(:const, s(:colon3, id.to_sym).line(l)).line l result end def _reduce_115(val, _values, result) @@ -4253,11 +4334,12 @@ end # reduce 117 omitted def _reduce_118(val, _values, result) - result = s(:colon3, val[1].to_sym) + _, name = val + result = s(:colon3, name.to_sym).line lexer.lineno result end def _reduce_119(val, _values, result) @@ -4265,11 +4347,14 @@ result end def _reduce_120(val, _values, result) - result = s(:colon2, val[0], val[2].to_sym) + pval, _, name = val + + result = s(:colon2, pval, name.to_sym) + result.line pval.line result end # reduce 121 omitted @@ -4296,11 +4381,12 @@ # reduce 126 omitted # reduce 127 omitted def _reduce_128(val, _values, result) - result = s(:lit, val[0].to_sym) + id, = val + result = s(:lit, id.to_sym).line lexer.lineno result end # reduce 129 omitted @@ -4478,12 +4564,11 @@ result end def _reduce_207(val, _values, result) - val[2].sexp_type = :arglist if val[2] - result = s(:op_asgn1, val[0], val[2], val[4].to_sym, val[5]) + result = new_op_asgn1 val result end def _reduce_208(val, _values, result) @@ -4497,11 +4582,13 @@ result end def _reduce_210(val, _values, result) - result = s(:op_asgn, val[0], val[4], val[2].to_sym, val[3].to_sym) + lhs, _, id, op, rhs = val + + result = s(:op_asgn, lhs, rhs, id.to_sym, op.to_sym).line lhs.line result end def _reduce_211(val, _values, result) @@ -4537,24 +4624,24 @@ end def _reduce_215(val, _values, result) v1, v2 = val[0], val[2] if v1.node_type == :lit and v2.node_type == :lit and Integer === v1.last and Integer === v2.last then - result = s(:lit, (v1.last)..(v2.last)) + result = s(:lit, (v1.last)..(v2.last)).line v1.line else - result = s(:dot2, v1, v2) + result = s(:dot2, v1, v2).line v1.line end result end def _reduce_216(val, _values, result) v1, v2 = val[0], val[2] if v1.node_type == :lit and v2.node_type == :lit and Integer === v1.last and Integer === v2.last then - result = s(:lit, (v1.last)...(v2.last)) + result = s(:lit, (v1.last)...(v2.last)).line v1.line else - result = s(:dot3, v1, v2) + result = s(:dot3, v1, v2).line v1.line end result end @@ -4593,11 +4680,13 @@ result end def _reduce_223(val, _values, result) - result = new_call(new_call(s(:lit, val[1]), :"**", argl(val[3])), :"-@") + lit = s(:lit, val[1]).line lexer.lineno + result = new_call(new_call(lit, :"**", argl(val[3])), :"-@") + result end def _reduce_224(val, _values, result) @@ -4655,23 +4744,27 @@ result end def _reduce_234(val, _values, result) - result = new_match val[0], val[2] + lhs, _, rhs = val + result = new_match lhs, rhs result end def _reduce_235(val, _values, result) - result = s(:not, new_match(val[0], val[2])) + lhs, _, rhs = val + result = s(:not, new_match(lhs, rhs)).line lhs.line result end def _reduce_236(val, _values, result) - result = new_call val[1], :"!" + _, arg = val + result = new_call arg, :"!" + result.line arg.line result end def _reduce_237(val, _values, result) @@ -4707,17 +4800,19 @@ result end def _reduce_242(val, _values, result) - result = s(:defined, val[2]) + (_, line), _, arg = val + result = s(:defined, arg).line line result end def _reduce_243(val, _values, result) - result = s(:if, val[0], val[2], val[5]) + c, _, t, _, _, f = val + result = s(:if, c, t, f).line c.line result end # reduce 244 omitted @@ -4772,39 +4867,34 @@ end # reduce 256 omitted def _reduce_257(val, _values, result) - body, _, resbody = val + body, (_, line), resbody = val body = value_expr body resbody = remove_begin resbody - result = new_rescue(body, new_resbody(s(:array), resbody)) + + ary = s(:array).line line + result = new_rescue(body, new_resbody(ary, resbody)) result end def _reduce_258(val, _values, result) - result = val[1] + _, args, _ = val + result = args result end # reduce 259 omitted # reduce 260 omitted -def _reduce_261(val, _values, result) - result = val[0] - - result -end +# reduce 261 omitted -def _reduce_262(val, _values, result) - result = val[0] - - result -end +# reduce 262 omitted def _reduce_263(val, _values, result) result = args val result @@ -4868,11 +4958,12 @@ result end def _reduce_273(val, _values, result) - result = s(:block_pass, val[1]) + _, arg = val + result = s(:block_pass, arg).line arg.line result end def _reduce_274(val, _values, result) @@ -4882,64 +4973,76 @@ end # reduce 275 omitted def _reduce_276(val, _values, result) - result = s(:array, val[0]) + arg, = val + + result = s(:array, arg).line arg.line result end def _reduce_277(val, _values, result) - result = s(:array, s(:splat, val[1])) + _, arg = val + result = s(:array, s(:splat, arg).line(arg.line)).line arg.line result end def _reduce_278(val, _values, result) - result = self.list_append val[0], val[2] + args, _, id = val + result = self.list_append args, id result end def _reduce_279(val, _values, result) - result = self.list_append val[0], s(:splat, val[3]) - + result = lexer.lineno result end def _reduce_280(val, _values, result) - result = new_masgn_arg val[0] + args, _, _, line, id = val + result = self.list_append args, s(:splat, id).line(line) result end def _reduce_281(val, _values, result) - result = new_masgn_arg val[0], :wrap + result = new_masgn_arg val[0] result end def _reduce_282(val, _values, result) - result = val[0] << val[2] + result = new_masgn_arg val[0], :wrap result end def _reduce_283(val, _values, result) - result = self.arg_concat val[0], val[3] + result = val[0] << val[2] result end def _reduce_284(val, _values, result) - result = s(:splat, val[1]) + # FIX: bad shift/reduce conflict with rhs' comma star prod + # TODO: make all tXXXX terminals include lexer.lineno + arg, _, _, splat = val + result = self.arg_concat arg, splat result end -# reduce 285 omitted +def _reduce_285(val, _values, result) + _, arg = val + result = s(:splat, arg).line arg.line + + result +end # reduce 286 omitted # reduce 287 omitted @@ -4955,26 +5058,29 @@ # reduce 293 omitted # reduce 294 omitted -def _reduce_295(val, _values, result) - result = new_call nil, val[0].to_sym +# reduce 295 omitted + +def _reduce_296(val, _values, result) + msg, = val + result = new_call nil, msg.to_sym result end -def _reduce_296(val, _values, result) +def _reduce_297(val, _values, result) result = self.lexer.lineno # TODO: # $<val>1 = cmdarg_stack; # CMDARG_SET(0); result end -def _reduce_297(val, _values, result) +def _reduce_298(val, _values, result) # TODO: CMDARG_SET($<val>1); unless val[2] then result = s(:nil) else result = s(:begin, val[2]) @@ -4983,274 +5089,296 @@ result.line = val[1] result end -def _reduce_298(val, _values, result) - # TODO: lex_state = EXPR_ENDARG in between - debug20 13, val, result +def _reduce_299(val, _values, result) + lexer.lex_state = EXPR_ENDARG + result = lexer.lineno result end -def _reduce_299(val, _values, result) +def _reduce_300(val, _values, result) + _, line, _ = val + result = s(:begin).line line + + result +end + +def _reduce_301(val, _values, result) result = lexer.cmdarg.store false - # result = self.lexer.cmdarg.stack.dup - # lexer.cmdarg.stack.replace [false] # TODO add api for these result end -def _reduce_300(val, _values, result) +def _reduce_302(val, _values, result) lexer.lex_state = EXPR_ENDARG result end -def _reduce_301(val, _values, result) +def _reduce_303(val, _values, result) _, cmdarg, stmt, _, _, = val warning "(...) interpreted as grouped expression" lexer.cmdarg.restore cmdarg result = stmt result end -def _reduce_302(val, _values, result) - result = val[1] || s(:nil) +def _reduce_304(val, _values, result) + _, stmt, _ = val + result = stmt + result ||= s(:nil).line lexer.lineno result.paren = true result end -def _reduce_303(val, _values, result) - result = s(:colon2, val[0], val[2].to_sym) +def _reduce_305(val, _values, result) + expr, _, id = val + + result = s(:colon2, expr, id.to_sym).line expr.line result end -def _reduce_304(val, _values, result) - result = s(:colon3, val[1].to_sym) +def _reduce_306(val, _values, result) + _, id = val + + result = s(:colon3, id.to_sym).line lexer.lineno result end -def _reduce_305(val, _values, result) - result = val[1] || s(:array) +def _reduce_307(val, _values, result) + result = lexer.lineno + result +end + +def _reduce_308(val, _values, result) + _, line, args, _ = val + result = args || s(:array) result.sexp_type = :array # aref_args is :args + result.line line result end -def _reduce_306(val, _values, result) +def _reduce_309(val, _values, result) result = self.lexer.lineno result end -def _reduce_307(val, _values, result) +def _reduce_310(val, _values, result) result = new_hash val result end -def _reduce_308(val, _values, result) - result = s(:return) +def _reduce_311(val, _values, result) + (_, line), = val + result = s(:return).line line result end -def _reduce_309(val, _values, result) +def _reduce_312(val, _values, result) result = new_yield val[2] result end -def _reduce_310(val, _values, result) +def _reduce_313(val, _values, result) result = new_yield result end -def _reduce_311(val, _values, result) +def _reduce_314(val, _values, result) result = new_yield result end -def _reduce_312(val, _values, result) - result = s(:defined, val[3]) +def _reduce_315(val, _values, result) + (_, line), _, _, arg, _ = val + + result = s(:defined, arg).line line result end -def _reduce_313(val, _values, result) - result = s(:call, val[2], :"!") +def _reduce_316(val, _values, result) + _, _, lhs, _ = val + result = new_call lhs, :"!" result end -def _reduce_314(val, _values, result) +def _reduce_317(val, _values, result) debug20 14, val, result result end -def _reduce_315(val, _values, result) - oper, iter = val[0], val[1] - call = oper # FIX +def _reduce_318(val, _values, result) + call, iter = val + iter.insert 1, call result = iter - call.line = iter.line + # FIX: probably not: call.line = iter.line result end -# reduce 316 omitted +# reduce 319 omitted -def _reduce_317(val, _values, result) +def _reduce_320(val, _values, result) call, iter = val[0], val[1] block_dup_check call, iter iter.insert 1, call # FIX result = iter result end -def _reduce_318(val, _values, result) +def _reduce_321(val, _values, result) result = val[1] # TODO: fix lineno result end -def _reduce_319(val, _values, result) +def _reduce_322(val, _values, result) _, c, _, t, f, _ = val result = new_if c, t, f result end -def _reduce_320(val, _values, result) +def _reduce_323(val, _values, result) _, c, _, t, f, _ = val result = new_if c, f, t result end -def _reduce_321(val, _values, result) +def _reduce_324(val, _values, result) _, cond, body, _ = val result = new_while body, cond, true result end -def _reduce_322(val, _values, result) +def _reduce_325(val, _values, result) _, cond, body, _ = val result = new_until body, cond, true result end -def _reduce_323(val, _values, result) +def _reduce_326(val, _values, result) (_, line), expr, _, body, _ = val result = new_case expr, body, line result end -def _reduce_324(val, _values, result) +def _reduce_327(val, _values, result) (_, line), _, body, _ = val result = new_case nil, body, line result end -def _reduce_325(val, _values, result) +def _reduce_328(val, _values, result) _, var, _, iter, body, _ = val result = new_for iter, var, body result end -def _reduce_326(val, _values, result) +def _reduce_329(val, _values, result) result = self.lexer.lineno result end -def _reduce_327(val, _values, result) +def _reduce_330(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_328(val, _values, result) +def _reduce_331(val, _values, result) result = new_class val self.env.unextend self.lexer.comments # we don't care about comments in the body result end -def _reduce_329(val, _values, result) +def _reduce_332(val, _values, result) result = self.lexer.lineno result end -def _reduce_330(val, _values, result) +def _reduce_333(val, _values, result) result = self.in_def self.in_def = false result end -def _reduce_331(val, _values, result) +def _reduce_334(val, _values, result) result = self.in_single self.in_single = 0 self.env.extend result end -def _reduce_332(val, _values, result) +def _reduce_335(val, _values, result) result = new_sclass val self.env.unextend self.lexer.comments # we don't care about comments in the body result end -def _reduce_333(val, _values, result) +def _reduce_336(val, _values, result) result = self.lexer.lineno result end -def _reduce_334(val, _values, result) +def _reduce_337(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_335(val, _values, result) +def _reduce_338(val, _values, result) result = new_module val self.env.unextend self.lexer.comments # we don't care about comments in the body result end -def _reduce_336(val, _values, result) +def _reduce_339(val, _values, result) result = [self.in_def, self.lexer.cmdarg.stack.dup] self.comments.push self.lexer.comments self.in_def = true self.env.extend @@ -5259,11 +5387,16 @@ lexer.cmdarg.stack.replace [false] result end -def _reduce_337(val, _values, result) +def _reduce_340(val, _values, result) + result = lexer.lineno + result +end + +def _reduce_341(val, _values, result) in_def, cmdarg = val[2] result = new_defn val lexer.cmdarg.stack.replace cmdarg @@ -5272,79 +5405,74 @@ self.lexer.comments # we don't care about comments in the body result end -def _reduce_338(val, _values, result) +def _reduce_342(val, _values, result) self.comments.push self.lexer.comments lexer.lex_state = EXPR_FNAME result end -def _reduce_339(val, _values, result) +def _reduce_343(val, _values, result) self.in_single += 1 self.env.extend lexer.lex_state = EXPR_ENDFN # force for args result = [lexer.lineno, self.lexer.cmdarg.stack.dup] lexer.cmdarg.stack.replace [false] result end -def _reduce_340(val, _values, result) - line, cmdarg = val[5] +def _reduce_344(val, _values, result) + _, cmdarg = val[5] result = new_defs val - result[3].line line lexer.cmdarg.stack.replace cmdarg self.env.unextend self.in_single -= 1 self.lexer.comments # we don't care about comments in the body result end -def _reduce_341(val, _values, result) - result = s(:break) +def _reduce_345(val, _values, result) + (_, line), = val + result = s(:break).line line result end -def _reduce_342(val, _values, result) - result = s(:next) +def _reduce_346(val, _values, result) + (_, line), = val + result = s(:next).line line result end -def _reduce_343(val, _values, result) - result = s(:redo) +def _reduce_347(val, _values, result) + (_, line), = val + result = s(:redo).line line result end -def _reduce_344(val, _values, result) - result = s(:retry) +def _reduce_348(val, _values, result) + (_, line), = val + result = s(:retry).line line result end -def _reduce_345(val, _values, result) +def _reduce_349(val, _values, result) result = value_expr(val[0]) result end -# reduce 346 omitted - -# reduce 347 omitted - -# reduce 348 omitted - -# reduce 349 omitted - # reduce 350 omitted # reduce 351 omitted # reduce 352 omitted @@ -5383,842 +5511,884 @@ # reduce 369 omitted # reduce 370 omitted -def _reduce_371(val, _values, result) - result = s(:if, val[1], val[3], val[4]) +# reduce 371 omitted + +# reduce 372 omitted + +# reduce 373 omitted + +# reduce 374 omitted + +def _reduce_375(val, _values, result) + (_, line), c, _, t, rest = val + + result = s(:if, c, t, rest).line line result end -# reduce 372 omitted +# reduce 376 omitted -def _reduce_373(val, _values, result) +def _reduce_377(val, _values, result) result = val[1] result end -# reduce 374 omitted +# reduce 378 omitted -def _reduce_375(val, _values, result) +def _reduce_379(val, _values, result) val[0].delete_at 1 if val[0][1].nil? # HACK result end -# reduce 376 omitted +# reduce 380 omitted -def _reduce_377(val, _values, result) +def _reduce_381(val, _values, result) result = val[1] result end -def _reduce_378(val, _values, result) - result = s(:array, val[0]) +def _reduce_382(val, _values, result) + sym, = val + + result = s(:array, sym).line lexer.lineno result end -def _reduce_379(val, _values, result) +def _reduce_383(val, _values, result) result = list_append val[0], val[2] result end -def _reduce_380(val, _values, result) +def _reduce_384(val, _values, result) args, = val result = block_var args result end -def _reduce_381(val, _values, result) +def _reduce_385(val, _values, result) args, _, _, splat = val result = block_var args, "*#{splat}".to_sym result end -def _reduce_382(val, _values, result) +def _reduce_386(val, _values, result) args, _, _, splat, _, args2 = val result = block_var args, "*#{splat}".to_sym, args2 result end -def _reduce_383(val, _values, result) +def _reduce_387(val, _values, result) args, _, _ = val result = block_var args, :* result end -def _reduce_384(val, _values, result) +def _reduce_388(val, _values, result) args, _, _, _, args2 = val result = block_var args, :*, args2 result end -def _reduce_385(val, _values, result) +def _reduce_389(val, _values, result) _, splat = val result = block_var :"*#{splat}" result end -def _reduce_386(val, _values, result) +def _reduce_390(val, _values, result) _, splat, _, args = val result = block_var :"*#{splat}", args result end -def _reduce_387(val, _values, result) +def _reduce_391(val, _values, result) result = block_var :* result end -def _reduce_388(val, _values, result) +def _reduce_392(val, _values, result) _, _, args = val result = block_var :*, args result end -def _reduce_389(val, _values, result) +def _reduce_393(val, _values, result) result = call_args val result end -def _reduce_390(val, _values, result) +def _reduce_394(val, _values, result) result = call_args val result end -def _reduce_391(val, _values, result) +def _reduce_395(val, _values, result) result = call_args val result end -def _reduce_392(val, _values, result) - result = call_args val +def _reduce_396(val, _values, result) + line = lexer.lineno + result = call_args val # TODO: push line down + result.line line result end -def _reduce_393(val, _values, result) +def _reduce_397(val, _values, result) result = args val result end -# reduce 394 omitted +# reduce 398 omitted -def _reduce_395(val, _values, result) +def _reduce_399(val, _values, result) result = args val result end -def _reduce_396(val, _values, result) +def _reduce_400(val, _values, result) result = args val result end -def _reduce_397(val, _values, result) +def _reduce_401(val, _values, result) result = args val result end -def _reduce_398(val, _values, result) +def _reduce_402(val, _values, result) result = args val result end -def _reduce_399(val, _values, result) +def _reduce_403(val, _values, result) result = args val result end -def _reduce_400(val, _values, result) - result = args val +def _reduce_404(val, _values, result) + result = args(val) << nil result end -def _reduce_401(val, _values, result) +def _reduce_405(val, _values, result) result = args val result end -def _reduce_402(val, _values, result) +def _reduce_406(val, _values, result) result = args val result end -def _reduce_403(val, _values, result) +def _reduce_407(val, _values, result) result = args val result end -def _reduce_404(val, _values, result) +def _reduce_408(val, _values, result) result = args val result end -def _reduce_405(val, _values, result) +def _reduce_409(val, _values, result) result = args val result end -def _reduce_406(val, _values, result) +def _reduce_410(val, _values, result) result = args val result end -def _reduce_407(val, _values, result) +def _reduce_411(val, _values, result) result = args val result end -def _reduce_408(val, _values, result) +def _reduce_412(val, _values, result) result = args val result end -def _reduce_409(val, _values, result) +def _reduce_413(val, _values, result) result = args val result end -def _reduce_410(val, _values, result) +def _reduce_414(val, _values, result) result = 0 result end -def _reduce_411(val, _values, result) +def _reduce_415(val, _values, result) self.lexer.command_start = true result end -def _reduce_412(val, _values, result) +def _reduce_416(val, _values, result) # TODO: current_arg = 0 result = args val result end -def _reduce_413(val, _values, result) - result = s(:args) +def _reduce_417(val, _values, result) + result = s(:args).line lexer.lineno result end -def _reduce_414(val, _values, result) +def _reduce_418(val, _values, result) # TODO: current_arg = 0 result = args val result end -# reduce 415 omitted +# reduce 419 omitted -def _reduce_416(val, _values, result) +def _reduce_420(val, _values, result) result = args val result end -def _reduce_417(val, _values, result) +def _reduce_421(val, _values, result) result = args val result end -def _reduce_418(val, _values, result) +def _reduce_422(val, _values, result) result = args val result end -def _reduce_419(val, _values, result) - result = s(:shadow, val[0].to_sym) +def _reduce_423(val, _values, result) + id, = val + line = lexer.lineno + result = s(:shadow, id.to_sym).line line result end -# reduce 420 omitted +# reduce 424 omitted -def _reduce_421(val, _values, result) +def _reduce_425(val, _values, result) self.env.extend :dynamic - result = self.lexer.lineno - - result = lexer.lpar_beg + result = [lexer.lineno, lexer.lpar_beg] lexer.paren_nest += 1 lexer.lpar_beg = lexer.paren_nest result end -def _reduce_422(val, _values, result) - result = [lexer.cmdarg.store(false), self.lexer.lineno] +def _reduce_426(val, _values, result) + result = lexer.cmdarg.store(false) result end -def _reduce_423(val, _values, result) - lpar, args, (cmdarg, lineno), body = val +def _reduce_427(val, _values, result) + (line, lpar), args, cmdarg, body = val lexer.lpar_beg = lpar lexer.cmdarg.restore cmdarg lexer.cmdarg.lexpop - call = new_call nil, :lambda + call = s(:lambda).line line result = new_iter call, args, body - result.line = lineno + result.line = line self.env.unextend result end -def _reduce_424(val, _values, result) +def _reduce_428(val, _values, result) result = args val result end -def _reduce_425(val, _values, result) +def _reduce_429(val, _values, result) result = val[0] result = 0 if result == s(:args) result end -def _reduce_426(val, _values, result) +def _reduce_430(val, _values, result) result = val[1] result end -def _reduce_427(val, _values, result) +def _reduce_431(val, _values, result) result = val[1] result end -def _reduce_428(val, _values, result) - # TODO: maybe fix lineno to kDO's lineno? - result = val[1] +def _reduce_432(val, _values, result) + (_, line), iter, _ = val + result = iter.line line result end -def _reduce_429(val, _values, result) +def _reduce_433(val, _values, result) # TODO: ## if (nd_type($1) == NODE_YIELD) { ## compile_error(PARSER_ARG "block given to yield"); syntax_error "Both block arg and actual block given." if val[0].block_pass? val = invert_block_call val if inverted? val - result = val[1] - result.insert 1, val[0] + cmd, blk = val + + result = blk + result.insert 1, cmd result end -def _reduce_430(val, _values, result) +def _reduce_434(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end -def _reduce_431(val, _values, result) +def _reduce_435(val, _values, result) iter1, _, name, args, iter2 = val call = new_call iter1, name.to_sym, args iter2.insert 1, call result = iter2 result end -def _reduce_432(val, _values, result) +def _reduce_436(val, _values, result) iter1, _, name, args, iter2 = val call = new_call iter1, name.to_sym, args iter2.insert 1, call result = iter2 result end -def _reduce_433(val, _values, result) +def _reduce_437(val, _values, result) result = self.lexer.lineno result end -def _reduce_434(val, _values, result) - args = self.call_args val[2..-1] - result = val[0].concat args.sexp_body +def _reduce_438(val, _values, result) + call, lineno, args = val + + result = call.concat args.sexp_body if args + result.line lineno result end -def _reduce_435(val, _values, result) +def _reduce_439(val, _values, result) result = new_call val[0], val[2].to_sym, val[3], val[1] result end -def _reduce_436(val, _values, result) +def _reduce_440(val, _values, result) result = new_call val[0], val[2].to_sym, val[3] result end -def _reduce_437(val, _values, result) +def _reduce_441(val, _values, result) result = new_call val[0], val[2].to_sym result end -def _reduce_438(val, _values, result) +def _reduce_442(val, _values, result) result = new_call val[0], :call, val[2], val[1] result end -def _reduce_439(val, _values, result) +def _reduce_443(val, _values, result) result = new_call val[0], :call, val[2] result end -def _reduce_440(val, _values, result) +def _reduce_444(val, _values, result) result = new_super val[1] result end -def _reduce_441(val, _values, result) - result = s(:zsuper) +def _reduce_445(val, _values, result) + result = s(:zsuper).line lexer.lineno result end -def _reduce_442(val, _values, result) +def _reduce_446(val, _values, result) result = new_aref val result end -def _reduce_443(val, _values, result) +def _reduce_447(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end -def _reduce_444(val, _values, result) +def _reduce_448(val, _values, result) _, line, body, _ = val result = body result.line = line self.env.unextend result end -def _reduce_445(val, _values, result) +def _reduce_449(val, _values, result) self.env.extend :dynamic result = self.lexer.lineno result end -def _reduce_446(val, _values, result) +def _reduce_450(val, _values, result) _, line, body, _ = val result = body result.line = line self.env.unextend result end -def _reduce_447(val, _values, result) +def _reduce_451(val, _values, result) self.env.extend :dynamic; result = self.lexer.lineno result end -def _reduce_448(val, _values, result) +def _reduce_452(val, _values, result) result = lexer.cmdarg.store(false) result end -def _reduce_449(val, _values, result) +def _reduce_453(val, _values, result) line, cmdarg, param, cmpstmt = val result = new_brace_body param, cmpstmt, line self.env.unextend lexer.cmdarg.restore cmdarg lexer.cmdarg.pop # because of: cmdarg_stack >> 1 ? result end -def _reduce_450(val, _values, result) +def _reduce_454(val, _values, result) self.env.extend :dynamic; result = self.lexer.lineno result end -def _reduce_451(val, _values, result) +def _reduce_455(val, _values, result) result = lexer.cmdarg.store(false) result end -def _reduce_452(val, _values, result) +def _reduce_456(val, _values, result) line, cmdarg, param, cmpstmt = val result = new_do_body param, cmpstmt, line self.env.unextend lexer.cmdarg.restore cmdarg result end -def _reduce_453(val, _values, result) +def _reduce_457(val, _values, result) result = self.lexer.lineno result end -def _reduce_454(val, _values, result) +def _reduce_458(val, _values, result) result = new_when(val[2], val[4]) result.line = val[1] result << val[5] if val[5] result end -# reduce 455 omitted +# reduce 459 omitted -# reduce 456 omitted +# reduce 460 omitted -def _reduce_457(val, _values, result) +def _reduce_461(val, _values, result) (_, line), klasses, var, _, body, rest = val klasses ||= s(:array) - klasses << new_assign(var, s(:gvar, :"$!")) if var + klasses << new_assign(var, s(:gvar, :"$!").line(var.line)) if var klasses.line line result = new_resbody(klasses, body) result << rest if rest # UGH, rewritten above result end -def _reduce_458(val, _values, result) +def _reduce_462(val, _values, result) result = nil result end -def _reduce_459(val, _values, result) - result = s(:array, val[0]) +def _reduce_463(val, _values, result) + arg, = val + result = s(:array, arg).line arg.line result end -# reduce 460 omitted +# reduce 464 omitted -# reduce 461 omitted +# reduce 465 omitted -def _reduce_462(val, _values, result) +def _reduce_466(val, _values, result) result = val[1] result end -# reduce 463 omitted +# reduce 467 omitted -def _reduce_464(val, _values, result) - _, body = val +def _reduce_468(val, _values, result) + (_, line), body = val - result = body || s(:nil) + result = body || s(:nil).line(line) result end -# reduce 465 omitted +# reduce 469 omitted -def _reduce_466(val, _values, result) +def _reduce_470(val, _values, result) + line = lexer.lineno result = s(:lit, val[0]) + result.line = line result end -def _reduce_467(val, _values, result) +def _reduce_471(val, _values, result) + line = lexer.lineno result = s(:lit, val[0]) + result.line = line result end -# reduce 468 omitted +# reduce 472 omitted -def _reduce_469(val, _values, result) - val[0] = s(:dstr, val[0].value) if val[0].sexp_type == :evstr - result = val[0] +def _reduce_473(val, _values, result) + str, = val + str = s(:dstr, str.value) if str.sexp_type == :evstr + result = str result end -def _reduce_470(val, _values, result) +def _reduce_474(val, _values, result) debug20 23, val, result result end -# reduce 471 omitted +# reduce 475 omitted -def _reduce_472(val, _values, result) +def _reduce_476(val, _values, result) result = self.literal_concat val[0], val[1] result end -def _reduce_473(val, _values, result) - result = val[1] +def _reduce_477(val, _values, result) + _, str, (_, func) = val + + str = dedent str if func =~ RubyLexer::STR_FUNC_ICNTNT + + result = str result end -def _reduce_474(val, _values, result) +def _reduce_478(val, _values, result) result = new_string val result end -def _reduce_475(val, _values, result) +def _reduce_479(val, _values, result) result = new_xstring val[1] + # TODO: dedent?!?! SERIOUSLY?!? result end -def _reduce_476(val, _values, result) +def _reduce_480(val, _values, result) result = new_regexp val result end -def _reduce_477(val, _values, result) - result = s(:array) +def _reduce_481(val, _values, result) + result = s(:array).line lexer.lineno result end -def _reduce_478(val, _values, result) +def _reduce_482(val, _values, result) result = val[1] result end -def _reduce_479(val, _values, result) +def _reduce_483(val, _values, result) result = new_word_list result end -def _reduce_480(val, _values, result) +def _reduce_484(val, _values, result) result = val[0].dup << new_word_list_entry(val) result end -# reduce 481 omitted +# reduce 485 omitted -def _reduce_482(val, _values, result) +def _reduce_486(val, _values, result) result = self.literal_concat val[0], val[1] result end -def _reduce_483(val, _values, result) - result = s(:array) +def _reduce_487(val, _values, result) + result = s(:array).line lexer.lineno result end -def _reduce_484(val, _values, result) - result = val[1] +def _reduce_488(val, _values, result) + result = lexer.lineno + result +end + +def _reduce_489(val, _values, result) + _, line, list, _, = val + list.line = line + result = list result end -def _reduce_485(val, _values, result) - result = new_symbol_list +def _reduce_490(val, _values, result) + result = new_symbol_list.line lexer.lineno result end -def _reduce_486(val, _values, result) - result = val[0].dup << new_symbol_list_entry(val) +def _reduce_491(val, _values, result) + list, * = val + result = list.dup << new_symbol_list_entry(val) result end -def _reduce_487(val, _values, result) - result = s(:array) +def _reduce_492(val, _values, result) + result = s(:array).line lexer.lineno result end -def _reduce_488(val, _values, result) +def _reduce_493(val, _values, result) result = val[1] result end -def _reduce_489(val, _values, result) - result = s(:array) +def _reduce_494(val, _values, result) + result = s(:array).line lexer.lineno # FIX result end -def _reduce_490(val, _values, result) +def _reduce_495(val, _values, result) result = val[1] result end -def _reduce_491(val, _values, result) +def _reduce_496(val, _values, result) result = new_qword_list result end -def _reduce_492(val, _values, result) +def _reduce_497(val, _values, result) result = val[0].dup << new_qword_list_entry(val) result end -def _reduce_493(val, _values, result) +def _reduce_498(val, _values, result) result = new_qsym_list result end -def _reduce_494(val, _values, result) +def _reduce_499(val, _values, result) result = val[0].dup << new_qsym_list_entry(val) result end -def _reduce_495(val, _values, result) - result = s(:str, "") +def _reduce_500(val, _values, result) + result = s(:str, "").line lexer.lineno result end -def _reduce_496(val, _values, result) - result = literal_concat(val[0], val[1]) +def _reduce_501(val, _values, result) + v1, v2 = val + result = literal_concat v1, v2 result end -def _reduce_497(val, _values, result) +def _reduce_502(val, _values, result) result = nil result end -def _reduce_498(val, _values, result) - result = literal_concat(val[0], val[1]) +def _reduce_503(val, _values, result) + v1, v2 = val + result = literal_concat v1, v2 result end -def _reduce_499(val, _values, result) +def _reduce_504(val, _values, result) result = nil result end -def _reduce_500(val, _values, result) - result = literal_concat(val[0], val[1]) +def _reduce_505(val, _values, result) + v1, v2 = val + result = literal_concat v1, v2 result end -def _reduce_501(val, _values, result) +def _reduce_506(val, _values, result) result = new_string val result end -def _reduce_502(val, _values, result) +def _reduce_507(val, _values, result) result = lexer.lex_strterm lexer.lex_strterm = nil lexer.lex_state = EXPR_BEG result end -def _reduce_503(val, _values, result) - lexer.lex_strterm = val[1] - result = s(:evstr, val[2]) +def _reduce_508(val, _values, result) + _, strterm, str = val + lexer.lex_strterm = strterm + result = s(:evstr, str).line str.line result end -def _reduce_504(val, _values, result) +def _reduce_509(val, _values, result) result = [lexer.lex_strterm, lexer.brace_nest, lexer.string_nest, # TODO: remove lexer.cond.store, lexer.cmdarg.store, lexer.lex_state, + lexer.lineno, ] lexer.lex_strterm = nil lexer.brace_nest = 0 lexer.string_nest = 0 @@ -6226,14 +6396,14 @@ lexer.lex_state = EXPR_BEG result end -def _reduce_505(val, _values, result) +def _reduce_510(val, _values, result) _, memo, stmt, _ = val - lex_strterm, brace_nest, string_nest, oldcond, oldcmdarg, oldlex_state = memo + lex_strterm, brace_nest, string_nest, oldcond, oldcmdarg, oldlex_state, line = memo lexer.lex_strterm = lex_strterm lexer.brace_nest = brace_nest lexer.string_nest = string_nest @@ -6246,666 +6416,667 @@ when Sexp then case stmt.sexp_type when :str, :dstr, :evstr then result = stmt else - result = s(:evstr, stmt) + result = s(:evstr, stmt).line line end when nil then - result = s(:evstr) + result = s(:evstr).line line else debug20 25 raise "unknown string body: #{stmt.inspect}" end result end -def _reduce_506(val, _values, result) - result = s(:gvar, val[0].to_sym) +def _reduce_511(val, _values, result) + result = s(:gvar, val[0].to_sym).line lexer.lineno result end -def _reduce_507(val, _values, result) - result = s(:ivar, val[0].to_sym) +def _reduce_512(val, _values, result) + result = s(:ivar, val[0].to_sym).line lexer.lineno result end -def _reduce_508(val, _values, result) - result = s(:cvar, val[0].to_sym) +def _reduce_513(val, _values, result) + result = s(:cvar, val[0].to_sym).line lexer.lineno result end -# reduce 509 omitted +# reduce 514 omitted -def _reduce_510(val, _values, result) +def _reduce_515(val, _values, result) lexer.lex_state = EXPR_END result = val[1].to_sym result end -def _reduce_511(val, _values, result) +def _reduce_516(val, _values, result) result = val[0].to_sym result end -# reduce 512 omitted +# reduce 517 omitted -# reduce 513 omitted +# reduce 518 omitted -# reduce 514 omitted +# reduce 519 omitted -# reduce 515 omitted +# reduce 520 omitted -def _reduce_516(val, _values, result) +def _reduce_521(val, _values, result) + _, result, _ = val + lexer.lex_state = EXPR_END - result = val[1] - result ||= s(:str, "") + result ||= s(:str, "").line lexer.lineno case result.sexp_type when :dstr then result.sexp_type = :dsym when :str then - result = s(:lit, result.last.to_sym) + result = s(:lit, result.last.to_sym).line result.line when :evstr then - result = s(:dsym, "", result) + result = s(:dsym, "", result).line result.line else debug20 26, val, result end result end -# reduce 517 omitted +# reduce 522 omitted -def _reduce_518(val, _values, result) +def _reduce_523(val, _values, result) result = -val[1] # TODO: pt_testcase result end -# reduce 519 omitted +# reduce 524 omitted -# reduce 520 omitted +# reduce 525 omitted -# reduce 521 omitted +# reduce 526 omitted -# reduce 522 omitted +# reduce 527 omitted -# reduce 523 omitted +# reduce 528 omitted -# reduce 524 omitted +# reduce 529 omitted -# reduce 525 omitted +# reduce 530 omitted -# reduce 526 omitted +# reduce 531 omitted -# reduce 527 omitted +# reduce 532 omitted -def _reduce_528(val, _values, result) - result = s(:nil) +def _reduce_533(val, _values, result) + result = s(:nil).line lexer.lineno result end -def _reduce_529(val, _values, result) - result = s(:self) +def _reduce_534(val, _values, result) + result = s(:self).line lexer.lineno result end -def _reduce_530(val, _values, result) - result = s(:true) +def _reduce_535(val, _values, result) + result = s(:true).line lexer.lineno result end -def _reduce_531(val, _values, result) - result = s(:false) +def _reduce_536(val, _values, result) + result = s(:false).line lexer.lineno result end -def _reduce_532(val, _values, result) - result = s(:str, self.file) +def _reduce_537(val, _values, result) + result = s(:str, self.file).line lexer.lineno result end -def _reduce_533(val, _values, result) - result = s(:lit, lexer.lineno) +def _reduce_538(val, _values, result) + result = s(:lit, lexer.lineno).line lexer.lineno result end -def _reduce_534(val, _values, result) +def _reduce_539(val, _values, result) + l = lexer.lineno result = if defined? Encoding then - s(:colon2, s(:const, :Encoding), :UTF_8) + s(:colon2, s(:const, :Encoding).line(l), :UTF_8).line l else - s(:str, "Unsupported!") + s(:str, "Unsupported!").line l end result end -def _reduce_535(val, _values, result) +def _reduce_540(val, _values, result) var = val[0] result = Sexp === var ? var : self.gettable(var) result end -def _reduce_536(val, _values, result) +def _reduce_541(val, _values, result) var = val[0] result = Sexp === var ? var : self.gettable(var) result end -def _reduce_537(val, _values, result) +def _reduce_542(val, _values, result) result = self.assignable val[0] result end -def _reduce_538(val, _values, result) +def _reduce_543(val, _values, result) result = self.assignable val[0] debug20 29, val, result result end -def _reduce_539(val, _values, result) - result = s(:nth_ref, val[0]) +def _reduce_544(val, _values, result) + result = s(:nth_ref, val[0]).line lexer.lineno result end -def _reduce_540(val, _values, result) - result = s(:back_ref, val[0]) +def _reduce_545(val, _values, result) + result = s(:back_ref, val[0]).line lexer.lineno result end -def _reduce_541(val, _values, result) +def _reduce_546(val, _values, result) lexer.lex_state = EXPR_BEG lexer.command_start = true result end -def _reduce_542(val, _values, result) +def _reduce_547(val, _values, result) result = val[2] result end -def _reduce_543(val, _values, result) +def _reduce_548(val, _values, result) result = nil result end -def _reduce_544(val, _values, result) +def _reduce_549(val, _values, result) result = val[1] self.lexer.lex_state = EXPR_BEG self.lexer.command_start = true result end -def _reduce_545(val, _values, result) +def _reduce_550(val, _values, result) result = self.in_kwarg self.in_kwarg = true self.lexer.lex_state |= EXPR_LABEL result end -def _reduce_546(val, _values, result) +def _reduce_551(val, _values, result) kwarg, args, _ = val self.in_kwarg = kwarg result = args lexer.lex_state = EXPR_BEG lexer.command_start = true result end -def _reduce_547(val, _values, result) +def _reduce_552(val, _values, result) result = args val result end -def _reduce_548(val, _values, result) +def _reduce_553(val, _values, result) result = args val result end -def _reduce_549(val, _values, result) +def _reduce_554(val, _values, result) result = args val result end -# reduce 550 omitted +# reduce 555 omitted -def _reduce_551(val, _values, result) +def _reduce_556(val, _values, result) result = val[1] result end -def _reduce_552(val, _values, result) +def _reduce_557(val, _values, result) result = nil result end -def _reduce_553(val, _values, result) +def _reduce_558(val, _values, result) result = args val result end -def _reduce_554(val, _values, result) +def _reduce_559(val, _values, result) result = args val result end -def _reduce_555(val, _values, result) +def _reduce_560(val, _values, result) result = args val result end -def _reduce_556(val, _values, result) +def _reduce_561(val, _values, result) result = args val result end -def _reduce_557(val, _values, result) +def _reduce_562(val, _values, result) result = args val result end -def _reduce_558(val, _values, result) +def _reduce_563(val, _values, result) result = args val result end -def _reduce_559(val, _values, result) +def _reduce_564(val, _values, result) result = args val result end -def _reduce_560(val, _values, result) +def _reduce_565(val, _values, result) result = args val result end -def _reduce_561(val, _values, result) +def _reduce_566(val, _values, result) result = args val result end -def _reduce_562(val, _values, result) +def _reduce_567(val, _values, result) result = args val result end -def _reduce_563(val, _values, result) +def _reduce_568(val, _values, result) result = args val result end -def _reduce_564(val, _values, result) +def _reduce_569(val, _values, result) result = args val result end -def _reduce_565(val, _values, result) +def _reduce_570(val, _values, result) result = args val result end -def _reduce_566(val, _values, result) +def _reduce_571(val, _values, result) result = args val result end -def _reduce_567(val, _values, result) +def _reduce_572(val, _values, result) result = args val result end -def _reduce_568(val, _values, result) +def _reduce_573(val, _values, result) yyerror "formal argument cannot be a constant" result end -def _reduce_569(val, _values, result) +def _reduce_574(val, _values, result) yyerror "formal argument cannot be an instance variable" result end -def _reduce_570(val, _values, result) +def _reduce_575(val, _values, result) yyerror "formal argument cannot be a global variable" result end -def _reduce_571(val, _values, result) +def _reduce_576(val, _values, result) yyerror "formal argument cannot be a class variable" result end -# reduce 572 omitted +# reduce 577 omitted -def _reduce_573(val, _values, result) +def _reduce_578(val, _values, result) identifier = val[0].to_sym self.env[identifier] = :lvar result = identifier result end -# reduce 574 omitted +# reduce 579 omitted -# reduce 575 omitted +# reduce 580 omitted -def _reduce_576(val, _values, result) +def _reduce_581(val, _values, result) result = val[1] result end -def _reduce_577(val, _values, result) - case val[0] +def _reduce_582(val, _values, result) + arg, = val + + case arg when Symbol then - result = s(:args) - result << val[0] + result = s(:args, arg).line lexer.lineno when Sexp then - result = val[0] + result = arg else debug20 32 raise "Unknown f_arg type: #{val.inspect}" end result end -def _reduce_578(val, _values, result) +def _reduce_583(val, _values, result) list, _, item = val if list.sexp_type == :args then result = list else - result = s(:args, list) + result = s(:args, list).line list.line end result << item result end -# reduce 579 omitted +# reduce 584 omitted -def _reduce_580(val, _values, result) - # TODO: call_args - label, _ = val[0] # TODO: fix lineno? +def _reduce_585(val, _values, result) + # TODO: new_kw_arg + (label, line), arg = val + identifier = label.to_sym self.env[identifier] = :lvar - result = s(:array, s(:kwarg, identifier, val[1])) + kwarg = s(:kwarg, identifier, arg).line line + result = s(:array, kwarg).line line result end -def _reduce_581(val, _values, result) - label, _ = val[0] # TODO: fix lineno? - identifier = label.to_sym - self.env[identifier] = :lvar +def _reduce_586(val, _values, result) + (label, line), = val - result = s(:array, s(:kwarg, identifier)) + id = label.to_sym + self.env[id] = :lvar + + result = s(:array, s(:kwarg, id).line(line)).line line result end -def _reduce_582(val, _values, result) - # TODO: call_args - label, _ = val[0] # TODO: fix lineno? - identifier = label.to_sym - self.env[identifier] = :lvar +def _reduce_587(val, _values, result) + # TODO: new_kw_arg + (label, line), expr = val + id = label.to_sym + self.env[id] = :lvar - result = s(:array, s(:kwarg, identifier, val[1])) + result = s(:array, s(:kwarg, id, expr).line(line)).line line result end -def _reduce_583(val, _values, result) - label, _ = val[0] # TODO: fix lineno? - identifier = label.to_sym - self.env[identifier] = :lvar +def _reduce_588(val, _values, result) + # TODO: new_kw_arg + (label, line), = val + id = label.to_sym + self.env[id] = :lvar - result = s(:array, s(:kwarg, identifier)) + result = s(:array, s(:kwarg, id).line(line)).line line result end -# reduce 584 omitted +# reduce 589 omitted -def _reduce_585(val, _values, result) +def _reduce_590(val, _values, result) list, _, item = val result = list << item.last result end -# reduce 586 omitted +# reduce 591 omitted -def _reduce_587(val, _values, result) +def _reduce_592(val, _values, result) result = args val result end -# reduce 588 omitted +# reduce 593 omitted -# reduce 589 omitted +# reduce 594 omitted -def _reduce_590(val, _values, result) +def _reduce_595(val, _values, result) name = val[1].to_sym self.assignable name result = :"**#{name}" result end -def _reduce_591(val, _values, result) +def _reduce_596(val, _values, result) result = :"**" result end -def _reduce_592(val, _values, result) +def _reduce_597(val, _values, result) result = self.assignable val[0], val[2] # TODO: detect duplicate names result end -def _reduce_593(val, _values, result) +def _reduce_598(val, _values, result) result = self.assignable val[0], val[2] result end -def _reduce_594(val, _values, result) - result = s(:block, val[0]) +def _reduce_599(val, _values, result) + optblk, = val + result = s(:block, optblk).line optblk.line result end -def _reduce_595(val, _values, result) - result = val[0] - result << val[2] +def _reduce_600(val, _values, result) + optarg, _, optblk = val + result = optarg + result << optblk result end -def _reduce_596(val, _values, result) - result = s(:block, val[0]) +def _reduce_601(val, _values, result) + opt, = val + result = s(:block, opt).line opt.line result end -def _reduce_597(val, _values, result) +def _reduce_602(val, _values, result) result = self.block_append val[0], val[2] result end -# reduce 598 omitted +# reduce 603 omitted -# reduce 599 omitted +# reduce 604 omitted -def _reduce_600(val, _values, result) +def _reduce_605(val, _values, result) # TODO: differs from parse.y - needs tests name = val[1].to_sym self.assignable name result = :"*#{name}" result end -def _reduce_601(val, _values, result) +def _reduce_606(val, _values, result) name = :"*" self.env[name] = :lvar result = name result end -# reduce 602 omitted +# reduce 607 omitted -# reduce 603 omitted +# reduce 608 omitted -def _reduce_604(val, _values, result) +def _reduce_609(val, _values, result) identifier = val[1].to_sym self.env[identifier] = :lvar result = "&#{identifier}".to_sym result end -def _reduce_605(val, _values, result) +def _reduce_610(val, _values, result) result = val[1] result end -def _reduce_606(val, _values, result) +def _reduce_611(val, _values, result) result = nil result end -# reduce 607 omitted +# reduce 612 omitted -def _reduce_608(val, _values, result) +def _reduce_613(val, _values, result) lexer.lex_state = EXPR_BEG result end -def _reduce_609(val, _values, result) +def _reduce_614(val, _values, result) result = val[2] yyerror "Can't define single method for literals." if result.sexp_type == :lit result end -def _reduce_610(val, _values, result) - result = s(:array) +def _reduce_615(val, _values, result) + result = s(:array).line lexer.lineno result end -def _reduce_611(val, _values, result) - result = val[0] - - result -end +# reduce 616 omitted -# reduce 612 omitted +# reduce 617 omitted -def _reduce_613(val, _values, result) +def _reduce_618(val, _values, result) list = val[0].dup more = val[2].sexp_body list.push(*more) unless more.empty? result = list result.sexp_type = :hash result end -def _reduce_614(val, _values, result) - result = s(:array, val[0], val[2]) +def _reduce_619(val, _values, result) + v1, _, v2 = val + result = s(:array, v1, v2).line v1.line result end -def _reduce_615(val, _values, result) - (label, _), arg = val - result = s(:array, s(:lit, label.to_sym), arg) +def _reduce_620(val, _values, result) + (label, line), arg = val + + lit = s(:lit, label.to_sym).line line + result = s(:array, lit, arg).line line result end -def _reduce_616(val, _values, result) +def _reduce_621(val, _values, result) _, sym, _, value = val sym.sexp_type = :dsym - result = s(:array, sym, value) + result = s(:array, sym, value).line sym.line result end -def _reduce_617(val, _values, result) - result = s(:array, s(:kwsplat, val[1])) +def _reduce_622(val, _values, result) + _, arg = val + line = arg.line + result = s(:array, s(:kwsplat, arg).line(line)).line line result end -# reduce 618 omitted - -# reduce 619 omitted - -# reduce 620 omitted - -# reduce 621 omitted - -# reduce 622 omitted - # reduce 623 omitted # reduce 624 omitted # reduce 625 omitted @@ -6940,24 +7111,34 @@ # reduce 640 omitted # reduce 641 omitted -def _reduce_642(val, _values, result) +# reduce 642 omitted + +# reduce 643 omitted + +# reduce 644 omitted + +# reduce 645 omitted + +# reduce 646 omitted + +def _reduce_647(val, _values, result) yyerrok result end -# reduce 643 omitted +# reduce 648 omitted -# reduce 644 omitted +# reduce 649 omitted -def _reduce_645(val, _values, result) +def _reduce_650(val, _values, result) yyerrok result end -def _reduce_646(val, _values, result) +def _reduce_651(val, _values, result) result = nil; result end def _reduce_none(val, _values, result)