lib/coffee_script/parser.rb in coffee-script-0.1.0 vs lib/coffee_script/parser.rb in coffee-script-0.1.1

- old
+ new

@@ -8,11 +8,11 @@ module CoffeeScript class Parser < Racc::Parser -module_eval(<<'...end grammar.y/module_eval...', 'grammar.y', 383) +module_eval(<<'...end grammar.y/module_eval...', 'grammar.y', 385) # 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,824 +32,835 @@ ...end grammar.y/module_eval... ##### State transition tables begin ### clist = [ -'11,249,233,192,36,42,48,53,60,4,8,16,19,26,212,196,40,46,52,57,54,61', -'12,20,28,220,215,39,44,114,58,3,107,15,21,227,31,35,41,47,51,59,54,61', -'114,175,27,107,107,54,61,214,15,220,-142,-142,54,61,186,133,114,135', -'213,209,26,195,114,15,15,191,250,234,183,54,61,2,190,13,11,24,232,34', -'36,42,48,53,60,4,8,16,19,26,111,223,40,46,52,57,54,61,12,20,28,228,178', -'39,44,111,58,3,209,15,21,210,31,35,41,47,51,59,211,223,120,111,27,54', -'61,119,13,111,24,157,34,119,99,102,71,74,78,81,84,88,90,93,96,98,101', -'54,61,138,179,54,61,2,180,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,-142', -'-142,40,46,52,57,,225,12,20,28,54,61,39,44,,58,3,,15,21,,31,35,41,47', -'51,59,54,61,-142,-142,27,99,102,71,74,78,81,84,88,90,93,96,98,101,70', -'73,77,80,83,87,89,92,-142,-142,,54,61,,175,2,,13,11,24,205,34,36,42', -'48,53,60,4,8,16,19,26,54,61,40,46,52,57,,245,12,20,28,54,61,39,44,,58', -'3,,15,21,,31,35,41,47,51,59,-142,-142,-142,-142,27,99,102,71,74,78,81', -'84,88,90,93,96,98,101,70,73,77,80,83,87,89,92,99,102,71,74,78,54,61', -'2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,-142,-142,40,46,52,57,,247', -'12,20,28,54,61,39,44,,58,3,,15,21,,31,35,41,47,51,59,129,130,99,102', -'27,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87,89,92', -'99,102,71,74,78,81,84,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,54', -'61,40,46,52,57,,242,12,20,28,54,61,39,44,,58,3,,15,21,,31,35,41,47,51', -'59,99,102,99,102,27,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77', -'80,83,87,89,92,99,102,71,74,78,81,84,2,,13,11,24,,34,36,42,48,53,60', -'4,8,16,19,26,,,40,46,52,57,,223,12,20,28,54,61,39,44,,58,3,,15,21,,31', -'35,41,47,51,59,,,,,27,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73', -'77,80,83,87,89,92,99,102,71,74,78,81,84,2,,13,11,24,,34,36,42,48,53', -'60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35', -'41,47,51,59,,,,,27,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77', -'80,83,87,89,92,54,61,,175,,176,,2,,13,11,24,,34,36,42,48,53,60,4,8,16', -'19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51', -'59,,,,,27,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87', -'89,92,99,102,71,74,78,54,61,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19', -'26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59', -',,,,27,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87,89', -'92,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57', -',,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,99,102,71', -'74,78,81,84,88,90,93,96,98,101,99,102,71,74,78,81,84,88,90,93,96,98', -'101,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12', -'20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,99,102,71,74,78', -'81,84,88,90,93,96,98,101,99,102,71,74,78,81,84,88,90,93,,,,,,2,,13,11', -'24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44', -',58,3,,15,21,,31,35,41,47,51,59,,,,,27,99,102,71,74,78,81,84,88,90,93', -'99,102,71,74,78,81,84,88,90,93,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60', -'4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41', -'47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,54,61,2,,13,11,24,,34,36,42', -'48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21', -',31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34', -'36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,', -'15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11', -'24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44', -',58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2', -',13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,', -',39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12', -'20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52', -'57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40', -'46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,', -',,,,,,,,,,,,,,,,,,,,,,,,,54,61,2,,13,11,24,,34,36,42,48,53,60,4,8,16', -'19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51', -'59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60', -'4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41', -'47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48', -'53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31', -'35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36', -'42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15', -'21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,54,61,2,,13,238', -'24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44', -',58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,54', -'61,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20', -'28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57', -',,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,', -',,,,,,,,,,,,,,,,54,61,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,', -'40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27', -',,,,,,,,,,,,,,,,,,,,,,,,,,54,61,2,,13,11,24,,34,36,42,48,53,60,4,8,16', -'19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51', -'59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,54,61,2,,13,11,24,,34,36,42,48,53', -'60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35', -'41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,54,61,2,,13,11,24,,34,36', -'42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15', -'21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24', -',34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58', -'3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13', -'11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39', -'44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20', -'28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57', -',,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,', -',,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46', -'52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26', -',,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,', -',27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16', -'19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51', -'59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60', -'4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41', -'47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48', -'53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31', -'35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36', -'42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15', -'21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24', -',34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58', -'3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13', -'11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39', -'44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20', -'28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57', -',,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,', -',,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46', -'52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26', -',,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,', -',27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16', -'19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51', -'59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60', -'4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41', -'47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48', -'53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31', -'35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36', -'42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15', -'21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24', -',34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58', -'3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13', -'11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39', -'44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20', -'28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,', -',,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57', -',,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,', -',,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46', -'52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26', -',,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,', -',27,,,,,,,,,,,,,,,,,,,,,,,,,,,54,61,2,,13,11,24,,34,36,42,48,53,60,4', -'8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47', -'51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53', -'60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35', -'41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42', -'48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21', -',31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34', -'36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,', -'15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11', -'24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44', -',58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2', -',13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,', -',39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,', -',,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12', -'20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52', -'57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40', -'46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,', -',,,,,,,,,,,,,,,,,,,,,,,,,54,61,2,,13,11,24,,34,36,42,48,53,60,4,8,16', -'19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51', -'59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60', -'4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41', -'47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36,42,48', -'53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15,21,,31', -'35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24,,34,36', -'42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58,3,,15', -'21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13,11,24', -',34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39,44,,58', -'3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,,,,2,,13', -'11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12,20,28,,,39', -'44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,,,,,,,,,,,,', -'54,61,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52,57,,,12', -'20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,,,,,27,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,2,,13,11,24,,34,36,42,48,53,60,4,8,16,19,26,,,40,46,52', -'57,,,12,20,28,,,39,44,,58,3,,15,21,,31,35,41,47,51,59,75,,,85,27,,,', -',,,,,,,,,,,,,,,,,86,,,,,,,,2,,13,,24,,34,99,102,71,74,78,81,84,88,90', -'93,96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,,75,91', -'94,85,,,,,239,,,,,,,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84', -'88,90,93,96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82', -',,91,94,,,,203,75,204,172,85,,,,,,,,,,,,,,,,,,,,,,86,,,,,,,,,,,,,,,99', -'102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87,89,92,95,97', -'100,69,72,76,79,82,,,91,94,54,61,75,,172,85,,,,,,,,,,,,,,,,,,,,,,86', -',,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83', -'87,89,92,95,97,100,69,72,76,79,82,,,91,94,54,61,75,,172,85,,,,,,,,,', -',,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101', -'70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,,,91,94,54,61,75,,172', -'85,,,,,,,,,,,,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90', -'93,96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,,,91,94', -'54,61,75,,172,85,,,,,,,,,,,,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74', -'78,81,84,88,90,93,96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72', -'76,79,82,,,91,94,54,61,75,,,85,,,,,,,,,,,,,,,,,,,,,,86,,,,,,,,,,,,,', -',99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87,89,92,95', -'97,100,69,72,76,79,82,251,75,91,94,85,,,,,,,,,,,,,,,,,,,,,,86,,,,,,', -',,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87,89', -'92,95,97,100,69,72,76,79,82,,75,91,94,85,,,,,,,,,,,,,,,,,,,,,,86,,,', -',,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87', -'89,92,95,97,100,69,72,76,79,82,,75,91,94,85,,,,,,,,,,,,,,,,,,,,,,86', -',,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83', -'87,89,92,95,97,100,69,72,76,79,82,,75,91,94,85,,,,,,,,,,,,,,,,,,,,,', -'86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80', -'83,87,89,92,95,97,100,69,72,76,79,82,,75,91,94,85,,,,,,,,,,,,,,,,,,', -',,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77', -'80,83,87,89,92,95,97,100,69,72,76,79,82,,75,91,94,85,,,,,,,,,,,,,,,', -',,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73', -'77,80,83,87,89,92,95,97,100,69,72,76,79,82,,75,91,94,85,,,,,,,,,,,,', -',,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70', -'73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,,75,91,94,85,,,,,,,,,', -',,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101', -'70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,,75,91,94,85,,,,,,', -',,,,,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98', -'101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,255,75,91,94,85', -',,,,,,,,,,,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93', -'96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,75,,,85,', -',,,,,,,,,,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93', -'96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,75,,,85,', -',,,,,,,,,,,,,,,,,,,,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93', -'96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,86,,,,,,', -',,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87,89', -'92,95,97,100,69,72,76,79,82,86,,,,,,,,,,,,,,,99,102,71,74,78,81,84,88', -'90,93,96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,86', -',,,,,,,,,,,,,,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83', -'87,89,92,95,97,100,69,72,76,79,82,99,102,71,74,78,81,84,88,90,93,96', -'98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,99,102,71,74', -'78,81,84,88,90,93,96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72', -'76,79,82,99,102,71,74,78,81,84,88,90,93,96,98,101,70,73,77,80,83,87', -'89,92,95,97,100,69,72,76,79,82,99,102,71,74,78,81,84,88,90,93,96,98', -'101,70,73,77,80,83,87,89,92,95,97,100,69,72,76,79,82,99,102,71,74,78', -'81,84,88,90,93,96,98,101,70,73,77,80,83,87,89,92,95,97,100,69,72,76', -'79,82' ] - racc_action_table = arr = Array.new(7520, nil) +'13,254,241,121,39,45,52,57,63,3,9,18,22,28,197,203,43,50,56,59,166,217', +'14,23,30,219,191,42,48,121,61,219,7,15,116,29,33,199,44,51,55,62,2,8', +'116,225,4,10,38,184,75,4,10,251,231,212,29,4,10,28,196,121,-144,-144', +'-144,-144,29,202,120,4,10,218,255,242,121,4,10,17,116,26,13,36,215,49', +'39,45,52,57,63,3,9,18,22,28,120,224,43,50,56,59,29,224,14,23,30,4,10', +'42,48,216,61,148,7,15,186,29,33,143,44,51,55,62,2,8,232,26,120,36,38', +'49,129,68,130,4,10,240,184,-144,-144,120,-144,-144,201,129,82,85,89', +'92,95,100,103,105,107,110,113,81,84,17,215,26,13,36,142,49,39,45,52', +'57,63,3,9,18,22,28,-144,-144,43,50,56,59,,229,14,23,30,4,10,42,48,,61', +',7,15,,29,33,,44,51,55,62,2,8,82,85,82,85,38,82,85,89,92,95,100,103', +'105,107,110,113,81,84,88,91,94,99,102,104,106,109,,4,10,,188,65,66,17', +'189,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,4,10,43,50,56,59,,224,14', +'23,30,4,10,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,-144,-144,-144,-144', +'38,82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104', +'106,109,82,85,89,92,95,4,10,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,4,10,43,50,56,59,,246,14,23,30,4,10,42,48,,61,,7,15,,29,33,,44,51', +'55,62,2,8,4,10,4,10,38,82,85,89,92,95,100,103,105,107,110,113,81,84', +'88,91,94,99,102,104,106,109,82,85,89,92,95,100,103,17,,26,13,36,,49', +'39,45,52,57,63,3,9,18,22,28,4,10,43,50,56,59,,248,14,23,30,4,10,42,48', +',61,,7,15,,29,33,,44,51,55,62,2,8,82,85,,,38,82,85,89,92,95,100,103', +'105,107,110,113,81,84,88,91,94,99,102,104,106,109,82,85,89,92,95,100', +'103,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14', +'23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,82,85,89,92,95', +'100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109,82,85,89,92', +'95,4,10,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,', +',14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,82,85,89', +'92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109,82,85', +'89,92,95,100,103,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50', +'56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,82', +'85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109', +'4,10,,184,,185,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50', +'56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,82', +'85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109', +',,,,,4,10,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59', +',,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,82,85,89', +'92,95,100,103,105,107,110,113,81,84,82,85,89,92,95,100,103,105,107,110', +'113,81,84,4,10,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50', +'56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,82', +'85,89,92,95,100,103,105,107,110,113,81,84,82,85,89,92,95,100,103,105', +'107,110,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56', +'59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,82,85', +'89,92,95,100,103,105,107,110,82,85,89,92,95,100,103,105,107,110,,,,', +',,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14', +'23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50', +'56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2', +'8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,4,10,17,,26,13,36,,49,39,45,52,57', +'63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44', +'51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39', +'45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15', +',29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13', +'36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48', +',61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',17,,26,236,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23', +'30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,', +',,,,,,,,,,4,10,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50', +'56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2', +'8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,4,10,17,,26,13,36,,49,39,45,52,57', +'63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44', +'51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,4,10,17,,26,13,36,,49', +'39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7', +'15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26', +'13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42', +'48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14', +'23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50', +'56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,', +',,,,,,,,,,,,,,,,,,,,,,,,4,10,17,,26,13,36,,49,39,45,52,57,63,3,9,18', +'22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62', +'2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57', +'63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44', +'51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39', +'45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15', +',29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,4,10,17,,26', +'13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42', +'48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,', +',,4,10,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,', +'14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43', +'50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2', +'8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63', +'3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51', +'55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,4,10,17,,26,13,36,,49,39', +'45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15', +',29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,4,10,17,,26', +'13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42', +'48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14', +'23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,', +',,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50', +'56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2', +'8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63', +'3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51', +'55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,4,10,17,,26,13,36,,49,39', +'45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15', +',29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13', +'36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48', +',61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23', +'30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56', +'59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28', +',,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,', +',,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3', +'9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51', +'55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45', +'52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29', +'33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36', +',49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61', +',7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17', +',26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,', +',42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,', +',14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43', +'50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2', +'8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63', +'3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51', +'55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45', +'52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29', +'33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36', +',49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61', +',7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17', +',26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,', +',42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,', +',14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43', +'50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2', +'8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63', +'3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51', +'55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45', +'52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29', +'33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36', +',49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61', +',7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17', +',26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,', +',42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,', +',14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43', +'50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2', +'8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63', +'3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51', +'55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45', +'52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29', +'33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36', +',49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61', +',7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17', +',26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,', +',42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,', +',14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38,,,,,,,,,', +',,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22,28,,,43', +'50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2,8,,,,,38', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63,3,9,18,22', +'28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51,55,62,2', +'8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45,52,57,63', +'3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29,33,,44,51', +'55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36,,49,39,45', +'52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61,,7,15,,29', +'33,,44,51,55,62,2,8,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,,,,,,17,,26,13,36', +',49,39,45,52,57,63,3,9,18,22,28,,,43,50,56,59,,,14,23,30,,,42,48,,61', +',7,15,,29,33,,44,51,55,62,2,8,86,,,96,38,,,,,,,,,,,,,,,,,,,,,97,,,,', +',79,,17,,26,,36,,49,,,82,85,89,92,95,100,103,105,107,110,113,81,84,88', +'91,94,99,102,104,106,109,112,80,83,87,90,93,98,101,,86,108,111,96,,', +'209,,210,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103', +'105,107,110,113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93', +'98,101,,,108,111,86,,145,96,,243,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,', +',,,,,82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104', +'106,109,112,80,83,87,90,93,98,101,,,108,111,4,10,86,,145,96,,,,,,,,', +',,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103,105,107,110', +'113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93,98,101,,,108', +'111,4,10,86,,145,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85', +'89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109,112', +'80,83,87,90,93,98,101,,,108,111,4,10,86,,145,96,,,,,,,,,,,,,,,,,,,,', +',97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103,105,107,110,113,81,84,88', +'91,94,99,102,104,106,109,112,80,83,87,90,93,98,101,,,108,111,4,10,86', +',145,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100', +'103,105,107,110,113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90', +'93,98,101,,,108,111,4,10,86,,,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,', +',,,,,,,82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102', +'104,106,109,112,80,83,87,90,93,98,101,,86,108,111,96,,,,,,,,,,,,,,,', +',,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103,105,107,110,113,81', +'84,88,91,94,99,102,104,106,109,112,80,83,87,90,93,98,101,,86,108,111', +'96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103', +'105,107,110,113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93', +'98,101,,86,108,111,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85', +'89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109,112', +'80,83,87,90,93,98,101,,86,108,111,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79', +',,,,,,,,,,82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102', +'104,106,109,112,80,83,87,90,93,98,101,,86,108,111,96,,,,,,,,,,,,,,,', +',,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103,105,107,110,113,81', +'84,88,91,94,99,102,104,106,109,112,80,83,87,90,93,98,101,,86,108,111', +'96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103', +'105,107,110,113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93', +'98,101,256,86,108,111,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82', +'85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109', +'112,80,83,87,90,93,98,101,,86,108,111,96,,,,,,,,,,,,,,,,,,,,,,97,,,', +',,79,,,,,,,,,,,82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94', +'99,102,104,106,109,112,80,83,87,90,93,98,101,,86,108,111,96,,,,,,,,', +',,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103,105,107,110', +'113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93,98,101,259', +'86,108,111,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,,,82,85,89,92', +'95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109,112,80', +'83,87,90,93,98,101,86,,,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79,,,,,,,,,', +',82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106', +'109,112,80,83,87,90,93,98,101,86,,,96,,,,,,,,,,,,,,,,,,,,,,97,,,,,,79', +',,,,,,,,,,82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102', +'104,106,109,112,80,83,87,90,93,98,101,97,,,,,,79,,,,,,,,,,,82,85,89', +'92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109,112', +'80,83,87,90,93,98,101,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103,105', +'107,110,113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93,98', +'101,97,,,,,,79,,,,,,,,,,,82,85,89,92,95,100,103,105,107,110,113,81,84', +'88,91,94,99,102,104,106,109,112,80,83,87,90,93,98,101,79,,,,,,,,,,,82', +'85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109', +'112,80,83,87,90,93,98,101,79,,,,,,,,,,,82,85,89,92,95,100,103,105,107', +'110,113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93,98,101', +'79,,,,,,,,,,,82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99', +'102,104,106,109,112,80,83,87,90,93,98,101,82,85,89,92,95,100,103,105', +'107,110,113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93,98', +'101,82,85,89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104', +'106,109,112,80,83,87,90,93,98,101,82,85,89,92,95,100,103,105,107,110', +'113,81,84,88,91,94,99,102,104,106,109,112,80,83,87,90,93,98,101,82,85', +'89,92,95,100,103,105,107,110,113,81,84,88,91,94,99,102,104,106,109,112', +'80,83,87,90,93,98,101' ] + racc_action_table = arr = Array.new(7963, 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 = [ -'0,243,217,134,0,0,0,0,0,0,0,0,0,0,193,157,0,0,0,0,230,230,0,0,0,219', -'195,0,0,25,0,0,181,0,0,207,0,0,0,0,0,0,194,194,126,194,0,24,179,121', -'121,194,181,197,124,124,134,134,121,56,127,58,193,207,46,157,33,24,179', -'133,243,217,114,0,0,0,130,0,2,0,215,0,2,2,2,2,2,2,2,2,2,2,25,219,2,2', -'2,2,248,248,2,2,2,207,107,2,2,126,2,2,188,2,2,189,2,2,2,2,2,2,192,197', -'33,127,2,197,197,127,46,33,46,86,46,33,148,148,148,148,148,148,148,148', -'148,148,148,148,148,109,109,65,109,2,2,2,109,2,3,2,,2,3,3,3,3,3,3,3', -'3,3,3,128,128,3,3,3,3,,206,3,3,3,206,206,3,3,,3,3,,3,3,,3,3,3,3,3,3', -'64,64,117,117,3,163,163,163,163,163,163,163,163,163,163,163,163,163', -'163,163,163,163,163,163,163,163,131,131,,184,184,,184,3,,3,252,3,184', -'3,252,252,252,252,252,252,252,252,252,252,6,6,252,252,252,252,,237,252', -'252,252,237,237,252,252,,252,252,,252,252,,252,252,252,252,252,252,122', -'122,116,116,252,160,160,160,160,160,160,160,160,160,160,160,160,160', -'160,160,160,160,160,160,160,160,155,155,155,155,155,252,252,252,,252', -'249,252,,252,249,249,249,249,249,249,249,249,249,249,136,136,249,249', -'249,249,,240,249,249,249,240,240,249,249,,249,249,,249,249,,249,249', -'249,249,249,249,50,50,149,149,249,140,140,140,140,140,140,140,140,140', -'140,140,140,140,140,140,140,140,140,140,140,140,159,159,159,159,159', -'159,159,249,,249,11,249,,249,11,11,11,11,11,11,11,11,11,11,137,137,11', -'11,11,11,,231,11,11,11,231,231,11,11,,11,11,,11,11,,11,11,11,11,11,11', -'145,145,142,142,11,166,166,166,166,166,166,166,166,166,166,166,166,166', -'166,166,166,166,166,166,166,166,164,164,164,164,164,164,164,11,,11,12', -'11,,11,12,12,12,12,12,12,12,12,12,12,,,12,12,12,12,,254,12,12,12,254', -'254,12,12,,12,12,,12,12,,12,12,12,12,12,12,,,,,12,158,158,158,158,158', -'158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,161', -'161,161,161,161,161,161,12,,12,13,12,,12,13,13,13,13,13,13,13,13,13', -'13,,,13,13,13,13,,,13,13,13,,,13,13,,13,13,,13,13,,13,13,13,13,13,13', -',,,,13,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154', -'154,154,154,154,154,106,106,,106,,106,,13,,13,241,13,,13,241,241,241', -'241,241,241,241,241,241,241,,,241,241,241,241,,,241,241,241,,,241,241', -',241,241,,241,241,,241,241,241,241,241,241,,,,,241,170,170,170,170,170', -'170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,170,152', -'152,152,152,152,241,241,241,,241,238,241,,241,238,238,238,238,238,238', -'238,238,238,238,,,238,238,238,238,,,238,238,238,,,238,238,,238,238,', -'238,238,,238,238,238,238,238,238,,,,,238,168,168,168,168,168,168,168', -'168,168,168,168,168,168,168,168,168,168,168,168,168,168,,,,,,,,238,', -'238,27,238,,238,27,27,27,27,27,27,27,27,27,27,,,27,27,27,27,,,27,27', -'27,,,27,27,,27,27,,27,27,,27,27,27,27,27,27,,,,,27,151,151,151,151,151', -'151,151,151,151,151,151,151,151,141,141,141,141,141,141,141,141,141', -'141,141,141,141,,,27,,27,31,27,,27,31,31,31,31,31,31,31,31,31,31,,,31', -'31,31,31,,,31,31,31,,,31,31,,31,31,,31,31,,31,31,31,31,31,31,,,,,31', -'144,144,144,144,144,144,144,144,144,144,144,144,144,169,169,169,169', -'169,169,169,169,169,169,,,,,,31,,31,233,31,,31,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,171,171,171,171,171,171,171', -'171,171,171,167,167,167,167,167,167,167,167,167,167,,,,,,,,,233,,233', -'34,233,,233,34,34,34,34,34,34,34,34,34,34,,,34,34,34,34,,,34,34,34,', -',34,34,,34,34,,34,34,,34,34,34,34,34,34,,,,,34,,,,,,,,,,,,,,,,,,,,,', -',,,,,34,34,34,,34,35,34,,34,35,35,35,35,35,35,35,35,35,35,,,35,35,35', -'35,,,35,35,35,,,35,35,,35,35,,35,35,,35,35,35,35,35,35,,,,,35,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,35,,35,39,35,,35,39,39,39,39,39,39,39,39,39,39', -',,39,39,39,39,,,39,39,39,,,39,39,,39,39,,39,39,,39,39,39,39,39,39,,', -',,39,,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,39,41,39,,39,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,44,41,,41,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,232,44', -',44,232,232,232,232,232,232,232,232,232,232,,,232,232,232,232,,,232', -'232,232,,,232,232,,232,232,,232,232,,232,232,232,232,232,232,,,,,232', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,232,,232,47,232,,232,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,227,47,,47,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,51,227,,227,51,51,51,51,51,51,51,51,51,51', -',,51,51,51,51,,,51,51,51,,,51,51,,51,51,,51,51,,51,51,51,51,51,51,,', -',,51,,,,,,,,,,,,,,,,,,,,,,,,,,,,,51,,51,52,51,,51,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,119,52,,52,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,57,119,,119,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,220,57,,57,220,220,220,220', -'220,220,220,220,220,220,,,220,220,220,220,,,220,220,220,,,220,220,,220', -'220,,220,220,,220,220,220,220,220,220,,,,,220,,,,,,,,,,,,,,,,,,,,,,', -',,,,220,220,220,,220,59,220,,220,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,63,59,,59,63,63,63,63,63,63,63,63', -'63,63,,,63,63,63,63,,,63,63,63,,,63,63,,63,63,,63,63,,63,63,63,63,63', -'63,,,,,63,,,,,,,,,,,,,,,,,,,,,,,,,,,63,63,63,,63,212,63,,63,212,212', -'212,212,212,212,212,212,212,212,,,212,212,212,212,,,212,212,212,,,212', -'212,,212,212,,212,212,,212,212,212,212,212,212,,,,,212,,,,,,,,,,,,,', -',,,,,,,,,,,,,212,212,212,,212,211,212,,212,211,211,211,211,211,211,211', -'211,211,211,,,211,211,211,211,,,211,211,211,,,211,211,,211,211,,211', -'211,,211,211,211,211,211,211,,,,,211,,,,,,,,,,,,,,,,,,,,,,,,,,,211,211', -'211,,211,66,211,,211,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,209,66,,66,209,209,209,209,209,209,209,209', -'209,209,,,209,209,209,209,,,209,209,209,,,209,209,,209,209,,209,209', -',209,209,209,209,209,209,,,,,209,,,,,,,,,,,,,,,,,,,,,,,,,,,,,209,,209', -'68,209,,209,68,68,68,68,68,68,68,68,68,68,,,68,68,68,68,,,68,68,68,', -',68,68,,68,68,,68,68,,68,68,68,68,68,68,,,,,68,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,68,,68,69,68,,68,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,70,69,,69,70,70,70,70,70,70,70,70,70,70,,', -'70,70,70,70,,,70,70,70,,,70,70,,70,70,,70,70,,70,70,70,70,70,70,,,,', -'70,,,,,,,,,,,,,,,,,,,,,,,,,,,,,70,,70,71,70,,70,71,71,71,71,71,71,71', -'71,71,71,,,71,71,71,71,,,71,71,71,,,71,71,,71,71,,71,71,,71,71,71,71', -'71,71,,,,,71,,,,,,,,,,,,,,,,,,,,,,,,,,,,,71,,71,72,71,,71,72,72,72,72', -'72,72,72,72,72,72,,,72,72,72,72,,,72,72,72,,,72,72,,72,72,,72,72,,72', -'72,72,72,72,72,,,,,72,,,,,,,,,,,,,,,,,,,,,,,,,,,,,72,,72,73,72,,72,73', -'73,73,73,73,73,73,73,73,73,,,73,73,73,73,,,73,73,73,,,73,73,,73,73,', -'73,73,,73,73,73,73,73,73,,,,,73,,,,,,,,,,,,,,,,,,,,,,,,,,,,,73,,73,74', -'73,,73,74,74,74,74,74,74,74,74,74,74,,,74,74,74,74,,,74,74,74,,,74,74', -',74,74,,74,74,,74,74,74,74,74,74,,,,,74,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -'74,,74,75,74,,74,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,76,75,,75,76,76,76,76,76,76,76,76,76,76,,,76,76,76', -'76,,,76,76,76,,,76,76,,76,76,,76,76,,76,76,76,76,76,76,,,,,76,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,76,,76,77,76,,76,77,77,77,77,77,77,77,77,77,77', -',,77,77,77,77,,,77,77,77,,,77,77,,77,77,,77,77,,77,77,77,77,77,77,,', -',,77,,,,,,,,,,,,,,,,,,,,,,,,,,,,,77,,77,78,77,,77,78,78,78,78,78,78', -'78,78,78,78,,,78,78,78,78,,,78,78,78,,,78,78,,78,78,,78,78,,78,78,78', -'78,78,78,,,,,78,,,,,,,,,,,,,,,,,,,,,,,,,,,,,78,,78,79,78,,78,79,79,79', -'79,79,79,79,79,79,79,,,79,79,79,79,,,79,79,79,,,79,79,,79,79,,79,79', -',79,79,79,79,79,79,,,,,79,,,,,,,,,,,,,,,,,,,,,,,,,,,,,79,,79,80,79,', -'79,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,81,80,,80,81,81,81,81,81,81,81,81,81,81,,,81,81,81,81,,,81,81,81', -',,81,81,,81,81,,81,81,,81,81,81,81,81,81,,,,,81,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,81,,81,82,81,,81,82,82,82,82,82,82,82,82,82,82,,,82,82,82,82', -',,82,82,82,,,82,82,,82,82,,82,82,,82,82,82,82,82,82,,,,,82,,,,,,,,,', -',,,,,,,,,,,,,,,,,,,82,,82,83,82,,82,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,84,83,,83,84,84,84,84,84,84,84', -'84,84,84,,,84,84,84,84,,,84,84,84,,,84,84,,84,84,,84,84,,84,84,84,84', -'84,84,,,,,84,,,,,,,,,,,,,,,,,,,,,,,,,,,,,84,,84,85,84,,84,85,85,85,85', -'85,85,85,85,85,85,,,85,85,85,85,,,85,85,85,,,85,85,,85,85,,85,85,,85', -'85,85,85,85,85,,,,,85,,,,,,,,,,,,,,,,,,,,,,,,,,,,,85,,85,203,85,,85', -'203,203,203,203,203,203,203,203,203,203,,,203,203,203,203,,,203,203', -'203,,,203,203,,203,203,,203,203,,203,203,203,203,203,203,,,,,203,,,', -',,,,,,,,,,,,,,,,,,,,,,,,,203,,203,87,203,,203,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,88,87,,87,88,88,88,88,88', -'88,88,88,88,88,,,88,88,88,88,,,88,88,88,,,88,88,,88,88,,88,88,,88,88', -'88,88,88,88,,,,,88,,,,,,,,,,,,,,,,,,,,,,,,,,,,,88,,88,89,88,,88,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,90,89', -',89,90,90,90,90,90,90,90,90,90,90,,,90,90,90,90,,,90,90,90,,,90,90,', -'90,90,,90,90,,90,90,90,90,90,90,,,,,90,,,,,,,,,,,,,,,,,,,,,,,,,,,,,90', -',90,91,90,,90,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,,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,129,92,,92,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,94,129,,129,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,,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,96,95,,95,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,,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,98,97,,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,100,98', -',98,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,,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,196,101,,101,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,187,196,,196,187', -'187,187,187,187,187,187,187,187,187,,,187,187,187,187,,,187,187,187', -',,187,187,,187,187,,187,187,,187,187,187,187,187,187,,,,,187,,,,,,,', -',,,,,,,,,,,,,,,,,,,187,187,187,,187,120,187,,187,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,178,120,,120,178,178,178,178,178,178,178,178,178,178,,,178', -'178,178,178,,,178,178,178,,,178,178,,178,178,,178,178,,178,178,178,178', -'178,178,,,,,178,,,,,,,,,,,,,,,,,,,,,,,,,,,,,178,,178,177,178,,178,177', -'177,177,177,177,177,177,177,177,177,,,177,177,177,177,,,177,177,177', -',,177,177,,177,177,,177,177,,177,177,177,177,177,177,,,,,177,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,177,,177,175,177,,177,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,111,175,,175,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,173,111,,111,173,173', -'173,173,173,173,173,173,173,173,,,173,173,173,173,,,173,173,173,,,173', -'173,,173,173,,173,173,,173,173,173,173,173,173,,,,,173,,,,,,,,,,,,,', -',,,,,,,,,,,,,173,173,173,,173,135,173,,173,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,93,135,,135,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,224,,,224,93,,,,,,,,,,,', -',,,,,,,,,224,,,,,,,,93,,93,,93,,93,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,,182,224,224,182,,,,,224,,,,,,,,,,,,,,,,,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,182,,,,182,123', -'182,123,123,,,,,,,,,,,,,,,,,,,,,,123,,,,,,,,,,,,,,,123,123,123,123,123', -'123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123', -'123,123,123,123,123,123,123,,,123,123,123,123,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,229,,229,229,,,,,,,,,,,,,,,,,,,,,,229,,,,', -',,,,,,,,,,229,229,229,229,229,229,229,229,229,229,229,229,229,229,229', -'229,229,229,229,229,229,229,229,229,229,229,229,229,229,,,229,229,229', -'229,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,246,,246,246,', -',,,,,,,,,,,,,,,,,,,,246,,,,,,,,,,,,,,,246,246,246,246,246,246,246,246', -'246,246,246,246,246,246,246,246,246,246,246,246,246,246,246,246,246', -'246,246,246,246,,,246,246,246,246,244,,,244,,,,,,,,,,,,,,,,,,,,,,244', -',,,,,,,,,,,,,,244,244,244,244,244,244,244,244,244,244,244,244,244,244', -'244,244,244,244,244,244,244,244,244,244,244,244,244,244,244,244,10,244', -'244,10,,,,,,,,,,,,,,,,,,,,,,10,,,,,,,,,,,,,,,10,10,10,10,10,10,10,10', -'10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,,216', -'10,10,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,,139,216,216,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,,198,139', -'139,198,,,,,,,,,,,,,,,,,,,,,,198,,,,,,,,,,,,,,,198,198,198,198,198,198', -'198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198', -'198,198,198,198,198,198,,132,198,198,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,,200,132', -'132,200,,,,,,,,,,,,,,,,,,,,,,200,,,,,,,,,,,,,,,200,200,200,200,200,200', -'200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200', -'200,200,200,200,200,200,,199,200,200,199,,,,,,,,,,,,,,,,,,,,,,199,,', -',,,,,,,,,,,,199,199,199,199,199,199,199,199,199,199,199,199,199,199', -'199,199,199,199,199,199,199,199,199,199,199,199,199,199,199,,105,199', -'199,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,,253,105,105,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,165', -'253,253,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,162,,,162,,,,,,,,,,,,,,,,,,,,,,162,,,,,', -',,,,,,,,,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162', -'162,162,162,162,162,162,162,162,162,162,162,162,162,162,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,185,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,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,156,,,,,,,,,,,,,,,156,156,156,156,156,156,156,156,156,156,156', +'0,249,227,133,0,0,0,0,0,0,0,0,0,0,138,166,0,0,0,0,97,198,0,0,0,221,121', +'0,0,37,0,200,0,0,187,0,0,141,0,0,0,0,0,0,36,202,193,193,0,193,15,132', +'132,244,213,193,187,244,244,50,132,134,127,127,136,136,36,166,133,138', +'138,198,249,227,47,0,0,0,188,0,254,0,213,0,254,254,254,254,254,254,254', +'254,254,254,37,221,254,254,254,254,188,200,254,254,254,200,200,254,254', +'197,254,76,254,254,116,254,254,68,254,254,254,254,254,254,213,50,134', +'50,254,50,134,6,47,147,147,225,147,67,67,47,70,70,147,47,163,163,163', +'163,163,163,163,163,163,163,163,163,163,254,195,254,2,254,66,254,2,2', +'2,2,2,2,2,2,2,2,135,135,2,2,2,2,,211,2,2,2,211,211,2,2,,2,,2,2,,2,2', +',2,2,2,2,2,2,161,161,158,158,2,171,171,171,171,171,171,171,171,171,171', +'171,171,171,171,171,171,171,171,171,171,171,,118,118,,118,1,1,2,118', +'2,253,2,,2,253,253,253,253,253,253,253,253,253,253,252,252,253,253,253', +'253,,257,253,253,253,257,257,253,253,,253,,253,253,,253,253,,253,253', +'253,253,253,253,140,140,125,125,253,173,173,173,173,173,173,173,173', +'173,173,173,173,173,173,173,173,173,173,173,173,173,169,169,169,169', +'169,253,253,253,,253,7,253,,253,7,7,7,7,7,7,7,7,7,7,20,20,7,7,7,7,,235', +'7,7,7,235,235,7,7,,7,,7,7,,7,7,,7,7,7,7,7,7,72,72,234,234,7,156,156', '156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156', -'156,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,147,147,147,147', -'147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147,147', -'147,147,147,147,147,147,147,147,143,143,143,143,143,143,143,143,143', -'143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143,143', -'143,143,143,150,150,150,150,150,150,150,150,150,150,150,150,150,150', -'150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,67,67,67', -'67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67', -'67,67,67' ] - racc_action_check = arr = Array.new(7520, nil) +'156,156,176,176,176,176,176,176,176,7,,7,8,7,,7,8,8,8,8,8,8,8,8,8,8', +'77,77,8,8,8,8,,237,8,8,8,237,237,8,8,,8,,8,8,,8,8,,8,8,8,8,8,8,164,164', +',,8,175,175,175,175,175,175,175,175,175,175,175,175,175,175,175,175', +'175,175,175,175,175,174,174,174,174,174,174,174,8,,8,12,8,,8,12,12,12', +'12,12,12,12,12,12,12,,,12,12,12,12,,,12,12,12,,,12,12,,12,,12,12,,12', +'12,,12,12,12,12,12,12,,,,,12,153,153,153,153,153,153,153,153,153,153', +'153,153,153,153,153,153,153,153,153,153,153,172,172,172,172,172,12,12', +'12,,12,13,12,,12,13,13,13,13,13,13,13,13,13,13,,,13,13,13,13,,,13,13', +'13,,,13,13,,13,,13,13,,13,13,,13,13,13,13,13,13,,,,,13,151,151,151,151', +'151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,151', +'179,179,179,179,179,179,179,13,,13,14,13,,13,14,14,14,14,14,14,14,14', +'14,14,,,14,14,14,14,,,14,14,14,,,14,14,,14,,14,14,,14,14,,14,14,14,14', +'14,14,,,,,14,178,178,178,178,178,178,178,178,178,178,178,178,178,178', +'178,178,178,178,178,178,178,114,114,,114,,114,,14,,14,245,14,,14,245', +'245,245,245,245,245,245,245,245,245,,,245,245,245,245,,,245,245,245', +',,245,245,,245,,245,245,,245,245,,245,245,245,245,245,245,,,,,245,181', +'181,181,181,181,181,181,181,181,181,181,181,181,181,181,181,181,181', +'181,181,181,,,,,,245,245,245,,245,17,245,,245,17,17,17,17,17,17,17,17', +'17,17,,,17,17,17,17,,,17,17,17,,,17,17,,17,,17,17,,17,17,,17,17,17,17', +'17,17,,,,,17,168,168,168,168,168,168,168,168,168,168,168,168,168,160', +'160,160,160,160,160,160,160,160,160,160,160,160,17,17,17,,17,241,17', +',17,241,241,241,241,241,241,241,241,241,241,,,241,241,241,241,,,241', +'241,241,,,241,241,,241,,241,241,,241,241,,241,241,241,241,241,241,,', +',,241,157,157,157,157,157,157,157,157,157,157,157,157,157,182,182,182', +'182,182,182,182,182,182,182,,,,,,241,,241,240,241,,241,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,154,154,154,154,154', +'154,154,154,154,154,152,152,152,152,152,152,152,152,152,152,,,,,,,,', +'240,,240,26,240,,240,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,236,26,,26,236,236,236,236,236,236,236,236', +'236,236,,,236,236,236,236,,,236,236,236,,,236,236,,236,,236,236,,236', +'236,,236,236,236,236,236,236,,,,,236,,,,,,,,,,,,,,,,,,,,,,,,,,,,,236', +',236,231,236,,236,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,38,231', +',231,38,38,38,38,38,38,38,38,38,38,,,38,38,38,38,,,38,38,38,,,38,38', +',38,,38,38,,38,38,,38,38,38,38,38,38,,,,,38,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,38,,38,42,38,,38,42,42,42,42,42,42,42,42,42,42,,,42,42,42,42,,,42', +'42,42,,,42,42,,42,,42,42,,42,42,,42,42,42,42,42,42,,,,,42,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,42,,42,44,42,,42,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,219,44,,44,219,219,219,219,219', +'219,219,219,219,219,,,219,219,219,219,,,219,219,219,,,219,219,,219,', +'219,219,,219,219,,219,219,219,219,219,219,,,,,219,,,,,,,,,,,,,,,,,,', +',,,,,,,,219,219,219,,219,48,219,,219,48,48,48,48,48,48,48,48,48,48,', +',48,48,48,48,,,48,48,48,,,48,48,,48,,48,48,,48,48,,48,48,48,48,48,48', +',,,,48,,,,,,,,,,,,,,,,,,,,,,,,,,,,,48,,48,49,48,,48,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,217,49,,49', +'217,217,217,217,217,217,217,217,217,217,,,217,217,217,217,,,217,217', +'217,,,217,217,,217,,217,217,,217,217,,217,217,217,217,217,217,,,,,217', +',,,,,,,,,,,,,,,,,,,,,,,,,,217,217,217,,217,51,217,,217,51,51,51,51,51', +'51,51,51,51,51,,,51,51,51,51,,,51,51,51,,,51,51,,51,,51,51,,51,51,,51', +'51,51,51,51,51,,,,,51,,,,,,,,,,,,,,,,,,,,,,,,,,,,,51,,51,55,51,,51,55', +'55,55,55,55,55,55,55,55,55,,,55,55,55,55,,,55,55,55,,,55,55,,55,,55', +'55,,55,55,,55,55,55,55,55,55,,,,,55,,,,,,,,,,,,,,,,,,,,,,,,,,,,,55,', +'55,56,55,,55,56,56,56,56,56,56,56,56,56,56,,,56,56,56,56,,,56,56,56', +',,56,56,,56,,56,56,,56,56,,56,56,56,56,56,56,,,,,56,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,56,,56,59,56,,56,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,,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,62,61,,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,65,62', +',62,65,65,65,65,65,65,65,65,65,65,,,65,65,65,65,,,65,65,65,,,65,65,', +'65,,65,65,,65,65,,65,65,65,65,65,65,,,,,65,,,,,,,,,,,,,,,,,,,,,,,,,', +',65,65,65,,65,216,65,,65,216,216,216,216,216,216,216,216,216,216,,,216', +'216,216,216,,,216,216,216,,,216,216,,216,,216,216,,216,216,,216,216', +'216,216,216,216,,,,,216,,,,,,,,,,,,,,,,,,,,,,,,,,,216,216,216,,216,215', +'216,,216,215,215,215,215,215,215,215,215,215,215,,,215,215,215,215,', +',215,215,215,,,215,215,,215,,215,215,,215,215,,215,215,215,215,215,215', +',,,,215,,,,,,,,,,,,,,,,,,,,,,,,,,,,,215,,215,209,215,,215,209,209,209', +'209,209,209,209,209,209,209,,,209,209,209,209,,,209,209,209,,,209,209', +',209,,209,209,,209,209,,209,209,209,209,209,209,,,,,209,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,209,,209,203,209,,209,203,203,203,203,203,203,203,203', +'203,203,,,203,203,203,203,,,203,203,203,,,203,203,,203,,203,203,,203', +'203,,203,203,203,203,203,203,,,,,203,,,,,,,,,,,,,,,,,,,,,,,,,,,,,203', +',203,192,203,,203,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,192,192,,192,71,192', +',192,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,186,71,,71,186,186,186,186,186,186,186,186,186,186,,', +'186,186,186,186,,,186,186,186,,,186,186,,186,,186,186,,186,186,,186', +'186,186,186,186,186,,,,,186,,,,,,,,,,,,,,,,,,,,,,,,,,,,,186,,186,184', +'186,,186,184,184,184,184,184,184,184,184,184,184,,,184,184,184,184,', +',184,184,184,,,184,184,,184,,184,184,,184,184,,184,184,184,184,184,184', +',,,,184,,,,,,,,,,,,,,,,,,,,,,,,,,,,,184,,184,183,184,,184,183,183,183', +'183,183,183,183,183,183,183,,,183,183,183,183,,,183,183,183,,,183,183', +',183,,183,183,,183,183,,183,183,183,183,183,183,,,,,183,,,,,,,,,,,,', +',,,,,,,,,,,,,,,,183,,183,75,183,,183,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,146,75,,75,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,130,146,,146,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,78,130,,130,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,79,78,,78,79,79,79,79,79,79,79,79,79,79,,,79,79', +'79,79,,,79,79,79,,,79,79,,79,,79,79,,79,79,,79,79,79,79,79,79,,,,,79', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,79,,79,80,79,,79,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,120,80,,80,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,83,120,,120,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,84,83,,83,84,84,84,84,84,84', +'84,84,84,84,,,84,84,84,84,,,84,84,84,,,84,84,,84,,84,84,,84,84,,84,84', +'84,84,84,84,,,,,84,,,,,,,,,,,,,,,,,,,,,,,,,,,,,84,,84,86,84,,84,86,86', +'86,86,86,86,86,86,86,86,,,86,86,86,86,,,86,86,86,,,86,86,,86,,86,86', +',86,86,,86,86,86,86,86,86,,,,,86,,,,,,,,,,,,,,,,,,,,,,,,,,,,,86,,86', +'87,86,,86,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,88,87,,87,88,88,88,88,88,88,88,88,88,88,,,88,88,88,88', +',,88,88,88,,,88,88,,88,,88,88,,88,88,,88,88,88,88,88,88,,,,,88,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,88,,88,89,88,,88,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,90,89,,89,90,90,90,90,90,90', +'90,90,90,90,,,90,90,90,90,,,90,90,90,,,90,90,,90,,90,90,,90,90,,90,90', +'90,90,90,90,,,,,90,,,,,,,,,,,,,,,,,,,,,,,,,,,,,90,,90,91,90,,90,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,,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,93,92,,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,94,93,,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,95,94,,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,96,95,,95,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', +'129,96,,96,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,98,129,,129,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,99,98', +',98,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,,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,101,100,,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,102,101,,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,103,102,,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', +'104,103,,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,105,104,,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,106,105,,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,107,106,,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,108,107', +',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,109,108,,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,110,109,,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,111,110,,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,112,111,,111', +'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,,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,81,113,,113,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,190,,', +'190,81,,,,,,,,,,,,,,,,,,,,,190,,,,,,190,,81,,81,,81,,81,,,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,,228,190,190,228,,,190,,190,,,,', +',,,,,,,,,,,,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,233,,233,233,,228,,,,,,,,,,,,,,,,,,,,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,131,,131,131,,,,,,,,,,,,,,,,,,,,,,131,,,,,,131,,,,,,,,,,,131', +'131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131', +'131,131,131,131,131,131,131,131,131,131,131,,,131,131,131,131,247,,247', +'247,,,,,,,,,,,,,,,,,,,,,,247,,,,,,247,,,,,,,,,,,247,247,247,247,247', +'247,247,247,247,247,247,247,247,247,247,247,247,247,247,247,247,247', +'247,247,247,247,247,247,247,,,247,247,247,247,126,,126,126,,,,,,,,,', +',,,,,,,,,,,,126,,,,,,126,,,,,,,,,,,126,126,126,126,126,126,126,126,126', +'126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126', +'126,126,126,,,126,126,126,126,73,,73,73,,,,,,,,,,,,,,,,,,,,,,73,,,,', +',73,,,,,,,,,,,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73,73', +'73,73,73,73,73,73,73,73,73,73,73,,,73,73,73,73,206,,,206,,,,,,,,,,,', +',,,,,,,,,,206,,,,,,206,,,,,,,,,,,206,206,206,206,206,206,206,206,206', +'206,206,206,206,206,206,206,206,206,206,206,206,206,206,206,206,206', +'206,206,206,,205,206,206,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,,226,205,205,226', +',,,,,,,,,,,,,,,,,,,,,226,,,,,,226,,,,,,,,,,,226,226,226,226,226,226', +'226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226', +'226,226,226,226,226,226,,204,226,226,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,,25', +'204,204,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,,115,25,25,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,,250,115,115,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,149,250,250,149,,,,,,,,,,,,,,,,,,,,,,149,,,,,,149,,', +',,,,,,,,149,149,149,149,149,149,149,149,149,149,149,149,149,149,149', +'149,149,149,149,149,149,149,149,149,149,149,149,149,149,,137,149,149', +'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,,258,137,137,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', +'194,258,258,194,,,,,,,,,,,,,,,,,,,,,,194,,,,,,194,,,,,,,,,,,194,194', +'194,194,194,194,194,194,194,194,194,194,194,194,194,194,194,194,194', +'194,194,194,194,194,194,194,194,194,194,180,,,180,,,,,,,,,,,,,,,,,,', +',,,180,,,,,,180,,,,,,,,,,,180,180,180,180,180,180,180,180,180,180,180', +'180,180,180,180,180,180,180,180,180,180,180,180,180,180,180,180,180', +'180,177,,,177,,,,,,,,,,,,,,,,,,,,,,177,,,,,,177,,,,,,,,,,,177,177,177', +'177,177,177,177,177,177,177,177,177,177,177,177,177,177,177,177,177', +'177,177,177,177,177,177,177,177,177,74,,,,,,74,,,,,,,,,,,74,74,74,74', +'74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74,74', +'74,74,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,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,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', +'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,150,,,,,,,,,,,150,150,150,150,150,150', +'150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150,150', +'150,150,150,150,150,150,162,162,162,162,162,162,162,162,162,162,162', +'162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162', +'162,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,159,159,159,159', +'159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159,159', +'159,159,159,159,159,159,159,159,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' ] + racc_action_check = arr = Array.new(7963, 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 = [ - -2, nil, 76, 154, nil, nil, 173, nil, nil, nil, - 6404, 388, 466, 544, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 32, 13, nil, 778, nil, nil, - nil, 856, nil, 50, 1012, 1090, nil, nil, nil, 1168, - nil, 1246, nil, nil, 1324, nil, 49, 1480, nil, nil, - 277, 1636, 1714, nil, nil, nil, 59, 1870, -22, 2026, - nil, nil, nil, 2104, 123, 78, 2338, 7449, 2494, 2572, - 2650, 2728, 2806, 2884, 2962, 3040, 3118, 3196, 3274, 3352, - 3430, 3508, 3586, 3664, 3742, 3820, 116, 3976, 4054, 4132, - 4210, 4288, 4366, 5770, 4522, 4600, 4678, 4756, 4834, nil, - 4912, 4990, nil, 6034, 7216, 6894, 539, 32, nil, 72, - nil, 5536, nil, nil, 57, nil, 236, 158, nil, 1792, - 5224, -26, 234, 5959, 12, 6184, 28, 44, 128, 4444, - 58, 182, 6684, 69, -19, 5692, 284, 329, nil, 6544, - 317, 798, 392, 7391, 863, 390, 7260, 7362, 92, 314, - 7420, 785, 650, 7333, 551, 260, 7304, -13, 473, 338, - 239, 494, 7103, 161, 416, 7034, 395, 951, 707, 876, - 629, 941, nil, 5614, nil, 5458, nil, 5380, 5302, 33, - nil, 17, 5882, nil, 152, 7172, nil, 5146, 79, 42, - nil, nil, 105, -9, -33, 11, 5068, 50, 6614, 6824, - 6754, nil, nil, 3898, nil, nil, 106, 32, nil, 2416, - nil, 2260, 2182, nil, nil, 52, 6474, 0, nil, 22, - 1948, nil, nil, nil, 5812, nil, nil, 1558, nil, 6109, - -55, 340, 1402, 934, nil, nil, nil, 184, 700, nil, - 262, 622, nil, -1, 6334, nil, 6259, nil, 23, 310, - nil, nil, 232, 6964, 418, nil ] + -2, 156, 158, nil, nil, nil, 131, 318, 398, nil, + nil, nil, 478, 558, 638, -35, nil, 798, nil, nil, + 257, nil, nil, nil, nil, 6942, 1038, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 29, 13, 1278, nil, + nil, nil, 1358, nil, 1438, nil, nil, 58, 1598, 1678, + 44, 1838, nil, nil, nil, 1918, 1998, nil, nil, 2078, + nil, 2158, 2238, nil, nil, 2318, 144, 93, 117, 7734, + 96, 2798, 287, 6577, 7562, 3118, 38, 337, 3358, 3438, + 3518, 6078, nil, 3678, 3758, nil, 3838, 3918, 3998, 4078, + 4158, 4238, 4318, 4398, 4478, 4558, 4638, 5, 4798, 4878, + 4958, 5038, 5118, 5198, 5278, 5358, 5438, 5518, 5598, 5678, + 5758, 5838, 5918, 5998, 633, 7014, 40, nil, 154, nil, + 3598, 11, nil, nil, nil, 242, 6500, 18, nil, 4718, + 3278, 6346, -26, -13, 45, 130, 20, 7230, -8, 7694, + 240, -36, nil, nil, nil, nil, 3198, 56, nil, 7158, + 7774, 565, 975, 485, 965, 7608, 325, 885, 162, 7861, + 818, 160, 7803, 100, 400, 7654, -13, 7890, 805, 266, + 7832, 165, 506, 245, 426, 405, 346, 7516, 645, 586, + 7445, 725, 898, 3038, 2958, nil, 2878, 19, 63, nil, + 6122, nil, 2718, -31, 7374, 127, nil, 94, -2, nil, + 28, nil, 30, 2638, 6870, 6726, 6654, nil, nil, 2558, + nil, 108, nil, 51, nil, 2478, 2398, 1758, nil, 1518, + nil, 22, nil, nil, nil, 107, 6798, 0, 6194, nil, + nil, 1198, nil, 6269, 289, 268, 1118, 348, nil, nil, + 958, 878, nil, nil, -20, 718, nil, 6423, nil, -1, + 7086, nil, 177, 238, 78, nil, nil, 188, 7302, nil ] racc_action_default = [ - -1, -91, -86, -142, -36, -17, -3, -92, -37, -18, - -4, -142, -142, -112, -93, -44, -38, -19, -8, -39, - -32, -30, -20, -9, -102, -106, -90, -142, -33, -21, - -10, -142, -22, -11, -142, -142, -28, -23, -12, -142, - -88, -142, -29, -13, -142, -108, -142, -142, -31, -14, - -142, -142, -142, -34, -24, -15, -142, -142, -142, -142, - -35, -25, -16, -2, -87, -142, -142, -83, -6, -142, - -142, -142, -142, -142, -142, -142, -142, -142, -142, -142, - -142, -142, -142, -142, -142, -142, -142, -142, -142, -142, - -142, -142, -142, -142, -142, -142, -142, -142, -142, -53, - -142, -142, -52, -142, -120, -113, -142, -142, -42, -142, - -103, -142, -95, -97, -142, -98, -47, -48, -94, -112, - -142, -142, -45, -142, -46, -142, -107, -142, -49, -86, - -142, -51, -43, -142, -118, -112, -50, -7, -85, -5, - -76, -65, -54, -77, -66, -55, -140, -78, -67, -56, - -79, -68, -57, -80, -69, -58, -141, -142, -70, -59, - -71, -60, -81, -72, -61, -82, -73, -62, -74, -63, - -75, -64, -26, -142, -27, -142, -111, -142, -142, -142, - -101, -142, -142, -96, -142, -40, -121, -142, -142, -142, - -89, 256, -142, -142, -142, -142, -142, -142, -114, -115, - -41, -104, -105, -142, -99, -109, -142, -142, -129, -142, - -84, -142, -142, -116, -110, -142, -142, -8, -133, -142, - -142, -137, -139, -135, -142, -122, -130, -142, -127, -142, - -119, -142, -142, -142, -123, -134, -138, -142, -142, -100, - -142, -142, -117, -8, -142, -136, -142, -128, -131, -142, - -124, -125, -142, -142, -132, -126 ] + -1, -144, -144, -36, -24, -15, -144, -144, -144, -37, + -25, -16, -2, -144, -144, -144, -93, -88, -38, -17, + -3, -94, -39, -32, -18, -4, -114, -95, -92, -44, + -33, -19, -8, -30, -20, -9, -104, -108, -144, -28, + -21, -10, -144, -90, -144, -29, -22, -11, -144, -144, + -144, -144, -31, -23, -12, -144, -144, -34, -13, -144, + -110, -144, -144, -35, -14, -88, -144, -51, -144, -84, + -50, -144, -7, -144, -122, -114, -144, -89, -6, -144, + -144, -144, -53, -144, -144, -52, -144, -144, -144, -144, + -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, + -144, -144, -144, -144, -144, -144, -144, -144, -144, -144, + -144, -144, -144, -144, -144, -115, -144, -42, -144, -105, + -144, -144, -97, -99, -100, -47, -144, -48, -96, -114, + -144, -144, -144, -109, -144, -45, -46, -43, -120, -83, + -49, -144, -91, 260, -27, -26, -144, -144, -87, -5, + -85, -74, -63, -75, -64, -142, -76, -65, -54, -77, + -66, -55, -78, -67, -56, -143, -144, -79, -68, -57, + -80, -69, -58, -70, -59, -71, -60, -81, -72, -61, + -82, -73, -62, -144, -144, -113, -144, -144, -144, -103, + -144, -98, -144, -144, -40, -144, -123, -144, -144, -86, + -144, -112, -144, -144, -117, -116, -41, -107, -106, -144, + -101, -144, -111, -144, -131, -144, -144, -144, -118, -144, + -135, -144, -139, -141, -137, -144, -144, -8, -144, -124, + -132, -144, -129, -144, -121, -144, -144, -144, -136, -140, + -144, -144, -125, -102, -144, -144, -119, -144, -138, -8, + -144, -130, -133, -144, -144, -126, -127, -134, -144, -128 ] racc_goto_table = [ - 63, 108, 110, 173, 65, 106, 68, 118, 6, 217, - 208, 56, 109, 126, 193, 207, 127, 235, 236, nil, - nil, nil, nil, 187, nil, 188, nil, nil, nil, 226, + 12, 117, 76, 114, 119, 20, 227, 214, 128, 6, + 118, 133, 198, 213, 134, 238, 239, nil, nil, nil, + 78, nil, 77, nil, nil, 230, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 146, nil, nil, nil, + nil, nil, nil, 249, nil, nil, nil, nil, nil, nil, + 141, nil, 147, nil, 132, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 138, nil, nil, nil, nil, nil, + 77, nil, 78, 144, nil, nil, nil, 78, nil, nil, + nil, 67, nil, nil, nil, nil, 69, 70, nil, 192, + nil, nil, 73, 74, 195, 128, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 115, 193, nil, nil, nil, + nil, nil, nil, nil, 183, nil, nil, 125, 187, nil, + nil, 126, nil, 127, nil, nil, 144, 131, nil, nil, + 135, 144, 78, nil, 136, 137, nil, nil, 78, nil, + 139, 140, nil, nil, nil, nil, nil, 183, nil, nil, + nil, 200, 117, 117, 115, 207, 208, 149, 150, 151, + 152, nil, 153, 154, nil, 155, 156, 157, 158, 159, + 160, 161, 162, 163, 164, 165, nil, 167, 168, 169, + 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, + 180, 181, 182, 183, nil, nil, 245, 211, nil, 190, + 78, nil, nil, nil, nil, nil, nil, nil, 115, 194, + 253, 78, nil, nil, nil, nil, nil, nil, nil, nil, + nil, 234, 235, nil, 237, nil, nil, nil, nil, nil, + nil, nil, nil, 144, 78, 78, 244, 78, nil, nil, + nil, nil, nil, nil, 78, nil, nil, 144, nil, nil, + 252, nil, 78, nil, nil, nil, nil, 78, 257, nil, + nil, nil, 204, 205, nil, 206, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 121, nil, nil, 243, nil, nil, nil, nil, + nil, nil, 226, nil, nil, nil, nil, nil, 228, nil, + nil, nil, nil, nil, 233, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 68, 134, nil, nil, nil, nil, - nil, 137, nil, nil, 137, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 118, nil, 174, nil, nil, 177, nil, nil, 181, - nil, 184, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 68, nil, 174, nil, 174, nil, 194, nil, 241, - nil, 189, nil, nil, 68, nil, nil, 68, nil, nil, - nil, nil, nil, nil, nil, nil, 252, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 108, 201, 108, 202, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 197, nil, nil, 177, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 177, 206, nil, 68, nil, nil, - nil, nil, nil, nil, nil, nil, 68, nil, nil, nil, - nil, nil, nil, nil, nil, 67, nil, nil, nil, 230, - 231, nil, nil, 103, 104, 105, nil, nil, 237, 174, - 68, 68, nil, nil, nil, 240, nil, 68, nil, 116, - 68, nil, nil, 117, nil, nil, 174, 122, 68, 248, - nil, 123, nil, 124, 68, nil, 125, nil, nil, 128, - 254, nil, nil, 131, 132, nil, nil, nil, nil, nil, - nil, 136, nil, nil, nil, nil, nil, nil, nil, nil, - 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, nil, 158, - 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, - 169, nil, 170, 171, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 182, nil, nil, nil, nil, nil, nil, - nil, 105, 185, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 105, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 198, nil, 199, - 200, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 216, nil, - nil, nil, nil, nil, nil, 224, nil, nil, nil, nil, - nil, 229, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 216, 244, nil, nil, nil, nil, - 246, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 253 ] + nil, nil, nil, nil, nil, 247, nil, nil, nil, 226, + 250, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, 258 ] racc_goto_check = [ - 2, 20, 22, 21, 24, 34, 2, 28, 3, 5, - 37, 1, 32, 29, 35, 36, 8, 38, 40, nil, - nil, nil, nil, 21, nil, 21, nil, nil, nil, 37, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 3, nil, nil, 5, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 2, 3, nil, nil, nil, nil, - nil, 3, nil, nil, 3, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 28, nil, 2, nil, nil, 2, nil, nil, 2, - nil, 34, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 2, nil, 2, nil, 2, nil, 34, nil, 21, - nil, 24, nil, nil, 2, nil, nil, 2, nil, nil, + 2, 20, 24, 34, 22, 3, 5, 37, 28, 1, + 32, 29, 35, 36, 8, 38, 40, nil, nil, nil, + 2, nil, 3, nil, nil, 37, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 21, nil, nil, nil, - nil, nil, nil, nil, nil, nil, 20, 22, 20, 22, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 3, nil, nil, 2, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 2, 3, nil, 2, nil, nil, - nil, nil, nil, nil, nil, nil, 2, nil, nil, nil, - nil, nil, nil, nil, nil, 4, nil, nil, nil, 3, - 3, nil, nil, 4, 4, 4, nil, nil, 3, 2, - 2, 2, nil, nil, nil, 3, nil, 2, nil, 4, - 2, nil, nil, 4, nil, nil, 2, 4, 2, 3, - nil, 4, nil, 4, 2, nil, 4, nil, nil, 4, - 3, nil, nil, 4, 4, nil, nil, nil, nil, nil, - nil, 4, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, 5, nil, nil, nil, nil, nil, nil, + 24, nil, 34, nil, 3, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 3, nil, nil, nil, nil, nil, + 3, nil, 2, 2, nil, nil, nil, 2, nil, nil, + nil, 4, nil, nil, nil, nil, 4, 4, nil, 21, + nil, nil, 4, 4, 21, 28, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 4, 34, nil, nil, nil, + nil, nil, nil, nil, 2, nil, nil, 4, 2, nil, + nil, 4, nil, 4, nil, nil, 2, 4, nil, nil, + 4, 2, 2, nil, 4, 4, nil, nil, 2, nil, + 4, 4, nil, nil, nil, nil, nil, 2, nil, nil, + nil, 3, 20, 20, 4, 22, 22, 4, 4, 4, + 4, nil, 4, 4, nil, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, nil, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, nil, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, nil, 4, 4, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 4, nil, nil, nil, nil, nil, nil, - nil, 4, 4, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 4, nil, nil, + 4, 4, 4, 2, nil, nil, 21, 3, nil, 4, + 2, nil, nil, nil, nil, nil, nil, nil, 4, 4, + 21, 2, nil, nil, nil, nil, nil, nil, nil, nil, + nil, 3, 3, nil, 3, nil, nil, nil, nil, nil, + nil, nil, nil, 2, 2, 2, 3, 2, nil, nil, + nil, nil, nil, nil, 2, nil, nil, 2, nil, nil, + 3, nil, 2, nil, nil, nil, nil, 2, 3, nil, + nil, nil, 4, 4, nil, 4, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 4, nil, nil, nil, nil, nil, 4, nil, + nil, nil, nil, 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, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 4, nil, 4, + nil, nil, nil, nil, nil, 4, nil, nil, nil, 4, 4, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, 4, nil, - nil, nil, nil, nil, nil, 4, nil, nil, nil, nil, - nil, 4, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, 4, 4, nil, nil, nil, nil, - 4, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 4 ] + nil, nil, nil, 4 ] racc_goto_pointer = [ - nil, 11, 0, 8, 212, -187, nil, nil, -30, nil, + nil, 9, 0, 5, 79, -197, nil, nil, -36, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - -23, -100, -22, nil, 2, nil, nil, nil, -26, -33, - nil, nil, -12, nil, -8, -120, -173, -178, -202, nil, - -201, nil ] + -35, -37, -32, nil, -15, nil, nil, nil, -39, -39, + nil, nil, -26, nil, -23, -126, -182, -188, -206, nil, + -205, nil ] racc_goto_default = [ - nil, nil, 66, 64, 10, 18, 23, 30, 33, 38, - 43, 49, 55, 62, 5, 9, 17, 22, 29, 32, - 37, nil, nil, 50, nil, 1, 7, 14, 112, 25, - 113, 115, nil, 45, nil, nil, nil, nil, 218, 219, - 221, 222 ] + nil, nil, 71, 72, 25, 32, 35, 41, 47, 54, + 58, 64, 5, 11, 19, 24, 31, 34, 40, 46, + 53, nil, nil, 1, nil, 16, 21, 27, 122, 37, + 123, 124, nil, 60, nil, nil, nil, nil, 220, 221, + 222, 223 ] racc_reduce_table = [ 0, 0, :racc_error, - 0, 86, :_reduce_1, - 1, 86, :_reduce_2, - 1, 86, :_reduce_3, - 1, 88, :_reduce_4, - 3, 88, :_reduce_5, - 2, 88, :_reduce_6, - 2, 88, :_reduce_7, - 1, 89, :_reduce_none, - 1, 89, :_reduce_none, - 1, 90, :_reduce_none, - 1, 90, :_reduce_none, - 1, 90, :_reduce_none, - 1, 90, :_reduce_none, - 1, 90, :_reduce_none, + 0, 88, :_reduce_1, + 1, 88, :_reduce_2, + 1, 88, :_reduce_3, + 1, 90, :_reduce_4, + 3, 90, :_reduce_5, + 2, 90, :_reduce_6, + 2, 90, :_reduce_7, 1, 91, :_reduce_none, 1, 91, :_reduce_none, - 1, 91, :_reduce_none, - 1, 91, :_reduce_none, - 1, 91, :_reduce_none, - 1, 91, :_reduce_none, - 1, 91, :_reduce_none, - 1, 91, :_reduce_none, - 1, 91, :_reduce_none, - 1, 87, :_reduce_none, - 1, 87, :_reduce_none, - 1, 106, :_reduce_none, - 1, 106, :_reduce_none, - 1, 92, :_reduce_28, - 1, 92, :_reduce_29, - 1, 92, :_reduce_30, - 1, 92, :_reduce_31, - 1, 92, :_reduce_32, - 1, 92, :_reduce_33, - 1, 92, :_reduce_34, - 1, 92, :_reduce_35, - 1, 92, :_reduce_36, - 1, 92, :_reduce_37, - 1, 92, :_reduce_38, - 1, 92, :_reduce_39, - 3, 97, :_reduce_40, - 3, 107, :_reduce_41, - 1, 107, :_reduce_42, - 2, 101, :_reduce_43, - 1, 105, :_reduce_44, - 2, 96, :_reduce_45, - 2, 96, :_reduce_46, - 2, 96, :_reduce_47, - 2, 96, :_reduce_48, - 2, 96, :_reduce_49, - 2, 96, :_reduce_50, - 2, 96, :_reduce_51, - 2, 96, :_reduce_52, - 2, 96, :_reduce_53, - 3, 96, :_reduce_54, - 3, 96, :_reduce_55, - 3, 96, :_reduce_56, - 3, 96, :_reduce_57, - 3, 96, :_reduce_58, - 3, 96, :_reduce_59, - 3, 96, :_reduce_60, - 3, 96, :_reduce_61, - 3, 96, :_reduce_62, - 3, 96, :_reduce_63, - 3, 96, :_reduce_64, - 3, 96, :_reduce_65, - 3, 96, :_reduce_66, - 3, 96, :_reduce_67, - 3, 96, :_reduce_68, - 3, 96, :_reduce_69, - 3, 96, :_reduce_70, - 3, 96, :_reduce_71, - 3, 96, :_reduce_72, - 3, 96, :_reduce_73, - 3, 96, :_reduce_74, - 3, 96, :_reduce_75, - 3, 96, :_reduce_76, - 3, 96, :_reduce_77, - 3, 96, :_reduce_78, - 3, 96, :_reduce_79, - 3, 96, :_reduce_80, - 3, 96, :_reduce_81, - 3, 96, :_reduce_82, - 2, 96, :_reduce_83, - 4, 95, :_reduce_84, - 3, 95, :_reduce_85, - 0, 109, :_reduce_86, - 1, 109, :_reduce_87, - 1, 108, :_reduce_88, - 3, 108, :_reduce_89, - 1, 93, :_reduce_90, - 1, 93, :_reduce_91, - 1, 93, :_reduce_92, - 1, 93, :_reduce_93, - 2, 93, :_reduce_94, - 2, 93, :_reduce_95, - 2, 113, :_reduce_96, - 1, 113, :_reduce_97, - 1, 113, :_reduce_98, - 3, 115, :_reduce_99, - 5, 116, :_reduce_100, - 3, 111, :_reduce_101, - 0, 117, :_reduce_102, - 1, 117, :_reduce_103, - 3, 117, :_reduce_104, - 3, 117, :_reduce_105, - 1, 94, :_reduce_106, - 2, 94, :_reduce_107, - 1, 94, :_reduce_108, - 4, 114, :_reduce_109, - 4, 118, :_reduce_110, - 3, 110, :_reduce_111, - 0, 119, :_reduce_112, - 1, 119, :_reduce_113, - 3, 119, :_reduce_114, - 3, 119, :_reduce_115, - 4, 99, :_reduce_116, - 6, 99, :_reduce_117, - 0, 120, :_reduce_118, - 3, 120, :_reduce_119, - 2, 100, :_reduce_120, - 3, 112, :_reduce_121, - 5, 102, :_reduce_122, - 6, 103, :_reduce_123, - 8, 103, :_reduce_124, - 8, 103, :_reduce_125, - 10, 103, :_reduce_126, - 5, 104, :_reduce_127, - 7, 104, :_reduce_128, - 1, 121, :_reduce_129, - 2, 121, :_reduce_130, - 4, 122, :_reduce_131, - 5, 123, :_reduce_132, - 1, 124, :_reduce_133, - 2, 124, :_reduce_134, - 1, 125, :_reduce_135, - 3, 125, :_reduce_136, - 1, 126, :_reduce_137, - 2, 126, :_reduce_138, - 5, 98, :_reduce_139, - 3, 98, :_reduce_140, - 3, 98, :_reduce_141 ] + 1, 92, :_reduce_none, + 1, 92, :_reduce_none, + 1, 92, :_reduce_none, + 1, 92, :_reduce_none, + 1, 92, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 93, :_reduce_none, + 1, 89, :_reduce_none, + 1, 89, :_reduce_none, + 1, 108, :_reduce_none, + 1, 108, :_reduce_none, + 1, 94, :_reduce_28, + 1, 94, :_reduce_29, + 1, 94, :_reduce_30, + 1, 94, :_reduce_31, + 1, 94, :_reduce_32, + 1, 94, :_reduce_33, + 1, 94, :_reduce_34, + 1, 94, :_reduce_35, + 1, 94, :_reduce_36, + 1, 94, :_reduce_37, + 1, 94, :_reduce_38, + 1, 94, :_reduce_39, + 3, 99, :_reduce_40, + 3, 109, :_reduce_41, + 1, 109, :_reduce_42, + 2, 103, :_reduce_43, + 1, 107, :_reduce_44, + 2, 98, :_reduce_45, + 2, 98, :_reduce_46, + 2, 98, :_reduce_47, + 2, 98, :_reduce_48, + 2, 98, :_reduce_49, + 2, 98, :_reduce_50, + 2, 98, :_reduce_51, + 2, 98, :_reduce_52, + 2, 98, :_reduce_53, + 3, 98, :_reduce_54, + 3, 98, :_reduce_55, + 3, 98, :_reduce_56, + 3, 98, :_reduce_57, + 3, 98, :_reduce_58, + 3, 98, :_reduce_59, + 3, 98, :_reduce_60, + 3, 98, :_reduce_61, + 3, 98, :_reduce_62, + 3, 98, :_reduce_63, + 3, 98, :_reduce_64, + 3, 98, :_reduce_65, + 3, 98, :_reduce_66, + 3, 98, :_reduce_67, + 3, 98, :_reduce_68, + 3, 98, :_reduce_69, + 3, 98, :_reduce_70, + 3, 98, :_reduce_71, + 3, 98, :_reduce_72, + 3, 98, :_reduce_73, + 3, 98, :_reduce_74, + 3, 98, :_reduce_75, + 3, 98, :_reduce_76, + 3, 98, :_reduce_77, + 3, 98, :_reduce_78, + 3, 98, :_reduce_79, + 3, 98, :_reduce_80, + 3, 98, :_reduce_81, + 3, 98, :_reduce_82, + 2, 98, :_reduce_83, + 2, 98, :_reduce_84, + 3, 98, :_reduce_85, + 4, 97, :_reduce_86, + 3, 97, :_reduce_87, + 0, 111, :_reduce_88, + 1, 111, :_reduce_89, + 1, 110, :_reduce_90, + 3, 110, :_reduce_91, + 1, 95, :_reduce_92, + 1, 95, :_reduce_93, + 1, 95, :_reduce_94, + 1, 95, :_reduce_95, + 2, 95, :_reduce_96, + 2, 95, :_reduce_97, + 2, 115, :_reduce_98, + 1, 115, :_reduce_99, + 1, 115, :_reduce_100, + 3, 117, :_reduce_101, + 5, 118, :_reduce_102, + 3, 113, :_reduce_103, + 0, 119, :_reduce_104, + 1, 119, :_reduce_105, + 3, 119, :_reduce_106, + 3, 119, :_reduce_107, + 1, 96, :_reduce_108, + 2, 96, :_reduce_109, + 1, 96, :_reduce_110, + 4, 116, :_reduce_111, + 4, 120, :_reduce_112, + 3, 112, :_reduce_113, + 0, 121, :_reduce_114, + 1, 121, :_reduce_115, + 3, 121, :_reduce_116, + 3, 121, :_reduce_117, + 4, 101, :_reduce_118, + 6, 101, :_reduce_119, + 0, 122, :_reduce_120, + 3, 122, :_reduce_121, + 2, 102, :_reduce_122, + 3, 114, :_reduce_123, + 5, 104, :_reduce_124, + 6, 105, :_reduce_125, + 8, 105, :_reduce_126, + 8, 105, :_reduce_127, + 10, 105, :_reduce_128, + 5, 106, :_reduce_129, + 7, 106, :_reduce_130, + 1, 123, :_reduce_131, + 2, 123, :_reduce_132, + 4, 124, :_reduce_133, + 5, 125, :_reduce_134, + 1, 126, :_reduce_135, + 2, 126, :_reduce_136, + 1, 127, :_reduce_137, + 3, 127, :_reduce_138, + 1, 128, :_reduce_139, + 2, 128, :_reduce_140, + 5, 100, :_reduce_141, + 3, 100, :_reduce_142, + 3, 100, :_reduce_143 ] -racc_reduce_n = 142 +racc_reduce_n = 144 -racc_shift_n = 256 +racc_shift_n = 260 racc_token_table = { false => 0, :error => 1, :IF => 2, @@ -880,65 +891,67 @@ :FOR => 27, :IN => 28, :WHILE => 29, :SWITCH => 30, :WHEN => 31, - :SUPER => 32, - :DELETE => 33, - :NEWLINE => 34, - :COMMENT => 35, - :JS => 36, - :UMINUS => 37, - :NOT => 38, - "!" => 39, - "!!" => 40, - "~" => 41, - "++" => 42, - "--" => 43, - "*" => 44, - "/" => 45, - "%" => 46, - "+" => 47, - "-" => 48, - "<<" => 49, - ">>" => 50, - ">>>" => 51, - "&" => 52, - "|" => 53, - "^" => 54, - "<=" => 55, - "<" => 56, - ">" => 57, - ">=" => 58, - "==" => 59, - "!=" => 60, - :IS => 61, - :AINT => 62, - "&&" => 63, - "||" => 64, - :AND => 65, - :OR => 66, - "-=" => 67, - "+=" => 68, - "/=" => 69, - "*=" => 70, - "." => 71, - ":" => 72, - "||:" => 73, - "&&:" => 74, - "\n" => 75, - ";" => 76, - "=>" => 77, - "," => 78, - "[" => 79, - "]" => 80, - "{" => 81, - "}" => 82, - "(" => 83, - ")" => 84 } + :DELETE => 32, + :INSTANCEOF => 33, + :TYPEOF => 34, + :SUPER => 35, + :NEWLINE => 36, + :COMMENT => 37, + :JS => 38, + :UMINUS => 39, + :NOT => 40, + "!" => 41, + "!!" => 42, + "~" => 43, + "++" => 44, + "--" => 45, + "*" => 46, + "/" => 47, + "%" => 48, + "+" => 49, + "-" => 50, + "<<" => 51, + ">>" => 52, + ">>>" => 53, + "&" => 54, + "|" => 55, + "^" => 56, + "<=" => 57, + "<" => 58, + ">" => 59, + ">=" => 60, + "==" => 61, + "!=" => 62, + :IS => 63, + :AINT => 64, + "&&" => 65, + "||" => 66, + :AND => 67, + :OR => 68, + "-=" => 69, + "+=" => 70, + "/=" => 71, + "*=" => 72, + "." => 73, + ":" => 74, + "||:" => 75, + "&&:" => 76, + "\n" => 77, + ";" => 78, + "=>" => 79, + "," => 80, + "[" => 81, + "]" => 82, + "{" => 83, + "}" => 84, + "(" => 85, + ")" => 86 } -racc_nt_base = 85 +racc_nt_base = 87 racc_use_result_var = true Racc_arg = [ racc_action_table, @@ -987,12 +1000,14 @@ "FOR", "IN", "WHILE", "SWITCH", "WHEN", - "SUPER", "DELETE", + "INSTANCEOF", + "TYPEOF", + "SUPER", "NEWLINE", "COMMENT", "JS", "UMINUS", "NOT", @@ -1570,62 +1585,62 @@ result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 191) +module_eval(<<'.,.,', 'grammar.y', 187) def _reduce_84(val, _values, result) - result = CodeNode.new(val[0], val[2]) + result = OpNode.new(val[0], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 192) +module_eval(<<'.,.,', 'grammar.y', 188) def _reduce_85(val, _values, result) - result = CodeNode.new([], val[1]) + result = OpNode.new(val[1], val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 197) +module_eval(<<'.,.,', 'grammar.y', 193) def _reduce_86(val, _values, result) - result = Expressions.new([]) + result = CodeNode.new(val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 198) +module_eval(<<'.,.,', 'grammar.y', 194) def _reduce_87(val, _values, result) - result = val[0] + result = CodeNode.new([], val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 203) +module_eval(<<'.,.,', 'grammar.y', 199) def _reduce_88(val, _values, result) - result = val + result = Expressions.new([]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 204) +module_eval(<<'.,.,', 'grammar.y', 200) def _reduce_89(val, _values, result) - result = val[0] << val[2] + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 209) +module_eval(<<'.,.,', 'grammar.y', 205) def _reduce_90(val, _values, result) - result = ValueNode.new(val[0]) + result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 210) +module_eval(<<'.,.,', 'grammar.y', 206) def _reduce_91(val, _values, result) - result = ValueNode.new(val[0]) + result = val[0] << val[2] result end .,., module_eval(<<'.,.,', 'grammar.y', 211) @@ -1642,102 +1657,102 @@ end .,., module_eval(<<'.,.,', 'grammar.y', 213) def _reduce_94(val, _values, result) - result = val[0] << val[1] + result = ValueNode.new(val[0]) result end .,., module_eval(<<'.,.,', 'grammar.y', 214) def _reduce_95(val, _values, result) - result = ValueNode.new(val[0], [val[1]]) + result = ValueNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 219) +module_eval(<<'.,.,', 'grammar.y', 215) def _reduce_96(val, _values, result) - result = AccessorNode.new(val[1]) + result = val[0] << val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 220) +module_eval(<<'.,.,', 'grammar.y', 216) def _reduce_97(val, _values, result) - result = val[0] + result = ValueNode.new(val[0], [val[1]]) result end .,., module_eval(<<'.,.,', 'grammar.y', 221) def _reduce_98(val, _values, result) - result = val[0] + result = AccessorNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 226) +module_eval(<<'.,.,', 'grammar.y', 222) def _reduce_99(val, _values, result) - result = IndexNode.new(val[1]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 231) +module_eval(<<'.,.,', 'grammar.y', 223) def _reduce_100(val, _values, result) - result = SliceNode.new(val[1], val[3]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 236) +module_eval(<<'.,.,', 'grammar.y', 228) def _reduce_101(val, _values, result) - result = ObjectNode.new(val[1]) + result = IndexNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 241) +module_eval(<<'.,.,', 'grammar.y', 233) def _reduce_102(val, _values, result) - result = [] + result = SliceNode.new(val[1], val[3]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 242) +module_eval(<<'.,.,', 'grammar.y', 238) def _reduce_103(val, _values, result) - result = val + result = ObjectNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'grammar.y', 243) def _reduce_104(val, _values, result) - result = val[0] << val[2] + result = [] result end .,., module_eval(<<'.,.,', 'grammar.y', 244) def _reduce_105(val, _values, result) - result = val[0] << val[2] + result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 249) +module_eval(<<'.,.,', 'grammar.y', 245) def _reduce_106(val, _values, result) - result = val[0] + result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 250) +module_eval(<<'.,.,', 'grammar.y', 246) def _reduce_107(val, _values, result) - result = val[1].new_instance + result = val[0] << val[2] result end .,., module_eval(<<'.,.,', 'grammar.y', 251) @@ -1745,235 +1760,249 @@ result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 256) +module_eval(<<'.,.,', 'grammar.y', 252) def _reduce_109(val, _values, result) - result = CallNode.new(val[0], val[2]) + result = val[1].new_instance result end .,., -module_eval(<<'.,.,', 'grammar.y', 261) +module_eval(<<'.,.,', 'grammar.y', 253) def _reduce_110(val, _values, result) - result = CallNode.new(:super, val[2]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 266) +module_eval(<<'.,.,', 'grammar.y', 258) def _reduce_111(val, _values, result) - result = ArrayNode.new(val[1]) + result = CallNode.new(val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 271) +module_eval(<<'.,.,', 'grammar.y', 263) def _reduce_112(val, _values, result) - result = [] + result = CallNode.new(:super, val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 272) +module_eval(<<'.,.,', 'grammar.y', 268) def _reduce_113(val, _values, result) - result = val + result = ArrayNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'grammar.y', 273) def _reduce_114(val, _values, result) - result = val[0] << val[2] + result = [] result end .,., module_eval(<<'.,.,', 'grammar.y', 274) def _reduce_115(val, _values, result) - result = val[0] << val[2] + result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 279) +module_eval(<<'.,.,', 'grammar.y', 275) def _reduce_116(val, _values, result) - result = TryNode.new(val[1], val[2][0], val[2][1]) + result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 281) +module_eval(<<'.,.,', 'grammar.y', 276) def _reduce_117(val, _values, result) - result = TryNode.new(val[1], val[2][0], val[2][1], val[4]) + result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 286) +module_eval(<<'.,.,', 'grammar.y', 281) def _reduce_118(val, _values, result) - result = [nil, nil] + result = TryNode.new(val[1], val[2][0], val[2][1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 287) +module_eval(<<'.,.,', 'grammar.y', 283) def _reduce_119(val, _values, result) - result = [val[1], val[2]] + result = TryNode.new(val[1], val[2][0], val[2][1], val[4]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 292) +module_eval(<<'.,.,', 'grammar.y', 288) def _reduce_120(val, _values, result) - result = ThrowNode.new(val[1]) + result = [nil, nil] result end .,., -module_eval(<<'.,.,', 'grammar.y', 297) +module_eval(<<'.,.,', 'grammar.y', 289) def _reduce_121(val, _values, result) - result = ParentheticalNode.new(val[1]) + result = [val[1], val[2]] result end .,., -module_eval(<<'.,.,', 'grammar.y', 303) +module_eval(<<'.,.,', 'grammar.y', 294) def _reduce_122(val, _values, result) - result = WhileNode.new(val[1], val[3]) + result = ThrowNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 309) +module_eval(<<'.,.,', 'grammar.y', 299) def _reduce_123(val, _values, result) - result = ForNode.new(val[0], val[4], val[2], nil) + result = ParentheticalNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 312) +module_eval(<<'.,.,', 'grammar.y', 305) def _reduce_124(val, _values, result) - result = ForNode.new(val[0], val[6], val[2], nil, val[4]) + result = WhileNode.new(val[1], val[3]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 315) +module_eval(<<'.,.,', 'grammar.y', 311) def _reduce_125(val, _values, result) - result = ForNode.new(val[0], val[4], val[2], val[6]) + result = ForNode.new(val[0], val[4], val[2], nil) result end .,., -module_eval(<<'.,.,', 'grammar.y', 319) +module_eval(<<'.,.,', 'grammar.y', 314) def _reduce_126(val, _values, result) - result = ForNode.new(val[0], val[6], val[2], val[8], val[4]) + result = ForNode.new(val[0], val[6], val[2], nil, val[4]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 325) +module_eval(<<'.,.,', 'grammar.y', 317) def _reduce_127(val, _values, result) - result = val[3].rewrite_condition(val[1]) + result = ForNode.new(val[0], val[4], val[2], val[6]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 327) +module_eval(<<'.,.,', 'grammar.y', 321) def _reduce_128(val, _values, result) - result = val[3].rewrite_condition(val[1]).add_else(val[5]) + result = ForNode.new(val[0], val[6], val[2], val[8], val[4]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 332) +module_eval(<<'.,.,', 'grammar.y', 327) def _reduce_129(val, _values, result) - result = val[0] + result = val[3].rewrite_condition(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 333) +module_eval(<<'.,.,', 'grammar.y', 329) def _reduce_130(val, _values, result) - result = val[0] << val[1] + result = val[3].rewrite_condition(val[1]).add_else(val[5]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 338) +module_eval(<<'.,.,', 'grammar.y', 334) def _reduce_131(val, _values, result) - result = IfNode.new(val[1], val[3]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 347) +module_eval(<<'.,.,', 'grammar.y', 335) def _reduce_132(val, _values, result) - result = IfNode.new(val[2], val[4]) + result = val[0] << val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 352) +module_eval(<<'.,.,', 'grammar.y', 340) def _reduce_133(val, _values, result) - result = val[0] + result = IfNode.new(val[1], val[3]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 353) +module_eval(<<'.,.,', 'grammar.y', 349) def _reduce_134(val, _values, result) - result = val[0].add_else(val[1]) + result = IfNode.new(val[2], val[4]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 358) +module_eval(<<'.,.,', 'grammar.y', 354) def _reduce_135(val, _values, result) - result = nil + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 359) +module_eval(<<'.,.,', 'grammar.y', 355) def _reduce_136(val, _values, result) - result = val[1] + result = val[0].add_else(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 364) +module_eval(<<'.,.,', 'grammar.y', 360) def _reduce_137(val, _values, result) - result = val[0] + result = nil result end .,., -module_eval(<<'.,.,', 'grammar.y', 365) +module_eval(<<'.,.,', 'grammar.y', 361) def _reduce_138(val, _values, result) - result = val[0].add_else(val[1]) + result = val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 371) +module_eval(<<'.,.,', 'grammar.y', 366) def _reduce_139(val, _values, result) - result = IfNode.new(val[1], val[3], val[4]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 372) +module_eval(<<'.,.,', 'grammar.y', 367) def _reduce_140(val, _values, result) - result = IfNode.new(val[2], Expressions.new([val[0]]), nil, {:statement => true}) + result = val[0].add_else(val[1]) result end .,., module_eval(<<'.,.,', 'grammar.y', 373) def _reduce_141(val, _values, result) + result = IfNode.new(val[1], val[3], val[4]) + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 374) + def _reduce_142(val, _values, result) + result = IfNode.new(val[2], Expressions.new([val[0]]), nil, {:statement => true}) + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 375) + def _reduce_143(val, _values, result) result = IfNode.new(val[2], Expressions.new([val[0]]), nil, {:statement => true, :invert => true}) result end .,.,