lib/coffee_script/parser.rb in coffee-script-0.1.4 vs lib/coffee_script/parser.rb in coffee-script-0.1.5

- old
+ new

@@ -8,11 +8,11 @@ module CoffeeScript class Parser < Racc::Parser -module_eval(<<'...end grammar.y/module_eval...', 'grammar.y', 398) +module_eval(<<'...end grammar.y/module_eval...', 'grammar.y', 400) # 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,442 +32,443 @@ ...end grammar.y/module_eval... ##### State transition tables begin ### clist = [ -'9,254,231,24,36,43,50,56,63,2,7,14,19,24,-150,-150,41,47,55,60,153,128', -'10,20,26,243,128,39,46,127,61,235,5,11,127,172,30,35,128,49,54,62,1', -'6,13,235,127,15,21,42,191,199,30,221,232,200,228,30,15,21,24,196,131', -'15,21,197,191,131,131,30,131,33,229,48,255,59,131,15,21,25,152,33,9', -'48,131,59,36,43,50,56,63,2,7,14,19,24,138,245,41,47,55,60,208,236,10', -'20,26,15,21,39,46,212,61,213,5,11,214,236,30,35,239,49,54,62,1,6,13', -'73,33,132,48,42,59,134,132,132,141,132,140,134,198,134,230,132,150,15', -'21,140,191,15,21,132,236,71,211,140,15,21,207,15,21,25,221,33,9,48,', -'59,36,43,50,56,63,2,7,14,19,24,74,75,41,47,55,60,,259,10,20,26,15,21', -'39,46,,61,,5,11,88,92,30,35,,49,54,62,1,6,13,88,92,15,21,42,88,92,95', -'98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,88', -'92,95,98,103,106,109,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,88', -'92,41,47,55,60,,263,10,20,26,15,21,39,46,,61,,5,11,-150,-150,30,35,', -'49,54,62,1,6,13,-150,-150,15,21,42,88,92,95,98,103,106,109,112,114,116', -'84,87,91,94,97,102,105,108,111,113,115,88,92,95,98,103,106,109,,25,', -'33,9,48,,59,36,43,50,56,63,2,7,14,19,24,-150,-150,41,47,55,60,,261,10', -'20,26,15,21,39,46,,61,,5,11,-150,-150,30,35,,49,54,62,1,6,13,15,21,15', -'21,42,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108', -'111,113,115,88,92,95,98,103,106,109,,25,,33,9,48,,59,36,43,50,56,63', -'2,7,14,19,24,-150,-150,41,47,55,60,,242,10,20,26,15,21,39,46,,61,,5', -'11,15,21,30,35,,49,54,62,1,6,13,-150,-150,,,42,88,92,95,98,103,106,109', -'112,114,116,84,87,91,94,97,102,105,108,111,113,115,15,21,,191,,192,', -',25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26', -',,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,88,92,95,98,103,106', -'109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,88,92,95,98,103', -',15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10', -'20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,88,92,95,98', -'103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,88,92', -'95,98,103,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55', -'60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,88,92', -'95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115', -',,,,,,15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60', -',,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,88,92,95', -'98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,,', -',,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10', -'20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,88,92,95,98', -'103,106,109,112,114,116,84,87,91,88,92,95,98,103,106,109,112,114,116', -'84,87,91,,15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47', -'55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,88', -'92,95,98,103,106,109,112,114,116,84,87,91,88,92,95,98,103,106,109,112', -'114,116,84,87,91,,15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24', -',,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13', -',,,,42,88,92,95,98,103,106,109,112,114,116,88,92,95,98,103,106,109,112', -'114,116,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47', -'55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,88', -'92,95,98,103,106,109,112,114,116,,,,,,,,,,,,,,,,,,15,21,25,,33,9,48', -',59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61', -',5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25', -',33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,', -'39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,', -',10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41', -'47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,250,48,,59,36,43,50,56,63,2,7,14', -'19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1', -'6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,15,21,25,,33,9,48,,59,36,43,50', -'56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35', -',49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,15,21,25,,33,9,48', -',59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61', -',5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25', -',33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,', -'39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,', -',,,,,,,15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55', -'60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24', -',,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13', -',,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2', -'7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54', -'62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43', -'50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30', -'35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,15,21,25,,33,9', -'48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46', -',61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', -',15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10', -'20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,', -',,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47', -'55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19', -'24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6', -'13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63', -'2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49', -'54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', -'43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11', -',,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33', -'9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46', -',61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20', -'26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,', -',,,,,,,,,,,,15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47', -'55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19', -'24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6', -'13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63', -'2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49', -'54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', -'43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11', -',,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,15,21,25', -',33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,', -'39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,', -',,,,,,,15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55', -'60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,', -',,,,,,,,,,,,,,,,,,,,,,,15,21,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19', -'24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6', -'13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63', -'2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49', -'54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', -'43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11', -',,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33', -'9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46', -',61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20', -'26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55', -'60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24', -',,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13', -',,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2', -'7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54', -'62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43', -'50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30', -'35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48', -',59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61', -',5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25', -',33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,', -'39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,', -',10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41', -'47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19', -'24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6', -'13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63', -'2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49', -'54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', -'43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11', -',,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33', -'9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46', -',61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20', -'26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55', -'60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24', -',,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13', -',,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2', -'7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54', -'62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43', -'50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30', -'35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48', -',59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61', -',5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25', -',33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,', -'39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,', -',10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41', -'47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19', -'24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6', -'13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63', -'2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49', -'54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', -'43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11', -',,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33', -'9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46', -',61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20', -'26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55', -'60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,', -',,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24', -',,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13', -',,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2', -'7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54', -'62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43', -'50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61,,5,11,,,30', -'35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48', -',59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,,39,46,,61', -',5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25', -',33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,,,10,20,26,,', -'39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,,,,,42,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,25,,33,9,48,,59,36,43,50,56,63,2,7,14,19,24,,,41,47,55,60,', -',10,20,26,,,39,46,,61,,5,11,,,30,35,,49,54,62,1,6,13,89,,,99,42,,,,', -',,,,,,,,,,,,,,,,100,,,,,,81,,,25,,33,,48,,59,,,88,92,95,98,103,106,109', -'112,114,116,84,87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101', -'104,107,110,,89,82,85,99,,,226,,227,,,,,,,,,,,,,,,,,100,,,,,,81,,,,', -',,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108', -'111,113,115,83,86,90,93,96,101,104,107,110,,,82,85,89,,148,99,,258,', -',,,,,,,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109,112', -'114,116,84,87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101,104', -'107,110,,,82,85,15,21,89,,148,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81,,', -',,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105', -'108,111,113,115,83,86,90,93,96,101,104,107,110,,,82,85,15,21,89,,148', -'99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109', -'112,114,116,84,87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101', -'104,107,110,,,82,85,15,21,89,,148,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81', -',,,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105', -'108,111,113,115,83,86,90,93,96,101,104,107,110,,,82,85,15,21,89,,148', -'99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109', -'112,114,116,84,87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101', -'104,107,110,,,82,85,15,21,89,,,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81,', -',,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105', -'108,111,113,115,83,86,90,93,96,101,104,107,110,,89,82,85,99,,,,,,,,', -',,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109,112,114', -'116,84,87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101,104,107', -'110,266,89,82,85,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92', -'95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115', -'83,86,90,93,96,101,104,107,110,,89,82,85,99,,,,,,,,,,,,,,,,,,,,,,100', -',,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97', -'102,105,108,111,113,115,83,86,90,93,96,101,104,107,110,,89,82,85,99', -',,,,,,,,,,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109', -'112,114,116,84,87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101', -'104,107,110,,89,82,85,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,', -',88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111', -'113,115,83,86,90,93,96,101,104,107,110,,89,82,85,99,,,,,,,,,,,,,,,,', -',,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87', -'91,94,97,102,105,108,111,113,115,83,86,90,93,96,101,104,107,110,,89', -'82,85,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103', -'106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,83,86,90', -'93,96,101,104,107,110,,89,82,85,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81', -',,,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105', -'108,111,113,115,83,86,90,93,96,101,104,107,110,,89,82,85,99,,,,,,,,', -',,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109,112,114', -'116,84,87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101,104,107', -'110,,89,82,85,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95', -'98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,83', -'86,90,93,96,101,104,107,110,89,,,99,,,,,,,,,,,,,,,,,,,,,,100,,,,,,81', -',,,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105', -'108,111,113,115,83,86,90,93,96,101,104,107,110,89,,,99,,,,,,,,,,,,,', -',,,,,,,,100,,,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84', -'87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101,104,107,110,100', -',,,,,81,,,,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97', -'102,105,108,111,113,115,83,86,90,93,96,101,104,107,110,100,,,,,,81,', -',,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105', -'108,111,113,115,83,86,90,93,96,101,104,107,110,100,,,,,,81,,,,,,,,,', -',,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111', -'113,115,83,86,90,93,96,101,104,107,110,81,,,,,,,,,,,,88,92,95,98,103', -'106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,83,86,90', -'93,96,101,104,107,110,81,,,,,,,,,,,,88,92,95,98,103,106,109,112,114', -'116,84,87,91,94,97,102,105,108,111,113,115,83,86,90,93,96,101,104,107', -'110,81,,,,,,,,,,,,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97', -'102,105,108,111,113,115,83,86,90,93,96,101,104,107,110,88,92,95,98,103', -'106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,83,86,90', -'93,96,101,104,107,110,88,92,95,98,103,106,109,112,114,116,84,87,91,94', -'97,102,105,108,111,113,115,83,86,90,93,96,101,104,107,110,88,92,95,98', -'103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,83,86', -'90,93,96,101,104,107,110,88,92,95,98,103,106,109,112,114,116,84,87,91', -'94,97,102,105,108,111,113,115,83,86,90,93,96,101,104,107,110,88,92,95', -'98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,113,115,83', -'86,90,93,96,101,104,107,110' ] - racc_action_table = arr = Array.new(8284, nil) +'9,259,175,239,36,43,51,56,64,2,7,15,19,24,234,156,41,47,55,60,16,21', +'10,20,27,-152,-152,39,46,210,62,239,5,11,16,21,30,35,131,50,54,63,1', +'6,14,249,130,-152,-152,42,154,36,43,51,56,64,2,7,15,19,24,16,21,202', +'200,203,235,206,201,30,20,27,153,226,260,240,136,16,21,25,216,33,9,48', +'35,59,36,43,51,56,64,2,7,15,19,24,217,211,41,47,55,60,218,240,10,20', +'27,16,21,39,46,222,62,226,5,11,74,251,30,35,243,50,54,63,1,6,14,72,124', +'233,48,42,59,36,43,51,56,64,2,7,15,19,24,137,,267,,139,131,16,21,,20', +'27,16,21,130,,136,136,,25,,33,9,48,35,59,36,43,51,56,64,2,7,15,19,24', +',30,41,47,55,60,,265,10,20,27,16,21,39,46,,62,,5,11,16,21,30,35,,50', +'54,63,1,6,14,,124,,48,42,59,36,43,51,56,64,2,7,15,19,24,137,137,269', +'270,146,139,,16,21,20,27,131,89,93,,136,136,136,25,130,33,9,48,35,59', +'36,43,51,56,64,2,7,15,19,24,-152,-152,41,47,55,60,,30,10,20,27,79,80', +'39,46,,62,,5,11,89,93,30,35,247,50,54,63,1,6,14,,124,,48,42,59,36,43', +'51,56,64,2,7,15,19,24,137,137,137,261,139,146,139,248,,20,27,16,21,136', +',136,136,,25,,33,9,48,35,59,36,43,51,56,64,2,7,15,19,24,135,135,41,47', +'55,60,,240,10,20,27,16,21,39,46,,62,,5,11,89,93,30,35,,50,54,63,1,6', +'14,,124,,48,42,59,-152,-152,196,140,140,-152,-152,,137,,137,137,146', +',139,139,16,21,,194,16,21,,194,,215,16,21,25,236,33,9,48,,59,36,43,51', +'56,64,2,7,15,19,24,-152,-152,41,47,55,60,16,21,10,20,27,16,21,39,46', +',62,,5,11,-152,-152,30,35,,50,54,63,1,6,14,,,,,42,89,93,96,99,104,107', +'110,113,115,117,85,88,92,95,98,103,106,109,112,114,116,16,21,,194,,', +',,25,232,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10', +'20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,89,93,96,99', +'104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114,116,16,21', +',194,,195,16,21,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47', +'55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,89', +'93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114', +'116,89,93,96,99,104,107,110,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19', +'24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6', +'14,,,,,42,89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106', +'109,112,114,116,89,93,96,99,104,107,110,,25,,33,9,48,,59,36,43,51,56', +'64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,', +'50,54,63,1,6,14,,,,,42,89,93,96,99,104,107,110,113,115,117,85,88,92', +'95,98,103,106,109,112,114,116,89,93,96,99,104,,16,21,25,,33,9,48,,59', +'36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5', +'11,,,30,35,,50,54,63,1,6,14,,,,,42,89,93,96,99,104,107,110,113,115,117', +'85,88,92,95,98,103,106,109,112,114,116,89,93,96,99,104,,16,21,25,,33', +'9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46', +',62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,89,93,96,99,104,107,110,113', +'115,117,85,88,92,95,98,103,106,109,112,114,116,,,,,,,16,21,25,,33,9', +'48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46', +',62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,89,93,96,99,104,107,110,113', +'115,117,85,88,92,95,98,103,106,109,112,114,116,,,,,,,16,21,25,,33,9', +'48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46', +',62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,89,93,96,99,104,107,110,113', +'115,117,85,88,92,89,93,96,99,104,107,110,113,115,117,85,88,92,,,,25', +',33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,', +'39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,89,93,96,99,104,107', +'110,113,115,117,85,88,92,89,93,96,99,104,107,110,113,115,117,85,88,92', +',,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20', +'27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,89,93,96,99,104', +'107,110,113,115,117,89,93,96,99,104,107,110,113,115,117,89,93,96,99', +'104,107,110,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55', +'60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,89,93', +'96,99,104,107,110,113,115,117,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', +'43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11', +',,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33', +'9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46', +',62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', +',16,21,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10', +'20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,', +',,,,,,,,,,,,,,,16,21,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41', +'47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19', +'24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6', +'14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64', +'2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50', +'54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', +'43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11', +',,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33', +'9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46', +',62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', +',16,21,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10', +'20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,', +',,,,,,,,,,,,,,,16,21,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41', +'47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19', +'24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6', +'14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64', +'2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50', +'54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', +'43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11', +',,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,16,21,25', +',33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,', +'39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,', +',10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41', +'47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,255,48,,59,36,43,51,56,64,2,7,15', +'19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1', +'6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,16,21,25,,33,9,48,,59,36,43,51', +'56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35', +',50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59', +'36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5', +'11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,', +'33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39', +'46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,', +',,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10', +'20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,', +',,,,,,,,,,,,,,,16,21,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41', +'47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19', +'24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6', +'14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64', +'2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50', +'54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', +'43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11', +',,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,16,21,25', +',33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,', +'39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,', +',,,,,,,16,21,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55', +'60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24', +',,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14', +',,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2', +'7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54', +'63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43', +'51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30', +'35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48', +',59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62', +',5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25', +',33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,', +'39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,', +',10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41', +'47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19', +'24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6', +'14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64', +'2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50', +'54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', +'43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11', +',,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33', +'9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46', +',62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20', +'27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55', +'60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24', +',,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14', +',,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2', +'7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54', +'63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43', +'51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30', +'35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48', +',59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62', +',5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25', +',33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,', +'39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,', +',10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41', +'47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19', +'24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6', +'14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64', +'2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50', +'54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36', +'43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11', +',,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33', +'9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46', +',62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20', +'27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55', +'60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24', +',,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14', +',,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2', +'7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54', +'63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43', +'51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30', +'35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48', +',59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,,39,46,,62', +',5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,25', +',33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,,,10,20,27,,', +'39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41,47,55,60,', +',10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42,,,,,,,,', +',,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19,24,,,41', +'47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6,14,,,,,42', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,25,,33,9,48,,59,36,43,51,56,64,2,7,15,19', +'24,,,41,47,55,60,,,10,20,27,,,39,46,,62,,5,11,,,30,35,,50,54,63,1,6', +'14,90,,,100,42,,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,25,,33,,48,,59,,,89', +'93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114', +'116,84,87,91,94,97,102,105,108,111,,,83,86,90,,151,100,,231,,,,,,,,', +',,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117', +'85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111', +',,83,86,16,21,90,,151,100,,,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,', +',,89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112', +'114,116,84,87,91,94,97,102,105,108,111,,,83,86,16,21,90,,151,100,,,', +',,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113', +'115,117,85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105', +'108,111,,,83,86,16,21,90,,151,100,,,,,,,,,,,,,,,,,,,,,,101,,,,,,82,', +',,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106', +'109,112,114,116,84,87,91,94,97,102,105,108,111,,,83,86,16,21,90,,151', +'100,,,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107', +'110,113,115,117,85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97', +'102,105,108,111,,,83,86,16,21,90,,,100,,,,,,,,,,,,,,,,,,,,,,101,,,,', +',82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103', +'106,109,112,114,116,84,87,91,94,97,102,105,108,111,,90,83,86,100,,,', +',,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113', +'115,117,85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105', +'108,111,,90,83,86,100,,,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89', +'93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114', +'116,84,87,91,94,97,102,105,108,111,,90,83,86,100,,,,,,,,,,,,,,,,,,,', +',,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85,88,92', +'95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,273,90', +'83,86,100,,,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104', +'107,110,113,115,117,85,88,92,95,98,103,106,109,112,114,116,84,87,91', +'94,97,102,105,108,111,,90,83,86,100,,,,,,,,,,,,,,,,,,,,,,101,,,,,,82', +',,,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106', +'109,112,114,116,84,87,91,94,97,102,105,108,111,,90,83,86,100,,,,,,,', +',,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115', +'117,85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108', +'111,,90,83,86,100,,,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93', +'96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114,116', +'84,87,91,94,97,102,105,108,111,,90,83,86,100,,,,,,,,,,,,,,,,,,,,,,101', +',,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85,88,92,95,98', +'103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,,90,83,86,100', +',,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110', +'113,115,117,85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102', +'105,108,111,,90,83,86,100,,,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,', +',,89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112', +'114,116,84,87,91,94,97,102,105,108,111,90,,,100,,,,,,,,,,,,,,,,,,,,', +',101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85,88,92', +'95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,90,,,100', +',,,,,,,,,,,,,,,,,,,,,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110', +'113,115,117,85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102', +'105,108,111,101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117', +'85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111', +'101,,,,,,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85,88,92', +'95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,101,,,', +',,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103', +'106,109,112,114,116,84,87,91,94,97,102,105,108,111,82,,,,,,,,,,,,89', +'93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114', +'116,84,87,91,94,97,102,105,108,111,82,,,,,,,,,,,,89,93,96,99,104,107', +'110,113,115,117,85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97', +'102,105,108,111,82,,,,,,,,,,,,89,93,96,99,104,107,110,113,115,117,85', +'88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111,89', +'93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114', +'116,84,87,91,94,97,102,105,108,111,89,93,96,99,104,107,110,113,115,117', +'85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111', +'89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114', +'116,84,87,91,94,97,102,105,108,111,89,93,96,99,104,107,110,113,115,117', +'85,88,92,95,98,103,106,109,112,114,116,84,87,91,94,97,102,105,108,111', +'89,93,96,99,104,107,110,113,115,117,85,88,92,95,98,103,106,109,112,114', +'116,84,87,91,94,97,102,105,108,111' ] + racc_action_table = arr = Array.new(8210, 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,241,209,47,0,0,0,0,0,0,0,0,0,0,68,68,0,0,0,0,78,195,0,0,0,219,48,0', -'0,195,0,210,0,0,48,100,0,0,196,0,0,0,0,0,0,238,196,202,202,0,202,128', -'195,219,209,131,202,48,125,125,138,125,203,205,205,125,205,204,53,196', -'122,47,205,47,241,47,58,0,0,0,75,0,1,0,123,0,1,1,1,1,1,1,1,1,1,1,58', -'219,1,1,1,1,143,210,1,1,1,210,210,1,1,151,1,172,1,1,173,238,1,1,213', -'1,1,1,1,1,1,17,138,203,138,1,138,203,204,53,58,122,204,53,127,122,208', -'58,73,149,149,58,149,142,142,123,267,11,149,123,267,267,142,143,143', -'1,194,1,5,1,,1,5,5,5,5,5,5,5,5,5,5,18,18,5,5,5,5,,249,5,5,5,249,249', -'5,5,,5,,5,5,176,176,5,5,,5,5,5,5,5,5,170,170,264,264,5,165,165,165,165', -'165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165,165', -'185,185,185,185,185,185,185,,5,,5,6,5,,5,6,6,6,6,6,6,6,6,6,6,167,167', -'6,6,6,6,,256,6,6,6,256,256,6,6,,6,,6,6,66,66,6,6,,6,6,6,6,6,6,120,120', -'28,28,6,186,186,186,186,186,186,186,186,186,186,186,186,186,186,186', -'186,186,186,186,186,186,189,189,189,189,189,189,189,,6,,6,9,6,,6,9,9', -'9,9,9,9,9,9,9,9,72,72,9,9,9,9,,251,9,9,9,251,251,9,9,,9,,9,9,145,145', -'9,9,,9,9,9,9,9,9,77,77,248,248,9,188,188,188,188,188,188,188,188,188', -'188,188,188,188,188,188,188,188,188,188,188,188,187,187,187,187,187', -'187,187,,9,,9,10,9,,9,10,10,10,10,10,10,10,10,10,10,136,136,10,10,10', -'10,,218,10,10,10,218,218,10,10,,10,,10,10,79,79,10,10,,10,10,10,10,10', -'10,129,129,,,10,160,160,160,160,160,160,160,160,160,160,160,160,160', -'160,160,160,160,160,160,160,160,117,117,,117,,117,,,10,,10,265,10,,10', -'265,265,265,265,265,265,265,265,265,265,,,265,265,265,265,,,265,265', -'265,,,265,265,,265,,265,265,,,265,265,,265,265,265,265,265,265,,,,,265', -'184,184,184,184,184,184,184,184,184,184,184,184,184,184,184,184,184', -'184,184,184,184,179,179,179,179,179,,265,265,265,,265,13,265,,265,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,181,181,181,181,181,181,181,181', -'181,181,181,181,181,181,181,181,181,181,181,181,181,182,182,182,182', -'182,,,,13,,13,257,13,,13,257,257,257,257,257,257,257,257,257,257,,,257', -'257,257,257,,,257,257,257,,,257,257,,257,,257,257,,,257,257,,257,257', -'257,257,257,257,,,,,257,163,163,163,163,163,163,163,163,163,163,163', -'163,163,163,163,163,163,163,163,163,163,,,,,,,257,257,257,,257,254,257', -',257,254,254,254,254,254,254,254,254,254,254,,,254,254,254,254,,,254', -'254,254,,,254,254,,254,,254,254,,,254,254,,254,254,254,254,254,254,', -',,,254,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157', -'157,157,157,157,157,,,,,,,,,254,,254,23,254,,254,23,23,23,23,23,23,23', -'23,23,23,,,23,23,23,23,,,23,23,23,,,23,23,,23,,23,23,,,23,23,,23,23', -'23,23,23,23,,,,,23,166,166,166,166,166,166,166,166,166,166,166,166,166', -'178,178,178,178,178,178,178,178,178,178,178,178,178,,23,23,23,,23,25', -'23,,23,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,175,175,175,175,175,175', -'175,175,175,175,175,175,175,169,169,169,169,169,169,169,169,169,169', -'169,169,169,,25,25,25,,25,250,25,,25,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,158,158,158,158,158,158,158,158', -'158,158,164,164,164,164,164,164,164,164,164,164,,,,,,,,,,250,,250,243', -'250,,250,243,243,243,243,243,243,243,243,243,243,,,243,243,243,243,', -',243,243,243,,,243,243,,243,,243,243,,,243,243,,243,243,243,243,243', -'243,,,,,243,161,161,161,161,161,161,161,161,161,161,,,,,,,,,,,,,,,,', -',243,243,243,,243,33,243,,243,33,33,33,33,33,33,33,33,33,33,,,33,33', -'33,33,,,33,33,33,,,33,33,,33,,33,33,,,33,33,,33,33,33,33,33,33,,,,,33', -',,,,,,,,,,,,,,,,,,,,,,,,,,,,,33,,33,39,33,,33,39,39,39,39,39,39,39,39', -'39,39,,,39,39,39,39,,,39,39,39,,,39,39,,39,,39,39,,,39,39,,39,39,39', -'39,39,39,,,,,39,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,39,,39,42,39,,39,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', -'46,42,,42,46,46,46,46,46,46,46,46,46,46,,,46,46,46,46,,,46,46,46,,,46', -'46,,46,,46,46,,,46,46,,46,46,46,46,46,46,,,,,46,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,,46,,46,235,46,,46,235,235,235,235,235,235,235,235,235,235,', -',235,235,235,235,,,235,235,235,,,235,235,,235,,235,235,,,235,235,,235', -'235,235,235,235,235,,,,,235,,,,,,,,,,,,,,,,,,,,,,,,,,,,235,235,235,', -'235,231,235,,235,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,49,231,', -'231,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,230,49,,49,230,230,230,230,230,230,230,230,230,230,,,230', -'230,230,230,,,230,230,230,,,230,230,,230,,230,230,,,230,230,,230,230', -'230,230,230,230,,,,,230,,,,,,,,,,,,,,,,,,,,,,,,,,,,230,230,230,,230', -'54,230,,230,54,54,54,54,54,54,54,54,54,54,,,54,54,54,54,,,54,54,54,', -',54,54,,54,,54,54,,,54,54,,54,54,54,54,54,54,,,,,54,,,,,,,,,,,,,,,,', -',,,,,,,,,,,,,54,,54,55,54,,54,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,226,55,,55,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,,226,59,226,,226,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,60,59,,59,60,60,60,60,60,60,60', -'60,60,60,,,60,60,60,60,,,60,60,60,,,60,60,,60,,60,60,,,60,60,,60,60', -'60,60,60,60,,,,,60,,,,,,,,,,,,,,,,,,,,,,,,,,,,60,60,60,,60,61,60,,60', -'61,61,61,61,61,61,61,61,61,61,,,61,61,61,61,,,61,61,61,,,61,61,,61,', -'61,61,,,61,61,,61,61,61,61,61,61,,,,,61,,,,,,,,,,,,,,,,,,,,,,,,,,,,', -',61,,61,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,221,62,,62,221,221,221,221,221,221,221,221,221', -'221,,,221,221,221,221,,,221,221,221,,,221,221,,221,,221,221,,,221,221', -',221,221,221,221,221,221,,,,,221,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,221,,221', -'214,221,,221,214,214,214,214,214,214,214,214,214,214,,,214,214,214,214', -',,214,214,214,,,214,214,,214,,214,214,,,214,214,,214,214,214,214,214', -'214,,,,,214,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,214,,214,199,214,,214,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,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,199,,199,198,199,,199,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,,,,,,,,,,,,,,,,,,,,,', -',,,,,,,,198,,198,193,198,,198,193,193,193,193,193,193,193,193,193,193', -',,193,193,193,193,,,193,193,193,,,193,193,,193,,193,193,,,193,193,,193', -'193,193,193,193,193,,,,,193,,,,,,,,,,,,,,,,,,,,,,,,,,,,193,193,193,', -'193,71,193,,193,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,191,71,,71,191,191,191,191,191,191,191,191,191', -'191,,,191,191,191,191,,,191,191,191,,,191,191,,191,,191,191,,,191,191', -',191,191,191,191,191,191,,,,,191,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,191,,191', -'190,191,,191,190,190,190,190,190,190,190,190,190,190,,,190,190,190,190', -',,190,190,190,,,190,190,,190,,190,190,,,190,190,,190,190,190,190,190', -'190,,,,,190,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,190,,190,74,190,,190,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,74,74', -',74,146,74,,74,146,146,146,146,146,146,146,146,146,146,,,146,146,146', +'0,245,101,242,0,0,0,0,0,0,0,0,0,0,212,80,0,0,0,0,143,143,0,0,0,69,69', +'0,0,143,0,214,0,0,29,29,0,0,200,0,0,0,0,0,0,224,200,141,141,0,78,47', +'47,47,47,47,47,47,47,47,47,128,128,130,128,131,212,136,128,200,47,47', +'74,224,245,242,204,0,0,0,155,0,1,0,47,0,1,1,1,1,1,1,1,1,1,1,175,144', +'1,1,1,1,176,214,1,1,1,214,214,1,1,196,1,198,1,1,18,224,1,1,217,1,1,1', +'1,1,1,11,47,211,47,1,47,135,135,135,135,135,135,135,135,135,135,204', +',256,,204,48,256,256,,135,135,144,144,48,,205,262,,1,,1,5,1,135,1,5', +'5,5,5,5,5,5,5,5,5,,48,5,5,5,5,,254,5,5,5,254,254,5,5,,5,,5,5,271,271', +'5,5,,5,5,5,5,5,5,,135,,135,5,135,222,222,222,222,222,222,222,222,222', +'222,205,262,262,263,205,262,,263,263,222,222,199,179,179,,125,61,246', +'5,199,5,6,5,222,5,6,6,6,6,6,6,6,6,6,6,67,67,6,6,6,6,,199,6,6,6,26,26', +'6,6,,6,,6,6,173,173,6,6,222,6,6,6,6,6,6,,222,,222,6,222,247,247,247', +'247,247,247,247,247,247,247,125,61,246,246,125,61,246,223,,247,247,223', +'223,126,,120,53,,6,,6,9,6,247,6,9,9,9,9,9,9,9,9,9,9,120,53,9,9,9,9,', +'274,9,9,9,274,274,9,9,,9,,9,9,170,170,9,9,,9,9,9,9,9,9,,247,,247,9,247', +'73,73,120,120,53,148,148,,126,,120,53,126,,120,53,152,152,,152,213,213', +',213,,152,76,76,9,213,9,10,9,,9,10,10,10,10,10,10,10,10,10,10,132,132', +'10,10,10,10,77,77,10,10,10,253,253,10,10,,10,,10,10,122,122,10,10,,10', +'10,10,10,10,10,,,,,10,191,191,191,191,191,191,191,191,191,191,191,191', +'191,191,191,191,191,191,191,191,191,208,208,,208,,,,,10,208,10,272,10', +',10,272,272,272,272,272,272,272,272,272,272,,,272,272,272,272,,,272', +'272,272,,,272,272,,272,,272,272,,,272,272,,272,272,272,272,272,272,', +',,,272,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160,160', +'160,160,160,160,160,118,118,,118,,118,272,272,272,,272,14,272,,272,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,189,189,189,189,189,189,189,189', +'189,189,189,189,189,189,189,189,189,189,189,189,189,190,190,190,190', +'190,190,190,,14,,14,226,14,,14,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,184,184,184,184,184,184,184,184,184,184', +'184,184,184,184,184,184,184,184,184,184,184,188,188,188,188,188,188', +'188,,226,,226,23,226,,226,23,23,23,23,23,23,23,23,23,23,,,23,23,23,23', +',,23,23,23,,,23,23,,23,,23,23,,,23,23,,23,23,23,23,23,23,,,,,23,168', +'168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168', +'168,168,168,185,185,185,185,185,,23,23,23,,23,25,23,,23,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,166,166,166,166,166,166,166,166,166,166,166', +'166,166,166,166,166,166,166,166,166,166,182,182,182,182,182,,25,25,25', +',25,233,25,,25,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,187,187,187,187,187,187,187,187,187,187,187,187,187', +'187,187,187,187,187,187,187,187,,,,,,,233,233,233,,233,264,233,,233', +'264,264,264,264,264,264,264,264,264,264,,,264,264,264,264,,,264,264', +'264,,,264,264,,264,,264,264,,,264,264,,264,264,264,264,264,264,,,,,264', +'163,163,163,163,163,163,163,163,163,163,163,163,163,163,163,163,163', +'163,163,163,163,,,,,,,264,264,264,,264,193,264,,264,193,193,193,193', +'193,193,193,193,193,193,,,193,193,193,193,,,193,193,193,,,193,193,,193', +',193,193,,,193,193,,193,193,193,193,193,193,,,,,193,178,178,178,178', +'178,178,178,178,178,178,178,178,178,172,172,172,172,172,172,172,172', +'172,172,172,172,172,,,,193,,193,33,193,,193,33,33,33,33,33,33,33,33', +'33,33,,,33,33,33,33,,,33,33,33,,,33,33,,33,,33,33,,,33,33,,33,33,33', +'33,33,33,,,,,33,181,181,181,181,181,181,181,181,181,181,181,181,181', +'169,169,169,169,169,169,169,169,169,169,169,169,169,,,,33,,33,39,33', +',33,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,164,164,164,164,164,164', +'164,164,164,164,161,161,161,161,161,161,161,161,161,161,192,192,192', +'192,192,192,192,,,39,,39,42,39,,39,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,167,167,167,167,167,167,167,167,167,167,,,,,,,,,,,,,,,,,,,,42,', +'42,46,42,,42,46,46,46,46,46,46,46,46,46,46,,,46,46,46,46,,,46,46,46', +',,46,46,,46,,46,46,,,46,46,,46,46,46,46,46,46,,,,,46,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,,46,,46,149,46,,46,149,149,149,149,149,149,149,149,149', +'149,,,149,149,149,149,,,149,149,149,,,149,149,,149,,149,149,,,149,149', +',149,149,149,149,149,149,,,,,149,,,,,,,,,,,,,,,,,,,,,,,,,,,,149,149', +'149,,149,234,149,,149,234,234,234,234,234,234,234,234,234,234,,,234', +'234,234,234,,,234,234,234,,,234,234,,234,,234,234,,,234,234,,234,234', +'234,234,234,234,,,,,234,,,,,,,,,,,,,,,,,,,,,,,,,,,,234,234,234,,234', +'50,234,,234,50,50,50,50,50,50,50,50,50,50,,,50,50,50,50,,,50,50,50,', +',50,50,,50,,50,50,,,50,50,,50,50,50,50,50,50,,,,,50,,,,,,,,,,,,,,,,', +',,,,,,,,,,,,,50,,50,194,50,,50,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,,194,54', +'194,,194,54,54,54,54,54,54,54,54,54,54,,,54,54,54,54,,,54,54,54,,,54', +'54,,54,,54,54,,,54,54,,54,54,54,54,54,54,,,,,54,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,,54,,54,55,54,,54,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,59,55,,55,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,60,59,,59,60,60', +'60,60,60,60,60,60,60,60,,,60,60,60,60,,,60,60,60,,,60,60,,60,,60,60', +',,60,60,,60,60,60,60,60,60,,,,,60,,,,,,,,,,,,,,,,,,,,,,,,,,,,60,60,60', +',60,146,60,,60,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,76,146,', -'146,76,76,76,76,76,76,76,76,76,76,,,76,76,76,76,,,76,76,76,,,76,76,', -'76,,76,76,,,76,76,,76,76,76,76,76,76,,,,,76,,,,,,,,,,,,,,,,,,,,,,,,', -',,,76,76,76,,76,141,76,,76,141,141,141,141,141,141,141,141,141,141,', -',141,141,141,141,,,141,141,141,,,141,141,,141,,141,141,,,141,141,,141', -'141,141,141,141,141,,,,,141,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,141,,141,140', -'141,,141,140,140,140,140,140,140,140,140,140,140,,,140,140,140,140,', -',140,140,140,,,140,140,,140,,140,140,,,140,140,,140,140,140,140,140', -'140,,,,,140,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,140,,140,134,140,,140,134,134', -'134,134,134,134,134,134,134,134,,,134,134,134,134,,,134,134,134,,,134', -'134,,134,,134,134,,,134,134,,134,134,134,134,134,134,,,,,134,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,134,,134,80,134,,134,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,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,,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,,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,,83,116,83,,83,116,116,116,116,116,116,116', -'116,116,116,,,116,116,116,116,,,116,116,116,,,116,116,,116,,116,116', -',,116,116,,116,116,116,116,116,116,,,,,116,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,116,,116,85,116,,116,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,,85,86,85,,85,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,89', -'87,,87,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,93,91,,91,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,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,,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,,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,132,99,,99,132,132,132,132,132,132,132', -'132,132,132,,,132,132,132,132,,,132,132,132,,,132,132,,132,,132,132', -',,132,132,,132,132,132,132,132,132,,,,,132,,,,,,,,,,,,,,,,,,,,,,,,,', -',,,,132,,132,101,132,,132,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', +'146,146,,,,,146,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,146,,146,62,146,,146,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,117,62,,62,117,117,117,117,117,117,117,117,117,117,,,117,117,117', +'117,,,117,117,117,,,117,117,,117,,117,117,,,117,117,,117,117,117,117', +'117,117,,,,,117,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,117,,117,197,117,,117,197', +'197,197,197,197,197,197,197,197,197,,,197,197,197,197,,,197,197,197', +',,197,197,,197,,197,197,,,197,197,,197,197,197,197,197,197,,,,,197,', +',,,,,,,,,,,,,,,,,,,,,,,,,,197,197,197,,197,140,197,,197,140,140,140', +'140,140,140,140,140,140,140,,,140,140,140,140,,,140,140,140,,,140,140', +',140,,140,140,,,140,140,,140,140,140,140,140,140,,,,,140,,,,,,,,,,,', +',,,,,,,,,,,,,,,,,,140,,140,139,140,,140,139,139,139,139,139,139,139', +'139,139,139,,,139,139,139,139,,,139,139,139,,,139,139,,139,,139,139', +',,139,139,,139,139,139,139,139,139,,,,,139,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,139,,139,137,139,,139,137,137,137,137,137,137,137,137,137,137,,', +'137,137,137,137,,,137,137,137,,,137,137,,137,,137,137,,,137,137,,137', +'137,137,137,137,137,,,,,137,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,137,,137,239', +'137,,137,239,239,239,239,239,239,239,239,239,239,,,239,239,239,239,', +',239,239,239,,,239,239,,239,,239,239,,,239,239,,239,239,239,239,239', +'239,,,,,239,,,,,,,,,,,,,,,,,,,,,,,,,,,,239,239,239,,239,72,239,,239', +'72,72,72,72,72,72,72,72,72,72,,,72,72,72,72,,,72,72,72,,,72,72,,72,', +'72,72,,,72,72,,72,72,72,72,72,72,,,,,72,,,,,,,,,,,,,,,,,,,,,,,,,,,,', +',72,,72,259,72,,72,259,259,259,259,259,259,259,259,259,259,,,259,259', +'259,259,,,259,259,259,,,259,259,,259,,259,259,,,259,259,,259,259,259', +'259,259,259,,,,,259,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,259,,259,218,259,,259', +'218,218,218,218,218,218,218,218,218,218,,,218,218,218,218,,,218,218', +'218,,,218,218,,218,,218,218,,,218,218,,218,218,218,218,218,218,,,,,218', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,218,,218,75,218,,218,75,75,75,75,75,75', +'75,75,75,75,,,75,75,75,75,,,75,75,75,,,75,75,,75,,75,75,,,75,75,,75', +'75,75,75,75,75,,,,,75,,,,,,,,,,,,,,,,,,,,,,,,,,,,75,75,75,,75,255,75', +',75,255,255,255,255,255,255,255,255,255,255,,,255,255,255,255,,,255', +'255,255,,,255,255,,255,,255,255,,,255,255,,255,255,255,255,255,255,', +',,,255,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,255,,255,203,255,,255,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,124,203,,203,124,124,124,124,124,124,124', +'124,124,124,,,124,124,124,124,,,124,124,124,,,124,124,,124,,124,124', +',,124,124,,124,124,124,124,124,124,,,,,124,,,,,,,,,,,,,,,,,,,,,,,,,', +',,,,124,,124,79,124,,124,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,79,,79,249,79,,79,249,249,249,249,249,249', +'249,249,249,249,,,249,249,249,249,,,249,249,249,,,249,249,,249,,249', +'249,,,249,249,,249,249,249,249,249,249,,,,,249,,,,,,,,,,,,,,,,,,,,,', +',,,,,,249,249,249,,249,81,249,,249,81,81,81,81,81,81,81,81,81,81,,,81', +'81,81,81,,,81,81,81,,,81,81,,81,,81,81,,,81,81,,81,81,81,81,81,81,,', +',,81,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,81,,81,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,,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,,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,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,,85,86,85,,85,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,90,88,,88,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,94,92,,92,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,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,,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,,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,202,100,,100,202,202,202,202,202,202,202,202,202', +'202,,,202,202,202,202,,,202,202,202,,,202,202,,202,,202,202,,,202,202', +',202,202,202,202,202,202,,,,,202,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,202,,202', +'102,202,,202,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', @@ -500,268 +501,272 @@ '113,,113,114,114,114,114,114,114,114,114,114,114,,,114,114,114,114,', ',114,114,114,,,114,114,,114,,114,114,,,114,114,,114,114,114,114,114', '114,,,,,114,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,114,,114,115,114,,114,115,115', '115,115,115,115,115,115,115,115,,,115,115,115,115,,,115,115,115,,,115', '115,,115,,115,115,,,115,115,,115,115,115,115,115,115,,,,,115,,,,,,,', -',,,,,,,,,,,,,,,,,,,,,,115,,115,84,115,,115,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,201,,,201,84,,,,,,,,,,,,,,,,,,,,,201,,,,,,201,,,84,,84,,84,,84', -',,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201', -'201,201,201,201,201,201,201,201,201,201,201,201,201,,247,201,201,247', -',,201,,201,,,,,,,,,,,,,,,,,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,119,,119,119,,247,,,,,,,,', -',,,,,,,,,,,119,,,,,,119,,,,,,,,,,,,119,119,119,119,119,119,119,119,119', -'119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119', -'119,119,119,119,,,119,119,119,119,246,,246,246,,,,,,,,,,,,,,,,,,,,,', -'246,,,,,,246,,,,,,,,,,,,246,246,246,246,246,246,246,246,246,246,246', -'246,246,246,246,246,246,246,246,246,246,246,246,246,246,246,246,246', -'246,246,,,246,246,246,246,121,,121,121,,,,,,,,,,,,,,,,,,,,,,121,,,,', -',121,,,,,,,,,,,,121,121,121,121,121,121,121,121,121,121,121,121,121', +',,,,,,,,,,,,,,,,,,,,,,115,,115,116,115,,115,116,116,116,116,116,116', +'116,116,116,116,,,116,116,116,116,,,116,116,116,,,116,116,,116,,116', +'116,,,116,116,,116,116,116,116,116,116,,,,,116,,,,,,,,,,,,,,,,,,,,,', +',,,,,,,,116,,116,63,116,,116,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,207,,,207', +'63,,,,,,,,,,,,,,,,,,,,,207,,,,,,207,,,63,,63,,63,,63,,,207,207,207,207', +'207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,207', +'207,207,207,207,207,207,207,207,207,,,207,207,123,,123,123,,207,,,,', +',,,,,,,,,,,,,,,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,252,,252,252,,,,,,,,,,,,,,,,,', +',,,,252,,,,,,252,,,,,,,,,,,,252,252,252,252,252,252,252,252,252,252', +'252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252,252', +'252,252,252,,,252,252,252,252,121,,121,121,,,,,,,,,,,,,,,,,,,,,,121', +',,,,,121,,,,,,,,,,,,121,121,121,121,121,121,121,121,121,121,121,121', '121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121,121', -',,121,121,121,121,69,,69,69,,,,,,,,,,,,,,,,,,,,,,69,,,,,,69,,,,,,,,', -',,,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69', -'69,69,69,69,69,69,69,69,,,69,69,69,69,260,,260,260,,,,,,,,,,,,,,,,,', -',,,,260,,,,,,260,,,,,,,,,,,,260,260,260,260,260,260,260,260,260,260', -'260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260,260', -'260,260,260,,,260,260,260,260,224,,,224,,,,,,,,,,,,,,,,,,,,,,224,,,', -',,224,,,,,,,,,,,,224,224,224,224,224,224,224,224,224,224,224,224,224', -'224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224', -',262,224,224,262,,,,,,,,,,,,,,,,,,,,,,262,,,,,,262,,,,,,,,,,,,262,262', -'262,262,262,262,262,262,262,262,262,262,262,262,262,262,262,262,262', -'262,262,262,262,262,262,262,262,262,262,262,262,118,262,262,118,,,,', -',,,,,,,,,,,,,,,,,118,,,,,,118,,,,,,,,,,,,118,118,118,118,118,118,118', -'118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,118', -'118,118,118,118,118,118,,32,118,118,32,,,,,,,,,,,,,,,,,,,,,,32,,,,,', -'32,,,,,,,,,,,,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32', -'32,32,32,32,32,32,32,32,32,32,32,32,,216,32,32,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,,240,216,216,240,,,,,,,,,,,,,,,,,,,,,,240,,,,,,240,,,,,', -',,,,,,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240,240', -'240,240,240,240,240,240,240,240,240,240,240,240,240,240,,154,240,240', -'154,,,,,,,,,,,,,,,,,,,,,,154,,,,,,154,,,,,,,,,,,,154,154,154,154,154', -'154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154,154', -'154,154,154,154,154,154,154,154,,137,154,154,137,,,,,,,,,,,,,,,,,,,', -',,137,,,,,,137,,,,,,,,,,,,137,137,137,137,137,137,137,137,137,137,137', -'137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137,137', -'137,137,,225,137,137,225,,,,,,,,,,,,,,,,,,,,,,225,,,,,,225,,,,,,,,,', -',,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225', -'225,225,225,225,225,225,225,225,225,225,225,225,225,,217,225,225,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,,206,217,217,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,159,,,159,,,,,,,,,,,,,,,,,,,,,,159,,,,,,159,,,,,,,,,,,,159,159,159', +'121,,,121,121,121,121,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,70,70,70,,,70,70,70,70,266,,266,266,,,,,,,,,,,,,,', +',,,,,,,266,,,,,,266,,,,,,,,,,,,266,266,266,266,266,266,266,266,266,266', +'266,266,266,266,266,266,266,266,266,266,266,266,266,266,266,266,266', +'266,266,266,,,266,266,266,266,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', +',32,229,229,32,,,,,,,,,,,,,,,,,,,,,,32,,,,,,32,,,,,,,,,,,,32,32,32,32', +'32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32', +'32,32,32,,221,32,32,221,,,,,,,,,,,,,,,,,,,,,,221,,,,,,221,,,,,,,,,,', +',221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221,221', +'221,221,221,221,221,221,221,221,221,221,221,221,221,,268,221,221,268', +',,,,,,,,,,,,,,,,,,,,,268,,,,,,268,,,,,,,,,,,,268,268,268,268,268,268', +'268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268,268', +'268,268,268,268,268,268,268,268,244,268,268,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,,157,244,244,157,,,,,,,,,,,,,,,,,,,,,,157,,,,,,157,,,,,,,,,', +',,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157,157', +'157,157,157,157,157,157,157,157,157,157,157,157,157,,119,157,157,119', +',,,,,,,,,,,,,,,,,,,,,119,,,,,,119,,,,,,,,,,,,119,119,119,119,119,119', +'119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119,119', +'119,119,119,119,119,119,119,,220,119,119,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,,142,220,220,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,142,142,142,,230,142,142,230,,,', +',,,,,,,,,,,,,,,,,,230,,,,,,230,,,,,,,,,,,,230,230,230,230,230,230,230', +'230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230', +'230,230,230,230,230,230,,159,230,230,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,159,159,159,159', -'159,159,159,159,159,159,159,159,159,159,156,,,156,,,,,,,,,,,,,,,,,,', -',,,156,,,,,,156,,,,,,,,,,,,156,156,156,156,156,156,156,156,156,156,156', -'156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156,156', -'156,156,162,,,,,,162,,,,,,,,,,,,162,162,162,162,162,162,162,162,162', +'162,,,162,,,,,,,,,,,,,,,,,,,,,,162,,,,,,162,,,,,,,,,,,,162,162,162,162', '162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162,162', -'162,162,162,162,171,,,,,,171,,,,,,,,,,,,171,171,171,171,171,171,171', -'171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171', -'171,171,171,171,171,171,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,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,144,144,67,,,,,', -',,,,,,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67', -'67,67,67,67,67,67,67,67,67,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,168,168,168,168,168,168,168,168,168,168,168', -'168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168', -'168,168,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', +'162,162,162,162,162,162,162,162,162,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', +'209,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,174,,,,,,174,,,,,,,', +',,,,174,174,174,174,174,174,174,174,174,174,174,174,174,174,174,174', +'174,174,174,174,174,174,174,174,174,174,174,174,174,174,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,165,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,147,147,158,,,,,,,,', +',,,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158,158', +'158,158,158,158,158,158,158,158,158,158,158,158,158,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,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,177,177,177,177,177,177,177,177,174,174,174,174,174,174', -'174,174,174,174,174,174,174,174,174,174,174,174,174,174,174,174,174', -'174,174,174,174,174,174,174,183,183,183,183,183,183,183,183,183,183', +'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,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,171,171,171,171,171,171,171,171', +'171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171,171', +'171,171,171,171,171,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' ] - racc_action_check = arr = Array.new(8284, nil) +'183' ] + racc_action_check = arr = Array.new(8210, 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, 80, nil, nil, nil, 162, 244, nil, nil, 326, - 408, 66, nil, 572, nil, nil, nil, 127, 97, nil, - nil, nil, nil, 818, nil, 900, nil, nil, 214, nil, - nil, nil, 7125, 1146, nil, nil, nil, nil, nil, 1228, - nil, nil, 1310, nil, nil, nil, 1392, -12, 19, 1638, - nil, nil, nil, 52, 1802, 1884, nil, nil, 60, 2048, - 2130, 2212, 2294, nil, nil, nil, 235, 8017, -31, 6745, - 7933, 2786, 297, 144, 3032, 62, 3196, 294, -55, 365, - 3524, 3606, 3688, 3770, 6312, 3934, 4016, 4098, nil, 4180, - 4262, 4344, nil, 4426, 4508, 4590, 4672, 4754, 4836, 4918, - 20, 5082, 5164, 5246, 5328, 5410, 5492, 5574, 5656, 5738, - 5820, 5902, 5984, 6066, 6148, 6230, 3852, 402, 7051, 6508, - 246, 6666, 54, 68, nil, -21, nil, 64, -25, 410, - nil, 40, 5000, nil, 3442, nil, 379, 7421, 45, nil, - 3360, 3278, 70, 80, 7975, 317, 3114, nil, nil, 66, - nil, 36, nil, nil, 7347, 8059, 7789, 743, 989, 7716, - 415, 1071, 7837, 661, 999, 169, 825, 215, 8089, 920, - 164, 7885, 31, 88, 8179, 907, 153, 8149, 838, 518, - 8119, 579, 600, 8209, 497, 190, 251, 354, 333, 272, - 2950, 2868, nil, 2704, 131, 14, 31, nil, 2622, 2540, - nil, 6357, -32, 46, 51, -16, 7643, nil, 127, -21, - 28, nil, nil, 105, 2458, nil, 7199, 7569, 356, 22, - nil, 2376, nil, nil, 6903, 7495, 1966, nil, nil, nil, - 1720, 1556, nil, nil, nil, 1474, nil, nil, 42, nil, - 7273, -1, nil, 1064, nil, nil, 6587, 6431, 296, 110, - 982, 274, nil, nil, 736, nil, 192, 654, nil, nil, - 6824, nil, 6977, nil, 132, 490, nil, 77 ] + 408, 40, nil, nil, 572, nil, nil, nil, 116, nil, + nil, nil, nil, 736, nil, 818, 190, nil, nil, -45, + nil, nil, 6903, 1146, nil, nil, nil, nil, nil, 1228, + nil, nil, 1310, nil, nil, nil, 1392, 45, 141, nil, + 1638, nil, nil, 307, 1802, 1884, nil, nil, nil, 1966, + 2048, 225, 2212, 6312, nil, nil, nil, 215, 7985, -20, + 6671, 7763, 2786, 334, 72, 3032, 326, 351, -25, 3360, + -3, 3524, 3606, 3688, 3770, 3852, 3934, 4016, 4098, nil, + 4180, 4262, 4344, nil, 4426, 4508, 4590, 4672, 4754, 4836, + 4918, -13, 5082, 5164, 5246, 5328, 5410, 5492, 5574, 5656, + 5738, 5820, 5902, 5984, 6066, 6148, 6230, 2294, 484, 7273, + 306, 6592, 399, 6434, 3278, 224, 304, nil, -18, nil, + -13, -11, 379, nil, nil, 127, 52, 2622, nil, 2540, + 2458, 2, 7421, -59, 75, nil, 2130, 7901, 339, 1474, + nil, nil, 316, nil, nil, 5, nil, 7199, 7943, 7569, + 497, 1245, 7642, 989, 1235, 7859, 825, 1317, 743, 1166, + 317, 8105, 1084, 235, 7811, 14, 74, 8015, 1071, 192, + 8075, 1153, 846, 8135, 661, 764, 8045, 907, 682, 579, + 600, 415, 1255, 1064, 1720, nil, 36, 2376, 82, 229, + 31, nil, 5000, 3196, 60, 142, nil, 6357, 402, 7715, + nil, 114, -9, 320, 28, nil, nil, 105, 2950, nil, + 7347, 6977, 209, 239, 42, nil, 654, nil, nil, 6829, + 7495, nil, nil, 900, 1556, nil, nil, nil, nil, 2704, + nil, nil, 0, nil, 7125, -1, 226, 291, nil, 3442, + nil, nil, 6513, 356, 110, 3114, 70, nil, nil, 2868, + nil, nil, 143, 153, 982, nil, 6750, nil, 7051, nil, + nil, 119, 490, nil, 274 ] racc_action_default = [ - -1, -150, -37, -24, -13, -150, -150, -38, -14, -150, - -150, -150, -113, -150, -39, -25, -15, -150, -150, -40, - -33, -26, -16, -2, -95, -91, -34, -17, -3, -96, - -46, -18, -4, -119, -97, -31, -29, -19, -8, -150, - -98, -93, -150, -30, -20, -9, -150, -150, -107, -150, - -32, -21, -10, -111, -150, -150, -35, -22, -11, -150, - -150, -150, -150, -36, -23, -12, -51, -87, -53, -150, - -127, -119, -52, -150, -91, -150, -150, -7, -150, -92, - -6, -150, -150, -150, -150, -150, -150, -150, -55, -150, - -150, -150, -54, -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, -120, -150, - -49, -150, -112, -150, -44, -150, -108, -150, -150, -50, - -103, -150, -150, -100, -119, -102, -47, -45, -150, -99, - -119, -150, -150, -125, -86, -48, -150, -28, -27, -150, - 268, -150, -94, -90, -5, -88, -84, -75, -64, -85, - -76, -65, -148, -77, -66, -78, -67, -56, -79, -68, - -57, -149, -131, -150, -80, -69, -58, -81, -70, -59, - -82, -71, -60, -83, -72, -61, -73, -62, -74, -63, - -150, -150, -118, -150, -150, -150, -150, -106, -150, -150, - -101, -150, -150, -150, -114, -150, -41, -128, -150, -150, - -150, -117, -89, -150, -150, -130, -122, -121, -150, -150, - -137, -150, -110, -109, -42, -43, -150, -104, -116, -115, - -150, -150, -123, -145, -147, -150, -143, -141, -150, -132, - -150, -8, -129, -150, -138, -135, -150, -150, -126, -150, - -150, -150, -146, -142, -150, -133, -150, -150, -105, -124, - -150, -144, -150, -136, -139, -150, -134, -140 ] + -1, -152, -37, -24, -13, -152, -152, -38, -14, -152, + -152, -152, -113, -96, -152, -39, -25, -15, -152, -40, + -33, -26, -16, -2, -95, -91, -152, -34, -17, -3, + -46, -18, -4, -121, -97, -31, -29, -19, -8, -152, + -98, -93, -152, -30, -20, -9, -152, -152, -107, -99, + -152, -32, -21, -10, -152, -152, -35, -22, -11, -152, + -152, -111, -152, -152, -36, -23, -12, -51, -87, -53, + -152, -129, -121, -52, -152, -152, -7, -92, -152, -91, + -152, -6, -152, -152, -152, -152, -152, -152, -152, -55, + -152, -152, -152, -54, -152, -152, -152, -152, -152, -152, + -152, -152, -152, -152, -152, -152, -152, -152, -152, -152, + -152, -152, -152, -152, -152, -152, -152, -152, -152, -122, + -10, -152, -49, -152, -121, -152, -112, -44, -152, -108, + -152, -152, -50, -103, -104, -152, -152, -152, -100, -121, + -152, -47, -45, -152, -127, -101, -121, -86, -48, -152, + -28, -27, -152, 275, -90, -152, -94, -5, -88, -84, + -75, -64, -85, -76, -65, -150, -77, -66, -78, -67, + -56, -79, -68, -57, -151, -133, -152, -80, -69, -58, + -81, -70, -59, -82, -71, -60, -83, -72, -61, -73, + -62, -74, -63, -152, -152, -120, -152, -152, -152, -152, + -152, -106, -152, -152, -114, -152, -102, -152, -152, -41, + -130, -152, -152, -152, -152, -117, -89, -152, -152, -132, + -124, -123, -152, -152, -152, -139, -152, -110, -109, -42, + -43, -105, -115, -152, -152, -125, -116, -147, -149, -152, + -145, -143, -152, -134, -152, -8, -152, -152, -131, -152, + -140, -137, -152, -128, -152, -152, -152, -148, -144, -152, + -135, -118, -152, -152, -152, -126, -152, -146, -152, -119, + -138, -141, -152, -136, -142 ] racc_goto_table = [ - 23, 28, 146, 126, 117, 124, 123, 122, 139, 78, - 220, 17, 125, 209, 173, 215, 219, 241, 253, 252, - nil, nil, nil, nil, nil, nil, 79, nil, 80, nil, - nil, nil, nil, nil, nil, 244, nil, nil, nil, nil, - nil, nil, 149, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 193, nil, 194, nil, nil, nil, 151, nil, - 142, 143, nil, nil, nil, nil, nil, nil, nil, 147, - nil, nil, nil, 139, nil, 79, nil, 80, nil, 80, + 23, 29, 120, 126, 149, 78, 134, 145, 127, 225, + 129, 18, 128, 212, 134, 152, 125, 176, 219, 224, + 245, 258, 257, nil, nil, nil, 77, nil, nil, 81, + nil, nil, nil, nil, nil, 250, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 204, 203, nil, - nil, nil, nil, nil, nil, 202, nil, nil, nil, nil, - nil, 205, nil, nil, nil, nil, nil, 190, nil, 147, - nil, 147, nil, nil, nil, 195, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 197, nil, 198, nil, 155, + 143, 144, nil, nil, nil, nil, nil, nil, nil, nil, + 150, nil, 145, 134, nil, nil, 81, 81, 134, 134, + 77, nil, 208, nil, nil, nil, nil, nil, nil, 213, + nil, 205, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 204, nil, 120, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 193, nil, + nil, 150, nil, 150, nil, nil, nil, nil, 199, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 80, 80, nil, nil, nil, 210, nil, 190, - 222, 223, 124, 124, 139, nil, nil, nil, nil, nil, + nil, nil, nil, 81, 81, nil, nil, nil, nil, nil, + 214, 145, 193, nil, nil, nil, nil, 134, 134, 127, + 127, 227, 228, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 205, nil, + nil, nil, nil, nil, nil, nil, 264, nil, nil, nil, + nil, 246, nil, nil, nil, nil, nil, nil, 223, 134, + 272, nil, nil, 205, nil, nil, nil, nil, 193, nil, + nil, nil, nil, 193, 81, 134, 262, nil, nil, nil, + nil, nil, nil, 81, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 253, 254, nil, nil, 67, nil, + 256, nil, 68, 69, nil, nil, 70, 71, nil, nil, + 263, 73, 150, 81, 81, nil, 81, nil, nil, nil, + nil, nil, nil, 81, nil, 271, 150, nil, nil, nil, + 119, 81, nil, 274, 81, nil, 121, nil, nil, 122, + nil, nil, nil, 123, nil, nil, nil, 132, nil, nil, + nil, 141, 142, nil, nil, nil, nil, nil, nil, 147, + 148, nil, nil, nil, nil, nil, nil, nil, nil, 119, + nil, nil, nil, nil, nil, nil, nil, nil, 157, 158, + 159, 160, 161, 162, 163, 164, nil, 165, 166, 167, + nil, 168, 169, 170, 171, 172, 173, 174, nil, 177, + 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, + 188, 189, 190, 191, 192, nil, nil, nil, nil, nil, + nil, 119, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 207, nil, 119, 209, nil, nil, + nil, nil, nil, 119, 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, 257, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 265, 218, nil, nil, nil, nil, nil, - nil, nil, 190, nil, nil, 190, nil, nil, nil, nil, - 80, nil, nil, nil, nil, nil, nil, nil, 80, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 66, 248, 249, nil, 67, 68, 251, nil, 69, 70, - nil, nil, 72, nil, 256, nil, 147, nil, 80, 80, - nil, 80, nil, nil, nil, nil, 80, nil, 264, nil, - 147, nil, 118, nil, 80, nil, 267, 80, 119, nil, - nil, 120, nil, nil, nil, 121, nil, nil, 129, nil, - nil, nil, nil, 136, 137, nil, nil, nil, nil, nil, - 144, 145, nil, nil, nil, nil, nil, nil, nil, nil, - 118, nil, nil, nil, nil, nil, nil, nil, nil, 154, - 155, 156, 157, 158, 159, 160, 161, nil, 162, 163, - 164, nil, 165, 166, 167, 168, 169, 170, 171, nil, - 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, - 184, 185, 186, 187, 188, 189, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, 201, nil, 118, nil, nil, nil, nil, nil, 118, - 206, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 220, 221, nil, nil, nil, nil, nil, nil, nil, 229, + 230, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 244, nil, nil, nil, nil, + nil, nil, nil, 252, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 216, - 217, nil, nil, nil, nil, nil, nil, 224, 225, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 240, nil, nil, nil, nil, nil, nil, - 246, nil, nil, nil, nil, 247, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 260, - nil, nil, nil, 262 ] + nil, nil, 266, nil, nil, nil, 268 ] racc_goto_check = [ - 2, 3, 22, 23, 35, 21, 8, 30, 29, 25, - 40, 1, 33, 36, 37, 38, 39, 5, 41, 43, - nil, nil, nil, nil, nil, nil, 3, nil, 2, nil, + 2, 3, 7, 31, 22, 26, 11, 30, 21, 40, + 24, 1, 33, 36, 11, 35, 7, 37, 38, 39, + 5, 41, 43, nil, nil, nil, 3, nil, nil, 2, nil, nil, nil, nil, nil, 40, nil, nil, nil, nil, - nil, nil, 35, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 22, nil, 22, nil, nil, nil, 25, nil, - 3, 3, nil, nil, nil, nil, nil, nil, nil, 2, - nil, nil, nil, 29, nil, 3, nil, 2, nil, 2, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, 8, 30, nil, - nil, nil, nil, nil, nil, 35, nil, nil, nil, nil, - nil, 35, nil, nil, nil, nil, nil, 2, nil, 2, - nil, 2, nil, nil, nil, 2, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 22, nil, 22, nil, 26, + 3, 3, nil, nil, nil, nil, nil, nil, nil, nil, + 2, nil, 30, 11, nil, nil, 2, 2, 11, 11, + 3, nil, 35, nil, nil, nil, nil, nil, nil, 35, + nil, 31, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 7, nil, 7, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 2, nil, + nil, 2, nil, 2, nil, nil, nil, nil, 2, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, 2, 2, nil, nil, nil, 3, nil, 2, - 23, 23, 21, 21, 29, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 22, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, 22, 3, nil, nil, nil, nil, nil, - nil, nil, 2, nil, nil, 2, nil, nil, nil, nil, - 2, nil, nil, nil, nil, nil, nil, nil, 2, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - 4, 3, 3, nil, 4, 4, 3, nil, 4, 4, - nil, nil, 4, nil, 3, nil, 2, nil, 2, 2, - nil, 2, nil, nil, nil, nil, 2, nil, 3, nil, - 2, nil, 4, nil, 2, nil, 3, 2, 4, nil, - nil, 4, nil, nil, nil, 4, nil, nil, 4, nil, - nil, nil, nil, 4, 4, nil, nil, nil, nil, nil, - 4, 4, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, 2, 2, nil, nil, nil, nil, nil, + 3, 30, 2, nil, nil, nil, nil, 11, 11, 21, + 21, 24, 24, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 31, nil, + nil, nil, nil, nil, nil, nil, 22, nil, nil, nil, + nil, 7, nil, nil, nil, nil, nil, nil, 3, 11, + 22, nil, nil, 31, nil, nil, nil, nil, 2, nil, + nil, nil, nil, 2, 2, 11, 7, nil, nil, nil, + nil, nil, nil, 2, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 3, 3, nil, nil, 4, nil, + 3, nil, 4, 4, nil, nil, 4, 4, nil, nil, + 3, 4, 2, 2, 2, nil, 2, nil, nil, nil, + nil, nil, nil, 2, nil, 3, 2, nil, nil, nil, + 4, 2, nil, 3, 2, nil, 4, nil, nil, 4, + nil, nil, nil, 4, nil, nil, nil, 4, nil, nil, + nil, 4, 4, nil, nil, nil, nil, nil, nil, 4, 4, nil, nil, nil, nil, nil, nil, nil, nil, 4, - 4, 4, 4, 4, 4, 4, 4, nil, 4, 4, - 4, nil, 4, 4, 4, 4, 4, 4, 4, nil, + nil, nil, nil, nil, nil, nil, nil, nil, 4, 4, + 4, 4, 4, 4, 4, 4, nil, 4, 4, 4, + nil, 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, nil, nil, nil, nil, + 4, 4, 4, 4, 4, nil, nil, nil, nil, nil, + nil, 4, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, 4, nil, 4, 4, nil, nil, + nil, nil, nil, 4, 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, - 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, nil, nil, nil, nil, nil, nil, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, 4, - 4, nil, nil, nil, nil, nil, nil, 4, 4, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 4, 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, nil, nil, nil, nil, nil, 4, nil, nil, nil, nil, nil, nil, - 4, 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, 4, - nil, nil, nil, 4 ] + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 4, nil, nil, nil, 4 ] racc_goto_pointer = [ - nil, 11, 0, 1, 229, -197, nil, nil, -41, nil, - nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, - nil, -43, -67, -45, nil, -16, nil, nil, nil, -50, - -40, nil, nil, -36, nil, -29, -130, -86, -158, -178, - -184, -220, nil, -219, nil ] + nil, 11, 0, 1, 237, -198, nil, -31, nil, nil, + nil, -47, nil, nil, nil, nil, nil, nil, nil, nil, + nil, -40, -66, nil, -38, nil, -20, nil, nil, nil, + -54, -44, nil, -36, nil, -57, -131, -84, -158, -179, + -189, -221, nil, -220, nil ] racc_goto_default = [ - nil, nil, 76, 77, 32, 38, 45, 52, 58, 65, - 4, 8, 16, 22, 27, 31, 37, 44, 51, 57, - 64, 3, nil, nil, 18, nil, 29, 34, 40, 133, - 53, 135, 130, nil, 12, nil, nil, nil, nil, nil, - nil, 237, 238, 233, 234 ] + nil, nil, 75, 76, 32, 38, 45, 53, 58, 66, + 4, 8, 17, 22, 28, 31, 37, 44, 52, 57, + 65, 3, nil, 13, nil, 26, nil, 34, 40, 49, + 138, 61, 133, nil, 12, 118, nil, nil, nil, nil, + nil, 241, 242, 237, 238 ] racc_reduce_table = [ 0, 0, :racc_error, 0, 90, :_reduce_1, 1, 90, :_reduce_2, @@ -789,135 +794,137 @@ 1, 95, :_reduce_none, 1, 91, :_reduce_none, 1, 91, :_reduce_none, 1, 111, :_reduce_none, 1, 111, :_reduce_none, - 1, 96, :_reduce_29, - 1, 96, :_reduce_30, - 1, 96, :_reduce_31, - 1, 96, :_reduce_32, - 1, 96, :_reduce_33, - 1, 96, :_reduce_34, - 1, 96, :_reduce_35, - 1, 96, :_reduce_36, - 1, 96, :_reduce_37, - 1, 96, :_reduce_38, - 1, 96, :_reduce_39, - 1, 96, :_reduce_40, + 1, 112, :_reduce_29, + 1, 112, :_reduce_30, + 1, 112, :_reduce_31, + 1, 112, :_reduce_32, + 1, 112, :_reduce_33, + 1, 112, :_reduce_34, + 1, 112, :_reduce_35, + 1, 112, :_reduce_36, + 1, 112, :_reduce_37, + 1, 112, :_reduce_38, + 1, 112, :_reduce_39, + 1, 112, :_reduce_40, 3, 101, :_reduce_41, - 3, 112, :_reduce_42, - 3, 112, :_reduce_43, - 1, 112, :_reduce_44, + 3, 113, :_reduce_42, + 3, 113, :_reduce_43, + 1, 113, :_reduce_44, 2, 105, :_reduce_45, 1, 110, :_reduce_46, - 2, 100, :_reduce_47, - 2, 100, :_reduce_48, - 2, 100, :_reduce_49, - 2, 100, :_reduce_50, - 2, 100, :_reduce_51, - 2, 100, :_reduce_52, - 2, 100, :_reduce_53, - 2, 100, :_reduce_54, - 2, 100, :_reduce_55, - 3, 100, :_reduce_56, - 3, 100, :_reduce_57, - 3, 100, :_reduce_58, - 3, 100, :_reduce_59, - 3, 100, :_reduce_60, - 3, 100, :_reduce_61, - 3, 100, :_reduce_62, - 3, 100, :_reduce_63, - 3, 100, :_reduce_64, - 3, 100, :_reduce_65, - 3, 100, :_reduce_66, - 3, 100, :_reduce_67, - 3, 100, :_reduce_68, - 3, 100, :_reduce_69, - 3, 100, :_reduce_70, - 3, 100, :_reduce_71, - 3, 100, :_reduce_72, - 3, 100, :_reduce_73, - 3, 100, :_reduce_74, - 3, 100, :_reduce_75, - 3, 100, :_reduce_76, - 3, 100, :_reduce_77, - 3, 100, :_reduce_78, - 3, 100, :_reduce_79, - 3, 100, :_reduce_80, - 3, 100, :_reduce_81, - 3, 100, :_reduce_82, - 3, 100, :_reduce_83, - 3, 100, :_reduce_84, - 3, 100, :_reduce_85, - 2, 100, :_reduce_86, - 2, 100, :_reduce_87, - 3, 100, :_reduce_88, - 4, 99, :_reduce_89, - 3, 99, :_reduce_90, - 0, 114, :_reduce_91, - 1, 114, :_reduce_92, - 1, 113, :_reduce_93, - 3, 113, :_reduce_94, - 1, 97, :_reduce_95, - 1, 97, :_reduce_96, - 1, 97, :_reduce_97, - 1, 97, :_reduce_98, - 2, 97, :_reduce_99, - 2, 97, :_reduce_100, - 2, 118, :_reduce_101, - 1, 118, :_reduce_102, - 1, 118, :_reduce_103, - 3, 120, :_reduce_104, - 5, 121, :_reduce_105, - 3, 116, :_reduce_106, + 2, 99, :_reduce_47, + 2, 99, :_reduce_48, + 2, 99, :_reduce_49, + 2, 99, :_reduce_50, + 2, 99, :_reduce_51, + 2, 99, :_reduce_52, + 2, 99, :_reduce_53, + 2, 99, :_reduce_54, + 2, 99, :_reduce_55, + 3, 99, :_reduce_56, + 3, 99, :_reduce_57, + 3, 99, :_reduce_58, + 3, 99, :_reduce_59, + 3, 99, :_reduce_60, + 3, 99, :_reduce_61, + 3, 99, :_reduce_62, + 3, 99, :_reduce_63, + 3, 99, :_reduce_64, + 3, 99, :_reduce_65, + 3, 99, :_reduce_66, + 3, 99, :_reduce_67, + 3, 99, :_reduce_68, + 3, 99, :_reduce_69, + 3, 99, :_reduce_70, + 3, 99, :_reduce_71, + 3, 99, :_reduce_72, + 3, 99, :_reduce_73, + 3, 99, :_reduce_74, + 3, 99, :_reduce_75, + 3, 99, :_reduce_76, + 3, 99, :_reduce_77, + 3, 99, :_reduce_78, + 3, 99, :_reduce_79, + 3, 99, :_reduce_80, + 3, 99, :_reduce_81, + 3, 99, :_reduce_82, + 3, 99, :_reduce_83, + 3, 99, :_reduce_84, + 3, 99, :_reduce_85, + 2, 99, :_reduce_86, + 2, 99, :_reduce_87, + 3, 99, :_reduce_88, + 4, 98, :_reduce_89, + 3, 98, :_reduce_90, + 0, 115, :_reduce_91, + 1, 115, :_reduce_92, + 1, 114, :_reduce_93, + 3, 114, :_reduce_94, + 1, 96, :_reduce_95, + 1, 96, :_reduce_96, + 1, 96, :_reduce_97, + 1, 96, :_reduce_98, + 1, 96, :_reduce_99, + 2, 96, :_reduce_100, + 2, 96, :_reduce_101, + 2, 119, :_reduce_102, + 1, 119, :_reduce_103, + 1, 119, :_reduce_104, + 3, 121, :_reduce_105, + 3, 117, :_reduce_106, 0, 122, :_reduce_107, 1, 122, :_reduce_108, 3, 122, :_reduce_109, 3, 122, :_reduce_110, - 1, 98, :_reduce_111, - 2, 98, :_reduce_112, - 1, 98, :_reduce_113, + 1, 97, :_reduce_111, + 2, 97, :_reduce_112, + 1, 97, :_reduce_113, 3, 109, :_reduce_114, - 4, 119, :_reduce_115, - 4, 119, :_reduce_116, + 4, 120, :_reduce_115, + 4, 120, :_reduce_116, 4, 123, :_reduce_117, - 3, 115, :_reduce_118, - 0, 124, :_reduce_119, - 1, 124, :_reduce_120, - 3, 124, :_reduce_121, - 3, 124, :_reduce_122, - 4, 103, :_reduce_123, - 6, 103, :_reduce_124, - 0, 125, :_reduce_125, - 3, 125, :_reduce_126, - 2, 104, :_reduce_127, - 3, 117, :_reduce_128, - 5, 106, :_reduce_129, - 4, 107, :_reduce_130, - 1, 126, :_reduce_131, - 3, 126, :_reduce_132, - 3, 127, :_reduce_133, - 5, 127, :_reduce_134, - 5, 108, :_reduce_135, - 7, 108, :_reduce_136, - 1, 128, :_reduce_137, - 2, 128, :_reduce_138, - 4, 129, :_reduce_139, - 5, 130, :_reduce_140, - 1, 131, :_reduce_141, - 2, 131, :_reduce_142, - 1, 132, :_reduce_143, - 3, 132, :_reduce_144, - 1, 133, :_reduce_145, - 2, 133, :_reduce_146, - 5, 102, :_reduce_147, - 3, 102, :_reduce_148, - 3, 102, :_reduce_149 ] + 6, 100, :_reduce_118, + 7, 100, :_reduce_119, + 3, 116, :_reduce_120, + 0, 124, :_reduce_121, + 1, 124, :_reduce_122, + 3, 124, :_reduce_123, + 3, 124, :_reduce_124, + 4, 103, :_reduce_125, + 6, 103, :_reduce_126, + 0, 125, :_reduce_127, + 3, 125, :_reduce_128, + 2, 104, :_reduce_129, + 3, 118, :_reduce_130, + 5, 106, :_reduce_131, + 4, 107, :_reduce_132, + 1, 126, :_reduce_133, + 3, 126, :_reduce_134, + 3, 127, :_reduce_135, + 5, 127, :_reduce_136, + 5, 108, :_reduce_137, + 7, 108, :_reduce_138, + 1, 128, :_reduce_139, + 2, 128, :_reduce_140, + 4, 129, :_reduce_141, + 5, 130, :_reduce_142, + 1, 131, :_reduce_143, + 2, 131, :_reduce_144, + 1, 132, :_reduce_145, + 3, 132, :_reduce_146, + 1, 133, :_reduce_147, + 2, 133, :_reduce_148, + 5, 102, :_reduce_149, + 3, 102, :_reduce_150, + 3, 102, :_reduce_151 ] -racc_reduce_n = 150 +racc_reduce_n = 152 -racc_shift_n = 268 +racc_shift_n = 275 racc_token_table = { false => 0, :error => 1, :IF => 2, @@ -1123,15 +1130,15 @@ "Terminator", "Expressions", "Expression", "PureExpression", "Statement", - "Literal", "Value", "Call", "Code", "Operation", + "Range", "Assign", "If", "Try", "Throw", "Return", @@ -1139,20 +1146,20 @@ "For", "Switch", "Extends", "Comment", "Then", + "Literal", "AssignObj", "ParamList", "CodeBody", "Array", "Object", "Parenthetical", "Accessor", "Invocation", "Index", - "Slice", "AssignList", "Super", "ArgList", "Catch", "ForVariables", @@ -1352,18 +1359,18 @@ end .,., module_eval(<<'.,.,', 'grammar.y', 122) def _reduce_42(val, _values, result) - result = AssignNode.new(val[0], val[2], :object) + result = AssignNode.new(ValueNode.new(val[0]), val[2], :object) result end .,., module_eval(<<'.,.,', 'grammar.y', 123) def _reduce_43(val, _values, result) - result = AssignNode.new(val[0], val[2], :object) + result = AssignNode.new(ValueNode.new(LiteralNode.new(val[0])), val[2], :object) result end .,., module_eval(<<'.,.,', 'grammar.y', 124) @@ -1751,32 +1758,32 @@ end .,., module_eval(<<'.,.,', 'grammar.y', 218) def _reduce_99(val, _values, result) - result = val[0] << val[1] + result = ValueNode.new(val[0]) result end .,., module_eval(<<'.,.,', 'grammar.y', 219) def _reduce_100(val, _values, result) - result = ValueNode.new(val[0], [val[1]]) + result = val[0] << val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 224) +module_eval(<<'.,.,', 'grammar.y', 220) def _reduce_101(val, _values, result) - result = AccessorNode.new(val[1]) + result = ValueNode.new(val[0], [val[1]]) result end .,., module_eval(<<'.,.,', 'grammar.y', 225) def _reduce_102(val, _values, result) - result = val[0] + result = AccessorNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'grammar.y', 226) @@ -1784,326 +1791,340 @@ result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 231) +module_eval(<<'.,.,', 'grammar.y', 227) def _reduce_104(val, _values, result) - result = IndexNode.new(val[1]) + result = SliceNode.new(val[0]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 236) +module_eval(<<'.,.,', 'grammar.y', 232) def _reduce_105(val, _values, result) - result = SliceNode.new(val[1], val[3]) + result = IndexNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 241) +module_eval(<<'.,.,', 'grammar.y', 237) def _reduce_106(val, _values, result) result = ObjectNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 246) +module_eval(<<'.,.,', 'grammar.y', 242) def _reduce_107(val, _values, result) result = [] result end .,., -module_eval(<<'.,.,', 'grammar.y', 247) +module_eval(<<'.,.,', 'grammar.y', 243) def _reduce_108(val, _values, result) result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 248) +module_eval(<<'.,.,', 'grammar.y', 244) def _reduce_109(val, _values, result) result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 249) +module_eval(<<'.,.,', 'grammar.y', 245) def _reduce_110(val, _values, result) result = val[0] << val[2] result end .,., -module_eval(<<'.,.,', 'grammar.y', 254) +module_eval(<<'.,.,', 'grammar.y', 250) def _reduce_111(val, _values, result) result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 255) +module_eval(<<'.,.,', 'grammar.y', 251) def _reduce_112(val, _values, result) result = val[1].new_instance result end .,., -module_eval(<<'.,.,', 'grammar.y', 256) +module_eval(<<'.,.,', 'grammar.y', 252) def _reduce_113(val, _values, result) result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 261) +module_eval(<<'.,.,', 'grammar.y', 257) def _reduce_114(val, _values, result) result = ExtendsNode.new(val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 266) +module_eval(<<'.,.,', 'grammar.y', 262) def _reduce_115(val, _values, result) result = CallNode.new(val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 267) +module_eval(<<'.,.,', 'grammar.y', 263) def _reduce_116(val, _values, result) result = CallNode.new(val[0], val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 272) +module_eval(<<'.,.,', 'grammar.y', 268) def _reduce_117(val, _values, result) result = CallNode.new(:super, val[2]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 277) +module_eval(<<'.,.,', 'grammar.y', 273) def _reduce_118(val, _values, result) - result = ArrayNode.new(val[1]) + result = RangeNode.new(val[1], val[4]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 282) +module_eval(<<'.,.,', 'grammar.y', 274) def _reduce_119(val, _values, result) - result = [] + result = RangeNode.new(val[1], val[5], true) result end .,., -module_eval(<<'.,.,', 'grammar.y', 283) +module_eval(<<'.,.,', 'grammar.y', 279) def _reduce_120(val, _values, result) - result = val + result = ArrayNode.new(val[1]) result end .,., module_eval(<<'.,.,', 'grammar.y', 284) def _reduce_121(val, _values, result) - result = val[0] << val[2] + result = [] result end .,., module_eval(<<'.,.,', 'grammar.y', 285) def _reduce_122(val, _values, result) - result = val[0] << val[2] + result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 290) +module_eval(<<'.,.,', 'grammar.y', 286) def _reduce_123(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', 292) +module_eval(<<'.,.,', 'grammar.y', 287) def _reduce_124(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', 297) +module_eval(<<'.,.,', 'grammar.y', 292) def _reduce_125(val, _values, result) - result = [nil, nil] + result = TryNode.new(val[1], val[2][0], val[2][1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 298) +module_eval(<<'.,.,', 'grammar.y', 294) def _reduce_126(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', 303) +module_eval(<<'.,.,', 'grammar.y', 299) def _reduce_127(val, _values, result) - result = ThrowNode.new(val[1]) + result = [nil, nil] result end .,., -module_eval(<<'.,.,', 'grammar.y', 308) +module_eval(<<'.,.,', 'grammar.y', 300) def _reduce_128(val, _values, result) - result = ParentheticalNode.new(val[1]) + result = [val[1], val[2]] result end .,., -module_eval(<<'.,.,', 'grammar.y', 314) +module_eval(<<'.,.,', 'grammar.y', 305) def _reduce_129(val, _values, result) - result = WhileNode.new(val[1], val[3]) + result = ThrowNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 321) +module_eval(<<'.,.,', 'grammar.y', 310) def _reduce_130(val, _values, result) - result = ForNode.new(val[0], val[3][0], val[2][0], val[3][1], val[2][1]) + result = ParentheticalNode.new(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 326) +module_eval(<<'.,.,', 'grammar.y', 316) def _reduce_131(val, _values, result) - result = val + result = WhileNode.new(val[1], val[3]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 327) +module_eval(<<'.,.,', 'grammar.y', 323) def _reduce_132(val, _values, result) - result = [val[0], val[2]] + result = ForNode.new(val[0], val[3][0], val[2][0], val[3][1], val[2][1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 332) +module_eval(<<'.,.,', 'grammar.y', 328) def _reduce_133(val, _values, result) - result = [val[1]] + result = val result end .,., -module_eval(<<'.,.,', 'grammar.y', 334) +module_eval(<<'.,.,', 'grammar.y', 329) def _reduce_134(val, _values, result) - result = [val[1], val[3]] + result = [val[0], val[2]] result end .,., -module_eval(<<'.,.,', 'grammar.y', 340) +module_eval(<<'.,.,', 'grammar.y', 334) def _reduce_135(val, _values, result) - result = val[3].rewrite_condition(val[1]) + result = [val[1]] result end .,., -module_eval(<<'.,.,', 'grammar.y', 342) +module_eval(<<'.,.,', 'grammar.y', 336) def _reduce_136(val, _values, result) - result = val[3].rewrite_condition(val[1]).add_else(val[5]) + result = [val[1], val[3]] result end .,., -module_eval(<<'.,.,', 'grammar.y', 347) +module_eval(<<'.,.,', 'grammar.y', 342) def _reduce_137(val, _values, result) - result = val[0] + result = val[3].rewrite_condition(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 348) +module_eval(<<'.,.,', 'grammar.y', 344) def _reduce_138(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', 353) +module_eval(<<'.,.,', 'grammar.y', 349) def _reduce_139(val, _values, result) - result = IfNode.new(val[1], val[3]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 362) +module_eval(<<'.,.,', 'grammar.y', 350) def _reduce_140(val, _values, result) - result = IfNode.new(val[2], val[4]) + result = val[0] << val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 367) +module_eval(<<'.,.,', 'grammar.y', 355) def _reduce_141(val, _values, result) - result = val[0] + result = IfNode.new(val[1], val[3]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 368) +module_eval(<<'.,.,', 'grammar.y', 364) def _reduce_142(val, _values, result) - result = val[0].add_else(val[1]) + result = IfNode.new(val[2], val[4]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 373) +module_eval(<<'.,.,', 'grammar.y', 369) def _reduce_143(val, _values, result) - result = nil + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 374) +module_eval(<<'.,.,', 'grammar.y', 370) def _reduce_144(val, _values, result) - result = val[1] + result = val[0].add_else(val[1]) result end .,., -module_eval(<<'.,.,', 'grammar.y', 379) +module_eval(<<'.,.,', 'grammar.y', 375) def _reduce_145(val, _values, result) - result = val[0] + result = nil result end .,., -module_eval(<<'.,.,', 'grammar.y', 380) +module_eval(<<'.,.,', 'grammar.y', 376) def _reduce_146(val, _values, result) - result = val[0].add_else(val[1]) + result = val[1] result end .,., -module_eval(<<'.,.,', 'grammar.y', 386) +module_eval(<<'.,.,', 'grammar.y', 381) def _reduce_147(val, _values, result) - result = IfNode.new(val[1], val[3], val[4]) + result = val[0] result end .,., -module_eval(<<'.,.,', 'grammar.y', 387) +module_eval(<<'.,.,', 'grammar.y', 382) def _reduce_148(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', 388) def _reduce_149(val, _values, result) + result = IfNode.new(val[1], val[3], val[4]) + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 389) + def _reduce_150(val, _values, result) + result = IfNode.new(val[2], Expressions.new([val[0]]), nil, {:statement => true}) + result + end +.,., + +module_eval(<<'.,.,', 'grammar.y', 390) + def _reduce_151(val, _values, result) result = IfNode.new(val[2], Expressions.new([val[0]]), nil, {:statement => true, :invert => true}) result end .,.,