lib/coffee_script/parser.rb in coffee-script-0.2.1 vs lib/coffee_script/parser.rb in coffee-script-0.2.2

- old
+ new

@@ -8,11 +8,11 @@ module CoffeeScript class Parser < Racc::Parser -module_eval(<<'...end grammar.y/module_eval...', 'grammar.y', 423) +module_eval(<<'...end grammar.y/module_eval...', 'grammar.y', 434) # Lex and parse a CoffeeScript. def parse(code) # Uncomment the following line to enable grammar debugging, in combination # with the -g flag in the Rake build task. # @yydebug = true @@ -32,752 +32,767 @@ ...end grammar.y/module_eval... ##### State transition tables begin ### clist = [ -'100,230,108,21,23,26,31,34,37,46,50,56,59,96,161,68,72,249,250,96,-168', -'-168,160,24,27,112,123,126,129,95,99,19,140,101,96,139,224,4,19,253', -'14,123,126,96,42,51,231,12,232,12,123,126,129,95,99,104,107,111,114', -'116,119,122,125,128,94,98,103,106,110,113,115,118,121,124,127,93,97', -'102,105,109,131,131,117,120,38,19,131,244,75,131,66,7,71,240,21,23,26', -'31,34,37,46,50,56,59,132,131,68,72,1,3,8,7,257,18,24,27,30,249,250,252', -'47,52,168,62,19,69,73,161,4,267,12,14,84,181,19,160,161,40,44,49,54', -'58,61,64,160,131,96,6,131,135,96,242,19,-168,-168,130,130,123,126,134', -'134,130,12,169,130,134,42,51,134,172,173,12,42,51,236,38,42,51,225,60', -'130,66,7,71,134,21,23,26,31,34,37,46,50,56,59,96,230,68,72,1,3,8,-168', -'-168,18,24,27,30,42,51,230,47,52,224,62,19,69,73,276,4,130,12,14,130', -'134,68,72,134,40,44,49,54,58,61,64,96,42,51,6,42,51,231,123,126,129', -'95,99,268,253,234,96,42,51,42,51,231,12,-168,-168,275,96,247,235,42', -'51,236,38,-168,-168,237,60,175,66,7,71,19,21,23,26,31,34,37,46,50,56', -'59,82,19,68,72,1,3,8,161,217,18,24,27,30,84,142,160,47,52,288,62,161', -'69,73,96,4,142,12,14,160,,123,126,,40,44,49,54,58,61,64,96,,12,6,164', -'96,,-168,-168,,,96,-168,-168,,12,,164,123,126,129,95,99,104,107,111', -'114,116,119,122,125,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59', -',,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44', -'49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104,107,111,114,116,119,122', -'125,128,94,98,103,106,110,113,115,,,,38,,,,60,,66,7,71,,21,23,26,31', -'34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4', -',12,14,,,,,,40,44,49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104,107', -'111,114,116,119,122,125,128,94,98,103,106,110,113,115,,,,38,,,,60,,66', -'7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47', -'52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,96,,,6,,,,123,126', -'129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110,113', -'115,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3', -'8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61', -'64,96,,,6,,,,123,126,129,95,99,104,107,111,114,116,119,122,125,128,94', -'98,103,106,110,113,115,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50', -'56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,', -',40,44,49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104,107,111,114,116', -'119,122,125,128,94,98,103,106,110,113,115,,,,38,,,,60,,66,7,71,,21,23', -'26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69', -'73,,4,,12,14,,,,,,40,44,49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104', -'107,111,114,116,119,122,125,128,94,98,103,106,110,113,115,,,,38,,,,60', -',66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30', -',,,47,52,,62,,69,73,,4,,12,14,,91,,,,40,44,49,54,58,61,64,96,,,6,,,', -'123,126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106', -'110,113,115,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68', -'72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54', -'58,61,64,96,,,6,,,,123,126,129,95,99,104,107,111,114,116,119,122,125', -',,,,,,,278,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68', -'72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54', -'58,61,64,96,,,6,,,,123,126,129,95,99,104,107,111,114,116,119,122,125', -'128,94,98,103,106,110,113,115,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37', -'46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14', -',,,,,40,44,49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104,107,111,114', -'116,119,122,125,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50', -'56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,', -',40,44,49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104,107,111,114,116', -'119,122,125,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56', -'59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40', -'44,49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104,107,111,114,116,96', -',,,,,,123,126,129,95,99,104,107,38,,,,60,,66,7,71,,21,23,26,31,34,37', -'46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14', -',,,,,40,44,49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104,107,111,114', -'116,96,,,,,,,123,126,129,95,99,104,107,38,,,,60,,66,7,71,,21,23,26,31', -'34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4', -',12,14,,,,,,40,44,49,54,58,61,64,96,,,6,,,,123,126,129,95,99,104,107', -'111,114,116,96,,,,,,,123,126,129,95,99,104,107,38,,,,60,,66,7,71,,21', -'23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62', -',69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,', -',,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3', -'8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61', -'64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34', -'37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12', -'14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60', -',66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30', -',,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,', -',,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59', -',,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44', -'49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21', -'23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62', -',69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,', -',,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3', -'8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61', -'64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34', -'37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12', -'14,153,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,', -',,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27', -'30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,', -',,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56', -'59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40', -'44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71', -',21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52', -',62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,', -',,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72', -'1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,259,,,,,40,44,49,54', -'58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,42,51,,60,,66,7,71,,21,23', -'26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69', -'73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,', -',,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,', -'18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64', -',,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37', -'46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14', -',,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,', -'66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,', -',,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,', -',,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59', -',,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,153,,,,,40', -'44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71', -',21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52', -',62,,69,73,,4,,12,14,153,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,', -',,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68', -'72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,19,,,,,40,44,49', -'54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,42,51,,60,,66,7,71,,21', -'23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62', -',69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,', -',,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3', -'8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61', -'64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34', -'37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12', -'14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60', -',66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30', -',,,47,52,,62,,69,73,,4,,12,14,153,,,,,40,44,49,54,58,61,64,,,,6,,,,', -',,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56', -'59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40', -'44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71', -',21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52', -',62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,', -',,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72', -'1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58', -'61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31', -'34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4', -',12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38', -',,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24', -'27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,', -',,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50', -'56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,', -',40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7', -'71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47', -'52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,', -',,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68', -'72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54', -'58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26', -'31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73', -',4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,', -'38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18', -'24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,', -'6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46', -'50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,', -',,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66', -'7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47', -'52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,', -',,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68', -'72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54', -'58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26', -'31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73', -',4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,', -'38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18', -'24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,', -'6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46', -'50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,', -',,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66', -'7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47', -'52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,', -',,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68', -'72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54', -'58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26', -'31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73', -',4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,', -'38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18', -'24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,', -'6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46', -'50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,', -',,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66', -'7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47', -'52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,', -',,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68', -'72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54', -'58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26', -'31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73', -',4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,', -'38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18', -'24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,', -'6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46', -'50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,', -',,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66', -'7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47', -'52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,', -',,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68', -'72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,,,,40,44,49,54', -'58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,38,,,,60,,66,7,71,,21,23,26', -'31,34,37,46,50,56,59,,,68,72,1,3,8,,,18,24,27,30,,,,47,52,,62,,69,73', -',4,,12,14,,,,,,40,44,49,54,58,61,64,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,', -'38,,,,60,,66,7,71,,21,23,26,31,34,37,46,50,56,59,,,68,72,1,3,8,,,18', -'24,27,30,,,,47,52,,62,,69,73,,4,,12,14,,,100,,108,40,44,49,54,58,61', -'64,,,,6,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,38,,96,,60,,66,,71,123,126', -'129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110,113', -'115,118,121,124,127,93,97,102,105,109,229,,117,120,,,,,,246,21,23,26', -'31,34,37,46,50,56,59,,,,,,,,,,,24,27,,,,,,,,,,,,,4,,,14,,,100,,108,21', -'23,26,31,34,37,46,50,56,59,,,,,,,,,,,24,27,112,,,,,,,,101,,,,4,,,14', -',,96,,75,,66,,71,123,126,129,95,99,104,107,111,114,116,119,122,125,128', -'94,98,103,106,110,113,115,118,121,124,127,93,97,102,105,109,,,117,120', -'100,,108,,75,286,66,,71,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96,', -',,,,,123,126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103', -'106,110,113,115,118,121,124,127,93,97,102,105,109,,,117,120,100,,108', -',,289,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129', -'95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110,113,115', -'118,121,124,127,93,97,102,105,109,229,,117,120,100,,108,,,,,,,,,,,,', -',,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95,99,104,107', -'111,114,116,119,122,125,128,94,98,103,106,110,113,115,118,121,124,127', -'93,97,102,105,109,,,117,120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,', -',,101,,,,,,,,,,96,,,,,,,123,126,129,95,99,104,107,111,114,116,119,122', -'125,128,94,98,103,106,110,113,115,118,121,124,127,93,97,102,105,109', -',,117,120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96', -',,,,,,123,126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103', -'106,110,113,115,118,121,124,127,93,97,102,105,109,,,117,120,100,,108', -',,,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95', -'99,104,107,111,114,116,119,122,125,128,94,98,103,106,110,113,115,118', -'121,124,127,93,97,102,105,109,,,117,120,100,,108,,,,,,,,,,,,,,,,,,,', -',,,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95,99,104,107,111,114', -'116,119,122,125,128,94,98,103,106,110,113,115,118,121,124,127,93,97', -'102,105,109,,,117,120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101', -',,,,,,,19,,96,,,,,,,123,126,129,95,99,104,107,111,114,116,119,122,125', -'128,94,98,103,106,110,113,115,118,121,124,127,93,97,102,105,109,,,117', -'120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96,,,,,,', -'123,126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106', -'110,113,115,118,121,124,127,93,97,102,105,109,,,117,120,100,,108,,,', -',,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,19,,96,,,,,,,123,126,129,95', -'99,104,107,111,114,116,119,122,125,128,94,98,103,106,110,113,115,118', -'121,124,127,93,97,102,105,109,,,117,120,100,,108,,,,,,,,,,,,,,,,,,,', -',,,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95,99,104,107,111,114', -'116,119,122,125,128,94,98,103,106,110,113,115,118,121,124,127,93,97', -'102,105,109,,,117,120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101', -',,,,,,,,,96,,,,,,,123,126,129,95,99,104,107,111,114,116,119,122,125', -'128,94,98,103,106,110,113,115,118,121,124,127,93,97,102,105,109,,,117', -'120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96,,,,,,', -'123,126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106', -'110,113,115,118,121,124,127,93,97,102,105,109,,,117,120,100,,108,,,', -',,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95,99', -'104,107,111,114,116,119,122,125,128,94,98,103,106,110,113,115,118,121', -'124,127,93,97,102,105,109,,,117,120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112', -',,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95,99,104,107,111,114,116,119', -'122,125,128,94,98,103,106,110,113,115,118,121,124,127,93,97,102,105', -'109,,,117,120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,', -',96,,,,,,,123,126,129,95,99,104,107,111,114,116,119,122,125,128,94,98', -'103,106,110,113,115,118,121,124,127,93,97,102,105,109,,,117,120,100', -',108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,,,,101,,,,,,,,19,,96,,,,,,,123,126', -'129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110,113', -'115,118,121,124,127,93,97,102,105,109,,,117,120,100,,108,,,,,,,,,,,', -',,,,,,,,,,,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95,99,104,107', -'111,114,116,119,122,125,128,94,98,103,106,110,113,115,118,121,124,127', -'93,97,102,105,109,,,117,120,100,,108,,,,,,,,,,,,,,,,,,,,,,,112,,,,,', -',,101,,,,,,,,227,,96,,,,,,,123,126,129,95,99,104,107,111,114,116,119', -'122,125,128,94,98,103,106,110,113,115,118,121,124,127,93,97,102,105', -'109,112,,117,120,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95,99,104,107', -'111,114,116,119,122,125,128,94,98,103,106,110,113,115,118,121,124,127', -'93,97,102,105,109,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129,95,99', -'104,107,111,114,116,119,122,125,128,94,98,103,106,110,113,115,118,121', -'124,127,93,97,102,105,109,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123,126,129', -'95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110,113,115', -'118,121,124,127,93,97,102,105,109,112,,,,,,,,101,,,,,,,,,,96,,,,,,,123', -'126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110', -'113,115,118,121,124,127,93,97,102,105,109,101,,,,,,,,,,96,,,,,,,123', -'126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110', -'113,115,118,121,124,127,93,97,102,105,109,101,,,,,,,,,,96,,,,,,,123', -'126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110', -'113,115,118,121,124,127,93,97,102,105,109,101,,,,,,,,,,96,,,,,,,123', -'126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110', -'113,115,118,121,124,127,93,97,102,105,109,101,,,,,,,,,,96,,,,,,,123', -'126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110', -'113,115,118,121,124,127,93,97,102,105,109,101,,,,,,,,,,96,,,,,,,123', -'126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110', -'113,115,118,121,124,127,93,97,102,105,109,101,,,,,,,,,,96,,,,,,,123', -'126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110', -'113,115,118,121,124,127,93,97,102,105,109,96,,,,,,,123,126,129,95,99', -'104,107,111,114,116,119,122,125,128,94,98,103,106,110,113,115,118,121', -'124,127,93,97,102,105,109,96,,,,,,,123,126,129,95,99,104,107,111,114', -'116,119,122,125,128,94,98,103,106,110,113,115,118,121,124,127,93,97', -'102,105,109,96,,,,,,,123,126,129,95,99,104,107,111,114,116,119,122,125', -'128,94,98,103,106,110,113,115,118,121,124,127,93,97,102,105,109,96,', -',,,,,123,126,129,95,99,104,107,111,114,116,119,122,125,128,94,98,103', -'106,110,113,115,118,121,124,127,93,97,102,105,109,96,,,,,,,123,126,129', -'95,99,104,107,111,114,116,119,122,125,128,94,98,103,106,110,113,115', -'118,121,124,127,93,97,102,105,109' ] - racc_action_table = arr = Array.new(8906, nil) +'97,7,106,19,23,27,32,35,38,47,50,56,60,160,255,256,70,90,82,260,89,159', +'260,24,28,110,114,14,26,98,14,227,228,98,102,-173,-173,245,10,123,126', +'18,247,26,98,227,228,171,172,14,123,126,129,93,96,101,105,109,113,116', +'119,122,125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103', +'107,111,160,117,120,39,134,135,166,61,159,65,7,69,244,19,23,27,32,35', +'38,47,50,56,60,26,134,135,70,1,4,8,234,160,20,24,28,31,14,43,51,159', +'52,57,26,66,249,71,2,234,10,275,14,18,251,218,134,135,41,45,49,54,59', +'62,43,51,98,259,6,14,26,158,-173,-173,43,51,235,43,51,43,51,132,246', +'43,51,137,134,135,134,135,264,43,51,235,134,135,39,43,51,253,61,132', +'65,7,69,137,19,23,27,32,35,38,47,50,56,60,283,98,138,70,1,4,8,-173,-173', +'20,24,28,31,255,256,132,234,52,57,137,66,269,71,2,229,10,80,14,18,239', +'143,260,160,41,45,49,54,59,62,14,159,174,282,6,160,132,139,132,98,137', +'221,137,159,132,123,126,220,137,43,51,235,82,236,43,51,241,98,70,14', +'26,158,39,-173,-173,240,61,26,65,7,69,14,19,23,27,32,35,38,47,50,56', +'60,75,98,26,70,1,4,8,-173,-173,20,24,28,31,43,51,241,143,52,57,242,66', +'26,71,2,98,10,297,14,18,201,-173,-173,,41,45,49,54,59,62,98,,,,6,,123', +'126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108', +'112,115,98,,,,,39,123,126,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',98,,70,1,4,8,-173,-173,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,', +',,,41,45,49,54,59,62,98,,,,6,,123,126,129,93,96,101,105,109,113,116', +'119,122,125,128,92,95,100,104,108,112,115,,,,,,39,,,,61,,65,7,69,,19', +'23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,', +'71,2,,10,,14,18,,,,,41,45,49,54,59,62,98,,,,6,,123,126,129,93,96,101', +'105,109,113,116,119,122,125,128,92,95,100,104,108,112,115,,,,,,39,,', +',61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31', +',,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,98,,,,6,,123,126', +'129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108,112', +'115,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4', +'8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62', +'98,,,,6,,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95', +'100,104,108,112,115,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50', +'56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41', +'45,49,54,59,62,98,,,,6,,123,126,129,93,96,101,105,109,113,116,119,122', +'125,128,92,95,100,104,108,112,115,,,,,,39,,,,61,,65,7,69,,19,23,27,32', +'35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10', +',14,18,,,,,41,45,49,54,59,62,98,,,,6,,123,126,129,93,96,101,105,109', +'113,116,119,122,125,128,92,95,100,104,108,112,115,,287,,,,39,,,,61,', +'65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,', +',52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,98,,,,6,,123,126,129', +'93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108,112,115', +',,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,', +'20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,98', +',,,6,,123,126,129,93,96,101,105,109,113,116,119,122,125,98,,,,,,123', +'126,129,93,96,101,105,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56', +'60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45', +'49,54,59,62,98,,,,6,,123,126,129,93,96,101,105,109,113,116,119,122,125', +'98,,,,,,123,126,129,93,96,101,105,39,,,,61,,65,7,69,,19,23,27,32,35', +'38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14', +'18,,,,,41,45,49,54,59,62,98,,,,6,,123,126,129,93,96,101,105,109,113', +'116,119,122,125,98,,,,,,123,126,129,93,96,101,105,39,,,,61,,65,7,69', +',19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,', +'66,,71,2,,10,,14,18,,131,,,41,45,49,54,59,62,98,,,,6,,123,126,129,93', +'96,101,105,109,113,116,119,122,125,98,,,,,,123,126,129,93,96,,,39,,', +',61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31', +',,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,98,,,,6,,123,126', +'129,93,96,101,105,109,113,116,98,,,,,,123,126,129,93,96,101,105,109', +'113,116,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8', +',,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,98', +',,,6,,123,126,129,93,96,101,105,109,113,116,98,,,,,,123,126,129,93,96', +',,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,', +'20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,', +',6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47', +'50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,', +',,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7', +'69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57', +',66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,', +',,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8', +',,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,', +',,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38', +'47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18', +',,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65', +'7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52', +'57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,', +',,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1', +'4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,267,,,,41,45,49,54', +'59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,43,51,,61,,65,7,69,,19,23', +'27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71', +'2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,', +'39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24', +'28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,', +',,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56', +'60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,155,,,,41', +'45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19', +'23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,', +'71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,', +',,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20', +'24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6', +',,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50', +'56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41', +'45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19', +'23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,', +'71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,', +',,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20', +'24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6', +',,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50', +'56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41', +'45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19', +'23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,', +'71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,', +',,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20', +'24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6', +',,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50', +'56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,155,', +',,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7', +'69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57', +',66,,71,2,,10,,14,18,26,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,', +',,,,,,,,,,39,43,51,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70', +'1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59', +'62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35', +'38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14', +'18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,', +'65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,', +',52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,', +',,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70', +'1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,155,,,,41,45,49,54', +'59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32', +'35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10', +',14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,', +'61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31', +',,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,', +',,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,', +',,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,', +',,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,', +',,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,', +',,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,', +',,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,', +',,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,', +',,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,', +',,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,', +',,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,,,61,,65,7,69,,19,23,27', +'32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,', +'10,,14,18,,,,,41,45,49,54,59,62,,,,,6,,,,,,,,,,,,,,,,,,,,,,,,,,,,39', +',,,61,,65,7,69,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,,20,24,28', +'31,,,,,52,57,,66,,71,2,,10,,14,18,,97,,106,41,45,49,54,59,62,,,,,6,', +',,,,,,,,,,110,114,,,,,,,,102,,,,,,,39,,,98,61,,65,,69,123,126,129,93', +'96,101,105,109,113,116,119,122,125,128,92,95,100,104,108,112,115,118', +'121,124,127,91,94,99,103,107,232,,117,120,97,,106,,,252,,,,,,,,,,,,', +',,,,,,,110,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105', +'109,113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124,127', +'91,94,99,103,107,111,,117,120,,,,,,294,19,23,27,32,35,38,47,50,56,60', +',,,70,1,4,8,,,20,24,28,31,,,,,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49', +'54,59,62,,,,,6,,,,,,,,,,19,23,27,32,35,38,47,50,56,60,,,,70,1,4,8,,39', +'20,24,28,61,,65,,69,52,57,,66,,71,2,,10,,14,18,,,,,41,45,49,54,59,62', +',,,97,6,106,19,23,27,32,35,38,47,50,56,60,,,,,,,,,,,24,28,110,114,,', +'39,,,,61,102,65,,69,10,,,18,,,98,,,,,,123,126,129,93,96,101,105,109', +'113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124,127,91', +'94,99,103,107,111,,117,120,97,,106,,61,298,65,,69,,,,,,,,,,,,,,,,,110', +'114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116', +'119,122,125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103', +'107,111,,117,120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,', +',,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128', +'92,95,100,104,108,112,115,118,121,124,127,91,94,99,103,107,111,,117', +'120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,,,,,,,,,98,,,', +',,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104', +'108,112,115,118,121,124,127,91,94,99,103,107,111,,117,120,97,,106,,', +',,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,,,,,,,26,,98,,,,,,123,126,129', +'93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108,112,115', +'118,121,124,127,91,94,99,103,107,111,,117,120,97,,106,,,,,,,,,,,,,,', +',,,,,,,,110,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105', +'109,113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124,127', +'91,94,99,103,107,111,,117,120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114', +',,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116,119', +'122,125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103,107', +'111,,117,120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,,,,,', +',,,98,,,,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92', +'95,100,104,108,112,115,118,121,124,127,91,94,99,103,107,111,,117,120', +'97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,,,,,,,,,98,,,,,,123', +'126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108', +'112,115,118,121,124,127,91,94,99,103,107,111,,117,120,97,,106,,,,,,', +',,,,,,,,,,,,,,,,110,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96', +'101,105,109,113,116,119,122,125,128,92,95,100,104,108,112,115,118,121', +'124,127,91,94,99,103,107,232,,117,120,97,,106,,,,,,,,,,,,,,,,,,,,,,', +'110,114,,,,,,,,102,,,,,,,,231,,98,,,,,,123,126,129,93,96,101,105,109', +'113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124,127,91', +'94,99,103,107,111,,117,120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114,,,', +',,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116,119,122', +'125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103,107,111', +',117,120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,,,,,,,,,98', +',,,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100', +'104,108,112,115,118,121,124,127,91,94,99,103,107,111,,117,120,97,,106', +',,,,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,,,,,,,26,,98,,,,,,123,126', +'129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108,112', +'115,118,121,124,127,91,94,99,103,107,111,,117,120,97,,106,,,,,,,,,,', +',,,,,,,,,,,,110,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101', +'105,109,113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124', +'127,91,94,99,103,107,111,,117,120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110', +'114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116', +'119,122,125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103', +'107,111,,117,120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,', +',,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128', +'92,95,100,104,108,112,115,118,121,124,127,91,94,99,103,107,111,,117', +'120,97,,106,,,,,,,,,,,,,,,,,,,,,,,110,114,,,,,,,,102,,,,,,,,26,,98,', +',,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100', +'104,108,112,115,118,121,124,127,91,94,99,103,107,111,,117,120,110,114', +',,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116,119', +'122,125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103,107', +'111,,117,120,110,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101', +'105,109,113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124', +'127,91,94,99,103,107,111,110,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126', +'129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108,112', +'115,118,121,124,127,91,94,99,103,107,111,110,114,,,,,,,,102,,,,,,,,', +',98,,,,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95', +'100,104,108,112,115,118,121,124,127,91,94,99,103,107,111,110,114,,,', +',,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116,119,122', +'125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103,107,111', +'114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105,109,113,116', +'119,122,125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103', +'107,111,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96,101,105,109', +'113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124,127,91', +'94,99,103,107,111,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126,129,93,96', +'101,105,109,113,116,119,122,125,128,92,95,100,104,108,112,115,118,121', +'124,127,91,94,99,103,107,111,114,,,,,,,,102,,,,,,,,,,98,,,,,,123,126', +'129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108,112', +'115,118,121,124,127,91,94,99,103,107,111,114,,,,,,,,102,,,,,,,,,,98', +',,,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100', +'104,108,112,115,118,121,124,127,91,94,99,103,107,111,102,,,,,,,,,,98', +',,,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100', +'104,108,112,115,118,121,124,127,91,94,99,103,107,102,,,,,,,,,,98,,,', +',,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104', +'108,112,115,118,121,124,127,91,94,99,103,107,102,,,,,,,,,,98,,,,,,123', +'126,129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108', +'112,115,118,121,124,127,91,94,99,103,107,98,,,,,,123,126,129,93,96,101', +'105,109,113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124', +'127,91,94,99,103,107,98,,,,,,123,126,129,93,96,101,105,109,113,116,119', +'122,125,128,92,95,100,104,108,112,115,118,121,124,127,91,94,99,103,107', +'98,,,,,,123,126,129,93,96,101,105,109,113,116,119,122,125,128,92,95', +'100,104,108,112,115,118,121,124,127,91,94,99,103,107,98,,,,,,123,126', +'129,93,96,101,105,109,113,116,119,122,125,128,92,95,100,104,108,112', +'115,118,121,124,127,91,94,99,103,107,98,,,,,,123,126,129,93,96,101,105', +'109,113,116,119,122,125,128,92,95,100,104,108,112,115,118,121,124,127', +'91,94,99,103,107' ] + racc_action_table = arr = Array.new(8999, 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 = [ -'167,155,167,132,132,132,132,132,132,132,132,132,132,149,264,247,247', -'223,223,195,149,149,264,132,132,167,195,195,195,195,195,223,29,167,215', -'29,200,132,38,227,132,215,215,167,155,155,155,227,155,264,167,167,167', -'167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167', -'167,167,167,167,167,167,167,167,167,167,76,28,167,167,247,173,77,174', -'132,55,132,99,132,167,99,99,99,99,99,99,99,99,99,99,28,218,99,99,99', -'99,99,84,229,99,99,99,99,245,245,225,99,99,72,99,244,99,99,236,99,239', -'99,99,17,90,242,236,238,99,99,99,99,99,99,99,238,158,144,99,159,28,187', -'172,84,144,144,76,28,187,187,76,28,77,236,73,55,77,283,283,55,81,81', -'238,239,239,239,99,90,90,142,99,218,99,3,99,218,3,3,3,3,3,3,3,3,3,3', -'147,241,3,3,3,3,3,147,147,3,3,3,3,236,236,219,3,3,141,3,140,3,3,254', -'3,158,3,3,159,158,139,139,159,3,3,3,3,3,3,3,192,16,16,3,241,241,241', -'192,192,192,192,192,241,254,160,145,22,22,219,219,219,254,145,145,254', -'156,219,161,162,162,162,3,156,156,162,3,82,3,6,3,276,6,6,6,6,6,6,6,6', -'6,6,9,8,6,6,6,6,6,66,131,6,6,6,6,86,30,66,6,6,284,6,164,6,6,184,6,112', -'6,6,164,,184,184,,6,6,6,6,6,6,6,152,,66,6,66,79,,152,152,,,186,79,79', -',164,,164,186,186,186,186,186,186,186,186,186,186,186,186,186,6,,,,6', -',6,7,6,,7,7,7,7,7,7,7,7,7,7,,,7,7,7,7,7,,,7,7,7,7,,,,7,7,,7,,7,7,,7', -',7,7,,,,,,7,7,7,7,7,7,7,198,,,7,,,,198,198,198,198,198,198,198,198,198', -'198,198,198,198,198,198,198,198,198,198,198,198,,,,7,,,,7,,7,121,7,', -'121,121,121,121,121,121,121,121,121,121,,,121,121,121,121,121,,,121', -'121,121,121,,,,121,121,,121,,121,121,,121,,121,121,,,,,,121,121,121', -'121,121,121,121,209,,,121,,,,209,209,209,209,209,209,209,209,209,209', -'209,209,209,209,209,209,209,209,209,209,209,,,,121,,,,121,,121,278,121', -',278,278,278,278,278,278,278,278,278,278,,,278,278,278,278,278,,,278', -'278,278,278,,,,278,278,,278,,278,278,,278,,278,278,,,,,,278,278,278', -'278,278,278,278,206,,,278,,,,206,206,206,206,206,206,206,206,206,206', -'206,206,206,206,206,206,206,206,206,206,206,,,,278,,,,278,,278,259,278', -',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,203,,,259,,,,203,203,203,203,203,203,203,203,203,203', -'203,203,203,203,203,203,203,203,203,203,203,,,,259,,,,259,,259,258,259', -',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,211,,,258,,,,211,211,211,211,211,211,211,211,211,211', -'211,211,211,211,211,211,211,211,211,211,211,,,,258,,,,258,,258,18,258', -',18,18,18,18,18,18,18,18,18,18,,,18,18,18,18,18,,,18,18,18,18,,,,18', -'18,,18,,18,18,,18,,18,18,,,,,,18,18,18,18,18,18,18,201,,,18,,,,201,201', -'201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201', -'201,201,,,,18,,,,18,,18,19,18,,19,19,19,19,19,19,19,19,19,19,,,19,19', -'19,19,19,,,19,19,19,19,,,,19,19,,19,,19,19,,19,,19,19,,19,,,,19,19,19', -'19,19,19,19,194,,,19,,,,194,194,194,194,194,194,194,194,194,194,194', -'194,194,194,194,194,194,194,194,194,194,,,,19,,,,19,,19,257,19,,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,214,,,257,,,,214,214,214,214,214,214,214,214,214,214,214', -'214,214,,,,,,,,257,,,,257,,,,257,,257,253,257,,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,213,,,253', -',,,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213,213', -'213,213,213,213,,,,253,,,,253,,253,250,253,,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,183,,,250', -',,,183,183,183,183,183,183,183,183,183,183,183,183,183,,,,,,,,,,,,250', -',,,250,,250,249,250,,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,191,,,249,,,,191,191,191,191,191,191', -'191,191,191,191,191,191,191,,,,,,,,,,,,249,,,,249,,249,235,249,,235', -'235,235,235,235,235,235,235,235,235,,,235,235,235,235,235,,,235,235', -'235,235,,,,235,235,,235,,235,235,,235,,235,235,,,,,,235,235,235,235', -'235,235,235,207,,,235,,,,207,207,207,207,207,207,207,207,207,207,204', -',,,,,,204,204,204,204,204,204,204,235,,,,235,,235,234,235,,234,234,234', -'234,234,234,234,234,234,234,,,234,234,234,234,234,,,234,234,234,234', -',,,234,234,,234,,234,234,,234,,234,234,,,,,,234,234,234,234,234,234', -'234,212,,,234,,,,212,212,212,212,212,212,212,212,212,212,199,,,,,,,199', -'199,199,199,199,199,199,234,,,,234,,234,40,234,,40,40,40,40,40,40,40', -'40,40,40,,,40,40,40,40,40,,,40,40,40,40,,,,40,40,,40,,40,40,,40,,40', -'40,,,,,,40,40,40,40,40,40,40,210,,,40,,,,210,210,210,210,210,210,210', -'210,210,210,202,,,,,,,202,202,202,202,202,202,202,40,,,,40,,40,44,40', -',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,47,44,,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,49,47', -',49,49,49,49,49,49,49,49,49,49,,,49,49,49,49,49,,,49,49,49,49,,,,49', -'49,,49,,49,49,,49,,49,49,,,,,,49,49,49,49,49,49,49,,,,49,,,,,,,,,,,', -',,,,,,,,,,,,,,,,49,,,,49,,49,52,49,,52,52,52,52,52,52,52,52,52,52,,', -'52,52,52,52,52,,,52,52,52,52,,,,52,52,,52,,52,52,,52,,52,52,,,,,,52', -'52,52,52,52,52,52,,,,52,,,,,,,,,,,,,,,,,,,,,,,,,,,,52,,,,52,,52,54,52', -',54,54,54,54,54,54,54,54,54,54,,,54,54,54,54,54,,,54,54,54,54,,,,54', -'54,,54,,54,54,,54,,54,54,,,,,,54,54,54,54,54,54,54,,,,54,,,,,,,,,,,', -',,,,,,,,,,,,,,,,54,,,,54,,54,233,54,,233,233,233,233,233,233,233,233', -'233,233,,,233,233,233,233,233,,,233,233,233,233,,,,233,233,,233,,233', -'233,,233,,233,233,,,,,,233,233,233,233,233,233,233,,,,233,,,,,,,,,,', -',,,,,,,,,,,,,,,,,233,,,,233,,233,58,233,,58,58,58,58,58,58,58,58,58', -'58,,,58,58,58,58,58,,,58,58,58,58,,,,58,58,,58,,58,58,,58,,58,58,,,', -',,58,58,58,58,58,58,58,,,,58,,,,,,,,,,,,,,,,,,,,,,,,,,,,58,,,,58,,58', -'60,58,,60,60,60,60,60,60,60,60,60,60,,,60,60,60,60,60,,,60,60,60,60', -',,,60,60,,60,,60,60,,60,,60,60,60,,,,,60,60,60,60,60,60,60,,,,60,,,', -',,,,,,,,,,,,,,,,,,,,,,,,60,,,,60,,60,61,60,,61,61,61,61,61,61,61,61', -'61,61,,,61,61,61,61,61,,,61,61,61,61,,,,61,61,,61,,61,61,,61,,61,61', -',,,,,61,61,61,61,61,61,61,,,,61,,,,,,,,,,,,,,,,,,,,,,,,,,,,61,,,,61', -',61,62,61,,62,62,62,62,62,62,62,62,62,62,,,62,62,62,62,62,,,62,62,62', -'62,,,,62,62,,62,,62,62,,62,,62,62,,,,,,62,62,62,62,62,62,62,,,,62,,', -',,,,,,,,,,,,,,,,,,,,,,,,,62,,,,62,,62,120,62,,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,231,120,,231,231,231,231,231', -'231,231,231,231,231,,,231,231,231,231,231,,,231,231,231,231,,,,231,231', -',231,,231,231,,231,,231,231,231,,,,,231,231,231,231,231,231,231,,,,231', -',,,,,,,,,,,,,,,,,,,,,,,,,,,231,231,231,,231,,231,69,231,,69,69,69,69', -'69,69,69,69,69,69,,,69,69,69,69,69,,,69,69,69,69,,,,69,69,,69,,69,69', -',69,,69,69,,,,,,69,69,69,69,69,69,69,,,,69,,,,,,,,,,,,,,,,,,,,,,,,,', -',,69,,,,69,,69,71,69,,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,224,71,,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,224,224', -'224,,,,224,,,,,,,,,,,,,,,,,,,,,,,,,,,,224,,,,224,,224,119,224,,119,119', -'119,119,119,119,119,119,119,119,,,119,119,119,119,119,,,119,119,119', -'119,,,,119,119,,119,,119,119,,119,,119,119,,,,,,119,119,119,119,119', -'119,119,,,,119,,,,,,,,,,,,,,,,,,,,,,,,,,,,119,,,,119,,119,75,119,,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,169,75,,169,169,169,169,169,169,169,169,169', -'169,,,169,169,169,169,169,,,169,169,169,169,,,,169,169,,169,,169,169', -',169,,169,169,169,,,,,169,169,169,169,169,169,169,,,,169,,,,,,,,,,,', -',,,,,,,,,,,,,,,,169,,,,169,,169,0,169,,0,0,0,0,0,0,0,0,0,0,,,0,0,0,0', -'0,,,0,0,0,0,,,,0,0,,0,,0,0,,0,,0,0,0,,,,,0,0,0,0,0,0,0,,,,0,,,,,,,,', -',,,,,,,,,,,,,,,,,,,0,0,0,,0,,0,124,0,,124,124,124,124,124,124,124,124', -'124,124,,,124,124,124,124,124,,,124,124,124,124,,,,124,124,,124,,124', -'124,,124,,124,124,,,,,,124,124,124,124,124,124,124,,,,124,,,,,,,,,,', -',,,,,,,,,,,,,,,,,124,,,,124,,124,153,124,,153,153,153,153,153,153,153', -'153,153,153,,,153,153,153,153,153,,,153,153,153,153,,,,153,153,,153', -',153,153,,153,,153,153,,,,,,153,153,153,153,153,153,153,,,,153,,,,,', -',,,,,,,,,,,,,,,,,,,,,,153,,,,153,,153,135,153,,135,135,135,135,135,135', -'135,135,135,135,,,135,135,135,135,135,,,135,135,135,135,,,,135,135,', -'135,,135,135,,135,,135,135,,,,,,135,135,135,135,135,135,135,,,,135,', -',,,,,,,,,,,,,,,,,,,,,,,,,,135,,,,135,,135,134,135,,134,134,134,134,134', -'134,134,134,134,134,,,134,134,134,134,134,,,134,134,134,134,,,,134,134', -',134,,134,134,,134,,134,134,134,,,,,134,134,134,134,134,134,134,,,,134', -',,,,,,,,,,,,,,,,,,,,,,,,,,,134,,,,134,,134,118,134,,118,118,118,118', -'118,118,118,118,118,118,,,118,118,118,118,118,,,118,118,118,118,,,,118', -'118,,118,,118,118,,118,,118,118,,,,,,118,118,118,118,118,118,118,,,', -'118,,,,,,,,,,,,,,,,,,,,,,,,,,,,118,,,,118,,118,83,118,,83,83,83,83,83', -'83,83,83,83,83,,,83,83,83,83,83,,,83,83,83,83,,,,83,83,,83,,83,83,,83', -',83,83,,,,,,83,83,83,83,83,83,83,,,,83,,,,,,,,,,,,,,,,,,,,,,,,,,,,83', -',,,83,,83,130,83,,130,130,130,130,130,130,130,130,130,130,,,130,130', -'130,130,130,,,130,130,130,130,,,,130,130,,130,,130,130,,130,,130,130', -',,,,,130,130,130,130,130,130,130,,,,130,,,,,,,,,,,,,,,,,,,,,,,,,,,,130', -',,,130,,130,129,130,,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,128,129,,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,127,128,,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,93,127,,93,93,93,93,93,93,93,93,93,93,,,93,93,93,93,93,', -',93,93,93,93,,,,93,93,,93,,93,93,,93,,93,93,,,,,,93,93,93,93,93,93,93', -',,,93,,,,,,,,,,,,,,,,,,,,,,,,,,,,93,,,,93,,93,94,93,,94,94,94,94,94', -'94,94,94,94,94,,,94,94,94,94,94,,,94,94,94,94,,,,94,94,,94,,94,94,,94', -',94,94,,,,,,94,94,94,94,94,94,94,,,,94,,,,,,,,,,,,,,,,,,,,,,,,,,,,94', -',,,94,,94,95,94,,95,95,95,95,95,95,95,95,95,95,,,95,95,95,95,95,,,95', -'95,95,95,,,,95,95,,95,,95,95,,95,,95,95,,,,,,95,95,95,95,95,95,95,,', -',95,,,,,,,,,,,,,,,,,,,,,,,,,,,,95,,,,95,,95,97,95,,97,97,97,97,97,97', -'97,97,97,97,,,97,97,97,97,97,,,97,97,97,97,,,,97,97,,97,,97,97,,97,', -'97,97,,,,,,97,97,97,97,97,97,97,,,,97,,,,,,,,,,,,,,,,,,,,,,,,,,,,97', -',,,97,,97,98,97,,98,98,98,98,98,98,98,98,98,98,,,98,98,98,98,98,,,98', -'98,98,98,,,,98,98,,98,,98,98,,98,,98,98,,,,,,98,98,98,98,98,98,98,,', -',98,,,,,,,,,,,,,,,,,,,,,,,,,,,,98,,,,98,,98,122,98,,122,122,122,122', -'122,122,122,122,122,122,,,122,122,122,122,122,,,122,122,122,122,,,,122', -'122,,122,,122,122,,122,,122,122,,,,,,122,122,122,122,122,122,122,,,', -'122,,,,,,,,,,,,,,,,,,,,,,,,,,,,122,,,,122,,122,100,122,,100,100,100', -'100,100,100,100,100,100,100,,,100,100,100,100,100,,,100,100,100,100', -',,,100,100,,100,,100,100,,100,,100,100,,,,,,100,100,100,100,100,100', -'100,,,,100,,,,,,,,,,,,,,,,,,,,,,,,,,,,100,,,,100,,100,101,100,,101,101', -'101,101,101,101,101,101,101,101,,,101,101,101,101,101,,,101,101,101', -'101,,,,101,101,,101,,101,101,,101,,101,101,,,,,,101,101,101,101,101', -'101,101,,,,101,,,,,,,,,,,,,,,,,,,,,,,,,,,,101,,,,101,,101,102,101,,102', -'102,102,102,102,102,102,102,102,102,,,102,102,102,102,102,,,102,102', -'102,102,,,,102,102,,102,,102,102,,102,,102,102,,,,,,102,102,102,102', -'102,102,102,,,,102,,,,,,,,,,,,,,,,,,,,,,,,,,,,102,,,,102,,102,103,102', -',103,103,103,103,103,103,103,103,103,103,,,103,103,103,103,103,,,103', -'103,103,103,,,,103,103,,103,,103,103,,103,,103,103,,,,,,103,103,103', -'103,103,103,103,,,,103,,,,,,,,,,,,,,,,,,,,,,,,,,,,103,,,,103,,103,117', -'103,,117,117,117,117,117,117,117,117,117,117,,,117,117,117,117,117,', -',117,117,117,117,,,,117,117,,117,,117,117,,117,,117,117,,,,,,117,117', -'117,117,117,117,117,,,,117,,,,,,,,,,,,,,,,,,,,,,,,,,,,117,,,,117,,117', -'105,117,,105,105,105,105,105,105,105,105,105,105,,,105,105,105,105,105', -',,105,105,105,105,,,,105,105,,105,,105,105,,105,,105,105,,,,,,105,105', -'105,105,105,105,105,,,,105,,,,,,,,,,,,,,,,,,,,,,,,,,,,105,,,,105,,105', -'106,105,,106,106,106,106,106,106,106,106,106,106,,,106,106,106,106,106', -',,106,106,106,106,,,,106,106,,106,,106,106,,106,,106,106,,,,,,106,106', -'106,106,106,106,106,,,,106,,,,,,,,,,,,,,,,,,,,,,,,,,,,106,,,,106,,106', -'107,106,,107,107,107,107,107,107,107,107,107,107,,,107,107,107,107,107', -',,107,107,107,107,,,,107,107,,107,,107,107,,107,,107,107,,,,,,107,107', -'107,107,107,107,107,,,,107,,,,,,,,,,,,,,,,,,,,,,,,,,,,107,,,,107,,107', -'108,107,,108,108,108,108,108,108,108,108,108,108,,,108,108,108,108,108', -',,108,108,108,108,,,,108,108,,108,,108,108,,108,,108,108,,,,,,108,108', -'108,108,108,108,108,,,,108,,,,,,,,,,,,,,,,,,,,,,,,,,,,108,,,,108,,108', -'109,108,,109,109,109,109,109,109,109,109,109,109,,,109,109,109,109,109', -',,109,109,109,109,,,,109,109,,109,,109,109,,109,,109,109,,,,,,109,109', -'109,109,109,109,109,,,,109,,,,,,,,,,,,,,,,,,,,,,,,,,,,109,,,,109,,109', -'110,109,,110,110,110,110,110,110,110,110,110,110,,,110,110,110,110,110', -',,110,110,110,110,,,,110,110,,110,,110,110,,110,,110,110,,,,,,110,110', -'110,110,110,110,110,,,,110,,,,,,,,,,,,,,,,,,,,,,,,,,,,110,,,,110,,110', -'111,110,,111,111,111,111,111,111,111,111,111,111,,,111,111,111,111,111', -',,111,111,111,111,,,,111,111,,111,,111,111,,111,,111,111,,,,,,111,111', -'111,111,111,111,111,,,,111,,,,,,,,,,,,,,,,,,,,,,,,,,,,111,,,,111,,111', -'125,111,,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', -'113,125,,113,113,113,113,113,113,113,113,113,113,,,113,113,113,113,113', -',,113,113,113,113,,,,113,113,,113,,113,113,,113,,113,113,,,,,,113,113', -'113,113,113,113,113,,,,113,,,,,,,,,,,,,,,,,,,,,,,,,,,,113,,,,113,,113', -'114,113,,114,114,114,114,114,114,114,114,114,114,,,114,114,114,114,114', -',,114,114,114,114,,,,114,114,,114,,114,114,,114,,114,114,,,,,,114,114', -'114,114,114,114,114,,,,114,,,,,,,,,,,,,,,,,,,,,,,,,,,,114,,,,114,,114', -'115,114,,115,115,115,115,115,115,115,115,115,115,,,115,115,115,115,115', -',,115,115,115,115,,,,115,115,,115,,115,115,,115,,115,115,,,,,,115,115', -'115,115,115,115,115,,,,115,,,,,,,,,,,,,,,,,,,,,,,,,,,,115,,,,115,,115', -'116,115,,116,116,116,116,116,116,116,116,116,116,,,116,116,116,116,116', -',,116,116,116,116,,,,116,116,,116,,116,116,,116,,116,116,,,,,,116,116', -'116,116,116,116,116,,,,116,,,,,,,,,,,,,,,,,,,,,,,,,,,,116,,,,116,,116', -'104,116,,104,104,104,104,104,104,104,104,104,104,,,104,104,104,104,104', -',,104,104,104,104,,,,104,104,,104,,104,104,,104,,104,104,,,216,,216', -'104,104,104,104,104,104,104,,,,104,,,,,,,,,,,,216,,,,,,,,216,,,,,,,', -'104,,216,,104,,104,,104,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,64,64,64,64,64,64,64,64,64,64,,,,,,,,', -',,64,64,,,,,,,,,,,,,64,,,64,,,279,,279,1,1,1,1,1,1,1,1,1,1,,,,,,,,,', -',1,1,279,,,,,,,,279,,,,1,,,1,,,279,,64,,64,,64,279,279,279,279,279,279', -'279,279,279,279,279,279,279,279,279,279,279,279,279,279,279,279,279', -'279,279,279,279,279,279,279,,,279,279,285,,285,,1,279,1,,1,,,,,,,,,', -',,,,,,,285,,,,,,,,285,,,,,,,,,,285,,,,,,,285,285,285,285,285,285,285', -'285,285,285,285,285,285,285,285,285,285,285,285,285,285,285,285,285', -'285,285,285,285,285,285,,,285,285,154,,154,,,285,,,,,,,,,,,,,,,,,,,', -'154,,,,,,,,154,,,,,,,,,,154,,,,,,,154,154,154,154,154,154,154,154,154', +'165,82,165,138,138,138,138,138,138,138,138,138,138,273,226,226,253,22', +'17,231,22,273,285,138,138,165,165,231,226,147,285,142,142,187,165,147', +'147,166,138,187,187,138,171,82,165,200,200,79,79,273,165,165,165,165', +'165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165', +'165,165,165,165,165,165,165,165,165,165,241,165,165,253,74,74,70,138', +'241,138,95,138,165,95,95,95,95,95,95,95,95,95,95,247,55,55,95,95,95', +'95,169,65,95,95,95,95,241,291,291,65,95,95,172,95,173,95,95,222,95,245', +'95,95,201,130,223,223,95,95,95,95,95,95,16,16,146,229,95,65,249,65,146', +'146,169,169,169,263,263,21,21,74,169,241,241,74,73,73,224,224,232,222', +'222,222,29,29,95,130,130,222,95,55,95,119,95,55,119,119,119,119,119', +'119,119,119,119,119,261,145,29,119,119,119,119,145,145,119,119,119,119', +'250,250,223,156,119,119,223,119,238,119,119,143,119,9,119,119,159,31', +'261,158,119,119,119,119,119,119,261,158,80,261,119,243,73,29,224,184', +'73,135,224,243,29,184,184,134,29,156,156,156,84,156,238,238,238,149', +'89,158,283,158,119,149,149,160,119,8,119,118,119,243,118,118,118,118', +'118,118,118,118,118,118,2,153,90,118,118,118,118,153,153,118,118,118', +'118,162,162,162,110,118,118,162,118,39,118,118,77,118,292,118,118,111', +'77,77,,118,118,118,118,118,118,213,,,,118,,213,213,213,213,213,213,213', +'213,213,213,213,213,213,213,213,213,213,213,213,213,213,217,,,,,118', +'217,217,,118,,118,6,118,,6,6,6,6,6,6,6,6,6,6,,157,,6,6,6,6,157,157,6', +'6,6,6,,,,,6,6,,6,,6,6,,6,,6,6,,,,,6,6,6,6,6,6,194,,,,6,,194,194,194', +'194,194,194,194,194,194,194,194,194,194,194,194,194,194,194,194,194', +'194,,,,,,6,,,,6,,6,7,6,,7,7,7,7,7,7,7,7,7,7,,,,7,7,7,7,,,7,7,7,7,,,', +',7,7,,7,,7,7,,7,,7,7,,,,,7,7,7,7,7,7,198,,,,7,,198,198,198,198,198,198', +'198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,,,,,,7,', +',,7,,7,117,7,,117,117,117,117,117,117,117,117,117,117,,,,117,117,117', +'117,,,117,117,117,117,,,,,117,117,,117,,117,117,,117,,117,117,,,,,117', +'117,117,117,117,117,208,,,,117,,208,208,208,208,208,208,208,208,208', +'208,208,208,208,208,208,208,208,208,208,208,208,,,,,,117,,,,117,,117', +'267,117,,267,267,267,267,267,267,267,267,267,267,,,,267,267,267,267', +',,267,267,267,267,,,,,267,267,,267,,267,267,,267,,267,267,,,,,267,267', +'267,267,267,267,211,,,,267,,211,211,211,211,211,211,211,211,211,211', +'211,211,211,211,211,211,211,211,211,211,211,,,,,,267,,,,267,,267,265', +'267,,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,205,,,,265,,205,205,205,205,205,205,205,205,205,205,205', +'205,205,205,205,205,205,205,205,205,205,,,,,,265,,,,265,,265,264,265', +',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,202,,,,264,,202,202,202,202,202,202,202,202,202,202,202,202', +'202,202,202,202,202,202,202,202,202,,264,,,,264,,,,264,,264,20,264,', +'20,20,20,20,20,20,20,20,20,20,,,,20,20,20,20,,,20,20,20,20,,,,,20,20', +',20,,20,20,,20,,20,20,,,,,20,20,20,20,20,20,215,,,,20,,215,215,215,215', +'215,215,215,215,215,215,215,215,215,215,215,215,215,215,215,215,215', +',,,,,20,,,,20,,20,260,20,,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,216,,,,260,,216,216,216,216,216,216', +'216,216,216,216,216,216,216,206,,,,,,206,206,206,206,206,206,206,260', +',,,260,,260,256,260,,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,183,,,,256,,183,183,183,183,183,183,183', +'183,183,183,183,183,183,199,,,,,,199,199,199,199,199,199,199,256,,,', +'256,,256,255,256,,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,190,,,,255,,190,190,190,190,190,190,190,190', +'190,190,190,190,190,203,,,,,,203,203,203,203,203,203,203,255,,,,255', +',255,26,255,,26,26,26,26,26,26,26,26,26,26,,,,26,26,26,26,,,26,26,26', +'26,,,,,26,26,,26,,26,26,,26,,26,26,,26,,,26,26,26,26,26,26,186,,,,26', +',186,186,186,186,186,186,186,186,186,186,186,186,186,191,,,,,,191,191', +'191,191,191,,,26,,,,26,,26,240,26,,240,240,240,240,240,240,240,240,240', +'240,,,,240,240,240,240,,,240,240,240,240,,,,,240,240,,240,,240,240,', +'240,,240,240,,,,,240,240,240,240,240,240,212,,,,240,,212,212,212,212', +'212,212,212,212,212,212,209,,,,,,209,209,209,209,209,209,209,209,209', +'209,240,,,,240,,240,239,240,,239,239,239,239,239,239,239,239,239,239', +',,,239,239,239,239,,,239,239,239,239,,,,,239,239,,239,,239,239,,239', +',239,239,,,,,239,239,239,239,239,239,214,,,,239,,214,214,214,214,214', +'214,214,214,214,214,195,,,,,,195,195,195,195,195,,,,,,239,,,,239,,239', +'237,239,,237,237,237,237,237,237,237,237,237,237,,,,237,237,237,237', +',,237,237,237,237,,,,,237,237,,237,,237,237,,237,,237,237,,,,,237,237', +'237,237,237,237,,,,,237,,,,,,,,,,,,,,,,,,,,,,,,,,,,237,,,,237,,237,41', +'237,,41,41,41,41,41,41,41,41,41,41,,,,41,41,41,41,,,41,41,41,41,,,,', +'41,41,,41,,41,41,,41,,41,41,,,,,41,41,41,41,41,41,,,,,41,,,,,,,,,,,', +',,,,,,,,,,,,,,,,41,,,,41,,41,45,41,,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,49,45,,49', +'49,49,49,49,49,49,49,49,49,,,,49,49,49,49,,,49,49,49,49,,,,,49,49,,49', +',49,49,,49,,49,49,,,,,49,49,49,49,49,49,,,,,49,,,,,,,,,,,,,,,,,,,,,', +',,,,,,49,,,,49,,49,52,49,,52,52,52,52,52,52,52,52,52,52,,,,52,52,52', +'52,,,52,52,52,52,,,,,52,52,,52,,52,52,,52,,52,52,,,,,52,52,52,52,52', +'52,,,,,52,,,,,,,,,,,,,,,,,,,,,,,,,,,,52,,,,52,,52,54,52,,54,54,54,54', +'54,54,54,54,54,54,,,,54,54,54,54,,,54,54,54,54,,,,,54,54,,54,,54,54', +',54,,54,54,,,,,54,54,54,54,54,54,,,,,54,,,,,,,,,,,,,,,,,,,,,,,,,,,,54', +',,,54,,54,235,54,,235,235,235,235,235,235,235,235,235,235,,,,235,235', +'235,235,,,235,235,235,235,,,,,235,235,,235,,235,235,,235,,235,235,235', +',,,235,235,235,235,235,235,,,,,235,,,,,,,,,,,,,,,,,,,,,,,,,,,,235,235', +'235,,235,,235,57,235,,57,57,57,57,57,57,57,57,57,57,,,,57,57,57,57,', +',57,57,57,57,,,,,57,57,,57,,57,57,,57,,57,57,,,,,57,57,57,57,57,57,', +',,,57,,,,,,,,,,,,,,,,,,,,,,,,,,,,57,,,,57,,57,59,57,,59,59,59,59,59', +'59,59,59,59,59,,,,59,59,59,59,,,59,59,59,59,,,,,59,59,,59,,59,59,,59', +',59,59,,,,,59,59,59,59,59,59,,,,,59,,,,,,,,,,,,,,,,,,,,,,,,,,,,59,,', +',59,,59,61,59,,61,61,61,61,61,61,61,61,61,61,,,,61,61,61,61,,,61,61', +'61,61,,,,,61,61,,61,,61,61,,61,,61,61,61,,,,61,61,61,61,61,61,,,,,61', +',,,,,,,,,,,,,,,,,,,,,,,,,,,61,,,,61,,61,62,61,,62,62,62,62,62,62,62', +'62,62,62,,,,62,62,62,62,,,62,62,62,62,,,,,62,62,,62,,62,62,,62,,62,62', +',,,,62,62,62,62,62,62,,,,,62,,,,,,,,,,,,,,,,,,,,,,,,,,,,62,,,,62,,62', +'228,62,,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,66', +'228,,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,69,66,,69,69,69,69,69,69,69,69,69,69,,', +',69,69,69,69,,,69,69,69,69,,,,,69,69,,69,,69,69,,69,,69,69,,,,,69,69', +'69,69,69,69,,,,,69,,,,,,,,,,,,,,,,,,,,,,,,,,,,69,,,,69,,69,227,69,,227', +'227,227,227,227,227,227,227,227,227,,,,227,227,227,227,,,227,227,227', +'227,,,,,227,227,,227,,227,227,,227,,227,227,,,,,227,227,227,227,227', +'227,,,,,227,,,,,,,,,,,,,,,,,,,,,,,,,,,,227,,,,227,,227,71,227,,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,116,71,,116,116,116,116,116,116,116,116,116,116,,', +',116,116,116,116,,,116,116,116,116,,,,,116,116,,116,,116,116,,116,,116', +'116,,,,,116,116,116,116,116,116,,,,,116,,,,,,,,,,,,,,,,,,,,,,,,,,,,116', +',,,116,,116,121,116,,121,121,121,121,121,121,121,121,121,121,,,,121', +'121,121,121,,,121,121,121,121,,,,,121,121,,121,,121,121,,121,,121,121', +',,,,121,121,121,121,121,121,,,,,121,,,,,,,,,,,,,,,,,,,,,,,,,,,,121,', +',,121,,121,75,121,,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,0,75,,0,0,0,0,0,0,0,0,0', +'0,,,,0,0,0,0,,,0,0,0,0,,,,,0,0,,0,,0,0,,0,,0,0,0,,,,0,0,0,0,0,0,,,,', +'0,,,,,,,,,,,,,,,,,,,,,,,,,,,,0,0,0,,0,,0,155,0,,155,155,155,155,155', +'155,155,155,155,155,,,,155,155,155,155,,,155,155,155,155,,,,,155,155', +',155,,155,155,,155,,155,155,,,,,155,155,155,155,155,155,,,,,155,,,,', +',,,,,,,,,,,,,,,,,,,,,,,155,,,,155,,155,139,155,,139,139,139,139,139', +'139,139,139,139,139,,,,139,139,139,139,,,139,139,139,139,,,,,139,139', +',139,,139,139,,139,,139,139,,,,,139,139,139,139,139,139,,,,,139,,,,', +',,,,,,,,,,,,,,,,,,,,,,,139,,,,139,,139,115,139,,115,115,115,115,115', +'115,115,115,115,115,,,,115,115,115,115,,,115,115,115,115,,,,,115,115', +',115,,115,115,,115,,115,115,,,,,115,115,115,115,115,115,,,,,115,,,,', +',,,,,,,,,,,,,,,,,,,,,,,115,,,,115,,115,137,115,,137,137,137,137,137', +'137,137,137,137,137,,,,137,137,137,137,,,137,137,137,137,,,,,137,137', +',137,,137,137,,137,,137,137,137,,,,137,137,137,137,137,137,,,,,137,', +',,,,,,,,,,,,,,,,,,,,,,,,,,137,,,,137,,137,81,137,,81,81,81,81,81,81', +'81,81,81,81,,,,81,81,81,81,,,81,81,81,81,,,,,81,81,,81,,81,81,,81,,81', +'81,,,,,81,81,81,81,81,81,,,,,81,,,,,,,,,,,,,,,,,,,,,,,,,,,,81,,,,81', +',81,132,81,,132,132,132,132,132,132,132,132,132,132,,,,132,132,132,132', +',,132,132,132,132,,,,,132,132,,132,,132,132,,132,,132,132,,,,,132,132', +'132,132,132,132,,,,,132,,,,,,,,,,,,,,,,,,,,,,,,,,,,132,,,,132,,132,129', +'132,,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,128,129', +',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,127,128,', +'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,125,127,', +'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,91,125,,91', +'91,91,91,91,91,91,91,91,91,,,,91,91,91,91,,,91,91,91,91,,,,,91,91,,91', +',91,91,,91,,91,91,,,,,91,91,91,91,91,91,,,,,91,,,,,,,,,,,,,,,,,,,,,', +',,,,,,91,,,,91,,91,92,91,,92,92,92,92,92,92,92,92,92,92,,,,92,92,92', +'92,,,92,92,92,92,,,,,92,92,,92,,92,92,,92,,92,92,,,,,92,92,92,92,92', +'92,,,,,92,,,,,,,,,,,,,,,,,,,,,,,,,,,,92,,,,92,,92,93,92,,93,93,93,93', +'93,93,93,93,93,93,,,,93,93,93,93,,,93,93,93,93,,,,,93,93,,93,,93,93', +',93,,93,93,,,,,93,93,93,93,93,93,,,,,93,,,,,,,,,,,,,,,,,,,,,,,,,,,,93', +',,,93,,93,94,93,,94,94,94,94,94,94,94,94,94,94,,,,94,94,94,94,,,94,94', +'94,94,,,,,94,94,,94,,94,94,,94,,94,94,,,,,94,94,94,94,94,94,,,,,94,', +',,,,,,,,,,,,,,,,,,,,,,,,,,94,,,,94,,94,120,94,,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,96,120,,96,96,96,96,96,96,96,96,96', +'96,,,,96,96,96,96,,,96,96,96,96,,,,,96,96,,96,,96,96,,96,,96,96,,,,', +'96,96,96,96,96,96,,,,,96,,,,,,,,,,,,,,,,,,,,,,,,,,,,96,,,,96,,96,97', +'96,,97,97,97,97,97,97,97,97,97,97,,,,97,97,97,97,,,97,97,97,97,,,,,97', +'97,,97,,97,97,,97,,97,97,,,,,97,97,97,97,97,97,,,,,97,,,,,,,,,,,,,,', +',,,,,,,,,,,,,97,,,,97,,97,99,97,,99,99,99,99,99,99,99,99,99,99,,,,99', +'99,99,99,,,99,99,99,99,,,,,99,99,,99,,99,99,,99,,99,99,,,,,99,99,99', +'99,99,99,,,,,99,,,,,,,,,,,,,,,,,,,,,,,,,,,,99,,,,99,,99,100,99,,100', +'100,100,100,100,100,100,100,100,100,,,,100,100,100,100,,,100,100,100', +'100,,,,,100,100,,100,,100,100,,100,,100,100,,,,,100,100,100,100,100', +'100,,,,,100,,,,,,,,,,,,,,,,,,,,,,,,,,,,100,,,,100,,100,101,100,,101', +'101,101,101,101,101,101,101,101,101,,,,101,101,101,101,,,101,101,101', +'101,,,,,101,101,,101,,101,101,,101,,101,101,,,,,101,101,101,101,101', +'101,,,,,101,,,,,,,,,,,,,,,,,,,,,,,,,,,,101,,,,101,,101,114,101,,114', +'114,114,114,114,114,114,114,114,114,,,,114,114,114,114,,,114,114,114', +'114,,,,,114,114,,114,,114,114,,114,,114,114,,,,,114,114,114,114,114', +'114,,,,,114,,,,,,,,,,,,,,,,,,,,,,,,,,,,114,,,,114,,114,103,114,,103', +'103,103,103,103,103,103,103,103,103,,,,103,103,103,103,,,103,103,103', +'103,,,,,103,103,,103,,103,103,,103,,103,103,,,,,103,103,103,103,103', +'103,,,,,103,,,,,,,,,,,,,,,,,,,,,,,,,,,,103,,,,103,,103,104,103,,104', +'104,104,104,104,104,104,104,104,104,,,,104,104,104,104,,,104,104,104', +'104,,,,,104,104,,104,,104,104,,104,,104,104,,,,,104,104,104,104,104', +'104,,,,,104,,,,,,,,,,,,,,,,,,,,,,,,,,,,104,,,,104,,104,105,104,,105', +'105,105,105,105,105,105,105,105,105,,,,105,105,105,105,,,105,105,105', +'105,,,,,105,105,,105,,105,105,,105,,105,105,,,,,105,105,105,105,105', +'105,,,,,105,,,,,,,,,,,,,,,,,,,,,,,,,,,,105,,,,105,,105,106,105,,106', +'106,106,106,106,106,106,106,106,106,,,,106,106,106,106,,,106,106,106', +'106,,,,,106,106,,106,,106,106,,106,,106,106,,,,,106,106,106,106,106', +'106,,,,,106,,,,,,,,,,,,,,,,,,,,,,,,,,,,106,,,,106,,106,107,106,,107', +'107,107,107,107,107,107,107,107,107,,,,107,107,107,107,,,107,107,107', +'107,,,,,107,107,,107,,107,107,,107,,107,107,,,,,107,107,107,107,107', +'107,,,,,107,,,,,,,,,,,,,,,,,,,,,,,,,,,,107,,,,107,,107,108,107,,108', +'108,108,108,108,108,108,108,108,108,,,,108,108,108,108,,,108,108,108', +'108,,,,,108,108,,108,,108,108,,108,,108,108,,,,,108,108,108,108,108', +'108,,,,,108,,,,,,,,,,,,,,,,,,,,,,,,,,,,108,,,,108,,108,109,108,,109', +'109,109,109,109,109,109,109,109,109,,,,109,109,109,109,,,109,109,109', +'109,,,,,109,109,,109,,109,109,,109,,109,109,,,,,109,109,109,109,109', +'109,,,,,109,,,,,,,,,,,,,,,,,,,,,,,,,,,,109,,,,109,,109,124,109,,124', +'124,124,124,124,124,124,124,124,124,,,,124,124,124,124,,,124,124,124', +'124,,,,,124,124,,124,,124,124,,124,,124,124,,,,,124,124,124,124,124', +'124,,,,,124,,,,,,,,,,,,,,,,,,,,,,,,,,,,124,,,,124,,124,122,124,,122', +'122,122,122,122,122,122,122,122,122,,,,122,122,122,122,,,122,122,122', +'122,,,,,122,122,,122,,122,122,,122,,122,122,,,,,122,122,122,122,122', +'122,,,,,122,,,,,,,,,,,,,,,,,,,,,,,,,,,,122,,,,122,,122,112,122,,112', +'112,112,112,112,112,112,112,112,112,,,,112,112,112,112,,,112,112,112', +'112,,,,,112,112,,112,,112,112,,112,,112,112,,,,,112,112,112,112,112', +'112,,,,,112,,,,,,,,,,,,,,,,,,,,,,,,,,,,112,,,,112,,112,113,112,,113', +'113,113,113,113,113,113,113,113,113,,,,113,113,113,113,,,113,113,113', +'113,,,,,113,113,,113,,113,113,,113,,113,113,,,,,113,113,113,113,113', +'113,,,,,113,,,,,,,,,,,,,,,,,,,,,,,,,,,,113,,,,113,,113,102,113,,102', +'102,102,102,102,102,102,102,102,102,,,,102,102,102,102,,,102,102,102', +'102,,,,,102,102,,102,,102,102,,102,,102,102,,219,,219,102,102,102,102', +'102,102,,,,,102,,,,,,,,,,,,219,219,,,,,,,,219,,,,,,,102,,,219,102,,102', +',102,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', +'286,,286,,,219,,,,,,,,,,,,,,,,,,,,286,286,,,,,,,,286,,,,,,,,,,286,,', +',,,286,286,286,286,286,286,286,286,286,286,286,286,286,286,286,286,286', +'286,286,286,286,286,286,286,286,286,286,286,286,286,286,,286,286,,,', +',,286,4,4,4,4,4,4,4,4,4,4,,,,4,4,4,4,,,4,4,4,4,,,,,4,4,,4,,4,4,,4,,4', +'4,,,,,4,4,4,4,4,4,,,,,4,,,,,,,,,,287,287,287,287,287,287,287,287,287', +'287,,,,287,287,287,287,,4,287,287,287,4,,4,,4,287,287,,287,,287,287', +',287,,287,287,,,,,287,287,287,287,287,287,,,,295,287,295,1,1,1,1,1,1', +'1,1,1,1,,,,,,,,,,,1,1,295,295,,,287,,,,287,295,287,,287,1,,,1,,,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', +'196,,196,,1,295,1,,1,,,,,,,,,,,,,,,,,196,196,,,,,,,,196,,,,,,,,,,196', +',,,,,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196', +'196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,,196,196', +'289,,289,,,,,,,,,,,,,,,,,,,,,,,289,289,,,,,,,,289,,,,,,,,,,289,,,,,', +'289,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289', +'289,289,289,289,289,289,289,289,289,289,289,289,289,289,,289,289,288', +',288,,,,,,,,,,,,,,,,,,,,,,,288,288,,,,,,,,288,,,,,,,,,,288,,,,,,288', +'288,288,288,288,288,288,288,288,288,288,288,288,288,288,288,288,288', +'288,288,288,288,288,288,288,288,288,288,288,288,288,,288,288,281,,281', +',,,,,,,,,,,,,,,,,,,,,,281,281,,,,,,,,281,,,,,,,,281,,281,,,,,,281,281', +'281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281', +'281,281,281,281,281,281,281,281,281,281,281,281,,281,281,168,,168,,', +',,,,,,,,,,,,,,,,,,,,168,168,,,,,,,,168,,,,,,,,,,168,,,,,,168,168,168', +'168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168', +'168,168,168,168,168,168,168,168,168,168,168,,168,168,175,,175,,,,,,', +',,,,,,,,,,,,,,,,175,175,,,,,,,,175,,,,,,,,,,175,,,,,,175,175,175,175', +'175,175,175,175,175,175,175,175,175,175,175,175,175,175,175,175,175', +'175,175,175,175,175,175,175,175,175,175,,175,175,188,,188,,,,,,,,,,', +',,,,,,,,,,,,188,188,,,,,,,,188,,,,,,,,,,188,,,,,,188,188,188,188,188', +'188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188', +'188,188,188,188,188,188,188,188,188,,188,188,233,,233,,,,,,,,,,,,,,', +',,,,,,,,233,233,,,,,,,,233,,,,,,,,,,233,,,,,,233,233,233,233,233,233', +'233,233,233,233,233,233,233,233,233,233,233,233,233,233,233,233,233', +'233,233,233,233,233,233,233,233,,233,233,154,,154,,,,,,,,,,,,,,,,,,', +',,,,154,154,,,,,,,,154,,,,,,,,,,154,,,,,,154,154,154,154,154,154,154', '154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154', -'154,154,154,154,154,,154,154,196,,196,,,,,,,,,,,,,,,,,,,,,,,196,,,,', -',,,196,,,,,,,,,,196,,,,,,,196,196,196,196,196,196,196,196,196,196,196', -'196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196', -'196,196,,,196,196,188,,188,,,,,,,,,,,,,,,,,,,,,,,188,,,,,,,,188,,,,', -',,,,,188,,,,,,,188,188,188,188,188,188,188,188,188,188,188,188,188,188', -'188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,188,,,188', -'188,281,,281,,,,,,,,,,,,,,,,,,,,,,,281,,,,,,,,281,,,,,,,,,,281,,,,,', -',281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281,281', -'281,281,281,281,281,281,281,281,281,281,281,281,281,,,281,281,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,280,,280,,,,,,,,,', -',,,,,,,,,,,,,280,,,,,,,,280,,,,,,,,,,280,,,,,,,280,280,280,280,280,280', -'280,280,280,280,280,280,280,280,280,280,280,280,280,280,280,280,280', -'280,280,280,280,280,280,280,,,280,280,274,,274,,,,,,,,,,,,,,,,,,,,,', -',274,,,,,,,,274,,,,,,,,274,,274,,,,,,,274,274,274,274,274,274,274,274', -'274,274,274,274,274,274,274,274,274,274,274,274,274,274,274,274,274', -'274,274,274,274,274,,,274,274,176,,176,,,,,,,,,,,,,,,,,,,,,,,176,,,', -',,,,176,,,,,,,,,,176,,,,,,,176,176,176,176,176,176,176,176,176,176,176', -'176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176,176', -'176,176,,,176,176,80,,80,,,,,,,,,,,,,,,,,,,,,,,80,,,,,,,,80,,,,,,,,80', -',80,,,,,,,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80,80', -'80,80,80,80,80,80,80,80,80,80,,,80,80,25,,25,,,,,,,,,,,,,,,,,,,,,,,25', -',,,,,,,25,,,,,,,,,,25,,,,,,,25,25,25,25,25,25,25,25,25,25,25,25,25,25', -'25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,,,25,25,170,,170,,,', -',,,,,,,,,,,,,,,,,,,170,,,,,,,,170,,,,,,,,,,170,,,,,,,170,170,170,170', -'170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170', -'170,170,170,170,170,170,170,170,170,,,170,170,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,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,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,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,146', -',146,,,,,,,,,,,,,,,,,,,,,,,146,,,,,,,,146,,,,,,,,146,,146,,,,,,,146', -'146,146,146,146,146,146,146,146,146,146,146,146,146,146,146,146,146', -'146,146,146,146,146,146,146,146,146,146,146,146,,,146,146,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,148,,148,,,,,,,,,,,,,,,,,,,,,,,148,,,,,,,,148,,,,,,,,148', -',148,,,,,,,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148', -'148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,205,,148', -'148,,,,,205,,,,,,,,,,205,,,,,,,205,205,205,205,205,205,205,205,205,205', -'205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205', -'205,205,205,89,,,,,,,,89,,,,,,,,,,89,,,,,,,89,89,89,89,89,89,89,89,89', -'89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,208,', -',,,,,,208,,,,,,,,,,208,,,,,,,208,208,208,208,208,208,208,208,208,208', -'208,208,208,208,208,208,208,208,208,208,208,208,208,208,208,208,208', -'208,208,208,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,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,272,,,,,,,,,,272,,,,,,,272,272,272,272', -'272,272,272,272,272,272,272,272,272,272,272,272,272,272,272,272,272', -'272,272,272,272,272,272,272,272,272,166,,,,,,,,,,166,,,,,,,166,166,166', -'166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166,166', -'166,166,166,166,166,166,166,166,166,166,157,,,,,,,,,,157,,,,,,,157,157', -'157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157', -'157,157,157,157,157,157,157,157,157,157,157,189,,,,,,,,,,189,,,,,,,189', +'154,154,154,154,154,154,154,,154,154,152,,152,,,,,,,,,,,,,,,,,,,,,,', +'152,152,,,,,,,,152,,,,,,,,152,,152,,,,,,152,152,152,152,152,152,152', +'152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152', +'152,152,152,152,152,152,152,,152,152,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,270,,270,,,,,,,,,,,,,,,,,,,,,,,270', +'270,,,,,,,,270,,,,,,,,,,270,,,,,,270,270,270,270,270,270,270,270,270', +'270,270,270,270,270,270,270,270,270,270,270,270,270,270,270,270,270', +'270,270,270,270,270,,270,270,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,268,,268,,,,', +',,,,,,,,,,,,,,,,,,268,268,,,,,,,,268,,,,,,,,,,268,,,,,,268,268,268,268', +'268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268', +'268,268,268,268,268,268,268,268,268,268,,268,268,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,25,,25,,,,,,,,,,,,,,,,', +',,,,,,25,25,,,,,,,,25,,,,,,,,,,25,,,,,,25,25,25,25,25,25,25,25,25,25', +'25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,25,,25,25', +'148,,148,,,,,,,,,,,,,,,,,,,,,,,148,148,,,,,,,,148,,,,,,,,148,,148,,', +',,,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148,148', +'148,148,148,148,148,148,148,148,148,148,148,148,148,148,,148,148,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,207,207', +',,,,,,,207,,,,,,,,,,207,,,,,,207,207,207,207,207,207,207,207,207,207', +'207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,207', +'207,207,207,207,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,225,225,225,225,225,87,87,,,,,,,,87,,,,,,,,,,87', +',,,,,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87,87', +'87,87,87,87,87,87,87,87,87,87,210,210,,,,,,,,210,,,,,,,,,,210,,,,,,210', +'210,210,210,210,210,210,210,210,210,210,210,210,210,210,210,210,210', +'210,210,210,210,210,210,210,210,210,210,210,210,210,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,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,204,,,,,,,,204,,,,,,,,,,204,,,,,,204,204,204', +'204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204', +'204,204,204,204,204,204,204,204,204,204,204,280,,,,,,,,280,,,,,,,,,', +'280,,,,,,280,280,280,280,280,280,280,280,280,280,280,280,280,280,280', +'280,280,280,280,280,280,280,280,280,280,280,280,280,280,280,280,279', +',,,,,,,279,,,,,,,,,,279,,,,,,279,279,279,279,279,279,279,279,279,279', +'279,279,279,279,279,279,279,279,279,279,279,279,279,279,279,279,279', +'279,279,279,279,192,,,,,,,,,,192,,,,,,192,192,192,192,192,192,192,192', +'192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192,192', +'192,192,192,192,192,167,,,,,,,,,,167,,,,,,167,167,167,167,167,167,167', +'167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167,167', +'167,167,167,167,167,167,164,,,,,,,,,,164,,,,,,164,164,164,164,164,164', +'164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164,164', +'164,164,164,164,164,164,164,185,,,,,,185,185,185,185,185,185,185,185', +'185,185,185,185,185,185,185,185,185,185,185,185,185,185,185,185,185', +'185,185,185,185,185,189,,,,,,189,189,189,189,189,189,189,189,189,189', '189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189,189', -'189,189,189,189,189,189,189,189,189,189,189,189,273,,,,,,,,,,273,,,', -',,,273,273,273,273,273,273,273,273,273,273,273,273,273,273,273,273,273', -'273,273,273,273,273,273,273,273,273,273,273,273,273,190,,,,,,,190,190', -'190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190,190', -'190,190,190,190,190,190,190,190,190,190,190,197,,,,,,,197,197,197,197', -'197,197,197,197,197,197,197,197,197,197,197,197,197,197,197,197,197', -'197,197,197,197,197,197,197,197,197,182,,,,,,,182,182,182,182,182,182', -'182,182,182,182,182,182,182,182,182,182,182,182,182,182,182,182,182', -'182,182,182,182,182,182,182,193,,,,,,,193,193,193,193,193,193,193,193', +'189,189,189,193,,,,,,193,193,193,193,193,193,193,193,193,193,193,193', '193,193,193,193,193,193,193,193,193,193,193,193,193,193,193,193,193', -'193,193,193,193,193,185,,,,,,,185,185,185,185,185,185,185,185,185,185', -'185,185,185,185,185,185,185,185,185,185,185,185,185,185,185,185,185', -'185,185,185' ] - racc_action_check = arr = Array.new(8906, nil) +'193,197,,,,,,197,197,197,197,197,197,197,197,197,197,197,197,197,197', +'197,197,197,197,197,197,197,197,197,197,197,197,197,197,197,197,182', +',,,,,182,182,182,182,182,182,182,182,182,182,182,182,182,182,182,182', +'182,182,182,182,182,182,182,182,182,182,182,182,182,182' ] + racc_action_check = arr = Array.new(8999, 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 = [ - 3274, 6541, nil, 180, nil, nil, 271, 362, 244, 286, - nil, nil, nil, nil, nil, nil, 149, 129, 817, 908, - nil, nil, 164, nil, nil, 7465, nil, nil, 66, -54, - 286, nil, nil, nil, nil, nil, nil, nil, -5, nil, - 1545, nil, nil, nil, 1636, nil, nil, 1727, nil, 1818, - nil, nil, 1909, nil, 2000, 74, nil, nil, 2182, nil, - 2273, 2364, 2455, nil, 6498, nil, 287, nil, nil, 2728, - nil, 2819, 105, 69, nil, 3092, 65, 71, 8053, 286, - 7381, 147, 271, 3820, 109, nil, 296, nil, nil, 8247, - 89, nil, nil, 4275, 4366, 4457, nil, 4548, 4639, 89, - 4821, 4912, 5003, 5094, 6368, 5276, 5367, 5458, 5549, 5640, - 5731, 5822, 297, 6004, 6095, 6186, 6277, 5185, 3729, 3001, - 2546, 453, 4730, nil, 3365, 5913, nil, 4184, 4093, 4002, - 3911, 280, -2, nil, 3638, 3547, nil, nil, nil, 208, - 172, 185, 89, nil, 101, 205, 7969, 150, 8137, -32, - nil, nil, 281, 3456, 6709, -43, 215, 8545, 130, 133, - 166, 179, 176, nil, 300, nil, 8498, -2, nil, 3183, - 7549, nil, 137, 42, 64, nil, 7297, nil, nil, nil, - nil, nil, 8750, 1191, 264, 8824, 292, 105, 6877, 8592, - 8676, 1282, 190, 8787, 918, -26, 6793, 8713, 372, 1481, - 8, 827, 1572, 645, 1390, 8192, 554, 1373, 8302, 463, - 1555, 736, 1464, 1100, 1009, -11, 6411, nil, 90, 166, - 8357, nil, nil, -12, 2910, 105, nil, 6, 7045, 30, - nil, 2637, nil, 2091, 1454, 1363, 121, nil, 130, 85, - nil, 152, 91, nil, 81, 88, nil, -2, nil, 1272, - 1181, 8404, nil, 1090, 215, nil, nil, 999, 726, 635, - 7885, 7801, 7717, 7633, 8, nil, nil, nil, nil, nil, - nil, nil, 8451, 8639, 7213, nil, 232, nil, 544, 6541, - 7129, 6961, nil, 79, 260, 6625, nil, nil, nil, nil ] + 3274, 6609, 192, nil, 6491, nil, 362, 453, 227, 221, + nil, nil, nil, nil, nil, nil, 56, 15, nil, nil, + 908, 71, -69, nil, nil, 7953, 1272, nil, nil, 158, + nil, 211, nil, nil, nil, nil, nil, nil, nil, 263, + nil, 1636, nil, nil, nil, 1727, nil, nil, nil, 1818, + nil, nil, 1909, nil, 2000, 90, nil, 2182, nil, 2273, + nil, 2364, 2455, nil, nil, 106, 2637, nil, nil, 2728, + 5, 2910, nil, 150, 70, 3183, 8096, 264, 7701, 25, + 236, 3729, -1, nil, 253, nil, nil, 8267, nil, 244, + 244, 4275, 4366, 4457, 4548, 89, 4730, 4821, nil, 4912, + 5003, 5094, 6277, 5276, 5367, 5458, 5549, 5640, 5731, 5822, + 288, 233, 6095, 6186, 5185, 3547, 3001, 544, 271, 180, + 4639, 3092, 6004, nil, 5913, 4184, nil, 4093, 4002, 3911, + 89, nil, 3820, nil, 237, 231, nil, 3638, -2, 3456, + nil, nil, 3, 130, nil, 150, 99, -17, 8037, 215, + nil, nil, 7449, 241, 7365, 3365, 166, 332, 221, 141, + 186, nil, 212, nil, 8737, -2, -45, 8691, 7029, 66, + nil, 28, 79, 102, nil, 7113, nil, nil, nil, nil, + nil, nil, 8917, 1098, 197, 8773, 1280, -13, 7197, 8809, + 1189, 1299, 8645, 8845, 370, 1478, 6693, 8881, 461, 1117, + 17, 51, 825, 1208, 8488, 734, 1026, 8155, 552, 1387, + 8323, 643, 1371, 279, 1462, 916, 1007, 306, nil, 6320, + nil, nil, 83, 120, 152, 8211, -16, 2819, 2546, 132, + nil, -15, 87, 7281, nil, 2091, nil, 1545, 171, 1454, + 1363, 75, nil, 233, nil, 48, nil, 60, nil, 105, + 178, nil, nil, -2, nil, 1181, 1090, 8433, 8378, nil, + 999, 192, nil, 69, 817, 726, 7869, 635, 7785, nil, + 7617, 7533, nil, 7, nil, nil, nil, nil, nil, 8598, + 8543, 6945, nil, 220, nil, -12, 6404, 6554, 6861, 6777, + nil, 31, 267, nil, nil, 6609, nil, nil, nil ] racc_action_default = [ - -1, -168, -20, -168, -35, -21, -168, -168, -168, -168, - -22, -2, -47, -23, -31, -24, -3, -161, -168, -168, - -99, -29, -168, -30, -33, -5, -32, -34, -8, -168, - -168, -36, -9, -93, -37, -10, -100, -38, -168, -11, - -168, -101, -27, -12, -168, -102, -39, -168, -13, -168, - -40, -28, -168, -14, -168, -116, -41, -15, -168, -98, - -128, -168, -168, -16, -168, -118, -110, -17, -95, -168, - -18, -168, -168, -168, -19, -128, -168, -117, -46, -50, - -168, -168, -168, -7, -168, -159, -161, -163, -165, -140, - -168, -26, -4, -168, -168, -168, -90, -168, -168, -168, - -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, - -168, -168, -168, -168, -168, -168, -168, -168, -168, -168, - -168, -168, -168, -58, -168, -168, -57, -168, -168, -168, - -168, -168, -168, -103, -128, -168, -107, -106, -120, -168, - -168, -168, -145, -92, -51, -48, -168, -49, -168, -52, - -104, -121, -54, -168, -129, -168, -53, -55, -97, -168, - -168, -168, -168, -45, -110, -111, -56, -168, -96, -128, - -129, -157, -168, -168, -136, 290, -6, -162, -158, -160, - -164, -25, -82, -71, -60, -83, -72, -61, -166, -89, - -84, -73, -62, -85, -74, -63, -167, -86, -75, -64, - -168, -76, -65, -77, -66, -87, -78, -67, -88, -79, - -68, -80, -69, -81, -70, -59, -168, -105, -119, -168, - -42, -94, -91, -168, -168, -168, -142, -168, -130, -168, - -135, -168, -127, -168, -168, -168, -168, -109, -168, -168, - -141, -168, -168, -137, -168, -143, -108, -122, -144, -168, - -168, -147, -146, -168, -168, -152, -156, -168, -168, -168, - -131, -132, -43, -44, -168, -112, -113, -115, -124, -139, - -138, -123, -149, -148, -168, -150, -168, -153, -168, -168, - -133, -134, -114, -154, -168, -168, -125, -155, -151, -126 ] + -1, -173, -173, -20, -46, -21, -173, -173, -173, -173, + -34, -22, -2, -23, -47, -100, -3, -166, -30, -28, + -173, -173, -173, -29, -32, -5, -173, -31, -33, -8, + -94, -173, -35, -9, -101, -36, -10, -102, -37, -173, + -11, -173, -103, -26, -12, -173, -104, -38, -13, -173, + -39, -27, -173, -14, -173, -119, -40, -173, -15, -173, + -99, -131, -173, -16, -121, -113, -173, -17, -18, -173, + -96, -173, -19, -173, -120, -131, -45, -50, -173, -173, + -173, -7, -173, -164, -166, -168, -170, -143, -4, -173, + -173, -173, -173, -173, -173, -173, -173, -173, -91, -173, + -173, -173, -173, -173, -173, -173, -173, -173, -173, -173, + -173, -173, -173, -173, -173, -173, -173, -173, -173, -173, + -173, -173, -173, -58, -173, -173, -57, -173, -173, -173, + -173, -25, -173, -110, -173, -173, -105, -131, -173, -173, + -109, -123, -173, -149, -93, -51, -48, -49, -146, -52, + -106, -124, -173, -54, -132, -173, -173, -53, -113, -173, + -173, -44, -173, -114, -55, -173, -173, -56, -132, -173, + -162, -173, -173, -139, 299, -6, -167, -163, -165, -169, + -95, -92, -82, -71, -60, -83, -72, -61, -171, -84, + -73, -62, -89, -85, -74, -63, -172, -86, -75, -64, + -173, -173, -76, -65, -90, -77, -66, -87, -78, -67, + -88, -79, -68, -80, -69, -81, -70, -59, -24, -173, + -107, -108, -173, -122, -173, -41, -173, -173, -173, -173, + -145, -173, -173, -133, -138, -173, -130, -173, -173, -173, + -173, -173, -112, -173, -144, -173, -127, -173, -140, -173, + -147, -98, -111, -125, -148, -173, -173, -151, -152, -150, + -173, -173, -157, -173, -173, -173, -134, -173, -135, -118, + -42, -43, -115, -173, -116, -97, -142, -141, -126, -154, + -153, -173, -155, -173, -158, -173, -173, -98, -136, -137, + -117, -159, -173, -161, -128, -173, -160, -156, -129 ] racc_goto_table = [ - 11, 162, 163, 76, 141, 22, 219, 85, 87, 255, - 9, 25, 77, 81, 78, 223, 83, 79, 80, 136, - 16, 265, 92, 266, 254, 174, 178, 221, 86, 89, - 25, 271, 88, nil, nil, nil, 277, nil, nil, 90, - 151, 241, nil, 143, nil, nil, 136, nil, 150, 282, - nil, 144, nil, nil, nil, 145, nil, nil, 146, nil, - 147, nil, 151, 148, nil, 149, 158, 136, 136, 152, - 150, 154, 156, 157, 245, 159, 179, 180, nil, nil, - 166, nil, 167, nil, nil, 171, 200, nil, nil, 177, - 83, nil, nil, nil, 176, nil, nil, nil, nil, 239, - 163, nil, nil, nil, 182, 183, 184, nil, 185, 186, - 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, - 197, 198, 199, nil, 201, 202, 203, 204, 205, 206, - 207, 208, 209, 210, 218, 211, 212, nil, 213, 214, - 215, 216, nil, 159, 151, 222, 220, nil, nil, 136, - 136, 226, 150, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 238, 256, 228, nil, nil, nil, nil, nil, - nil, nil, 163, nil, 163, nil, nil, nil, 243, nil, + 12, 76, 161, 77, 78, 150, 151, 74, 73, 156, + 85, 226, 83, 262, 162, 16, 81, 87, 272, 9, + 274, 88, 261, 169, 150, 151, 133, 173, 177, 142, + 180, 84, 278, 86, nil, nil, nil, nil, 145, nil, + nil, 130, 146, 284, nil, 21, 147, nil, nil, 148, + 290, 149, 133, 79, 152, nil, 153, nil, 154, 157, + nil, nil, nil, 164, nil, nil, 165, 293, 167, 250, + 133, 133, 168, nil, nil, nil, nil, 179, 175, 178, + nil, nil, nil, nil, 144, 222, nil, nil, 182, 183, + 184, 185, 186, 187, 188, 161, 189, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 238, 200, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + nil, 213, 214, 170, 215, 216, 217, 176, nil, 219, + 81, nil, nil, nil, 168, 181, 225, nil, nil, nil, + nil, nil, nil, nil, 224, 223, nil, nil, nil, nil, + nil, nil, 233, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 243, nil, nil, nil, nil, nil, 263, nil, + nil, nil, nil, nil, 150, 151, nil, nil, 161, nil, + 161, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, 230, nil, nil, nil, nil, 263, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 256, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 163, nil, nil, nil, nil, nil, nil, nil, nil, 136, + 161, nil, nil, nil, nil, nil, nil, 248, nil, nil, + 133, 133, 263, nil, 257, 258, nil, nil, nil, nil, + nil, nil, 266, nil, 268, 265, 270, 271, 243, nil, + nil, 273, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 279, 280, nil, nil, nil, 281, nil, nil, + nil, 286, 288, 285, 289, nil, nil, nil, nil, nil, + nil, 254, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 295, nil, nil, nil, nil, nil, + nil, 296, 276, nil, 277, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 248, nil, - nil, 258, nil, nil, nil, 251, 264, nil, nil, 238, - nil, nil, 260, nil, 261, 262, 263, 269, nil, 270, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 272, 273, nil, nil, 274, nil, nil, nil, 279, 280, - 281, nil, nil, nil, nil, nil, nil, nil, nil, 283, - nil, 284, nil, 287, nil, nil, nil, nil, nil, 285 ] + nil, nil, nil, nil, nil, nil, 291, nil, 292 ] racc_goto_check = [ - 2, 33, 22, 6, 38, 4, 36, 43, 45, 41, - 1, 5, 31, 4, 5, 39, 2, 5, 5, 10, - 3, 24, 2, 24, 40, 37, 42, 26, 44, 5, - 5, 8, 46, nil, nil, nil, 41, nil, nil, 3, - 35, 36, nil, 4, nil, nil, 10, nil, 30, 24, - nil, 5, nil, nil, nil, 5, nil, nil, 5, nil, - 5, nil, 35, 5, nil, 5, 6, 10, 10, 5, - 30, 5, 5, 5, 39, 31, 43, 45, nil, nil, - 5, nil, 5, nil, nil, 4, 38, nil, nil, 4, - 2, nil, nil, nil, 5, nil, nil, nil, nil, 33, - 22, nil, nil, nil, 5, 5, 5, nil, 5, 5, + 2, 5, 21, 5, 5, 30, 35, 31, 6, 36, + 45, 39, 43, 41, 33, 3, 2, 5, 23, 1, + 23, 2, 40, 36, 30, 35, 29, 37, 42, 38, + 25, 44, 8, 46, nil, nil, nil, nil, 5, nil, + nil, 3, 5, 41, nil, 4, 5, nil, nil, 5, + 23, 5, 29, 4, 5, nil, 5, nil, 5, 5, + nil, nil, nil, 5, nil, nil, 5, 41, 5, 39, + 29, 29, 5, nil, nil, nil, nil, 45, 5, 43, + nil, nil, nil, nil, 4, 36, nil, nil, 5, 5, + 5, 5, 5, 5, 5, 21, 5, 5, 5, 5, + 5, 5, 5, 5, 5, 5, 5, 33, 38, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, - 5, 5, 5, nil, 5, 5, 5, 5, 5, 5, - 5, 5, 5, 5, 6, 5, 5, nil, 5, 5, - 5, 5, nil, 31, 35, 4, 5, nil, nil, 10, - 10, 4, 30, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 2, 22, 5, nil, nil, nil, nil, nil, - nil, nil, 22, nil, 22, nil, nil, nil, 4, nil, + nil, 5, 5, 4, 5, 5, 5, 4, nil, 5, + 2, nil, nil, nil, 5, 4, 5, nil, nil, nil, + nil, nil, nil, nil, 31, 6, nil, nil, nil, nil, + nil, nil, 5, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 2, nil, nil, nil, nil, nil, 21, nil, + nil, nil, nil, nil, 30, 35, nil, nil, 21, nil, + 21, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, 4, nil, nil, nil, nil, 21, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 22, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 22, nil, nil, nil, nil, nil, nil, nil, nil, 10, + 21, nil, nil, nil, nil, nil, nil, 4, nil, nil, + 29, 29, 21, nil, 5, 5, nil, nil, nil, nil, + nil, nil, 5, nil, 5, 2, 5, 5, 2, nil, + nil, 2, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 5, 5, nil, nil, nil, 5, nil, nil, + nil, 5, 5, 2, 5, nil, nil, nil, nil, nil, + nil, 4, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 5, nil, nil, nil, nil, nil, + nil, 2, 4, nil, 4, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 4, nil, - nil, 2, nil, nil, nil, 5, 2, nil, nil, 2, - nil, nil, 5, nil, 5, 5, 5, 4, nil, 4, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 5, 5, nil, nil, 5, nil, nil, nil, 5, 5, - 5, nil, nil, nil, nil, nil, nil, nil, nil, 4, - nil, 4, nil, 2, nil, nil, nil, nil, nil, 5 ] + nil, nil, nil, nil, nil, nil, 4, nil, 4 ] racc_goto_pointer = [ - nil, 10, 0, 20, 5, 11, 2, nil, -216, nil, - -9, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, -64, nil, -215, nil, -112, nil, nil, nil, - -7, 11, nil, -65, nil, -15, -128, -56, -26, -126, - -203, -218, -58, -10, 11, -9, 15 ] + nil, 19, 0, 15, 45, -3, 7, nil, -221, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, -63, nil, -223, nil, -59, nil, nil, nil, -3, + -50, 6, nil, -51, nil, -49, -52, -52, -2, -131, + -209, -218, -54, -5, 14, -7, 16 ] racc_goto_default = [ - nil, nil, 233, nil, nil, 170, 28, 32, 35, 39, - 43, 48, 53, 57, 63, 67, 70, 74, 2, 5, - 10, 13, 15, 20, 165, 29, 33, 36, 41, 45, - 133, 55, 137, nil, 65, 138, 155, nil, nil, nil, + nil, nil, 237, nil, nil, 25, 29, 33, 36, 40, + 44, 48, 53, 58, 63, 67, 68, 72, 3, 5, + 11, 13, 15, 163, 22, 30, 34, 37, 42, 46, + 136, 55, 140, nil, 64, 141, nil, nil, nil, nil, nil, nil, 17, nil, nil, nil, nil ] racc_reduce_table = [ 0, 0, :racc_error, 0, 97, :_reduce_1, @@ -801,34 +816,34 @@ 1, 101, :_reduce_none, 1, 101, :_reduce_none, 1, 101, :_reduce_none, 1, 101, :_reduce_none, 1, 101, :_reduce_none, - 1, 101, :_reduce_none, - 3, 100, :_reduce_25, - 2, 100, :_reduce_26, + 3, 100, :_reduce_24, + 2, 100, :_reduce_25, 1, 98, :_reduce_none, 1, 98, :_reduce_none, - 1, 119, :_reduce_29, - 1, 119, :_reduce_30, - 1, 119, :_reduce_31, - 1, 119, :_reduce_32, - 1, 119, :_reduce_33, - 1, 119, :_reduce_34, - 1, 119, :_reduce_35, - 1, 119, :_reduce_36, - 1, 119, :_reduce_37, - 1, 119, :_reduce_38, - 1, 119, :_reduce_39, - 1, 119, :_reduce_40, - 1, 119, :_reduce_41, - 3, 107, :_reduce_42, - 3, 120, :_reduce_43, - 3, 120, :_reduce_44, - 1, 120, :_reduce_45, - 2, 111, :_reduce_46, - 1, 118, :_reduce_47, + 1, 118, :_reduce_28, + 1, 118, :_reduce_29, + 1, 118, :_reduce_30, + 1, 118, :_reduce_31, + 1, 118, :_reduce_32, + 1, 118, :_reduce_33, + 1, 118, :_reduce_34, + 1, 118, :_reduce_35, + 1, 118, :_reduce_36, + 1, 118, :_reduce_37, + 1, 118, :_reduce_38, + 1, 118, :_reduce_39, + 1, 118, :_reduce_40, + 3, 106, :_reduce_41, + 3, 119, :_reduce_42, + 3, 119, :_reduce_43, + 1, 119, :_reduce_44, + 2, 110, :_reduce_45, + 1, 110, :_reduce_46, + 1, 117, :_reduce_47, 2, 105, :_reduce_48, 2, 105, :_reduce_49, 2, 105, :_reduce_50, 2, 105, :_reduce_51, 2, 105, :_reduce_52, @@ -867,92 +882,97 @@ 3, 105, :_reduce_85, 3, 105, :_reduce_86, 3, 105, :_reduce_87, 3, 105, :_reduce_88, 3, 105, :_reduce_89, - 2, 117, :_reduce_90, - 3, 104, :_reduce_91, - 2, 104, :_reduce_92, - 1, 121, :_reduce_93, - 3, 121, :_reduce_94, - 1, 122, :_reduce_none, - 2, 122, :_reduce_96, - 2, 116, :_reduce_97, - 1, 102, :_reduce_98, + 3, 105, :_reduce_90, + 2, 116, :_reduce_91, + 3, 104, :_reduce_92, + 2, 104, :_reduce_93, + 1, 120, :_reduce_94, + 3, 120, :_reduce_95, + 1, 121, :_reduce_none, + 4, 121, :_reduce_97, + 4, 115, :_reduce_98, 1, 102, :_reduce_99, 1, 102, :_reduce_100, 1, 102, :_reduce_101, 1, 102, :_reduce_102, - 2, 102, :_reduce_103, - 2, 102, :_reduce_104, - 2, 126, :_reduce_105, - 1, 126, :_reduce_106, - 1, 126, :_reduce_107, - 3, 128, :_reduce_108, - 3, 124, :_reduce_109, - 0, 129, :_reduce_110, - 1, 129, :_reduce_111, - 3, 129, :_reduce_112, - 3, 129, :_reduce_113, - 4, 129, :_reduce_114, + 1, 102, :_reduce_103, + 1, 102, :_reduce_104, + 2, 102, :_reduce_105, + 2, 102, :_reduce_106, + 2, 126, :_reduce_107, + 2, 126, :_reduce_108, + 1, 126, :_reduce_109, + 1, 126, :_reduce_110, + 3, 128, :_reduce_111, + 3, 123, :_reduce_112, + 0, 129, :_reduce_113, + 1, 129, :_reduce_114, 3, 129, :_reduce_115, - 1, 103, :_reduce_116, - 2, 103, :_reduce_117, - 1, 103, :_reduce_118, - 3, 115, :_reduce_119, - 2, 127, :_reduce_120, - 2, 127, :_reduce_121, - 3, 131, :_reduce_122, - 4, 131, :_reduce_123, - 4, 130, :_reduce_124, - 6, 106, :_reduce_125, - 7, 106, :_reduce_126, - 3, 123, :_reduce_127, - 0, 132, :_reduce_128, - 1, 132, :_reduce_129, - 2, 132, :_reduce_130, - 3, 132, :_reduce_131, - 3, 132, :_reduce_132, - 4, 132, :_reduce_133, - 4, 132, :_reduce_134, - 2, 132, :_reduce_135, - 3, 109, :_reduce_136, - 4, 109, :_reduce_137, - 5, 109, :_reduce_138, - 3, 133, :_reduce_139, - 2, 110, :_reduce_140, - 3, 125, :_reduce_141, - 3, 112, :_reduce_142, - 4, 113, :_reduce_143, - 4, 113, :_reduce_144, - 1, 134, :_reduce_145, - 3, 134, :_reduce_146, - 2, 135, :_reduce_147, - 3, 135, :_reduce_148, - 3, 135, :_reduce_149, - 5, 114, :_reduce_150, - 7, 114, :_reduce_151, - 1, 136, :_reduce_152, - 2, 136, :_reduce_153, - 3, 137, :_reduce_154, - 4, 137, :_reduce_155, - 1, 137, :_reduce_none, - 3, 138, :_reduce_157, - 2, 139, :_reduce_158, - 1, 140, :_reduce_159, - 2, 140, :_reduce_160, - 0, 141, :_reduce_161, - 2, 141, :_reduce_162, - 1, 142, :_reduce_163, - 2, 142, :_reduce_164, - 2, 108, :_reduce_165, - 3, 108, :_reduce_166, - 3, 108, :_reduce_167 ] + 3, 129, :_reduce_116, + 4, 129, :_reduce_117, + 3, 129, :_reduce_118, + 1, 103, :_reduce_119, + 2, 103, :_reduce_120, + 1, 103, :_reduce_121, + 3, 114, :_reduce_122, + 2, 127, :_reduce_123, + 2, 127, :_reduce_124, + 3, 131, :_reduce_125, + 4, 131, :_reduce_126, + 4, 130, :_reduce_127, + 6, 125, :_reduce_128, + 7, 125, :_reduce_129, + 3, 122, :_reduce_130, + 0, 132, :_reduce_131, + 1, 132, :_reduce_132, + 2, 132, :_reduce_133, + 3, 132, :_reduce_134, + 3, 132, :_reduce_135, + 4, 132, :_reduce_136, + 4, 132, :_reduce_137, + 2, 132, :_reduce_138, + 3, 108, :_reduce_139, + 4, 108, :_reduce_140, + 5, 108, :_reduce_141, + 3, 133, :_reduce_142, + 2, 109, :_reduce_143, + 3, 124, :_reduce_144, + 3, 111, :_reduce_145, + 2, 111, :_reduce_146, + 4, 112, :_reduce_147, + 4, 112, :_reduce_148, + 1, 134, :_reduce_149, + 3, 134, :_reduce_150, + 2, 135, :_reduce_151, + 2, 135, :_reduce_152, + 3, 135, :_reduce_153, + 3, 135, :_reduce_154, + 5, 113, :_reduce_155, + 7, 113, :_reduce_156, + 1, 136, :_reduce_157, + 2, 136, :_reduce_158, + 3, 137, :_reduce_159, + 4, 137, :_reduce_160, + 3, 137, :_reduce_161, + 3, 138, :_reduce_162, + 2, 139, :_reduce_163, + 1, 140, :_reduce_164, + 2, 140, :_reduce_165, + 0, 141, :_reduce_166, + 2, 141, :_reduce_167, + 1, 142, :_reduce_168, + 2, 142, :_reduce_169, + 2, 107, :_reduce_170, + 3, 107, :_reduce_171, + 3, 107, :_reduce_172 ] -racc_reduce_n = 168 +racc_reduce_n = 173 -racc_shift_n = 290 +racc_shift_n = 299 racc_token_table = { false => 0, :error => 1, :IF => 2, @@ -967,42 +987,42 @@ :NO => 11, :ON => 12, :OFF => 13, :IDENTIFIER => 14, :PROPERTY_ACCESS => 15, - :CODE => 16, - :PARAM => 17, - :PARAM_SPLAT => 18, + :PROTOTYPE_ACCESS => 16, + :CODE => 17, + :PARAM => 18, :NEW => 19, :RETURN => 20, :TRY => 21, :CATCH => 22, :FINALLY => 23, :THROW => 24, :BREAK => 25, :CONTINUE => 26, :FOR => 27, :IN => 28, - :BY => 29, - :WHEN => 30, - :WHILE => 31, - :SWITCH => 32, - :LEADING_WHEN => 33, - :DELETE => 34, - :INSTANCEOF => 35, - :TYPEOF => 36, - :SUPER => 37, - :EXTENDS => 38, - :ARGUMENTS => 39, - :NEWLINE => 40, - :COMMENT => 41, - :JS => 42, - :INDENT => 43, - :OUTDENT => 44, - "?" => 45, - :UMINUS => 46, - :SPLAT => 47, + :INO => 29, + :BY => 30, + :WHEN => 31, + :WHILE => 32, + :SWITCH => 33, + :LEADING_WHEN => 34, + :DELETE => 35, + :INSTANCEOF => 36, + :TYPEOF => 37, + :SUPER => 38, + :EXTENDS => 39, + :ARGUMENTS => 40, + :NEWLINE => 41, + :COMMENT => 42, + :JS => 43, + :INDENT => 44, + :OUTDENT => 45, + "?" => 46, + :UMINUS => 47, :NOT => 48, "!" => 49, "!!" => 50, "~" => 51, "++" => 52, @@ -1085,23 +1105,24 @@ "NO", "ON", "OFF", "IDENTIFIER", "PROPERTY_ACCESS", + "PROTOTYPE_ACCESS", "CODE", "PARAM", - "PARAM_SPLAT", "NEW", "RETURN", "TRY", "CATCH", "FINALLY", "THROW", "BREAK", "CONTINUE", "FOR", "IN", + "INO", "BY", "WHEN", "WHILE", "SWITCH", "LEADING_WHEN", @@ -1116,11 +1137,10 @@ "JS", "INDENT", "OUTDENT", "\"?\"", "UMINUS", - "SPLAT", "NOT", "\"!\"", "\"!!\"", "\"~\"", "\"++\"", @@ -1175,11 +1195,10 @@ "Expression", "Value", "Call", "Code", "Operation", - "Range", "Assign", "If", "Try", "Throw", "Return", @@ -1195,10 +1214,11 @@ "ParamList", "Param", "Array", "Object", "Parenthetical", + "Range", "Accessor", "Invocation", "Index", "AssignList", "Super", @@ -1219,53 +1239,53 @@ ##### State transition tables end ##### # reduce 0 omitted -module_eval(<<'.,.,', 'grammar.y', 47) +module_eval(<<'.,.,', 'grammar.y', 48) def _reduce_1(val, _values, result) result = Expressions.new result end .,., -module_eval(<<'.,.,', 'grammar.y', 48) +module_eval(<<'.,.,', 'grammar.y', 49) def _reduce_2(val, _values, result) result = Expressions.new result end .,., -module_eval(<<'.,.,', 'grammar.y', 49) +module_eval(<<'.,.,', 'grammar.y', 50) def _reduce_3(val, _values, result) result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 50) +module_eval(<<'.,.,', 'grammar.y', 51) def _reduce_4(val, _values, result) result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 55) +module_eval(<<'.,.,', 'grammar.y', 56) def _reduce_5(val, _values, result) result = Expressions.wrap(val) result end .,., -module_eval(<<'.,.,', 'grammar.y', 56) +module_eval(<<'.,.,', 'grammar.y', 57) def _reduce_6(val, _values, result) result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 57) +module_eval(<<'.,.,', 'grammar.y', 58) def _reduce_7(val, _values, result) result = val[0] result end .,., @@ -1300,987 +1320,1032 @@ # reduce 22 omitted # reduce 23 omitted -# reduce 24 omitted - -module_eval(<<'.,.,', 'grammar.y', 82) - def _reduce_25(val, _values, result) +module_eval(<<'.,.,', 'grammar.y', 85) + def _reduce_24(val, _values, result) result = val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 83) - def _reduce_26(val, _values, result) +module_eval(<<'.,.,', 'grammar.y', 86) + def _reduce_25(val, _values, result) result = Expressions.new result end .,., +# reduce 26 omitted + # reduce 27 omitted -# reduce 28 omitted +module_eval(<<'.,.,', 'grammar.y', 97) + def _reduce_28(val, _values, result) + result = LiteralNode.new(val[0]) + result + end +.,., -module_eval(<<'.,.,', 'grammar.y', 94) +module_eval(<<'.,.,', 'grammar.y', 98) def _reduce_29(val, _values, result) result = LiteralNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 95) +module_eval(<<'.,.,', 'grammar.y', 99) def _reduce_30(val, _values, result) result = LiteralNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 96) +module_eval(<<'.,.,', 'grammar.y', 100) def _reduce_31(val, _values, result) result = LiteralNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 97) +module_eval(<<'.,.,', 'grammar.y', 101) def _reduce_32(val, _values, result) result = LiteralNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 98) +module_eval(<<'.,.,', 'grammar.y', 102) def _reduce_33(val, _values, result) result = LiteralNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 99) +module_eval(<<'.,.,', 'grammar.y', 103) def _reduce_34(val, _values, result) result = LiteralNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 100) +module_eval(<<'.,.,', 'grammar.y', 104) def _reduce_35(val, _values, result) - result = LiteralNode.new(val[0]) + result = LiteralNode.new(true) result end .,., -module_eval(<<'.,.,', 'grammar.y', 101) +module_eval(<<'.,.,', 'grammar.y', 105) def _reduce_36(val, _values, result) - result = LiteralNode.new(true) + result = LiteralNode.new(false) result end .,., -module_eval(<<'.,.,', 'grammar.y', 102) +module_eval(<<'.,.,', 'grammar.y', 106) def _reduce_37(val, _values, result) - result = LiteralNode.new(false) + result = LiteralNode.new(true) result end .,., -module_eval(<<'.,.,', 'grammar.y', 103) +module_eval(<<'.,.,', 'grammar.y', 107) def _reduce_38(val, _values, result) - result = LiteralNode.new(true) + result = LiteralNode.new(false) result end .,., -module_eval(<<'.,.,', 'grammar.y', 104) +module_eval(<<'.,.,', 'grammar.y', 108) def _reduce_39(val, _values, result) - result = LiteralNode.new(false) + result = LiteralNode.new(true) result end .,., -module_eval(<<'.,.,', 'grammar.y', 105) +module_eval(<<'.,.,', 'grammar.y', 109) def _reduce_40(val, _values, result) - result = LiteralNode.new(true) + result = LiteralNode.new(false) result end .,., -module_eval(<<'.,.,', 'grammar.y', 106) +module_eval(<<'.,.,', 'grammar.y', 114) def _reduce_41(val, _values, result) - result = LiteralNode.new(false) + result = AssignNode.new(val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 111) +module_eval(<<'.,.,', 'grammar.y', 119) def _reduce_42(val, _values, result) - result = AssignNode.new(val[0], val[2]) + result = AssignNode.new(ValueNode.new(val[0]), val[2], :object) result end .,., -module_eval(<<'.,.,', 'grammar.y', 116) +module_eval(<<'.,.,', 'grammar.y', 120) def _reduce_43(val, _values, result) - result = AssignNode.new(ValueNode.new(val[0]), val[2], :object) + result = AssignNode.new(ValueNode.new(LiteralNode.new(val[0])), val[2], :object) result end .,., -module_eval(<<'.,.,', 'grammar.y', 117) +module_eval(<<'.,.,', 'grammar.y', 121) def _reduce_44(val, _values, result) - result = AssignNode.new(ValueNode.new(LiteralNode.new(val[0])), val[2], :object) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 118) +module_eval(<<'.,.,', 'grammar.y', 126) def _reduce_45(val, _values, result) - result = val[0] + result = ReturnNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 123) +module_eval(<<'.,.,', 'grammar.y', 127) def _reduce_46(val, _values, result) - result = ReturnNode.new(val[1]) + result = ReturnNode.new(ValueNode.new(Value.new('null'))) result end .,., -module_eval(<<'.,.,', 'grammar.y', 128) +module_eval(<<'.,.,', 'grammar.y', 132) def _reduce_47(val, _values, result) result = CommentNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 135) +module_eval(<<'.,.,', 'grammar.y', 139) def _reduce_48(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 136) +module_eval(<<'.,.,', 'grammar.y', 140) def _reduce_49(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 137) +module_eval(<<'.,.,', 'grammar.y', 141) def _reduce_50(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 138) +module_eval(<<'.,.,', 'grammar.y', 142) def _reduce_51(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 139) +module_eval(<<'.,.,', 'grammar.y', 143) def _reduce_52(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 140) +module_eval(<<'.,.,', 'grammar.y', 144) def _reduce_53(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 141) +module_eval(<<'.,.,', 'grammar.y', 145) def _reduce_54(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 142) +module_eval(<<'.,.,', 'grammar.y', 146) def _reduce_55(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 143) +module_eval(<<'.,.,', 'grammar.y', 147) def _reduce_56(val, _values, result) result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 144) +module_eval(<<'.,.,', 'grammar.y', 148) def _reduce_57(val, _values, result) result = OpNode.new(val[1], val[0], nil, true) result end .,., -module_eval(<<'.,.,', 'grammar.y', 145) +module_eval(<<'.,.,', 'grammar.y', 149) def _reduce_58(val, _values, result) result = OpNode.new(val[1], val[0], nil, true) result end .,., -module_eval(<<'.,.,', 'grammar.y', 147) +module_eval(<<'.,.,', 'grammar.y', 151) def _reduce_59(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 148) +module_eval(<<'.,.,', 'grammar.y', 152) def _reduce_60(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 149) +module_eval(<<'.,.,', 'grammar.y', 153) def _reduce_61(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 151) +module_eval(<<'.,.,', 'grammar.y', 155) def _reduce_62(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 152) +module_eval(<<'.,.,', 'grammar.y', 156) def _reduce_63(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 154) +module_eval(<<'.,.,', 'grammar.y', 158) def _reduce_64(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 155) +module_eval(<<'.,.,', 'grammar.y', 159) def _reduce_65(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 156) +module_eval(<<'.,.,', 'grammar.y', 160) def _reduce_66(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 158) +module_eval(<<'.,.,', 'grammar.y', 162) def _reduce_67(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 159) +module_eval(<<'.,.,', 'grammar.y', 163) def _reduce_68(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 160) +module_eval(<<'.,.,', 'grammar.y', 164) def _reduce_69(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 162) +module_eval(<<'.,.,', 'grammar.y', 166) def _reduce_70(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 163) +module_eval(<<'.,.,', 'grammar.y', 167) def _reduce_71(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 164) +module_eval(<<'.,.,', 'grammar.y', 168) def _reduce_72(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 165) +module_eval(<<'.,.,', 'grammar.y', 169) def _reduce_73(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 167) +module_eval(<<'.,.,', 'grammar.y', 171) def _reduce_74(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 168) +module_eval(<<'.,.,', 'grammar.y', 172) def _reduce_75(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 169) +module_eval(<<'.,.,', 'grammar.y', 173) def _reduce_76(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 170) +module_eval(<<'.,.,', 'grammar.y', 174) def _reduce_77(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 172) +module_eval(<<'.,.,', 'grammar.y', 176) def _reduce_78(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 173) +module_eval(<<'.,.,', 'grammar.y', 177) def _reduce_79(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 174) +module_eval(<<'.,.,', 'grammar.y', 178) def _reduce_80(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 175) +module_eval(<<'.,.,', 'grammar.y', 179) def _reduce_81(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 177) +module_eval(<<'.,.,', 'grammar.y', 181) def _reduce_82(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 178) +module_eval(<<'.,.,', 'grammar.y', 182) def _reduce_83(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 179) +module_eval(<<'.,.,', 'grammar.y', 183) def _reduce_84(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 180) +module_eval(<<'.,.,', 'grammar.y', 184) def _reduce_85(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 181) +module_eval(<<'.,.,', 'grammar.y', 185) def _reduce_86(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 182) +module_eval(<<'.,.,', 'grammar.y', 186) def _reduce_87(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 183) +module_eval(<<'.,.,', 'grammar.y', 187) def _reduce_88(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 185) +module_eval(<<'.,.,', 'grammar.y', 189) def _reduce_89(val, _values, result) result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 189) +module_eval(<<'.,.,', 'grammar.y', 190) def _reduce_90(val, _values, result) - result = ExistenceNode.new(val[0]) + result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 194) +module_eval(<<'.,.,', 'grammar.y', 195) def _reduce_91(val, _values, result) - result = CodeNode.new(val[0], val[2]) + result = ExistenceNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 195) +module_eval(<<'.,.,', 'grammar.y', 200) def _reduce_92(val, _values, result) - result = CodeNode.new([], val[1]) + result = CodeNode.new(val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 200) +module_eval(<<'.,.,', 'grammar.y', 201) def _reduce_93(val, _values, result) - result = val + result = CodeNode.new([], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 201) +module_eval(<<'.,.,', 'grammar.y', 206) def _reduce_94(val, _values, result) - result = val[0] << val[2] + result = val result end .,., -# reduce 95 omitted - -module_eval(<<'.,.,', 'grammar.y', 206) - def _reduce_96(val, _values, result) - result = ParamSplatNode.new(val[1]) +module_eval(<<'.,.,', 'grammar.y', 207) + def _reduce_95(val, _values, result) + result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 210) +# reduce 96 omitted + +module_eval(<<'.,.,', 'grammar.y', 213) def _reduce_97(val, _values, result) - result = ArgSplatNode.new(val[1]) + result = ParamSplatNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 215) +module_eval(<<'.,.,', 'grammar.y', 218) def _reduce_98(val, _values, result) - result = ValueNode.new(val[0]) + result = ArgSplatNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 216) +module_eval(<<'.,.,', 'grammar.y', 223) def _reduce_99(val, _values, result) result = ValueNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 217) +module_eval(<<'.,.,', 'grammar.y', 224) def _reduce_100(val, _values, result) result = ValueNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 218) +module_eval(<<'.,.,', 'grammar.y', 225) def _reduce_101(val, _values, result) result = ValueNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 219) +module_eval(<<'.,.,', 'grammar.y', 226) def _reduce_102(val, _values, result) result = ValueNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 220) +module_eval(<<'.,.,', 'grammar.y', 227) def _reduce_103(val, _values, result) - result = val[0] << val[1] + result = ValueNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 221) +module_eval(<<'.,.,', 'grammar.y', 228) def _reduce_104(val, _values, result) - result = ValueNode.new(val[0], [val[1]]) + result = ValueNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 226) +module_eval(<<'.,.,', 'grammar.y', 229) def _reduce_105(val, _values, result) - result = AccessorNode.new(val[1]) + result = val[0] << val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 227) +module_eval(<<'.,.,', 'grammar.y', 230) def _reduce_106(val, _values, result) - result = val[0] + result = ValueNode.new(val[0], [val[1]]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 228) +module_eval(<<'.,.,', 'grammar.y', 235) def _reduce_107(val, _values, result) - result = SliceNode.new(val[0]) + result = AccessorNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 233) +module_eval(<<'.,.,', 'grammar.y', 236) def _reduce_108(val, _values, result) - result = IndexNode.new(val[1]) + result = AccessorNode.new(val[1], true) result end .,., -module_eval(<<'.,.,', 'grammar.y', 238) +module_eval(<<'.,.,', 'grammar.y', 237) def _reduce_109(val, _values, result) - result = ObjectNode.new(val[1]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 243) +module_eval(<<'.,.,', 'grammar.y', 238) def _reduce_110(val, _values, result) - result = [] + result = SliceNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 244) +module_eval(<<'.,.,', 'grammar.y', 243) def _reduce_111(val, _values, result) - result = val + result = IndexNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 245) +module_eval(<<'.,.,', 'grammar.y', 248) def _reduce_112(val, _values, result) - result = val[0] << val[2] + result = ObjectNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 246) +module_eval(<<'.,.,', 'grammar.y', 253) def _reduce_113(val, _values, result) - result = val[0] << val[2] + result = [] result end .,., -module_eval(<<'.,.,', 'grammar.y', 248) +module_eval(<<'.,.,', 'grammar.y', 254) def _reduce_114(val, _values, result) - result = val[0] << val[3] + result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 249) +module_eval(<<'.,.,', 'grammar.y', 255) def _reduce_115(val, _values, result) - result = val[1] + result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 254) +module_eval(<<'.,.,', 'grammar.y', 256) def _reduce_116(val, _values, result) - result = val[0] + result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 255) +module_eval(<<'.,.,', 'grammar.y', 258) def _reduce_117(val, _values, result) - result = val[1].new_instance + result = val[0] << val[3] result end .,., -module_eval(<<'.,.,', 'grammar.y', 256) +module_eval(<<'.,.,', 'grammar.y', 259) def _reduce_118(val, _values, result) - result = val[0] + result = val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 261) +module_eval(<<'.,.,', 'grammar.y', 264) def _reduce_119(val, _values, result) - result = ExtendsNode.new(val[0], val[2]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 266) +module_eval(<<'.,.,', 'grammar.y', 265) def _reduce_120(val, _values, result) - result = CallNode.new(val[0], val[1]) + result = val[1].new_instance result end .,., -module_eval(<<'.,.,', 'grammar.y', 267) +module_eval(<<'.,.,', 'grammar.y', 266) def _reduce_121(val, _values, result) - result = CallNode.new(val[0], val[1]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 272) +module_eval(<<'.,.,', 'grammar.y', 271) def _reduce_122(val, _values, result) - result = val[1] + result = ExtendsNode.new(val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 273) +module_eval(<<'.,.,', 'grammar.y', 276) def _reduce_123(val, _values, result) - result = val[1] << val[3] + result = CallNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 278) +module_eval(<<'.,.,', 'grammar.y', 277) def _reduce_124(val, _values, result) - result = CallNode.new(:super, val[2]) + result = CallNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 284) +module_eval(<<'.,.,', 'grammar.y', 283) def _reduce_125(val, _values, result) - result = RangeNode.new(val[1], val[4]) + result = val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 286) +module_eval(<<'.,.,', 'grammar.y', 284) def _reduce_126(val, _values, result) - result = RangeNode.new(val[1], val[5], true) + result = val[1] << val[3] result end .,., -module_eval(<<'.,.,', 'grammar.y', 291) +module_eval(<<'.,.,', 'grammar.y', 289) def _reduce_127(val, _values, result) - result = ArrayNode.new(val[1]) + result = CallNode.new(:super, val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 296) +module_eval(<<'.,.,', 'grammar.y', 295) def _reduce_128(val, _values, result) - result = [] + result = RangeNode.new(val[1], val[4]) result end .,., module_eval(<<'.,.,', 'grammar.y', 297) def _reduce_129(val, _values, result) - result = val + result = RangeNode.new(val[1], val[5], true) result end .,., -module_eval(<<'.,.,', 'grammar.y', 298) +module_eval(<<'.,.,', 'grammar.y', 302) def _reduce_130(val, _values, result) - result = [val[1]] + result = ArrayNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 299) +module_eval(<<'.,.,', 'grammar.y', 307) def _reduce_131(val, _values, result) - result = val[0] << val[2] + result = [] result end .,., -module_eval(<<'.,.,', 'grammar.y', 300) +module_eval(<<'.,.,', 'grammar.y', 308) def _reduce_132(val, _values, result) - result = val[0] << val[2] + result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 301) +module_eval(<<'.,.,', 'grammar.y', 309) def _reduce_133(val, _values, result) - result = val[0] << val[3] + result = [val[1]] result end .,., -module_eval(<<'.,.,', 'grammar.y', 302) +module_eval(<<'.,.,', 'grammar.y', 310) def _reduce_134(val, _values, result) - result = val[0] << val[3] + result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 303) +module_eval(<<'.,.,', 'grammar.y', 311) def _reduce_135(val, _values, result) - result = val[0] + result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 308) +module_eval(<<'.,.,', 'grammar.y', 312) def _reduce_136(val, _values, result) - result = TryNode.new(val[1], val[2][0], val[2][1]) + result = val[0] << val[3] result end .,., -module_eval(<<'.,.,', 'grammar.y', 309) +module_eval(<<'.,.,', 'grammar.y', 313) def _reduce_137(val, _values, result) - result = TryNode.new(val[1], nil, nil, val[3]) + result = val[0] << val[3] result end .,., -module_eval(<<'.,.,', 'grammar.y', 311) +module_eval(<<'.,.,', 'grammar.y', 314) def _reduce_138(val, _values, result) - result = TryNode.new(val[1], val[2][0], val[2][1], val[4]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 316) +module_eval(<<'.,.,', 'grammar.y', 319) def _reduce_139(val, _values, result) - result = [val[1], val[2]] + result = TryNode.new(val[1], val[2][0], val[2][1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 321) +module_eval(<<'.,.,', 'grammar.y', 320) def _reduce_140(val, _values, result) - result = ThrowNode.new(val[1]) + result = TryNode.new(val[1], nil, nil, val[3]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 326) +module_eval(<<'.,.,', 'grammar.y', 322) def _reduce_141(val, _values, result) - result = ParentheticalNode.new(val[1], val[0].line) + result = TryNode.new(val[1], val[2][0], val[2][1], val[4]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 331) +module_eval(<<'.,.,', 'grammar.y', 327) def _reduce_142(val, _values, result) - result = WhileNode.new(val[1], val[2]) + result = [val[1], val[2]] result end .,., -module_eval(<<'.,.,', 'grammar.y', 338) +module_eval(<<'.,.,', 'grammar.y', 332) def _reduce_143(val, _values, result) - result = ForNode.new(val[0], val[3], val[2][0], val[2][1]) + result = ThrowNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 339) +module_eval(<<'.,.,', 'grammar.y', 337) def _reduce_144(val, _values, result) - result = ForNode.new(val[3], val[2], val[1][0], val[1][1]) + result = ParentheticalNode.new(val[1], val[0].line) result end .,., -module_eval(<<'.,.,', 'grammar.y', 344) +module_eval(<<'.,.,', 'grammar.y', 342) def _reduce_145(val, _values, result) - result = val + result = WhileNode.new(val[1], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 345) +module_eval(<<'.,.,', 'grammar.y', 343) def _reduce_146(val, _values, result) - result = [val[0], val[2]] + result = WhileNode.new(val[1], nil) result end .,., module_eval(<<'.,.,', 'grammar.y', 350) def _reduce_147(val, _values, result) - result = {:source => val[1]} + result = ForNode.new(val[0], val[3], val[2][0], val[2][1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 352) +module_eval(<<'.,.,', 'grammar.y', 351) def _reduce_148(val, _values, result) - result = val[0].merge(:filter => val[2]) + result = ForNode.new(val[3], val[2], val[1][0], val[1][1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 354) +module_eval(<<'.,.,', 'grammar.y', 356) def _reduce_149(val, _values, result) - result = val[0].merge(:step => val[2]) + result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 360) +module_eval(<<'.,.,', 'grammar.y', 357) def _reduce_150(val, _values, result) - result = val[3].rewrite_condition(val[1]) + result = [val[0], val[2]] result end .,., module_eval(<<'.,.,', 'grammar.y', 362) def _reduce_151(val, _values, result) - result = val[3].rewrite_condition(val[1]).add_else(val[5]) + result = {:source => val[1]} result end .,., -module_eval(<<'.,.,', 'grammar.y', 367) +module_eval(<<'.,.,', 'grammar.y', 363) def _reduce_152(val, _values, result) - result = val[0] + result = {:source => val[1], :object => true} result end .,., -module_eval(<<'.,.,', 'grammar.y', 368) +module_eval(<<'.,.,', 'grammar.y', 365) def _reduce_153(val, _values, result) - result = val[0] << val[1] + result = val[0].merge(:filter => val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 373) +module_eval(<<'.,.,', 'grammar.y', 367) def _reduce_154(val, _values, result) - result = IfNode.new(val[1], val[2], nil, {:statement => true}) + result = val[0].merge(:step => val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 375) +module_eval(<<'.,.,', 'grammar.y', 373) def _reduce_155(val, _values, result) - result = IfNode.new(val[1], val[2], nil, {:statement => true}) + result = val[3].rewrite_condition(val[1]) result end .,., -# reduce 156 omitted +module_eval(<<'.,.,', 'grammar.y', 375) + def _reduce_156(val, _values, result) + result = val[3].rewrite_condition(val[1]).add_else(val[5]) + result + end +.,., -module_eval(<<'.,.,', 'grammar.y', 383) +module_eval(<<'.,.,', 'grammar.y', 380) def _reduce_157(val, _values, result) - result = IfNode.new(val[1], val[2]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 388) +module_eval(<<'.,.,', 'grammar.y', 381) def _reduce_158(val, _values, result) - result = val[1].force_statement + result = val[0] << val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 393) +module_eval(<<'.,.,', 'grammar.y', 386) def _reduce_159(val, _values, result) - result = val[0] + result = IfNode.new(val[1], val[2], nil, {:statement => true}) result end .,., -module_eval(<<'.,.,', 'grammar.y', 394) +module_eval(<<'.,.,', 'grammar.y', 388) def _reduce_160(val, _values, result) - result = val[0].add_else(val[1]) + result = IfNode.new(val[1], val[2], nil, {:statement => true}) result end .,., -module_eval(<<'.,.,', 'grammar.y', 399) +module_eval(<<'.,.,', 'grammar.y', 389) def _reduce_161(val, _values, result) - result = nil + result = val[2].add_comment(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 400) +module_eval(<<'.,.,', 'grammar.y', 394) def _reduce_162(val, _values, result) - result = val[1] + result = IfNode.new(val[1], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 405) +module_eval(<<'.,.,', 'grammar.y', 399) def _reduce_163(val, _values, result) - result = val[0] + result = val[1].force_statement result end .,., -module_eval(<<'.,.,', 'grammar.y', 406) +module_eval(<<'.,.,', 'grammar.y', 404) def _reduce_164(val, _values, result) - result = val[0].add_else(val[1]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 411) +module_eval(<<'.,.,', 'grammar.y', 405) def _reduce_165(val, _values, result) result = val[0].add_else(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 412) +module_eval(<<'.,.,', 'grammar.y', 410) def _reduce_166(val, _values, result) - result = IfNode.new(val[2], Expressions.wrap(val[0]), nil, {:statement => true}) + result = nil result end .,., -module_eval(<<'.,.,', 'grammar.y', 413) +module_eval(<<'.,.,', 'grammar.y', 411) def _reduce_167(val, _values, result) + result = val[1] + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 416) + def _reduce_168(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 417) + def _reduce_169(val, _values, result) + result = val[0].add_else(val[1]) + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 422) + def _reduce_170(val, _values, result) + result = val[0].add_else(val[1]) + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 423) + def _reduce_171(val, _values, result) + result = IfNode.new(val[2], Expressions.wrap(val[0]), nil, {:statement => true}) + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 424) + def _reduce_172(val, _values, result) result = IfNode.new(val[2], Expressions.wrap(val[0]), nil, {:statement => true, :invert => true}) result end .,.,