diff options
Diffstat (limited to 'test/racc/regress/riml')
-rw-r--r-- | test/racc/regress/riml | 3297 |
1 files changed, 3297 insertions, 0 deletions
diff --git a/test/racc/regress/riml b/test/racc/regress/riml new file mode 100644 index 0000000000..589d9289d0 --- /dev/null +++ b/test/racc/regress/riml @@ -0,0 +1,3297 @@ +# +# DO NOT MODIFY!!!! +# This file is automatically generated by Racc 1.4.14 +# from Racc grammer file "". +# + +require 'racc/parser.rb' + + require File.expand_path("../lexer", __FILE__) + require File.expand_path("../nodes", __FILE__) + require File.expand_path("../errors", __FILE__) + require File.expand_path("../ast_rewriter", __FILE__) +module Riml + class Parser < Racc::Parser + +module_eval(<<'...end riml.y/module_eval...', 'riml.y', 592) + # This code will be put as-is in the parser class + + attr_accessor :ast_rewriter + attr_writer :options + + # The Parser and AST_Rewriter share this same hash of options + def options + @options ||= {} + end + + def self.ast_cache + @ast_cache + end + @ast_cache = {} + + # parses tokens or code into output nodes + def parse(object, ast_rewriter = Riml::AST_Rewriter.new, filename = nil, included = false) + if (ast = self.class.ast_cache[filename]) + else + if tokens?(object) + @tokens = object + elsif code?(object) + @lexer = Riml::Lexer.new(object, filename, true) + end + + begin + ast = do_parse + rescue Racc::ParseError => e + raise unless @lexer + if (invalid_token = @lexer.prev_token_is_keyword?) + warning = "#{invalid_token.inspect} is a keyword, and cannot " \ + "be used as a variable name" + end + error_msg = e.message + error_msg << "\nWARNING: #{warning}" if warning + error = Riml::ParseError.new(error_msg, @lexer.filename, @lexer.lineno) + raise error + end + self.class.ast_cache[filename] = ast if filename + end + @ast_rewriter ||= ast_rewriter + return ast unless @ast_rewriter + @ast_rewriter.ast = ast.dup + @ast_rewriter.options ||= options + @ast_rewriter.rewrite(filename, included) + @ast_rewriter.ast + end + + # get the next token from either the list of tokens provided, or + # the lexer getting the next token + def next_token + return @tokens.shift unless @lexer + token = @lexer.next_token + if token && @lexer.parser_info + @current_parser_info = token.pop + end + token + end + + private + + def tokens?(object) + Array === object + end + + def code?(object) + String === object + end + + def make_node(racc_val) + node = yield racc_val + node.parser_info = @current_parser_info + node + end +...end riml.y/module_eval... +##### State transition tables begin ### + +clist = [ +'135,211,60,265,136,139,417,418,211,211,448,211,409,411,146,56,199,89', +'272,258,409,270,409,271,37,46,48,47,37,49,44,45,64,449,37,392,412,60', +'50,70,-116,61,60,50,70,62,63,129,130,132,127,128,131,115,116,117,121', +'122,123,118,119,120,124,125,126,102,104,103,109,111,110,112,114,113', +'106,108,107,133,134,101,100,137,188,80,38,52,37,81,38,82,85,83,84,87', +'38,105,86,37,75,76,153,152,57,56,88,89,77,37,90,58,59,78,37,46,48,47', +'91,49,44,45,64,72,73,-116,211,60,50,70,79,61,48,47,319,62,63,409,274', +'-178,-178,-178,-178,60,147,273,329,316,38,-43,-43,317,331,-85,-85,-85', +'-85,48,47,38,320,258,141,-42,-42,313,272,161,60,38,139,271,29,161,38', +'52,313,54,129,130,132,127,128,131,115,116,117,121,122,123,118,119,120', +'124,125,126,102,104,103,109,111,110,112,114,113,106,108,107,133,134', +'101,100,137,182,80,277,279,164,81,164,82,85,83,84,87,164,105,86,164', +'75,76,149,277,57,56,88,89,77,149,90,58,59,78,37,46,48,47,91,49,44,45', +'64,72,73,-116,279,60,50,70,79,61,149,-204,462,62,63,384,164,164,400', +'277,60,386,385,149,401,-178,-178,-178,-178,-99,147,-48,-48,164,-176', +'-176,-176,-176,-44,-44,211,402,48,47,463,49,-98,60,50,70,29,403,38,52', +'80,54,164,216,81,139,82,85,83,84,87,149,279,86,52,75,76,164,139,57,56', +'88,89,77,-99,90,58,59,78,37,46,48,47,91,49,44,45,64,72,73,-116,-98,60', +'50,70,79,61,371,-46,-46,62,63,-175,-175,-175,-175,60,50,70,-203,-47', +'-47,-45,-45,164,153,152,129,130,132,211,215,48,47,371,49,191,192,193', +'194,305,433,366,432,129,130,132,29,60,38,52,80,54,406,370,81,60,82,85', +'83,84,87,149,465,86,99,75,76,153,152,57,56,88,89,77,105,90,58,59,78', +'37,46,48,47,91,49,44,45,64,72,73,-116,105,60,50,70,79,61,164,354,323', +'62,63,-175,-175,-175,-175,417,437,153,152,60,211,195,211,211,427,60', +'139,430,92,431,434,435,438,440,320,441,442,443,211,129,130,132,127,128', +'131,445,29,105,38,52,446,54,129,130,132,127,128,131,115,116,117,121', +'122,123,118,119,120,124,125,126,102,104,103,109,111,110,112,114,113', +'106,108,107,133,134,101,100,137,105,80,129,130,132,81,371,82,85,83,84', +'87,371,105,86,105,75,76,149,342,57,56,88,89,77,105,90,58,59,78,37,46', +'48,47,91,49,44,45,64,72,73,302,346,60,50,70,79,61,328,327,105,62,63', +'326,312,129,130,132,127,128,131,115,116,117,121,122,123,118,119,120', +'124,125,126,102,104,103,109,111,110,112,114,113,106,108,107,133,134', +'101,29,139,38,52,80,54,105,306,81,305,82,85,83,84,87,105,333,86,139', +'75,76,149,357,57,56,88,89,77,295,90,58,59,78,37,46,48,47,91,49,44,45', +'64,72,73,294,149,60,50,70,79,61,361,258,362,62,63,363,276,129,130,132', +'127,128,131,115,116,117,121,122,123,118,119,120,124,125,126,102,104', +'103,109,111,110,112,114,113,106,108,107,133,134,60,29,211,38,52,80,54', +'458,435,81,368,82,85,83,84,87,105,258,86,269,75,76,374,269,57,56,88', +'89,77,269,90,58,59,78,37,46,48,47,91,49,44,45,64,72,73,377,267,60,50', +'70,79,61,379,380,263,62,63,262,393,129,130,132,127,128,131,115,116,117', +'121,122,123,118,119,120,124,125,126,302,394,218,468,397,139,142,269', +',,,129,130,132,,29,,38,52,80,54,,,81,-245,82,85,83,84,87,105,,86,,75', +'76,,,57,56,88,89,77,,90,58,59,78,37,46,48,47,91,49,44,45,64,72,73,105', +',60,50,70,79,61,,,,62,63,,,129,130,132,127,128,131,115,116,117,121,122', +'123,118,119,120,124,125,126,,,,,,,,,,,,129,130,132,,29,,38,52,80,54', +',,81,,82,85,83,84,87,105,,86,,75,76,,,57,56,88,89,77,,90,58,59,78,37', +'46,48,47,91,49,44,45,64,72,73,105,,60,50,70,79,61,,,,62,63,419,,,,,', +',,,,,,,,,,,,,,,,,,,,,,,,,,,,,29,,38,52,,54,,129,130,132,127,128,131', +'115,116,117,121,122,123,118,119,120,124,125,126,102,104,103,109,111', +'110,112,114,113,106,108,107,133,134,101,100,137,414,,,,,,,,,146,56,', +'89,105,,90,,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,129,130', +'132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126,102', +'104,103,109,111,110,112,114,113,106,108,107,133,134,101,100,137,29,', +',52,,54,,261,146,56,,89,,105,90,,,,,46,48,47,,49,44,45,64,,,,,60,50', +'70,,61,,,,62,63,180,146,56,,89,,,90,,,,,46,48,47,,49,44,45,64,,,,,60', +'50,70,,61,,,,62,63,,29,,,52,,54,,261,129,130,132,127,128,131,115,116', +'117,121,122,123,118,119,120,124,125,126,,,,365,146,56,,89,29,-119,90', +'52,,54,,46,48,47,,49,44,45,64,,,,,60,50,70,105,61,,,,62,63,180,146,56', +',89,,,90,,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,,29,146', +'56,52,89,54,,90,,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63', +'29,-121,,52,,54,,,,129,130,132,127,128,131,115,116,117,121,122,123,118', +'119,120,124,125,126,,,,180,146,56,,89,29,,90,52,,54,350,46,48,47,,49', +'44,45,64,,,,,60,50,70,105,61,,,,62,63,180,146,56,,89,,,90,,,,,46,48', +'47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,,29,-119,,52,,54,,,129,130', +'132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126,,,,180', +'146,56,,89,29,-119,90,52,,54,,46,48,47,,49,44,45,64,,,,,60,50,70,105', +'61,,,,62,63,180,146,56,,89,,,90,,,,,46,48,47,,49,44,45,64,,,,,60,50', +'70,,61,,,,62,63,,29,-119,,52,,54,,,129,130,132,127,128,131,115,116,117', +'121,122,123,118,119,120,124,125,126,,,,180,146,56,,89,29,-119,90,52', +',54,,46,48,47,,49,44,45,64,,,,,60,50,70,105,61,,,,62,63,180,146,56,', +'89,,,90,,,,,46,48,47,,49,44,45,64,,,-116,,60,50,70,,61,,,,62,63,,29', +'-119,,52,,54,,129,130,132,127,128,131,115,116,117,121,122,123,118,119', +'120,124,125,126,,,,180,146,56,,89,,176,90,,52,,54,46,48,47,,49,44,45', +'64,,,,,60,50,70,105,61,,,,62,63,180,146,56,,89,,,90,,,,,46,48,47,,49', +'44,45,64,,,,,60,50,70,,61,,,,62,63,,29,-119,,52,,54,,,129,130,132,127', +'128,131,115,116,117,121,122,123,118,119,120,124,125,126,,,,180,146,56', +',89,29,-119,90,52,,54,,46,48,47,,49,44,45,64,,,,,60,50,70,105,61,,,', +'62,63,146,56,,89,,,90,,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,', +'62,63,,,29,-119,,52,,54,129,130,132,127,128,131,115,116,117,121,122', +'123,118,119,120,124,125,126,,,,,146,56,,89,,29,90,,52,,54,46,48,47,', +'49,44,45,64,,,,,60,50,70,105,61,,,,62,63,146,56,,89,,,90,,,,,46,48,47', +',49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46', +'48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54', +',,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52', +'90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89', +',52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56', +'29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146', +'56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63', +'146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,', +'62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,', +'61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50', +'70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,', +'60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64', +',,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44', +'45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,', +'49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48', +'47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,', +'46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90', +'54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,', +'52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29', +'89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146', +'56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63', +'146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,', +'62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,', +'61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50', +'70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,', +'60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64', +',,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44', +'45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,', +'49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48', +'47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,', +'46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90', +'54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,,,29,,,52,348', +'54,129,130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125', +'126,,,,,146,56,,89,,29,90,,52,,54,46,48,47,,49,44,45,64,,,,,60,50,70', +'105,61,,,,62,63,146,56,,89,,,90,,,,,46,48,47,,49,44,45,64,,,,,60,50', +'70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,', +'60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64', +',,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44', +'45,64,,,-116,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48', +'47,,49,44,45,64,,,-116,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54', +',,167,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,', +'52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,165', +'89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146', +'56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63', +'146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,-116,,60,50,70,,61', +',,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70', +',61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60', +'50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,', +',,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45', +'64,,,-116,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47', +',49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46', +'48,47,,49,44,45,64,,,-116,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90', +'54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,', +'52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29', +'89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146', +'56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63', +'146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,', +'62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,', +'61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50', +'70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,', +'60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64', +',,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44', +'45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,', +'49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48', +'47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,', +'46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90', +'54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,', +'52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29', +'89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146', +'56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63', +'146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,', +'62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,', +'61,,,,62,63,146,56,29,89,,52,90,288,,,,46,48,47,,49,44,45,64,,,,,60', +'50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,', +',-116,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46,48,47,,49', +'44,45,64,,,-116,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,54,,,,46', +'48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52,90,288', +',,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89,,52', +'90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56,29,89', +',52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146,56', +'29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63,146', +'56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,,62,63', +'146,56,29,89,,52,90,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61,,,', +'62,63,146,56,29,89,,52,,54,,,,46,48,47,,49,44,45,64,,,,,60,50,70,,61', +',,,62,63,146,56,29,89,,52,,54,,,,46,48,47,,49,44,45,,,,,,60,50,70,,61', +',,,62,63,146,56,188,89,,52,,,,,,46,48,47,,49,44,45,,,,,,60,50,70,,61', +',,,62,63,,,171,,,173,,,,,,,,,,,,,,,,211,,,,,,129,130,132,127,128,131', +',,188,,,52,129,130,132,127,128,131,115,116,117,121,122,123,118,119,120', +'124,125,126,102,104,103,109,111,110,112,114,113,106,108,107,133,134', +'101,100,137,460,105,,,,,129,130,132,127,128,131,,105,,,,,129,130,132', +'127,128,131,115,116,117,121,122,123,118,119,120,124,125,126,102,104', +'103,109,111,110,112,114,113,106,108,107,133,134,101,100,137,211,105', +',,,,129,130,132,127,128,131,,105,,,,,129,130,132,127,128,131,115,116', +'117,121,122,123,118,119,120,124,125,126,102,104,103,109,111,110,112', +'114,113,106,108,107,133,134,101,100,137,211,105,,,,,129,130,132,127', +'128,131,,105,,,,,129,130,132,127,128,131,115,116,117,121,122,123,118', +'119,120,124,125,126,102,104,103,109,111,110,112,114,113,106,108,107', +'133,134,101,100,137,455,105,,,,,129,130,132,127,128,131,,105,,,,,129', +'130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126', +'102,104,103,109,111,110,112,114,113,106,108,107,133,134,101,100,137', +'211,105,,,,,129,130,132,127,128,131,,105,,,,,129,130,132,127,128,131', +'115,116,117,121,122,123,118,119,120,124,125,126,102,104,103,109,111', +'110,112,114,113,106,108,107,133,134,101,100,137,211,105,,,,129,130,132', +'127,128,131,,,105,,,,,129,130,132,127,128,131,115,116,117,121,122,123', +'118,119,120,124,125,126,102,104,103,109,111,110,112,114,113,106,108', +'107,133,134,101,100,137,105,129,130,132,127,128,131,129,130,132,127', +'128,131,105,129,130,132,127,128,131,115,116,117,121,122,123,118,119', +'120,124,125,126,102,104,103,109,111,110,112,114,113,106,108,107,133', +'134,101,100,137,105,,,,,,105,,,,,,,105,129,130,132,127,128,131,115,116', +'117,121,122,123,118,119,120,124,125,126,102,104,103,109,111,110,112', +'114,113,106,108,107,133,134,101,100,137,,,,,,,266,129,130,132,127,128', +'131,105,129,130,132,127,128,131,115,116,117,121,122,123,118,119,120', +'124,125,126,102,104,103,109,111,110,112,114,113,106,108,107,133,134', +'101,100,137,,,,,,,105,129,130,132,127,128,131,105,129,130,132,127,128', +'131,115,116,117,121,122,123,118,119,120,124,125,126,102,104,103,109', +'111,110,112,114,113,106,108,107,133,134,101,100,137,,,,,,,105,,,,,,275', +'105,129,130,132,127,128,131,115,116,117,121,122,123,118,119,120,124', +'125,126,102,104,103,109,111,110,112,114,113,106,108,107,133,134,101', +'100,137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117,121,122', +'123,118,119,120,124,125,126,102,104,103,109,111,110,112,114,113,106', +'108,107,133,134,101,100,137,,,,,,,,,,,,,,105,129,130,132,127,128,131', +'115,116,117,121,122,123,118,119,120,124,125,126,102,104,103,109,111', +'110,112,114,113,106,108,107,133,134,101,100,137,,,,,,,,,,,,,,105,129', +'130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126', +'102,104,103,109,111,110,112,114,113,106,108,107,133,134,101,100,137', +',,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117,121,122,123,118', +'119,120,124,125,126,129,130,132,127,128,131,115,116,117,121,122,123', +'118,119,120,124,125,126,,,,,,,,,,,,,105,,,,,,,,,,,,,,,,,,105,129,130', +'132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126,102', +'104,103,109,111,110,112,114,113,106,108,107,,,,,,,,,,,,,,,,,,,105,129', +'130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126', +'102,104,103,109,111,110,112,114,113,106,108,107,,,,,,,,,,,,,,,,,,,105', +'129,130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125', +'126,102,104,103,109,111,110,112,114,113,106,108,107,133,134,101,100', +'137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117,121,122,123', +'118,119,120,124,125,126,102,104,103,109,111,110,112,114,113,106,108', +'107,133,134,101,100,137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115', +'116,117,121,122,123,118,119,120,124,125,126,102,104,103,109,111,110', +'112,114,113,106,108,107,133,134,101,100,137,,,,,,,,,,,,,337,105,129', +'130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126', +'102,104,103,109,111,110,112,114,113,106,108,107,133,134,101,100,137', +',,,,,,,,,340,,,341,105,129,130,132,127,128,131,115,116,117,121,122,123', +'118,119,120,124,125,126,102,104,103,109,111,110,112,114,113,106,108', +'107,133,134,101,100,137,,,,,,,266,,,,,,,105,129,130,132,127,128,131', +'115,116,117,121,122,123,118,119,120,124,125,126,102,104,103,109,111', +'110,112,114,113,106,108,107,133,134,101,100,137,,,,,,,360,,,,,,,105', +'129,130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125', +'126,102,104,103,109,111,110,112,114,113,106,108,107,133,134,101,100', +'137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117,121,122,123', +'118,119,120,124,125,126,102,104,103,109,111,110,112,114,113,106,108', +'107,133,134,101,100,137,,,,,,,360,,,,,,,105,129,130,132,127,128,131', +'115,116,117,121,122,123,118,119,120,124,125,126,102,104,103,109,111', +'110,112,114,113,106,108,107,133,134,101,100,137,,,,,,,,,,,,,,105,129', +'130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126', +'102,104,103,109,111,110,112,114,113,106,108,107,133,134,101,100,137', +',,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117,121,122,123,118', +'119,120,124,125,126,102,104,103,109,111,110,112,114,113,106,108,107', +'133,134,101,100,137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115,116', +'117,121,122,123,118,119,120,124,125,126,102,104,103,109,111,110,112', +'114,113,106,108,107,133,134,101,100,137,,,,,,,,,,,,,,105,129,130,132', +'127,128,131,115,116,117,121,122,123,118,119,120,124,125,126,102,104', +'103,109,111,110,112,114,113,106,108,107,133,134,101,100,137,,,,,,,,', +',396,,,341,105,129,130,132,127,128,131,115,116,117,121,122,123,118,119', +'120,124,125,126,102,104,103,109,111,110,112,114,113,106,108,107,133', +'134,101,100,137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117', +'121,122,123,118,119,120,124,125,126,102,104,103,109,111,110,112,114', +'113,106,108,107,133,134,101,100,137,,,,,,,,,,399,,,,105,129,130,132', +'127,128,131,115,116,117,121,122,123,118,119,120,124,125,126,102,104', +'103,109,111,110,112,114,113,106,108,107,133,134,101,100,137,,,,,,,,', +',,,,,105,129,130,132,127,128,131,115,116,117,121,122,123,118,119,120', +'124,125,126,102,104,103,109,111,110,112,114,113,106,108,107,133,134', +'101,100,137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117,121', +'122,123,118,119,120,124,125,126,102,104,103,109,111,110,112,114,113', +'106,108,107,133,134,101,100,137,,,,,,,,,,,,,,105,129,130,132,127,128', +'131,115,116,117,121,122,123,118,119,120,124,125,126,102,104,103,109', +'111,110,112,114,113,106,108,107,133,134,101,100,137,,,,,,,,,,,,,,105', +'129,130,132,127,128,131,115,116,117,121,122,123,118,119,120,124,125', +'126,102,104,103,109,111,110,112,114,113,106,108,107,133,134,101,100', +'137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117,121,122,123', +'118,119,120,124,125,126,102,104,103,109,111,110,112,114,113,106,108', +'107,133,134,101,100,137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115', +'116,117,121,122,123,118,119,120,124,125,126,102,104,103,109,111,110', +'112,114,113,106,108,107,133,134,101,100,137,,,,,,,,,,,,,,105,129,130', +'132,127,128,131,115,116,117,121,122,123,118,119,120,124,125,126,102', +'104,103,109,111,110,112,114,113,106,108,107,133,134,101,100,137,,,,', +',,,,,,,,,105,129,130,132,127,128,131,115,116,117,121,122,123,118,119', +'120,124,125,126,102,104,103,109,111,110,112,114,113,106,108,107,133', +'134,101,100,137,,,,,,,,,,,,,,105,129,130,132,127,128,131,115,116,117', +'121,122,123,118,119,120,124,125,126,102,104,103,109,111,110,112,114', +'113,106,108,107,133,134,101,100,137,,,,,,,,,,,,,,105' ] + racc_action_table = arr = ::Array.new(6677, 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 = [ +'22,464,74,143,22,143,376,376,333,451,433,369,464,370,99,99,74,99,155', +'345,451,155,369,155,3,99,99,99,461,99,99,99,99,433,376,333,370,99,99', +'99,8,99,8,8,8,99,99,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22', +'22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,99,95,3,99', +'466,95,461,95,95,95,95,95,376,22,95,454,95,95,287,287,95,95,95,95,95', +'332,95,95,95,95,93,95,95,95,95,95,95,95,95,95,95,95,447,95,95,95,95', +'95,182,182,203,95,95,447,157,283,283,283,283,182,283,157,210,202,466', +'283,283,202,210,138,138,138,138,59,59,454,203,138,24,287,287,213,298', +'175,59,332,23,298,95,55,93,95,200,95,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,203,203,59,0,161,278,213,0,175,0,0,0', +'0,0,55,203,0,200,0,0,286,277,0,0,0,0,0,284,0,0,0,0,0,0,0,0,0,0,0,0,0', +'0,0,0,314,0,0,0,0,0,360,161,456,0,0,330,161,278,353,313,86,330,330,266', +'355,31,31,31,31,403,31,286,286,277,42,42,42,42,284,284,386,356,386,386', +'457,386,430,73,73,73,0,359,0,0,2,0,314,92,2,360,2,2,2,2,2,285,162,2', +'86,2,2,313,266,2,2,2,2,2,403,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,430,2,2', +'2,2,2,315,281,281,2,2,285,285,285,285,72,72,72,162,282,282,285,285,162', +'40,40,186,186,186,331,90,331,331,458,331,66,66,66,66,304,410,304,410', +'187,187,187,2,89,2,2,211,2,367,315,211,368,211,211,211,211,211,33,459', +'211,19,211,211,181,181,211,211,211,211,211,186,211,211,211,211,211,211', +'211,211,211,211,211,211,211,211,211,211,187,211,211,211,211,211,290', +'290,204,211,211,33,33,33,33,416,416,387,387,88,87,70,385,389,391,392', +'43,404,1,408,411,412,417,420,204,421,422,423,425,235,235,235,235,235', +'235,428,211,252,211,211,429,211,204,204,204,204,204,204,204,204,204', +'204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204,204', +'204,204,204,204,204,204,204,204,204,235,460,247,247,247,460,432,460', +'460,460,460,460,434,204,460,250,460,460,35,260,460,460,460,460,460,249', +'460,460,460,460,460,460,460,460,460,460,460,460,460,460,460,178,268', +'460,460,460,460,460,209,208,247,460,460,207,199,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,460,189,460,460,455,460', +'185,184,455,183,455,455,455,455,455,220,212,455,174,455,455,170,293', +'455,455,455,455,455,169,455,455,455,455,455,455,455,455,455,455,455', +'455,455,455,455,166,32,455,455,455,455,455,297,299,300,455,455,301,160', +'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,305,455', +'445,455,455,94,455,448,449,94,312,94,94,94,94,94,221,154,94,151,94,94', +'318,150,94,94,94,94,94,148,94,94,94,94,94,94,94,94,94,94,94,94,94,94', +'94,322,146,94,94,94,94,94,324,325,141,94,94,140,334,222,222,222,222', +'222,222,222,222,222,222,222,222,222,222,222,222,222,222,335,336,97,467', +'339,96,27,344,,,,248,248,248,,94,,94,94,320,94,,,320,320,320,320,320', +'320,320,222,,320,,320,320,,,320,320,320,320,320,,320,320,320,320,320', +'320,320,320,320,320,320,320,320,320,320,248,,320,320,320,320,320,,,', +'320,320,,,223,223,223,223,223,223,223,223,223,223,223,223,223,223,223', +'223,223,223,,,,,,,,,,,,251,251,251,,320,,320,320,438,320,,,438,,438', +'438,438,438,438,223,,438,,438,438,,,438,438,438,438,438,,438,438,438', +'438,438,438,438,438,438,438,438,438,438,438,438,251,,438,438,438,438', +'438,,,,438,438,378,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,438,,438,438,,438', +',378,378,378,378,378,378,378,378,378,378,378,378,378,378,378,378,378', +'378,378,378,378,378,378,378,378,378,378,378,378,378,378,378,378,378', +'378,375,,,,,,,,,258,258,,258,378,,258,,,,,258,258,258,,258,258,258,258', +',,,,258,258,258,,258,,,,258,258,375,375,375,375,375,375,375,375,375', +'375,375,375,375,375,375,375,375,375,375,375,375,375,375,375,375,375', +'375,375,375,375,375,375,375,375,375,258,,,258,,258,,258,139,139,,139', +',375,139,,,,,139,139,139,,139,139,139,139,,,,,139,139,139,,139,,,,139', +'139,295,295,295,,295,,,295,,,,,295,295,295,,295,295,295,295,,,,,295', +'295,295,,295,,,,295,295,,139,,,139,,139,,139,224,224,224,224,224,224', +'224,224,224,224,224,224,224,224,224,224,224,224,,,,302,302,302,,302', +'295,295,302,295,,295,,302,302,302,,302,302,302,302,,,,,302,302,302,224', +'302,,,,302,302,215,215,215,,215,,,215,,,,,215,215,215,,215,215,215,215', +',,,,215,215,215,,215,,,,215,215,,302,274,274,302,274,302,,274,,,,,274', +'274,274,,274,274,274,274,,,,,274,274,274,,274,,,,274,274,215,215,,215', +',215,,,,226,226,226,226,226,226,226,226,226,226,226,226,226,226,226', +'226,226,226,,,,267,267,267,,267,274,,267,274,,274,274,267,267,267,,267', +'267,267,267,,,,,267,267,267,226,267,,,,267,267,176,176,176,,176,,,176', +',,,,176,176,176,,176,176,176,176,,,,,176,176,176,,176,,,,176,176,,267', +'267,,267,,267,,,227,227,227,227,227,227,227,227,227,227,227,227,227', +'227,227,227,227,227,,,,362,362,362,,362,176,176,362,176,,176,,362,362', +'362,,362,362,362,362,,,,,362,362,362,227,362,,,,362,362,147,147,147', +',147,,,147,,,,,147,147,147,,147,147,147,147,,,,,147,147,147,,147,,,', +'147,147,,362,362,,362,,362,,,228,228,228,228,228,228,228,228,228,228', +'228,228,228,228,228,228,228,228,,,,276,276,276,,276,147,147,276,147', +',147,,276,276,276,,276,276,276,276,,,,,276,276,276,228,276,,,,276,276', +'58,58,58,,58,,,58,,,,,58,58,58,,58,58,58,58,,,58,,58,58,58,,58,,,,58', +'58,,276,276,,276,,276,,229,229,229,229,229,229,229,229,229,229,229,229', +'229,229,229,229,229,229,,,,171,171,171,,171,,58,171,,58,,58,171,171', +'171,,171,171,171,171,,,,,171,171,171,229,171,,,,171,171,393,393,393', +',393,,,393,,,,,393,393,393,,393,393,393,393,,,,,393,393,393,,393,,,', +'393,393,,171,171,,171,,171,,,230,230,230,230,230,230,230,230,230,230', +'230,230,230,230,230,230,230,230,,,,165,165,165,,165,393,393,165,393', +',393,,165,165,165,,165,165,165,165,,,,,165,165,165,230,165,,,,165,165', +'109,109,,109,,,109,,,,,109,109,109,,109,109,109,109,,,,,109,109,109', +',109,,,,109,109,,,165,165,,165,,165,231,231,231,231,231,231,231,231', +'231,231,231,231,231,231,231,231,231,231,,,,,110,110,,110,,109,110,,109', +',109,110,110,110,,110,110,110,110,,,,,110,110,110,231,110,,,,110,110', +'111,111,,111,,,111,,,,,111,111,111,,111,111,111,111,,,,,111,111,111', +',111,,,,111,111,112,112,110,112,,110,112,110,,,,112,112,112,,112,112', +'112,112,,,,,112,112,112,,112,,,,112,112,113,113,111,113,,111,113,111', +',,,113,113,113,,113,113,113,113,,,,,113,113,113,,113,,,,113,113,114', +'114,112,114,,112,114,112,,,,114,114,114,,114,114,114,114,,,,,114,114', +'114,,114,,,,114,114,115,115,113,115,,113,115,113,,,,115,115,115,,115', +'115,115,115,,,,,115,115,115,,115,,,,115,115,116,116,114,116,,114,116', +'114,,,,116,116,116,,116,116,116,116,,,,,116,116,116,,116,,,,116,116', +'117,117,115,117,,115,117,115,,,,117,117,117,,117,117,117,117,,,,,117', +'117,117,,117,,,,117,117,118,118,116,118,,116,118,116,,,,118,118,118', +',118,118,118,118,,,,,118,118,118,,118,,,,118,118,119,119,117,119,,117', +'119,117,,,,119,119,119,,119,119,119,119,,,,,119,119,119,,119,,,,119', +'119,120,120,118,120,,118,120,118,,,,120,120,120,,120,120,120,120,,,', +',120,120,120,,120,,,,120,120,121,121,119,121,,119,121,119,,,,121,121', +'121,,121,121,121,121,,,,,121,121,121,,121,,,,121,121,122,122,120,122', +',120,122,120,,,,122,122,122,,122,122,122,122,,,,,122,122,122,,122,,', +',122,122,123,123,121,123,,121,123,121,,,,123,123,123,,123,123,123,123', +',,,,123,123,123,,123,,,,123,123,124,124,122,124,,122,124,122,,,,124', +'124,124,,124,124,124,124,,,,,124,124,124,,124,,,,124,124,125,125,123', +'125,,123,125,123,,,,125,125,125,,125,125,125,125,,,,,125,125,125,,125', +',,,125,125,126,126,124,126,,124,126,124,,,,126,126,126,,126,126,126', +'126,,,,,126,126,126,,126,,,,126,126,127,127,125,127,,125,127,125,,,', +'127,127,127,,127,127,127,127,,,,,127,127,127,,127,,,,127,127,128,128', +'126,128,,126,128,126,,,,128,128,128,,128,128,128,128,,,,,128,128,128', +',128,,,,128,128,129,129,127,129,,127,129,127,,,,129,129,129,,129,129', +'129,129,,,,,129,129,129,,129,,,,129,129,130,130,128,130,,128,130,128', +',,,130,130,130,,130,130,130,130,,,,,130,130,130,,130,,,,130,130,131', +'131,129,131,,129,131,129,,,,131,131,131,,131,131,131,131,,,,,131,131', +'131,,131,,,,131,131,132,132,130,132,,130,132,130,,,,132,132,132,,132', +'132,132,132,,,,,132,132,132,,132,,,,132,132,133,133,131,133,,131,133', +'131,,,,133,133,133,,133,133,133,133,,,,,133,133,133,,133,,,,133,133', +'134,134,132,134,,132,134,132,,,,134,134,134,,134,134,134,134,,,,,134', +'134,134,,134,,,,134,134,135,135,133,135,,133,135,133,,,,135,135,135', +',135,135,135,135,,,,,135,135,135,,135,,,,135,135,136,136,134,136,,134', +'136,134,,,,136,136,136,,136,136,136,136,,,,,136,136,136,,136,,,,136', +'136,137,137,135,137,,135,137,135,,,,137,137,137,,137,137,137,137,,,', +',137,137,137,,137,,,,137,137,85,85,136,85,,136,85,136,,,,85,85,85,,85', +'85,85,85,,,,,85,85,85,,85,,,,85,85,272,272,137,272,,137,272,137,,,,272', +'272,272,,272,272,272,272,,,,,272,272,272,,272,,,,272,272,270,270,85', +'270,,85,270,85,,,,270,270,270,,270,270,270,270,,,,,270,270,270,,270', +',,,270,270,,,272,,,272,272,272,232,232,232,232,232,232,232,232,232,232', +'232,232,232,232,232,232,232,232,,,,,29,29,,29,,270,29,,270,,270,29,29', +'29,,29,29,29,29,,,,,29,29,29,232,29,,,,29,29,437,437,,437,,,437,,,,', +'437,437,437,,437,437,437,437,,,,,437,437,437,,437,,,,437,437,435,435', +'29,435,,29,435,29,,,,435,435,435,,435,435,435,435,,,,,435,435,435,,435', +',,,435,435,418,418,437,418,,437,418,437,,,,418,418,418,,418,418,418', +'418,,,,,418,418,418,,418,,,,418,418,52,52,435,52,,435,52,435,,,,52,52', +'52,,52,52,52,52,,,52,,52,52,52,,52,,,,52,52,54,54,418,54,,418,54,418', +',,,54,54,54,,54,54,54,54,,,54,,54,54,54,,54,,,,54,54,56,56,52,56,,52', +'56,52,,,56,56,56,56,,56,56,56,56,,,,,56,56,56,,56,,,,56,56,61,61,54', +'61,,54,61,54,,,,61,61,61,,61,61,61,61,,,,,61,61,61,,61,,,,61,61,62,62', +'56,62,,56,62,56,,,,62,62,62,,62,62,62,62,,,,,62,62,62,,62,,,,62,62,63', +'63,61,63,,61,63,61,,,,63,63,63,,63,63,63,63,,,,,63,63,63,,63,,,,63,63', +'78,78,62,78,,62,78,62,,,,78,78,78,,78,78,78,78,,,78,,78,78,78,,78,,', +',78,78,80,80,63,80,,63,80,63,,,,80,80,80,,80,80,80,80,,,,,80,80,80,', +'80,,,,80,80,81,81,78,81,,78,81,78,,,,81,81,81,,81,81,81,81,,,,,81,81', +'81,,81,,,,81,81,82,82,80,82,,80,82,80,,,,82,82,82,,82,82,82,82,,,,,82', +'82,82,,82,,,,82,82,261,261,81,261,,81,261,81,,,,261,261,261,,261,261', +'261,261,,,261,,261,261,261,,261,,,,261,261,365,365,82,365,,82,365,82', +',,,365,365,365,,365,365,365,365,,,,,365,365,365,,365,,,,365,365,341', +'341,261,341,,261,341,261,,,,341,341,341,,341,341,341,341,,,341,,341', +'341,341,,341,,,,341,341,337,337,365,337,,365,337,365,,,,337,337,337', +',337,337,337,337,,,,,337,337,337,,337,,,,337,337,100,100,341,100,,341', +'100,341,,,,100,100,100,,100,100,100,100,,,,,100,100,100,,100,,,,100', +'100,101,101,337,101,,337,101,337,,,,101,101,101,,101,101,101,101,,,', +',101,101,101,,101,,,,101,101,102,102,100,102,,100,102,100,,,,102,102', +'102,,102,102,102,102,,,,,102,102,102,,102,,,,102,102,103,103,101,103', +',101,103,101,,,,103,103,103,,103,103,103,103,,,,,103,103,103,,103,,', +',103,103,104,104,102,104,,102,104,102,,,,104,104,104,,104,104,104,104', +',,,,104,104,104,,104,,,,104,104,105,105,103,105,,103,105,103,,,,105', +'105,105,,105,105,105,105,,,,,105,105,105,,105,,,,105,105,106,106,104', +'106,,104,106,104,,,,106,106,106,,106,106,106,106,,,,,106,106,106,,106', +',,,106,106,107,107,105,107,,105,107,105,,,,107,107,107,,107,107,107', +'107,,,,,107,107,107,,107,,,,107,107,108,108,106,108,,106,108,106,,,', +'108,108,108,,108,108,108,108,,,,,108,108,108,,108,,,,108,108,328,328', +'107,328,,107,328,107,,,,328,328,328,,328,328,328,328,,,,,328,328,328', +',328,,,,328,328,327,327,108,327,,108,327,108,,,,327,327,327,,327,327', +'327,327,,,,,327,327,327,,327,,,,327,327,326,326,328,326,,328,326,328', +',,,326,326,326,,326,326,326,326,,,,,326,326,326,,326,,,,326,326,323', +'323,327,323,,327,323,327,,,,323,323,323,,323,323,323,323,,,,,323,323', +'323,,323,,,,323,323,319,319,326,319,,326,319,326,,,,319,319,319,,319', +'319,319,319,,,,,319,319,319,,319,,,,319,319,317,317,323,317,,323,317', +'323,,,,317,317,317,,317,317,317,317,,,,,317,317,317,,317,,,,317,317', +'316,316,319,316,,319,316,319,,,,316,316,316,,316,316,316,316,,,,,316', +'316,316,,316,,,,316,316,164,164,317,164,,317,164,317,,,,164,164,164', +',164,164,164,164,,,,,164,164,164,,164,,,,164,164,294,294,316,294,,316', +'294,316,,,,294,294,294,,294,294,294,294,,,,,294,294,294,,294,,,,294', +'294,291,291,164,291,,164,291,164,,,,291,291,291,,291,291,291,291,,,', +',291,291,291,,291,,,,291,291,173,173,294,173,,294,173,294,,,,173,173', +'173,,173,173,173,173,,,173,,173,173,173,,173,,,,173,173,288,288,291', +'288,,291,288,291,,,,288,288,288,,288,288,288,288,,,288,,288,288,288', +',288,,,,288,288,180,180,173,180,,173,180,173,,,,180,180,180,,180,180', +'180,180,,,,,180,180,180,,180,,,,180,180,188,188,288,188,,288,188,288', +',,,188,188,188,,188,188,188,188,,,,,188,188,188,,188,,,,188,188,191', +'191,180,191,,180,191,180,,,,191,191,191,,191,191,191,191,,,,,191,191', +'191,,191,,,,191,191,192,192,188,192,,188,192,188,,,,192,192,192,,192', +'192,192,192,,,,,192,192,192,,192,,,,192,192,193,193,191,193,,191,193', +'191,,,,193,193,193,,193,193,193,193,,,,,193,193,193,,193,,,,193,193', +'194,194,192,194,,192,194,192,,,,194,194,194,,194,194,194,194,,,,,194', +'194,194,,194,,,,194,194,275,275,193,275,,193,275,193,,,,275,275,275', +',275,275,275,275,,,,,275,275,275,,275,,,,275,275,142,142,194,142,,194', +',194,,,,142,142,142,,142,142,142,142,,,,,142,142,142,,142,,,,142,142', +'57,57,275,57,,275,,275,,,,57,57,57,,57,57,57,,,,,,57,57,57,,57,,,,57', +'57,64,64,142,64,,142,,,,,,64,64,64,,64,64,64,,,,,,64,64,64,,64,,,,64', +'64,,,57,,,57,,,,,,,,,,,,,,,,205,,,,,,236,236,236,236,236,236,,,64,,', +'64,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205', +'205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205,205', +'205,453,236,,,,,237,237,237,237,237,237,,205,,,,,453,453,453,453,453', +'453,453,453,453,453,453,453,453,453,453,453,453,453,453,453,453,453', +'453,453,453,453,453,453,453,453,453,453,453,453,453,382,237,,,,,238', +'238,238,238,238,238,,453,,,,,382,382,382,382,382,382,382,382,382,382', +'382,382,382,382,382,382,382,382,382,382,382,382,382,382,382,382,382', +'382,382,382,382,382,382,382,382,383,238,,,,,239,239,239,239,239,239', +',382,,,,,383,383,383,383,383,383,383,383,383,383,383,383,383,383,383', +'383,383,383,383,383,383,383,383,383,383,383,383,383,383,383,383,383', +'383,383,383,439,239,,,,,240,240,240,240,240,240,,383,,,,,439,439,439', +'439,439,439,439,439,439,439,439,439,439,439,439,439,439,439,439,439', +'439,439,439,439,439,439,439,439,439,439,439,439,439,439,439,381,240', +',,,,241,241,241,241,241,241,,439,,,,,381,381,381,381,381,381,381,381', +'381,381,381,381,381,381,381,381,381,381,381,381,381,381,381,381,381', +'381,381,381,381,381,381,381,381,381,381,206,241,,,,242,242,242,242,242', +'242,,,381,,,,,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,206,206,242,243,243,243,243,243,243,244,244,244,244,244,244', +'206,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289', +'289,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289,289', +'289,289,243,,,,,,244,,,,,,,289,145,145,145,145,145,145,145,145,145,145', +'145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145', +'145,145,145,145,145,145,145,145,,,,,,,145,245,245,245,245,245,245,145', +'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', +'156,,,,,,,245,246,246,246,246,246,246,156,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,,,,,,,246,,,,,,159,159,168', +'168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168', +'168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168,168', +',,,,,,,,,,,,,168,179,179,179,179,179,179,179,179,179,179,179,179,179', +'179,179,179,179,179,179,179,179,179,179,179,179,179,179,179,179,179', +'179,179,179,179,179,,,,,,,,,,,,,,179,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,201,201,201,201,201,,,,,,,,,,,,,,201,225,225,225', +'225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,225', +'225,225,225,225,225,225,225,225,225,225,225,225,225,225,225,,,,,,,,', +',,,,,225,233,233,233,233,233,233,233,233,233,233,233,233,233,233,233', +'233,233,233,234,234,234,234,234,234,234,234,234,234,234,234,234,234', +'234,234,234,234,,,,,,,,,,,,,233,,,,,,,,,,,,,,,,,,234,253,253,253,253', +'253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253,253', +'253,253,253,253,253,253,253,253,253,,,,,,,,,,,,,,,,,,,253,254,254,254', +'254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254,254', +'254,254,254,254,254,254,254,254,254,254,,,,,,,,,,,,,,,,,,,254,255,255', +'255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255', +'255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,,,,', +',,,,,,,,,255,256,256,256,256,256,256,256,256,256,256,256,256,256,256', +'256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256,256', +'256,256,256,256,,,,,,,,,,,,,,256,257,257,257,257,257,257,257,257,257', +'257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257,257', +'257,257,257,257,257,257,257,257,257,,,,,,,,,,,,,257,257,259,259,259', +'259,259,259,259,259,259,259,259,259,259,259,259,259,259,259,259,259', +'259,259,259,259,259,259,259,259,259,259,259,259,259,259,259,,,,,,,,', +',259,,,259,259,292,292,292,292,292,292,292,292,292,292,292,292,292,292', +'292,292,292,292,292,292,292,292,292,292,292,292,292,292,292,292,292', +'292,292,292,292,,,,,,,292,,,,,,,292,296,296,296,296,296,296,296,296', +'296,296,296,296,296,296,296,296,296,296,296,296,296,296,296,296,296', +'296,296,296,296,296,296,296,296,296,296,,,,,,,296,,,,,,,296,303,303', +'303,303,303,303,303,303,303,303,303,303,303,303,303,303,303,303,303', +'303,303,303,303,303,303,303,303,303,303,303,303,303,303,303,303,,,,', +',,,,,,,,,303,307,307,307,307,307,307,307,307,307,307,307,307,307,307', +'307,307,307,307,307,307,307,307,307,307,307,307,307,307,307,307,307', +'307,307,307,307,,,,,,,307,,,,,,,307,308,308,308,308,308,308,308,308', +'308,308,308,308,308,308,308,308,308,308,308,308,308,308,308,308,308', +'308,308,308,308,308,308,308,308,308,308,,,,,,,,,,,,,,308,309,309,309', +'309,309,309,309,309,309,309,309,309,309,309,309,309,309,309,309,309', +'309,309,309,309,309,309,309,309,309,309,309,309,309,309,309,,,,,,,,', +',,,,,309,310,310,310,310,310,310,310,310,310,310,310,310,310,310,310', +'310,310,310,310,310,310,310,310,310,310,310,310,310,310,310,310,310', +'310,310,310,,,,,,,,,,,,,,310,311,311,311,311,311,311,311,311,311,311', +'311,311,311,311,311,311,311,311,311,311,311,311,311,311,311,311,311', +'311,311,311,311,311,311,311,311,,,,,,,,,,,,,,311,338,338,338,338,338', +'338,338,338,338,338,338,338,338,338,338,338,338,338,338,338,338,338', +'338,338,338,338,338,338,338,338,338,338,338,338,338,,,,,,,,,,338,,,338', +'338,343,343,343,343,343,343,343,343,343,343,343,343,343,343,343,343', +'343,343,343,343,343,343,343,343,343,343,343,343,343,343,343,343,343', +'343,343,,,,,,,,,,,,,,343,347,347,347,347,347,347,347,347,347,347,347', +'347,347,347,347,347,347,347,347,347,347,347,347,347,347,347,347,347', +'347,347,347,347,347,347,347,,,,,,,,,,347,,,,347,349,349,349,349,349', +'349,349,349,349,349,349,349,349,349,349,349,349,349,349,349,349,349', +'349,349,349,349,349,349,349,349,349,349,349,349,349,,,,,,,,,,,,,,349', +'352,352,352,352,352,352,352,352,352,352,352,352,352,352,352,352,352', +'352,352,352,352,352,352,352,352,352,352,352,352,352,352,352,352,352', +'352,,,,,,,,,,,,,,352,358,358,358,358,358,358,358,358,358,358,358,358', +'358,358,358,358,358,358,358,358,358,358,358,358,358,358,358,358,358', +'358,358,358,358,358,358,,,,,,,,,,,,,,358,364,364,364,364,364,364,364', +'364,364,364,364,364,364,364,364,364,364,364,364,364,364,364,364,364', +'364,364,364,364,364,364,364,364,364,364,364,,,,,,,,,,,,,,364,372,372', +'372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372', +'372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,372,,,,', +',,,,,,,,,372,373,373,373,373,373,373,373,373,373,373,373,373,373,373', +'373,373,373,373,373,373,373,373,373,373,373,373,373,373,373,373,373', +'373,373,373,373,,,,,,,,,,,,,,373,395,395,395,395,395,395,395,395,395', +'395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395,395', +'395,395,395,395,395,395,395,395,395,,,,,,,,,,,,,,395,398,398,398,398', +'398,398,398,398,398,398,398,398,398,398,398,398,398,398,398,398,398', +'398,398,398,398,398,398,398,398,398,398,398,398,398,398,,,,,,,,,,,,', +',398,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405', +'405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405,405', +'405,405,,,,,,,,,,,,,,405,452,452,452,452,452,452,452,452,452,452,452', +'452,452,452,452,452,452,452,452,452,452,452,452,452,452,452,452,452', +'452,452,452,452,452,452,452,,,,,,,,,,,,,,452' ] + racc_action_check = arr = ::Array.new(6677, 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 = [ + 210, 463, 301, -7, nil, nil, nil, nil, -2, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, 320, + nil, nil, -2, 76, 106, nil, nil, 695, nil, 2851, + nil, 190, 612, 362, nil, 497, nil, nil, nil, nil, + 335, nil, 199, 369, nil, nil, nil, nil, nil, nil, + nil, nil, 2983, nil, 3016, 129, 3049, 4402, 1541, 122, + nil, 3082, 3115, 3148, 4435, nil, 295, nil, nil, nil, + 414, nil, 315, 252, -42, nil, nil, nil, 3181, nil, + 3214, 3247, 3280, nil, nil, 2722, 225, 424, 410, 347, + 285, nil, 306, 81, 703, 81, 690, 737, nil, -7, + 3445, 3478, 3511, 3544, 3577, 3610, 3643, 3676, 3709, 1735, + 1798, 1831, 1864, 1897, 1930, 1963, 1996, 2029, 2062, 2095, + 2128, 2161, 2194, 2227, 2260, 2293, 2326, 2359, 2392, 2425, + 2458, 2491, 2524, 2557, 2590, 2623, 2656, 2689, 67, 1080, + 714, 712, 4369, -87, nil, 4895, 657, 1443, 686, nil, + 680, 676, nil, nil, 625, -70, 4944, 48, nil, 4993, + 578, 171, 273, nil, 3973, 1702, 566, nil, 5042, 549, + 588, 1604, nil, 4072, 536, 123, 1345, nil, 475, 5091, + 4138, 378, 97, 531, 575, 519, 321, 338, 4171, 519, + nil, 4204, 4237, 4270, 4303, nil, nil, nil, nil, 534, + 132, 5140, 143, 127, 438, 4479, 4797, 559, 555, 554, + 137, 392, 584, 121, nil, 1212, nil, nil, nil, nil, + 528, 619, 710, 801, 1128, 5189, 1261, 1359, 1457, 1554, + 1652, 1748, 2801, 5238, 5256, 425, 4467, 4520, 4573, 4626, + 4679, 4732, 4784, 4833, 4839, 4937, 4986, 475, 739, 450, + 440, 830, 385, 5305, 5354, 5403, 5452, 5501, 1004, 5550, + 448, 3313, nil, nil, nil, nil, 229, 1311, 474, nil, + 2788, nil, 2755, nil, 1247, 4336, 1507, 188, 172, nil, + nil, 257, 269, 53, 193, 271, 186, 67, 4105, 4846, + 347, 4039, 5599, 542, 4006, 1114, 5648, 571, 76, 570, + 574, 576, 1178, 5697, 295, 656, nil, 5746, 5795, 5844, + 5893, 5942, 655, 226, 211, 308, 3940, 3907, 715, 3874, + 794, nil, 738, 3841, 745, 746, 3808, 3775, 3742, nil, + 257, 342, 76, -23, 669, 689, 688, 3412, 5991, 688, + nil, 3379, nil, 6040, 741, -73, nil, 6089, nil, 6138, + nil, nil, 6187, 177, nil, 178, 195, nil, 6236, 210, + 216, nil, 1409, nil, 6285, 3346, nil, 354, 355, -20, + -6, nil, 6334, 6383, nil, 1009, 3, nil, 932, nil, + nil, 4744, 4585, 4638, nil, 426, 258, 419, nil, 427, + nil, 452, 416, 1638, nil, 6432, nil, nil, 6481, nil, + nil, nil, nil, 235, 372, 6530, nil, nil, 457, nil, + 296, 375, 382, nil, nil, nil, 447, 436, 2950, nil, + 461, 463, 464, 465, nil, 442, nil, nil, 438, 395, + 252, nil, 486, -9, 492, 2917, nil, 2884, 885, 4691, + nil, nil, nil, nil, nil, 671, nil, 93, 617, 624, + nil, -22, 6579, 4532, 66, 612, 254, 286, 335, 399, + 521, -3, nil, nil, -30, nil, 55, 773, nil ] + +racc_action_default = [ + -1, -259, -2, -3, -4, -8, -9, -10, -11, -12, + -13, -14, -15, -16, -17, -18, -19, -20, -21, -22, + -23, -24, -25, -26, -27, -29, -30, -31, -32, -116, + -34, -35, -36, -37, -38, -39, -40, -49, -50, -51, + -52, -53, -54, -55, -56, -57, -58, -59, -60, -63, + -64, -65, -69, -72, -75, -259, -116, -116, -119, -116, + -115, -116, -116, -116, -116, -168, -259, -177, -179, -180, + -259, -184, -116, -116, -116, -200, -201, -202, -217, -219, + -116, -116, -116, -228, -229, -116, -116, -259, -116, -116, + -257, -258, -259, -7, -116, -6, -259, -259, -188, -116, + -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, + -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, + -116, -116, -116, -116, -116, -116, -116, -116, -116, -116, + -116, -116, -116, -116, -116, -116, -116, -116, -83, -116, + -28, -259, -116, -26, -31, -259, -259, -116, -80, -94, + -79, -81, -61, -62, -182, -259, -70, -259, -76, -259, + -259, -183, -185, -189, -116, -116, -101, -102, -127, -35, + -37, -116, -54, -69, -259, -259, -116, -107, -120, -123, + -116, -111, -116, -109, -259, -164, -165, -166, -116, -259, + -167, -116, -116, -116, -116, -181, -186, -187, -117, -259, + -259, -218, -214, -259, -259, -259, -259, -259, -259, -259, + -237, -245, -259, -259, -255, -116, 469, -5, -183, -170, + -129, -130, -131, -132, -133, -134, -135, -136, -137, -138, + -139, -140, -141, -142, -143, -144, -145, -146, -147, -148, + -149, -150, -151, -152, -153, -154, -155, -156, -157, -158, + -159, -160, -161, -162, -163, -222, -225, -259, -116, -259, + -259, -93, -97, -96, -169, -41, -33, -116, -259, -95, + -116, -67, -116, -73, -116, -116, -116, -259, -190, -191, + -192, -29, -30, -35, -36, -37, -39, -52, -75, -259, + -259, -116, -123, -259, -116, -116, -123, -259, -259, -83, + -259, -259, -116, -124, -259, -116, -110, -259, -171, -172, + -173, -174, -259, -204, -203, -207, -116, -116, -259, -116, + -116, -246, -259, -116, -259, -259, -116, -116, -116, -234, + -259, -259, -244, -259, -105, -122, -259, -116, -259, -259, + -86, -91, -87, -92, -82, -84, -99, -259, -68, -71, + -74, -77, -78, -259, -193, -259, -259, -100, -128, -259, + -259, -103, -116, -106, -125, -116, -108, -259, -116, -259, + -208, -205, -215, -216, -220, -259, -244, -223, -259, -227, + -230, -259, -259, -259, -235, -259, -259, -243, -238, -259, + -242, -259, -116, -116, -256, -226, -88, -89, -90, -66, + -98, -194, -195, -114, -259, -126, -112, -118, -259, -206, + -259, -259, -209, -210, -221, -247, -248, -259, -116, -224, + -259, -259, -259, -259, -240, -259, -239, -253, -259, -259, + -113, -196, -207, -259, -207, -116, -249, -116, -116, -259, + -231, -232, -233, -236, -241, -259, -104, -259, -259, -211, + -212, -259, -213, -259, -250, -116, -259, -259, -207, -259, + -116, -251, -254, -197, -259, -198, -252, -259, -199 ] + +racc_goto_table = [ + 2, 183, 27, 95, 27, 3, 148, 170, 413, 151, + 155, 389, 415, 390, 154, 177, 172, 416, 260, 217, + 96, 318, 322, 169, 181, 282, 284, 98, 140, 356, + 209, 351, 166, 214, 200, 335, 336, 190, 207, 410, + 202, 330, 1, nil, nil, 208, nil, nil, nil, nil, + nil, nil, 436, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 97, nil, nil, nil, 425, 154, 390, nil, + nil, 450, 286, nil, nil, nil, 280, 162, 291, nil, + nil, 281, nil, 145, 96, 96, 160, nil, nil, nil, + nil, 196, 197, 95, nil, nil, 27, 27, nil, nil, + nil, 219, nil, nil, 268, nil, 156, nil, 159, nil, + 168, 175, 179, 184, 285, 185, 186, 187, nil, nil, + nil, nil, 293, nil, 304, nil, 97, 97, 198, 287, + 283, 298, 201, 301, 203, 204, 205, 339, nil, 206, + 97, nil, 212, 213, 264, 299, 369, 181, nil, 282, + 284, nil, 282, 284, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, + 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 280, 259, nil, nil, 286, 162, 210, 286, + nil, 179, 291, nil, 355, 281, 300, nil, 281, nil, + nil, nil, nil, 27, nil, nil, 332, nil, 289, 292, + nil, nil, 314, nil, nil, 296, nil, 156, 280, nil, + 292, 315, nil, 353, 303, 314, 184, 345, 285, nil, + 344, 285, 307, nil, 334, 308, 309, 310, 311, nil, + 143, nil, 359, 287, 283, nil, 287, 283, 148, nil, + 151, nil, nil, 447, nil, 451, nil, nil, nil, 179, + nil, nil, nil, nil, nil, nil, nil, nil, 174, nil, + nil, nil, nil, nil, nil, 189, nil, nil, nil, 464, + nil, nil, nil, nil, nil, nil, 387, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 338, nil, nil, 343, 324, 325, nil, 404, + 189, 179, 27, nil, 347, 376, 349, nil, 159, 352, + 179, 345, 95, nil, 344, nil, nil, nil, nil, nil, + nil, nil, 159, nil, nil, 289, nil, nil, 358, 179, + 429, 387, nil, nil, nil, nil, 364, nil, nil, 367, + nil, nil, nil, 189, nil, nil, nil, nil, nil, nil, + 372, 373, nil, 375, nil, nil, 95, 378, nil, nil, + 381, 382, 383, nil, nil, nil, 143, nil, nil, nil, + nil, 395, 143, nil, nil, 398, nil, 143, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, 143, + nil, nil, nil, nil, nil, nil, 179, nil, nil, 405, + nil, nil, 407, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 27, nil, 388, 454, 391, nil, 428, 179, nil, nil, + nil, nil, nil, nil, 95, nil, nil, 27, nil, nil, + 461, 95, 27, nil, nil, 466, 95, nil, nil, nil, + nil, nil, 439, nil, nil, nil, nil, nil, nil, nil, + 408, nil, nil, nil, nil, nil, nil, nil, nil, 452, + nil, 453, 420, 421, 422, nil, 423, 424, nil, nil, + 426, 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, 444, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 456, nil, 457, nil, + nil, nil, 459, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 467 ] + +racc_goto_check = [ + 2, 58, 28, 2, 28, 3, 49, 33, 72, 49, + 45, 76, 77, 40, 50, 55, 41, 78, 52, 4, + 42, 74, 74, 31, 38, 27, 32, 64, 25, 37, + 44, 48, 56, 57, 59, 60, 61, 62, 65, 71, + 73, 75, 1, nil, nil, 41, nil, nil, nil, nil, + nil, nil, 77, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 53, nil, nil, nil, 76, 50, 40, nil, + nil, 72, 35, nil, nil, nil, 67, 66, 67, nil, + nil, 26, nil, 22, 42, 42, 54, nil, nil, nil, + nil, 64, 64, 2, nil, nil, 28, 28, nil, nil, + nil, 28, nil, nil, 55, nil, 22, nil, 22, nil, + 22, 53, 22, 53, 33, 22, 22, 22, nil, nil, + nil, nil, 55, nil, 58, nil, 53, 53, 53, 38, + 31, 45, 22, 55, 22, 22, 22, 52, nil, 22, + 53, nil, 53, 53, 28, 50, 69, 38, nil, 27, + 32, nil, 27, 32, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 22, 22, 22, 22, 22, 22, 22, 22, + 22, 22, 67, 22, nil, nil, 35, 66, 70, 35, + nil, 22, 67, nil, 67, 26, 54, nil, 26, nil, + nil, nil, nil, 28, nil, nil, 3, nil, 22, 22, + nil, nil, 66, nil, nil, 22, nil, 22, 67, nil, + 22, 54, nil, 55, 22, 66, 53, 50, 33, nil, + 49, 33, 22, nil, 54, 22, 22, 22, 22, nil, + 23, nil, 55, 38, 31, nil, 38, 31, 49, nil, + 49, nil, nil, 69, nil, 69, nil, nil, nil, 22, + nil, nil, nil, nil, nil, nil, nil, nil, 23, nil, + nil, nil, nil, nil, nil, 23, nil, nil, nil, 69, + nil, nil, nil, nil, nil, nil, 38, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 22, nil, nil, 22, 70, 70, nil, 55, + 23, 22, 28, nil, 22, 3, 22, nil, 22, 22, + 22, 50, 2, nil, 49, nil, nil, nil, nil, nil, + nil, nil, 22, nil, nil, 22, nil, nil, 22, 22, + 55, 38, nil, nil, nil, nil, 22, nil, nil, 53, + nil, nil, nil, 23, nil, nil, nil, nil, nil, nil, + 22, 22, nil, 22, nil, nil, 2, 22, nil, nil, + 22, 22, 22, nil, nil, nil, 23, nil, nil, nil, + nil, 22, 23, nil, nil, 22, nil, 23, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, 23, + nil, nil, nil, nil, nil, nil, 22, nil, nil, 22, + nil, nil, 53, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + 28, nil, 70, 3, 70, nil, 53, 22, nil, nil, + nil, nil, nil, nil, 2, nil, nil, 28, nil, nil, + 3, 2, 28, nil, nil, 3, 2, nil, nil, nil, + nil, nil, 22, nil, nil, nil, nil, nil, nil, nil, + 70, nil, nil, nil, nil, nil, nil, nil, nil, 22, + nil, 22, 70, 70, 70, nil, 70, 70, nil, nil, + 70, 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, 70, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, 70, nil, 70, nil, + nil, nil, 70, nil, nil, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, 70 ] + +racc_goto_pointer = [ + nil, 42, 0, 5, -76, nil, nil, nil, nil, nil, + nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, + nil, nil, 54, 221, nil, 4, -83, -139, 2, nil, + nil, -34, -138, -50, nil, -92, nil, -262, -35, nil, + -318, -41, 12, nil, -56, -42, nil, nil, -243, -26, + -29, nil, -121, 54, 31, -43, -24, -56, -58, -40, + -180, -179, -27, nil, 19, -48, 22, -86, nil, -169, + 111, -331, -362, -38, -182, -169, -320, -364, -359 ] + +racc_goto_default = [ + nil, nil, 94, 93, 4, 5, 6, 7, 8, 9, + 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, nil, 25, 26, 144, 28, + 30, 31, 32, 33, 34, 35, 36, 290, 40, 39, + 41, 42, 43, 51, 67, nil, 53, 157, 158, 150, + 138, 68, nil, 55, nil, 297, nil, nil, nil, nil, + 178, nil, 65, 66, 71, 69, 278, 163, 74, nil, + 321, nil, nil, nil, nil, nil, nil, nil, nil ] + +racc_reduce_table = [ + 0, 0, :racc_error, + 0, 99, :_reduce_1, + 1, 99, :_reduce_2, + 1, 99, :_reduce_3, + 1, 101, :_reduce_4, + 3, 101, :_reduce_5, + 2, 101, :_reduce_6, + 2, 101, :_reduce_7, + 1, 102, :_reduce_8, + 1, 102, :_reduce_9, + 1, 102, :_reduce_10, + 1, 102, :_reduce_11, + 1, 102, :_reduce_12, + 1, 102, :_reduce_13, + 1, 102, :_reduce_14, + 1, 102, :_reduce_15, + 1, 102, :_reduce_16, + 1, 102, :_reduce_17, + 1, 102, :_reduce_18, + 1, 102, :_reduce_19, + 1, 102, :_reduce_20, + 1, 102, :_reduce_21, + 1, 102, :_reduce_22, + 1, 102, :_reduce_23, + 1, 102, :_reduce_24, + 1, 102, :_reduce_25, + 1, 120, :_reduce_26, + 1, 120, :_reduce_27, + 2, 120, :_reduce_28, + 1, 120, :_reduce_29, + 1, 120, :_reduce_30, + 1, 120, :_reduce_31, + 1, 120, :_reduce_32, + 3, 120, :_reduce_33, + 1, 121, :_reduce_34, + 1, 121, :_reduce_35, + 1, 121, :_reduce_36, + 1, 121, :_reduce_37, + 1, 121, :_reduce_38, + 1, 121, :_reduce_39, + 1, 121, :_reduce_40, + 3, 121, :_reduce_41, + 1, 135, :_reduce_42, + 1, 135, :_reduce_43, + 1, 135, :_reduce_44, + 1, 135, :_reduce_45, + 1, 135, :_reduce_46, + 1, 135, :_reduce_47, + 1, 135, :_reduce_48, + 1, 100, :_reduce_49, + 1, 100, :_reduce_50, + 1, 132, :_reduce_51, + 1, 132, :_reduce_52, + 1, 132, :_reduce_53, + 1, 132, :_reduce_54, + 1, 132, :_reduce_55, + 1, 132, :_reduce_56, + 1, 132, :_reduce_57, + 1, 137, :_reduce_58, + 1, 136, :_reduce_59, + 1, 136, :_reduce_60, + 2, 136, :_reduce_61, + 2, 136, :_reduce_62, + 1, 138, :_reduce_63, + 1, 140, :_reduce_64, + 1, 139, :_reduce_65, + 5, 142, :_reduce_66, + 3, 141, :_reduce_67, + 4, 141, :_reduce_68, + 0, 143, :_reduce_69, + 1, 143, :_reduce_70, + 3, 143, :_reduce_71, + 1, 122, :_reduce_72, + 3, 144, :_reduce_73, + 4, 144, :_reduce_74, + 0, 145, :_reduce_75, + 1, 145, :_reduce_76, + 3, 145, :_reduce_77, + 3, 146, :_reduce_78, + 2, 129, :_reduce_79, + 2, 129, :_reduce_80, + 2, 129, :_reduce_81, + 4, 129, :_reduce_82, + 2, 130, :_reduce_83, + 4, 130, :_reduce_84, + 2, 149, :_reduce_85, + 3, 148, :_reduce_86, + 3, 148, :_reduce_87, + 4, 148, :_reduce_88, + 4, 148, :_reduce_89, + 3, 150, :_reduce_90, + 2, 150, :_reduce_91, + 2, 150, :_reduce_92, + 1, 150, :_reduce_93, + 1, 147, :_reduce_94, + 2, 147, :_reduce_95, + 2, 123, :_reduce_96, + 2, 123, :_reduce_97, + 5, 133, :_reduce_98, + 4, 133, :_reduce_99, + 4, 133, :_reduce_100, + 2, 133, :_reduce_101, + 2, 133, :_reduce_102, + 4, 133, :_reduce_103, + 5, 155, :_reduce_104, + 2, 155, :_reduce_105, + 4, 115, :_reduce_106, + 2, 115, :_reduce_107, + 4, 116, :_reduce_108, + 2, 116, :_reduce_109, + 2, 156, :_reduce_110, + 1, 156, :_reduce_111, + 4, 156, :_reduce_112, + 6, 103, :_reduce_113, + 5, 103, :_reduce_114, + 1, 151, :_reduce_115, + 0, 151, :_reduce_116, + 1, 157, :_reduce_117, + 4, 157, :_reduce_118, + 0, 153, :_reduce_119, + 1, 153, :_reduce_120, + 0, 159, :_reduce_121, + 1, 159, :_reduce_122, + 1, 158, :_reduce_123, + 2, 158, :_reduce_124, + 3, 158, :_reduce_125, + 4, 158, :_reduce_126, + 1, 154, :_reduce_127, + 3, 154, :_reduce_128, + 3, 124, :_reduce_129, + 3, 124, :_reduce_130, + 3, 124, :_reduce_131, + 3, 124, :_reduce_132, + 3, 124, :_reduce_133, + 3, 124, :_reduce_134, + 3, 124, :_reduce_135, + 3, 124, :_reduce_136, + 3, 124, :_reduce_137, + 3, 124, :_reduce_138, + 3, 124, :_reduce_139, + 3, 124, :_reduce_140, + 3, 124, :_reduce_141, + 3, 124, :_reduce_142, + 3, 124, :_reduce_143, + 3, 124, :_reduce_144, + 3, 124, :_reduce_145, + 3, 124, :_reduce_146, + 3, 124, :_reduce_147, + 3, 124, :_reduce_148, + 3, 124, :_reduce_149, + 3, 124, :_reduce_150, + 3, 124, :_reduce_151, + 3, 124, :_reduce_152, + 3, 124, :_reduce_153, + 3, 124, :_reduce_154, + 3, 124, :_reduce_155, + 3, 124, :_reduce_156, + 3, 124, :_reduce_157, + 3, 124, :_reduce_158, + 3, 124, :_reduce_159, + 3, 124, :_reduce_160, + 3, 124, :_reduce_161, + 3, 124, :_reduce_162, + 3, 124, :_reduce_163, + 2, 128, :_reduce_164, + 2, 128, :_reduce_165, + 2, 128, :_reduce_166, + 2, 126, :_reduce_167, + 1, 126, :_reduce_168, + 3, 117, :_reduce_169, + 3, 117, :_reduce_170, + 3, 160, :_reduce_171, + 3, 160, :_reduce_172, + 3, 160, :_reduce_173, + 3, 160, :_reduce_174, + 1, 161, :_reduce_175, + 1, 161, :_reduce_176, + 1, 161, :_reduce_177, + 1, 161, :_reduce_178, + 1, 161, :_reduce_179, + 1, 162, :_reduce_180, + 2, 162, :_reduce_181, + 2, 162, :_reduce_182, + 2, 163, :_reduce_183, + 1, 131, :_reduce_184, + 2, 131, :_reduce_185, + 2, 106, :_reduce_186, + 2, 106, :_reduce_187, + 2, 106, :_reduce_188, + 1, 164, :_reduce_189, + 2, 164, :_reduce_190, + 2, 164, :_reduce_191, + 2, 164, :_reduce_192, + 3, 165, :_reduce_193, + 4, 165, :_reduce_194, + 4, 165, :_reduce_195, + 6, 104, :_reduce_196, + 9, 104, :_reduce_197, + 9, 104, :_reduce_198, + 11, 104, :_reduce_199, + 1, 166, :_reduce_200, + 1, 166, :_reduce_201, + 1, 166, :_reduce_202, + 1, 152, :_reduce_203, + 1, 152, :_reduce_204, + 1, 167, :_reduce_205, + 2, 167, :_reduce_206, + 0, 167, :_reduce_207, + 0, 169, :_reduce_208, + 1, 169, :_reduce_209, + 1, 169, :_reduce_210, + 3, 169, :_reduce_211, + 3, 169, :_reduce_212, + 3, 170, :_reduce_213, + 2, 105, :_reduce_214, + 4, 105, :_reduce_215, + 4, 105, :_reduce_216, + 0, 171, :_reduce_217, + 1, 171, :_reduce_218, + 1, 114, :_reduce_219, + 4, 118, :_reduce_220, + 5, 118, :_reduce_221, + 3, 118, :_reduce_222, + 4, 119, :_reduce_223, + 5, 119, :_reduce_224, + 3, 119, :_reduce_225, + 5, 125, :_reduce_226, + 4, 109, :_reduce_227, + 1, 113, :_reduce_228, + 1, 113, :_reduce_229, + 4, 110, :_reduce_230, + 6, 108, :_reduce_231, + 6, 108, :_reduce_232, + 6, 108, :_reduce_233, + 3, 111, :_reduce_234, + 4, 111, :_reduce_235, + 6, 111, :_reduce_236, + 0, 173, :_reduce_237, + 2, 173, :_reduce_238, + 3, 173, :_reduce_239, + 3, 173, :_reduce_240, + 4, 173, :_reduce_241, + 1, 174, :_reduce_242, + 1, 174, :_reduce_243, + 2, 168, :_reduce_244, + 1, 168, :_reduce_245, + 1, 172, :_reduce_246, + 3, 172, :_reduce_247, + 3, 172, :_reduce_248, + 4, 172, :_reduce_249, + 3, 175, :_reduce_250, + 4, 176, :_reduce_251, + 5, 176, :_reduce_252, + 5, 112, :_reduce_253, + 8, 112, :_reduce_254, + 2, 134, :_reduce_255, + 4, 127, :_reduce_256, + 1, 127, :_reduce_257, + 1, 107, :_reduce_258 ] + +racc_reduce_n = 259 + +racc_shift_n = 469 + +racc_token_table = { + false => 0, + :error => 1, + :IF => 2, + :ELSE => 3, + :ELSEIF => 4, + :THEN => 5, + :UNLESS => 6, + :END => 7, + :WHILE => 8, + :UNTIL => 9, + :BREAK => 10, + :CONTINUE => 11, + :TRY => 12, + :CATCH => 13, + :FINALLY => 14, + :FOR => 15, + :IN => 16, + :DEF => 17, + :DEF_BANG => 18, + :SPLAT_PARAM => 19, + :SPLAT_ARG => 20, + :CALL => 21, + :BUILTIN_COMMAND => 22, + :CLASS => 23, + :NEW => 24, + :DEFM => 25, + :DEFM_BANG => 26, + :SUPER => 27, + :RIML_FILE_COMMAND => 28, + :RIML_CLASS_COMMAND => 29, + :RETURN => 30, + :NEWLINE => 31, + :NUMBER => 32, + :STRING_D => 33, + :STRING_S => 34, + :EX_LITERAL => 35, + :REGEXP => 36, + :TRUE => 37, + :FALSE => 38, + :LET => 39, + :UNLET => 40, + :UNLET_BANG => 41, + :IDENTIFIER => 42, + :DICT_VAL => 43, + :SCOPE_MODIFIER => 44, + :SCOPE_MODIFIER_LITERAL => 45, + :SPECIAL_VAR_PREFIX => 46, + :FINISH => 47, + "!" => 48, + "*" => 49, + "/" => 50, + "%" => 51, + "+" => 52, + "-" => 53, + "." => 54, + ">" => 55, + ">#" => 56, + ">?" => 57, + "<" => 58, + "<#" => 59, + "<?" => 60, + ">=" => 61, + ">=#" => 62, + ">=?" => 63, + "<=" => 64, + "<=#" => 65, + "<=?" => 66, + "==" => 67, + "==?" => 68, + "==#" => 69, + "=~" => 70, + "=~?" => 71, + "=~#" => 72, + "!~" => 73, + "!~?" => 74, + "!~#" => 75, + "!=" => 76, + "!=?" => 77, + "!=#" => 78, + :IS => 79, + :ISNOT => 80, + "&&" => 81, + "||" => 82, + "?" => 83, + "=" => 84, + "+=" => 85, + "-=" => 86, + ".=" => 87, + "," => 88, + "(" => 89, + ")" => 90, + ";" => 91, + "[" => 92, + "]" => 93, + "{" => 94, + "}" => 95, + ":" => 96, + "===" => 97 } + +racc_nt_base = 98 + +racc_use_result_var = true + +Racc_arg = [ + racc_action_table, + racc_action_check, + racc_action_default, + racc_action_pointer, + racc_goto_table, + racc_goto_check, + racc_goto_default, + racc_goto_pointer, + racc_nt_base, + racc_reduce_table, + racc_token_table, + racc_shift_n, + racc_reduce_n, + racc_use_result_var ] + +Racc_token_to_s_table = [ + "$end", + "error", + "IF", + "ELSE", + "ELSEIF", + "THEN", + "UNLESS", + "END", + "WHILE", + "UNTIL", + "BREAK", + "CONTINUE", + "TRY", + "CATCH", + "FINALLY", + "FOR", + "IN", + "DEF", + "DEF_BANG", + "SPLAT_PARAM", + "SPLAT_ARG", + "CALL", + "BUILTIN_COMMAND", + "CLASS", + "NEW", + "DEFM", + "DEFM_BANG", + "SUPER", + "RIML_FILE_COMMAND", + "RIML_CLASS_COMMAND", + "RETURN", + "NEWLINE", + "NUMBER", + "STRING_D", + "STRING_S", + "EX_LITERAL", + "REGEXP", + "TRUE", + "FALSE", + "LET", + "UNLET", + "UNLET_BANG", + "IDENTIFIER", + "DICT_VAL", + "SCOPE_MODIFIER", + "SCOPE_MODIFIER_LITERAL", + "SPECIAL_VAR_PREFIX", + "FINISH", + "\"!\"", + "\"*\"", + "\"/\"", + "\"%\"", + "\"+\"", + "\"-\"", + "\".\"", + "\">\"", + "\">#\"", + "\">?\"", + "\"<\"", + "\"<#\"", + "\"<?\"", + "\">=\"", + "\">=#\"", + "\">=?\"", + "\"<=\"", + "\"<=#\"", + "\"<=?\"", + "\"==\"", + "\"==?\"", + "\"==#\"", + "\"=~\"", + "\"=~?\"", + "\"=~#\"", + "\"!~\"", + "\"!~?\"", + "\"!~#\"", + "\"!=\"", + "\"!=?\"", + "\"!=#\"", + "IS", + "ISNOT", + "\"&&\"", + "\"||\"", + "\"?\"", + "\"=\"", + "\"+=\"", + "\"-=\"", + "\".=\"", + "\",\"", + "\"(\"", + "\")\"", + "\";\"", + "\"[\"", + "\"]\"", + "\"{\"", + "\"}\"", + "\":\"", + "\"===\"", + "$start", + "Root", + "Terminator", + "Statements", + "Statement", + "ExplicitCall", + "Def", + "Return", + "UnletVariable", + "ExLiteral", + "For", + "While", + "Until", + "Try", + "ClassDefinition", + "LoopKeyword", + "EndScript", + "RimlFileCommand", + "RimlClassCommand", + "MultiAssign", + "If", + "Unless", + "Expression", + "ExpressionWithoutDictLiteral", + "Dictionary", + "DictGetWithDotLiteral", + "BinaryOperator", + "Ternary", + "Assign", + "Super", + "UnaryOperator", + "DictGet", + "ListOrDictGet", + "AllVariableRetrieval", + "LiteralWithoutDictLiteral", + "Call", + "ObjectInstantiation", + "PossibleStringValue", + "String", + "Number", + "Regexp", + "List", + "ScopeModifierLiteral", + "ListLiteral", + "ListUnpack", + "ListItems", + "DictionaryLiteral", + "DictItems", + "DictItem", + "DictGetWithDot", + "ListOrDictGetWithBrackets", + "ListOrDictGetAssign", + "SubList", + "Scope", + "DefCallIdentifier", + "ArgList", + "ArgListWithoutNothing", + "ObjectInstantiationCall", + "ClassArgList", + "SIDAndScope", + "ArgListWithoutNothingWithSplat", + "ArgListWithSplat", + "AssignExpression", + "AssignLHS", + "VariableRetrieval", + "SimpleVariableRetrieval", + "CurlyBraceName", + "CurlyBraceVarPart", + "FunctionType", + "DefKeywords", + "Block", + "ParamList", + "DefaultParam", + "Returnable", + "IfBlock", + "Catch", + "Catchable", + "ElseBlock", + "ElseifBlock" ] + +Racc_debug_parser = false + +##### State transition tables end ##### + +# reduce 0 omitted + +module_eval(<<'.,.,', 'riml.y', 61) + def _reduce_1(val, _values, result) + result = make_node(val) { |_| Riml::Nodes.new([]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 62) + def _reduce_2(val, _values, result) + result = make_node(val) { |_| Riml::Nodes.new([]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 63) + def _reduce_3(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 68) + def _reduce_4(val, _values, result) + result = make_node(val) { |v| Riml::Nodes.new([ v[0] ]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 69) + def _reduce_5(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 70) + def _reduce_6(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 71) + def _reduce_7(val, _values, result) + result = make_node(val) { |v| Riml::Nodes.new(v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 76) + def _reduce_8(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 77) + def _reduce_9(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 78) + def _reduce_10(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 79) + def _reduce_11(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 80) + def _reduce_12(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 81) + def _reduce_13(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 82) + def _reduce_14(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 83) + def _reduce_15(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 84) + def _reduce_16(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 85) + def _reduce_17(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 86) + def _reduce_18(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 87) + def _reduce_19(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 88) + def _reduce_20(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 89) + def _reduce_21(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 90) + def _reduce_22(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 91) + def _reduce_23(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 92) + def _reduce_24(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 93) + def _reduce_25(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 97) + def _reduce_26(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 98) + def _reduce_27(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 99) + def _reduce_28(val, _values, result) + result = make_node(val) { |v| Riml::DictGetDotNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 100) + def _reduce_29(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 101) + def _reduce_30(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 102) + def _reduce_31(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 103) + def _reduce_32(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 104) + def _reduce_33(val, _values, result) + result = make_node(val) { |v| Riml::WrapInParensNode.new(v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 108) + def _reduce_34(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 109) + def _reduce_35(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 110) + def _reduce_36(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 111) + def _reduce_37(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 112) + def _reduce_38(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 113) + def _reduce_39(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 114) + def _reduce_40(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 115) + def _reduce_41(val, _values, result) + result = make_node(val) { |v| Riml::WrapInParensNode.new(v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 120) + def _reduce_42(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 121) + def _reduce_43(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 122) + def _reduce_44(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 123) + def _reduce_45(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 124) + def _reduce_46(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 125) + def _reduce_47(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 126) + def _reduce_48(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 130) + def _reduce_49(val, _values, result) + result = nil + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 131) + def _reduce_50(val, _values, result) + result = nil + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 135) + def _reduce_51(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 136) + def _reduce_52(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 137) + def _reduce_53(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 138) + def _reduce_54(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 139) + def _reduce_55(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 140) + def _reduce_56(val, _values, result) + result = make_node(val) { |_| Riml::TrueNode.new } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 141) + def _reduce_57(val, _values, result) + result = make_node(val) { |_| Riml::FalseNode.new } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 145) + def _reduce_58(val, _values, result) + result = make_node(val) { |v| Riml::NumberNode.new(v[0]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 149) + def _reduce_59(val, _values, result) + result = make_node(val) { |v| Riml::StringNode.new(v[0], :s) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 150) + def _reduce_60(val, _values, result) + result = make_node(val) { |v| Riml::StringNode.new(v[0], :d) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 151) + def _reduce_61(val, _values, result) + result = make_node(val) { |v| Riml::StringLiteralConcatNode.new(v[0], Riml::StringNode.new(v[1], :s)) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 152) + def _reduce_62(val, _values, result) + result = make_node(val) { |v| Riml::StringLiteralConcatNode.new(v[0], Riml::StringNode.new(v[1], :d)) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 156) + def _reduce_63(val, _values, result) + result = make_node(val) { |v| Riml::RegexpNode.new(v[0]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 160) + def _reduce_64(val, _values, result) + result = make_node(val) { |v| Riml::ScopeModifierLiteralNode.new(v[0]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 164) + def _reduce_65(val, _values, result) + result = make_node(val) { |v| Riml::ListNode.new(v[0]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 168) + def _reduce_66(val, _values, result) + result = make_node(val) { |v| Riml::ListUnpackNode.new(v[1] << v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 172) + def _reduce_67(val, _values, result) + result = val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 173) + def _reduce_68(val, _values, result) + result = val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 177) + def _reduce_69(val, _values, result) + result = [] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 178) + def _reduce_70(val, _values, result) + result = [val[0]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 179) + def _reduce_71(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 183) + def _reduce_72(val, _values, result) + result = make_node(val) { |v| Riml::DictionaryNode.new(v[0]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 190) + def _reduce_73(val, _values, result) + result = val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 191) + def _reduce_74(val, _values, result) + result = val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 196) + def _reduce_75(val, _values, result) + result = [] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 197) + def _reduce_76(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 198) + def _reduce_77(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 203) + def _reduce_78(val, _values, result) + result = [val[0], val[2]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 207) + def _reduce_79(val, _values, result) + result = make_node(val) { |v| Riml::DictGetDotNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 208) + def _reduce_80(val, _values, result) + result = make_node(val) { |v| Riml::DictGetDotNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 209) + def _reduce_81(val, _values, result) + result = make_node(val) { |v| Riml::DictGetDotNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 210) + def _reduce_82(val, _values, result) + result = make_node(val) { |v| Riml::DictGetDotNode.new(Riml::WrapInParensNode.new(v[1]), v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 214) + def _reduce_83(val, _values, result) + result = make_node(val) { |v| Riml::ListOrDictGetNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 215) + def _reduce_84(val, _values, result) + result = make_node(val) { |v| Riml::ListOrDictGetNode.new(Riml::WrapInParensNode.new(v[1]), v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 219) + def _reduce_85(val, _values, result) + result = make_node(val) { |v| Riml::ListOrDictGetNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 223) + def _reduce_86(val, _values, result) + result = [val[1]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 224) + def _reduce_87(val, _values, result) + result = [val[1]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 225) + def _reduce_88(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 226) + def _reduce_89(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 230) + def _reduce_90(val, _values, result) + result = make_node(val) { |v| Riml::SublistNode.new([v[0], Riml::LiteralNode.new(' : '), v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 231) + def _reduce_91(val, _values, result) + result = make_node(val) { |v| Riml::SublistNode.new([v[0], Riml::LiteralNode.new(' :')]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 232) + def _reduce_92(val, _values, result) + result = make_node(val) { |v| Riml::SublistNode.new([Riml::LiteralNode.new(': '), v[1]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 233) + def _reduce_93(val, _values, result) + result = make_node(val) { |_| Riml::SublistNode.new([Riml::LiteralNode.new(':')]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 237) + def _reduce_94(val, _values, result) + result = [val[0]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 238) + def _reduce_95(val, _values, result) + result = val[0] << val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 242) + def _reduce_96(val, _values, result) + result = [val[1]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 243) + def _reduce_97(val, _values, result) + result = val[0] << val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 247) + def _reduce_98(val, _values, result) + result = make_node(val) { |v| Riml::CallNode.new(v[0], v[1], v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 248) + def _reduce_99(val, _values, result) + result = make_node(val) { |v| Riml::CallNode.new(nil, v[0], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 249) + def _reduce_100(val, _values, result) + result = make_node(val) { |v| Riml::CallNode.new(nil, v[0], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 250) + def _reduce_101(val, _values, result) + result = make_node(val) { |v| Riml::CallNode.new(nil, v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 251) + def _reduce_102(val, _values, result) + result = make_node(val) { |v| Riml::CallNode.new(nil, v[0], []) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 252) + def _reduce_103(val, _values, result) + result = make_node(val) { |v| Riml::ExplicitCallNode.new(nil, nil, v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 256) + def _reduce_104(val, _values, result) + result = make_node(val) { |v| Riml::CallNode.new(v[0], v[1], v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 257) + def _reduce_105(val, _values, result) + result = make_node(val) { |v| Riml::CallNode.new(v[0], v[1], []) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 261) + def _reduce_106(val, _values, result) + result = make_node(val) { |v| Riml::RimlFileCommandNode.new(nil, v[0], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 262) + def _reduce_107(val, _values, result) + result = make_node(val) { |v| Riml::RimlFileCommandNode.new(nil, v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 266) + def _reduce_108(val, _values, result) + result = make_node(val) { |v| Riml::RimlClassCommandNode.new(nil, v[0], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 267) + def _reduce_109(val, _values, result) + result = make_node(val) { |v| Riml::RimlClassCommandNode.new(nil, v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 271) + def _reduce_110(val, _values, result) + result = ["#{val[0]}#{val[1]}"] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 272) + def _reduce_111(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 273) + def _reduce_112(val, _values, result) + result = val[0].concat ["#{val[2]}#{val[3]}"] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 277) + def _reduce_113(val, _values, result) + result = make_node(val) { |v| Riml::ExplicitCallNode.new(v[1], v[2], v[4]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 278) + def _reduce_114(val, _values, result) + result = make_node(val) { |v| Riml::ExplicitCallNode.new(nil, v[1], v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 282) + def _reduce_115(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 283) + def _reduce_116(val, _values, result) + result = nil + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 288) + def _reduce_117(val, _values, result) + result = [ nil, val[0] ] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 289) + def _reduce_118(val, _values, result) + result = [ make_node(val) { |v| Riml::SIDNode.new(v[1]) }, val[3] ] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 293) + def _reduce_119(val, _values, result) + result = [] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 294) + def _reduce_120(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 298) + def _reduce_121(val, _values, result) + result = [] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 299) + def _reduce_122(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 303) + def _reduce_123(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 304) + def _reduce_124(val, _values, result) + result = [ make_node(val) { |v| Riml::SplatNode.new(v[1]) } ] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 305) + def _reduce_125(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 306) + def _reduce_126(val, _values, result) + result = val[0] << make_node(val) { |v| Riml::SplatNode.new(v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 310) + def _reduce_127(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 311) + def _reduce_128(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 315) + def _reduce_129(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 316) + def _reduce_130(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 318) + def _reduce_131(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 319) + def _reduce_132(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 320) + def _reduce_133(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 323) + def _reduce_134(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 325) + def _reduce_135(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 326) + def _reduce_136(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 327) + def _reduce_137(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 329) + def _reduce_138(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 330) + def _reduce_139(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 331) + def _reduce_140(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 333) + def _reduce_141(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 334) + def _reduce_142(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 335) + def _reduce_143(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 337) + def _reduce_144(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 338) + def _reduce_145(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 339) + def _reduce_146(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 341) + def _reduce_147(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 342) + def _reduce_148(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 343) + def _reduce_149(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 345) + def _reduce_150(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 346) + def _reduce_151(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 347) + def _reduce_152(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 349) + def _reduce_153(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 350) + def _reduce_154(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 351) + def _reduce_155(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 353) + def _reduce_156(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 354) + def _reduce_157(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 355) + def _reduce_158(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 356) + def _reduce_159(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 357) + def _reduce_160(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 358) + def _reduce_161(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 360) + def _reduce_162(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 361) + def _reduce_163(val, _values, result) + result = make_node(val) { |v| Riml::BinaryOperatorNode.new(v[1], [v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 365) + def _reduce_164(val, _values, result) + result = make_node(val) { |v| Riml::UnaryOperatorNode.new(val[0], [val[1]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 366) + def _reduce_165(val, _values, result) + result = make_node(val) { |v| Riml::UnaryOperatorNode.new(val[0], [val[1]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 367) + def _reduce_166(val, _values, result) + result = make_node(val) { |v| Riml::UnaryOperatorNode.new(val[0], [val[1]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 372) + def _reduce_167(val, _values, result) + result = make_node(val) { |v| Riml::AssignNode.new(v[1][0], v[1][1], v[1][2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 373) + def _reduce_168(val, _values, result) + result = make_node(val) { |v| Riml::AssignNode.new(v[0][0], v[0][1], v[0][2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 377) + def _reduce_169(val, _values, result) + result = make_node(val) { |v| Riml::MultiAssignNode.new([v[0], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 378) + def _reduce_170(val, _values, result) + val[0].assigns << val[2]; result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 383) + def _reduce_171(val, _values, result) + result = [val[1], val[0], val[2]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 384) + def _reduce_172(val, _values, result) + result = [val[1], val[0], val[2]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 385) + def _reduce_173(val, _values, result) + result = [val[1], val[0], val[2]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 386) + def _reduce_174(val, _values, result) + result = [val[1], val[0], val[2]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 390) + def _reduce_175(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 391) + def _reduce_176(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 392) + def _reduce_177(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 393) + def _reduce_178(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 394) + def _reduce_179(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 399) + def _reduce_180(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 400) + def _reduce_181(val, _values, result) + result = make_node(val) { |v| Riml::GetSpecialVariableNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 401) + def _reduce_182(val, _values, result) + result = make_node(val) { |v| Riml::GetVariableByScopeAndDictNameNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 405) + def _reduce_183(val, _values, result) + result = make_node(val) { |v| Riml::GetVariableNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 409) + def _reduce_184(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 410) + def _reduce_185(val, _values, result) + result = make_node(val) { |v| Riml::GetCurlyBraceNameNode.new(v[0], v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 414) + def _reduce_186(val, _values, result) + result = make_node(val) { |v| Riml::UnletVariableNode.new('!', [ v[1] ]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 415) + def _reduce_187(val, _values, result) + result = make_node(val) { |v| Riml::UnletVariableNode.new('!', [ v[1] ]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 416) + def _reduce_188(val, _values, result) + result = val[0] << val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 420) + def _reduce_189(val, _values, result) + result = make_node(val) { |v| Riml::CurlyBraceVariable.new([ v[0] ]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 421) + def _reduce_190(val, _values, result) + result = make_node(val) { |v| Riml::CurlyBraceVariable.new([ Riml::CurlyBracePart.new(v[0]), v[1] ]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 422) + def _reduce_191(val, _values, result) + result = val[0] << make_node(val) { |v| Riml::CurlyBracePart.new(v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 423) + def _reduce_192(val, _values, result) + result = val[0] << val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 427) + def _reduce_193(val, _values, result) + result = make_node(val) { |v| Riml::CurlyBracePart.new(v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 428) + def _reduce_194(val, _values, result) + result = make_node(val) { |v| Riml::CurlyBracePart.new([v[1], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 429) + def _reduce_195(val, _values, result) + result = make_node(val) { |v| Riml::CurlyBracePart.new([v[1], v[2]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 435) + def _reduce_196(val, _values, result) + result = make_node(val) { |v| Riml.const_get(val[0]).new('!', v[1][0], v[1][1], v[2], [], v[3], v[4]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 436) + def _reduce_197(val, _values, result) + result = make_node(val) { |v| Riml.const_get(val[0]).new('!', v[1][0], v[1][1], v[2], v[4], v[6], v[7]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 437) + def _reduce_198(val, _values, result) + result = make_node(val) { |v| Riml.const_get(val[0]).new('!', v[1][0], v[1][1], v[2], [v[4]], v[6], v[7]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 438) + def _reduce_199(val, _values, result) + result = make_node(val) { |v| Riml.const_get(val[0]).new('!', v[1][0], v[1][1], v[2], v[4] << v[6], v[8], v[9]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 442) + def _reduce_200(val, _values, result) + result = "DefNode" + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 443) + def _reduce_201(val, _values, result) + result = "DefNode" + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 444) + def _reduce_202(val, _values, result) + result = "DefMethodNode" + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 449) + def _reduce_203(val, _values, result) + result = make_node(val) { |v| Riml::GetCurlyBraceNameNode.new('', v[0]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 450) + def _reduce_204(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 455) + def _reduce_205(val, _values, result) + result = [val[0]] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 456) + def _reduce_206(val, _values, result) + result = val[0] << val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 457) + def _reduce_207(val, _values, result) + result = nil + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 461) + def _reduce_208(val, _values, result) + result = [] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 462) + def _reduce_209(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 463) + def _reduce_210(val, _values, result) + result = val + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 464) + def _reduce_211(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 465) + def _reduce_212(val, _values, result) + result = val[0] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 469) + def _reduce_213(val, _values, result) + result = make_node(val) { |v| Riml::DefaultParamNode.new(v[0], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 473) + def _reduce_214(val, _values, result) + result = make_node(val) { |v| Riml::ReturnNode.new(v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 474) + def _reduce_215(val, _values, result) + result = make_node(val) { |v| Riml::IfNode.new(v[3], Nodes.new([ReturnNode.new(v[1])])) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 475) + def _reduce_216(val, _values, result) + result = make_node(val) { |v| Riml::UnlessNode.new(v[3], Nodes.new([ReturnNode.new(v[1])])) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 479) + def _reduce_217(val, _values, result) + result = nil + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 480) + def _reduce_218(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 484) + def _reduce_219(val, _values, result) + result = make_node(val) { |_| Riml::FinishNode.new } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 489) + def _reduce_220(val, _values, result) + result = make_node(val) { |v| Riml::IfNode.new(v[1], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 490) + def _reduce_221(val, _values, result) + result = make_node(val) { |v| Riml::IfNode.new(v[1], Riml::Nodes.new([v[3]])) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 491) + def _reduce_222(val, _values, result) + result = make_node(val) { |v| Riml::IfNode.new(v[2], Riml::Nodes.new([v[0]])) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 495) + def _reduce_223(val, _values, result) + result = make_node(val) { |v| Riml::UnlessNode.new(v[1], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 496) + def _reduce_224(val, _values, result) + result = make_node(val) { |v| Riml::UnlessNode.new(v[1], Riml::Nodes.new([v[3]])) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 497) + def _reduce_225(val, _values, result) + result = make_node(val) { |v| Riml::UnlessNode.new(v[2], Riml::Nodes.new([v[0]])) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 501) + def _reduce_226(val, _values, result) + result = make_node(val) { |v| Riml::TernaryOperatorNode.new([v[0], v[2], v[4]]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 505) + def _reduce_227(val, _values, result) + result = make_node(val) { |v| Riml::WhileNode.new(v[1], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 509) + def _reduce_228(val, _values, result) + result = make_node(val) { |_| Riml::BreakNode.new } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 510) + def _reduce_229(val, _values, result) + result = make_node(val) { |_| Riml::ContinueNode.new } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 514) + def _reduce_230(val, _values, result) + result = make_node(val) { |v| Riml::UntilNode.new(v[1], v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 518) + def _reduce_231(val, _values, result) + result = make_node(val) { |v| Riml::ForNode.new(v[1], v[3], v[4]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 519) + def _reduce_232(val, _values, result) + result = make_node(val) { |v| Riml::ForNode.new(v[1], v[3], v[4]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 520) + def _reduce_233(val, _values, result) + result = make_node(val) { |v| Riml::ForNode.new(v[1], v[3], v[4]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 524) + def _reduce_234(val, _values, result) + result = make_node(val) { |v| Riml::TryNode.new(v[1], nil, nil) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 525) + def _reduce_235(val, _values, result) + result = make_node(val) { |v| Riml::TryNode.new(v[1], v[2], nil) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 526) + def _reduce_236(val, _values, result) + result = make_node(val) { |v| Riml::TryNode.new(v[1], v[2], v[4]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 530) + def _reduce_237(val, _values, result) + result = nil + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 531) + def _reduce_238(val, _values, result) + result = [ make_node(val) { |v| Riml::CatchNode.new(nil, v[1]) } ] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 532) + def _reduce_239(val, _values, result) + result = [ make_node(val) { |v| Riml::CatchNode.new(v[1], v[2]) } ] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 533) + def _reduce_240(val, _values, result) + result = val[0] << make_node(val) { |v| Riml::CatchNode.new(nil, v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 534) + def _reduce_241(val, _values, result) + result = val[0] << make_node(val) { |v| Riml::CatchNode.new(v[2], v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 538) + def _reduce_242(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 539) + def _reduce_243(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 546) + def _reduce_244(val, _values, result) + result = val[1] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 547) + def _reduce_245(val, _values, result) + result = make_node(val) { |_| Riml::Nodes.new([]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 551) + def _reduce_246(val, _values, result) + result = val[0] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 552) + def _reduce_247(val, _values, result) + result = val[1] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 553) + def _reduce_248(val, _values, result) + result = val[1] << val[2] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 554) + def _reduce_249(val, _values, result) + result = val[1] << val[2] << val[3] + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 558) + def _reduce_250(val, _values, result) + result = make_node(val) { |v| Riml::ElseNode.new(v[2]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 562) + def _reduce_251(val, _values, result) + result = make_node(val) { |v| Riml::Nodes.new([Riml::ElseifNode.new(v[1], v[3])]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 563) + def _reduce_252(val, _values, result) + result = val[0] << make_node(val) { |v| Riml::ElseifNode.new(v[2], v[4]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 567) + def _reduce_253(val, _values, result) + result = make_node(val) { |v| Riml::ClassDefinitionNode.new(v[1], v[2], nil, v[3]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 568) + def _reduce_254(val, _values, result) + result = make_node(val) { |v| Riml::ClassDefinitionNode.new(v[1], v[2], (v[4] || ClassDefinitionNode::DEFAULT_SCOPE_MODIFIER) + v[5], v[6]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 572) + def _reduce_255(val, _values, result) + result = make_node(val) { |v| Riml::ObjectInstantiationNode.new(v[1]) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 576) + def _reduce_256(val, _values, result) + result = make_node(val) { |v| Riml::SuperNode.new(v[2], true) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 577) + def _reduce_257(val, _values, result) + result = make_node(val) { |_| Riml::SuperNode.new([], false) } + result + end +.,., + +module_eval(<<'.,.,', 'riml.y', 581) + def _reduce_258(val, _values, result) + result = make_node(val) { |v| Riml::ExLiteralNode.new(v[0]) } + result + end +.,., + +def _reduce_none(val, _values, result) + val[0] +end + + end # class Parser + end # module Riml |