# -*- encoding:utf-8; warn-indent:false; frozen_string_literal: true -*- # # DO NOT MODIFY!!!! # This file is automatically generated by Racc 1.4.15 # from Racc grammer file "". # require 'racc/parser.rb' require 'parser' require 'parser/ruby-next/parser_ext' module Parser class RubyNext < Parser::Base prepend Parser::NextExt def version 28 # the master Ruby version end def default_encoding Encoding::UTF_8 end ##### State transition tables begin ### clist = [ '-592,218,219,218,219,939,805,-592,-592,-592,1060,620,-592,-592,-592', '658,-592,868,868,1119,-606,230,218,219,-592,660,-592,-592,-592,-607', '299,787,1066,118,-707,299,-592,-592,620,-592,-592,-592,-592,-592,620', '620,620,-100,620,788,1065,231,-114,627,-115,633,131,299,226,634,-86', '810,231,-494,1113,292,-592,-592,-592,-592,-592,-592,-592,-592,-592,-592', '-592,-592,-592,-592,-114,657,-592,-592,-592,485,-592,-592,214,-115,-592', '659,1061,-592,-592,231,-592,231,-592,294,-592,1120,-592,-592,-122,-592', '-592,-592,-592,-592,122,-592,-595,-592,938,121,231,298,-121,-595,-595', '-595,298,227,-595,-595,-595,-592,-595,122,-592,-592,-592,-592,121,-592', '-595,-592,-595,-595,-595,215,-592,-592,298,-122,-592,299,-595,-595,-117', '-595,-595,-595,-595,-595,122,-119,-118,-116,868,121,122,122,122,949', '122,121,121,121,-114,121,-115,100,101,-114,-707,-115,-595,-595,-595', '-595,-595,-595,-595,-595,-595,-595,-595,-595,-595,-595,-707,228,-595', '-595,-595,-120,-595,-595,100,101,-595,231,216,-595,-595,645,-595,228', '-595,294,-595,217,-595,-595,231,-595,-595,-595,-595,-595,-122,-595,-315', '-595,557,-122,231,218,219,-315,-315,-315,298,-694,-121,-315,-315,-595', '-315,-121,-595,-595,-595,-595,633,-595,-315,-595,887,102,103,-122,-595', '-595,-113,122,-595,220,-315,-315,121,-315,-315,-315,-315,-315,-117,-122', '221,647,646,-117,-695,-119,-118,-116,102,103,-119,-118,-116,288,122', '-707,-121,-606,1127,121,-315,-315,-315,-315,-315,-315,-315,-315,-315', '-315,-315,-315,-315,-315,863,864,-315,-315,-315,609,684,-315,608,122', '-315,-120,645,-315,121,645,-120,231,-315,122,-315,645,-315,-315,121', '-315,-315,-315,-315,-315,-105,-315,-698,-315,679,218,219,86,633,-698', '-698,-698,887,-114,588,-698,-698,-315,-698,87,-315,-315,680,-111,591', '-315,-698,-698,349,88,-117,-119,-315,-315,350,-691,-120,964,-698,-698', '231,-698,-698,-698,-698,-698,647,646,643,647,646,643,645,362,645,647', '646,599,598,911,226,627,592,743,-117,834,1127,292,-698,-698,-698,-698', '-698,-698,-698,-698,-698,-698,-698,-698,-698,-698,-119,911,-698,-698', '-698,-592,685,-698,218,219,-698,810,-592,-698,645,-116,362,-691,-698', '122,-698,-592,-698,-698,121,-698,-698,-698,-698,-698,415,-698,-698,-698', '647,646,647,646,643,-592,-691,226,428,227,836,-351,-592,-698,224,226', '-698,-698,-351,-109,645,-698,482,222,645,122,-698,-351,-698,-698,121', '483,-118,-698,-698,-698,-592,-592,-698,-698,-698,-604,-698,484,647,646', '648,486,-604,-595,-698,-698,-698,-698,-698,850,-595,-604,609,-692,487', '611,-698,-698,230,-698,-698,-698,-698,-698,-592,516,227,225,874,-605', '-351,-351,645,870,227,225,-605,871,647,646,650,527,647,646,652,-605', '-698,-698,-698,-698,-698,-698,-698,-698,-698,-698,-698,-698,-698,-698', '-604,-604,-698,-698,-698,-595,865,-698,-595,-116,-698,529,-595,-698', '-698,645,-698,-692,-698,531,-698,-595,-698,-698,131,-698,-698,-698,-698', '-698,-85,-698,-698,-698,-605,-605,647,646,656,-602,-692,-601,226,881', '882,231,-602,-698,-601,549,-698,-698,-698,-698,-603,-698,542,-698,547', '425,-315,-603,-698,-698,427,426,-118,-315,-315,-315,-595,-595,-315,-315', '-315,-306,-315,543,252,647,646,661,-306,-600,-315,550,-315,-315,-315', '609,-600,-306,611,599,598,609,-315,-315,611,-315,-315,-315,-315,-315', '-602,-597,-601,227,225,226,249,-598,-597,-599,251,250,559,-607,-598', '-603,-599,231,944,911,1155,483,-315,-315,-315,-315,-315,-315,-315,-315', '-315,-315,-315,-315,-315,-315,-306,-306,-315,-315,-315,303,866,-315', '-600,231,-315,1111,1112,-315,-315,362,-315,557,-315,362,-315,294,-315', '-315,-106,-315,-315,-315,-315,-315,-597,-315,-315,-315,227,225,-598', '-115,-599,-315,-315,-315,269,270,554,-315,-315,-315,-315,560,-315,-315', '-315,-315,252,-315,-315,-315,944,911,252,564,-315,-315,-112,602,-120', '231,-315,-315,612,-315,-315,-315,-315,-315,679,-121,268,267,613,226', '531,627,417,631,249,632,630,640,251,250,662,247,248,665,666,628,-315', '-315,-315,-315,-315,-315,-315,-315,-315,-315,-315,-315,-315,-315,-288', '668,-315,-315,-315,680,684,-315,669,673,-315,-108,231,-315,-604,677', '678,850,-315,294,-315,-604,-315,-315,-117,-315,-315,-315,-315,-315,-604', '-315,-698,-315,227,225,689,252,252,-698,-698,-698,252,252,231,-698,-698', '-315,-698,231,-315,-315,-110,-315,252,-315,-698,-698,231,231,-100,746', '-315,-315,-107,-119,-120,231,-698,-698,-105,-698,-698,-698,-698,-698', '563,-116,757,-604,-604,226,763,764,231,231,249,767,636,770,251,250,252', '247,248,770,772,638,-698,-698,-698,-698,-698,-698,-698,-698,-698,-698', '-698,-698,-698,-698,774,981,-698,-698,-698,776,685,-698,-605,778,-698', '591,249,-698,226,-605,251,250,-698,789,-698,672,-698,-698,-605,-698', '-698,-698,-698,-698,670,-698,-698,-698,227,225,790,793,794,828,829,-316', '981,830,116,117,231,-698,-316,592,-698,-698,591,-698,796,-698,801,-316', '806,807,811,989,-698,-698,-106,833,-118,5,77,78,24,9,65,-605,-605,837', '71,72,838,227,225,75,-694,73,74,76,33,34,79,80,592,-289,851,516,516', '81,31,30,110,109,111,112,989,231,21,868,-316,-316,869,886,8,51,7,10', '114,113,115,104,64,106,105,107,889,108,116,117,891,100,101,47,48,46', '288,-695,-694,896,583,898,580,579,578,-694,581,900,529,531,-694,757', '231,294,-694,43,294,757,36,252,911,66,67,-316,931,68,932,38,231,231', '-316,50,583,-694,580,579,578,780,581,-316,22,911,946,947,231,98,86,89', '90,-695,91,93,92,94,231,957,-695,-290,87,97,231,-695,963,-694,-694,-695', '70,719,88,102,103,990,898,996,44,45,321,77,78,24,9,65,757,1014,-695', '71,72,-288,-316,-316,75,-698,73,74,76,33,34,79,80,1018,770,588,788,1021', '81,31,30,110,109,111,112,591,1023,21,-695,-695,1025,1027,1027,8,51,323', '10,114,113,115,104,64,106,105,107,231,108,116,117,1037,100,101,47,48', '46,1038,-698,-698,599,598,1039,1041,1049,592,-698,1050,1053,-291,231', '-694,231,1059,1062,-698,43,231,231,325,231,231,66,67,-315,1074,68,770', '38,770,1078,-315,50,1080,-698,1082,-695,1084,231,1086,-315,22,1101,1102', '1117,868,98,86,89,90,-698,91,93,92,94,1118,1121,-698,868,87,97,1137', '-694,1140,-698,-698,-698,70,1145,88,102,103,1146,1027,1027,44,45,5,77', '78,24,9,65,1027,1152,-698,71,72,1153,-315,-315,75,-694,73,74,76,33,34', '79,80,125,126,127,128,129,81,31,30,110,109,111,112,1161,1164,21,-698', '-698,770,1166,1168,8,51,7,10,114,113,115,104,64,106,105,107,1170,108', '116,117,1172,100,101,47,48,46,-315,-430,-694,1172,763,1102,1164,-315', '1164,-694,-695,-694,-695,231,-694,1027,-315,1164,-694,43,1198,1172,36', '1172,1172,66,67,226,1172,68,,38,,,1139,50,1107,-694,580,579,578,,581', '638,22,,,,,98,86,89,90,-430,91,93,92,94,-108,,-430,,87,97,,-315,-315', '-694,-694,-430,70,,88,102,103,,,,44,45,321,77,78,24,9,65,,,-430,71,72', ',227,225,75,-695,73,74,76,33,34,79,80,125,126,127,128,129,81,31,30,110', '109,111,112,,,21,-430,-430,,,,8,51,323,10,114,113,115,104,64,106,105', '107,,108,116,117,226,100,101,47,48,46,226,1144,-695,,,,,1139,,-695,1142', ',,,-695,,638,,-695,43,,,36,,,66,67,,,68,1107,38,580,579,578,50,581,-695', ',583,,580,579,578,22,581,,,,98,86,89,90,,91,93,92,94,-110,227,225,,87', '97,,227,225,-695,-695,,70,,88,102,103,,780,,44,45,321,77,78,24,9,65', ',,,71,72,,,,75,-698,73,74,76,33,34,79,80,125,126,127,128,129,81,31,30', '110,109,111,112,,583,21,580,579,578,,581,8,51,323,10,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,,583,-698,580,579,578', ',581,780,-698,,,,,-694,,,784,-698,43,,,36,,,66,67,,,68,,38,,,,50,,-698', '780,583,,580,579,578,22,581,,784,,98,86,89,90,,91,93,92,94,-109,,,,87', '97,,,,-698,-698,,70,,88,102,103,,780,,44,45,321,77,78,24,9,65,,,,71', '72,,,,75,-430,73,74,76,33,34,79,80,125,126,127,128,129,81,31,30,110', '109,111,112,,583,21,580,579,578,,581,8,51,323,10,114,113,115,104,64', '106,105,107,,108,116,117,,100,101,47,48,46,,,-430,,,,,,780,-430,,,,', ',,,784,-430,43,,,325,,,66,67,,,68,,38,,,,50,,-430,,,,,,,22,,,,,98,86', '89,90,,91,93,92,94,-107,,,,87,97,,,,-430,-430,,70,,88,102,103,,,,44', '45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,244,,,,,81', '31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,252,256,257,258,259,269,270,264,265', '260,261,-306,245,246,,,262,263,-306,43,,-262,325,,,66,67,-306,,68,,38', '249,,255,50,251,250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93', '92,94,,,,,87,97,,266,,-113,,,70,,88,102,103,,-306,-306,44,45,321,77', '78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,244,,,,,81,31,30,110', '109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,252,256,257,258,259,269,270,264,265,260,261', '-316,245,246,,,262,263,-316,43,,,36,,,66,67,-316,,68,,38,249,,255,50', '251,250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93,92,94,,,,', '87,97,,266,,-112,,,70,,88,102,103,,-316,-316,44,45,321,77,78,24,9,65', ',,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,', ',21,,,,,674,8,51,323,10,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,252,256,257,258,259,269,270,264,265,260,261,,245,246', ',,262,263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251,250,,247,248,268', '267,253,22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,266,,-262,,,70', ',88,102,103,,,,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34', '79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,674,8,51,323,10,114,113', '115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,252,256,257,258', '259,269,270,264,265,260,261,-315,245,246,,,262,263,-315,43,,,36,-695', ',66,67,-315,,68,,38,249,,255,50,251,250,,247,248,268,267,253,22,254', ',,,98,86,89,90,,91,93,92,94,,,,,87,97,,266,,-111,,,70,,88,102,103,,-315', '-315,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,', ',,,81,31,30,110,109,111,112,,,21,,,,,908,8,51,323,10,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,252,256,257,258,259,269', '270,264,265,260,261,,245,246,,,262,263,,43,,,36,,,66,67,,,68,,38,249', ',255,50,251,250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,266,,,,,70,,88,102,103,,,,44,45,321,77,78,24,9,65,,,,71', '72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,', ',,935,8,51,323,10,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,252,256,257,258,259,269,270,264,265,260,261,,245,246,,,262', '263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251,250,,247,248,268,267,253', '22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,266,,,,,70,,88,102,103', ',,,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,', ',81,31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106', '105,107,,108,116,117,,100,101,47,48,46,252,256,257,258,259,269,270,264', '265,260,261,,245,246,,,262,263,,43,,,36,,,66,67,,,68,,38,249,,255,50', '251,250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93,92,94,,,,', '87,97,,266,,,,,70,,88,102,103,,,,44,45,321,77,78,24,9,65,,,,71,72,,', ',75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8', '51,323,10,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,252,256,257,258,259,269,270,264,265,260,261,,245,246,,,262,263,,43', ',,36,,,66,67,,,68,,38,249,,255,50,251,250,,247,248,268,267,253,22,254', ',,,98,86,89,90,,91,93,92,94,,,,,87,97,231,266,,,,,70,,88,102,103,,,', '44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81', '31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,252,256,257,258,259,269,270,264,265', '260,261,,245,246,,,262,263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251', '250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97', ',266,,,,,70,,88,102,103,,,,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73', '74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,323,10', '114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,252,256', '257,258,259,269,270,264,265,260,261,,245,246,,,262,263,,43,,,36,,,66', '67,,,68,,38,249,,255,50,251,250,,247,248,268,267,253,22,254,,,,98,86', '89,90,,91,93,92,94,,,,,87,97,,266,,,,,70,,88,102,103,,,,44,45,321,77', '78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109', '111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,252,256,257,258,259,269,270,264,265,260,261,,245', '246,,,262,263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251,250,,247,248', '268,267,253,22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,266,,,,,70', ',88,102,103,,,,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34', '79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115', '104,64,106,105,107,,108,116,117,,100,101,47,48,46,252,256,257,258,259', '269,270,264,265,260,261,,245,246,,,262,263,,43,,,36,,,66,67,,,68,,38', '249,,255,50,251,250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93', '92,94,,,,,87,97,,266,,,,,70,,88,102,103,,,,44,45,321,77,78,24,9,65,', ',,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,', '21,,,,,,8,51,323,10,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,47,48,46,252,256,257,258,259,269,270,264,265,260,261,,245,246,,', '262,263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251,250,,247,248,268,267', '253,22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,266,,,,,70,,88,102', '103,,,,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80', ',,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,252,256,257,258,259,269', '270,264,265,260,261,,-720,-720,,,262,263,,43,,,36,,,66,67,,,68,,38,249', ',255,50,251,250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,,,,,,70,,88,102,103,,,,44,45,321,77,78,24,9,65,,,,71,72', ',,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,', '8,51,323,10,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47', '48,46,252,256,257,258,259,269,270,264,265,260,261,,-720,-720,,,262,263', ',43,,,36,,,66,67,,,68,,38,249,,255,50,251,250,,247,248,268,267,253,22', '254,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,,,,70,,88,102,103,,,,44', '45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31', '30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,252,256,257,258,259,269,270,264,265', '260,261,,-720,-720,,,262,263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251', '250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97', ',,,,,,70,,88,102,103,,,,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74', '76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114', '113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,252,256,257', '258,259,269,270,264,265,260,261,,-720,-720,,,262,263,,43,,,36,,,66,67', ',,68,,38,249,,255,50,251,250,,247,248,268,267,253,22,254,,,,98,86,89', '90,,91,93,92,94,,,,,87,97,,,,,,,70,,88,102,103,,,,44,45,321,77,78,24', '9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111', '112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,252,-720,-720,-720,-720,269,270,,,-720,-720,,,,,,262', '263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251,250,,247,248,268,267,253', '22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,,,,70,,88,102,103,,', ',44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81', '31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,252,-720,-720,-720,-720,269,270,', ',-720,-720,,,,,,262,263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251,250', ',247,248,268,267,253,22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,', ',,,,70,,88,102,103,,,,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74', '76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114', '113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,252,-720,-720', '-720,-720,269,270,,,-720,-720,,,,,,262,263,,43,,,36,,,66,67,,,68,,38', '249,,255,50,251,250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93', '92,94,,,,,87,97,,,,,,,70,,88,102,103,,,,44,45,321,77,78,24,9,65,,,,71', '72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,', ',,,8,51,323,10,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,252,-720,-720,-720,-720,269,270,,,-720,-720,,,,,,262,263,,43', ',,36,,,66,67,,,68,,38,249,,255,50,251,250,,247,248,268,267,253,22,254', ',,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,,,,70,,88,102,103,,,,44,45', '321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30', '110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105,107', ',108,116,117,,100,101,47,48,46,252,-720,-720,-720,-720,269,270,,,-720', '-720,,,,,,262,263,,43,,,36,,,66,67,,,68,,38,249,,255,50,251,250,,247', '248,268,267,253,22,254,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,,,,70', ',88,102,103,,,,44,45,321,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34', '79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115', '104,64,106,105,107,,108,116,117,,100,101,47,48,46,252,-720,-720,-720', '-720,269,270,,,-720,-720,,,,,,262,263,,43,,,36,,,66,67,,,68,,38,249', ',255,50,251,250,,247,248,268,267,253,22,254,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,,,,,,70,,88,102,103,,,,44,45,77,78,24,9,65,,,,71,72,,', ',75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8', '51,7,10,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46', '252,256,257,258,259,269,270,,,260,261,,,,,,262,263,,43,,,36,,,66,67', ',,68,,38,249,,255,50,251,250,,247,248,268,267,253,22,254,,,,98,86,89', '90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45', '75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,243,,,,,,,51', ',,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,252', '256,257,258,259,269,270,264,,260,261,,,,,,262,263,,236,,,242,,,66,67', ',,68,,,249,,255,50,251,250,,247,248,268,267,253,241,254,,,,98,86,89', '90,,91,93,92,94,,,,,87,97,,,,,-429,,70,,88,102,103,-429,-429,-429,44', '45,-429,-429,-429,252,-429,,,,,,,,-429,-429,-429,-429,,,,262,263,,,', '-429,-429,,-429,-429,-429,-429,-429,,,,249,,255,,251,250,,247,248,,', '253,,254,,,,,,-429,-429,-429,-429,-429,-429,-429,-429,-429,-429,-429', '-429,-429,-429,,,-429,-429,-429,,,-429,,294,-429,,,-429,-429,,-429,', '-429,,-429,,-429,-429,,-429,-429,-429,-429,-429,-322,-429,-429,-429', ',,,-322,-322,-322,,,-322,-322,-322,,-322,-429,252,,-429,-429,,-429,-322', '-429,-322,-322,,,,,-429,-429,262,263,-322,-322,,-322,-322,-322,-322', '-322,,,,,,,249,,255,,251,250,,247,248,,,253,,254,,,-322,-322,-322,-322', '-322,-322,-322,-322,-322,-322,-322,-322,-322,-322,,,-322,-322,-322,', ',-322,,303,-322,,,-322,-322,,-322,,-322,,-322,,-322,-322,,-322,-322', '-322,-322,-322,,-322,,-322,,,,,,,,,,,,,,-322,,,-322,-322,,-322,,-322', '77,78,24,,65,,-322,-322,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31', '30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,315', '108,116,117,,100,101,47,48,46,252,,,,,,,,,,,,,,,,262,263,,236,,,242', ',,66,67,,,68,,312,249,310,255,50,251,250,316,247,248,,,,241,,,,,98,313', '89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44', '45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,243,,,,', ',,51,,,114,113,115,104,64,106,105,107,315,108,116,117,,100,101,47,48', '46,252,,,,,,,,,,,,,,,,262,263,,236,,,242,,,66,67,,,68,,312,249,310,255', '50,251,250,316,247,248,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87,97', ',,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,', ',,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106', '105,107,315,108,116,117,,100,101,47,48,46,252,,,,,,,,,,,,,,,,262,263', ',236,,,242,,,66,67,,,68,,312,249,310,,50,251,250,316,247,248,,,,241', ',,,,98,313,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,', ',,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102', '103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109', '111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50', ',,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65', '88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,', ',50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78', '24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81', '337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66', '67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,', ',,,-307,,70,,88,102,103,-307,-307,-307,44,45,-307,-307,-307,,-307,,', ',,,,,-307,,-307,-307,-307,,,,110,109,111,112,-307,-307,,-307,-307,-307', '-307,-307,,,,,114,113,115,,,,,,,,,,,100,101,,,346,-307,-307,-307,-307', '-307,-307,-307,-307,-307,-307,-307,-307,-307,-307,,,-307,-307,-307,', ',-307,,,-307,,,-307,-307,,-307,,-307,,-307,,-307,-307,,-307,-307,-307', '-307,-307,,-307,,-307,,98,86,89,90,,91,93,92,94,,,,-307,87,97,-307,-307', '-307,-307,,-307,718,-307,88,102,103,,-307,-307,77,78,24,9,65,,,,71,72', ',,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,', '8,51,,10,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,43,,,36,,,66,67,,,68,,38,,,,50,,,,,,,,,22,,,,', '98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72', ',44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,', '243,,,,,,,51,,,114,113,115,104,64,106,105,107,315,108,116,117,,100,101', '47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,312,,,,50,,,316', ',,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88', '102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,315,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87,97,,,,77', '78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81', '31,30,110,109,111,112,,,21,,,,,,,51,,,114,113,115,104,64,106,105,107', ',108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67', ',,68,,,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77', '78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81', '31,30,110,109,111,112,,,21,,,,,,,51,,,114,113,115,104,64,106,105,107', ',108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67', ',,68,,,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77', '78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81', '31,30,110,109,111,112,,,21,,,,,,,51,,,114,113,115,104,64,106,105,107', ',108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67', ',,68,,,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,122,', ',,,121,70,,88,102,103,,,,44,45,77,78,24,9,65,,,,71,72,,,,75,,73,74,76', '33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,7,10,114,113', '115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,', ',,,,,43,,,36,,,66,67,,,68,,38,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93', '92,94,,,,,87,97,,,,,,417,70,,88,102,103,,,,44,45,77,78,24,,65,,,,71', '72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,', ',,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,', '98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72', ',44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,', ',,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,', '98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72', ',44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,', ',,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,', '98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72', ',44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,', ',,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,', '98,86,89,90,,91,93,92,94,,,,,87,97,,,,,,,70,,88,102,103,,,,44,45,77', '78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109', '111,112,,,21,,,,,,8,51,,10,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,,,,,,,,,,,,,,,,,,,,43,,,36,,,66,67,,,68,,38,,,,50', ',,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65', '88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109', '111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,433,,,', '50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,433', ',,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24', '70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30', '110,109,111,112,,,21,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24', '70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30', '110,109,111,112,,,21,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24', '70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78', '24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31', '30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,315', '108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,', ',68,,312,,310,,50,,,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87', '97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80', ',,,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106', '105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242', ',,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87', '97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80', ',,,,,81,31,30,110,109,111,112,,,21,,,,,,,51,,,114,113,115,104,64,106', '105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242', ',,66,67,,,68,,,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87', '97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80', ',,,,,81,31,30,110,109,111,112,,,21,,,,,,,51,,,114,113,115,104,64,106', '105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242', ',,66,67,,,68,,,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87', '97,231,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343', '79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236', ',,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94', ',,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342', '343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115', '104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,', ',236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76', '342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113', '115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,', ',,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91', '93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73', '74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,', ',114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,', ',,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89', '90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45', '75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,', ',,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46', ',,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98', '86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,', '44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243', ',,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,', ',98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71', '72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112', ',,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241', ',,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,', ',,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102', '103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109', '111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50', ',,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65', '88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,', ',50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78', '24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81', '337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66', '67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,', ',,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80', ',,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64', '106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,', '242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,', ',,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343', '79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236', ',,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94', ',,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342', '343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115', '104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,', ',236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76', '342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113', '115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,', ',,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91', '93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73', '74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,', ',114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,', ',,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89', '90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45', '75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,', ',,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46', ',,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98', '86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,', '44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243', ',,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,', ',98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71', '72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112', ',,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241', ',,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,', ',,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102', '103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109', '111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50', ',,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65', '88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,', ',50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78', '24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31', '30,110,109,111,112,,,21,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24', '70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,315', '108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,', ',68,,312,,310,,50,,,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87', '97,,,,77,78,24,70,65,88,102,103,71,72,,44,518,75,,73,74,76,33,34,79', '80,,,,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64', '106,105,107,315,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236', ',,242,,,66,67,,,68,,312,,310,,50,,,316,,,,,,241,,,,,98,313,89,90,,91', '93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73', '74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114', '113,115,104,64,106,105,107,315,108,116,117,,100,101,47,48,46,,,,,,,', ',,,,,,,,,,,,236,,,242,,,66,67,,,68,,312,,310,,50,,,316,,,,,,241,,,,', '98,313,89,90,,91,93,92,94,,,,,87,97,231,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,', ',,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102', '103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109', '111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50', ',,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65', '88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,', ',50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,,,,70', ',88,102,103,,,,44,45,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79', '80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,,10,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,43', ',,36,,,66,67,,,68,,38,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94', ',,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342', '343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115', '104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,', ',236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76', '342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113', '115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,', ',,,,,236,,,242,563,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,', '91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,', '73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,,51,,,114', '113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,', ',,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,,98,86,89,90,', '91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,', '73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,,51,,,114', '113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,', ',,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,,98,86,89,90,', '91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,', '73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51', ',,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,', ',,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86', '89,90,,91,93,92,94,,,,,87,97,,,,,-271,,70,,88,102,103,-271,-271,-271', '44,45,-271,-271,-271,,-271,,,,,,,,-271,-271,-271,-271,,,,,,,,,-271,-271', ',-271,-271,-271,-271,-271,,,,,,,,,,,,,,,,,,,,,,,-271,-271,-271,-271', '-271,-271,-271,-271,-271,-271,-271,-271,-271,-271,,,-271,-271,-271,', ',-271,,294,-271,,,-271,-271,,-271,,-271,,-271,,-271,-271,,-271,-271', '-271,-271,-271,,-271,-271,-271,583,,580,579,578,588,581,,,,,,,-271,', '591,-271,-271,-699,-271,,-271,,,,-699,-699,-699,-271,-271,-699,-699', '-699,,-699,,,586,,,,,-699,-699,-699,-699,-699,,599,598,,,,592,-699,-699', ',-699,-699,-699,-699,-699,,,,,,,,,,,,,,,,,,,,,,,-699,-699,-699,-699', '-699,-699,-699,-699,-699,-699,-699,-699,-699,-699,,,-699,-699,-699,', ',-699,,,-699,,,-699,-699,,-699,,-699,,-699,,-699,-699,,-699,-699,-699', '-699,-699,,-699,-699,-699,,,,,,,,,,,,,,-699,,,-699,-699,-699,-699,,-699', ',-699,-700,,,,-699,-699,,-700,-700,-700,,,-700,-700,-700,,-700,,,,,', ',,-700,-700,-700,-700,-700,,,,110,109,111,112,-700,-700,,-700,-700,-700', '-700,-700,,,,,114,113,115,,,,,,,,,,,100,101,,,346,-700,-700,-700,-700', '-700,-700,-700,-700,-700,-700,-700,-700,-700,-700,,,-700,-700,-700,', ',-700,,,-700,,,-700,-700,,-700,,-700,,-700,,-700,-700,,-700,-700,-700', '-700,-700,,-700,-700,-700,,98,86,89,90,,91,93,92,94,,,,-700,87,97,-700', '-700,-700,-700,,-700,718,-700,88,102,103,,-700,-700,77,78,24,,65,,,', '71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,243', ',,,,,,51,,,114,113,115,104,64,106,105,107,315,108,116,117,,100,101,47', '48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,312,,310,,50,,,316', ',,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88', '102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,', ',50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78', '24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81', '337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66', '67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,', ',,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80', ',,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64', '106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,', '242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,', ',,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343', '79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104', '64,106,105,107,315,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,', '236,,,242,,,66,67,,,68,,740,,310,,50,,,316,,,,,,241,,,,,98,313,89,90', ',91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75', ',73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,', '51,,,114,113,115,104,64,106,105,107,315,108,116,117,,100,101,47,48,46', ',,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,310,,50,,,316,,,,,,241', ',,,,98,313,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,', ',,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,,,,70,,88,102,103,', ',,44,45,77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31', '30,110,109,111,112,,,21,,,,,,8,51,323,10,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,43,,,36,,,66,67', ',,68,,38,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,', ',,417,70,,88,102,103,,,,44,45,77,78,24,,65,,,,71,72,,,,75,,73,74,76', '33,34,79,80,,,,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115', '104,64,106,105,107,315,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,', ',,,,236,,,242,,,66,67,,,68,,312,,310,,50,,,316,,,,,,241,,,,,98,313,89', '90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45', '75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,', ',,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46', ',,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98', '86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,', '44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243', ',,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,', ',98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71', '72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21', ',,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,', '98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72', ',44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,', '243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241', ',,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,', ',,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102', '103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109', '111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50', ',,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65', '88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,315,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',740,,,,50,,,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87,97,,', ',77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,', ',,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106', '105,107,315,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242', ',,66,67,,,68,,,,,,50,,,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,,', ',,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343', '79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236', ',,242,,,66,67,,,68,,312,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76', '33,34,79,80,,,,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115', '104,64,106,105,107,315,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,', ',,,,236,,,242,,,66,67,,,68,,312,,310,,50,,,316,,,,,,241,,,,,98,313,89', '90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45', '75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,243,,,,,,,51', ',,114,113,115,104,64,106,105,107,315,108,116,117,,100,101,47,48,46,', ',,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,312,,310,,50,,,316,,,,,,241', ',,,,98,313,89,90,,91,93,92,94,,,,,87,97,,,,,,,70,,88,102,103,,,,44,45', '77,78,24,9,65,,,,71,72,,,,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110', '109,111,112,,,21,,,,,,8,51,,10,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,43,,,36,,,66,67,,,68,,38,,', ',50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',842,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77', '78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81', '31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107', ',108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67', ',,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77', '78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81', '31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107', '315,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66', '67,,,68,,312,,310,,50,,,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,', ',,,87,97,,,,,,,70,,88,102,103,,,,44,45,77,78,24,9,65,,,,71,72,,,,75', ',73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,8,51,', '10,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,', ',,,,,,,,,,,,,,,,43,,,36,,,66,67,,,68,,38,,,,50,,,,,,,,,22,,,,,98,86', '89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44', '45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243', ',,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,', ',98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71', '72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112', ',,243,,,,,,,51,,,114,113,115,104,64,106,105,107,315,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,740,,310,,50', ',,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,315', '108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,', ',68,,,,310,,50,,,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87,97', ',,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80,', ',,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106', '105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242', ',,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87', '97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80', ',,,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106', '105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242', ',,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87', '97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80', ',,,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106', '105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242', ',,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87', '97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34,79,80', ',,,,,81,31,30,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106', '105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242', ',,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87', '97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79', '80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236', ',,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94', ',,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342', '343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115', '104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,', ',236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76', '342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113', '115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,', ',,,,,236,,,242,,,66,67,,,68,,433,,,,50,,,,,,,,,241,,,,,98,86,89,90,', '91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,', '73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51', ',,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,', ',,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86', '89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44', '45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,', ',51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48,46', ',,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,,98', '86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,', '44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243', ',,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,', ',98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71', '72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112,,,243', ',,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,47,48', '46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,', ',98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71', '72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112', ',,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241', ',,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,', ',,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102', '103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109', '111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50', ',,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65', '88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,', ',50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68', ',,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78', '24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80,,,,,,81', '337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66', '67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,', ',,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342,343,79,80', ',,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115,104,64', '106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,', '242,,,66,67,,,68,,,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93,92,94,,', ',,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,33,34', '79,80,,,,,,81,31,30,110,109,111,112,,,21,,,,,,,51,,,114,113,115,104', '64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,,,236', ',,242,,,66,67,,,68,,,,,,50,,,,,,,,,22,,,,,98,86,89,90,,91,93,92,94,', ',,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74,76,342', '343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114,113,115', '104,64,106,105,107,,108,116,117,,100,101,47,48,46,,,,,,,,,,,,,,,,,,', ',236,,,242,,,66,67,,,68,,740,,,,50,,,,,,,,,241,,,,,98,86,89,90,,91,93', '92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,44,45,75,,73,74', '76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,51,,,114', '113,115,104,64,106,105,107,315,108,116,117,,100,101,47,48,46,,,,,,,', ',,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,310,,50,,,316,,,,,,241,,,,,98', '313,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72', ',44,45,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,', '243,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,241', ',,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112', ',,21,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22', ',,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112', ',,21,,,,,,,51,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101', '47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,,,,,50,,,,,,,,,22', ',,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103', '71,72,,44,45,75,,73,74,76,33,34,79,80,,,,,,81,31,30,110,109,111,112', ',,243,,,,,,,51,,,114,113,115,104,64,106,105,107,315,108,116,117,,100', '101,47,48,46,,,,,,,,,,,,,,,,,,,,236,,,242,,,66,67,,,68,,312,,310,,50', ',,316,,,,,,241,,,,,98,313,89,90,,91,93,92,94,,,,,87,97,,,,,-271,,70', ',88,102,103,-271,-271,-271,44,45,-271,-271,-271,583,-271,580,579,578', '588,581,,,-271,-271,-271,,,,591,,,,,,-271,-271,,-271,-271,-271,-271', '-271,,583,,580,579,578,588,581,586,,,,,,,,591,596,595,599,598,,,,592', ',583,,580,579,578,588,581,-271,,,,,586,,-271,591,,,,294,-271,596,595', '599,598,,,,592,,,,,,,,,586,,577,,,-271,-271,,,596,595,599,598,,,,592', '231,,,-271,,,-271,,77,78,24,-271,65,,,,71,72,-271,,,75,,73,74,76,342', '343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,338,,,114,113', '115,104,64,106,105,107,,108,116,117,,100,101,,,346,,,,,,,,,,,,,,,,,', ',,334,,,330,,,66,67,,,68,,329,,,,,,,,,,,,,,,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,,,75,,73,74,76,342', '343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,338,,,114,113', '115,104,64,106,105,107,,108,116,117,,100,101,,,346,,,,,,,,,,,,,,,,,', ',,334,,,242,,,66,67,,,68,,,583,,580,579,578,588,581,,,,,,,,,591,,98', '86,89,90,,91,93,92,94,,,,,87,97,,,,348,,586,70,,88,102,103,77,78,24', ',65,599,598,,71,72,592,,,75,,73,74,76,342,343,79,80,,,,,,81,337,345', '110,109,111,112,,,243,,,,,,,338,,,114,113,115,104,64,106,105,107,,108', '116,117,,100,101,,,346,,,,,,,,,,,,,,,,,,,,392,,,36,,,66,67,,,68,,38', ',,,,,,,,,,,,,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65', '88,102,103,71,72,,,,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109', '111,112,,,243,,,,,,,338,,,114,113,115,397,64,106,105,398,,108,116,117', ',100,101,,,346,,,,,,,,,,,,,,,,,404,,,399,,,242,,,66,67,,,68,,,,,,,,', ',,,,,,,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102', '103,71,72,,,,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,338,,,114,113,115,397,64,106,105,398,,108,116,117,,100', '101,,,346,,,,,,,,,,,,,,,,,,,,399,,,242,,,66,67,,,68,,,,,,,,,,,,,,,,', ',,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71', '72,,,,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243', ',,,,,,338,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,,,346', ',,,,,,,,,,,,,,,,,,,392,,,36,,,66,67,,,68,,38,,,,,,,,,,,,,,,,,,98,86', '89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,,,75', ',73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,', '338,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,,,346,,,', ',,,,,,,,,,,,,,,,392,,,36,,,66,67,,,68,,38,,,,,,,,,,,,,,,,,,98,86,89', '90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,,,75,', '73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,338', ',,114,113,115,104,64,106,105,107,,108,116,117,,100,101,,,346,,,,,,,', ',,,,,,,,,,,,334,,,242,,,66,67,,,68,,,583,,580,579,578,588,581,,,,,,', ',,591,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,545,,586,70,,88,102,103', '77,78,24,,65,599,598,,71,72,592,,,75,,73,74,76,342,343,79,80,,,,,,81', '337,345,110,109,111,112,,,243,,,,,,,338,,,114,113,115,104,64,106,105', '107,,108,116,117,,100,101,,,346,,,,,,,,,,,,,,,,,,,,334,,,330,,,66,67', ',,68,,,,,,,,,,,,,,,,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78', '24,70,65,88,102,103,71,72,,,,75,,73,74,76,342,343,79,80,,,,,,81,337', '345,110,109,111,112,,,243,,,,,,,338,,,114,113,115,104,64,106,105,107', ',108,116,117,,100,101,,,346,,,,,,,,,,,,,,,,,,,,334,,,330,,,66,67,,,68', ',,,,,,,,,,,,,,,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70', '65,88,102,103,71,72,,,,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110', '109,111,112,,,243,,,,,,,338,,,114,113,115,104,64,106,105,107,,108,116', '117,,100,101,,,346,,,,,,,,,,,,,,,,,,,,334,,,330,,,66,67,,,68,,,,,,,', ',,,,,,,,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88', '102,103,71,72,,,,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109', '111,112,,,243,,,,,,,338,,,114,113,115,104,64,106,105,107,,108,116,117', ',100,101,,,346,,,,,,,,,,,,,,,,,,,,334,,,330,,,66,67,,,68,,,,,,,,,,,', ',,,,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102', '103,71,72,,,,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111', '112,,,243,,,,,,,338,,,114,113,115,104,64,106,105,107,,108,116,117,,100', '101,,,346,,,,,,,,,,,,,,,,,,,,334,,,330,,,66,67,,,68,,,,,,,,,,,,,,,,', ',,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71', '72,,,,75,,73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243', ',,,,,,338,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,,,346', ',,,,,,,,,,,,,,,,,,,1088,,,242,,,66,67,,,68,,,,,,,,,,,,,,,,,,,,98,86', '89,90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,,,75', ',73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,', '338,,,114,113,115,104,64,106,105,107,,108,116,117,,100,101,,,346,,,', ',,,,,,,,,,,,,,,,1094,,,242,,,66,67,,,68,,,,,,,,,,,,,,,,,,,,98,86,89', '90,,91,93,92,94,,,,,87,97,,,,77,78,24,70,65,88,102,103,71,72,,,,75,', '73,74,76,342,343,79,80,,,,,,81,337,345,110,109,111,112,,,243,,,,,,,338', ',,114,113,115,104,64,106,105,107,,108,116,117,,100,101,,,346,,,,,,,', ',,,,,,,,,,,,1088,,,242,,,66,67,,,68,,,,,,,,,,,,,,,,,,,,98,86,89,90,', '91,93,92,94,,,,,87,97,,,,,,,70,,88,102,103,181,192,182,205,178,198,188', '187,208,209,203,186,185,180,206,210,211,190,179,193,197,199,191,184', ',,,200,207,202,201,194,204,189,177,196,195,,,,,,176,183,174,175,171', '172,173,134,136,133,,135,,,,,,,,165,166,,162,144,145,146,153,150,152', ',,147,148,,,,167,168,154,155,,,,,,,,,,,,,,159,158,,143,164,161,160,169', '156,157,151,149,141,163,142,,,170,98,,,,,,,,,,,,,,97,181,192,182,205', '178,198,188,187,208,209,203,186,185,180,206,210,211,190,179,193,197', '199,191,184,,,,200,207,202,201,194,204,189,177,196,195,,,,,,176,183', '174,175,171,172,173,134,136,,,135,,,,,,,,165,166,,162,144,145,146,153', '150,152,,,147,148,,,,167,168,154,155,,,,,,,,,,,,,,159,158,,143,164,161', '160,169,156,157,151,149,141,163,142,,,170,98,,,,,,,,,,,,,,97,181,192', '182,205,178,198,188,187,208,209,203,186,185,180,206,210,211,190,179', '193,197,199,191,184,,,,200,207,202,201,194,204,189,177,196,195,,,,,', '176,183,174,175,171,172,173,134,136,,,135,,,,,,,,165,166,,162,144,145', '146,153,150,152,,,147,148,,,,167,168,154,155,,,,,,,,,,,,,,159,158,,143', '164,161,160,169,156,157,151,149,141,163,142,,,170,98,,,,,,,,,,,,,,97', '181,192,182,205,178,198,188,187,208,209,203,186,185,180,206,210,211', '190,179,193,197,199,191,184,,,,200,207,202,201,194,204,189,177,196,195', ',,,,,176,183,174,175,171,172,173,134,136,,,135,,,,,,,,165,166,,162,144', '145,146,153,150,152,,,147,148,,,,167,168,154,155,,,,,,,,,,,,,,159,158', ',143,164,161,160,169,156,157,151,149,141,163,142,,,170,98,110,109,111', '112,,,,,,,,,,97,,,114,113,115,719,,,583,722,580,579,578,588,581,100', '101,,,346,,,,591,,,,,,,,,,,,,,,,721,,,703,,,586,701,,,702,,,,,596,595', '599,598,,,,592,,,,720,,,,98,86,89,90,,91,93,92,94,,,,,87,97,110,109', '111,112,,,718,,88,102,103,,,,707,708,114,113,115,719,,,583,722,580,579', '578,588,581,100,101,,,346,,,,591,,,,,,,,,,,,,,,,721,,,703,,,586,701', ',,702,,,,,596,595,599,598,,,,592,,,,720,,,,98,86,89,90,,91,93,92,94', ',,,,87,97,110,109,111,112,,,718,,88,102,103,,,,707,708,114,113,115,719', ',,,722,981,,,,,100,101,,,346,591,,,,,,,,,,,,,,,,,,,721,,,703,,,,701', ',,702,,975,,,,,,,592,,,,,,,720,,,,98,982,89,90,,91,93,92,94,,,,,87,97', '110,109,111,112,,,718,,88,102,103,,,,707,708,114,113,115,719,,,,722', '981,,,,,100,101,,,346,591,,,,,,,,,,,,,,,,,,,721,,,703,,,,701,,,702,', '975,,,,,,,592,,,,,,,720,,,,98,982,89,90,,91,93,92,94,,,,,87,97,110,109', '111,112,,,718,,88,102,103,,,,707,708,114,113,115,719,,,583,722,580,579', '578,588,581,100,101,,,346,,,,591,,,,,,,,,,,,,,,,721,,,703,,,586,701', ',,702,,975,,,596,595,599,598,,,,592,,,,720,,,,98,86,89,90,,91,93,92', '94,,,,,87,97,110,109,111,112,,,718,,88,102,103,,,,707,708,114,113,115', '719,,,583,722,580,579,578,588,581,100,101,,,346,,,,591,,,,,,,,,,,,,', ',,721,,,703,,,586,701,,,702,,,,,596,595,599,598,,,,592,,,,720,,,,98', '86,89,90,,91,93,92,94,,,,,87,97,110,109,111,112,,,718,,88,102,103,,', ',707,708,114,113,115,719,,,,722,981,,,,,100,101,,,346,591,,,,,,,,,,', ',,,,,,,,721,,,703,,,,701,,,702,,975,,,,,,,592,,,,,,,720,,,,98,982,89', '90,,91,93,92,94,,,,,87,97,110,109,111,112,,,718,,88,102,103,,,,707,708', '114,113,115,719,,,583,722,580,579,578,588,581,100,101,,,346,,,,591,', ',,,,,,,,,,,,,,721,,,703,,,586,701,,,702,,1058,,,,,599,598,,,,592,,,', '720,,,,98,86,89,90,,91,93,92,94,,,,,87,97,110,109,111,112,,,718,,88', '102,103,,,,707,708,114,113,115,719,,,583,722,580,579,578,588,581,100', '101,,,346,,,,591,,,,,,,,,,,,,,,,721,,,703,,,586,701,,,702,,,,,596,595', '599,598,,,,592,,,,720,,,,98,86,89,90,,91,93,92,94,,,,,87,97,110,109', '111,112,,,718,,88,102,103,,,,707,708,114,113,115,719,,,583,722,580,579', '578,588,581,100,101,,,346,,,,591,,,,,,,,,,,,,,,,721,,,703,,,586,701', ',,702,,,,,596,595,599,598,,,,592,,,,720,,,,98,86,89,90,,91,93,92,94', ',,,,87,97,110,109,111,112,,,718,,88,102,103,,,,707,708,114,113,115,719', ',,583,722,580,579,578,588,581,100,101,,,346,,,,591,,,,,,,,,,,,,,,,721', ',,703,,,586,701,,,702,,975,,,,,599,598,,,,592,,,,720,,,,98,86,89,90', ',91,93,92,94,,,,,87,97,110,109,111,112,,,718,,88,102,103,,,,707,708', '114,113,115,719,,,583,722,580,579,578,588,581,100,101,,,346,,,,591,', ',,,,,,,,,,,,,,721,,,703,,,586,701,,,702,,,,,,,599,598,,,,592,,,,720', ',,,98,86,89,90,,91,93,92,94,,,,,87,97,110,109,111,112,,,718,,88,102', '103,,,,707,708,114,113,115,719,,,583,722,580,579,578,588,581,100,101', ',,346,,,,591,,,,,,,,,,,,,,,,721,,,703,,,586,701,,,702,,,,,596,595,599', '598,,,,592,,,,720,,,,98,86,89,90,,91,93,92,94,,,,,87,97,110,109,111', '112,,,718,,88,102,103,,,,707,708,114,113,115,719,,,583,722,580,579,578', '588,581,100,101,,,346,,,,591,,,,,,,,,,,,,,,,721,,,703,,,586,701,,,702', ',,,,,,599,598,,,,592,,,,720,,,,98,86,89,90,,91,93,92,94,,,,,87,97,110', '109,111,112,,,718,,88,102,103,,,,707,708,114,113,115,719,,,583,722,580', '579,578,588,581,100,101,,,346,,,,591,,,,,,,,,,,,,,,,721,,,703,,,586', '701,,,702,,,,,,,599,598,,,,592,,,,720,,,,98,86,89,90,,91,93,92,94,,', ',,87,97,,,,,,,718,,88,102,103,,,,707,708,181,192,182,205,178,198,188', '187,208,209,203,186,185,180,206,210,211,190,179,193,197,199,191,184', ',,,200,207,202,282,281,283,280,177,196,195,,,,,,176,183,174,175,277', '278,279,275,136,106,105,276,,108,,,,,,165,166,,162,144,145,146,153,150', '152,,,147,148,,,,167,168,154,155,,,,,,287,,,,,,,,159,158,,143,164,161', '160,169,156,157,151,149,141,163,142,,,170,181,192,182,205,178,198,188', '187,208,209,203,186,185,180,206,210,211,190,179,193,197,199,191,184', ',,,200,207,202,201,194,204,189,177,196,195,,,,,,176,183,174,175,171', '172,173,134,136,,,135,,,,,,,,165,166,,162,144,145,146,153,150,152,,', '147,148,,,,167,168,154,155,,,,,,,,,,,,,,159,158,,143,164,161,160,169', '156,157,151,149,141,163,142,,,170,110,109,111,112,,,,583,,580,579,578', '588,581,,,114,113,115,,,,591,,,,,,,100,101,,,346,110,109,111,112,,,', ',,,586,616,,,,,114,113,115,596,595,599,598,,,,592,,,100,101,,,346,,', ',,,,,,,,,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,,,,,,,718,,88,102,103', ',,,,,,,,98,86,89,90,,91,93,92,94,,,,,87,97,459,463,,,460,,718,,88,102', '103,,165,166,,162,144,145,146,153,150,152,,,147,148,,,,167,168,154,155', ',,,,,294,,,,,,,,159,158,,143,164,161,160,169,156,157,151,149,141,163', '142,466,470,170,,465,,,,,,,,165,166,,162,144,145,146,153,150,152,,,147', '148,,,,167,168,154,155,,,,,,294,,,,,,,,159,158,,143,164,161,160,169', '156,157,151,149,141,163,142,473,463,170,,474,,,,,,,,165,166,,162,144', '145,146,153,150,152,,,147,148,,,,167,168,154,155,,,,,,,,,,,,,,159,158', ',143,164,161,160,169,156,157,151,149,141,163,142,473,463,170,,474,,', ',,,,,165,166,,162,144,145,146,153,150,152,,,147,148,,,,167,168,154,155', ',,,,,,,,,,,,,159,158,,143,164,161,160,169,156,157,151,149,141,163,142', '690,463,170,,691,,,,,,,,165,166,,162,144,145,146,153,150,152,,,147,148', ',,,167,168,154,155,,,,,,294,,,,,,,,159,158,,143,164,161,160,169,156', '157,151,149,141,163,142,692,470,170,,693,,,,,,,,165,166,,162,144,145', '146,153,150,152,,,147,148,,,,167,168,154,155,,,,,,294,,,,,,,,159,158', ',143,164,161,160,169,156,157,151,149,141,163,142,750,463,170,,751,,', ',,,,,165,166,,162,144,145,146,153,150,152,,,147,148,,,,167,168,154,155', ',,,,,294,,,,,,,,159,158,,143,164,161,160,169,156,157,151,149,141,163', '142,753,470,170,,754,,,,,,,,165,166,,162,144,145,146,153,150,152,,,147', '148,,,,167,168,154,155,,,,,,294,,,,,,,,159,158,,143,164,161,160,169', '156,157,151,149,141,163,142,690,463,170,,691,,,,,,,,165,166,,162,144', '145,146,153,150,152,,,147,148,,,,167,168,154,155,,,,,,294,,,,,,,,159', '158,,143,164,161,160,169,156,157,151,149,141,163,142,692,470,170,,693', ',,,,,,,165,166,,162,144,145,146,153,150,152,,,147,148,,,,167,168,154', '155,,,,,,294,,,,,,,,159,158,,143,164,161,160,169,156,157,151,149,141', '163,142,814,463,170,,815,,,,,,,,165,166,,162,144,145,146,153,150,152', ',,147,148,,,,167,168,154,155,,,,,,294,,,,,,,,159,158,,143,164,161,160', '169,156,157,151,149,141,163,142,816,470,170,,817,,,,,,,,165,166,,162', '144,145,146,153,150,152,,,147,148,,,,167,168,154,155,,,,,,294,,,,,,', ',159,158,,143,164,161,160,169,156,157,151,149,141,163,142,819,470,170', ',820,,,,,,,,165,166,,162,144,145,146,153,150,152,,,147,148,,,,167,168', '154,155,,,,,,294,,,,,,,,159,158,,143,164,161,160,169,156,157,151,149', '141,163,142,473,463,170,,474,,,,,,,,165,166,,162,144,145,146,153,150', '152,,,147,148,,,,167,168,154,155,,,,,,294,,,,,,,,159,158,,143,164,161', '160,169,156,157,151,149,141,163,142,844,463,170,,845,,,,,,,,165,166', ',162,144,145,146,153,150,152,,,147,148,,,,167,168,154,155,,,,,,294,', ',,,,,,159,158,,143,164,161,160,169,156,157,151,149,141,163,142,847,470', '170,,846,,,,,,,,165,166,,162,144,145,146,153,150,152,,,147,148,,,,167', '168,154,155,,,,,,294,,,,,,,,159,158,,143,164,161,160,169,156,157,151', '149,141,163,142,1176,470,170,,1175,,,,,,,,165,166,,162,144,145,146,153', '150,152,,,147,148,,,,167,168,154,155,,,,,,294,,,,,,,,159,158,,143,164', '161,160,169,156,157,151,149,141,163,142,1179,463,170,,1180,,,,,,,,165', '166,,162,144,145,146,153,150,152,,,147,148,,,,167,168,154,155,,,,,,294', ',,,,,,,159,158,,143,164,161,160,169,156,157,151,149,141,163,142,1181', '470,170,,1182,,,,,,,,165,166,,162,144,145,146,153,150,152,,,147,148', ',,,167,168,154,155,,,,,,294,,,,,,,,159,158,,143,164,161,160,169,156', '157,151,149,141,163,142,,583,170,580,579,578,588,581,583,,580,579,578', '588,581,,591,,,,,,,591,,,,,,,,,,,,,,,586,,,,,,,586,,,,599,598,,,,592', ',599,598,,,,592' ] racc_action_table = arr = ::Array.new(28032, 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 = [ '104,478,478,513,513,798,622,104,104,104,975,381,104,104,104,412,104', '969,1044,1058,234,21,760,760,104,413,104,104,104,235,69,593,983,1,702', '29,104,104,382,104,104,104,104,104,812,1017,1040,745,1042,593,983,702', '1091,625,1092,399,7,729,27,399,745,625,21,969,1044,27,104,104,104,104', '104,104,104,104,104,104,104,104,104,104,234,412,104,104,104,237,104', '104,10,235,104,413,975,104,104,478,104,513,104,29,104,1058,104,104,1095', '104,104,104,104,104,622,104,107,104,798,622,760,69,1145,107,107,107', '29,27,107,107,107,104,107,381,104,104,104,104,381,104,107,104,107,107', '107,12,104,104,729,237,104,339,107,107,1179,107,107,107,107,107,382', '1180,1181,1193,991,382,812,1017,1040,812,1042,812,1017,1040,1091,1042', '1092,46,46,1091,870,1092,107,107,107,107,107,107,107,107,107,107,107', '107,107,107,701,440,107,107,107,1182,107,107,346,346,107,991,13,107', '107,1071,107,19,107,339,107,14,107,107,870,107,107,107,107,107,1095', '107,465,107,484,1095,701,641,641,465,465,465,339,1181,1145,465,465,107', '465,1145,107,107,107,107,721,107,465,107,721,46,46,440,107,107,19,3', '107,16,465,465,3,465,465,465,465,465,1179,19,17,1071,1071,1179,1182', '1180,1181,1193,346,346,1180,1181,1193,25,319,871,484,41,1071,319,465', '465,465,465,465,465,465,465,465,465,465,465,465,465,690,691,465,465', '465,370,465,465,370,386,465,1182,533,465,386,1064,1182,871,465,641,465', '653,465,465,641,465,465,465,465,465,41,465,466,465,844,15,15,84,874', '466,466,466,874,41,767,466,466,465,466,84,465,465,845,465,767,465,466', '466,40,84,690,691,465,465,43,397,465,867,466,466,51,466,466,466,466', '466,533,533,533,1064,1064,1064,655,52,407,653,653,767,767,1048,274,1048', '767,533,844,653,1064,274,466,466,466,466,466,466,466,466,466,466,466', '466,466,466,845,1186,466,466,466,397,466,466,379,379,466,1186,397,466', '408,867,53,397,466,601,466,397,466,466,601,466,466,466,466,466,118,466', '466,466,655,655,407,407,407,275,397,18,212,274,655,54,275,466,18,233', '466,466,54,466,409,466,233,18,410,955,692,54,466,466,955,233,466,692', '692,692,397,397,692,692,692,331,692,236,408,408,408,238,331,276,692', '692,692,692,692,960,276,331,371,398,239,371,692,692,243,692,692,692', '692,692,275,293,18,18,700,332,54,54,411,700,233,233,332,700,409,409', '409,307,410,410,410,332,692,692,692,692,692,692,692,692,692,692,692', '692,692,692,331,331,692,692,692,398,692,692,276,960,692,308,398,692', '692,414,692,398,692,311,692,398,692,692,323,692,692,692,692,692,324', '692,692,692,332,332,411,411,411,277,398,278,333,704,704,326,277,692', '278,333,692,692,692,692,279,692,327,692,333,133,693,279,692,692,133', '133,692,693,693,693,398,398,693,693,693,335,693,328,491,414,414,414', '335,280,693,334,693,693,693,374,280,335,374,770,770,797,693,693,797', '693,693,693,693,693,277,281,278,333,333,351,491,282,281,283,491,491', '351,42,282,279,283,1105,800,800,1105,351,693,693,693,693,693,693,693', '693,693,693,693,693,693,693,335,335,693,693,693,337,693,693,280,338', '693,1043,1043,693,693,340,693,350,693,341,693,345,693,693,42,693,693', '693,693,693,281,693,846,693,351,351,282,42,283,846,846,846,49,49,347', '846,846,693,846,354,693,693,693,693,506,693,846,693,1156,1156,356,360', '693,693,350,364,693,368,846,846,372,846,846,846,846,846,459,350,49,49', '373,391,375,387,388,392,506,394,391,403,506,506,423,506,506,429,431', '391,846,846,846,846,846,846,846,846,846,846,846,846,846,846,432,434', '846,846,846,460,846,846,437,441,846,459,455,846,389,457,458,675,846', '467,846,389,846,846,459,846,846,846,846,846,389,846,847,846,391,391', '480,493,494,847,847,847,495,496,519,847,847,846,847,520,846,846,460', '846,507,846,847,847,524,540,541,544,846,846,675,460,846,546,847,847', '389,847,847,847,847,847,551,675,555,389,389,401,565,566,567,568,507', '569,401,570,507,507,492,507,507,571,573,401,847,847,847,847,847,847', '847,847,847,847,847,847,847,847,574,877,847,847,847,575,847,847,390', '585,847,877,492,847,439,390,492,492,847,597,847,439,847,847,390,847', '847,847,847,847,439,847,847,847,401,401,600,603,604,646,646,550,1062', '646,646,646,605,847,550,877,847,847,1062,847,606,847,619,550,623,624', '626,877,847,847,390,650,847,0,0,0,0,0,0,390,390,658,0,0,660,439,439', '0,750,0,0,0,0,0,0,0,1062,667,676,681,686,0,0,0,0,0,0,0,1062,694,0,695', '550,550,697,720,0,0,0,0,0,0,0,0,0,0,0,0,723,0,0,0,726,0,0,0,0,0,728', '751,750,733,932,734,932,932,932,750,932,735,737,739,750,747,749,752', '750,0,755,756,0,759,762,0,0,634,782,0,783,0,785,799,634,0,784,750,784', '784,784,932,784,634,0,802,808,809,813,0,0,0,0,751,0,0,0,0,822,826,751', '841,0,0,843,751,852,750,750,751,0,868,0,0,0,879,892,895,0,0,36,36,36', '36,36,36,904,909,751,36,36,912,634,634,36,753,36,36,36,36,36,36,36,913', '916,1074,918,921,36,36,36,36,36,36,36,1074,922,36,751,751,924,925,927', '36,36,36,36,36,36,36,36,36,36,36,36,930,36,36,36,940,36,36,36,36,36', '941,819,753,1074,1074,942,945,952,1074,753,954,958,959,970,753,971,974', '976,753,36,984,985,36,987,988,36,36,754,997,36,998,36,999,1001,754,36', '1002,753,1003,754,1005,1006,1007,754,36,1032,1033,1052,1056,36,36,36', '36,819,36,36,36,36,1057,1060,819,1063,36,36,1085,819,1088,753,753,819', '36,1094,36,36,36,1097,1098,1099,36,36,131,131,131,131,131,131,1100,1103', '819,131,131,1104,754,754,131,814,131,131,131,131,131,131,131,6,6,6,6', '6,131,131,131,131,131,131,131,1119,1122,131,819,819,1128,1131,1132,131', '131,131,131,131,131,131,131,131,131,131,131,1133,131,131,131,1134,131', '131,131,131,131,820,905,814,1136,1141,1151,1162,820,1163,814,1175,1176', '820,1178,814,1183,820,1187,814,131,1189,1190,131,1191,1192,131,131,1087', '1203,131,,131,,,1087,131,1037,814,1037,1037,1037,,1037,1087,131,,,,', '131,131,131,131,905,131,131,131,131,814,,905,,131,131,,820,820,814,814', '905,131,,131,131,131,,,,131,131,214,214,214,214,214,214,,,905,214,214', ',1087,1087,214,815,214,214,214,214,214,214,214,322,322,322,322,322,214', '214,214,214,214,214,214,,,214,905,905,,,,214,214,214,214,214,214,214', '214,214,214,214,214,,214,214,214,1093,214,214,214,214,214,1138,1093', '815,,,,,1138,,815,1093,,,,815,,1138,,815,214,,,214,,,214,214,,,214,1155', '214,1155,1155,1155,214,1155,815,,1101,,1101,1101,1101,214,1101,,,,214', '214,214,214,,214,214,214,214,815,1093,1093,,214,214,,1138,1138,815,815', ',214,,214,214,214,,1101,,214,214,242,242,242,242,242,242,,,,242,242', ',,,242,816,242,242,242,242,242,242,242,367,367,367,367,367,242,242,242', '242,242,242,242,,586,242,586,586,586,,586,242,242,242,242,242,242,242', '242,242,242,242,242,,242,242,242,,242,242,242,242,242,,780,816,780,780', '780,,780,586,816,,,,,816,,,586,816,242,,,242,,,242,242,,,242,,242,,', ',242,,816,780,1102,,1102,1102,1102,242,1102,,780,,242,242,242,242,,242', '242,242,242,816,,,,242,242,,,,816,816,,242,,242,242,242,,1102,,242,242', '325,325,325,325,325,325,,,,325,325,,,,325,951,325,325,325,325,325,325', '325,538,538,538,538,538,325,325,325,325,325,325,325,,931,325,931,931', '931,,931,325,325,325,325,325,325,325,325,325,325,325,325,,325,325,325', ',325,325,325,325,325,,,951,,,,,,931,951,,,,,,,,931,951,325,,,325,,,325', '325,,,325,,325,,,,325,,951,,,,,,,325,,,,,325,325,325,325,,325,325,325', '325,951,,,,325,325,,,,951,951,,325,,325,325,325,,,,325,325,330,330,330', '330,330,330,,,,330,330,,,,330,,330,330,330,330,330,330,330,23,,,,,330', '330,330,330,330,330,330,,,330,,,,,,330,330,330,330,330,330,330,330,330', '330,330,330,,330,330,330,,330,330,330,330,330,23,23,23,23,23,23,23,23', '23,23,23,393,23,23,,,23,23,393,330,,23,330,,,330,330,393,,330,,330,23', ',23,330,23,23,,23,23,23,23,23,330,23,,,,330,330,330,330,,330,330,330', '330,,,,,330,330,,23,,393,,,330,,330,330,330,,393,393,330,330,361,361', '361,361,361,361,,,,361,361,,,,361,,361,361,361,361,361,361,361,380,', ',,,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,380,380,380,380', '380,380,380,380,380,380,380,631,380,380,,,380,380,631,361,,,361,,,361', '361,631,,361,,361,380,,380,361,380,380,,380,380,380,380,380,361,380', ',,,361,361,361,361,,361,361,361,361,,,,,361,361,,380,,631,,,361,,361', '361,361,,631,631,361,361,365,365,365,365,365,365,,,,365,365,,,,365,', '365,365,365,365,365,365,365,,,,,,365,365,365,365,365,365,365,,,365,', ',,,444,365,365,365,365,365,365,365,365,365,365,365,365,,365,365,365', ',365,365,365,365,365,444,444,444,444,444,444,444,444,444,444,444,,444', '444,,,444,444,,365,,,365,,,365,365,,,365,,365,444,,444,365,444,444,', '444,444,444,444,444,365,444,,,,365,365,365,365,,365,365,365,365,,,,', '365,365,,444,,444,,,365,,365,365,365,,,,365,365,366,366,366,366,366', '366,,,,366,366,,,,366,,366,366,366,366,366,366,366,,,,,,366,366,366', '366,366,366,366,,,366,,,,,454,366,366,366,366,366,366,366,366,366,366', '366,366,,366,366,366,,366,366,366,366,366,454,454,454,454,454,454,454', '454,454,454,454,817,454,454,,,454,454,817,366,,,366,817,,366,366,817', ',366,,366,454,,454,366,454,454,,454,454,454,454,454,366,454,,,,366,366', '366,366,,366,366,366,366,,,,,366,366,,454,,817,,,366,,366,366,366,,817', '817,366,366,384,384,384,384,384,384,,,,384,384,,,,384,,384,384,384,384', '384,384,384,,,,,,384,384,384,384,384,384,384,,,384,,,,,761,384,384,384', '384,384,384,384,384,384,384,384,384,,384,384,384,,384,384,384,384,384', '761,761,761,761,761,761,761,761,761,761,761,,761,761,,,761,761,,384', ',,384,,,384,384,,,384,,384,761,,761,384,761,761,,761,761,761,761,761', '384,761,,,,384,384,384,384,,384,384,384,384,,,,,384,384,,761,,,,,384', ',384,384,384,,,,384,384,385,385,385,385,385,385,,,,385,385,,,,385,,385', '385,385,385,385,385,385,,,,,,385,385,385,385,385,385,385,,,385,,,,,792', '385,385,385,385,385,385,385,385,385,385,385,385,,385,385,385,,385,385', '385,385,385,792,792,792,792,792,792,792,792,792,792,792,,792,792,,,792', '792,,385,,,385,,,385,385,,,385,,385,792,,792,385,792,792,,792,792,792', '792,792,385,792,,,,385,385,385,385,,385,385,385,385,,,,,385,385,,792', ',,,,385,,385,385,385,,,,385,385,618,618,618,618,618,618,,,,618,618,', ',,618,,618,618,618,618,618,618,618,,,,,,618,618,618,618,618,618,618', ',,618,,,,,,618,618,618,618,618,618,618,618,618,618,618,618,,618,618', '618,,618,618,618,618,618,305,305,305,305,305,305,305,305,305,305,305', ',305,305,,,305,305,,618,,,618,,,618,618,,,618,,618,305,,305,618,305', '305,,305,305,305,305,305,618,305,,,,618,618,618,618,,618,618,618,618', ',,,,618,618,,305,,,,,618,,618,618,618,,,,618,618,621,621,621,621,621', '621,,,,621,621,,,,621,,621,621,621,621,621,621,621,,,,,,621,621,621', '621,621,621,621,,,621,,,,,,621,621,621,621,621,621,621,621,621,621,621', '621,,621,621,621,,621,621,621,621,621,510,510,510,510,510,510,510,510', '510,510,510,,510,510,,,510,510,,621,,,621,,,621,621,,,621,,621,510,', '510,621,510,510,,510,510,510,510,510,621,510,,,,621,621,621,621,,621', '621,621,621,,,,,621,621,510,510,,,,,621,,621,621,621,,,,621,621,642', '642,642,642,642,642,,,,642,642,,,,642,,642,642,642,642,642,642,642,', ',,,,642,642,642,642,642,642,642,,,642,,,,,,642,642,642,642,642,642,642', '642,642,642,642,642,,642,642,642,,642,642,642,642,642,562,562,562,562', '562,562,562,562,562,562,562,,562,562,,,562,562,,642,,,642,,,642,642', ',,642,,642,562,,562,642,562,562,,562,562,562,562,562,642,562,,,,642', '642,642,642,,642,642,642,642,,,,,642,642,,562,,,,,642,,642,642,642,', ',,642,642,818,818,818,818,818,818,,,,818,818,,,,818,,818,818,818,818', '818,818,818,,,,,,818,818,818,818,818,818,818,,,818,,,,,,818,818,818', '818,818,818,818,818,818,818,818,818,,818,818,818,,818,818,818,818,818', '849,849,849,849,849,849,849,849,849,849,849,,849,849,,,849,849,,818', ',,818,,,818,818,,,818,,818,849,,849,818,849,849,,849,849,849,849,849', '818,849,,,,818,818,818,818,,818,818,818,818,,,,,818,818,,849,,,,,818', ',818,818,818,,,,818,818,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,994,994,994,994,994,994,994,994,994,994,994,,994,994,,,994', '994,,823,,,823,,,823,823,,,823,,823,994,,994,823,994,994,,994,994,994', '994,994,823,994,,,,823,823,823,823,,823,823,823,823,,,,,823,823,,994', ',,,,823,,823,823,823,,,,823,823,832,832,832,832,832,832,,,,832,832,', ',,832,,832,832,832,832,832,832,832,,,,,,832,832,832,832,832,832,832', ',,832,,,,,,832,832,832,832,832,832,832,832,832,832,832,832,,832,832', '832,,832,832,832,832,832,1012,1012,1012,1012,1012,1012,1012,1012,1012', '1012,1012,,1012,1012,,,1012,1012,,832,,,832,,,832,832,,,832,,832,1012', ',1012,832,1012,1012,,1012,1012,1012,1012,1012,832,1012,,,,832,832,832', '832,,832,832,832,832,,,,,832,832,,1012,,,,,832,,832,832,832,,,,832,832', '899,899,899,899,899,899,,,,899,899,,,,899,,899,899,899,899,899,899,899', ',,,,,899,899,899,899,899,899,899,,,899,,,,,,899,899,899,899,899,899', '899,899,899,899,899,899,,899,899,899,,899,899,899,899,899,1034,1034', '1034,1034,1034,1034,1034,1034,1034,1034,1034,,1034,1034,,,1034,1034', ',899,,,899,,,899,899,,,899,,899,1034,,1034,899,1034,1034,,1034,1034', '1034,1034,1034,899,1034,,,,899,899,899,899,,899,899,899,899,,,,,899', '899,,1034,,,,,899,,899,899,899,,,,899,899,911,911,911,911,911,911,,', ',911,911,,,,911,,911,911,911,911,911,911,911,,,,,,911,911,911,911,911', '911,911,,,911,,,,,,911,911,911,911,911,911,911,911,911,911,911,911,', '911,911,911,,911,911,911,911,911,352,352,352,352,352,352,352,352,352', '352,352,,352,352,,,352,352,,911,,,911,,,911,911,,,911,,911,352,,352', '911,352,352,,352,352,352,352,352,911,352,,,,911,911,911,911,,911,911', '911,911,,,,,911,911,,,,,,,911,,911,911,911,,,,911,911,950,950,950,950', '950,950,,,,950,950,,,,950,,950,950,950,950,950,950,950,,,,,,950,950', '950,950,950,950,950,,,950,,,,,,950,950,950,950,950,950,950,950,950,950', '950,950,,950,950,950,,950,950,950,950,950,353,353,353,353,353,353,353', '353,353,353,353,,353,353,,,353,353,,950,,,950,,,950,950,,,950,,950,353', ',353,950,353,353,,353,353,353,353,353,950,353,,,,950,950,950,950,,950', '950,950,950,,,,,950,950,,,,,,,950,,950,950,950,,,,950,950,956,956,956', '956,956,956,,,,956,956,,,,956,,956,956,956,956,956,956,956,,,,,,956', '956,956,956,956,956,956,,,956,,,,,,956,956,956,956,956,956,956,956,956', '956,956,956,,956,956,956,,956,956,956,956,956,489,489,489,489,489,489', '489,489,489,489,489,,489,489,,,489,489,,956,,,956,,,956,956,,,956,,956', '489,,489,956,489,489,,489,489,489,489,489,956,489,,,,956,956,956,956', ',956,956,956,956,,,,,956,956,,,,,,,956,,956,956,956,,,,956,956,995,995', '995,995,995,995,,,,995,995,,,,995,,995,995,995,995,995,995,995,,,,,', '995,995,995,995,995,995,995,,,995,,,,,,995,995,995,995,995,995,995,995', '995,995,995,995,,995,995,995,,995,995,995,995,995,490,490,490,490,490', '490,490,490,490,490,490,,490,490,,,490,490,,995,,,995,,,995,995,,,995', ',995,490,,490,995,490,490,,490,490,490,490,490,995,490,,,,995,995,995', '995,,995,995,995,995,,,,,995,995,,,,,,,995,,995,995,995,,,,995,995,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,500,500,500,500,500,500,500,,,500,500,,,,,,500,500', ',1014,,,1014,,,1014,1014,,,1014,,1014,500,,500,1014,500,500,,500,500', '500,500,500,1014,500,,,,1014,1014,1014,1014,,1014,1014,1014,1014,,,', ',1014,1014,,,,,,,1014,,1014,1014,1014,,,,1014,1014,1035,1035,1035,1035', '1035,1035,,,,1035,1035,,,,1035,,1035,1035,1035,1035,1035,1035,1035,', ',,,,1035,1035,1035,1035,1035,1035,1035,,,1035,,,,,,1035,1035,1035,1035', '1035,1035,1035,1035,1035,1035,1035,1035,,1035,1035,1035,,1035,1035,1035', '1035,1035,501,501,501,501,501,501,501,,,501,501,,,,,,501,501,,1035,', ',1035,,,1035,1035,,,1035,,1035,501,,501,1035,501,501,,501,501,501,501', '501,1035,501,,,,1035,1035,1035,1035,,1035,1035,1035,1035,,,,,1035,1035', ',,,,,,1035,,1035,1035,1035,,,,1035,1035,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,502', '502,502,502,502,502,502,,,502,502,,,,,,502,502,,1036,,,1036,,,1036,1036', ',,1036,,1036,502,,502,1036,502,502,,502,502,502,502,502,1036,502,,,', '1036,1036,1036,1036,,1036,1036,1036,1036,,,,,1036,1036,,,,,,,1036,,1036', '1036,1036,,,,1036,1036,1090,1090,1090,1090,1090,1090,,,,1090,1090,,', ',1090,,1090,1090,1090,1090,1090,1090,1090,,,,,,1090,1090,1090,1090,1090', '1090,1090,,,1090,,,,,,1090,1090,1090,1090,1090,1090,1090,1090,1090,1090', '1090,1090,,1090,1090,1090,,1090,1090,1090,1090,1090,503,503,503,503', '503,503,503,,,503,503,,,,,,503,503,,1090,,,1090,,,1090,1090,,,1090,', '1090,503,,503,1090,503,503,,503,503,503,503,503,1090,503,,,,1090,1090', '1090,1090,,1090,1090,1090,1090,,,,,1090,1090,,,,,,,1090,,1090,1090,1090', ',,,1090,1090,1109,1109,1109,1109,1109,1109,,,,1109,1109,,,,1109,,1109', '1109,1109,1109,1109,1109,1109,,,,,,1109,1109,1109,1109,1109,1109,1109', ',,1109,,,,,,1109,1109,1109,1109,1109,1109,1109,1109,1109,1109,1109,1109', ',1109,1109,1109,,1109,1109,1109,1109,1109,504,504,504,504,504,504,504', ',,504,504,,,,,,504,504,,1109,,,1109,,,1109,1109,,,1109,,1109,504,,504', '1109,504,504,,504,504,504,504,504,1109,504,,,,1109,1109,1109,1109,,1109', '1109,1109,1109,,,,,1109,1109,,,,,,,1109,,1109,1109,1109,,,,1109,1109', '1157,1157,1157,1157,1157,1157,,,,1157,1157,,,,1157,,1157,1157,1157,1157', '1157,1157,1157,,,,,,1157,1157,1157,1157,1157,1157,1157,,,1157,,,,,,1157', '1157,1157,1157,1157,1157,1157,1157,1157,1157,1157,1157,,1157,1157,1157', ',1157,1157,1157,1157,1157,505,505,505,505,505,505,505,,,505,505,,,,', ',505,505,,1157,,,1157,,,1157,1157,,,1157,,1157,505,,505,1157,505,505', ',505,505,505,505,505,1157,505,,,,1157,1157,1157,1157,,1157,1157,1157', '1157,,,,,1157,1157,,,,,,,1157,,1157,1157,1157,,,,1157,1157,5,5,5,5,5', ',,,5,5,,,,5,,5,5,5,5,5,5,5,,,,,,5,5,5,5,5,5,5,,,5,,,,,,5,5,5,5,5,5,5', '5,5,5,5,5,,5,5,5,,5,5,5,5,5,508,508,508,508,508,508,508,,,508,508,,', ',,,508,508,,5,,,5,,,5,5,,,5,,5,508,,508,5,508,508,,508,508,508,508,508', '5,508,,,,5,5,5,5,,5,5,5,5,,,,,5,5,,,,22,22,22,5,22,5,5,5,22,22,,5,5', '22,,22,22,22,22,22,22,22,,,,,,22,22,22,22,22,22,22,,,22,,,,,,,22,,,22', '22,22,22,22,22,22,22,,22,22,22,,22,22,22,22,22,509,509,509,509,509,509', '509,509,,509,509,,,,,,509,509,,22,,,22,,,22,22,,,22,,,509,,509,22,509', '509,,509,509,509,509,509,22,509,,,,22,22,22,22,,22,22,22,22,,,,,22,22', ',,,,30,,22,,22,22,22,30,30,30,22,22,30,30,30,511,30,,,,,,,,30,30,30', '30,,,,511,511,,,,30,30,,30,30,30,30,30,,,,511,,511,,511,511,,511,511', ',,511,,511,,,,,,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,31,30,30,30,', ',,31,31,31,,,31,31,31,,31,30,561,,30,30,,30,31,30,31,31,,,,,30,30,561', '561,31,31,,31,31,31,31,31,,,,,,,561,,561,,561,561,,561,561,,,561,,561', ',,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,32,32,32,,32,,31,31,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,497,,,,,,,,,,,,,,,,497,497,,32,,,32,,,32,32', ',,32,,32,497,32,497,32,497,497,32,497,497,,,,32,,,,,32,32,32,32,,32', '32,32,32,,,,,32,32,,,,33,33,33,32,33,32,32,32,33,33,,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,498,,,,,,,,,,,,,,,,498,498,', '33,,,33,,,33,33,,,33,,33,498,33,498,33,498,498,33,498,498,,,,33,,,,', '33,33,33,33,,33,33,33,33,,,,,33,33,,,,34,34,34,33,34,33,33,33,34,34', ',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,499,,,,,,', ',,,,,,,,,499,499,,34,,,34,,,34,34,,,34,,34,499,34,,34,499,499,34,499', '499,,,,34,,,,,34,34,34,34,,34,34,34,34,,,,,34,34,,,,44,44,44,34,44,34', '34,34,44,44,,34,34,44,,44,44,44,44,44,44,44,,,,,,44,44,44,44,44,44,44', ',,44,,,,,,,44,,,44,44,44,44,44,44,44,44,,44,44,44,,44,44,44,44,44,,', ',,,,,,,,,,,,,,,,,44,,,44,,,44,44,,,44,,,,,,44,,,,,,,,,44,,,,,44,44,44', '44,,44,44,44,44,,,,,44,44,,,,45,45,45,44,45,44,44,44,45,45,,44,44,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,,,,47,47,47,45,47,45,45,45,47,47,,45,45,47,,47,47,47,47,47,47', '47,,,,,,47,47,47,47,47,47,47,,,47,,,,,,,47,,,47,47,47,47,47,47,47,47', ',47,47,47,,47,47,47,47,47,,,,,,,,,,,,,,,,,,,,47,,,47,,,47,47,,,47,,', ',,,47,,,,,,,,,47,,,,,47,47,47,47,,47,47,47,47,,,,,47,47,,,,48,48,48', '47,48,47,47,47,48,48,,47,47,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,,,,50,50,50,48,50,48,48,48,50,50', ',48,48,50,,50,50,50,50,50,50,50,,,,,,50,50,50,50,50,50,50,,,50,,,,,', ',50,,,50,50,50,50,50,50,50,50,,50,50,50,,50,50,50,50,50,,,,,,,,,,,,', ',,,,,,,50,,,50,,,50,50,,,50,,,,,,50,,,,,,,,,50,,,,,50,50,50,50,,50,50', '50,50,,,,,50,50,,,,,64,,50,,50,50,50,64,64,64,50,50,64,64,64,,64,,,', ',,,,64,,64,64,64,,,,707,707,707,707,64,64,,64,64,64,64,64,,,,,707,707', '707,,,,,,,,,,,707,707,,,707,64,64,64,64,64,64,64,64,64,64,64,64,64,64', ',,64,64,64,,,64,,,64,,,64,64,,64,,64,,64,,64,64,,64,64,64,64,64,,64', ',64,,707,707,707,707,,707,707,707,707,,,,64,707,707,64,64,64,64,,64', '707,64,707,707,707,,64,64,66,66,66,66,66,,,,66,66,,,,66,,66,66,66,66', '66,66,66,,,,,,66,66,66,66,66,66,66,,,66,,,,,,66,66,,66,66,66,66,66,66', '66,66,66,,66,66,66,,66,66,66,66,66,,,,,,,,,,,,,,,,,,,,66,,,66,,,66,66', ',,66,,66,,,,66,,,,,,,,,66,,,,,66,66,66,66,,66,66,66,66,,,,,66,66,,,', '67,67,67,66,67,66,66,66,67,67,,66,66,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,67,68', '67,67,67,68,68,,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,,,,71,71,71,68,71,68,68,68,71,71', ',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,,,,72,72,72,71,72,71,71,71,72,72,,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,,,,75', '75,75,72,75,72,72,72,75,75,,72,72,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,120,120,120,120,120,,,,120,120,,,,120,,120,120,120,120,120,120', '120,,,,,,120,120,120,120,120,120,120,,,120,,,,,,120,120,120,120,120', '120,120,120,120,120,120,120,,120,120,120,,120,120,120,120,120,,,,,,', ',,,,,,,,,,,,,120,,,120,,,120,120,,,120,,120,,,,120,,,,,,,,,120,,,,,120', '120,120,120,,120,120,120,120,,,,,120,120,,,,,,120,120,,120,120,120,', ',,120,120,125,125,125,,125,,,,125,125,,,,125,,125,125,125,125,125,125', '125,,,,,,125,125,125,125,125,125,125,,,125,,,,,,,125,,,125,125,125,125', '125,125,125,125,,125,125,125,,125,125,125,125,125,,,,,,,,,,,,,,,,,,', ',125,,,125,,,125,125,,,125,,,,,,125,,,,,,,,,125,,,,,125,125,125,125', ',125,125,125,125,,,,,125,125,,,,126,126,126,125,126,125,125,125,126', '126,,125,125,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', ',,,127,127,127,126,127,126,126,126,127,127,,126,126,127,,127,127,127', '127,127,127,127,,,,,,127,127,127,127,127,127,127,,,127,,,,,,,127,,,127', '127,127,127,127,127,127,127,,127,127,127,,127,127,127,127,127,,,,,,', ',,,,,,,,,,,,,127,,,127,,,127,127,,,127,,,,,,127,,,,,,,,,127,,,,,127', '127,127,127,,127,127,127,127,,,,,127,127,,,,128,128,128,127,128,127', '127,127,128,128,,127,127,128,,128,128,128,128,128,128,128,,,,,,128,128', '128,128,128,128,128,,,128,,,,,,,128,,,128,128,128,128,128,128,128,128', ',128,128,128,,128,128,128,128,128,,,,,,,,,,,,,,,,,,,,128,,,128,,,128', '128,,,128,,,,,,128,,,,,,,,,128,,,,,128,128,128,128,,128,128,128,128', ',,,,128,128,,,,,,,128,,128,128,128,,,,128,128,129,129,129,129,129,,', ',129,129,,,,129,,129,129,129,129,129,129,129,,,,,,129,129,129,129,129', '129,129,,,129,,,,,,129,129,,129,129,129,129,129,129,129,129,129,,129', '129,129,,129,129,129,129,129,,,,,,,,,,,,,,,,,,,,129,,,129,,,129,129', ',,129,,129,,,,129,,,,,,,,,129,,,,,129,129,129,129,,129,129,129,129,', ',,,129,129,,,,215,215,215,129,215,129,129,129,215,215,,129,129,215,', '215,215,215,215,215,215,215,,,,,,215,215,215,215,215,215,215,,,215,', ',,,,,215,,,215,215,215,215,215,215,215,215,,215,215,215,,215,215,215', '215,215,,,,,,,,,,,,,,,,,,,,215,,,215,,,215,215,,,215,,215,,,,215,,,', ',,,,,215,,,,,215,215,215,215,,215,215,215,215,,,,,215,215,,,,216,216', '216,215,216,215,215,215,216,216,,215,215,216,,216,216,216,216,216,216', '216,,,,,,216,216,216,216,216,216,216,,,216,,,,,,,216,,,216,216,216,216', '216,216,216,216,,216,216,216,,216,216,216,216,216,,,,,,,,,,,,,,,,,,', ',216,,,216,,,216,216,,,216,,216,,,,216,,,,,,,,,216,,,,,216,216,216,216', ',216,216,216,216,,,,,216,216,,,,218,218,218,216,218,216,216,216,218', '218,,216,216,218,,218,218,218,218,218,218,218,,,,,,218,218,218,218,218', '218,218,,,218,,,,,,,218,,,218,218,218,218,218,218,218,218,,218,218,218', ',218,218,218,218,218,,,,,,,,,,,,,,,,,,,,218,,,218,,,218,218,,,218,,', ',,,218,,,,,,,,,218,,,,,218,218,218,218,,218,218,218,218,,,,,218,218', ',,,219,219,219,218,219,218,218,218,219,219,,218,218,219,,219,219,219', '219,219,219,219,,,,,,219,219,219,219,219,219,219,,,219,,,,,,,219,,,219', '219,219,219,219,219,219,219,,219,219,219,,219,219,219,219,219,,,,,,', ',,,,,,,,,,,,,219,,,219,,,219,219,,,219,,,,,,219,,,,,,,,,219,,,,,219', '219,219,219,,219,219,219,219,,,,,219,219,,,,221,221,221,219,221,219', '219,219,221,221,,219,219,221,,221,221,221,221,221,221,221,,,,,,221,221', '221,221,221,221,221,,,221,,,,,,,221,,,221,221,221,221,221,221,221,221', ',221,221,221,,221,221,221,221,221,,,,,,,,,,,,,,,,,,,,221,,,221,,,221', '221,,,221,,,,,,221,,,,,,,,,221,,,,,221,221,221,221,,221,221,221,221', ',,,,221,221,,,,222,222,222,221,222,221,221,221,222,222,,221,221,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,,,,,222,222,222,222,,222,222,222,222,,,,,222,222', ',,,228,228,228,222,228,222,222,222,228,228,,222,222,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,,,,229,229,229,228,229,228', '228,228,229,229,,228,228,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,,229,229,229,229,229,,,,,,,,,,,,,,,,,,,,229,,,229,,,229', '229,,,229,,,,,,229,,,,,,,,,229,,,,,229,229,229,229,,229,229,229,229', ',,,,229,229,,,,230,230,230,229,230,229,229,229,230,230,,229,229,230', ',230,230,230,230,230,230,230,,,,,,230,230,230,230,230,230,230,,,230', ',,,,,,230,,,230,230,230,230,230,230,230,230,,230,230,230,,230,230,230', '230,230,,,,,,,,,,,,,,,,,,,,230,,,230,,,230,230,,,230,,,,,,230,,,,,,', ',,230,,,,,230,230,230,230,,230,230,230,230,,,,,230,230,230,,,241,241', '241,230,241,230,230,230,241,241,,230,230,241,,241,241,241,241,241,241', '241,,,,,,241,241,241,241,241,241,241,,,241,,,,,,,241,,,241,241,241,241', '241,241,241,241,,241,241,241,,241,241,241,241,241,,,,,,,,,,,,,,,,,,', ',241,,,241,,,241,241,,,241,,,,,,241,,,,,,,,,241,,,,,241,241,241,241', ',241,241,241,241,,,,,241,241,,,,245,245,245,241,245,241,241,241,245', '245,,241,241,245,,245,245,245,245,245,245,245,,,,,,245,245,245,245,245', '245,245,,,245,,,,,,,245,,,245,245,245,245,245,245,245,245,,245,245,245', ',245,245,245,245,245,,,,,,,,,,,,,,,,,,,,245,,,245,,,245,245,,,245,,', ',,,245,,,,,,,,,245,,,,,245,245,245,245,,245,245,245,245,,,,,245,245', ',,,246,246,246,245,246,245,245,245,246,246,,245,245,246,,246,246,246', '246,246,246,246,,,,,,246,246,246,246,246,246,246,,,246,,,,,,,246,,,246', '246,246,246,246,246,246,246,,246,246,246,,246,246,246,246,246,,,,,,', ',,,,,,,,,,,,,246,,,246,,,246,246,,,246,,,,,,246,,,,,,,,,246,,,,,246', '246,246,246,,246,246,246,246,,,,,246,246,,,,247,247,247,246,247,246', '246,246,247,247,,246,246,247,,247,247,247,247,247,247,247,,,,,,247,247', '247,247,247,247,247,,,247,,,,,,,247,,,247,247,247,247,247,247,247,247', ',247,247,247,,247,247,247,247,247,,,,,,,,,,,,,,,,,,,,247,,,247,,,247', '247,,,247,,,,,,247,,,,,,,,,247,,,,,247,247,247,247,,247,247,247,247', ',,,,247,247,,,,248,248,248,247,248,247,247,247,248,248,,247,247,248', ',248,248,248,248,248,248,248,,,,,,248,248,248,248,248,248,248,,,248', ',,,,,,248,,,248,248,248,248,248,248,248,248,,248,248,248,,248,248,248', '248,248,,,,,,,,,,,,,,,,,,,,248,,,248,,,248,248,,,248,,,,,,248,,,,,,', ',,248,,,,,248,248,248,248,,248,248,248,248,,,,,248,248,,,,249,249,249', '248,249,248,248,248,249,249,,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,,,,250,250,250,249,250,249,249,249,250,250,', '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,', ',,251,251,251,250,251,250,250,250,251,251,,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,,,,252,252,252,251,252,251', '251,251,252,252,,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,,,,253,253,253,252,253,252,252,252,253,253,,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,,,,254,254,254', '253,254,253,253,253,254,254,,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,,,,255,255,255,254,255,254,254,254,255,255,', '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,', ',,256,256,256,255,256,255,255,255,256,256,,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,,,,257,257,257,256,257,256', '256,256,257,257,,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,,,,258,258,258,257,258,257,257,257,258,258,,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,,,,259,259,259', '258,259,258,258,258,259,259,,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,,,,260,260,260,259,260,259,259,259,260,260,', '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,', ',,261,261,261,260,261,260,260,260,261,261,,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,,,,262,262,262,261,262,261', '261,261,262,262,,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,,,,263,263,263,262,263,262,262,262,263,263,,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,,,,264,264,264', '263,264,263,263,263,264,264,,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,,,,265,265,265,264,265,264,264,264,265,265,', '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,', ',,266,266,266,265,266,265,265,265,266,266,,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,,,,271,271,271,266,271,266', '266,266,271,271,,266,266,271,,271,271,271,271,271,271,271,,,,,,271,271', '271,271,271,271,271,,,271,,,,,,,271,,,271,271,271,271,271,271,271,271', ',271,271,271,,271,271,271,271,271,,,,,,,,,,,,,,,,,,,,271,,,271,,,271', '271,,,271,,,,,,271,,,,,,,,,271,,,,,271,271,271,271,,271,271,271,271', ',,,,271,271,,,,287,287,287,271,287,271,271,271,287,287,,271,271,287', ',287,287,287,287,287,287,287,,,,,,287,287,287,287,287,287,287,,,287', ',,,,,,287,,,287,287,287,287,287,287,287,287,,287,287,287,,287,287,287', '287,287,,,,,,,,,,,,,,,,,,,,287,,,287,,,287,287,,,287,,,,,,287,,,,,,', ',,287,,,,,287,287,287,287,,287,287,287,287,,,,,287,287,,,,294,294,294', '287,294,287,287,287,294,294,,287,287,294,,294,294,294,294,294,294,294', ',,,,,294,294,294,294,294,294,294,,,294,,,,,,,294,,,294,294,294,294,294', '294,294,294,294,294,294,294,,294,294,294,294,294,,,,,,,,,,,,,,,,,,,', '294,,,294,,,294,294,,,294,,294,,294,,294,,,294,,,,,,294,,,,,294,294', '294,294,,294,294,294,294,,,,,294,294,,,,295,295,295,294,295,294,294', '294,295,295,,294,294,295,,295,295,295,295,295,295,295,,,,,,295,295,295', '295,295,295,295,,,295,,,,,,,295,,,295,295,295,295,295,295,295,295,295', '295,295,295,,295,295,295,295,295,,,,,,,,,,,,,,,,,,,,295,,,295,,,295', '295,,,295,,295,,295,,295,,,295,,,,,,295,,,,,295,295,295,295,,295,295', '295,295,,,,,295,295,,,,303,303,303,295,303,295,295,295,303,303,,295', '295,303,,303,303,303,303,303,303,303,,,,,,303,303,303,303,303,303,303', ',,303,,,,,,,303,,,303,303,303,303,303,303,303,303,303,303,303,303,,303', '303,303,303,303,,,,,,,,,,,,,,,,,,,,303,,,303,,,303,303,,,303,,303,,303', ',303,,,303,,,,,,303,,,,,303,303,303,303,,303,303,303,303,,,,,303,303', '303,,,310,310,310,303,310,303,303,303,310,310,,303,303,310,,310,310', '310,310,310,310,310,,,,,,310,310,310,310,310,310,310,,,310,,,,,,,310', ',,310,310,310,310,310,310,310,310,,310,310,310,,310,310,310,310,310', ',,,,,,,,,,,,,,,,,,,310,,,310,,,310,310,,,310,,,,,,310,,,,,,,,,310,,', ',,310,310,310,310,,310,310,310,310,,,,,310,310,,,,312,312,312,310,312', '310,310,310,312,312,,310,310,312,,312,312,312,312,312,312,312,,,,,,312', '312,312,312,312,312,312,,,312,,,,,,,312,,,312,312,312,312,312,312,312', '312,,312,312,312,,312,312,312,312,312,,,,,,,,,,,,,,,,,,,,312,,,312,', ',312,312,,,312,,,,,,312,,,,,,,,,312,,,,,312,312,312,312,,312,312,312', '312,,,,,312,312,,,,315,315,315,312,315,312,312,312,315,315,,312,312', '315,,315,315,315,315,315,315,315,,,,,,315,315,315,315,315,315,315,,', '315,,,,,,,315,,,315,315,315,315,315,315,315,315,,315,315,315,,315,315', '315,315,315,,,,,,,,,,,,,,,,,,,,315,,,315,,,315,315,,,315,,,,,,315,,', ',,,,,,315,,,,,315,315,315,315,,315,315,315,315,,,,,315,315,,,,316,316', '316,315,316,315,315,315,316,316,,315,315,316,,316,316,316,316,316,316', '316,,,,,,316,316,316,316,316,316,316,,,316,,,,,,,316,,,316,316,316,316', '316,316,316,316,,316,316,316,,316,316,316,316,316,,,,,,,,,,,,,,,,,,', ',316,,,316,,,316,316,,,316,,,,,,316,,,,,,,,,316,,,,,316,316,316,316', ',316,316,316,316,,,,,316,316,,,,,,,316,,316,316,316,,,,316,316,321,321', '321,321,321,,,,321,321,,,,321,,321,321,321,321,321,321,321,,,,,,321', '321,321,321,321,321,321,,,321,,,,,,321,321,,321,321,321,321,321,321', '321,321,321,,321,321,321,,321,321,321,321,321,,,,,,,,,,,,,,,,,,,,321', ',,321,,,321,321,,,321,,321,,,,321,,,,,,,,,321,,,,,321,321,321,321,,321', '321,321,321,,,,,321,321,,,,357,357,357,321,357,321,321,321,357,357,', '321,321,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,', ',,359,359,359,357,359,357,357,357,359,359,,357,357,359,,359,359,359', '359,359,359,359,,,,,,359,359,359,359,359,359,359,,,359,,,,,,,359,,,359', '359,359,359,359,359,359,359,,359,359,359,,359,359,359,359,359,,,,,,', ',,,,,,,,,,,,,359,,,359,359,,359,359,,,359,,,,,,359,,,,,,,,,359,,,,,359', '359,359,359,,359,359,359,359,,,,,359,359,,,,383,383,383,359,383,359', '359,359,383,383,,359,359,383,,383,383,383,383,383,383,383,,,,,,383,383', '383,383,383,383,383,,,383,,,,,,,383,,,383,383,383,383,383,383,383,383', ',383,383,383,,383,383,383,383,383,,,,,,,,,,,,,,,,,,,,383,,,383,,,383', '383,,,383,,,,,,383,,,,,,,,,383,,,,,383,383,383,383,,383,383,383,383', ',,,,383,383,,,,404,404,404,383,404,383,383,383,404,404,,383,383,404', ',404,404,404,404,404,404,404,,,,,,404,404,404,404,404,404,404,,,404', ',,,,,,404,,,404,404,404,404,404,404,404,404,,404,404,404,,404,404,404', '404,404,,,,,,,,,,,,,,,,,,,,404,,,404,,,404,404,,,404,,,,,,404,,,,,,', ',,404,,,,,404,404,404,404,,404,404,404,404,,,,,404,404,,,,433,433,433', '404,433,404,404,404,433,433,,404,404,433,,433,433,433,433,433,433,433', ',,,,,433,433,433,433,433,433,433,,,433,,,,,,,433,,,433,433,433,433,433', '433,433,433,,433,433,433,,433,433,433,433,433,,,,,,,,,,,,,,,,,,,,433', ',,433,,,433,433,,,433,,,,,,433,,,,,,,,,433,,,,,433,433,433,433,,433', '433,433,433,,,,,433,433,,,,,461,,433,,433,433,433,461,461,461,433,433', '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,,461,,461,,461', ',461,461,,461,461,461,461,461,,461,461,461,776,,776,776,776,776,776', ',,,,,,461,,776,461,461,470,461,,461,,,,470,470,470,461,461,470,470,470', ',470,,,776,,,,,470,470,470,470,470,,776,776,,,,776,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,470,470,470,470,,470,470,470,,,,,,,,,,,,,,470,,,470,470', '470,470,,470,,470,471,,,,470,470,,471,471,471,,,471,471,471,,471,,,', ',,,,471,471,471,471,471,,,,708,708,708,708,471,471,,471,471,471,471', '471,,,,,708,708,708,,,,,,,,,,,708,708,,,708,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,,708,708,708', '708,,708,708,708,708,,,,471,708,708,471,471,471,471,,471,708,471,708', '708,708,,471,471,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,,,,485,485,485,483', '485,483,483,483,485,485,,483,483,485,,485,485,485,485,485,485,485,,', ',,,485,485,485,485,485,485,485,,,485,,,,,,,485,,,485,485,485,485,485', '485,485,485,,485,485,485,,485,485,485,485,485,,,,,,,,,,,,,,,,,,,,485', ',,485,,,485,485,,,485,,,,,,485,,,,,,,,,485,,,,,485,485,485,485,,485', '485,485,485,,,,,485,485,,,,486,486,486,485,486,485,485,485,486,486,', '485,485,486,,486,486,486,486,486,486,486,,,,,,486,486,486,486,486,486', '486,,,486,,,,,,,486,,,486,486,486,486,486,486,486,486,,486,486,486,', '486,486,486,486,486,,,,,,,,,,,,,,,,,,,,486,,,486,,,486,486,,,486,,,', ',,486,,,,,,,,,486,,,,,486,486,486,486,,486,486,486,486,,,,,486,486,', ',,487,487,487,486,487,486,486,486,487,487,,486,486,487,,487,487,487', '487,487,487,487,,,,,,487,487,487,487,487,487,487,,,487,,,,,,,487,,,487', '487,487,487,487,487,487,487,,487,487,487,,487,487,487,487,487,,,,,,', ',,,,,,,,,,,,,487,,,487,,,487,487,,,487,,,,,,487,,,,,,,,,487,,,,,487', '487,487,487,,487,487,487,487,,,,,487,487,,,,518,518,518,487,518,487', '487,487,518,518,,487,487,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,,,,527,527,527,518,527,518,518,518,527,527,,518,518,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', ',,,529,529,529,527,529,527,527,527,529,529,,527,527,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,,,,531,531,531,529', '531,529,529,529,531,531,,529,529,531,,531,531,531,531,531,531,531,,', ',,,531,531,531,531,531,531,531,,,531,,,,,,,531,,,531,531,531,531,531', '531,531,531,,531,531,531,,531,531,531,531,531,,,,,,,,,,,,,,,,,,,,531', ',,531,,,531,531,,,531,,,,,,531,,,,,,,,,531,,,,,531,531,531,531,,531', '531,531,531,,,,,531,531,,,,,,,531,,531,531,531,,,,531,531,537,537,537', '537,537,,,,537,537,,,,537,,537,537,537,537,537,537,537,,,,,,537,537', '537,537,537,537,537,,,537,,,,,,537,537,537,537,537,537,537,537,537,537', '537,537,,537,537,537,,537,537,537,537,537,,,,,,,,,,,,,,,,,,,,537,,,537', ',,537,537,,,537,,537,,,,537,,,,,,,,,537,,,,,537,537,537,537,,537,537', '537,537,,,,,537,537,,,,,,537,537,,537,537,537,,,,537,537,547,547,547', ',547,,,,547,547,,,,547,,547,547,547,547,547,547,547,,,,,,547,547,547', '547,547,547,547,,,547,,,,,,,547,,,547,547,547,547,547,547,547,547,547', '547,547,547,,547,547,547,547,547,,,,,,,,,,,,,,,,,,,,547,,,547,,,547', '547,,,547,,547,,547,,547,,,547,,,,,,547,,,,,547,547,547,547,,547,547', '547,547,,,,,547,547,,,,557,557,557,547,557,547,547,547,557,557,,547', '547,557,,557,557,557,557,557,557,557,,,,,,557,557,557,557,557,557,557', ',,557,,,,,,,557,,,557,557,557,557,557,557,557,557,,557,557,557,,557', '557,557,557,557,,,,,,,,,,,,,,,,,,,,557,,,557,,,557,557,,,557,,,,,,557', ',,,,,,,,557,,,,,557,557,557,557,,557,557,557,557,,,,,557,557,,,,560', '560,560,557,560,557,557,557,560,560,,557,557,560,,560,560,560,560,560', '560,560,,,,,,560,560,560,560,560,560,560,,,560,,,,,,,560,,,560,560,560', '560,560,560,560,560,,560,560,560,,560,560,560,560,560,,,,,,,,,,,,,,', ',,,,,560,,,560,,,560,560,,,560,,,,,,560,,,,,,,,,560,,,,,560,560,560', '560,,560,560,560,560,,,,,560,560,,,,563,563,563,560,563,560,560,560', '563,563,,560,560,563,,563,563,563,563,563,563,563,,,,,,563,563,563,563', '563,563,563,,,563,,,,,,,563,,,563,563,563,563,563,563,563,563,,563,563', '563,,563,563,563,563,563,,,,,,,,,,,,,,,,,,,,563,,,563,,,563,563,,,563', ',,,,,563,,,,,,,,,563,,,,,563,563,563,563,,563,563,563,563,,,,,563,563', ',,,564,564,564,563,564,563,563,563,564,564,,563,563,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,,,,589,589,589,564,589,564', '564,564,589,589,,564,564,589,,589,589,589,589,589,589,589,,,,,,589,589', '589,589,589,589,589,,,589,,,,,,,589,,,589,589,589,589,589,589,589,589', ',589,589,589,,589,589,589,589,589,,,,,,,,,,,,,,,,,,,,589,,,589,,,589', '589,,,589,,,,,,589,,,,,,,,,589,,,,,589,589,589,589,,589,589,589,589', ',,,,589,589,,,,602,602,602,589,602,589,589,589,602,602,,589,589,602', ',602,602,602,602,602,602,602,,,,,,602,602,602,602,602,602,602,,,602', ',,,,,,602,,,602,602,602,602,602,602,602,602,,602,602,602,,602,602,602', '602,602,,,,,,,,,,,,,,,,,,,,602,,,602,,,602,602,,,602,,,,,,602,,,,,,', ',,602,,,,,602,602,602,602,,602,602,602,602,,,,,602,602,,,,608,608,608', '602,608,602,602,602,608,608,,602,602,608,,608,608,608,608,608,608,608', ',,,,,608,608,608,608,608,608,608,,,608,,,,,,,608,,,608,608,608,608,608', '608,608,608,608,608,608,608,,608,608,608,608,608,,,,,,,,,,,,,,,,,,,', '608,,,608,,,608,608,,,608,,608,,,,608,,,608,,,,,,608,,,,,608,608,608', '608,,608,608,608,608,,,,,608,608,,,,611,611,611,608,611,608,608,608', '611,611,,608,608,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,611,,611,611,611,611,611,,,,,,,,,,,,,,,,,,,,611,,,611,,,611,611', ',,611,,,,,,611,,,611,,,,,,611,,,,,611,611,611,611,,611,611,611,611,', ',,,611,611,,,,627,627,627,611,627,611,611,611,627,627,,611,611,627,', '627,627,627,627,627,627,627,,,,,,627,627,627,627,627,627,627,,,627,', ',,,,,627,,,627,627,627,627,627,627,627,627,,627,627,627,,627,627,627', '627,627,,,,,,,,,,,,,,,,,,,,627,,,627,,,627,627,,,627,,627,,,,627,,,', ',,,,,627,,,,,627,627,627,627,,627,627,627,627,,,,,627,627,,,,628,628', '628,627,628,627,627,627,628,628,,627,627,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,,,,638,638,638,628,638,628', '628,628,638,638,,628,628,638,,638,638,638,638,638,638,638,,,,,,638,638', '638,638,638,638,638,,,638,,,,,,,638,,,638,638,638,638,638,638,638,638', '638,638,638,638,,638,638,638,638,638,,,,,,,,,,,,,,,,,,,,638,,,638,,', '638,638,,,638,,638,,638,,638,,,638,,,,,,638,,,,,638,638,638,638,,638', '638,638,638,,,,,638,638,,,,,,,638,,638,638,638,,,,638,638,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,,,,668,668,668,666,668,666,666,666,668,668,,666', '666,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,,', ',669,669,669,668,669,668,668,668,669,669,,668,668,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,,,,670,670,670,669,670,669,669', '669,670,670,,669,669,670,,670,670,670,670,670,670,670,,,,,,670,670,670', '670,670,670,670,,,670,,,,,,,670,,,670,670,670,670,670,670,670,670,670', '670,670,670,,670,670,670,670,670,,,,,,,,,,,,,,,,,,,,670,,,670,,,670', '670,,,670,,670,,670,,670,,,670,,,,,,670,,,,,670,670,670,670,,670,670', '670,670,,,,,670,670,,,,,,,670,,670,670,670,,,,670,670,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,,,,674,674,674,673,674,673,673,673,674,674,,673', '673,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,,,,677', '677,677,674,677,674,674,674,677,677,,674,674,677,,677,677,677,677,677', '677,677,,,,,,677,677,677,677,677,677,677,,,677,,,,,,,677,,,677,677,677', '677,677,677,677,677,677,677,677,677,,677,677,677,677,677,,,,,,,,,,,', ',,,,,,,,677,,,677,,,677,677,,,677,,677,,677,,677,,,677,,,,,,677,,,,', '677,677,677,677,,677,677,677,677,,,,,677,677,,,,678,678,678,677,678', '677,677,677,678,678,,677,677,678,,678,678,678,678,678,678,678,,,,,,678', '678,678,678,678,678,678,,,678,,,,,,,678,,,678,678,678,678,678,678,678', '678,678,678,678,678,,678,678,678,678,678,,,,,,,,,,,,,,,,,,,,678,,,678', ',,678,678,,,678,,,,678,,678,,,678,,,,,,678,,,,,678,678,678,678,,678', '678,678,678,,,,,678,678,,,,679,679,679,678,679,678,678,678,679,679,', '678,678,679,,679,679,679,679,679,679,679,,,,,,679,679,679,679,679,679', '679,,,679,,,,,,,679,,,679,679,679,679,679,679,679,679,,679,679,679,', '679,679,679,679,679,,,,,,,,,,,,,,,,,,,,679,,,679,,,679,679,,,679,,,', ',,679,,,,,,,,,679,,,,,679,679,679,679,,679,679,679,679,,,,,679,679,', ',,680,680,680,679,680,679,679,679,680,680,,679,679,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,,,,684,684,684,680,684,680', '680,680,684,684,,680,680,684,,684,684,684,684,684,684,684,,,,,,684,684', '684,684,684,684,684,,,684,,,,,,,684,,,684,684,684,684,684,684,684,684', ',684,684,684,,684,684,684,684,684,,,,,,,,,,,,,,,,,,,,684,,,684,,,684', '684,,,684,,,,,,684,,,,,,,,,684,,,,,684,684,684,684,,684,684,684,684', ',,,,684,684,,,,685,685,685,684,685,684,684,684,685,685,,684,684,685', ',685,685,685,685,685,685,685,,,,,,685,685,685,685,685,685,685,,,685', ',,,,,,685,,,685,685,685,685,685,685,685,685,,685,685,685,,685,685,685', '685,685,,,,,,,,,,,,,,,,,,,,685,,,685,,,685,685,,,685,,,,,,685,,,,,,', ',,685,,,,,685,685,685,685,,685,685,685,685,,,,,685,685,,,,740,740,740', '685,740,685,685,685,740,740,,685,685,740,,740,740,740,740,740,740,740', ',,,,,740,740,740,740,740,740,740,,,740,,,,,,,740,,,740,740,740,740,740', '740,740,740,,740,740,740,,740,740,740,740,740,,,,,,,,,,,,,,,,,,,,740', ',,740,,,740,740,,,740,,,,,,740,,,,,,,,,740,,,,,740,740,740,740,,740', '740,740,740,,,,,740,740,,,,743,743,743,740,743,740,740,740,743,743,', '740,740,743,,743,743,743,743,743,743,743,,,,,,743,743,743,743,743,743', '743,,,743,,,,,,,743,,,743,743,743,743,743,743,743,743,,743,743,743,', '743,743,743,743,743,,,,,,,,,,,,,,,,,,,,743,,,743,,,743,743,,,743,,,', ',,743,,,,,,,,,743,,,,,743,743,743,743,,743,743,743,743,,,,,743,743,', ',,763,763,763,743,763,743,743,743,763,763,,743,743,763,,763,763,763', '763,763,763,763,,,,,,763,763,763,763,763,763,763,,,763,,,,,,,763,,,763', '763,763,763,763,763,763,763,,763,763,763,,763,763,763,763,763,,,,,,', ',,,,,,,,,,,,,763,,,763,,,763,763,,,763,,763,,,,763,,,,,,,,,763,,,,,763', '763,763,763,,763,763,763,763,,,,,763,763,,,,778,778,778,763,778,763', '763,763,778,778,,763,763,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,,,,824,824,824,778,824,778,778,778,824,824,,778,778,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,,,,842,842,842', '824,842,824,824,824,842,842,,824,824,842,,842,842,842,842,842,842,842', ',,,,,842,842,842,842,842,842,842,,,842,,,,,,,842,,,842,842,842,842,842', '842,842,842,,842,842,842,,842,842,842,842,842,,,,,,,,,,,,,,,,,,,,842', ',,842,,,842,842,,,842,,,,,,842,,,,,,,,,842,,,,,842,842,842,842,,842', '842,842,842,,,,,842,842,,,,850,850,850,842,850,842,842,842,850,850,', '842,842,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,,850,850,850,850,,,,,850,850,', ',,863,863,863,850,863,850,850,850,863,863,,850,850,863,,863,863,863', '863,863,863,863,,,,,,863,863,863,863,863,863,863,,,863,,,,,,,863,,,863', '863,863,863,863,863,863,863,,863,863,863,,863,863,863,863,863,,,,,,', ',,,,,,,,,,,,,863,,,863,,,863,863,,,863,,,,,,863,,,,,,,,,863,,,,,863', '863,863,863,,863,863,863,863,,,,,863,863,,,,864,864,864,863,864,863', '863,863,864,864,,863,863,864,,864,864,864,864,864,864,864,,,,,,864,864', '864,864,864,864,864,,,864,,,,,,,864,,,864,864,864,864,864,864,864,864', ',864,864,864,,864,864,864,864,864,,,,,,,,,,,,,,,,,,,,864,,,864,,,864', '864,,,864,,,,,,864,,,,,,,,,864,,,,,864,864,864,864,,864,864,864,864', ',,,,864,864,,,,865,865,865,864,865,864,864,864,865,865,,864,864,865', ',865,865,865,865,865,865,865,,,,,,865,865,865,865,865,865,865,,,865', ',,,,,,865,,,865,865,865,865,865,865,865,865,,865,865,865,,865,865,865', '865,865,,,,,,,,,,,,,,,,,,,,865,,,865,,,865,865,,,865,,,,,,865,,,,,,', ',,865,,,,,865,865,865,865,,865,865,865,865,,,,,865,865,,,,866,866,866', '865,866,865,865,865,866,866,,865,865,866,,866,866,866,866,866,866,866', ',,,,,866,866,866,866,866,866,866,,,866,,,,,,,866,,,866,866,866,866,866', '866,866,866,,866,866,866,,866,866,866,866,866,,,,,,,,,,,,,,,,,,,,866', ',,866,,,866,866,,,866,,,,,,866,,,,,,,,,866,,,,,866,866,866,866,,866', '866,866,866,,,,,866,866,,,,889,889,889,866,889,866,866,866,889,889,', '866,866,889,,889,889,889,889,889,889,889,,,,,,889,889,889,889,889,889', '889,,,889,,,,,,,889,,,889,889,889,889,889,889,889,889,,889,889,889,', '889,889,889,889,889,,,,,,,,,,,,,,,,,,,,889,,,889,,,889,889,,,889,,,', ',,889,,,,,,,,,889,,,,,889,889,889,889,,889,889,889,889,,,,,889,889,', ',,908,908,908,889,908,889,889,889,908,908,,889,889,908,,908,908,908', '908,908,908,908,,,,,,908,908,908,908,908,908,908,,,908,,,,,,,908,,,908', '908,908,908,908,908,908,908,,908,908,908,,908,908,908,908,908,,,,,,', ',,,,,,,,,,,,,908,,,908,,,908,908,,,908,,,,,,908,,,,,,,,,908,,,,,908', '908,908,908,,908,908,908,908,,,,,908,908,,,,935,935,935,908,935,908', '908,908,935,935,,908,908,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,,935,935,935,935', ',,,,935,935,,,,944,944,944,935,944,935,935,935,944,944,,935,935,944', ',944,944,944,944,944,944,944,,,,,,944,944,944,944,944,944,944,,,944', ',,,,,,944,,,944,944,944,944,944,944,944,944,,944,944,944,,944,944,944', '944,944,,,,,,,,,,,,,,,,,,,,944,,,944,,,944,944,,,944,,,,,,944,,,,,,', ',,944,,,,,944,944,944,944,,944,944,944,944,,,,,944,944,,,,949,949,949', '944,949,944,944,944,949,949,,944,944,949,,949,949,949,949,949,949,949', ',,,,,949,949,949,949,949,949,949,,,949,,,,,,,949,,,949,949,949,949,949', '949,949,949,,949,949,949,,949,949,949,949,949,,,,,,,,,,,,,,,,,,,,949', ',,949,,,949,949,,,949,,949,,,,949,,,,,,,,,949,,,,,949,949,949,949,,949', '949,949,949,,,,,949,949,,,,963,963,963,949,963,949,949,949,963,963,', '949,949,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,,,,964,964,964,963,964,963,963,963,964,964,,963,963,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,,964,964,964,964,,,,,964,964,,,,1111,1111,1111,964', '1111,964,964,964,1111,1111,,964,964,1111,,1111,1111,1111,1111,1111,1111', '1111,,,,,,1111,1111,1111,1111,1111,1111,1111,,,1111,,,,,,,1111,,,1111', '1111,1111,1111,1111,1111,1111,1111,,1111,1111,1111,,1111,1111,1111,1111', '1111,,,,,,,,,,,,,,,,,,,,1111,,,1111,,,1111,1111,,,1111,,,,,,1111,,,', ',,,,,1111,,,,,1111,1111,1111,1111,,1111,1111,1111,1111,,,,,1111,1111', ',,,1112,1112,1112,1111,1112,1111,1111,1111,1112,1112,,1111,1111,1112', ',1112,1112,1112,1112,1112,1112,1112,,,,,,1112,1112,1112,1112,1112,1112', '1112,,,1112,,,,,,,1112,,,1112,1112,1112,1112,1112,1112,1112,1112,,1112', '1112,1112,,1112,1112,1112,1112,1112,,,,,,,,,,,,,,,,,,,,1112,,,1112,', ',1112,1112,,,1112,,,,,,1112,,,,,,,,,1112,,,,,1112,1112,1112,1112,,1112', '1112,1112,1112,,,,,1112,1112,,,,1142,1142,1142,1112,1142,1112,1112,1112', '1142,1142,,1112,1112,1142,,1142,1142,1142,1142,1142,1142,1142,,,,,,1142', '1142,1142,1142,1142,1142,1142,,,1142,,,,,,,1142,,,1142,1142,1142,1142', '1142,1142,1142,1142,1142,1142,1142,1142,,1142,1142,1142,1142,1142,,', ',,,,,,,,,,,,,,,,,1142,,,1142,,,1142,1142,,,1142,,1142,,1142,,1142,,', '1142,,,,,,1142,,,,,1142,1142,1142,1142,,1142,1142,1142,1142,,,,,1142', '1142,,,,,515,,1142,,1142,1142,1142,515,515,515,1142,1142,515,515,515', '362,515,362,362,362,362,362,,,515,515,515,,,,362,,,,,,515,515,,515,515', '515,515,515,,898,,898,898,898,898,898,362,,,,,,,,898,362,362,362,362', ',,,362,,363,,363,363,363,363,363,515,,,,,898,,515,363,,,,515,515,898', '898,898,898,,,,898,,,,,,,,,363,,362,,,515,515,,,363,363,363,363,,,,363', '898,,,515,,,515,,37,37,37,515,37,,,,37,37,515,,,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,37,38', '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,,,1023,,1023,1023,1023,1023,1023,', ',,,,,,,1023,,38,38,38,38,,38,38,38,38,,,,,38,38,,,,38,,1023,38,,38,38', '38,76,76,76,,76,1023,1023,,76,76,1023,,,76,,76,76,76,76,76,76,76,,,', ',,76,76,76,76,76,76,76,,,76,,,,,,,76,,,76,76,76,76,76,76,76,76,,76,76', '76,,76,76,,,76,,,,,,,,,,,,,,,,,,,,76,,,76,,,76,76,,,76,,76,,,,,,,,,', ',,,,,,,,76,76,76,76,,76,76,76,76,,,,,76,76,,,,77,77,77,76,77,76,76,76', '77,77,,,,77,,77,77,77,77,77,77,77,,,,,,77,77,77,77,77,77,77,,,77,,,', ',,,77,,,77,77,77,77,77,77,77,77,,77,77,77,,77,77,,,77,,,,,,,,,,,,,,', ',,77,,,77,,,77,,,77,77,,,77,,,,,,,,,,,,,,,,,,,,77,77,77,77,,77,77,77', '77,,,,,77,77,,,,78,78,78,77,78,77,77,77,78,78,,,,78,,78,78,78,78,78', '78,78,,,,,,78,78,78,78,78,78,78,,,78,,,,,,,78,,,78,78,78,78,78,78,78', '78,,78,78,78,,78,78,,,78,,,,,,,,,,,,,,,,,,,,78,,,78,,,78,78,,,78,,,', ',,,,,,,,,,,,,,,,78,78,78,78,,78,78,78,78,,,,,78,78,,,,217,217,217,78', '217,78,78,78,217,217,,,,217,,217,217,217,217,217,217,217,,,,,,217,217', '217,217,217,217,217,,,217,,,,,,,217,,,217,217,217,217,217,217,217,217', ',217,217,217,,217,217,,,217,,,,,,,,,,,,,,,,,,,,217,,,217,,,217,217,', ',217,,217,,,,,,,,,,,,,,,,,,217,217,217,217,,217,217,217,217,,,,,217', '217,,,,220,220,220,217,220,217,217,217,220,220,,,,220,,220,220,220,220', '220,220,220,,,,,,220,220,220,220,220,220,220,,,220,,,,,,,220,,,220,220', '220,220,220,220,220,220,,220,220,220,,220,220,,,220,,,,,,,,,,,,,,,,', ',,,220,,,220,,,220,220,,,220,,220,,,,,,,,,,,,,,,,,,220,220,220,220,', '220,220,220,220,,,,,220,220,,,,329,329,329,220,329,220,220,220,329,329', ',,,329,,329,329,329,329,329,329,329,,,,,,329,329,329,329,329,329,329', ',,329,,,,,,,329,,,329,329,329,329,329,329,329,329,,329,329,329,,329', '329,,,329,,,,,,,,,,,,,,,,,,,,329,,,329,,,329,329,,,329,,,1025,,1025', '1025,1025,1025,1025,,,,,,,,,1025,,329,329,329,329,,329,329,329,329,', ',,,329,329,,,,329,,1025,329,,329,329,329,348,348,348,,348,1025,1025', ',348,348,1025,,,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,,,,545,545', '545,348,545,348,348,348,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,545,545,,545,545,,,545,,,,,,,,,,,,,,,,,,,,545,,,545', ',,545,545,,,545,,,,,,,,,,,,,,,,,,,,545,545,545,545,,545,545,545,545', ',,,,545,545,,,,554,554,554,545,554,545,545,545,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,554,554,,554,554,,,554,,,,,,', ',,,,,,,,,,,,,554,,,554,,,554,554,,,554,,,,,,,,,,,,,,,,,,,,554,554,554', '554,,554,554,554,554,,,,,554,554,,,,746,746,746,554,746,554,554,554', '746,746,,,,746,,746,746,746,746,746,746,746,,,,,,746,746,746,746,746', '746,746,,,746,,,,,,,746,,,746,746,746,746,746,746,746,746,,746,746,746', ',746,746,,,746,,,,,,,,,,,,,,,,,,,,746,,,746,,,746,746,,,746,,,,,,,,', ',,,,,,,,,,,746,746,746,746,,746,746,746,746,,,,,746,746,,,,757,757,757', '746,757,746,746,746,757,757,,,,757,,757,757,757,757,757,757,757,,,,', ',757,757,757,757,757,757,757,,,757,,,,,,,757,,,757,757,757,757,757,757', '757,757,,757,757,757,,757,757,,,757,,,,,,,,,,,,,,,,,,,,757,,,757,,,757', '757,,,757,,,,,,,,,,,,,,,,,,,,757,757,757,757,,757,757,757,757,,,,,757', '757,,,,1008,1008,1008,757,1008,757,757,757,1008,1008,,,,1008,,1008,1008', '1008,1008,1008,1008,1008,,,,,,1008,1008,1008,1008,1008,1008,1008,,,1008', ',,,,,,1008,,,1008,1008,1008,1008,1008,1008,1008,1008,,1008,1008,1008', ',1008,1008,,,1008,,,,,,,,,,,,,,,,,,,,1008,,,1008,,,1008,1008,,,1008', ',,,,,,,,,,,,,,,,,,,1008,1008,1008,1008,,1008,1008,1008,1008,,,,,1008', '1008,,,,1018,1018,1018,1008,1018,1008,1008,1008,1018,1018,,,,1018,,1018', '1018,1018,1018,1018,1018,1018,,,,,,1018,1018,1018,1018,1018,1018,1018', ',,1018,,,,,,,1018,,,1018,1018,1018,1018,1018,1018,1018,1018,,1018,1018', '1018,,1018,1018,,,1018,,,,,,,,,,,,,,,,,,,,1018,,,1018,,,1018,1018,,', '1018,,,,,,,,,,,,,,,,,,,,1018,1018,1018,1018,,1018,1018,1018,1018,,,', ',1018,1018,,,,1086,1086,1086,1018,1086,1018,1018,1018,1086,1086,,,,1086', ',1086,1086,1086,1086,1086,1086,1086,,,,,,1086,1086,1086,1086,1086,1086', '1086,,,1086,,,,,,,1086,,,1086,1086,1086,1086,1086,1086,1086,1086,,1086', '1086,1086,,1086,1086,,,1086,,,,,,,,,,,,,,,,,,,,1086,,,1086,,,1086,1086', ',,1086,,,,,,,,,,,,,,,,,,,,1086,1086,1086,1086,,1086,1086,1086,1086,', ',,,1086,1086,,,,,,,1086,,1086,1086,1086,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,8,8,8,8,8,8,8,8,8,,,8,8,,,,,,,,,,,,,,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9', '9,9,9,9,9,9,9,9,9,9,,,,9,9,9,9,9,9,9,9,9,9,,,,,,9,9,9,9,9,9,9,9,9,,', '9,,,,,,,,9,9,,9,9,9,9,9,9,9,,,9,9,,,,9,9,9,9,,,,,,,,,,,,,,9,9,,9,9,9', '9,9,9,9,9,9,9,9,9,,,9,9,,,,,,,,,,,,,,9,424,424,424,424,424,424,424,424', '424,424,424,424,424,424,424,424,424,424,424,424,424,424,424,424,,,,424', '424,424,424,424,424,424,424,424,424,,,,,,424,424,424,424,424,424,424', '424,424,,,424,,,,,,,,424,424,,424,424,424,424,424,424,424,,,424,424', ',,,424,424,424,424,,,,,,,,,,,,,,424,424,,424,424,424,424,424,424,424', '424,424,424,424,424,,,424,424,,,,,,,,,,,,,,424,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,,664,664,664,664,664', '664,664,664,664,664,664,664,,,664,664,488,488,488,488,,,,,,,,,,664,', ',488,488,488,488,,,616,488,616,616,616,616,616,488,488,,,488,,,,616', ',,,,,,,,,,,,,,,488,,,488,,,616,488,,,488,,,,,616,616,616,616,,,,616', ',,,488,,,,488,488,488,488,,488,488,488,488,,,,,488,488,869,869,869,869', ',,488,,488,488,488,,,,488,488,869,869,869,869,,,772,869,772,772,772', '772,772,869,869,,,869,,,,772,,,,,,,,,,,,,,,,869,,,869,,,772,869,,,869', ',,,,772,772,772,772,,,,772,,,,869,,,,869,869,869,869,,869,869,869,869', ',,,,869,869,872,872,872,872,,,869,,869,869,869,,,,869,869,872,872,872', '872,,,,872,872,,,,,872,872,,,872,872,,,,,,,,,,,,,,,,,,,872,,,872,,,', '872,,,872,,872,,,,,,,872,,,,,,,872,,,,872,872,872,872,,872,872,872,872', ',,,,872,872,873,873,873,873,,,872,,872,872,872,,,,872,872,873,873,873', '873,,,,873,873,,,,,873,873,,,873,873,,,,,,,,,,,,,,,,,,,873,,,873,,,', '873,,,873,,873,,,,,,,873,,,,,,,873,,,,873,873,873,873,,873,873,873,873', ',,,,873,873,875,875,875,875,,,873,,873,873,873,,,,873,873,875,875,875', '875,,,774,875,774,774,774,774,774,875,875,,,875,,,,774,,,,,,,,,,,,,', ',,875,,,875,,,774,875,,,875,,875,,,774,774,774,774,,,,774,,,,875,,,', '875,875,875,875,,875,875,875,875,,,,,875,875,880,880,880,880,,,875,', '875,875,875,,,,875,875,880,880,880,880,,,1021,880,1021,1021,1021,1021', '1021,880,880,,,880,,,,1021,,,,,,,,,,,,,,,,880,,,880,,,1021,880,,,880', ',,,,1021,1021,1021,1021,,,,1021,,,,880,,,,880,880,880,880,,880,880,880', '880,,,,,880,880,948,948,948,948,,,880,,880,880,880,,,,880,880,948,948', '948,948,,,,948,948,,,,,948,948,,,948,948,,,,,,,,,,,,,,,,,,,948,,,948', ',,,948,,,948,,948,,,,,,,948,,,,,,,948,,,,948,948,948,948,,948,948,948', '948,,,,,948,948,972,972,972,972,,,948,,948,948,948,,,,948,948,972,972', '972,972,,,1027,972,1027,1027,1027,1027,1027,972,972,,,972,,,,1027,,', ',,,,,,,,,,,,,972,,,972,,,1027,972,,,972,,972,,,,,1027,1027,,,,1027,', ',,972,,,,972,972,972,972,,972,972,972,972,,,,,972,972,980,980,980,980', ',,972,,972,972,972,,,,972,972,980,980,980,980,,,1078,980,1078,1078,1078', '1078,1078,980,980,,,980,,,,1078,,,,,,,,,,,,,,,,980,,,980,,,1078,980', ',,980,,,,,1078,1078,1078,1078,,,,1078,,,,980,,,,980,980,980,980,,980', '980,980,980,,,,,980,980,1061,1061,1061,1061,,,980,,980,980,980,,,,980', '980,1061,1061,1061,1061,,,1080,1061,1080,1080,1080,1080,1080,1061,1061', ',,1061,,,,1080,,,,,,,,,,,,,,,,1061,,,1061,,,1080,1061,,,1061,,,,,1080', '1080,1080,1080,,,,1080,,,,1061,,,,1061,1061,1061,1061,,1061,1061,1061', '1061,,,,,1061,1061,1113,1113,1113,1113,,,1061,,1061,1061,1061,,,,1061', '1061,1113,1113,1113,1113,,,1082,1113,1082,1082,1082,1082,1082,1113,1113', ',,1113,,,,1082,,,,,,,,,,,,,,,,1113,,,1113,,,1082,1113,,,1113,,1113,', ',,,1082,1082,,,,1082,,,,1113,,,,1113,1113,1113,1113,,1113,1113,1113', '1113,,,,,1113,1113,1120,1120,1120,1120,,,1113,,1113,1113,1113,,,,1113', '1113,1120,1120,1120,1120,,,1146,1120,1146,1146,1146,1146,1146,1120,1120', ',,1120,,,,1146,,,,,,,,,,,,,,,,1120,,,1120,,,1146,1120,,,1120,,,,,,,1146', '1146,,,,1146,,,,1120,,,,1120,1120,1120,1120,,1120,1120,1120,1120,,,', ',1120,1120,1121,1121,1121,1121,,,1120,,1120,1120,1120,,,,1120,1120,1121', '1121,1121,1121,,,1166,1121,1166,1166,1166,1166,1166,1121,1121,,,1121', ',,,1166,,,,,,,,,,,,,,,,1121,,,1121,,,1166,1121,,,1121,,,,,1166,1166', '1166,1166,,,,1166,,,,1121,,,,1121,1121,1121,1121,,1121,1121,1121,1121', ',,,,1121,1121,1161,1161,1161,1161,,,1121,,1121,1121,1121,,,,1121,1121', '1161,1161,1161,1161,,,1168,1161,1168,1168,1168,1168,1168,1161,1161,', ',1161,,,,1168,,,,,,,,,,,,,,,,1161,,,1161,,,1168,1161,,,1161,,,,,,,1168', '1168,,,,1168,,,,1161,,,,1161,1161,1161,1161,,1161,1161,1161,1161,,,', ',1161,1161,1164,1164,1164,1164,,,1161,,1161,1161,1161,,,,1161,1161,1164', '1164,1164,1164,,,1170,1164,1170,1170,1170,1170,1170,1164,1164,,,1164', ',,,1170,,,,,,,,,,,,,,,,1164,,,1164,,,1170,1164,,,1164,,,,,,,1170,1170', ',,,1170,,,,1164,,,,1164,1164,1164,1164,,1164,1164,1164,1164,,,,,1164', '1164,,,,,,,1164,,1164,1164,1164,,,,1164,1164,24,24,24,24,24,24,24,24', '24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,,,,24,24,24,24,24,24', '24,24,24,24,,,,,,24,24,24,24,24,24,24,24,24,24,24,24,,24,,,,,,24,24', ',24,24,24,24,24,24,24,,,24,24,,,,24,24,24,24,,,,,,24,,,,,,,,24,24,,24', '24,24,24,24,24,24,24,24,24,24,24,,,24,724,724,724,724,724,724,724,724', '724,724,724,724,724,724,724,724,724,724,724,724,724,724,724,724,,,,724', '724,724,724,724,724,724,724,724,724,,,,,,724,724,724,724,724,724,724', '724,724,,,724,,,,,,,,724,724,,724,724,724,724,724,724,724,,,724,724', ',,,724,724,724,724,,,,,,,,,,,,,,724,724,,724,724,724,724,724,724,724', '724,724,724,724,724,,,724,881,881,881,881,,,,378,,378,378,378,378,378', ',,881,881,881,,,,378,,,,,,,881,881,,,881,882,882,882,882,,,,,,,378,378', ',,,,882,882,882,378,378,378,378,,,,378,,,882,882,,,882,,,,,,,,,,,,,', ',,881,881,881,881,,881,881,881,881,,,,,881,881,,,,,,,881,,881,881,881', ',,,,,,,,882,882,882,882,,882,882,882,882,,,,,882,882,223,223,,,223,', '882,,882,882,882,,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,223,,224,,,,,,,,224,224,,224,224,224,224', '224,224,224,,,224,224,,,,224,224,224,224,,,,,,224,,,,,,,,224,224,,224', '224,224,224,224,224,224,224,224,224,224,224,225,225,224,,225,,,,,,,', '225,225,,225,225,225,225,225,225,225,,,225,225,,,,225,225,225,225,,', ',,,,,,,,,,,225,225,,225,225,225,225,225,225,225,225,225,225,225,225', '290,290,225,,290,,,,,,,,290,290,,290,290,290,290,290,290,290,,,290,290', ',,,290,290,290,290,,,,,,,,,,,,,,290,290,,290,290,290,290,290,290,290', '290,290,290,290,290,481,481,290,,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,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', '548,548,482,,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,549,549,548,,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,558,558,549,,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,559,559,558,,559,,,,,,,,559,559,,559,559,559,559,559,559,559,,,559', '559,,,,559,559,559,559,,,,,,559,,,,,,,,559,559,,559,559,559,559,559', '559,559,559,559,559,559,559,629,629,559,,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,630,630,629,,630', ',,,,,,,630,630,,630,630,630,630,630,630,630,,,630,630,,,,630,630,630', '630,,,,,,630,,,,,,,,630,630,,630,630,630,630,630,630,630,630,630,630', '630,630,636,636,630,,636,,,,,,,,636,636,,636,636,636,636,636,636,636', ',,636,636,,,,636,636,636,636,,,,,,636,,,,,,,,636,636,,636,636,636,636', '636,636,636,636,636,636,636,636,637,637,636,,637,,,,,,,,637,637,,637', '637,637,637,637,637,637,,,637,637,,,,637,637,637,637,,,,,,637,,,,,,', ',637,637,,637,637,637,637,637,637,637,637,637,637,637,637,671,671,637', ',671,,,,,,,,671,671,,671,671,671,671,671,671,671,,,671,671,,,,671,671', '671,671,,,,,,671,,,,,,,,671,671,,671,671,671,671,671,671,671,671,671', '671,671,671,672,672,671,,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,1139,1139,672,,1139,,,,,,,,1139', '1139,,1139,1139,1139,1139,1139,1139,1139,,,1139,1139,,,,1139,1139,1139', '1139,,,,,,1139,,,,,,,,1139,1139,,1139,1139,1139,1139,1139,1139,1139', '1139,1139,1139,1139,1139,1143,1143,1139,,1143,,,,,,,,1143,1143,,1143', '1143,1143,1143,1143,1143,1143,,,1143,1143,,,,1143,1143,1143,1143,,,', ',,1143,,,,,,,,1143,1143,,1143,1143,1143,1143,1143,1143,1143,1143,1143', '1143,1143,1143,1144,1144,1143,,1144,,,,,,,,1144,1144,,1144,1144,1144', '1144,1144,1144,1144,,,1144,1144,,,,1144,1144,1144,1144,,,,,,1144,,,', ',,,,1144,1144,,1144,1144,1144,1144,1144,1144,1144,1144,1144,1144,1144', '1144,,1172,1144,1172,1172,1172,1172,1172,1198,,1198,1198,1198,1198,1198', ',1172,,,,,,,1198,,,,,,,,,,,,,,,1172,,,,,,,1198,,,,1172,1172,,,,1172', ',1198,1198,,,,1198' ] racc_action_check = arr = ::Array.new(28032, 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 = [ 986, 33, nil, 127, nil, 5190, 1261, -56, 24467, 24595, -24, nil, -5, 58, 126, 303, 172, 184, 380, 123, nil, -68, 5321, 1856, 26451, 256, nil, -19, nil, 10, 5455, 5565, 5699, 5830, 5961, nil, 1131, 22347, 22478, nil, 229, 201, 587, 313, 6092, 6223, 112, 6354, 6485, 667, 6616, 244, 298, 343, 384, nil, nil, nil, nil, nil, nil, nil, nil, nil, 6750, nil, 6892, 7023, 7154, 5, nil, 7285, 7416, nil, nil, 7547, 22617, 22748, 22879, nil, nil, nil, nil, nil, 225, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 0, nil, nil, 112, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 446, nil, 7691, nil, nil, nil, nil, 7835, 7966, 8097, 8228, 8372, nil, 1276, nil, 562, 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, 325, nil, 1421, 8503, 8634, 23010, 8765, 8896, 23141, 9027, 9158, 26760, 26821, 26882, nil, nil, 9289, 9420, 9551, nil, nil, 388, -66, -57, 438, -1, 351, 424, nil, 9682, 1566, 425, nil, 9813, 9944, 10075, 10206, 10337, 10468, 10599, 10730, 10861, 10992, 11123, 11254, 11385, 11516, 11647, 11778, 11909, 12040, 12171, 12302, 12433, 12564, nil, nil, nil, nil, 12695, nil, nil, 317, 378, 422, 518, 520, 533, 562, 584, 590, 592, nil, nil, nil, 12826, nil, nil, 26943, nil, nil, 425, 12957, 13088, nil, nil, nil, nil, nil, nil, nil, 13219, nil, 2726, nil, 404, 434, nil, 13350, 488, 13481, nil, nil, 13612, 13743, nil, nil, 154, nil, 13887, 1406, 468, 440, 1711, 471, 522, 500, 23272, 1856, 414, 448, 521, 586, 554, nil, 612, 575, 122, 622, 626, nil, nil, nil, 628, 139, 607, 23411, nil, 627, 588, 3741, 3886, 679, nil, 690, 14018, nil, 14149, 611, 2001, 22181, 22236, 615, 2146, 2291, 1551, 633, nil, 179, 378, 672, 663, 515, 691, nil, nil, 26635, 388, 2001, -1, 26, 14280, 2436, 2581, 183, 763, 645, 745, 851, 700, 726, 1856, 759, nil, nil, 344, 484, 4, nil, 812, nil, 678, 14411, nil, nil, 328, 370, 410, 414, 468, -45, -35, 511, nil, nil, nil, nil, nil, nil, nil, nil, 675, 24723, nil, nil, nil, nil, 678, nil, 749, 675, 14542, 676, nil, nil, 670, nil, 857, 107, 774, nil, nil, 2146, nil, nil, nil, nil, nil, nil, nil, nil, nil, 2291, 690, nil, 690, 691, 686, 727, 14676, nil, nil, nil, 224, 336, 738, nil, nil, 14808, 14946, nil, nil, nil, nil, nil, nil, -35, nil, 754, 27004, 27065, 15088, 140, 15219, 15350, 15481, 24935, 4031, 4176, 568, 834, 779, 780, 784, 785, 5699, 5830, 5961, 4321, 4466, 4611, 4756, 4901, 5046, 684, 796, 5190, 5321, 2871, 5404, nil, -33, nil, 22217, nil, nil, 15612, 722, 727, nil, nil, nil, 736, nil, nil, 15743, nil, 15874, nil, 16005, nil, 256, nil, nil, nil, 16149, 1696, nil, 737, 735, nil, nil, 736, 23542, 745, 16293, 27126, 27187, 884, 795, nil, nil, 23673, 753, nil, 16424, 27248, 27309, 16555, 5517, 3016, 16686, 16817, 883, 882, 762, 763, 762, 764, 770, nil, 771, 787, 792, nil, nil, nil, nil, nil, nil, nil, nil, nil, 783, 1552, nil, nil, 16948, nil, nil, nil, -2, nil, nil, nil, 888, nil, nil, 905, 305, 17079, 948, 949, 836, 884, nil, 17210, nil, nil, 17341, nil, nil, nil, nil, 24938, nil, 2726, 964, nil, 2871, -20, 969, 970, 37, 971, 17472, 17603, 27370, 27431, 2001, nil, nil, 1002, nil, 27492, 27553, 17734, nil, nil, 193, 3016, nil, nil, nil, 906, nil, nil, nil, 866, nil, nil, 265, nil, 326, nil, nil, 861, nil, 864, nil, nil, nil, 24851, nil, 17878, 878, 18009, 18140, 18271, 27614, 27675, 18415, 18546, 739, 918, 18677, 18808, 18939, 19070, 917, nil, nil, 19201, 19332, 918, nil, nil, nil, 218, 219, 476, 616, 893, 938, nil, 919, nil, nil, 440, 98, -79, nil, 521, nil, nil, 6750, 14946, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 978, 195, nil, 910, 26564, nil, 1037, nil, 1025, 32, nil, nil, nil, 942, 948, 1054, nil, 931, nil, 978, 19463, nil, nil, 19594, nil, -86, 23804, 934, nil, 938, 977, 1028, 980, 1122, 1147, 983, 940, 23935, nil, 1009, -14, 2436, 1062, 19725, nil, nil, nil, 292, nil, nil, 550, nil, 25036, nil, 25330, nil, 14739, nil, 19856, nil, 1582, nil, 947, 949, 1037, 954, nil, nil, nil, nil, nil, nil, 2581, nil, nil, nil, nil, 521, -23, 955, 665, nil, 1083, nil, nil, nil, nil, nil, 1089, 1090, nil, nil, 32, 970, 1267, 1412, 1557, 2291, 3161, 1173, 1265, nil, 980, 3306, 19987, nil, 1102, nil, nil, nil, nil, nil, 3451, nil, nil, nil, nil, nil, nil, nil, nil, 980, 20118, 986, 252, 270, 728, 840, nil, 3161, 20249, nil, 985, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 20380, 20511, 20642, 20773, 285, 1072, 25033, 86, 191, 25131, 25229, 291, 25327, nil, 865, nil, 1014, 25425, 26647, 26681, nil, nil, nil, nil, nil, nil, 20904, nil, nil, 1019, nil, nil, 1016, nil, nil, 22211, 3596, nil, nil, nil, nil, 1005, 1318, nil, nil, 21035, 1131, nil, 3741, 1010, 1068, nil, nil, 1023, nil, 1107, nil, nil, 1026, 1035, nil, 1039, 1040, nil, 1041, nil, nil, 1057, 1697, 1005, nil, nil, 21166, nil, nil, nil, nil, 1056, 1107, 1193, nil, 21297, 1194, nil, nil, 25523, 21428, 3886, 1702, 1195, nil, 1198, 345, 4031, nil, 1081, 1076, 419, nil, nil, 21559, 21690, nil, nil, nil, nil, -70, 1080, 1082, 25621, nil, 1080, -41, 1081, nil, nil, nil, 25719, nil, nil, -1, 1087, 1088, nil, 1090, 1091, nil, nil, 73, nil, nil, 3306, 4176, nil, 1092, 1094, 1096, nil, 1097, 1100, 1102, nil, 1128, 1108, 1093, 24066, nil, nil, nil, 3451, nil, 4321, nil, nil, 33, 24197, nil, nil, 25428, nil, 22525, nil, 23319, nil, 25624, nil, nil, nil, nil, 1109, 1110, 3596, 4466, 4611, 1327, nil, nil, 34, nil, 36, 668, -69, nil, nil, nil, 379, nil, nil, nil, 1235, nil, nil, nil, 1158, 1122, -32, nil, 1123, 25817, 906, 1171, 259, nil, nil, nil, nil, nil, nil, 147, nil, nil, 1101, nil, nil, nil, 25722, nil, 25820, nil, 25918, nil, nil, 1152, 24328, 1292, 1208, nil, 4756, 40, 42, 1404, 1213, 92, nil, 1139, 1140, 1141, 1150, 1475, 1620, 1171, 1279, 547, nil, nil, nil, 4901, nil, 21821, 21952, 25915, nil, nil, nil, nil, nil, 1179, 26013, 26111, 1180, nil, nil, nil, nil, nil, 1184, nil, nil, 1185, 1186, 1199, 1203, nil, 1212, nil, 1410, 27736, nil, 1339, 22083, 27797, 27858, 106, 26016, nil, nil, nil, nil, 1214, nil, nil, nil, 1466, 741, 5046, nil, nil, nil, 26209, 1215, 1217, 26307, nil, 26114, nil, 26212, nil, 26310, nil, 27920, nil, nil, 1263, 1264, nil, 1225, 138, 145, 146, 185, 1224, nil, nil, 403, 1226, nil, 1229, 1230, 1232, 1233, 147, nil, nil, nil, nil, 27927, nil, nil, nil, nil, 1237, nil ] racc_action_default = [ -3, -720, -1, -705, -4, -720, -7, -720, -720, -720, -720, -30, -720, -720, -35, -36, -720, -720, -720, -306, -52, -707, -720, -59, -720, -67, -68, -69, -73, -283, -283, -283, -319, -346, -347, -85, -12, -89, -97, -99, -720, -604, -605, -720, -720, -720, -720, -720, -720, -237, -720, -707, -616, -616, -255, -297, -298, -299, -300, -301, -302, -303, -304, -305, -693, -308, -312, -719, -683, -327, -407, -720, -720, -61, -61, -705, -720, -720, -720, -348, -349, -352, -544, -545, -546, -547, -568, -550, -551, -570, -572, -555, -560, -564, -566, -582, -583, -584, -568, -586, -588, -589, -590, -591, -691, -593, -594, -692, -596, -597, -598, -599, -600, -601, -602, -603, -608, -609, -720, -2, -706, -715, -716, -717, -6, -720, -720, -720, -720, -720, -8, -3, -18, -720, -128, -129, -130, -131, -132, -133, -134, -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, -205, -206, -207, -208, -23, -135, -12, -720, -720, -720, -720, -720, -720, -720, -273, -720, -720, -720, -703, -704, -720, -720, -707, -708, -56, -720, -604, -605, -720, -306, -720, -720, -243, -720, -12, -720, -57, -220, -221, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -720, -256, -257, -258, -259, -720, -63, -64, -720, -128, -129, -168, -169, -170, -186, -191, -198, -201, -604, -605, -681, -720, -416, -418, -720, -701, -702, -74, -273, -720, -326, -422, -431, -433, -80, -428, -81, -707, -82, -262, -278, -287, -287, -282, -720, -288, -720, -568, -685, -720, -720, -83, -84, -705, -13, -720, -16, -720, -87, -12, -707, -720, -90, -93, -12, -105, -106, -720, -720, -113, -319, -322, -707, -720, -616, -616, -346, -347, -351, -429, -720, -95, -720, -101, -316, -720, -222, -223, -587, -231, -232, -720, -244, -720, -615, -12, -639, -639, -615, -12, -12, -310, -707, -263, -712, -712, -720, -720, -712, -720, -328, -329, -639, -60, -59, -720, -720, -720, -12, -12, -705, -720, -706, -114, -115, -720, -720, -122, -720, -362, -363, -123, -124, -720, -126, -720, -306, -612, -720, -342, -548, -720, -720, -720, -720, -720, -720, -720, -720, 1205, -5, -718, -24, -25, -26, -27, -28, -720, -720, -20, -21, -22, -136, -720, -31, -34, -293, -720, -720, -292, -32, -720, -41, -720, -306, -49, -51, -209, -267, -288, -39, -40, -53, -54, -37, -38, -42, -210, -267, -707, -274, -287, -287, -694, -695, -283, -426, -696, -697, -695, -694, -283, -425, -427, -696, -697, -350, -694, -695, -48, -217, -55, -707, -325, -720, -720, -720, -273, -316, -720, -720, -720, -720, -218, -219, -224, -225, -226, -227, -228, -229, -233, -234, -235, -236, -238, -239, -240, -241, -242, -245, -246, -247, -248, -707, -260, -65, -707, -437, -283, -71, -75, -640, -707, -707, -284, -435, -437, -707, -321, -279, -720, -280, -720, -285, -720, -289, -720, -688, -690, -11, -706, -15, -17, -707, -86, -314, -102, -91, -720, -707, -273, -720, -720, -112, -720, -615, -587, -720, -98, -103, -720, -720, -720, -720, -261, -249, -720, -720, -536, -720, -707, -707, -680, -680, -680, -622, -624, -624, -624, -638, -640, -641, -642, -643, -644, -645, -646, -647, -648, -720, -650, -652, -654, -659, -661, -662, -665, -670, -672, -673, -675, -676, -677, -720, -720, -720, -720, -720, -707, -720, -264, -714, -713, -266, -714, -317, -318, -684, -408, -639, -411, -12, -353, -354, -12, -720, -720, -720, -720, -720, -720, -273, -720, -720, -121, -61, -123, -124, -125, -720, -720, -273, -338, -610, -720, -12, -549, -569, -574, -720, -576, -552, -571, -720, -573, -554, -720, -557, -720, -559, -562, -720, -563, -720, -585, -9, -19, -720, -29, -720, -296, -720, -720, -273, -720, -720, -720, -720, -430, -720, -275, -277, -720, -720, -76, -272, -423, -720, -720, -78, -424, -324, -709, -694, -695, -694, -695, -707, -58, -456, -458, -460, -463, -517, -470, -473, -476, -510, -515, -516, -720, -720, -520, -521, -522, -523, -524, -525, -526, -527, -528, -407, -530, -720, -720, -534, -720, -720, -682, -720, -438, -70, -419, -435, -269, -270, -720, -397, -720, -320, -287, -286, -290, -720, -686, -687, -720, -14, -88, -720, -94, -100, -707, -108, -110, -271, -109, -111, -720, -96, -720, -216, -230, -707, -251, -719, -719, -344, -613, -614, -720, -619, -620, -720, -621, -720, -631, -720, -634, -720, -636, -720, -364, -720, -366, -368, -371, -374, -707, -653, -663, -664, -674, -678, -617, -253, -345, -309, -311, -313, -712, -720, -707, -719, -355, -719, -62, -356, -357, -332, -333, -720, -720, -443, -335, -720, -707, -117, -119, -118, -120, -12, -123, -124, -127, -707, -12, -720, -340, -720, -575, -578, -579, -580, -581, -12, -553, -556, -558, -561, -565, -567, -137, -33, -294, -720, -707, -694, -695, -695, -694, -50, -268, -720, -710, -287, -44, -212, -45, -213, -77, -46, -215, -47, -214, -79, -720, -720, -720, -720, -430, -720, -720, -461, -462, -720, -720, -720, -720, -472, -720, -475, -720, -720, -513, -514, -518, -519, -529, -531, -124, -532, -720, -66, -417, -397, -421, -420, -720, -432, -398, -707, -12, -434, -281, -291, -689, -92, -107, -104, -323, -720, -719, -360, -12, -537, -719, -538, -539, -680, -660, -665, -679, -623, -624, -624, -651, -624, -624, -671, -624, -648, -666, -707, -720, -720, -373, -649, -720, -265, -409, -412, -414, -401, -720, -720, -358, -720, -720, -334, -336, -720, -720, -12, -116, -720, -430, -720, -720, -12, -343, -720, -295, -430, -43, -211, -276, -720, -457, -459, -466, -469, -478, -707, -707, -479, -485, -720, -490, -496, -498, -500, -501, -504, -505, -568, -508, -707, -707, -533, -707, -707, -568, -711, -707, -511, -512, -250, -12, -72, -680, -680, -680, -379, -381, -381, -381, -396, -720, -707, -648, -656, -657, -668, -436, -252, -10, -12, -543, -361, -720, -720, -541, -618, -720, -627, -720, -629, -720, -632, -720, -635, -637, -365, -367, -369, -372, -254, -12, -12, -720, -410, -330, -720, -331, -720, -448, -451, -454, -455, -290, -719, -337, -339, -611, -720, -577, -464, -465, -494, -480, -483, -486, -488, -720, -497, -503, -720, -507, -509, -467, -468, -471, -474, -720, -477, -439, -720, -376, -377, -378, -387, -389, -720, -392, -720, -394, -399, -720, -720, -655, -720, -542, -12, -604, -605, -720, -720, -306, -540, -624, -624, -624, -624, -720, -720, -720, -720, -707, -403, -405, -406, -12, -444, -720, -720, -452, -440, -441, -442, -341, -487, -481, -720, -720, -491, -492, -495, -499, -502, -506, -680, -658, -380, -381, -381, -381, -381, -669, -381, -400, -667, -720, -316, -536, -273, -720, -720, -316, -720, -625, -628, -630, -633, -370, -413, -415, -402, -720, -719, -12, -449, -450, -453, -720, -484, -489, -720, -375, -720, -384, -720, -386, -720, -390, -720, -393, -395, -315, -698, -535, -707, -694, -695, -698, -315, -624, -404, -359, -719, -482, -493, -381, -381, -381, -381, -430, -626, -445, -446, -447, -720, -382, -385, -388, -391, -381, -383 ] clist = [ '42,306,306,306,223,42,369,232,289,273,407,328,123,291,455,13,272,297', '301,376,13,626,414,377,285,762,517,809,555,132,213,741,453,942,137,137', '42,332,332,476,140,140,618,621,675,733,435,436,635,354,137,13,6,384', '385,381,382,6,120,386,878,347,130,290,779,909,42,607,610,926,324,614', '528,461,467,472,390,285,285,695,941,13,785,365,123,2,519,119,738,1002', '738,395,17,899,566,124,1135,17,603,604,1031,585,585,883,884,945,293', '300,302,418,419,420,421,741,1,1033,520,585,367,1013,42,970,984,452,987', '744,1106,923,17,42,475,42,567,601,1108,13,403,405,396,212,515,304,317', '318,13,326,13,431,617,360,364,442,424,308,308,308,442,327,17,387,307', '307,307,442,971,985,922,726,924,988,653,655,6,488,576,576,735,803,274', '1005,741,422,1135,6,568,724,730,664,371,374,576,306,357,372,729,370', '286,373,394,639,430,441,366,605,368,823,441,340,340,956,416,462,17,441', '42,642,423,390,1032,481,390,17,528,17,1004,747,1006,1105,615,13,937', '437,446,798,756,450,437,533,738,738,1046,1122,42,437,1184,1035,340,340', '340,1036,471,995,1108,895,773,775,777,13,779,808,291,514,933,306,306', '649,651,654,654,1131,522,1031,306,523,892,694,930,992,993,447,1114,1042', '451,867,1151,821,1195,1085,948,1157,876,1043,1003,1045,965,966,476,872', '453,873,1162,1163,875,877,880,1124,17,1125,17,1126,512,913,1017,17,406', '408,926,341,341,548,17,42,556,409,410,42,411,297,123,332,42,461,467', '301,17,429,13,558,905,749,13,1187,412,434,434,13,1070,413,332,553,827', '1115,544,832,824,585,341,341,341,324,921,42,1160,327,324,42,42,622,758', '917,888,365,1129,538,537,826,13,629,539,,13,13,923,,42,42,799,340,,1185', '340,,,,,123,,229,752,13,13,,951,536,521,,,,752,779,779,953,524,17,857', '1097,308,17,,862,813,,17,307,308,671,904,359,576,,822,307,960,923,540', ',,,,546,,,,344,344,663,327,,,682,137,327,306,17,,687,140,17,17,,968', ',843,969,969,741,969,,,462,625,991,1132,950,1133,,17,17,,752,,,344,344', '344,,,752,717,1196,854,856,,,936,859,861,341,,340,341,901,,682,,623', '624,,471,,835,585,835,585,,,306,,340,556,,461,467,986,738,,,923,556', ',,,,,,,462,42,681,1044,,,,,686,332,462,,,768,769,771,13,,332,,954,,', ',1189,,,,,,,,,,,1063,,1067,1068,471,1069,,,779,779,853,855,,,471,858', '860,1197,379,379,,728,379,914,,,306,,,,1177,1022,1024,442,1026,1028', '306,1029,341,791,,818,,442,442,901,462,42,442,442,42,,344,,462,344,', '341,17,999,804,,13,,,13,1007,1057,306,,,42,379,379,379,379,,737,,825', ',,,441,,471,13,,462,,962,471,,441,441,42,,,441,441,885,,42,854,856,861', '859,1090,894,,13,1116,,437,839,,918,13,1052,137,,,,437,437,140,,471', '437,437,1109,915,1110,969,,,717,717,890,17,893,,17,551,340,272,,840', ',556,,,,340,848,,1123,1073,797,,906,,,17,344,448,449,,800,682,,802,687', '606,,332,477,478,,137,,961,,344,812,,332,17,,585,17,,,,17,925,1193,927', '1104,,17,17,,,962,17,17,1147,1148,1149,1150,,,,442,1123,1123,,,,,983', '983,,,,983,852,,,,,,,513,,,955,,999,,999,,999,,,1007,42,1007,,,,42,', '341,,1123,,,1188,676,42,13,341,441,,,13,,,,,,,,,13,1015,,,,1019,,,,', ',,,,,,,1194,437,,,983,717,,,717,717,,717,,,,,717,717,717,,,,723,,,,1001', '434,916,,,,1020,,999,42,999,379,999,,999,1007,1064,,,,17,42,,1071,13', '17,340,,,,,,641,,17,,13,340,1040,,999,,,,1178,,,,,952,,,17,,,,,,717', ',42,344,,958,,,42,,,,344,,,,1051,13,,,,,,13,717,,,,,1075,1076,1077,717', ',983,,,,,,,,,17,,752,918,42,,,,,,,,17,,,,,285,,13,479,,1098,42,1099', ',1100,1092,,1011,,18,998,,,341,18,,13,,,1016,1096,1008,42,42,341,,,', ',17,,233,,709,,17,,13,13,,,233,233,233,,18,333,333,717,,,,,,,,,676,1048', '1134,,1136,,,676,879,1143,,760,,,525,,285,17,18,,42,,,233,233,1158,1159', '233,391,401,401,,,,,13,17,541,1165,42,,306,,717,,,,,,,717,717,,,13,676', ',17,17,,,462,,,,1089,,,1183,,,,18,,,,,233,233,233,233,18,344,18,,,1103', '42,1190,,1191,717,1192,344,717,471,,,,,471,,13,,,940,,,340,,,,17,,,311', '311,311,340,676,1203,,,,,19,,,676,1128,19,17,,998,,998,919,998,,919', '1008,1141,,,1008,,1008,,1008,676,311,375,,,,,,,,,1156,19,335,335,,,18', '233,439,391,233,233,391,439,233,,,676,,17,439,233,233,,,,340,,,688,', '19,,,18,709,709,,,,,393,402,402,940,,,,1186,,,,,,,,,,341,,,998,,998', '725,998,,998,341,,731,732,1008,,1008,736,1008,,1008,233,,,,,,19,233', '233,,,,745,,998,19,233,19,748,,,,,,,1008,,,1000,,,,,379,18,1079,1081', '1083,18,765,766,,333,18,,,,,,,,676,676,,676,879,,341,,432,445,333,,', '710,,311,,,,,,,940,18,,,795,18,18,,,,,,,,,,,,,,,,,233,18,18,,19,,440', '393,,344,393,440,,,,,,,440,344,,233,709,,,709,709,,709,,,,19,709,709', '709,,,,,,,311,311,,,,,,,,311,,,,,,379,530,,532,711,,534,535,,,,,1167', '1169,1171,1173,,1174,,1154,,,,,,,,,,,344,,,,,712,,,,,,,,233,709,,,,', ',,919,,,19,1000,,1000,19,1000,,,335,19,,,,,709,,1199,1200,1201,1202', ',,709,,,907,,335,,,1204,,,,,713,,,676,,19,,,18,19,19,,,,,934,333,,233', ',,,,,,333,,,19,19,,,,,233,667,,,,714,,710,710,,,,,,,,,,,,1000,,1000', ',1000,,1000,,,,,,,,709,,,,,,,,,,379,379,,,,,,311,1000,,,18,,,18,,,,', ',,233,967,,,,,,,,,233,,,,18,,,,,,,709,,,,,,,709,709,739,,375,,742,711', '711,,18,,,439,233,,,18,,,,,311,439,439,,,,439,439,,,,1030,,,,,712,712', ',709,,,709,,,,,,,,,,19,,,,,,,,335,,786,,,,,,,335,,1054,1055,,710,,,710', '710,,710,739,,,375,710,710,710,333,,713,713,1072,,,,,,,333,445,311,', ',,,,,,,,311,,,,,,,,,,,,,,,,,,714,714,,,19,,,19,,,,,841,,311,,,,,,,739', '375,,710,,,,19,,,18,831,,,,18,233,711,,,711,711,,711,18,,,710,711,711', '711,19,,,440,710,,,19,,,,439,,440,440,,,712,440,440,712,712,,712,,,', ',712,712,712,,902,,,903,,,,,,,,,,,,,,,,,,,,912,,,,,18,,,,,711,,715,', ',929,713,18,,713,713,,713,,,335,,713,713,713,710,,,,711,,335,,,,,712', '711,,,,,,,,233,,,,,714,18,,714,714,,714,18,,,712,714,714,714,,,,,712', ',,,,,959,,,710,,,,,,,710,710,,,,,713,,19,,,,18,19,,,,,,,,,19,,,1087', ',,,,713,18,,716,711,1093,,,713,,440,710,,,710,714,,,,,,,18,18,,,,,,', ',,,,,712,,,,714,,,,,,,,714,,,,,,,,,711,,,19,,,,711,711,,,1047,,,,19', ',1138,,,,18,,,,375,,,,,23,712,,713,,23,,,712,712,18,,233,233,,,,,711', ',,711,240,,19,,715,715,,,19,,,,,,23,,,,,,714,233,352,353,,355,356,712', '358,,712,,,713,,,18,,,,713,713,,,23,,,19,,380,380,,,380,,,,,,,402,,', ',,,19,,,,1095,,714,,,,,,,714,714,713,,,713,,,19,19,,,,,,,,,,23,,,,,380', '380,380,380,23,,23,,,,,716,716,,,,,714,,,714,,,,,,,,,,,,,,,402,,,,19', ',,,,,,,,,311,,,,,,,,,19,,,,,715,,,715,715,,715,,,,,715,715,715,,,,,', ',,,,,,,23,,444,,380,380,,454,,,,,,,454,380,380,19,,,,,,,,,,240,23,,', '489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505', '506,507,508,509,510,715,,,,511,,,,,,,,,,,,,,,,380,,,,715,,,,,,,716,715', ',716,716,,716,,,,,716,716,716,,,,,,,,,,23,,,,23,,,,,23,,,,,,,,,,,,,', ',,,,,,,,,,,,,561,,562,,23,,,,23,23,,,,,,,,,,,716,,,715,,,380,23,23,', ',,,,,,,,29,,,,,29,716,,,380,,,,,716,,,,,,,,29,,,,,,,,,,29,29,29,,29', '715,,,,,,,715,715,,,,,,,,,,,,,,,,,,,,,29,,,,,29,29,,,29,,,,,,,,,,715', ',,715,,454,454,454,,,716,,,,,,,,,,,,,,,,,,,,,,,,,29,,,353,,29,29,29', '29,29,,29,,,,,,,,,,,23,,,,,716,,,,,,,716,716,,,,,,,454,,,759,,,380,761', ',,,,,,,,,,,,,,,,,,,,,,,,,716,,,716,,,,,,,,,792,,,,,,,29,29,29,,29,29', ',29,29,23,,,23,,29,29,29,,,,,,,,,,,,29,,,,,23,,,,,,,,,,,,,,,,,,,,,,', ',23,,,454,,,,23,849,,,,,454,454,,29,,454,454,,,,29,29,,,,,,,,29,,,,', ',,,,,,,,,,,,,29,,,,29,,,,,29,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,29,,,,29', '29,,,,,,,,,,,,,,,,,29,29,29,,,,,,,,,,,,,,,,,,,29,,,,,,,,,,,,,,,,,,,23', ',,,,23,380,,,,,,,,23,,,,,,,,,,,,,,,,,,454,,,,,,,,,,,,,454,454,454,454', ',,,,,,,,,,,29,,,,,,,,,,,994,,,,,,,,,,23,,,,,,,,,1012,,,23,,,,,,,,,,', ',,,41,,,,,41,,29,,,1034,,,,,,,29,,380,,,,,284,23,,,,,,23,,29,,,41,331', '331,454,,,,,,,,32,,,,,32,,,,,,,,,,,,,,41,,,32,23,,,,,,389,284,284,32', '32,32,,32,,,,,29,23,,29,,,,,,,29,,,,,,,,,,29,,23,23,29,32,,,,,32,32', '41,,32,,,,,,,41,,41,,,,,29,,,29,29,,,29,,,,,,29,29,,,,29,29,,,,,,,,', ',23,,32,,,,,32,32,32,32,32,,32,,,,,,23,,380,380,,,,,,,,,,,,,,,,,,,,', ',,,,,,41,,,389,,,389,,,,,,,,,,,,23,,,,,,,,,,41,,,,,,,,,,,,,,,,,,,32', '32,32,,32,32,,32,32,,,,,,32,32,32,,,,,,,,,,,29,32,,,,29,29,,,,,,,,29', ',,,,,,,,,,,,,,,,,29,41,,,,41,,,,331,41,,,,32,,,,,,,32,32,,,,,,331,,32', ',,,,,,,,,,41,,,,41,41,,32,29,,,32,,,,,32,,,,29,,,41,41,,,,,,,,,,,,,', ',,,,,,,,,32,,,,32,32,29,,,,,,29,,,,,,29,,,,32,32,32,,,,,,,,,,,,,,,,', ',,32,,,,,,,,,,,,,,29,,,,,,,,,,,,,,,,,,,29,,,,,,,,,,,,,,,,,,,,,29,29', ',,,,,,,,,,,,,,,,,,,,,,,32,,,,,,,41,,,,,,,,331,,,,,,,,,331,,,,,,29,,', ',,,,,,,,,,,,,,,,29,,29,29,,32,,,,,,,,,,32,,,,,,,,,,,,,,,,32,,29,,,,', ',41,,,41,,,,,,29,,,,,,,,,,,,,,,41,,,,,,,,,,,,,,,,,,,,,,,32,41,,32,,', ',,41,,32,,,,,,,,,,32,,,,32,,,,,,,,,,,,,,,,,,,,,,,,32,,,32,32,,,32,,', ',,,32,32,,,,32,32,,,,,,,,,,,,,,331,,,,,,,,,,,331,,,,,,,,,,,,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,41,,,,,41,,,,,,,,,41,,,,,,', ',,,,,,,,,,,,,,,,,,,,,,,,,,32,,,,,32,32,,,,,,,,32,,,,,,,,,,,,,,,,,,32', ',41,,,,,,,,,,,,41,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,32,,,,41,,,,,,41', ',32,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,32,,,,41,,32,,,,,,32,,,,,284,,,', ',,41,,,,1091,,,,,,,,,,,,,,,,,41,41,,,,,,32,,,,,,,,,,,,,,,,,,,32,,,,', ',,,,,,,,,,,,,,,,32,32,,,284,,,,41,,,,,,,,,,,,,,,,,,,41,,,,,,,,,,,,,', ',,,,,,,,,,,,,,32,,,,,,,,,,,,,,,,,,,32,41,32,32,,,,,,,,,,,,,,,,,,,,,', ',,,,,,,,32,,,,,,,,,,,,,,,32' ] racc_goto_table = arr = ::Array.new(4251, 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 = [ '70,50,50,50,34,70,84,21,148,42,188,66,113,34,32,22,44,88,88,104,22,109', '188,106,70,11,55,110,68,16,16,224,77,108,73,73,70,70,70,77,75,75,107', '107,33,56,23,23,71,78,73,22,7,40,40,18,18,7,6,18,176,67,8,48,122,12', '70,86,86,220,62,86,91,53,53,53,70,70,70,38,139,22,123,114,113,2,32,4', '92,135,92,22,30,137,9,5,221,30,9,9,121,215,215,190,190,12,54,54,54,18', '18,18,18,224,1,124,89,215,7,13,70,165,165,29,165,15,141,216,30,70,29', '70,147,147,142,22,72,72,20,17,53,61,61,61,22,63,22,24,147,80,80,19,27', '87,87,87,19,10,30,4,85,85,85,19,167,167,136,151,136,167,200,200,7,39', '210,210,151,41,47,139,224,7,221,7,89,49,58,76,87,87,210,50,82,83,90', '85,102,103,111,112,21,21,115,116,117,118,21,45,45,119,5,88,30,21,70', '120,2,70,125,34,70,30,91,30,126,68,133,140,143,22,144,22,22,146,68,22', '22,188,92,92,167,182,70,22,141,149,45,45,45,150,73,137,142,56,213,213', '213,22,122,109,34,152,122,50,50,201,201,201,201,135,154,121,50,155,158', '32,123,190,190,20,159,160,20,33,124,71,161,139,162,163,33,164,136,166', '169,171,77,172,77,173,182,182,177,178,179,184,30,185,30,186,48,192,193', '30,196,197,220,46,46,34,30,70,66,198,199,70,202,88,113,70,70,53,53,88', '30,10,22,34,33,32,22,182,203,85,85,22,176,204,70,78,205,12,67,206,209', '215,46,46,46,62,214,70,165,10,62,70,70,18,77,218,71,114,219,7,6,9,22', '34,8,,22,22,216,,70,70,147,45,,108,45,,,,,113,,36,53,22,22,,33,4,61', ',,,53,122,122,33,61,30,55,136,87,30,,55,32,,30,85,87,34,68,36,210,,32', '85,33,216,63,,,,,63,,,,81,81,16,10,,,88,73,10,50,30,,88,75,30,30,,33', ',32,38,38,224,38,,,88,4,38,136,107,136,,30,30,,53,,,81,81,81,,,53,70', '12,77,77,,,86,77,77,46,,45,46,91,,88,,10,10,,73,,201,215,201,215,,,50', ',45,66,,53,53,71,92,,,216,66,,,,,,,,88,70,54,38,,,,,54,70,88,,,129,129', '129,22,,70,,9,,,,136,,,,,,,,,,,38,,33,33,73,33,,,122,122,29,29,,,73', '29,29,110,26,26,,54,26,23,,,50,,,,11,213,213,19,213,213,50,213,46,113', ',40,,19,19,91,88,70,19,19,70,,81,,88,81,,46,30,130,113,,22,,,22,215', '181,50,,,70,26,26,26,26,,87,,113,,,,21,,73,22,,88,,77,73,,21,21,70,', ',21,21,106,,70,77,77,77,77,107,104,,22,109,,22,16,,189,22,9,73,,,,22', '22,75,,73,22,22,107,84,107,38,,,70,70,42,30,148,,30,36,45,44,,7,,66', ',,,45,7,,181,9,87,,66,,,30,81,26,26,,10,88,,10,88,36,,70,26,26,,73,', '29,,81,85,,70,30,,215,30,,,,30,134,33,134,9,,30,30,,,77,30,30,213,213', '213,213,,,,19,181,181,,,,,189,189,,,,189,87,,,,,,,26,,,18,,130,,130', ',130,,,215,70,215,,,,70,,46,,181,,,181,36,70,22,46,21,,,22,,,,,,,,,22', '84,,,,84,,,,,,,,,,,,213,22,,,189,70,,,70,70,,70,,,,,70,70,70,,,,36,', ',,134,85,128,,,,129,,130,70,130,26,130,,130,215,188,,,,30,70,,188,22', '30,45,,,,,,26,,30,,22,45,18,,130,,,,32,,,,,10,,,30,,,,,,70,,70,81,,10', ',,70,,,,81,,,,113,22,,,,,,22,70,,,,,129,129,129,70,,189,,,,,,,,,30,', '53,189,70,,,,,,,,30,,,,,70,,22,64,,134,70,134,,134,70,,10,,31,128,,', '46,31,,22,,,10,22,217,70,70,46,,,,,30,,31,,94,,30,,22,22,,,31,31,31', ',31,31,31,70,,,,,,,,,36,10,134,,134,,,36,36,34,,26,,,64,,70,30,31,,70', ',,31,31,18,18,31,31,31,31,,,,,22,30,64,129,70,,50,,70,,,,,,,70,70,,', '22,36,,30,30,,,88,,,,10,,,134,,,,31,,,,,31,31,31,31,31,81,31,,,10,70', '134,,134,70,134,81,70,73,,,,,73,,22,,,36,,,45,,,,30,,,28,28,28,45,36', '134,,,,,35,,,36,128,35,30,,128,,128,131,128,,131,217,10,,,217,,217,', '217,36,28,28,,,,,,,,,10,35,35,35,,,31,31,31,31,31,31,31,31,31,,,36,', '30,31,31,31,,,,45,,,64,,35,,,31,94,94,,,,,35,35,35,36,,,,10,,,,,,,,', ',46,,,128,,128,64,128,,128,46,,64,64,217,,217,64,217,,217,31,,,,,,35', '31,31,,,,64,,128,35,31,35,64,,,,,,,217,,,131,,,,,26,31,132,132,132,31', '64,64,,31,31,,,,,,,,36,36,,36,36,,46,,28,28,31,,,95,,28,,,,,,,36,31', ',,64,31,31,,,,,,,,,,,,,,,,,31,31,31,,35,,35,35,,81,35,35,,,,,,,35,81', ',31,94,,,94,94,,94,,,,35,94,94,94,,,,,,,28,28,,,,,,,,28,,,,,,26,28,', '28,96,,28,28,,,,,132,132,132,132,,132,,36,,,,,,,,,,,81,,,,,97,,,,,,', ',31,94,,,,,,,131,,,35,131,,131,35,131,,,35,35,,,,,94,,132,132,132,132', ',,94,,,64,,35,,,132,,,,,98,,,36,,35,,,31,35,35,,,,,64,31,,31,,,,,,,31', ',,35,35,,,,,31,28,,,,99,,95,95,,,,,,,,,,,,131,,131,,131,,131,,,,,,,', '94,,,,,,,,,,26,26,,,,,,28,131,,,31,,,31,,,,,,,31,64,,,,,,,,,31,,,,31', ',,,,,,94,,,,,,,94,94,28,,28,,28,96,96,,31,,,31,31,,,31,,,,,28,31,31', ',,,31,31,,,,64,,,,,97,97,,94,,,94,,,,,,,,,,35,,,,,,,,35,,28,,,,,,,35', ',64,64,,95,,,95,95,,95,28,,,28,95,95,95,31,,98,98,64,,,,,,,31,28,28', ',,,,,,,,,28,,,,,,,,,,,,,,,,,,99,99,,,35,,,35,,,,,28,,28,,,,,,,28,28', ',95,,,,35,,,31,35,,,,31,31,96,,,96,96,,96,31,,,95,96,96,96,35,,,35,95', ',,35,,,,31,,35,35,,,97,35,35,97,97,,97,,,,,97,97,97,,28,,,28,,,,,,,', ',,,,,,,,,,,,28,,,,,31,,,,,96,,100,,,28,98,31,,98,98,,98,,,35,,98,98', '98,95,,,,96,,35,,,,,97,96,,,,,,,,31,,,,,99,31,,99,99,,99,31,,,97,99', '99,99,,,,,97,,,,,,28,,,95,,,,,,,95,95,,,,,98,,35,,,,31,35,,,,,,,,,35', ',,31,,,,,98,31,,101,96,31,,,98,,35,95,,,95,99,,,,,,,31,31,,,,,,,,,,', ',97,,,,99,,,,,,,,99,,,,,,,,,96,,,35,,,,96,96,,,28,,,,35,,31,,,,31,,', ',28,,,,,37,97,,98,,37,,,97,97,31,,31,31,,,,,96,,,96,37,,35,,100,100', ',,35,,,,,,37,,,,,,99,31,37,37,,37,37,97,37,,97,,,98,,,31,,,,98,98,,', '37,,,35,,37,37,,,37,,,,,,,35,,,,,,35,,,,35,,99,,,,,,,99,99,98,,,98,', ',35,35,,,,,,,,,,37,,,,,37,37,37,37,37,,37,,,,,101,101,,,,,99,,,99,,', ',,,,,,,,,,,,35,,,,35,,,,,,,,,,28,,,,,,,,,35,,,,,100,,,100,100,,100,', ',,,100,100,100,,,,,,,,,,,,,37,,37,,37,37,,37,,,,,,,37,37,37,35,,,,,', ',,,,37,37,,,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37', '37,37,37,100,,,,37,,,,,,,,,,,,,,,,37,,,,100,,,,,,,101,100,,101,101,', '101,,,,,101,101,101,,,,,,,,,,37,,,,37,,,,,37,,,,,,,,,,,,,,,,,,,,,,,', ',,,37,,37,,37,,,,37,37,,,,,,,,,,,101,,,100,,,37,37,37,,,,,,,,,,57,,', ',,57,101,,,37,,,,,101,,,,,,,,57,,,,,,,,,,57,57,57,,57,100,,,,,,,100', '100,,,,,,,,,,,,,,,,,,,,,57,,,,,57,57,,,57,,,,,,,,,,100,,,100,,37,37', '37,,,101,,,,,,,,,,,,,,,,,,,,,,,,,57,,,37,,57,57,57,57,57,,57,,,,,,,', ',,,37,,,,,101,,,,,,,101,101,,,,,,,37,,,37,,,37,37,,,,,,,,,,,,,,,,,,', ',,,,,,,101,,,101,,,,,,,,,37,,,,,,,57,57,57,,57,57,,57,57,37,,,37,,57', '57,57,,,,,,,,,,,,57,,,,,37,,,,,,,,,,,,,,,,,,,,,,,,37,,,37,,,,37,37,', ',,,37,37,,57,,37,37,,,,57,57,,,,,,,,57,,,,,,,,,,,,,,,,,,57,,,,57,,,', ',57,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,57,,,,57,57,,,,,,,,,,,,,,,,,57,57', '57,,,,,,,,,,,,,,,,,,,57,,,,,,,,,,,,,,,,,,,37,,,,,37,37,,,,,,,,37,,,', ',,,,,,,,,,,,,,37,,,,,,,,,,,,,37,37,37,37,,,,,,,,,,,,57,,,,,,,,,,,37', ',,,,,,,,,37,,,,,,,,,37,,,37,,,,,,,,,,,,,,69,,,,,69,,57,,,37,,,,,,,57', ',37,,,,,69,37,,,,,,37,,57,,,69,69,69,37,,,,,,,,60,,,,,60,,,,,,,,,,,', ',,69,,,60,37,,,,,,69,69,69,60,60,60,,60,,,,,57,37,,57,,,,,,,57,,,,,', ',,,,57,,37,37,57,60,,,,,60,60,69,,60,,,,,,,69,,69,,,,,57,,,57,57,,,57', ',,,,,57,57,,,,57,57,,,,,,,,,,37,,60,,,,,60,60,60,60,60,,60,,,,,,37,', '37,37,,,,,,,,,,,,,,,,,,,,,,,,,,,69,,,69,,,69,,,,,,,,,,,,37,,,,,,,,,', '69,,,,,,,,,,,,,,,,,,,60,60,60,,60,60,,60,60,,,,,,60,60,60,,,,,,,,,,', '57,60,,,,57,57,,,,,,,,57,,,,,,,,,,,,,,,,,,57,69,,,,69,,,,69,69,,,,60', ',,,,,,60,60,,,,,,69,,60,,,,,,,,,,,69,,,,69,69,,60,57,,,60,,,,,60,,,', '57,,,69,69,,,,,,,,,,,,,,,,,,,,,,,60,,,,60,60,57,,,,,,57,,,,,,57,,,,60', '60,60,,,,,,,,,,,,,,,,,,,60,,,,,,,,,,,,,,57,,,,,,,,,,,,,,,,,,,57,,,,', ',,,,,,,,,,,,,,,,57,57,,,,,,,,,,,,,,,,,,,,,,,,60,,,,,,,69,,,,,,,,69,', ',,,,,,,69,,,,,,57,,,,,,,,,,,,,,,,,,,57,,57,57,,60,,,,,,,,,,60,,,,,,', ',,,,,,,,,60,,57,,,,,,69,,,69,,,,,,57,,,,,,,,,,,,,,,69,,,,,,,,,,,,,,', ',,,,,,,,60,69,,60,,,,,69,,60,,,,,,,,,,60,,,,60,,,,,,,,,,,,,,,,,,,,,', ',,60,,,60,60,,,60,,,,,,60,60,,,,60,60,,,,,,,,,,,,,,69,,,,,,,,,,,69,', ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,69,,,,,69', ',,,,,,,,69,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,60,,,,,60,60,,,,,,,,60,,', ',,,,,,,,,,,,,,,60,,69,,,,,,,,,,,,69,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,', ',,60,,,,69,,,,,,69,,60,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,60,,,,69,,60', ',,,,,60,,,,,69,,,,,,69,,,,69,,,,,,,,,,,,,,,,,69,69,,,,,,60,,,,,,,,,', ',,,,,,,,,60,,,,,,,,,,,,,,,,,,,,,60,60,,,69,,,,69,,,,,,,,,,,,,,,,,,,69', ',,,,,,,,,,,,,,,,,,,,,,,,,,,60,,,,,,,,,,,,,,,,,,,60,69,60,60,,,,,,,,', ',,,,,,,,,,,,,,,,,,,,,60,,,,,,,,,,,,,,,60' ] racc_goto_check = arr = ::Array.new(4251, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end racc_goto_pointer = [ nil, 114, 85, nil, 84, 90, 55, 52, 55, -267, 121, -540, -697, -790, nil, -412, 21, 130, -16, -65, 62, -15, 15, -169, -68, nil, 518, 20, 1153, -98, 92, 1022, -208, -411, -14, 1195, 376, 2121, -409, -71, -20, -445, -15, nil, -8, 170, 280, 154, 36, -327, -31, nil, nil, -150, 77, -267, -477, 2516, -330, nil, 3093, 109, 34, 109, 781, nil, -26, 23, -320, 3046, 0, -351, 59, 26, nil, 32, -241, -189, 3, nil, 97, 406, 143, 126, -61, 128, -303, 121, -12, -178, -321, -236, -439, nil, 558, 885, 978, 1009, 1063, 1102, 1440, 1550, 172, 129, -50, nil, -47, -339, -767, -366, -598, 122, -204, 9, 30, 137, -164, 138, -434, -616, -190, -831, -522, -504, -817, -713, -674, nil, 125, -20, -268, 439, 343, -672, -8, -809, -606, -641, nil, -719, -810, -911, -903, -150, -568, nil, -382, -230, -17, -693, -690, -347, -27, nil, -28, -26, nil, nil, -453, -768, -667, -900, -522, -821, -657, -751, -655, -708, nil, -574, nil, -574, -403, -401, nil, nil, -642, -399, -399, -399, nil, -334, -820, nil, -757, -755, -753, nil, -76, -80, -604, nil, -452, -601, nil, nil, 230, 226, 233, 233, -240, -143, 234, 249, 253, -296, -294, nil, nil, -286, -188, nil, nil, -319, -412, -261, -645, 136, -398, -702, -705, -984, nil, nil, -498 ] racc_goto_default = [ nil, nil, nil, 3, nil, 4, 388, 322, nil, nil, 565, nil, 943, nil, 319, 320, nil, nil, nil, 11, 12, 20, 238, nil, nil, 14, 15, nil, 16, 438, 239, 351, nil, nil, 637, 237, 480, 305, 1056, nil, nil, nil, nil, 383, 139, 52, 53, nil, nil, nil, 25, 26, 27, 755, nil, nil, nil, 339, nil, 28, 336, 456, 35, nil, nil, 37, 40, 39, nil, 234, 235, 400, nil, 464, 138, 83, nil, 443, 99, 49, 552, 54, 271, nil, 910, 457, nil, 458, 469, nil, 683, 526, 309, 295, 55, 56, 57, 58, 59, 60, 61, 62, 63, nil, 296, 69, nil, nil, nil, nil, nil, nil, nil, 619, 361, nil, nil, nil, nil, nil, nil, 781, 584, nil, 782, 783, 1130, 997, 570, nil, 571, 572, nil, nil, 573, nil, 575, nil, 897, nil, nil, nil, 582, nil, nil, 378, nil, nil, nil, nil, nil, nil, nil, 468, nil, nil, 734, 727, nil, nil, nil, nil, nil, nil, nil, nil, 973, nil, 696, 705, 697, 698, nil, nil, 699, 700, nil, nil, nil, nil, 972, 974, nil, 976, 977, 978, 979, 980, nil, 593, 704, 706, nil, nil, 82, 84, 85, nil, nil, nil, nil, 644, nil, nil, nil, nil, nil, 95, 96, nil, 920, 363, 569, nil, 574, 928, 587, 589, 590, 1009, 594, 1010, 597, 600, 314 ] racc_reduce_table = [ 0, 0, :racc_error, 1, 149, :_reduce_none, 2, 150, :_reduce_2, 0, 151, :_reduce_3, 1, 151, :_reduce_4, 3, 151, :_reduce_5, 2, 151, :_reduce_6, 1, 153, :_reduce_none, 2, 153, :_reduce_8, 3, 156, :_reduce_9, 4, 157, :_reduce_10, 2, 158, :_reduce_11, 0, 162, :_reduce_12, 1, 162, :_reduce_13, 3, 162, :_reduce_14, 2, 162, :_reduce_15, 1, 163, :_reduce_none, 2, 163, :_reduce_17, 0, 175, :_reduce_18, 4, 155, :_reduce_19, 3, 155, :_reduce_20, 3, 155, :_reduce_21, 3, 155, :_reduce_22, 2, 155, :_reduce_23, 3, 155, :_reduce_24, 3, 155, :_reduce_25, 3, 155, :_reduce_26, 3, 155, :_reduce_27, 3, 155, :_reduce_28, 4, 155, :_reduce_29, 1, 155, :_reduce_none, 3, 155, :_reduce_31, 3, 155, :_reduce_32, 5, 155, :_reduce_33, 3, 155, :_reduce_34, 1, 155, :_reduce_none, 1, 155, :_reduce_none, 3, 173, :_reduce_37, 3, 173, :_reduce_38, 3, 173, :_reduce_39, 3, 173, :_reduce_40, 3, 167, :_reduce_41, 3, 167, :_reduce_42, 6, 167, :_reduce_43, 5, 167, :_reduce_44, 5, 167, :_reduce_45, 5, 167, :_reduce_46, 5, 167, :_reduce_47, 3, 167, :_reduce_48, 1, 177, :_reduce_none, 3, 177, :_reduce_50, 1, 177, :_reduce_none, 1, 174, :_reduce_none, 3, 174, :_reduce_53, 3, 174, :_reduce_54, 3, 174, :_reduce_55, 2, 174, :_reduce_56, 0, 187, :_reduce_57, 4, 174, :_reduce_58, 1, 174, :_reduce_none, 1, 166, :_reduce_none, 0, 191, :_reduce_61, 3, 188, :_reduce_62, 1, 190, :_reduce_63, 2, 193, :_reduce_64, 0, 197, :_reduce_65, 5, 194, :_reduce_66, 1, 169, :_reduce_none, 1, 169, :_reduce_none, 1, 199, :_reduce_none, 4, 199, :_reduce_70, 0, 206, :_reduce_71, 4, 203, :_reduce_72, 1, 205, :_reduce_none, 2, 198, :_reduce_74, 3, 198, :_reduce_75, 4, 198, :_reduce_76, 5, 198, :_reduce_77, 4, 198, :_reduce_78, 5, 198, :_reduce_79, 2, 198, :_reduce_80, 2, 198, :_reduce_81, 2, 198, :_reduce_82, 2, 198, :_reduce_83, 2, 198, :_reduce_84, 1, 168, :_reduce_85, 3, 168, :_reduce_86, 1, 211, :_reduce_87, 3, 211, :_reduce_88, 1, 210, :_reduce_none, 2, 210, :_reduce_90, 3, 210, :_reduce_91, 5, 210, :_reduce_92, 2, 210, :_reduce_93, 4, 210, :_reduce_94, 2, 210, :_reduce_95, 4, 210, :_reduce_96, 1, 210, :_reduce_97, 3, 210, :_reduce_98, 1, 214, :_reduce_none, 3, 214, :_reduce_100, 2, 213, :_reduce_101, 3, 213, :_reduce_102, 1, 216, :_reduce_103, 3, 216, :_reduce_104, 1, 215, :_reduce_105, 1, 215, :_reduce_106, 4, 215, :_reduce_107, 3, 215, :_reduce_108, 3, 215, :_reduce_109, 3, 215, :_reduce_110, 3, 215, :_reduce_111, 2, 215, :_reduce_112, 1, 215, :_reduce_113, 1, 170, :_reduce_114, 1, 170, :_reduce_115, 4, 170, :_reduce_116, 3, 170, :_reduce_117, 3, 170, :_reduce_118, 3, 170, :_reduce_119, 3, 170, :_reduce_120, 2, 170, :_reduce_121, 1, 170, :_reduce_122, 1, 219, :_reduce_123, 1, 219, :_reduce_none, 2, 220, :_reduce_125, 1, 220, :_reduce_126, 3, 220, :_reduce_127, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 164, :_reduce_133, 1, 164, :_reduce_none, 1, 165, :_reduce_135, 0, 224, :_reduce_136, 4, 165, :_reduce_137, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 221, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 1, 222, :_reduce_none, 3, 185, :_reduce_209, 3, 185, :_reduce_210, 6, 185, :_reduce_211, 5, 185, :_reduce_212, 5, 185, :_reduce_213, 5, 185, :_reduce_214, 5, 185, :_reduce_215, 4, 185, :_reduce_216, 3, 185, :_reduce_217, 3, 185, :_reduce_218, 3, 185, :_reduce_219, 2, 185, :_reduce_220, 2, 185, :_reduce_221, 2, 185, :_reduce_222, 2, 185, :_reduce_223, 3, 185, :_reduce_224, 3, 185, :_reduce_225, 3, 185, :_reduce_226, 3, 185, :_reduce_227, 3, 185, :_reduce_228, 3, 185, :_reduce_229, 4, 185, :_reduce_230, 2, 185, :_reduce_231, 2, 185, :_reduce_232, 3, 185, :_reduce_233, 3, 185, :_reduce_234, 3, 185, :_reduce_235, 3, 185, :_reduce_236, 1, 185, :_reduce_none, 3, 185, :_reduce_238, 3, 185, :_reduce_239, 3, 185, :_reduce_240, 3, 185, :_reduce_241, 3, 185, :_reduce_242, 2, 185, :_reduce_243, 2, 185, :_reduce_244, 3, 185, :_reduce_245, 3, 185, :_reduce_246, 3, 185, :_reduce_247, 3, 185, :_reduce_248, 3, 185, :_reduce_249, 6, 185, :_reduce_250, 4, 185, :_reduce_251, 6, 185, :_reduce_252, 4, 185, :_reduce_253, 6, 185, :_reduce_254, 1, 185, :_reduce_none, 1, 230, :_reduce_none, 1, 230, :_reduce_none, 1, 230, :_reduce_none, 1, 230, :_reduce_none, 3, 227, :_reduce_260, 3, 227, :_reduce_261, 1, 176, :_reduce_none, 1, 231, :_reduce_none, 2, 231, :_reduce_none, 4, 231, :_reduce_265, 2, 231, :_reduce_266, 1, 225, :_reduce_none, 3, 225, :_reduce_268, 3, 236, :_reduce_269, 3, 236, :_reduce_270, 0, 238, :_reduce_271, 1, 238, :_reduce_none, 0, 180, :_reduce_273, 1, 180, :_reduce_none, 2, 180, :_reduce_none, 4, 180, :_reduce_276, 2, 180, :_reduce_277, 1, 209, :_reduce_278, 2, 209, :_reduce_279, 2, 209, :_reduce_280, 4, 209, :_reduce_281, 1, 209, :_reduce_282, 0, 241, :_reduce_283, 2, 202, :_reduce_284, 2, 240, :_reduce_285, 2, 239, :_reduce_286, 0, 239, :_reduce_287, 1, 233, :_reduce_288, 2, 233, :_reduce_289, 3, 233, :_reduce_290, 4, 233, :_reduce_291, 1, 172, :_reduce_292, 1, 172, :_reduce_none, 3, 171, :_reduce_294, 4, 171, :_reduce_295, 2, 171, :_reduce_296, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_none, 1, 229, :_reduce_307, 0, 263, :_reduce_308, 4, 229, :_reduce_309, 0, 264, :_reduce_310, 4, 229, :_reduce_311, 0, 265, :_reduce_312, 4, 229, :_reduce_313, 3, 229, :_reduce_314, 3, 229, :_reduce_315, 2, 229, :_reduce_316, 3, 229, :_reduce_317, 3, 229, :_reduce_318, 1, 229, :_reduce_319, 4, 229, :_reduce_320, 3, 229, :_reduce_321, 1, 229, :_reduce_322, 5, 229, :_reduce_323, 4, 229, :_reduce_324, 3, 229, :_reduce_325, 2, 229, :_reduce_326, 1, 229, :_reduce_none, 2, 229, :_reduce_328, 2, 229, :_reduce_329, 6, 229, :_reduce_330, 6, 229, :_reduce_331, 4, 229, :_reduce_332, 4, 229, :_reduce_333, 5, 229, :_reduce_334, 4, 229, :_reduce_335, 5, 229, :_reduce_336, 6, 229, :_reduce_337, 0, 266, :_reduce_338, 6, 229, :_reduce_339, 0, 267, :_reduce_340, 7, 229, :_reduce_341, 0, 268, :_reduce_342, 5, 229, :_reduce_343, 4, 229, :_reduce_344, 4, 229, :_reduce_345, 1, 229, :_reduce_346, 1, 229, :_reduce_347, 1, 229, :_reduce_348, 1, 229, :_reduce_349, 3, 229, :_reduce_350, 1, 179, :_reduce_none, 1, 208, :_reduce_352, 1, 255, :_reduce_none, 1, 255, :_reduce_none, 2, 255, :_reduce_355, 1, 189, :_reduce_none, 1, 189, :_reduce_none, 1, 256, :_reduce_none, 5, 256, :_reduce_359, 1, 160, :_reduce_none, 2, 160, :_reduce_361, 1, 259, :_reduce_none, 1, 259, :_reduce_none, 1, 269, :_reduce_364, 3, 269, :_reduce_365, 1, 272, :_reduce_366, 3, 272, :_reduce_367, 1, 271, :_reduce_none, 3, 271, :_reduce_369, 5, 271, :_reduce_370, 1, 271, :_reduce_371, 3, 271, :_reduce_372, 2, 273, :_reduce_373, 1, 273, :_reduce_374, 4, 274, :_reduce_375, 2, 274, :_reduce_376, 2, 274, :_reduce_377, 2, 274, :_reduce_378, 1, 274, :_reduce_379, 2, 280, :_reduce_380, 0, 280, :_reduce_381, 6, 281, :_reduce_382, 8, 281, :_reduce_383, 4, 281, :_reduce_384, 6, 281, :_reduce_385, 4, 281, :_reduce_386, 2, 281, :_reduce_none, 6, 281, :_reduce_388, 2, 281, :_reduce_389, 4, 281, :_reduce_390, 6, 281, :_reduce_391, 2, 281, :_reduce_392, 4, 281, :_reduce_393, 2, 281, :_reduce_394, 4, 281, :_reduce_395, 1, 281, :_reduce_none, 0, 285, :_reduce_397, 1, 285, :_reduce_398, 3, 286, :_reduce_399, 4, 286, :_reduce_400, 1, 287, :_reduce_401, 4, 287, :_reduce_402, 1, 288, :_reduce_403, 3, 288, :_reduce_404, 1, 289, :_reduce_405, 1, 289, :_reduce_none, 0, 293, :_reduce_407, 0, 294, :_reduce_408, 4, 254, :_reduce_409, 4, 291, :_reduce_410, 1, 291, :_reduce_411, 0, 297, :_reduce_412, 4, 292, :_reduce_413, 0, 298, :_reduce_414, 4, 292, :_reduce_415, 0, 300, :_reduce_416, 4, 296, :_reduce_417, 2, 200, :_reduce_418, 4, 200, :_reduce_419, 5, 200, :_reduce_420, 5, 200, :_reduce_421, 2, 253, :_reduce_422, 4, 253, :_reduce_423, 4, 253, :_reduce_424, 3, 253, :_reduce_425, 3, 253, :_reduce_426, 3, 253, :_reduce_427, 2, 253, :_reduce_428, 1, 253, :_reduce_429, 4, 253, :_reduce_430, 0, 302, :_reduce_431, 4, 252, :_reduce_432, 0, 303, :_reduce_433, 4, 252, :_reduce_434, 0, 304, :_reduce_435, 3, 204, :_reduce_436, 0, 305, :_reduce_437, 0, 306, :_reduce_438, 4, 299, :_reduce_439, 5, 257, :_reduce_440, 1, 307, :_reduce_441, 1, 307, :_reduce_none, 0, 310, :_reduce_443, 0, 311, :_reduce_444, 7, 258, :_reduce_445, 1, 309, :_reduce_446, 1, 309, :_reduce_none, 1, 308, :_reduce_448, 3, 308, :_reduce_449, 3, 308, :_reduce_450, 1, 312, :_reduce_none, 2, 312, :_reduce_452, 3, 312, :_reduce_453, 1, 312, :_reduce_454, 1, 312, :_reduce_455, 1, 186, :_reduce_none, 3, 316, :_reduce_457, 1, 316, :_reduce_none, 3, 318, :_reduce_459, 1, 318, :_reduce_none, 1, 320, :_reduce_461, 1, 321, :_reduce_462, 1, 319, :_reduce_none, 4, 319, :_reduce_464, 4, 319, :_reduce_465, 3, 319, :_reduce_466, 4, 319, :_reduce_467, 4, 319, :_reduce_468, 3, 319, :_reduce_469, 0, 325, :_reduce_470, 4, 319, :_reduce_471, 2, 319, :_reduce_472, 0, 326, :_reduce_473, 4, 319, :_reduce_474, 2, 319, :_reduce_475, 0, 327, :_reduce_476, 4, 319, :_reduce_477, 1, 313, :_reduce_478, 1, 313, :_reduce_479, 2, 313, :_reduce_480, 3, 313, :_reduce_481, 5, 313, :_reduce_482, 2, 313, :_reduce_483, 4, 313, :_reduce_484, 1, 313, :_reduce_none, 2, 328, :_reduce_486, 3, 328, :_reduce_487, 2, 314, :_reduce_488, 4, 314, :_reduce_489, 1, 314, :_reduce_490, 3, 314, :_reduce_491, 1, 330, :_reduce_492, 3, 330, :_reduce_493, 1, 329, :_reduce_none, 3, 315, :_reduce_495, 1, 315, :_reduce_496, 2, 315, :_reduce_497, 1, 315, :_reduce_498, 3, 315, :_reduce_499, 1, 315, :_reduce_500, 1, 331, :_reduce_501, 3, 331, :_reduce_502, 2, 334, :_reduce_503, 1, 334, :_reduce_504, 1, 335, :_reduce_505, 3, 335, :_reduce_506, 2, 332, :_reduce_507, 1, 332, :_reduce_508, 2, 333, :_reduce_509, 1, 322, :_reduce_none, 3, 322, :_reduce_511, 3, 322, :_reduce_512, 2, 322, :_reduce_513, 2, 322, :_reduce_514, 1, 322, :_reduce_none, 1, 322, :_reduce_none, 1, 322, :_reduce_none, 2, 322, :_reduce_518, 2, 322, :_reduce_519, 1, 338, :_reduce_none, 1, 338, :_reduce_none, 1, 338, :_reduce_none, 1, 338, :_reduce_none, 1, 338, :_reduce_none, 1, 338, :_reduce_none, 1, 338, :_reduce_none, 1, 338, :_reduce_none, 1, 338, :_reduce_528, 2, 338, :_reduce_529, 1, 317, :_reduce_530, 2, 339, :_reduce_531, 2, 323, :_reduce_532, 3, 323, :_reduce_533, 1, 323, :_reduce_534, 6, 159, :_reduce_535, 0, 159, :_reduce_536, 1, 340, :_reduce_537, 1, 340, :_reduce_none, 1, 340, :_reduce_none, 2, 341, :_reduce_540, 1, 341, :_reduce_none, 2, 161, :_reduce_542, 1, 161, :_reduce_none, 1, 242, :_reduce_none, 1, 242, :_reduce_none, 1, 243, :_reduce_546, 1, 343, :_reduce_547, 2, 343, :_reduce_548, 3, 344, :_reduce_549, 1, 344, :_reduce_550, 1, 344, :_reduce_551, 3, 244, :_reduce_552, 4, 245, :_reduce_553, 3, 246, :_reduce_554, 0, 347, :_reduce_555, 3, 347, :_reduce_556, 1, 348, :_reduce_557, 2, 348, :_reduce_558, 3, 248, :_reduce_559, 0, 350, :_reduce_560, 3, 350, :_reduce_561, 3, 247, :_reduce_562, 3, 249, :_reduce_563, 0, 351, :_reduce_564, 3, 351, :_reduce_565, 0, 352, :_reduce_566, 3, 352, :_reduce_567, 0, 336, :_reduce_568, 2, 336, :_reduce_569, 0, 345, :_reduce_570, 2, 345, :_reduce_571, 0, 346, :_reduce_572, 2, 346, :_reduce_573, 1, 349, :_reduce_574, 2, 349, :_reduce_575, 0, 354, :_reduce_576, 4, 349, :_reduce_577, 1, 353, :_reduce_578, 1, 353, :_reduce_579, 1, 353, :_reduce_580, 1, 353, :_reduce_none, 1, 223, :_reduce_none, 1, 223, :_reduce_none, 1, 355, :_reduce_584, 3, 356, :_reduce_585, 1, 342, :_reduce_586, 2, 342, :_reduce_587, 1, 226, :_reduce_588, 1, 226, :_reduce_589, 1, 226, :_reduce_590, 1, 226, :_reduce_591, 1, 217, :_reduce_592, 1, 217, :_reduce_593, 1, 217, :_reduce_594, 1, 217, :_reduce_595, 1, 217, :_reduce_596, 1, 218, :_reduce_597, 1, 218, :_reduce_598, 1, 218, :_reduce_599, 1, 218, :_reduce_600, 1, 218, :_reduce_601, 1, 218, :_reduce_602, 1, 218, :_reduce_603, 1, 250, :_reduce_604, 1, 250, :_reduce_605, 1, 178, :_reduce_606, 1, 178, :_reduce_607, 1, 183, :_reduce_608, 1, 183, :_reduce_609, 0, 357, :_reduce_610, 4, 260, :_reduce_611, 0, 260, :_reduce_612, 3, 228, :_reduce_613, 3, 228, :_reduce_614, 1, 262, :_reduce_none, 0, 359, :_reduce_616, 3, 262, :_reduce_617, 4, 358, :_reduce_618, 2, 358, :_reduce_619, 2, 358, :_reduce_620, 2, 358, :_reduce_621, 1, 358, :_reduce_622, 2, 361, :_reduce_623, 0, 361, :_reduce_624, 6, 295, :_reduce_625, 8, 295, :_reduce_626, 4, 295, :_reduce_627, 6, 295, :_reduce_628, 4, 295, :_reduce_629, 6, 295, :_reduce_630, 2, 295, :_reduce_631, 4, 295, :_reduce_632, 6, 295, :_reduce_633, 2, 295, :_reduce_634, 4, 295, :_reduce_635, 2, 295, :_reduce_636, 4, 295, :_reduce_637, 1, 295, :_reduce_638, 0, 295, :_reduce_639, 1, 237, :_reduce_640, 1, 290, :_reduce_641, 1, 290, :_reduce_642, 1, 290, :_reduce_643, 1, 290, :_reduce_644, 1, 270, :_reduce_none, 1, 270, :_reduce_646, 1, 363, :_reduce_647, 1, 364, :_reduce_648, 3, 364, :_reduce_649, 1, 282, :_reduce_650, 3, 282, :_reduce_651, 1, 365, :_reduce_652, 2, 366, :_reduce_653, 1, 366, :_reduce_654, 2, 367, :_reduce_655, 1, 367, :_reduce_656, 1, 275, :_reduce_657, 3, 275, :_reduce_658, 1, 360, :_reduce_659, 3, 360, :_reduce_660, 1, 337, :_reduce_none, 1, 337, :_reduce_none, 2, 278, :_reduce_663, 2, 276, :_reduce_664, 1, 276, :_reduce_665, 3, 368, :_reduce_666, 3, 369, :_reduce_667, 1, 283, :_reduce_668, 3, 283, :_reduce_669, 1, 362, :_reduce_670, 3, 362, :_reduce_671, 1, 370, :_reduce_none, 1, 370, :_reduce_none, 2, 284, :_reduce_674, 1, 284, :_reduce_675, 1, 371, :_reduce_none, 1, 371, :_reduce_none, 2, 279, :_reduce_678, 2, 277, :_reduce_679, 0, 277, :_reduce_680, 1, 195, :_reduce_none, 3, 195, :_reduce_682, 0, 251, :_reduce_683, 2, 251, :_reduce_none, 1, 235, :_reduce_685, 3, 235, :_reduce_686, 3, 372, :_reduce_687, 2, 372, :_reduce_688, 4, 372, :_reduce_689, 2, 372, :_reduce_690, 1, 207, :_reduce_none, 1, 207, :_reduce_none, 1, 207, :_reduce_none, 1, 201, :_reduce_none, 1, 201, :_reduce_none, 1, 201, :_reduce_none, 1, 201, :_reduce_none, 1, 301, :_reduce_none, 1, 301, :_reduce_none, 1, 301, :_reduce_none, 1, 196, :_reduce_none, 1, 196, :_reduce_none, 1, 182, :_reduce_703, 1, 182, :_reduce_704, 0, 152, :_reduce_none, 1, 152, :_reduce_none, 0, 184, :_reduce_none, 1, 184, :_reduce_none, 2, 212, :_reduce_709, 2, 181, :_reduce_710, 2, 324, :_reduce_711, 0, 234, :_reduce_none, 1, 234, :_reduce_none, 1, 234, :_reduce_none, 1, 261, :_reduce_715, 1, 261, :_reduce_none, 1, 154, :_reduce_none, 2, 154, :_reduce_none, 0, 232, :_reduce_719 ] racc_reduce_n = 720 racc_shift_n = 1205 racc_token_table = { false => 0, :error => 1, :kCLASS => 2, :kMODULE => 3, :kDEF => 4, :kUNDEF => 5, :kBEGIN => 6, :kRESCUE => 7, :kENSURE => 8, :kEND => 9, :kIF => 10, :kUNLESS => 11, :kTHEN => 12, :kELSIF => 13, :kELSE => 14, :kCASE => 15, :kWHEN => 16, :kWHILE => 17, :kUNTIL => 18, :kFOR => 19, :kBREAK => 20, :kNEXT => 21, :kREDO => 22, :kRETRY => 23, :kIN => 24, :kDO => 25, :kDO_COND => 26, :kDO_BLOCK => 27, :kDO_LAMBDA => 28, :kRETURN => 29, :kYIELD => 30, :kSUPER => 31, :kSELF => 32, :kNIL => 33, :kTRUE => 34, :kFALSE => 35, :kAND => 36, :kOR => 37, :kNOT => 38, :kIF_MOD => 39, :kUNLESS_MOD => 40, :kWHILE_MOD => 41, :kUNTIL_MOD => 42, :kRESCUE_MOD => 43, :kALIAS => 44, :kDEFINED => 45, :klBEGIN => 46, :klEND => 47, :k__LINE__ => 48, :k__FILE__ => 49, :k__ENCODING__ => 50, :tIDENTIFIER => 51, :tFID => 52, :tGVAR => 53, :tIVAR => 54, :tCONSTANT => 55, :tLABEL => 56, :tCVAR => 57, :tNTH_REF => 58, :tBACK_REF => 59, :tSTRING_CONTENT => 60, :tINTEGER => 61, :tFLOAT => 62, :tUPLUS => 63, :tUMINUS => 64, :tUNARY_NUM => 65, :tPOW => 66, :tCMP => 67, :tEQ => 68, :tEQQ => 69, :tNEQ => 70, :tGEQ => 71, :tLEQ => 72, :tANDOP => 73, :tOROP => 74, :tMATCH => 75, :tNMATCH => 76, :tDOT => 77, :tDOT2 => 78, :tDOT3 => 79, :tAREF => 80, :tASET => 81, :tLSHFT => 82, :tRSHFT => 83, :tCOLON2 => 84, :tCOLON3 => 85, :tOP_ASGN => 86, :tASSOC => 87, :tLPAREN => 88, :tLPAREN2 => 89, :tRPAREN => 90, :tLPAREN_ARG => 91, :tLBRACK => 92, :tLBRACK2 => 93, :tRBRACK => 94, :tLBRACE => 95, :tLBRACE_ARG => 96, :tSTAR => 97, :tSTAR2 => 98, :tAMPER => 99, :tAMPER2 => 100, :tTILDE => 101, :tPERCENT => 102, :tDIVIDE => 103, :tDSTAR => 104, :tPLUS => 105, :tMINUS => 106, :tLT => 107, :tGT => 108, :tPIPE => 109, :tBANG => 110, :tCARET => 111, :tLCURLY => 112, :tRCURLY => 113, :tBACK_REF2 => 114, :tSYMBEG => 115, :tSTRING_BEG => 116, :tXSTRING_BEG => 117, :tREGEXP_BEG => 118, :tREGEXP_OPT => 119, :tWORDS_BEG => 120, :tQWORDS_BEG => 121, :tSYMBOLS_BEG => 122, :tQSYMBOLS_BEG => 123, :tSTRING_DBEG => 124, :tSTRING_DVAR => 125, :tSTRING_END => 126, :tSTRING_DEND => 127, :tSTRING => 128, :tSYMBOL => 129, :tNL => 130, :tEH => 131, :tCOLON => 132, :tCOMMA => 133, :tSPACE => 134, :tSEMI => 135, :tLAMBDA => 136, :tLAMBEG => 137, :tCHARACTER => 138, :tRATIONAL => 139, :tIMAGINARY => 140, :tLABEL_END => 141, :tANDDOT => 142, :tMETHREF => 143, :tBDOT2 => 144, :tBDOT3 => 145, :tEQL => 146, :tLOWEST => 147 } racc_nt_base = 148 racc_use_result_var = true Racc_arg = [ racc_action_table, racc_action_check, racc_action_default, racc_action_pointer, racc_goto_table, racc_goto_check, racc_goto_default, racc_goto_pointer, racc_nt_base, racc_reduce_table, racc_token_table, racc_shift_n, racc_reduce_n, racc_use_result_var ] Racc_token_to_s_table = [ "$end", "error", "kCLASS", "kMODULE", "kDEF", "kUNDEF", "kBEGIN", "kRESCUE", "kENSURE", "kEND", "kIF", "kUNLESS", "kTHEN", "kELSIF", "kELSE", "kCASE", "kWHEN", "kWHILE", "kUNTIL", "kFOR", "kBREAK", "kNEXT", "kREDO", "kRETRY", "kIN", "kDO", "kDO_COND", "kDO_BLOCK", "kDO_LAMBDA", "kRETURN", "kYIELD", "kSUPER", "kSELF", "kNIL", "kTRUE", "kFALSE", "kAND", "kOR", "kNOT", "kIF_MOD", "kUNLESS_MOD", "kWHILE_MOD", "kUNTIL_MOD", "kRESCUE_MOD", "kALIAS", "kDEFINED", "klBEGIN", "klEND", "k__LINE__", "k__FILE__", "k__ENCODING__", "tIDENTIFIER", "tFID", "tGVAR", "tIVAR", "tCONSTANT", "tLABEL", "tCVAR", "tNTH_REF", "tBACK_REF", "tSTRING_CONTENT", "tINTEGER", "tFLOAT", "tUPLUS", "tUMINUS", "tUNARY_NUM", "tPOW", "tCMP", "tEQ", "tEQQ", "tNEQ", "tGEQ", "tLEQ", "tANDOP", "tOROP", "tMATCH", "tNMATCH", "tDOT", "tDOT2", "tDOT3", "tAREF", "tASET", "tLSHFT", "tRSHFT", "tCOLON2", "tCOLON3", "tOP_ASGN", "tASSOC", "tLPAREN", "tLPAREN2", "tRPAREN", "tLPAREN_ARG", "tLBRACK", "tLBRACK2", "tRBRACK", "tLBRACE", "tLBRACE_ARG", "tSTAR", "tSTAR2", "tAMPER", "tAMPER2", "tTILDE", "tPERCENT", "tDIVIDE", "tDSTAR", "tPLUS", "tMINUS", "tLT", "tGT", "tPIPE", "tBANG", "tCARET", "tLCURLY", "tRCURLY", "tBACK_REF2", "tSYMBEG", "tSTRING_BEG", "tXSTRING_BEG", "tREGEXP_BEG", "tREGEXP_OPT", "tWORDS_BEG", "tQWORDS_BEG", "tSYMBOLS_BEG", "tQSYMBOLS_BEG", "tSTRING_DBEG", "tSTRING_DVAR", "tSTRING_END", "tSTRING_DEND", "tSTRING", "tSYMBOL", "tNL", "tEH", "tCOLON", "tCOMMA", "tSPACE", "tSEMI", "tLAMBDA", "tLAMBEG", "tCHARACTER", "tRATIONAL", "tIMAGINARY", "tLABEL_END", "tANDDOT", "tMETHREF", "tBDOT2", "tBDOT3", "tEQL", "tLOWEST", "$start", "program", "top_compstmt", "top_stmts", "opt_terms", "top_stmt", "terms", "stmt", "begin_block", "bodystmt", "compstmt", "opt_rescue", "opt_else", "opt_ensure", "stmts", "stmt_or_begin", "fitem", "undef_list", "expr_value", "command_asgn", "mlhs", "command_call", "lhs", "mrhs", "mrhs_arg", "rassign", "expr", "@1", "arg_value", "command_rhs", "var_lhs", "primary_value", "opt_call_args", "rbracket", "call_op", "backref", "opt_nl", "arg", "p_expr", "@2", "expr_value_do", "do", "def_name", "@3", "fname", "defn_head", "defs_head", "singleton", "dot_or_colon", "@4", "command", "block_command", "block_call", "operation2", "command_args", "cmd_brace_block", "brace_body", "fcall", "@5", "operation", "k_return", "call_args", "mlhs_basic", "mlhs_inner", "rparen", "mlhs_head", "mlhs_item", "mlhs_node", "mlhs_post", "user_variable", "keyword_variable", "cname", "cpath", "op", "reswords", "symbol", "@6", "arg_rhs", "simple_numeric", "rel_expr", "f_paren_args", "primary", "relop", "aref_args", "none", "args", "trailer", "assocs", "paren_args", "args_forward", "opt_paren_args", "opt_block_arg", "block_arg", "@7", "literal", "strings", "xstring", "regexp", "words", "qwords", "symbols", "qsymbols", "var_ref", "assoc_list", "brace_block", "method_call", "lambda", "then", "if_tail", "case_body", "p_case_body", "for_var", "superclass", "term", "f_arglist", "@8", "@9", "@10", "@11", "@12", "@13", "f_marg", "f_norm_arg", "f_margs", "f_marg_list", "f_rest_marg", "block_args_tail", "f_block_kwarg", "f_kwrest", "opt_f_block_arg", "f_no_kwarg", "f_block_arg", "opt_block_args_tail", "block_param", "f_arg", "f_block_optarg", "f_rest_arg", "opt_block_param", "block_param_def", "opt_bv_decl", "bv_decls", "bvar", "f_bad_arg", "f_larglist", "lambda_body", "@14", "@15", "f_args", "do_block", "@16", "@17", "do_body", "@18", "operation3", "@19", "@20", "@21", "@22", "@23", "cases", "p_top_expr", "p_cases", "@24", "@25", "p_top_expr_body", "p_args", "p_args_tail", "p_kwargs", "p_as", "p_variable", "p_alt", "p_expr_basic", "p_lparen", "p_lbracket", "p_value", "p_const", "rbrace", "@26", "@27", "@28", "p_args_head", "p_arg", "p_args_post", "p_kwarg", "p_kwrest", "p_kwnorest", "p_kw", "p_kw_label", "string_contents", "kwrest_mark", "p_primitive", "p_var_ref", "exc_list", "exc_var", "numeric", "string", "string1", "xstring_contents", "regexp_contents", "word_list", "word", "string_content", "symbol_list", "qword_list", "qsym_list", "string_dvar", "@29", "ssym", "dsym", "@30", "args_tail", "@31", "f_kwarg", "opt_args_tail", "f_optarg", "f_arg_asgn", "f_arg_item", "f_label", "f_kw", "f_block_kw", "f_opt", "f_block_opt", "restarg_mark", "blkarg_mark", "assoc" ] Racc_debug_parser = false ##### State transition tables end ##### # reduce 0 omitted # reduce 1 omitted def _reduce_2(val, _values, result) result = @builder.compstmt(val[0]) result end def _reduce_3(val, _values, result) result = [] result end def _reduce_4(val, _values, result) result = [ val[0] ] result end def _reduce_5(val, _values, result) result = val[0] << val[2] result end def _reduce_6(val, _values, result) result = [ val[1] ] result end # reduce 7 omitted def _reduce_8(val, _values, result) result = @builder.preexe(val[0], *val[1]) result end def _reduce_9(val, _values, result) result = val result end def _reduce_10(val, _values, result) rescue_bodies = val[1] else_t, else_ = val[2] ensure_t, ensure_ = val[3] if rescue_bodies.empty? && !else_t.nil? diagnostic :error, :useless_else, nil, else_t end result = @builder.begin_body(val[0], rescue_bodies, else_t, else_, ensure_t, ensure_) result end def _reduce_11(val, _values, result) result = @builder.compstmt(val[0]) result end def _reduce_12(val, _values, result) result = [] result end def _reduce_13(val, _values, result) result = [ val[0] ] result end def _reduce_14(val, _values, result) result = val[0] << val[2] result end def _reduce_15(val, _values, result) result = [ val[1] ] result end # reduce 16 omitted def _reduce_17(val, _values, result) diagnostic :error, :begin_in_method, nil, val[0] result end def _reduce_18(val, _values, result) @lexer.state = :expr_fname result end def _reduce_19(val, _values, result) result = @builder.alias(val[0], val[1], val[3]) result end def _reduce_20(val, _values, result) result = @builder.alias(val[0], @builder.gvar(val[1]), @builder.gvar(val[2])) result end def _reduce_21(val, _values, result) result = @builder.alias(val[0], @builder.gvar(val[1]), @builder.back_ref(val[2])) result end def _reduce_22(val, _values, result) diagnostic :error, :nth_ref_alias, nil, val[2] result end def _reduce_23(val, _values, result) result = @builder.undef_method(val[0], val[1]) result end def _reduce_24(val, _values, result) result = @builder.condition_mod(val[0], nil, val[1], val[2]) result end def _reduce_25(val, _values, result) result = @builder.condition_mod(nil, val[0], val[1], val[2]) result end def _reduce_26(val, _values, result) result = @builder.loop_mod(:while, val[0], val[1], val[2]) result end def _reduce_27(val, _values, result) result = @builder.loop_mod(:until, val[0], val[1], val[2]) result end def _reduce_28(val, _values, result) rescue_body = @builder.rescue_body(val[1], nil, nil, nil, nil, val[2]) result = @builder.begin_body(val[0], [ rescue_body ]) result end def _reduce_29(val, _values, result) result = @builder.postexe(val[0], val[1], val[2], val[3]) result end # reduce 30 omitted def _reduce_31(val, _values, result) result = @builder.multi_assign(val[0], val[1], val[2]) result end def _reduce_32(val, _values, result) result = @builder.assign(val[0], val[1], @builder.array(nil, val[2], nil)) result end def _reduce_33(val, _values, result) rescue_body = @builder.rescue_body(val[3], nil, nil, nil, nil, val[4]) begin_body = @builder.begin_body(val[2], [ rescue_body ]) result = @builder.multi_assign(val[0], val[1], begin_body) result end def _reduce_34(val, _values, result) result = @builder.multi_assign(val[0], val[1], val[2]) result end # reduce 35 omitted # reduce 36 omitted def _reduce_37(val, _values, result) result = @builder.rassign(val[0], val[1], val[2]) result end def _reduce_38(val, _values, result) result = @builder.multi_rassign(val[0], val[1], val[2]) result end def _reduce_39(val, _values, result) result = @builder.rassign(val[0], val[1], val[2]) result end def _reduce_40(val, _values, result) result = @builder.multi_rassign(val[0], val[1], val[2]) result end def _reduce_41(val, _values, result) result = @builder.assign(val[0], val[1], val[2]) result end def _reduce_42(val, _values, result) result = @builder.op_assign(val[0], val[1], val[2]) result end def _reduce_43(val, _values, result) result = @builder.op_assign( @builder.index( val[0], val[1], val[2], val[3]), val[4], val[5]) result end def _reduce_44(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end def _reduce_45(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end def _reduce_46(val, _values, result) const = @builder.const_op_assignable( @builder.const_fetch(val[0], val[1], val[2])) result = @builder.op_assign(const, val[3], val[4]) result end def _reduce_47(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end def _reduce_48(val, _values, result) @builder.op_assign(val[0], val[1], val[2]) result end # reduce 49 omitted def _reduce_50(val, _values, result) rescue_body = @builder.rescue_body(val[1], nil, nil, nil, nil, val[2]) result = @builder.begin_body(val[0], [ rescue_body ]) result end # reduce 51 omitted # reduce 52 omitted def _reduce_53(val, _values, result) result = @builder.logical_op(:and, val[0], val[1], val[2]) result end def _reduce_54(val, _values, result) result = @builder.logical_op(:or, val[0], val[1], val[2]) result end def _reduce_55(val, _values, result) result = @builder.not_op(val[0], nil, val[2], nil) result end def _reduce_56(val, _values, result) result = @builder.not_op(val[0], nil, val[1], nil) result end def _reduce_57(val, _values, result) @lexer.state = :expr_beg @lexer.command_start = false pattern_variables.push result = @lexer.in_kwarg @lexer.in_kwarg = true result end def _reduce_58(val, _values, result) @lexer.in_kwarg = val[2] result = @builder.in_match(val[0], val[1], val[3]) result end # reduce 59 omitted # reduce 60 omitted def _reduce_61(val, _values, result) @lexer.cond.push(true) result end def _reduce_62(val, _values, result) @lexer.cond.pop result = [ val[1], val[2] ] result end def _reduce_63(val, _values, result) @static_env.extend_static @lexer.cmdarg.push(false) @lexer.cond.push(false) @current_arg_stack.push(nil) result = val[0] result end def _reduce_64(val, _values, result) @context.push(:def) result = [ val[0], val[1] ] result end def _reduce_65(val, _values, result) @lexer.state = :expr_fname result end def _reduce_66(val, _values, result) @context.push(:defs) result = [ val[0], val[1], val[2], val[4] ] result end # reduce 67 omitted # reduce 68 omitted # reduce 69 omitted def _reduce_70(val, _values, result) result = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) result end def _reduce_71(val, _values, result) @context.push(:block) result end def _reduce_72(val, _values, result) result = [ val[0], *val[2], val[3] ] @context.pop result end # reduce 73 omitted def _reduce_74(val, _values, result) result = @builder.call_method(nil, nil, val[0], nil, val[1], nil) result end def _reduce_75(val, _values, result) method_call = @builder.call_method(nil, nil, val[0], nil, val[1], nil) begin_t, args, body, end_t = val[2] result = @builder.block(method_call, begin_t, args, body, end_t) result end def _reduce_76(val, _values, result) result = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) result end def _reduce_77(val, _values, result) method_call = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) begin_t, args, body, end_t = val[4] result = @builder.block(method_call, begin_t, args, body, end_t) result end def _reduce_78(val, _values, result) result = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) result end def _reduce_79(val, _values, result) method_call = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) begin_t, args, body, end_t = val[4] result = @builder.block(method_call, begin_t, args, body, end_t) result end def _reduce_80(val, _values, result) result = @builder.keyword_cmd(:super, val[0], nil, val[1], nil) result end def _reduce_81(val, _values, result) result = @builder.keyword_cmd(:yield, val[0], nil, val[1], nil) result end def _reduce_82(val, _values, result) result = @builder.keyword_cmd(:return, val[0], nil, val[1], nil) result end def _reduce_83(val, _values, result) result = @builder.keyword_cmd(:break, val[0], nil, val[1], nil) result end def _reduce_84(val, _values, result) result = @builder.keyword_cmd(:next, val[0], nil, val[1], nil) result end def _reduce_85(val, _values, result) result = @builder.multi_lhs(nil, val[0], nil) result end def _reduce_86(val, _values, result) result = @builder.begin(val[0], val[1], val[2]) result end def _reduce_87(val, _values, result) result = @builder.multi_lhs(nil, val[0], nil) result end def _reduce_88(val, _values, result) result = @builder.multi_lhs(val[0], val[1], val[2]) result end # reduce 89 omitted def _reduce_90(val, _values, result) result = val[0]. push(val[1]) result end def _reduce_91(val, _values, result) result = val[0]. push(@builder.splat(val[1], val[2])) result end def _reduce_92(val, _values, result) result = val[0]. push(@builder.splat(val[1], val[2])). concat(val[4]) result end def _reduce_93(val, _values, result) result = val[0]. push(@builder.splat(val[1])) result end def _reduce_94(val, _values, result) result = val[0]. push(@builder.splat(val[1])). concat(val[3]) result end def _reduce_95(val, _values, result) result = [ @builder.splat(val[0], val[1]) ] result end def _reduce_96(val, _values, result) result = [ @builder.splat(val[0], val[1]), *val[3] ] result end def _reduce_97(val, _values, result) result = [ @builder.splat(val[0]) ] result end def _reduce_98(val, _values, result) result = [ @builder.splat(val[0]), *val[2] ] result end # reduce 99 omitted def _reduce_100(val, _values, result) result = @builder.begin(val[0], val[1], val[2]) result end def _reduce_101(val, _values, result) result = [ val[0] ] result end def _reduce_102(val, _values, result) result = val[0] << val[1] result end def _reduce_103(val, _values, result) result = [ val[0] ] result end def _reduce_104(val, _values, result) result = val[0] << val[2] result end def _reduce_105(val, _values, result) result = @builder.assignable(val[0]) result end def _reduce_106(val, _values, result) result = @builder.assignable(val[0]) result end def _reduce_107(val, _values, result) result = @builder.index_asgn(val[0], val[1], val[2], val[3]) result end def _reduce_108(val, _values, result) if (val[1][0] == :anddot) diagnostic :error, :csend_in_lhs_of_masgn, nil, val[1] end result = @builder.attr_asgn(val[0], val[1], val[2]) result end def _reduce_109(val, _values, result) result = @builder.attr_asgn(val[0], val[1], val[2]) result end def _reduce_110(val, _values, result) if (val[1][0] == :anddot) diagnostic :error, :csend_in_lhs_of_masgn, nil, val[1] end result = @builder.attr_asgn(val[0], val[1], val[2]) result end def _reduce_111(val, _values, result) result = @builder.assignable( @builder.const_fetch(val[0], val[1], val[2])) result end def _reduce_112(val, _values, result) result = @builder.assignable( @builder.const_global(val[0], val[1])) result end def _reduce_113(val, _values, result) result = @builder.assignable(val[0]) result end def _reduce_114(val, _values, result) result = @builder.assignable(val[0]) result end def _reduce_115(val, _values, result) result = @builder.assignable(val[0]) result end def _reduce_116(val, _values, result) result = @builder.index_asgn(val[0], val[1], val[2], val[3]) result end def _reduce_117(val, _values, result) result = @builder.attr_asgn(val[0], val[1], val[2]) result end def _reduce_118(val, _values, result) result = @builder.attr_asgn(val[0], val[1], val[2]) result end def _reduce_119(val, _values, result) result = @builder.attr_asgn(val[0], val[1], val[2]) result end def _reduce_120(val, _values, result) result = @builder.assignable( @builder.const_fetch(val[0], val[1], val[2])) result end def _reduce_121(val, _values, result) result = @builder.assignable( @builder.const_global(val[0], val[1])) result end def _reduce_122(val, _values, result) result = @builder.assignable(val[0]) result end def _reduce_123(val, _values, result) diagnostic :error, :module_name_const, nil, val[0] result end # reduce 124 omitted def _reduce_125(val, _values, result) result = @builder.const_global(val[0], val[1]) result end def _reduce_126(val, _values, result) result = @builder.const(val[0]) result end def _reduce_127(val, _values, result) result = @builder.const_fetch(val[0], val[1], val[2]) result end # reduce 128 omitted # reduce 129 omitted # reduce 130 omitted # reduce 131 omitted # reduce 132 omitted def _reduce_133(val, _values, result) result = @builder.symbol(val[0]) result end # reduce 134 omitted def _reduce_135(val, _values, result) result = [ val[0] ] result end def _reduce_136(val, _values, result) @lexer.state = :expr_fname result end def _reduce_137(val, _values, result) result = val[0] << val[3] result end # reduce 138 omitted # reduce 139 omitted # reduce 140 omitted # reduce 141 omitted # reduce 142 omitted # reduce 143 omitted # reduce 144 omitted # reduce 145 omitted # reduce 146 omitted # reduce 147 omitted # reduce 148 omitted # reduce 149 omitted # reduce 150 omitted # reduce 151 omitted # reduce 152 omitted # reduce 153 omitted # reduce 154 omitted # reduce 155 omitted # reduce 156 omitted # reduce 157 omitted # reduce 158 omitted # reduce 159 omitted # reduce 160 omitted # reduce 161 omitted # reduce 162 omitted # reduce 163 omitted # reduce 164 omitted # reduce 165 omitted # reduce 166 omitted # reduce 167 omitted # reduce 168 omitted # reduce 169 omitted # reduce 170 omitted # reduce 171 omitted # reduce 172 omitted # reduce 173 omitted # reduce 174 omitted # reduce 175 omitted # reduce 176 omitted # reduce 177 omitted # reduce 178 omitted # reduce 179 omitted # reduce 180 omitted # reduce 181 omitted # reduce 182 omitted # reduce 183 omitted # reduce 184 omitted # reduce 185 omitted # reduce 186 omitted # reduce 187 omitted # reduce 188 omitted # reduce 189 omitted # reduce 190 omitted # reduce 191 omitted # reduce 192 omitted # reduce 193 omitted # reduce 194 omitted # reduce 195 omitted # reduce 196 omitted # reduce 197 omitted # reduce 198 omitted # reduce 199 omitted # reduce 200 omitted # reduce 201 omitted # reduce 202 omitted # reduce 203 omitted # reduce 204 omitted # reduce 205 omitted # reduce 206 omitted # reduce 207 omitted # reduce 208 omitted def _reduce_209(val, _values, result) result = @builder.assign(val[0], val[1], val[2]) result end def _reduce_210(val, _values, result) result = @builder.op_assign(val[0], val[1], val[2]) result end def _reduce_211(val, _values, result) result = @builder.op_assign( @builder.index( val[0], val[1], val[2], val[3]), val[4], val[5]) result end def _reduce_212(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end def _reduce_213(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end def _reduce_214(val, _values, result) result = @builder.op_assign( @builder.call_method( val[0], val[1], val[2]), val[3], val[4]) result end def _reduce_215(val, _values, result) const = @builder.const_op_assignable( @builder.const_fetch(val[0], val[1], val[2])) result = @builder.op_assign(const, val[3], val[4]) result end def _reduce_216(val, _values, result) const = @builder.const_op_assignable( @builder.const_global(val[0], val[1])) result = @builder.op_assign(const, val[2], val[3]) result end def _reduce_217(val, _values, result) result = @builder.op_assign(val[0], val[1], val[2]) result end def _reduce_218(val, _values, result) result = @builder.range_inclusive(val[0], val[1], val[2]) result end def _reduce_219(val, _values, result) result = @builder.range_exclusive(val[0], val[1], val[2]) result end def _reduce_220(val, _values, result) result = @builder.range_inclusive(val[0], val[1], nil) result end def _reduce_221(val, _values, result) result = @builder.range_exclusive(val[0], val[1], nil) result end def _reduce_222(val, _values, result) result = @builder.range_inclusive(nil, val[0], val[1]) result end def _reduce_223(val, _values, result) result = @builder.range_exclusive(nil, val[0], val[1]) result end def _reduce_224(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_225(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_226(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_227(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_228(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_229(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_230(val, _values, result) result = @builder.unary_op(val[0], @builder.binary_op( val[1], val[2], val[3])) result end def _reduce_231(val, _values, result) result = @builder.unary_op(val[0], val[1]) result end def _reduce_232(val, _values, result) result = @builder.unary_op(val[0], val[1]) result end def _reduce_233(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_234(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_235(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_236(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end # reduce 237 omitted def _reduce_238(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_239(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_240(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_241(val, _values, result) result = @builder.match_op(val[0], val[1], val[2]) result end def _reduce_242(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_243(val, _values, result) result = @builder.not_op(val[0], nil, val[1], nil) result end def _reduce_244(val, _values, result) result = @builder.unary_op(val[0], val[1]) result end def _reduce_245(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_246(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_247(val, _values, result) result = @builder.logical_op(:and, val[0], val[1], val[2]) result end def _reduce_248(val, _values, result) result = @builder.logical_op(:or, val[0], val[1], val[2]) result end def _reduce_249(val, _values, result) result = @builder.keyword_cmd(:defined?, val[0], nil, [ val[2] ], nil) result end def _reduce_250(val, _values, result) result = @builder.ternary(val[0], val[1], val[2], val[4], val[5]) result end def _reduce_251(val, _values, result) result = @builder.def_endless_method(*val[0], val[1], val[2], val[3]) @lexer.cmdarg.pop @lexer.cond.pop @static_env.unextend @context.pop @current_arg_stack.pop result end def _reduce_252(val, _values, result) rescue_body = @builder.rescue_body(val[4], nil, nil, nil, nil, val[5]) method_body = @builder.begin_body(val[3], [ rescue_body ]) result = @builder.def_endless_method(*val[0], val[1], val[2], method_body) @lexer.cmdarg.pop @lexer.cond.pop @static_env.unextend @context.pop @current_arg_stack.pop result end def _reduce_253(val, _values, result) result = @builder.def_endless_singleton(*val[0], val[1], val[2], val[3]) @lexer.cmdarg.pop @lexer.cond.pop @static_env.unextend @context.pop @current_arg_stack.pop result end def _reduce_254(val, _values, result) rescue_body = @builder.rescue_body(val[4], nil, nil, nil, nil, val[5]) method_body = @builder.begin_body(val[3], [ rescue_body ]) result = @builder.def_endless_singleton(*val[0], val[1], val[2], method_body) @lexer.cmdarg.pop @lexer.cond.pop @static_env.unextend @context.pop @current_arg_stack.pop result end # reduce 255 omitted # reduce 256 omitted # reduce 257 omitted # reduce 258 omitted # reduce 259 omitted def _reduce_260(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end def _reduce_261(val, _values, result) result = @builder.binary_op(val[0], val[1], val[2]) result end # reduce 262 omitted # reduce 263 omitted # reduce 264 omitted def _reduce_265(val, _values, result) result = val[0] << @builder.associate(nil, val[2], nil) result end def _reduce_266(val, _values, result) result = [ @builder.associate(nil, val[0], nil) ] result end # reduce 267 omitted def _reduce_268(val, _values, result) rescue_body = @builder.rescue_body(val[1], nil, nil, nil, nil, val[2]) result = @builder.begin_body(val[0], [ rescue_body ]) result end def _reduce_269(val, _values, result) result = val result end def _reduce_270(val, _values, result) unless @static_env.declared_forward_args? diagnostic :error, :unexpected_token, { :token => 'tBDOT3' } , val[1] end result = [val[0], [@builder.forwarded_args(val[1])], val[2]] result end def _reduce_271(val, _values, result) result = [ nil, [], nil ] result end # reduce 272 omitted def _reduce_273(val, _values, result) result = [] result end # reduce 274 omitted # reduce 275 omitted def _reduce_276(val, _values, result) result = val[0] << @builder.associate(nil, val[2], nil) result end def _reduce_277(val, _values, result) result = [ @builder.associate(nil, val[0], nil) ] result end def _reduce_278(val, _values, result) result = [ val[0] ] result end def _reduce_279(val, _values, result) result = val[0].concat(val[1]) result end def _reduce_280(val, _values, result) result = [ @builder.associate(nil, val[0], nil) ] result.concat(val[1]) result end def _reduce_281(val, _values, result) assocs = @builder.associate(nil, val[2], nil) result = val[0] << assocs result.concat(val[3]) result end def _reduce_282(val, _values, result) result = [ val[0] ] result end def _reduce_283(val, _values, result) # When branch gets invoked by RACC's lookahead # and command args start with '[' or '(' # we need to put `true` to the cmdarg stack # **before** `false` pushed by lexer # m [], n # ^ # Right here we have cmdarg [...0] because # lexer pushed it on '[' # We need to modify cmdarg stack to [...10] # # For all other cases (like `m n` or `m n, []`) we simply put 1 to the stack # and later lexer pushes corresponding bits on top of it. last_token = @last_token[0] lookahead = last_token == :tLBRACK || last_token == :tLPAREN_ARG if lookahead top = @lexer.cmdarg.pop @lexer.cmdarg.push(true) @lexer.cmdarg.push(top) else @lexer.cmdarg.push(true) end result end def _reduce_284(val, _values, result) # call_args can be followed by tLBRACE_ARG (that does cmdarg.push(0) in the lexer) # but the push must be done after cmdarg.pop() in the parser. # So this code does cmdarg.pop() to pop 0 pushed by tLBRACE_ARG, # cmdarg.pop() to pop 1 pushed by command_args, # and cmdarg.push(0) to restore back the flag set by tLBRACE_ARG. last_token = @last_token[0] lookahead = last_token == :tLBRACE_ARG if lookahead top = @lexer.cmdarg.pop @lexer.cmdarg.pop @lexer.cmdarg.push(top) else @lexer.cmdarg.pop end result = val[1] result end def _reduce_285(val, _values, result) result = @builder.block_pass(val[0], val[1]) result end def _reduce_286(val, _values, result) result = [ val[1] ] result end def _reduce_287(val, _values, result) result = [] result end def _reduce_288(val, _values, result) result = [ val[0] ] result end def _reduce_289(val, _values, result) result = [ @builder.splat(val[0], val[1]) ] result end def _reduce_290(val, _values, result) result = val[0] << val[2] result end def _reduce_291(val, _values, result) result = val[0] << @builder.splat(val[2], val[3]) result end def _reduce_292(val, _values, result) result = @builder.array(nil, val[0], nil) result end # reduce 293 omitted def _reduce_294(val, _values, result) result = val[0] << val[2] result end def _reduce_295(val, _values, result) result = val[0] << @builder.splat(val[2], val[3]) result end def _reduce_296(val, _values, result) result = [ @builder.splat(val[0], val[1]) ] result end # reduce 297 omitted # reduce 298 omitted # reduce 299 omitted # reduce 300 omitted # reduce 301 omitted # reduce 302 omitted # reduce 303 omitted # reduce 304 omitted # reduce 305 omitted # reduce 306 omitted def _reduce_307(val, _values, result) result = @builder.call_method(nil, nil, val[0]) result end def _reduce_308(val, _values, result) @lexer.cmdarg.push(false) result end def _reduce_309(val, _values, result) @lexer.cmdarg.pop result = @builder.begin_keyword(val[0], val[2], val[3]) result end def _reduce_310(val, _values, result) @lexer.state = :expr_endarg result end def _reduce_311(val, _values, result) result = @builder.begin(val[0], val[1], val[3]) result end def _reduce_312(val, _values, result) @lexer.state = :expr_endarg result end def _reduce_313(val, _values, result) result = @builder.begin(val[0], nil, val[3]) result end def _reduce_314(val, _values, result) result = @builder.begin(val[0], val[1], val[2]) result end def _reduce_315(val, _values, result) result = @builder.const_fetch(val[0], val[1], val[2]) result end def _reduce_316(val, _values, result) result = @builder.const_global(val[0], val[1]) result end def _reduce_317(val, _values, result) result = @builder.array(val[0], val[1], val[2]) result end def _reduce_318(val, _values, result) result = @builder.associate(val[0], val[1], val[2]) result end def _reduce_319(val, _values, result) result = @builder.keyword_cmd(:return, val[0]) result end def _reduce_320(val, _values, result) result = @builder.keyword_cmd(:yield, val[0], val[1], val[2], val[3]) result end def _reduce_321(val, _values, result) result = @builder.keyword_cmd(:yield, val[0], val[1], [], val[2]) result end def _reduce_322(val, _values, result) result = @builder.keyword_cmd(:yield, val[0]) result end def _reduce_323(val, _values, result) result = @builder.keyword_cmd(:defined?, val[0], val[2], [ val[3] ], val[4]) result end def _reduce_324(val, _values, result) result = @builder.not_op(val[0], val[1], val[2], val[3]) result end def _reduce_325(val, _values, result) result = @builder.not_op(val[0], val[1], nil, val[2]) result end def _reduce_326(val, _values, result) method_call = @builder.call_method(nil, nil, val[0]) begin_t, args, body, end_t = val[1] result = @builder.block(method_call, begin_t, args, body, end_t) result end # reduce 327 omitted def _reduce_328(val, _values, result) begin_t, args, body, end_t = val[1] result = @builder.block(val[0], begin_t, args, body, end_t) result end def _reduce_329(val, _values, result) lambda_call = @builder.call_lambda(val[0]) args, (begin_t, body, end_t) = val[1] result = @builder.block(lambda_call, begin_t, args, body, end_t) result end def _reduce_330(val, _values, result) else_t, else_ = val[4] result = @builder.condition(val[0], val[1], val[2], val[3], else_t, else_, val[5]) result end def _reduce_331(val, _values, result) else_t, else_ = val[4] result = @builder.condition(val[0], val[1], val[2], else_, else_t, val[3], val[5]) result end def _reduce_332(val, _values, result) result = @builder.loop(:while, val[0], *val[1], val[2], val[3]) result end def _reduce_333(val, _values, result) result = @builder.loop(:until, val[0], *val[1], val[2], val[3]) result end def _reduce_334(val, _values, result) *when_bodies, (else_t, else_body) = *val[3] result = @builder.case(val[0], val[1], when_bodies, else_t, else_body, val[4]) result end def _reduce_335(val, _values, result) *when_bodies, (else_t, else_body) = *val[2] result = @builder.case(val[0], nil, when_bodies, else_t, else_body, val[3]) result end def _reduce_336(val, _values, result) *in_bodies, (else_t, else_body) = *val[3] result = @builder.case_match(val[0], val[1], in_bodies, else_t, else_body, val[4]) result end def _reduce_337(val, _values, result) result = @builder.for(val[0], val[1], val[2], *val[3], val[4], val[5]) result end def _reduce_338(val, _values, result) @static_env.extend_static @lexer.cmdarg.push(false) @lexer.cond.push(false) @context.push(:class) result end def _reduce_339(val, _values, result) unless @context.class_definition_allowed? diagnostic :error, :class_in_def, nil, val[0] end lt_t, superclass = val[2] result = @builder.def_class(val[0], val[1], lt_t, superclass, val[4], val[5]) @lexer.cmdarg.pop @lexer.cond.pop @static_env.unextend @context.pop result end def _reduce_340(val, _values, result) @static_env.extend_static @lexer.cmdarg.push(false) @lexer.cond.push(false) @context.push(:sclass) result end def _reduce_341(val, _values, result) result = @builder.def_sclass(val[0], val[1], val[2], val[5], val[6]) @lexer.cmdarg.pop @lexer.cond.pop @static_env.unextend @context.pop result end def _reduce_342(val, _values, result) @static_env.extend_static @lexer.cmdarg.push(false) result end def _reduce_343(val, _values, result) unless @context.module_definition_allowed? diagnostic :error, :module_in_def, nil, val[0] end result = @builder.def_module(val[0], val[1], val[3], val[4]) @lexer.cmdarg.pop @static_env.unextend result end def _reduce_344(val, _values, result) result = @builder.def_method(*val[0], val[1], val[2], val[3]) @lexer.cmdarg.pop @lexer.cond.pop @static_env.unextend @context.pop @current_arg_stack.pop result end def _reduce_345(val, _values, result) result = @builder.def_singleton(*val[0], val[1], val[2], val[3]) @lexer.cmdarg.pop @lexer.cond.pop @static_env.unextend @context.pop @current_arg_stack.pop result end def _reduce_346(val, _values, result) result = @builder.keyword_cmd(:break, val[0]) result end def _reduce_347(val, _values, result) result = @builder.keyword_cmd(:next, val[0]) result end def _reduce_348(val, _values, result) result = @builder.keyword_cmd(:redo, val[0]) result end def _reduce_349(val, _values, result) result = @builder.keyword_cmd(:retry, val[0]) result end def _reduce_350(val, _values, result) result = @builder.method_ref(val[0], val[1], val[2]) result end # reduce 351 omitted def _reduce_352(val, _values, result) if @context.in_class? diagnostic :error, :invalid_return, nil, val[0] end result end # reduce 353 omitted # reduce 354 omitted def _reduce_355(val, _values, result) result = val[1] result end # reduce 356 omitted # reduce 357 omitted # reduce 358 omitted def _reduce_359(val, _values, result) else_t, else_ = val[4] result = [ val[0], @builder.condition(val[0], val[1], val[2], val[3], else_t, else_, nil), ] result end # reduce 360 omitted def _reduce_361(val, _values, result) result = val result end # reduce 362 omitted # reduce 363 omitted def _reduce_364(val, _values, result) result = @builder.arg(val[0]) result end def _reduce_365(val, _values, result) result = @builder.multi_lhs(val[0], val[1], val[2]) result end def _reduce_366(val, _values, result) result = [ val[0] ] result end def _reduce_367(val, _values, result) result = val[0] << val[2] result end # reduce 368 omitted def _reduce_369(val, _values, result) result = val[0]. push(val[2]) result end def _reduce_370(val, _values, result) result = val[0]. push(val[2]). concat(val[4]) result end def _reduce_371(val, _values, result) result = [ val[0] ] result end def _reduce_372(val, _values, result) result = [ val[0], *val[2] ] result end def _reduce_373(val, _values, result) result = @builder.restarg(val[0], val[1]) result end def _reduce_374(val, _values, result) result = @builder.restarg(val[0]) result end def _reduce_375(val, _values, result) result = val[0].concat(val[2]).concat(val[3]) result end def _reduce_376(val, _values, result) result = val[0].concat(val[1]) result end def _reduce_377(val, _values, result) result = val[0].concat(val[1]) result end def _reduce_378(val, _values, result) result = val[0].concat(val[1]) result end def _reduce_379(val, _values, result) result = [ val[0] ] result end def _reduce_380(val, _values, result) result = val[1] result end def _reduce_381(val, _values, result) result = [] result end def _reduce_382(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end def _reduce_383(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[6]). concat(val[7]) result end def _reduce_384(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end def _reduce_385(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end def _reduce_386(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end # reduce 387 omitted def _reduce_388(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end def _reduce_389(val, _values, result) if val[1].empty? && val[0].size == 1 result = [@builder.procarg0(val[0][0])] else result = val[0].concat(val[1]) end result end def _reduce_390(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end def _reduce_391(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end def _reduce_392(val, _values, result) result = val[0]. concat(val[1]) result end def _reduce_393(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end def _reduce_394(val, _values, result) result = val[0]. concat(val[1]) result end def _reduce_395(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end # reduce 396 omitted def _reduce_397(val, _values, result) result = @builder.args(nil, [], nil) result end def _reduce_398(val, _values, result) @lexer.state = :expr_value result end def _reduce_399(val, _values, result) @max_numparam_stack.has_ordinary_params! @current_arg_stack.set(nil) result = @builder.args(val[0], val[1], val[2]) result end def _reduce_400(val, _values, result) @max_numparam_stack.has_ordinary_params! @current_arg_stack.set(nil) result = @builder.args(val[0], val[1].concat(val[2]), val[3]) result end def _reduce_401(val, _values, result) result = [] result end def _reduce_402(val, _values, result) result = val[2] result end def _reduce_403(val, _values, result) result = [ val[0] ] result end def _reduce_404(val, _values, result) result = val[0] << val[2] result end def _reduce_405(val, _values, result) @static_env.declare val[0][0] result = @builder.shadowarg(val[0]) result end # reduce 406 omitted def _reduce_407(val, _values, result) @static_env.extend_dynamic @max_numparam_stack.push @context.push(:lambda) result end def _reduce_408(val, _values, result) @context.pop @lexer.cmdarg.push(false) result end def _reduce_409(val, _values, result) args = @max_numparam_stack.has_numparams? ? @builder.numargs(@max_numparam_stack.top) : val[1] result = [ args, val[3] ] @max_numparam_stack.pop @static_env.unextend @lexer.cmdarg.pop result end def _reduce_410(val, _values, result) @max_numparam_stack.has_ordinary_params! result = @builder.args(val[0], val[1].concat(val[2]), val[3]) result end def _reduce_411(val, _values, result) if val[0].any? @max_numparam_stack.has_ordinary_params! end result = @builder.args(nil, val[0], nil) result end def _reduce_412(val, _values, result) @context.push(:lambda) result end def _reduce_413(val, _values, result) result = [ val[0], val[2], val[3] ] @context.pop result end def _reduce_414(val, _values, result) @context.push(:lambda) result end def _reduce_415(val, _values, result) result = [ val[0], val[2], val[3] ] @context.pop result end def _reduce_416(val, _values, result) @context.push(:block) result end def _reduce_417(val, _values, result) result = [ val[0], *val[2], val[3] ] @context.pop result end def _reduce_418(val, _values, result) begin_t, block_args, body, end_t = val[1] result = @builder.block(val[0], begin_t, block_args, body, end_t) result end def _reduce_419(val, _values, result) lparen_t, args, rparen_t = val[3] result = @builder.call_method(val[0], val[1], val[2], lparen_t, args, rparen_t) result end def _reduce_420(val, _values, result) lparen_t, args, rparen_t = val[3] method_call = @builder.call_method(val[0], val[1], val[2], lparen_t, args, rparen_t) begin_t, args, body, end_t = val[4] result = @builder.block(method_call, begin_t, args, body, end_t) result end def _reduce_421(val, _values, result) method_call = @builder.call_method(val[0], val[1], val[2], nil, val[3], nil) begin_t, args, body, end_t = val[4] result = @builder.block(method_call, begin_t, args, body, end_t) result end def _reduce_422(val, _values, result) lparen_t, args, rparen_t = val[1] result = @builder.call_method(nil, nil, val[0], lparen_t, args, rparen_t) result end def _reduce_423(val, _values, result) lparen_t, args, rparen_t = val[3] result = @builder.call_method(val[0], val[1], val[2], lparen_t, args, rparen_t) result end def _reduce_424(val, _values, result) lparen_t, args, rparen_t = val[3] result = @builder.call_method(val[0], val[1], val[2], lparen_t, args, rparen_t) result end def _reduce_425(val, _values, result) result = @builder.call_method(val[0], val[1], val[2]) result end def _reduce_426(val, _values, result) lparen_t, args, rparen_t = val[2] result = @builder.call_method(val[0], val[1], nil, lparen_t, args, rparen_t) result end def _reduce_427(val, _values, result) lparen_t, args, rparen_t = val[2] result = @builder.call_method(val[0], val[1], nil, lparen_t, args, rparen_t) result end def _reduce_428(val, _values, result) lparen_t, args, rparen_t = val[1] result = @builder.keyword_cmd(:super, val[0], lparen_t, args, rparen_t) result end def _reduce_429(val, _values, result) result = @builder.keyword_cmd(:zsuper, val[0]) result end def _reduce_430(val, _values, result) result = @builder.index(val[0], val[1], val[2], val[3]) result end def _reduce_431(val, _values, result) @context.push(:block) result end def _reduce_432(val, _values, result) result = [ val[0], *val[2], val[3] ] @context.pop result end def _reduce_433(val, _values, result) @context.push(:block) result end def _reduce_434(val, _values, result) result = [ val[0], *val[2], val[3] ] @context.pop result end def _reduce_435(val, _values, result) @static_env.extend_dynamic @max_numparam_stack.push result end def _reduce_436(val, _values, result) args = @max_numparam_stack.has_numparams? ? @builder.numargs(@max_numparam_stack.top) : val[1] result = [ args, val[2] ] @max_numparam_stack.pop @static_env.unextend result end def _reduce_437(val, _values, result) @static_env.extend_dynamic @max_numparam_stack.push result end def _reduce_438(val, _values, result) @lexer.cmdarg.push(false) result end def _reduce_439(val, _values, result) args = @max_numparam_stack.has_numparams? ? @builder.numargs(@max_numparam_stack.top) : val[2] result = [ args, val[3] ] @max_numparam_stack.pop @static_env.unextend @lexer.cmdarg.pop result end def _reduce_440(val, _values, result) result = [ @builder.when(val[0], val[1], val[2], val[3]), *val[4] ] result end def _reduce_441(val, _values, result) result = [ val[0] ] result end # reduce 442 omitted def _reduce_443(val, _values, result) @lexer.state = :expr_beg @lexer.command_start = false @pattern_variables.push @pattern_hash_keys.push result = @lexer.in_kwarg @lexer.in_kwarg = true result end def _reduce_444(val, _values, result) @lexer.in_kwarg = val[1] result end def _reduce_445(val, _values, result) result = [ @builder.in_pattern(val[0], *val[2], val[3], val[5]), *val[6] ] result end def _reduce_446(val, _values, result) result = [ val[0] ] result end # reduce 447 omitted def _reduce_448(val, _values, result) result = [ val[0], nil ] result end def _reduce_449(val, _values, result) result = [ val[0], @builder.if_guard(val[1], val[2]) ] result end def _reduce_450(val, _values, result) result = [ val[0], @builder.unless_guard(val[1], val[2]) ] result end # reduce 451 omitted def _reduce_452(val, _values, result) # array patterns that end with comma # like 1, 2, # must be emitted as `array_pattern_with_tail` item = @builder.match_with_trailing_comma(val[0], val[1]) result = @builder.array_pattern(nil, [ item ], nil) result end def _reduce_453(val, _values, result) result = @builder.array_pattern(nil, [val[0]].concat(val[2]), nil) result end def _reduce_454(val, _values, result) result = @builder.array_pattern(nil, val[0], nil) result end def _reduce_455(val, _values, result) result = @builder.hash_pattern(nil, val[0], nil) result end # reduce 456 omitted def _reduce_457(val, _values, result) result = @builder.match_as(val[0], val[1], val[2]) result end # reduce 458 omitted def _reduce_459(val, _values, result) result = @builder.match_alt(val[0], val[1], val[2]) result end # reduce 460 omitted def _reduce_461(val, _values, result) result = val[0] @pattern_hash_keys.push result end def _reduce_462(val, _values, result) result = val[0] @pattern_hash_keys.push result end # reduce 463 omitted def _reduce_464(val, _values, result) @pattern_hash_keys.pop pattern = @builder.array_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end def _reduce_465(val, _values, result) @pattern_hash_keys.pop pattern = @builder.hash_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end def _reduce_466(val, _values, result) pattern = @builder.array_pattern(val[1], nil, val[2]) result = @builder.const_pattern(val[0], val[1], pattern, val[2]) result end def _reduce_467(val, _values, result) @pattern_hash_keys.pop pattern = @builder.array_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end def _reduce_468(val, _values, result) @pattern_hash_keys.pop pattern = @builder.hash_pattern(nil, val[2], nil) result = @builder.const_pattern(val[0], val[1], pattern, val[3]) result end def _reduce_469(val, _values, result) pattern = @builder.array_pattern(val[1], nil, val[2]) result = @builder.const_pattern(val[0], val[1], pattern, val[2]) result end def _reduce_470(val, _values, result) @pattern_hash_keys.push result end def _reduce_471(val, _values, result) @pattern_hash_keys.pop result = @builder.array_pattern(val[0], val[2], val[3]) result end def _reduce_472(val, _values, result) result = @builder.array_pattern(val[0], [], val[1]) result end def _reduce_473(val, _values, result) @pattern_hash_keys.push result = @lexer.in_kwarg @lexer.in_kwarg = false result end def _reduce_474(val, _values, result) @pattern_hash_keys.pop @lexer.in_kwarg = val[1] result = @builder.hash_pattern(val[0], val[2], val[3]) result end def _reduce_475(val, _values, result) result = @builder.hash_pattern(val[0], [], val[1]) result end def _reduce_476(val, _values, result) @pattern_hash_keys.push result end def _reduce_477(val, _values, result) @pattern_hash_keys.pop result = @builder.begin(val[0], val[2], val[3]) result end def _reduce_478(val, _values, result) result = [ val[0] ] result end def _reduce_479(val, _values, result) result = val[0] result end def _reduce_480(val, _values, result) result = [ *val[0], val[1] ] result end def _reduce_481(val, _values, result) match_rest = @builder.match_rest(val[1], val[2]) result = [ *val[0], match_rest ] result end def _reduce_482(val, _values, result) match_rest = @builder.match_rest(val[1], val[2]) result = [ *val[0], match_rest, *val[4] ] result end def _reduce_483(val, _values, result) result = [ *val[0], @builder.match_rest(val[1]) ] result end def _reduce_484(val, _values, result) result = [ *val[0], @builder.match_rest(val[1]), *val[3] ] result end # reduce 485 omitted def _reduce_486(val, _values, result) # array patterns that end with comma # like [1, 2,] # must be emitted as `array_pattern_with_tail` item = @builder.match_with_trailing_comma(val[0], val[1]) result = [ item ] result end def _reduce_487(val, _values, result) # array patterns that end with comma # like [1, 2,] # must be emitted as `array_pattern_with_tail` last_item = @builder.match_with_trailing_comma(val[1], val[2]) result = [ *val[0], last_item ] result end def _reduce_488(val, _values, result) match_rest = @builder.match_rest(val[0], val[1]) result = [ match_rest ] result end def _reduce_489(val, _values, result) match_rest = @builder.match_rest(val[0], val[1]) result = [ match_rest, *val[3] ] result end def _reduce_490(val, _values, result) match_rest = @builder.match_rest(val[0]) result = [ match_rest ] result end def _reduce_491(val, _values, result) match_rest = @builder.match_rest(val[0]) result = [ match_rest, *val[2] ] result end def _reduce_492(val, _values, result) result = [ val[0] ] result end def _reduce_493(val, _values, result) result = [ *val[0], val[2] ] result end # reduce 494 omitted def _reduce_495(val, _values, result) result = [ *val[0], *val[2] ] result end def _reduce_496(val, _values, result) result = val[0] result end def _reduce_497(val, _values, result) result = val[0] result end def _reduce_498(val, _values, result) result = val[0] result end def _reduce_499(val, _values, result) result = [ *val[0], *val[2] ] result end def _reduce_500(val, _values, result) result = [ *val[0], *val[2] ] result end def _reduce_501(val, _values, result) result = [ val[0] ] result end def _reduce_502(val, _values, result) result = [ *val[0], val[2] ] result end def _reduce_503(val, _values, result) result = @builder.match_pair(*val[0], val[1]) result end def _reduce_504(val, _values, result) result = @builder.match_label(*val[0]) result end def _reduce_505(val, _values, result) check_kwarg_name(val[0]) result = [:label, val[0]] result end def _reduce_506(val, _values, result) result = [:quoted, [val[0], val[1], val[2]]] result end def _reduce_507(val, _values, result) result = [ @builder.match_rest(val[0], val[1]) ] result end def _reduce_508(val, _values, result) result = [ @builder.match_rest(val[0], nil) ] result end def _reduce_509(val, _values, result) result = [ @builder.match_nil_pattern(val[0], val[1]) ] result end # reduce 510 omitted def _reduce_511(val, _values, result) result = @builder.range_inclusive(val[0], val[1], val[2]) result end def _reduce_512(val, _values, result) result = @builder.range_exclusive(val[0], val[1], val[2]) result end def _reduce_513(val, _values, result) result = @builder.range_inclusive(val[0], val[1], nil) result end def _reduce_514(val, _values, result) result = @builder.range_exclusive(val[0], val[1], nil) result end # reduce 515 omitted # reduce 516 omitted # reduce 517 omitted def _reduce_518(val, _values, result) result = @builder.range_inclusive(nil, val[0], val[1]) result end def _reduce_519(val, _values, result) result = @builder.range_exclusive(nil, val[0], val[1]) result end # reduce 520 omitted # reduce 521 omitted # reduce 522 omitted # reduce 523 omitted # reduce 524 omitted # reduce 525 omitted # reduce 526 omitted # reduce 527 omitted def _reduce_528(val, _values, result) result = @builder.accessible(val[0]) result end def _reduce_529(val, _values, result) lambda_call = @builder.call_lambda(val[0]) args, (begin_t, body, end_t) = val[1] result = @builder.block(lambda_call, begin_t, args, body, end_t) result end def _reduce_530(val, _values, result) result = @builder.match_var(val[0]) result end def _reduce_531(val, _values, result) name = val[1][0] unless static_env.declared?(name) diagnostic :error, :undefined_lvar, { :name => name }, val[1] end lvar = @builder.accessible(@builder.ident(val[1])) result = @builder.pin(val[0], lvar) result end def _reduce_532(val, _values, result) result = @builder.const_global(val[0], val[1]) result end def _reduce_533(val, _values, result) result = @builder.const_fetch(val[0], val[1], val[2]) result end def _reduce_534(val, _values, result) result = @builder.const(val[0]) result end def _reduce_535(val, _values, result) assoc_t, exc_var = val[2] if val[1] exc_list = @builder.array(nil, val[1], nil) end result = [ @builder.rescue_body(val[0], exc_list, assoc_t, exc_var, val[3], val[4]), *val[5] ] result end def _reduce_536(val, _values, result) result = [] result end def _reduce_537(val, _values, result) result = [ val[0] ] result end # reduce 538 omitted # reduce 539 omitted def _reduce_540(val, _values, result) result = [ val[0], val[1] ] result end # reduce 541 omitted def _reduce_542(val, _values, result) result = [ val[0], val[1] ] result end # reduce 543 omitted # reduce 544 omitted # reduce 545 omitted def _reduce_546(val, _values, result) result = @builder.string_compose(nil, val[0], nil) result end def _reduce_547(val, _values, result) result = [ val[0] ] result end def _reduce_548(val, _values, result) result = val[0] << val[1] result end def _reduce_549(val, _values, result) string = @builder.string_compose(val[0], val[1], val[2]) result = @builder.dedent_string(string, @lexer.dedent_level) result end def _reduce_550(val, _values, result) string = @builder.string(val[0]) result = @builder.dedent_string(string, @lexer.dedent_level) result end def _reduce_551(val, _values, result) result = @builder.character(val[0]) result end def _reduce_552(val, _values, result) string = @builder.xstring_compose(val[0], val[1], val[2]) result = @builder.dedent_string(string, @lexer.dedent_level) result end def _reduce_553(val, _values, result) opts = @builder.regexp_options(val[3]) result = @builder.regexp_compose(val[0], val[1], val[2], opts) result end def _reduce_554(val, _values, result) result = @builder.words_compose(val[0], val[1], val[2]) result end def _reduce_555(val, _values, result) result = [] result end def _reduce_556(val, _values, result) result = val[0] << @builder.word(val[1]) result end def _reduce_557(val, _values, result) result = [ val[0] ] result end def _reduce_558(val, _values, result) result = val[0] << val[1] result end def _reduce_559(val, _values, result) result = @builder.symbols_compose(val[0], val[1], val[2]) result end def _reduce_560(val, _values, result) result = [] result end def _reduce_561(val, _values, result) result = val[0] << @builder.word(val[1]) result end def _reduce_562(val, _values, result) result = @builder.words_compose(val[0], val[1], val[2]) result end def _reduce_563(val, _values, result) result = @builder.symbols_compose(val[0], val[1], val[2]) result end def _reduce_564(val, _values, result) result = [] result end def _reduce_565(val, _values, result) result = val[0] << @builder.string_internal(val[1]) result end def _reduce_566(val, _values, result) result = [] result end def _reduce_567(val, _values, result) result = val[0] << @builder.symbol_internal(val[1]) result end def _reduce_568(val, _values, result) result = [] result end def _reduce_569(val, _values, result) result = val[0] << val[1] result end def _reduce_570(val, _values, result) result = [] result end def _reduce_571(val, _values, result) result = val[0] << val[1] result end def _reduce_572(val, _values, result) result = [] result end def _reduce_573(val, _values, result) result = val[0] << val[1] result end def _reduce_574(val, _values, result) result = @builder.string_internal(val[0]) result end def _reduce_575(val, _values, result) result = val[1] result end def _reduce_576(val, _values, result) @lexer.cmdarg.push(false) @lexer.cond.push(false) result end def _reduce_577(val, _values, result) @lexer.cmdarg.pop @lexer.cond.pop result = @builder.begin(val[0], val[2], val[3]) result end def _reduce_578(val, _values, result) result = @builder.gvar(val[0]) result end def _reduce_579(val, _values, result) result = @builder.ivar(val[0]) result end def _reduce_580(val, _values, result) result = @builder.cvar(val[0]) result end # reduce 581 omitted # reduce 582 omitted # reduce 583 omitted def _reduce_584(val, _values, result) @lexer.state = :expr_end result = @builder.symbol(val[0]) result end def _reduce_585(val, _values, result) @lexer.state = :expr_end result = @builder.symbol_compose(val[0], val[1], val[2]) result end def _reduce_586(val, _values, result) result = val[0] result end def _reduce_587(val, _values, result) if @builder.respond_to? :negate # AST builder interface compatibility result = @builder.negate(val[0], val[1]) else result = @builder.unary_num(val[0], val[1]) end result end def _reduce_588(val, _values, result) @lexer.state = :expr_end result = @builder.integer(val[0]) result end def _reduce_589(val, _values, result) @lexer.state = :expr_end result = @builder.float(val[0]) result end def _reduce_590(val, _values, result) @lexer.state = :expr_end result = @builder.rational(val[0]) result end def _reduce_591(val, _values, result) @lexer.state = :expr_end result = @builder.complex(val[0]) result end def _reduce_592(val, _values, result) result = @builder.ident(val[0]) result end def _reduce_593(val, _values, result) result = @builder.ivar(val[0]) result end def _reduce_594(val, _values, result) result = @builder.gvar(val[0]) result end def _reduce_595(val, _values, result) result = @builder.const(val[0]) result end def _reduce_596(val, _values, result) result = @builder.cvar(val[0]) result end def _reduce_597(val, _values, result) result = @builder.nil(val[0]) result end def _reduce_598(val, _values, result) result = @builder.self(val[0]) result end def _reduce_599(val, _values, result) result = @builder.true(val[0]) result end def _reduce_600(val, _values, result) result = @builder.false(val[0]) result end def _reduce_601(val, _values, result) result = @builder.__FILE__(val[0]) result end def _reduce_602(val, _values, result) result = @builder.__LINE__(val[0]) result end def _reduce_603(val, _values, result) result = @builder.__ENCODING__(val[0]) result end def _reduce_604(val, _values, result) if (node = val[0]) && node.type == :ident name = node.children[0] if name =~ /\A_[1-9]\z/ && !static_env.declared?(name) && context.in_dynamic_block? # definitely an implicit param location = node.loc.expression if max_numparam_stack.has_ordinary_params? diagnostic :error, :ordinary_param_defined, nil, [nil, location] end raw_context = context.stack.dup raw_max_numparam_stack = max_numparam_stack.stack.dup # ignore current block scope raw_context.pop raw_max_numparam_stack.pop raw_context.reverse_each do |outer_scope| if outer_scope == :block || outer_scope == :lambda outer_scope_has_numparams = raw_max_numparam_stack.pop > 0 if outer_scope_has_numparams diagnostic :error, :numparam_used_in_outer_scope, nil, [nil, location] else # for now it's ok, but an outer scope can also be a block # with numparams, so we need to continue end else # found an outer scope that can't have numparams # like def/class/etc break end end static_env.declare(name) max_numparam_stack.register(name[1].to_i) end end result = @builder.accessible(val[0]) result end def _reduce_605(val, _values, result) result = @builder.accessible(val[0]) result end def _reduce_606(val, _values, result) result = @builder.assignable(val[0]) result end def _reduce_607(val, _values, result) result = @builder.assignable(val[0]) result end def _reduce_608(val, _values, result) result = @builder.nth_ref(val[0]) result end def _reduce_609(val, _values, result) result = @builder.back_ref(val[0]) result end def _reduce_610(val, _values, result) @lexer.state = :expr_value result end def _reduce_611(val, _values, result) result = [ val[0], val[2] ] result end def _reduce_612(val, _values, result) result = nil result end def _reduce_613(val, _values, result) result = @builder.args(val[0], val[1], val[2]) @lexer.state = :expr_value result end def _reduce_614(val, _values, result) result = @builder.forward_args(val[0], val[1], val[2]) @static_env.declare_forward_args @lexer.state = :expr_value result end # reduce 615 omitted def _reduce_616(val, _values, result) result = @lexer.in_kwarg @lexer.in_kwarg = true result end def _reduce_617(val, _values, result) @lexer.in_kwarg = val[0] result = @builder.args(nil, val[1], nil) result end def _reduce_618(val, _values, result) result = val[0].concat(val[2]).concat(val[3]) result end def _reduce_619(val, _values, result) result = val[0].concat(val[1]) result end def _reduce_620(val, _values, result) result = val[0].concat(val[1]) result end def _reduce_621(val, _values, result) result = val[0].concat(val[1]) result end def _reduce_622(val, _values, result) result = [ val[0] ] result end def _reduce_623(val, _values, result) result = val[1] result end def _reduce_624(val, _values, result) result = [] result end def _reduce_625(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end def _reduce_626(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[6]). concat(val[7]) result end def _reduce_627(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end def _reduce_628(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end def _reduce_629(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end def _reduce_630(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end def _reduce_631(val, _values, result) result = val[0]. concat(val[1]) result end def _reduce_632(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end def _reduce_633(val, _values, result) result = val[0]. concat(val[2]). concat(val[4]). concat(val[5]) result end def _reduce_634(val, _values, result) result = val[0]. concat(val[1]) result end def _reduce_635(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end def _reduce_636(val, _values, result) result = val[0]. concat(val[1]) result end def _reduce_637(val, _values, result) result = val[0]. concat(val[2]). concat(val[3]) result end def _reduce_638(val, _values, result) result = val[0] result end def _reduce_639(val, _values, result) result = [] result end def _reduce_640(val, _values, result) result = val[0] result end def _reduce_641(val, _values, result) diagnostic :error, :argument_const, nil, val[0] result end def _reduce_642(val, _values, result) diagnostic :error, :argument_ivar, nil, val[0] result end def _reduce_643(val, _values, result) diagnostic :error, :argument_gvar, nil, val[0] result end def _reduce_644(val, _values, result) diagnostic :error, :argument_cvar, nil, val[0] result end # reduce 645 omitted def _reduce_646(val, _values, result) @static_env.declare val[0][0] @max_numparam_stack.has_ordinary_params! result = val[0] result end def _reduce_647(val, _values, result) @current_arg_stack.set(val[0][0]) result = val[0] result end def _reduce_648(val, _values, result) @current_arg_stack.set(0) result = @builder.arg(val[0]) result end def _reduce_649(val, _values, result) result = @builder.multi_lhs(val[0], val[1], val[2]) result end def _reduce_650(val, _values, result) result = [ val[0] ] result end def _reduce_651(val, _values, result) result = val[0] << val[2] result end def _reduce_652(val, _values, result) check_kwarg_name(val[0]) @static_env.declare val[0][0] @max_numparam_stack.has_ordinary_params! @current_arg_stack.set(val[0][0]) result = val[0] result end def _reduce_653(val, _values, result) @current_arg_stack.set(nil) result = @builder.kwoptarg(val[0], val[1]) result end def _reduce_654(val, _values, result) @current_arg_stack.set(nil) result = @builder.kwarg(val[0]) result end def _reduce_655(val, _values, result) result = @builder.kwoptarg(val[0], val[1]) result end def _reduce_656(val, _values, result) result = @builder.kwarg(val[0]) result end def _reduce_657(val, _values, result) result = [ val[0] ] result end def _reduce_658(val, _values, result) result = val[0] << val[2] result end def _reduce_659(val, _values, result) result = [ val[0] ] result end def _reduce_660(val, _values, result) result = val[0] << val[2] result end # reduce 661 omitted # reduce 662 omitted def _reduce_663(val, _values, result) result = [ @builder.kwnilarg(val[0], val[1]) ] result end def _reduce_664(val, _values, result) @static_env.declare val[1][0] result = [ @builder.kwrestarg(val[0], val[1]) ] result end def _reduce_665(val, _values, result) result = [ @builder.kwrestarg(val[0]) ] result end def _reduce_666(val, _values, result) @current_arg_stack.set(0) result = @builder.optarg(val[0], val[1], val[2]) result end def _reduce_667(val, _values, result) @current_arg_stack.set(0) result = @builder.optarg(val[0], val[1], val[2]) result end def _reduce_668(val, _values, result) result = [ val[0] ] result end def _reduce_669(val, _values, result) result = val[0] << val[2] result end def _reduce_670(val, _values, result) result = [ val[0] ] result end def _reduce_671(val, _values, result) result = val[0] << val[2] result end # reduce 672 omitted # reduce 673 omitted def _reduce_674(val, _values, result) @static_env.declare val[1][0] result = [ @builder.restarg(val[0], val[1]) ] result end def _reduce_675(val, _values, result) result = [ @builder.restarg(val[0]) ] result end # reduce 676 omitted # reduce 677 omitted def _reduce_678(val, _values, result) @static_env.declare val[1][0] result = @builder.blockarg(val[0], val[1]) result end def _reduce_679(val, _values, result) result = [ val[1] ] result end def _reduce_680(val, _values, result) result = [] result end # reduce 681 omitted def _reduce_682(val, _values, result) result = val[1] result end def _reduce_683(val, _values, result) result = [] result end # reduce 684 omitted def _reduce_685(val, _values, result) result = [ val[0] ] result end def _reduce_686(val, _values, result) result = val[0] << val[2] result end def _reduce_687(val, _values, result) result = @builder.pair(val[0], val[1], val[2]) result end def _reduce_688(val, _values, result) result = @builder.pair_keyword(val[0], val[1]) result end def _reduce_689(val, _values, result) result = @builder.pair_quoted(val[0], val[1], val[2], val[3]) result end def _reduce_690(val, _values, result) result = @builder.kwsplat(val[0], val[1]) result end # reduce 691 omitted # reduce 692 omitted # reduce 693 omitted # reduce 694 omitted # reduce 695 omitted # reduce 696 omitted # reduce 697 omitted # reduce 698 omitted # reduce 699 omitted # reduce 700 omitted # reduce 701 omitted # reduce 702 omitted def _reduce_703(val, _values, result) result = [:dot, val[0][1]] result end def _reduce_704(val, _values, result) result = [:anddot, val[0][1]] result end # reduce 705 omitted # reduce 706 omitted # reduce 707 omitted # reduce 708 omitted def _reduce_709(val, _values, result) result = val[1] result end def _reduce_710(val, _values, result) result = val[1] result end def _reduce_711(val, _values, result) result = val[1] result end # reduce 712 omitted # reduce 713 omitted # reduce 714 omitted def _reduce_715(val, _values, result) yyerrok result end # reduce 716 omitted # reduce 717 omitted # reduce 718 omitted def _reduce_719(val, _values, result) result = nil result end def _reduce_none(val, _values, result) val[0] end end # class RubyNext end # module Parser