# # DO NOT MODIFY!!!! # This file is automatically generated by Racc 1.4.9 # from Racc grammer file "". # require 'racc/parser.rb' require 'puppet' require 'puppet/pops' module Puppet class ParseError < Puppet::Error; end class ImportError < Racc::ParseError; end class AlreadyImportedError < ImportError; end end module Puppet module Pops module Parser class Parser < Racc::Parser module_eval(<<'...end egrammar.ra/module_eval...', 'egrammar.ra', 928) # Make emacs happy # Local Variables: # mode: ruby # End: ...end egrammar.ra/module_eval... ##### State transition tables begin ### clist = [ '65,77,301,-147,63,71,399,72,71,301,72,-278,114,83,87,88,89,-287,348', '-292,289,400,304,302,21,20,116,-290,119,267,302,53,115,56,152,67,12', '86,61,45,48,94,55,46,10,11,-147,158,64,19,290,304,47,118,-278,17,18', '155,131,132,-287,349,-292,82,90,92,91,93,129,54,-290,268,126,44,78,95', '80,81,79,-187,-187,62,50,68,69,57,65,77,60,59,63,71,70,72,454,70,129', '129,114,453,126,126,326,122,128,327,470,-277,125,159,21,20,116,176,119', '471,127,53,115,56,152,67,12,168,61,45,48,84,55,46,10,11,128,128,64,19', '125,125,47,118,181,17,18,155,127,127,177,129,197,82,-277,126,129,129', '129,54,126,126,126,44,78,95,80,81,421,199,72,62,50,68,69,57,65,77,60', '59,63,71,70,72,519,202,129,128,86,453,126,125,128,128,128,269,125,125', '125,127,21,20,-187,-187,127,127,127,53,380,56,94,67,12,114,61,45,48', '301,55,46,10,11,128,94,64,19,125,116,47,119,304,17,18,115,127,301,129', '129,302,82,126,126,129,129,282,54,126,126,304,44,78,152,80,81,118,283', '302,62,50,68,69,57,65,77,60,59,63,71,70,72,294,-232,128,128,155,284', '125,125,128,128,131,132,125,125,127,127,21,20,-188,-188,127,127,129', '53,382,56,126,67,12,158,61,45,48,301,55,46,10,11,178,77,64,19,179,466', '47,465,304,17,18,178,77,301,168,179,302,82,-189,-189,128,129,287,54', '125,126,304,44,78,288,80,81,127,292,302,62,50,68,69,57,65,77,60,59,63', '71,70,72,338,-191,-191,176,114,466,173,465,317,128,280,279,318,125,280', '279,21,20,116,324,119,127,-233,53,115,56,82,67,134,324,61,45,48,86,55', '46,177,78,280,279,64,19,280,279,47,118,94,17,18,178,77,280,279,179,94', '82,329,328,129,340,341,54,126,94,94,44,78,346,80,81,168,354,372,62,50', '68,69,57,65,77,60,59,63,71,70,72,373,375,379,176,384,386,173,390,128', '392,304,395,125,396,301,448,21,20,409,410,127,411,412,53,413,56,82,67', '134,416,61,45,48,292,55,46,177,78,422,424,64,19,395,-232,47,429,431', '17,18,178,77,438,439,179,346,82,347,442,445,395,395,54,158,455,456,44', '78,459,80,81,460,463,467,62,50,68,69,57,65,77,60,59,63,71,70,72,469', '480,482,176,114,484,173,346,488,490,346,493,494,346,497,501,21,20,116', '469,119,503,505,53,115,56,82,67,134,506,61,45,48,507,55,46,177,78,346', '509,64,19,354,514,47,118,515,17,18,516,517,518,527,528,529,82,530,532', '533,534,375,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70', '72,,,,,114,,,,,,,,,,,,21,20,116,,119,,,53,115,56,,67,12,,61,45,48,,55', '46,10,11,,,64,19,,,47,118,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,', ',62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53', ',56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,', ',54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,', ',,,,,,,,,,21,20,143,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19', ',,47,,,17,18,,,,,178,77,82,,179,,,,54,,,,44,78,,80,81,,,,147,144,68', '69,145,151,150,146,59,65,77,70,,63,71,,72,,,,176,,,173,,,,,,,,,,21,20', ',,,,,53,,56,82,67,134,,61,45,48,,55,46,177,78,,,64,19,,,47,,,17,18,', ',,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71', '70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,', ',64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69', '57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,114,53,,56,,67', '134,,61,45,48,,55,46,116,,119,,64,19,115,,47,,,17,18,,,,,,,82,,,,,,54', ',118,,44,78,,80,81,,,,62,50,68,69,57,96,97,60,59,65,77,70,95,63,71,183', '72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,', ',64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69', '145,151,150,146,59,65,77,70,,63,71,188,72,,,,,,,,,,,,,,,,,21,20,,,,', ',53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145,151,150,146,59,65,77,70', ',63,71,,72,190,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55', '46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147', '144,68,69,145,151,150,146,59,65,77,70,,63,71,,72,,,,,,,,,,,,,,,,,21', '20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,', ',,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70', '201,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64', '19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65', '77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45', '48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81', ',,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,', ',53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,', ',,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19', ',,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77', '60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48', ',55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,', ',,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,', '53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,', ',,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,', ',,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19', ',,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77', '60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48', ',55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,', ',,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,', '53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,', ',,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,', ',,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19', ',,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77', '60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,219,234,225,235,67,227', '237,229,45,217,,221,215,,,,,64,19,238,233,216,,,17,214,,,,,,,82,,,,', '236,220,,,,44,78,,80,81,,,,230,218,231,232,226,240,239,228,59,65,77', '70,114,63,71,,72,,,,,,,,,,116,,119,,,,115,21,20,,,,,,53,,56,,67,134', ',61,45,48,,55,46,118,,,,64,19,,,47,,,17,18,,,96,97,,,82,,,95,,,54,,', ',44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,', ',,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18', ',,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71', '70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,', ',64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69', '57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134', ',61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80', '81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,', ',,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,', ',,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,', ',47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77', '60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48', ',55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62', '50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56', ',67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,', '44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,', ',,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18', ',,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71', '70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,', ',64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69', '57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134', ',61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80', '81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,', ',,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,', ',,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,', ',47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77', '60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48', ',55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62', '50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56', ',67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,', '44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,', ',,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18', ',,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71', '70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,', ',64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69', '57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134', ',61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80', '81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,', ',,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,262,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72', ',,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64', '19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145', '151,150,146,59,65,77,70,114,63,71,,72,,,,,,,,,,116,,119,,,,115,21,20', ',,,,,53,,56,,67,134,,61,45,48,,55,46,118,,,,64,19,,,47,,,17,18,,,96', '97,,,82,,,95,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71', '70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,', ',64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69', '57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134', ',61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80', '81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,306', ',,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,', '82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145,151,150,146,59,65,77', '70,,63,71,,72,315,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48', ',55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,', ',,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,', '53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,', ',,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,190', ',,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64', '19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145', '151,150,146,59,65,77,70,,63,71,,72,,,347,,,,,,,,,,,,,,21,20,,,,,,53', ',56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54', ',,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,', ',,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17', '18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63', '71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46', ',,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68', '69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67', '134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78', ',80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21', '20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,', ',82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72', ',,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64', '19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145', '151,150,146,59,65,77,70,,63,71,,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56', ',67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54', ',,,44,78,,80,81,,,,147,144,68,69,145,151,150,146,59,65,77,70,,63,71', ',72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11', ',,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68', '69,145,151,150,146,59,65,77,70,,63,71,,72,,,,,,,,,,,,,,,,,21,20,,,,', ',53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,402', ',,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64', '19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65', '77,60,59,63,71,70,72,404,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61', '45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80', '81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,', ',,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,', ',,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19', ',,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145,151', '150,146,59,65,77,70,,63,71,,72,425,,,,,,,,,,,,,,,,21,20,,,,,,53,,56', ',67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54', ',,,44,78,,80,81,,,,147,144,68,69,145,151,150,146,59,65,77,70,,63,71', ',72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11', ',,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69', '57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134', ',61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80', '81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,', ',,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,', ',,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,', ',47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77', '60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48', ',55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62', '50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56', ',67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54', ',,,44,78,,80,81,,,,147,144,68,69,145,151,150,146,59,65,77,70,,63,71', ',72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64', '19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65', '77,60,59,63,71,70,72,458,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61', '45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80', '81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,', ',,,,53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82', ',,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,', ',,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19', ',,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145,151', '150,146,59,65,77,70,,63,71,,72,472,,,,,,,,,,,,,,,,21,20,,,,,,53,,56', ',67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,', '44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,', ',,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17', '18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63', '71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10', '11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68', '69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67', '12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44', '78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,', '21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18', ',,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145,151,150,146,59', '65,77,70,,63,71,,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45', '48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,', ',62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53', ',56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,', ',54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,', ',,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,', '47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145,151', '150,146,59,65,77,70,,63,71,,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67', '12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44', '78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,', '21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18', ',,,,,,82,,,,,,54,,,,44,78,,80,81,,,,147,144,68,69,145,151,150,146,59', '65,77,70,,63,71,,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,134,,61,45', '48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,', ',62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53', ',56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54', ',,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,511,,,,,,', ',,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47', ',,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60', '59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55', '46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62', '50,68,69,57,65,77,60,59,63,71,70,72,521,,,,,,,,,,,,,,,,21,20,,,,,,53', ',56,,67,12,,61,45,48,,55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,', ',54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77,60,59,63,71,70,72,523,,', ',,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48,,55,46,10,11,,,64,19', ',,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,,,,62,50,68,69,57,65,77', '60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,,53,,56,,67,12,,61,45,48', ',55,46,10,11,,,64,19,,,47,,,17,18,,,,,,,82,,,,,,54,,,,44,78,,80,81,', ',,62,50,68,69,57,65,77,60,59,63,71,70,72,,,,,,,,,,,,,,,,,21,20,,,,,', '53,,56,,67,134,,61,45,48,,55,46,,,,,64,19,,,47,,,17,18,,,,,,,82,,,,', ',54,,,,44,78,,80,81,,,,62,50,68,69,57,114,,60,59,,,70,,,,,,110,105,116', ',119,,113,,115,,106,108,107,109,,,,,,,,,,,,,,,,118,,,,112,111,,,98,99', '101,100,103,104,,96,97,114,,307,,,95,,,,,,,110,105,116,,119,,113,,115', ',106,108,107,109,,,,,,102,,,,,,,,,,118,,,,112,111,,,98,99,101,100,103', '104,,96,97,114,,308,,,95,,,,,,,110,105,116,,119,,113,,115,,106,108,107', '109,,,,,,102,,,,,,,,,,118,,,,112,111,,,98,99,101,100,103,104,,96,97', '114,,309,,,95,,,,,,,110,105,116,,119,,113,,115,,106,108,107,109,,,,', ',102,,,,,,,,,,118,,,,112,111,,,98,99,101,100,103,104,114,96,97,,,,,', '95,,,,110,105,116,,119,,113,,115,,106,108,107,109,,,,,,,,,102,,,,,,', '118,,,114,112,111,,,98,99,101,100,103,104,,96,97,116,,119,,,95,115,', ',,114,,,,,,340,341,,,,,110,105,116,344,119,118,113,,115,102,106,108', '107,109,,101,100,,,,96,97,,,,,,95,,118,,,114,112,111,,,98,99,101,100', '103,104,,96,97,116,,119,114,,95,115,102,,,,,,,,,,116,,119,114,,,115', ',,,118,,,,102,,,116,,119,101,100,,115,,96,97,118,,,,114,95,,,98,99,101', '100,,,,96,97,118,116,,119,114,95,,115,98,99,101,100,,,102,96,97,,116', ',119,,95,,115,,,,118,,,102,,,,,98,99,101,100,103,104,,96,97,118,,,102', '114,95,,,98,99,101,100,103,104,,96,97,105,116,,119,114,95,,115,,106', ',,,,102,,,105,116,,119,,,,115,,106,,118,,,102,,,,,98,99,101,100,103', '104,,96,97,118,,,,114,95,,,98,99,101,100,103,104,,96,97,105,116,,119', '114,95,,115,,106,,,,,102,,,105,116,,119,,,,115,,106,,118,,,102,,,,,98', '99,101,100,103,104,,96,97,118,,,,,95,,,98,99,101,100,103,104,114,96', '97,,,,,,95,,,,110,105,116,,119,102,113,,115,,106,108,107,109,,,,,,,', ',102,,,,,,,118,,,,,114,,,98,99,101,100,103,104,,96,97,110,105,116,,119', '95,113,,115,,106,108,107,109,,,,,,,,,,,,,,,,118,,102,,,111,,,98,99,101', '100,103,104,114,96,97,,,350,,,95,,,,110,105,116,,119,,113,,115,,106', '108,107,109,,,,,,,,,102,,,,,,,118,,,,112,111,,,98,99,101,100,103,104', ',96,97,114,-66,,,,95,-66,,,,,,110,105,116,,119,,113,,115,,106,108,107', '109,,,,,,102,,,,,,,,,,118,,,,112,111,,,98,99,101,100,103,104,114,96', '97,,,,,,95,,,,110,105,116,,119,,113,,115,,106,108,107,109,,,,,,,,,102', ',,,,,,118,,,,112,111,,,98,99,101,100,103,104,114,96,97,,,,,,95,,,,110', '105,116,376,119,,113,,115,,106,108,107,109,,,,,,,,,102,,,,,,,118,,,', '112,111,,,98,99,101,100,103,104,114,96,97,,,,,,95,,,,110,105,116,,119', ',113,,115,,106,108,107,109,,,,,,,,,102,,,,,,,118,,,,112,111,,,98,99', '101,100,103,104,114,96,97,,,,,,95,,,,110,105,116,,119,,113,,115,,106', '108,107,109,,,,,,,,,102,,,,,,,118,,,,112,111,,,98,99,101,100,103,104', '114,96,97,,,,,,95,,,,110,105,116,,119,,113,,115,,106,108,107,109,,,', ',,,,,102,,,,,,,118,,,,112,111,,,98,99,101,100,103,104,114,96,97,,,,', ',95,,,,110,105,116,,119,,113,,115,,106,108,107,109,,,,,,,,,102,,,,,', ',118,,,,112,111,,,98,99,101,100,103,104,114,96,97,,,,,,95,,,,110,105', '116,,119,,113,,115,,106,108,107,109,,,,,,,,,102,,,,,,,118,,,,112,111', ',,98,99,101,100,103,104,114,96,97,,,,,,95,,,,110,105,116,,119,,113,', '115,,106,108,107,109,,,,,,,,,102,,,,,,,118,,,,112,111,,,98,99,101,100', '103,104,114,96,97,,,,,,95,,,,110,105,116,,119,,113,,115,,106,108,107', '109,,,,,,,,,102,,,,,,,118,,,,112,111,,,98,99,101,100,103,104,,96,97', ',362,234,361,235,95,359,237,363,,356,,358,360,,,,,,,238,233,364,,,,357', ',,,,102,,,,,,,236,365,,,,,,,,,,,,368,366,369,367,370,240,239,371,362', '234,361,235,,359,237,363,,356,,358,360,,,,,,,238,233,364,,,,357,,,,', ',,,,,,,236,365,,,,,,,,,,,,368,366,369,367,370,240,239,371,362,234,361', '235,,359,237,363,,356,,358,360,,,,,,,238,233,364,,,,357,,,,,,,,,,,,236', '365,,,,,,,,,,,,368,366,369,367,370,240,239,371,362,234,361,235,,359', '237,363,,356,,358,360,,,,,,,238,233,364,,,,357,,,,,,,,,,,,236,365,,', ',,,,,,,,,368,366,369,367,370,240,239,371,362,234,361,235,,359,237,363', ',356,,358,360,,,,,,,238,233,364,,,,357,,,,,,,,,,,,236,365,,,,,,,,,,', ',368,366,369,367,370,240,239,371,362,234,361,235,,359,237,363,,356,', '358,360,,,,,,,238,233,364,,,,357,,,,,,,,,,,,236,365,,,,,,,,,,,,368,366', '369,367,370,240,239,371' ] racc_action_table = arr = ::Array.new(10078, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end clist = [ '0,0,303,217,0,0,305,0,181,395,181,215,242,1,7,7,7,216,224,231,155,305', '395,303,0,0,242,232,242,116,395,0,242,0,50,0,0,5,0,0,0,8,0,0,0,0,217', '51,0,0,155,181,0,242,215,0,0,50,16,16,216,224,231,0,7,7,7,7,56,0,232', '116,56,0,0,242,0,0,0,217,217,0,0,0,0,0,4,4,0,0,4,4,0,4,388,181,12,227', '243,388,12,227,189,12,56,189,406,227,56,52,4,4,243,318,243,406,56,4', '243,4,144,4,4,60,4,4,4,4,4,4,4,4,12,227,4,4,12,227,4,243,66,4,4,144', '12,227,318,57,78,4,227,57,59,62,130,4,59,62,130,4,4,243,4,4,320,79,320', '4,4,4,4,4,10,10,4,4,10,10,4,10,498,83,134,57,85,498,134,57,59,62,130', '117,59,62,130,57,10,10,48,48,59,62,130,10,279,10,120,10,10,133,10,10', '10,279,10,10,10,10,134,121,10,10,134,133,10,133,279,10,10,133,134,158', '145,147,279,10,145,147,166,225,137,10,166,225,158,10,10,218,10,10,133', '138,158,10,10,10,10,10,11,11,10,10,11,11,10,11,158,139,145,147,218,142', '145,147,166,225,58,58,166,225,145,147,11,11,63,63,166,225,226,11,280', '11,226,11,11,143,11,11,11,280,11,11,11,11,197,197,11,11,197,402,11,402', '280,11,11,61,61,199,146,61,280,11,64,64,226,230,148,11,226,230,199,11', '11,153,11,11,226,157,199,11,11,11,11,11,17,17,11,11,17,17,11,17,199', '65,65,61,135,463,61,463,169,230,123,123,171,230,164,164,17,17,135,182', '135,230,185,17,135,17,61,17,17,187,17,17,17,203,17,17,61,61,165,165', '17,17,167,167,17,135,208,17,17,229,229,180,180,229,209,17,194,194,379', '429,429,17,379,210,211,17,17,213,17,17,228,264,271,17,17,17,17,17,18', '18,17,17,18,18,17,18,273,274,277,229,281,285,229,290,379,291,292,295', '379,301,302,379,18,18,310,311,379,312,313,18,314,18,229,18,18,316,18', '18,18,319,18,18,229,229,323,325,18,18,337,342,18,343,345,18,18,317,317', '351,353,317,355,18,357,374,377,381,383,18,386,389,390,18,18,393,18,18', '394,401,403,18,18,18,18,18,19,19,18,18,19,19,18,19,404,414,419,317,136', '428,317,430,437,441,444,449,450,451,457,466,19,19,136,467,136,469,471', '19,136,19,317,19,19,474,19,19,19,477,19,19,317,317,478,479,19,19,483', '486,19,136,487,19,19,492,495,496,508,510,512,19,513,520,522,524,531', '19,,,,19,19,,19,19,,,,19,19,19,19,19,20,20,19,19,20,20,19,20,,,,,241', ',,,,,,,,,,,20,20,241,,241,,,20,241,20,,20,20,,20,20,20,,20,20,20,20', ',,20,20,,,20,241,,20,20,,,,,,,20,,,,,,20,,,,20,20,,20,20,,,,20,20,20', '20,20,21,21,20,20,21,21,20,21,,,,,,,,,,,,,,,,,21,21,,,,,,21,,21,,21', '21,,21,21,21,,21,21,21,21,,,21,21,,,21,,,21,21,,,,,,,21,,,,,,21,,,,21', '21,,21,21,,,,21,21,21,21,21,49,49,21,21,49,49,21,49,,,,,,,,,,,,,,,,', '49,49,49,,,,,49,,49,,49,49,,49,49,49,,49,49,49,49,,,49,49,,,49,,,49', '49,,,,,416,416,49,,416,,,,49,,,,49,49,,49,49,,,,49,49,49,49,49,49,49', '49,49,53,53,49,,53,53,,53,,,,416,,,416,,,,,,,,,,53,53,,,,,,53,,53,416', '53,53,,53,53,53,,53,53,416,416,,,53,53,,,53,,,53,53,,,,,,,53,,,,,,53', ',,,53,53,,53,53,,,,53,53,53,53,53,54,54,53,53,54,54,53,54,,,,,,,,,,', ',,,,,,54,54,,,,,,54,,54,,54,54,,54,54,54,,54,54,,,,,54,54,,,54,,,54', '54,,,,,,,54,,,,,,54,,,,54,54,,54,54,,,,54,54,54,54,54,55,55,54,54,55', '55,54,55,,,,,,,,,,,,,,,,,55,55,,,,,246,55,,55,,55,55,,55,55,55,,55,55', '246,,246,,55,55,246,,55,,,55,55,,,,,,,55,,,,,,55,,246,,55,55,,55,55', ',,,55,55,55,55,55,246,246,55,55,70,70,55,246,70,70,70,70,,,,,,,,,,,', ',,,,,70,70,,,,,,70,,70,,70,70,,70,70,70,,70,70,70,70,,,70,70,,,70,,', '70,70,,,,,,,70,,,,,,70,,,,70,70,,70,70,,,,70,70,70,70,70,70,70,70,70', '71,71,70,,71,71,71,71,,,,,,,,,,,,,,,,,71,71,,,,,,71,,71,,71,71,,71,71', '71,,71,71,71,71,,,71,71,,,71,,,71,71,,,,,,,71,,,,,,71,,,,71,71,,71,71', ',,,71,71,71,71,71,71,71,71,71,72,72,71,,72,72,,72,72,,,,,,,,,,,,,,,', '72,72,,,,,,72,,72,,72,72,,72,72,72,,72,72,72,72,,,72,72,,,72,,,72,72', ',,,,,,72,,,,,,72,,,,72,72,,72,72,,,,72,72,72,72,72,72,72,72,72,76,76', '72,,76,76,,76,,,,,,,,,,,,,,,,,76,76,,,,,,76,,76,,76,76,,76,76,76,,76', '76,76,76,,,76,76,,,76,,,76,76,,,,,,,76,,,,,,76,,,,76,76,,76,76,,,,76', '76,76,76,76,81,81,76,76,81,81,76,81,,,,,,,,,,,,,,,,,81,81,,,,,,81,,81', ',81,81,,81,81,81,,81,81,,,,,81,81,,,81,,,81,81,,,,,,,81,,,,,,81,,,,81', '81,,81,81,,,,81,81,81,81,81,84,84,81,81,84,84,81,84,,,,,,,,,,,,,,,,', '84,84,,,,,,84,,84,,84,84,,84,84,84,,84,84,84,84,,,84,84,,,84,,,84,84', ',,,,,,84,,,,,,84,,,,84,84,,84,84,,,,84,84,84,84,84,86,86,84,84,86,86', '84,86,,,,,,,,,,,,,,,,,86,86,,,,,,86,,86,,86,86,,86,86,86,,86,86,86,86', ',,86,86,,,86,,,86,86,,,,,,,86,,,,,,86,,,,86,86,,86,86,,,,86,86,86,86', '86,87,87,86,86,87,87,86,87,,,,,,,,,,,,,,,,,87,87,,,,,,87,,87,,87,87', ',87,87,87,,87,87,87,87,,,87,87,,,87,,,87,87,,,,,,,87,,,,,,87,,,,87,87', ',87,87,,,,87,87,87,87,87,88,88,87,87,88,88,87,88,,,,,,,,,,,,,,,,,88', '88,,,,,,88,,88,,88,88,,88,88,88,,88,88,88,88,,,88,88,,,88,,,88,88,,', ',,,,88,,,,,,88,,,,88,88,,88,88,,,,88,88,88,88,88,89,89,88,88,89,89,88', '89,,,,,,,,,,,,,,,,,89,89,,,,,,89,,89,,89,89,,89,89,89,,89,89,89,89,', ',89,89,,,89,,,89,89,,,,,,,89,,,,,,89,,,,89,89,,89,89,,,,89,89,89,89', '89,90,90,89,89,90,90,89,90,,,,,,,,,,,,,,,,,90,90,,,,,,90,,90,,90,90', ',90,90,90,,90,90,90,90,,,90,90,,,90,,,90,90,,,,,,,90,,,,,,90,,,,90,90', ',90,90,,,,90,90,90,90,90,91,91,90,90,91,91,90,91,,,,,,,,,,,,,,,,,91', '91,,,,,,91,,91,,91,91,,91,91,91,,91,91,91,91,,,91,91,,,91,,,91,91,,', ',,,,91,,,,,,91,,,,91,91,,91,91,,,,91,91,91,91,91,92,92,91,91,92,92,91', '92,,,,,,,,,,,,,,,,,92,92,,,,,,92,,92,,92,92,,92,92,92,,92,92,92,92,', ',92,92,,,92,,,92,92,,,,,,,92,,,,,,92,,,,92,92,,92,92,,,,92,92,92,92', '92,93,93,92,92,93,93,92,93,,,,,,,,,,,,,,,,,93,93,,,,,,93,,93,,93,93', ',93,93,93,,93,93,93,93,,,93,93,,,93,,,93,93,,,,,,,93,,,,,,93,,,,93,93', ',93,93,,,,93,93,93,93,93,94,94,93,93,94,94,93,94,,,,,,,,,,,,,,,,,94', '94,,,,,,94,94,94,94,94,94,94,94,94,94,,94,94,,,,,94,94,94,94,94,,,94', '94,,,,,,,94,,,,,94,94,,,,94,94,,94,94,,,,94,94,94,94,94,94,94,94,94', '95,95,94,247,95,95,,95,,,,,,,,,,247,,247,,,,247,95,95,,,,,,95,,95,,95', '95,,95,95,95,,95,95,247,,,,95,95,,,95,,,95,95,,,247,247,,,95,,,247,', ',95,,,,95,95,,95,95,,,,95,95,95,95,95,96,96,95,95,96,96,95,96,,,,,,', ',,,,,,,,,,96,96,,,,,,96,,96,,96,96,,96,96,96,,96,96,,,,,96,96,,,96,', ',96,96,,,,,,,96,,,,,,96,,,,96,96,,96,96,,,,96,96,96,96,96,97,97,96,96', '97,97,96,97,,,,,,,,,,,,,,,,,97,97,,,,,,97,,97,,97,97,,97,97,97,,97,97', ',,,,97,97,,,97,,,97,97,,,,,,,97,,,,,,97,,,,97,97,,97,97,,,,97,97,97', '97,97,98,98,97,97,98,98,97,98,,,,,,,,,,,,,,,,,98,98,,,,,,98,,98,,98', '98,,98,98,98,,98,98,,,,,98,98,,,98,,,98,98,,,,,,,98,,,,,,98,,,,98,98', ',98,98,,,,98,98,98,98,98,99,99,98,98,99,99,98,99,,,,,,,,,,,,,,,,,99', '99,,,,,,99,,99,,99,99,,99,99,99,,99,99,,,,,99,99,,,99,,,99,99,,,,,,', '99,,,,,,99,,,,99,99,,99,99,,,,99,99,99,99,99,100,100,99,99,100,100,99', '100,,,,,,,,,,,,,,,,,100,100,,,,,,100,,100,,100,100,,100,100,100,,100', '100,,,,,100,100,,,100,,,100,100,,,,,,,100,,,,,,100,,,,100,100,,100,100', ',,,100,100,100,100,100,101,101,100,100,101,101,100,101,,,,,,,,,,,,,', ',,,101,101,,,,,,101,,101,,101,101,,101,101,101,,101,101,,,,,101,101', ',,101,,,101,101,,,,,,,101,,,,,,101,,,,101,101,,101,101,,,,101,101,101', '101,101,102,102,101,101,102,102,101,102,,,,,,,,,,,,,,,,,102,102,,,,', ',102,,102,,102,102,,102,102,102,,102,102,,,,,102,102,,,102,,,102,102', ',,,,,,102,,,,,,102,,,,102,102,,102,102,,,,102,102,102,102,102,103,103', '102,102,103,103,102,103,,,,,,,,,,,,,,,,,103,103,,,,,,103,,103,,103,103', ',103,103,103,,103,103,,,,,103,103,,,103,,,103,103,,,,,,,103,,,,,,103', ',,,103,103,,103,103,,,,103,103,103,103,103,104,104,103,103,104,104,103', '104,,,,,,,,,,,,,,,,,104,104,,,,,,104,,104,,104,104,,104,104,104,,104', '104,,,,,104,104,,,104,,,104,104,,,,,,,104,,,,,,104,,,,104,104,,104,104', ',,,104,104,104,104,104,105,105,104,104,105,105,104,105,,,,,,,,,,,,,', ',,,105,105,,,,,,105,,105,,105,105,,105,105,105,,105,105,,,,,105,105', ',,105,,,105,105,,,,,,,105,,,,,,105,,,,105,105,,105,105,,,,105,105,105', '105,105,106,106,105,105,106,106,105,106,,,,,,,,,,,,,,,,,106,106,,,,', ',106,,106,,106,106,,106,106,106,,106,106,,,,,106,106,,,106,,,106,106', ',,,,,,106,,,,,,106,,,,106,106,,106,106,,,,106,106,106,106,106,107,107', '106,106,107,107,106,107,,,,,,,,,,,,,,,,,107,107,,,,,,107,,107,,107,107', ',107,107,107,,107,107,,,,,107,107,,,107,,,107,107,,,,,,,107,,,,,,107', ',,,107,107,,107,107,,,,107,107,107,107,107,108,108,107,107,108,108,107', '108,,,,,,,,,,,,,,,,,108,108,,,,,,108,,108,,108,108,,108,108,108,,108', '108,,,,,108,108,,,108,,,108,108,,,,,,,108,,,,,,108,,,,108,108,,108,108', ',,,108,108,108,108,108,109,109,108,108,109,109,108,109,,,,,,,,,,,,,', ',,,109,109,,,,,,109,,109,,109,109,,109,109,109,,109,109,,,,,109,109', ',,109,,,109,109,,,,,,,109,,,,,,109,,,,109,109,,109,109,,,,109,109,109', '109,109,110,110,109,109,110,110,109,110,,,,,,,,,,,,,,,,,110,110,,,,', ',110,,110,,110,110,,110,110,110,,110,110,,,,,110,110,,,110,,,110,110', ',,,,,,110,,,,,,110,,,,110,110,,110,110,,,,110,110,110,110,110,111,111', '110,110,111,111,110,111,,,,,,,,,,,,,,,,,111,111,,,,,,111,,111,,111,111', ',111,111,111,,111,111,,,,,111,111,,,111,,,111,111,,,,,,,111,,,,,,111', ',,,111,111,,111,111,,,,111,111,111,111,111,112,112,111,111,112,112,111', '112,,,,,,,,,,,,,,,,,112,112,,,,,,112,,112,,112,112,,112,112,112,,112', '112,,,,,112,112,,,112,,,112,112,,,,,,,112,,,,,,112,,,,112,112,,112,112', ',,,112,112,112,112,112,113,113,112,112,113,113,112,113,,,,,,,,,,,,,', ',,,113,113,,,,,,113,,113,,113,113,,113,113,113,,113,113,,,,,113,113', ',,113,,,113,113,,,,,,,113,,,,,,113,,,113,113,113,,113,113,,,,113,113', '113,113,113,114,114,113,113,114,114,113,114,,,,,,,,,,,,,,,,,114,114', ',,,,,114,,114,,114,114,,114,114,114,,114,114,114,114,,,114,114,,,114', ',,114,114,,,,,,,114,,,,,,114,,,,114,114,,114,114,,,,114,114,114,114', '114,114,114,114,114,118,118,114,248,118,118,,118,,,,,,,,,,248,,248,', ',,248,118,118,,,,,,118,,118,,118,118,,118,118,118,,118,118,248,,,,118', '118,,,118,,,118,118,,,248,248,,,118,,,248,,,118,,,,118,118,,118,118', ',,,118,118,118,118,118,119,119,118,118,119,119,118,119,,,,,,,,,,,,,', ',,,119,119,,,,,,119,,119,,119,119,,119,119,119,,119,119,,,,,119,119', ',,119,,,119,119,,,,,,,119,,,,,,119,,,,119,119,,119,119,,,,119,119,119', '119,119,122,122,119,119,122,122,119,122,,,,,,,,,,,,,,,,,122,122,,,,', ',122,,122,,122,122,,122,122,122,,122,122,,,,,122,122,,,122,,,122,122', ',,,,,,122,,,,,,122,,,,122,122,,122,122,,,,122,122,122,122,122,159,159', '122,122,159,159,122,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', '168,168,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,198,198,168', '168,198,198,168,198,,,,,,,,,,,,,,,,,198,198,,,,,,198,,198,,198,198,', '198,198,198,,198,198,198,198,,,198,198,,,198,,,198,198,,,,,,,198,,,', ',,198,,,,198,198,,198,198,,,,198,198,198,198,198,201,201,198,198,201', '201,198,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,214,214,201', ',214,214,,214,,,214,,,,,,,,,,,,,,214,214,,,,,,214,,214,,214,214,,214', '214,214,,214,214,,,,,214,214,,,214,,,214,214,,,,,,,214,,,,,,214,,,,214', '214,,214,214,,,,214,214,214,214,214,219,219,214,214,219,219,214,219', ',,,,,,,,,,,,,,,,219,219,,,,,,219,,219,,219,219,,219,219,219,,219,219', ',,,,219,219,,,219,,,219,219,,,,,,,219,,,,,,219,,,,219,219,,219,219,', ',,219,219,219,219,219,220,220,219,219,220,220,219,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,221,221,220,220,221,221,220,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,262,262', '221,221,262,262,221,262,,,,,,,,,,,,,,,,,262,262,,,,,,262,,262,,262,262', ',262,262,262,,262,262,,,,,262,262,,,262,,,262,262,,,,,,,262,,,,,,262', ',,,262,262,,262,262,,,,262,262,262,262,262,284,284,262,262,284,284,262', '284,,,,,,,,,,,,,,,,,284,284,,,,,,284,,284,,284,284,,284,284,284,,284', '284,284,284,,,284,284,,,284,,,284,284,,,,,,,284,,,,,,284,,,,284,284', ',284,284,,,,284,284,284,284,284,284,284,284,284,287,287,284,,287,287', ',287,,,,,,,,,,,,,,,,,287,287,,,,,,287,,287,,287,287,,287,287,287,,287', '287,287,287,,,287,287,,,287,,,287,287,,,,,,,287,,,,,,287,,,,287,287', ',287,287,,,,287,287,287,287,287,287,287,287,287,288,288,287,,288,288', ',288,,,,,,,,,,,,,,,,,288,288,,,,,,288,,288,,288,288,,288,288,288,,288', '288,288,288,,,288,288,,,288,,,288,288,,,,,,,288,,,,,,288,,,,288,288', ',288,288,,,,288,288,288,288,288,288,288,288,288,289,289,288,,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,307,307,289,289,307,307,289,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,307,307,308,308,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,309,309,308,308,309,309,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,324,324,309,309,324,324,309,324,,,,,,,,,,,,,,,,,324,324,,,,,,324', ',324,,324,324,,324,324,324,,324,324,324,324,,,324,324,,,324,,,324,324', ',,,,,,324,,,,,,324,,,,324,324,,324,324,,,,324,324,324,324,324,324,324', '324,324,327,327,324,,327,327,,327,327,,,,,,,,,,,,,,,,327,327,,,,,,327', ',327,,327,327,,327,327,327,,327,327,327,327,,,327,327,,,327,,,327,327', ',,,,,,327,,,,,,327,,,,327,327,,327,327,,,,327,327,327,327,327,327,327', '327,327,332,332,327,,332,332,,332,,,,,,,,,,,,,,,,,332,332,,,,,,332,', '332,,332,332,,332,332,332,,332,332,332,332,,,332,332,,,332,,,332,332', ',,,,,,332,,,,,,332,,,,332,332,,332,332,,,,332,332,332,332,332,347,347', '332,332,347,347,332,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,348,348,347,347,348,348,347', '348,,,,,,,,,,,,,,,,,348,348,,,,,,348,,348,,348,348,,348,348,348,,348', '348,,,,,348,348,,,348,,,348,348,,,,,,,348,,,,,,348,,,,348,348,,348,348', ',,,348,348,348,348,348,349,349,348,348,349,349,348,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,350,350,349,349,350,350,349,350,,,,,,,,,,,,,,,,,350,350,,,,', ',350,,350,,350,350,,350,350,350,,350,350,,,,,350,350,,,350,,,350,350', ',,,,,,350,,,,,,350,,,,350,350,,350,350,,,,350,350,350,350,350,354,354', '350,350,354,354,350,354,,,,,,,,,,,,,,,,,354,354,,,,,,354,,354,,354,354', ',354,354,354,,354,354,354,354,,,354,354,,,354,,,354,354,,,,,,,354,,', ',,,354,,,,354,354,,354,354,,,,354,354,354,354,354,354,354,354,354,375', '375,354,,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,392,392,375,375,392,392,375', '392,392,,,,,,,,,,,,,,,,392,392,,,,,,392,,392,,392,392,,392,392,392,', '392,392,392,392,,,392,392,,,392,,,392,392,,,,,,,392,,,,,,392,,,,392', '392,,392,392,,,,392,392,392,392,392,396,396,392,392,396,396,392,396', ',,,,,,,,,,,,,,,,396,396,,,,,,396,,396,,396,396,,396,396,396,,396,396', ',,,,396,396,,,396,,,396,396,,,,,,,396,,,,,,396,,,,396,396,,396,396,', ',,396,396,396,396,396,399,399,396,396,399,399,396,399,,,,,,,,,,,,,,', ',,399,399,,,,,,399,,399,,399,399,,399,399,399,,399,399,399,399,,,399', '399,,,399,,,399,399,,,,,,,399,,,,,,399,,,,399,399,,399,399,,,,399,399', '399,399,399,399,399,399,399,407,407,399,,407,407,,407,407,,,,,,,,,,', ',,,,,407,407,,,,,,407,,407,,407,407,,407,407,407,,407,407,,,,,407,407', ',,407,,,407,407,,,,,,,407,,,,,,407,,,,407,407,,407,407,,,,407,407,407', '407,407,409,409,407,407,409,409,407,409,,,,,,,,,,,,,,,,,409,409,,,,', ',409,,409,,409,409,,409,409,409,,409,409,409,409,,,409,409,,,409,,,409', '409,,,,,,,409,,,,,,409,,,,409,409,,409,409,,,,409,409,409,409,409,410', '410,409,409,410,410,409,410,,,,,,,,,,,,,,,,,410,410,,,,,,410,,410,,410', '410,,410,410,410,,410,410,410,410,,,410,410,,,410,,,410,410,,,,,,,410', ',,,,,410,,,,410,410,,410,410,,,,410,410,410,410,410,412,412,410,410', '412,412,410,412,,,,,,,,,,,,,,,,,412,412,,,,,,412,,412,,412,412,,412', '412,412,,412,412,412,412,,,412,412,,,412,,,412,412,,,,,,,412,,,,,,412', ',,,412,412,,412,412,,,,412,412,412,412,412,421,421,412,412,421,421,412', '421,,,,,,,,,,,,,,,,,421,421,,,,,,421,,421,,421,421,,421,421,421,,421', '421,421,421,,,421,421,,,421,,,421,421,,,,,,,421,,,,,,421,,,,421,421', ',421,421,,,,421,421,421,421,421,421,421,421,421,438,438,421,,438,438', ',438,,,,,,,,,,,,,,,,,438,438,,,,,,438,,438,,438,438,,438,438,438,,438', '438,,,,,438,438,,,438,,,438,438,,,,,,,438,,,,,,438,,,,438,438,,438,438', ',,,438,438,438,438,438,445,445,438,438,445,445,438,445,,,,,,,,,,,,,', ',,,445,445,,,,,,445,,445,,445,445,,445,445,445,,445,445,445,445,,,445', '445,,,445,,,445,445,,,,,,,445,,,,,,445,,,,445,445,,445,445,,,,445,445', '445,445,445,453,453,445,445,453,453,445,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,456,456,453,,456,456,,456,,,,,,,,,,,,,,,,,456,456', ',,,,,456,,456,,456,456,,456,456,456,,456,456,456,456,,,456,456,,,456', ',,456,456,,,,,,,456,,,,,,456,,,,456,456,,456,456,,,,456,456,456,456', '456,459,459,456,456,459,459,456,459,,,,,,,,,,,,,,,,,459,459,,,,,,459', ',459,,459,459,,459,459,459,,459,459,459,459,,,459,459,,,459,,,459,459', ',,,,,,459,,,,,,459,,,,459,459,,459,459,,,,459,459,459,459,459,459,459', '459,459,465,465,459,,465,465,,465,,,,,,,,,,,,,,,,,465,465,,,,,,465,', '465,,465,465,,465,465,465,,465,465,,,,,465,465,,,465,,,465,465,,,,,', ',465,,,,,,465,,,,465,465,,465,465,,,,465,465,465,465,465,470,470,465', '465,470,470,465,470,,,,,,,,,,,,,,,,,470,470,,,,,,470,,470,,470,470,', '470,470,470,,470,470,,,,,470,470,,,470,,,470,470,,,,,,,470,,,,,,470', ',,,470,470,,470,470,,,,470,470,470,470,470,480,480,470,470,480,480,470', '480,480,,,,,,,,,,,,,,,,480,480,,,,,,480,,480,,480,480,,480,480,480,', '480,480,480,480,,,480,480,,,480,,,480,480,,,,,,,480,,,,,,480,,,,480', '480,,480,480,,,,480,480,480,480,480,482,482,480,480,482,482,480,482', ',,,,,,,,,,,,,,,,482,482,,,,,,482,,482,,482,482,,482,482,482,,482,482', '482,482,,,482,482,,,482,,,482,482,,,,,,,482,,,,,,482,,,,482,482,,482', '482,,,,482,482,482,482,482,501,501,482,482,501,501,482,501,501,,,,,', ',,,,,,,,,,501,501,,,,,,501,,501,,501,501,,501,501,501,,501,501,501,501', ',,501,501,,,501,,,501,501,,,,,,,501,,,,,,501,,,,501,501,,501,501,,,', '501,501,501,501,501,503,503,501,501,503,503,501,503,503,,,,,,,,,,,,', ',,,503,503,,,,,,503,,503,,503,503,,503,503,503,,503,503,503,503,,,503', '503,,,503,,,503,503,,,,,,,503,,,,,,503,,,,503,503,,503,503,,,,503,503', '503,503,503,505,505,503,503,505,505,503,505,,,,,,,,,,,,,,,,,505,505', ',,,,,505,,505,,505,505,,505,505,505,,505,505,505,505,,,505,505,,,505', ',,505,505,,,,,,,505,,,,,,505,,,,505,505,,505,505,,,,505,505,505,505', '505,515,515,505,505,515,515,505,515,,,,,,,,,,,,,,,,,515,515,,,,,,515', ',515,,515,515,,515,515,515,,515,515,,,,,515,515,,,515,,,515,515,,,,', ',,515,,,,,,515,,,,515,515,,515,515,,,,515,515,515,515,515,9,,515,515', ',,515,,,,,,9,9,9,,9,,9,,9,,9,9,9,9,,,,,,,,,,,,,,,,9,,,,9,9,,,9,9,9,9', '9,9,,9,9,160,,160,,,9,,,,,,,160,160,160,,160,,160,,160,,160,160,160', '160,,,,,,9,,,,,,,,,,160,,,,160,160,,,160,160,160,160,160,160,,160,160', '162,,162,,,160,,,,,,,162,162,162,,162,,162,,162,,162,162,162,162,,,', ',,160,,,,,,,,,,162,,,,162,162,,,162,162,162,162,162,162,,162,162,163', ',163,,,162,,,,,,,163,163,163,,163,,163,,163,,163,163,163,163,,,,,,162', ',,,,,,,,,163,,,,163,163,,,163,163,163,163,163,163,200,163,163,,,,,,163', ',,,200,200,200,,200,,200,,200,,200,200,200,200,,,,,,,,,163,,,,,,,200', ',,244,200,200,,,200,200,200,200,200,200,,200,200,244,,244,,,200,244', ',,,212,,,,,,200,200,,,,,212,212,212,212,212,244,212,,212,200,212,212', '212,212,,244,244,,,,244,244,,,,,,244,,212,,,245,212,212,,,212,212,212', '212,212,212,,212,212,245,,245,249,,212,245,244,,,,,,,,,,249,,249,250', ',,249,,,,245,,,,212,,,250,,250,245,245,,250,,245,245,249,,,,251,245', ',,249,249,249,249,,,,249,249,250,251,,251,252,249,,251,250,250,250,250', ',,245,250,250,,252,,252,,250,,252,,,,251,,,249,,,,,251,251,251,251,251', '251,,251,251,252,,,250,253,251,,,252,252,252,252,252,252,,252,252,253', '253,,253,254,252,,253,,253,,,,,251,,,254,254,,254,,,,254,,254,,253,', ',252,,,,,253,253,253,253,253,253,,253,253,254,,,,255,253,,,254,254,254', '254,254,254,,254,254,255,255,,255,256,254,,255,,255,,,,,253,,,256,256', ',256,,,,256,,256,,255,,,254,,,,,255,255,255,255,255,255,,255,255,256', ',,,,255,,,256,256,256,256,256,256,257,256,256,,,,,,256,,,,257,257,257', ',257,255,257,,257,,257,257,257,257,,,,,,,,,256,,,,,,,257,,,,,258,,,257', '257,257,257,257,257,,257,257,258,258,258,,258,257,258,,258,,258,258', '258,258,,,,,,,,,,,,,,,,258,,257,,,258,,,258,258,258,258,258,258,259', '258,258,,,259,,,258,,,,259,259,259,,259,,259,,259,,259,259,259,259,', ',,,,,,,258,,,,,,,259,,,,259,259,,,259,259,259,259,259,259,,259,259,263', '263,,,,259,263,,,,,,263,263,263,,263,,263,,263,,263,263,263,263,,,,', ',259,,,,,,,,,,263,,,,263,263,,,263,263,263,263,263,263,270,263,263,', ',,,,263,,,,270,270,270,,270,,270,,270,,270,270,270,270,,,,,,,,,263,', ',,,,,270,,,,270,270,,,270,270,270,270,270,270,275,270,270,,,,,,270,', ',,275,275,275,275,275,,275,,275,,275,275,275,275,,,,,,,,,270,,,,,,,275', ',,,275,275,,,275,275,275,275,275,275,405,275,275,,,,,,275,,,,405,405', '405,,405,,405,,405,,405,405,405,405,,,,,,,,,275,,,,,,,405,,,,405,405', ',,405,405,405,405,405,405,433,405,405,,,,,,405,,,,433,433,433,,433,', '433,,433,,433,433,433,433,,,,,,,,,405,,,,,,,433,,,,433,433,,,433,433', '433,433,433,433,434,433,433,,,,,,433,,,,434,434,434,,434,,434,,434,', '434,434,434,434,,,,,,,,,433,,,,,,,434,,,,434,434,,,434,434,434,434,434', '434,435,434,434,,,,,,434,,,,435,435,435,,435,,435,,435,,435,435,435', '435,,,,,,,,,434,,,,,,,435,,,,435,435,,,435,435,435,435,435,435,436,435', '435,,,,,,435,,,,436,436,436,,436,,436,,436,,436,436,436,436,,,,,,,,', '435,,,,,,,436,,,,436,436,,,436,436,436,436,436,436,462,436,436,,,,,', '436,,,,462,462,462,,462,,462,,462,,462,462,462,462,,,,,,,,,436,,,,,', ',462,,,,462,462,,,462,462,462,462,462,462,504,462,462,,,,,,462,,,,504', '504,504,,504,,504,,504,,504,504,504,504,,,,,,,,,462,,,,,,,504,,,,504', '504,,,504,504,504,504,504,504,,504,504,,269,269,269,269,504,269,269', '269,,269,,269,269,,,,,,,269,269,269,,,,269,,,,,504,,,,,,,269,269,,,', ',,,,,,,,269,269,269,269,269,269,269,269,344,344,344,344,,344,344,344', ',344,,344,344,,,,,,,344,344,344,,,,344,,,,,,,,,,,,344,344,,,,,,,,,,', ',344,344,344,344,344,344,344,344,346,346,346,346,,346,346,346,,346,', '346,346,,,,,,,346,346,346,,,,346,,,,,,,,,,,,346,346,,,,,,,,,,,,346,346', '346,346,346,346,346,346,376,376,376,376,,376,376,376,,376,,376,376,', ',,,,,376,376,376,,,,376,,,,,,,,,,,,376,376,,,,,,,,,,,,376,376,376,376', '376,376,376,376,384,384,384,384,,384,384,384,,384,,384,384,,,,,,,384', '384,384,,,,384,,,,,,,,,,,,384,384,,,,,,,,,,,,384,384,384,384,384,384', '384,384,411,411,411,411,,411,411,411,,411,,411,411,,,,,,,411,411,411', ',,,411,,,,,,,,,,,,411,411,,,,,,,,,,,,411,411,411,411,411,411,411,411' ] racc_action_check = arr = ::Array.new(10078, nil) idx = 0 clist.each do |str| str.split(',', -1).each do |i| arr[idx] = i.to_i unless i.empty? idx += 1 end end racc_action_pointer = [ -2, 13, nil, nil, 84, 24, nil, -2, 32, 8411, 170, 256, 94, nil, nil, nil, -30, 342, 428, 514, 600, 686, 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, 110, 772, 7, -25, 82, 862, 948, 1034, 66, 145, 188, 150, 114, 313, 151, 196, 234, 265, 124, nil, nil, nil, 1124, 1214, 1304, nil, nil, nil, 1394, nil, 71, 93, nil, 1480, nil, 181, 1566, 171, 1652, 1738, 1824, 1910, 1996, 2082, 2168, 2254, 2340, 2430, 2516, 2602, 2688, 2774, 2860, 2946, 3032, 3118, 3204, 3290, 3376, 3462, 3548, 3634, 3720, 3806, 3892, 3978, 4064, nil, -13, 182, 4154, 4240, 197, 210, 4326, 336, nil, nil, nil, nil, nil, nil, 152, nil, nil, 202, 180, 349, 521, 212, 223, 255, nil, nil, 258, 223, 93, 230, 309, 231, 314, nil, nil, nil, nil, 326, nil, 11, nil, 276, 194, 4412, 8469, nil, 8527, 8585, 340, 364, 236, 368, 4502, 347, nil, 343, nil, nil, nil, nil, nil, nil, nil, nil, 377, 1, 358, nil, nil, 362, nil, 368, nil, 92, nil, nil, nil, nil, 404, nil, nil, 302, 4588, 280, 8640, 4674, nil, 372, nil, nil, nil, nil, 389, 397, 406, 407, 8708, 406, 4764, -1, 5, -9, 220, 4850, 4936, 5022, nil, nil, 6, 237, 286, 95, 413, 399, 323, 7, 15, nil, nil, nil, nil, nil, nil, nil, nil, 607, 5, 91, 8684, 8752, 1059, 2428, 4152, 8769, 8786, 8814, 8831, 8876, 8893, 8938, 8955, 9010, 9056, 9111, nil, nil, 5108, 9169, 410, nil, nil, nil, nil, 9697, 9224, 375, nil, 414, 396, 9279, nil, 401, nil, 176, 262, 433, nil, nil, 5194, 415, nil, 5284, 5374, 5464, 395, 438, 398, nil, nil, 436, nil, nil, nil, nil, nil, 435, 415, -35, nil, -7, nil, 5550, 5636, 5722, 447, 448, 450, 451, 452, nil, 428, 485, 71, 410, 157, nil, nil, 468, 5808, 469, nil, 5898, nil, nil, nil, nil, 5988, nil, nil, nil, nil, 467, nil, nil, nil, nil, 469, 473, 9755, 474, 9813, 6074, 6160, 6246, 6332, 476, nil, 482, 6418, 479, nil, 482, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 485, 6508, 9871, 487, nil, 408, nil, 484, nil, 485, 9929, nil, 428, nil, 86, 491, 493, nil, 6594, 498, 436, -28, 6680, nil, nil, 6766, nil, 499, 275, 500, 490, 9334, 93, 6856, nil, 6942, 7028, 9987, 7114, nil, 516, nil, 833, nil, nil, 517, nil, 7200, nil, nil, nil, nil, nil, nil, 457, 330, 518, nil, nil, 9389, 9444, 9499, 9554, 522, 7290, nil, nil, 523, nil, nil, 521, 7376, nil, nil, nil, 507, 508, 524, nil, 7462, nil, nil, 7552, 528, nil, 7638, nil, nil, 9609, 323, nil, 7728, 530, 509, nil, 536, 7814, 537, nil, nil, 543, nil, nil, 547, 549, 553, 7900, nil, 7986, 553, nil, nil, 557, 527, nil, nil, nil, nil, 563, nil, nil, 564, 565, nil, 172, nil, nil, 8072, nil, 8158, 9664, 8244, nil, nil, 566, nil, 567, nil, 568, 572, nil, 8330, nil, nil, nil, nil, 571, nil, 572, nil, 573, nil, nil, nil, nil, nil, nil, 541, nil, nil, nil, nil ] racc_action_default = [ -3, -298, -1, -2, -4, -5, -8, -10, -18, -23, -298, -298, -190, -35, -36, -37, -38, -298, -298, -298, -298, -298, -70, -71, -72, -73, -74, -75, -76, -77, -78, -79, -80, -81, -82, -83, -84, -85, -86, -87, -88, -89, -90, -91, -92, -93, -94, -95, -96, -298, -298, -103, -107, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -246, -269, -245, -298, -217, -218, -219, -298, -298, -298, -242, -243, -244, -298, -248, -298, -261, -264, -298, -270, -298, -298, -7, -298, -298, -298, -298, -298, -298, -298, -298, -144, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -298, -101, -298, -139, -297, -297, -24, -25, -298, -297, -160, -187, -188, -189, -190, -191, -298, -156, -157, -49, -190, -50, -57, -298, -298, -14, -15, -16, -271, -98, -236, -238, -241, -237, -298, -233, -239, -240, -102, -207, -214, -269, -104, -297, -298, -298, -298, -115, -298, -298, -297, -297, -298, -297, -298, -271, -171, -173, -174, -175, -176, -177, -179, -180, -245, -246, -297, -298, -271, -221, -230, -231, -234, -271, -223, -298, -226, -227, -232, -247, -298, -252, -255, -298, -259, -298, -298, -298, 536, -6, -9, -11, -12, -13, -19, -20, -21, -22, -298, -271, -298, -94, -95, -96, -289, -282, -288, -276, -145, -148, -298, -279, -293, -190, -296, -285, -291, -218, -219, -275, -280, -281, -283, -284, -286, -294, -295, -39, -40, -41, -42, -43, -44, -45, -46, -47, -48, -51, -52, -53, -54, -55, -56, -58, -59, -298, -60, -133, -298, -23, -271, -64, -67, -108, -109, -144, -143, -298, -142, -298, -273, -298, -30, -297, -192, -298, -298, -298, -61, -62, -272, -298, -100, -298, -298, -259, -298, -298, -298, -186, -113, -271, -197, -199, -200, -201, -202, -204, -298, -298, -269, -298, -106, -298, -298, -298, -298, -298, -298, -298, -298, -168, -297, -272, -298, -297, -211, -212, -213, -298, -272, -298, -224, -298, -249, -250, -251, -253, -298, -256, -257, -258, -260, -271, -262, -265, -267, -268, -8, -298, -144, -298, -272, -298, -298, -298, -298, -271, -135, -298, -272, -271, -147, -298, -276, -277, -278, -279, -282, -285, -287, -288, -289, -290, -291, -292, -293, -296, -140, -141, -298, -274, -144, -298, -163, -298, -193, -271, -194, -271, -144, -17, -97, -229, -298, -298, -298, -110, -298, -184, -298, -272, -298, -205, -206, -298, -105, -298, -118, -298, -124, -68, -298, -298, -128, -297, -297, -144, -297, -167, -298, -181, -298, -172, -178, -298, -209, -298, -220, -235, -222, -225, -228, -254, -298, -298, -271, -28, -146, -151, -149, -150, -137, -298, -272, -63, -65, -298, -27, -31, -271, -297, -164, -165, -166, -298, -298, -271, -99, -298, -208, -215, -259, -298, -112, -298, -114, -198, -203, -118, -117, -298, -298, -124, -123, -298, -298, -298, -127, -129, -298, -161, -162, -298, -271, -298, -298, -182, -297, -271, -263, -266, -298, -32, -134, -136, -138, -29, -298, -195, -196, -298, -298, -111, -298, -116, -119, -298, -122, -298, -69, -297, -152, -153, -298, -158, -298, -170, -298, -298, -26, -33, -159, -155, -216, -185, -298, -121, -298, -126, -298, -131, -132, -154, -169, -183, -210, -273, -120, -125, -130, -34 ] racc_goto_table = [ 2, 274, 174, 172, 141, 264, 133, 135, 136, 124, 191, 137, 138, 213, 156, 153, 261, 374, 339, 272, 272, 154, 335, 291, 142, 193, 440, 321, 185, 185, 295, 417, 85, 130, 408, 1, 120, 121, 271, 273, 139, 468, 160, 162, 163, 182, 187, 3, 486, 464, 443, 260, 266, 164, 165, 322, 124, 391, 293, 180, 500, 139, 139, 192, 407, 524, 351, 195, 432, 167, 200, 337, 377, 446, 414, 166, 418, 204, 205, 206, 207, 461, 398, 212, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, 263, 502, 192, 286, 270, 270, 153, 499, 275, 203, 389, 141, 154, 208, 209, 210, 211, 397, 474, 477, 153, 479, 440, 387, 281, 423, 333, 481, 124, 473, 277, 305, 334, 331, 332, 330, 191, 196, 198, 165, nil, 180, nil, 320, nil, nil, nil, 139, 381, 383, nil, nil, nil, nil, 492, nil, nil, nil, nil, nil, 312, 153, 352, 420, nil, 314, nil, 174, 172, nil, nil, 310, 311, nil, 313, 378, 388, nil, nil, nil, 153, nil, 419, nil, nil, 355, 154, 319, nil, 342, nil, 512, nil, nil, nil, 336, nil, nil, 343, nil, 135, nil, nil, nil, nil, 160, 162, 163, nil, nil, nil, nil, nil, nil, 415, nil, nil, 293, nil, 164, 165, 124, nil, 266, 180, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 385, nil, nil, nil, nil, 153, 153, nil, 485, nil, nil, nil, 259, nil, nil, nil, nil, 285, 393, 174, 172, nil, nil, nil, 430, nil, 426, nil, nil, nil, nil, nil, nil, nil, nil, 535, 139, nil, 263, 192, 192, 496, 427, 185, 316, nil, nil, nil, nil, nil, 336, nil, nil, 266, nil, nil, 444, 323, nil, 405, nil, nil, 325, nil, 451, nil, nil, nil, 401, 403, nil, 476, 476, 483, 476, nil, 139, nil, nil, 192, nil, nil, nil, nil, 195, nil, nil, nil, 345, nil, nil, 478, nil, nil, nil, nil, nil, 433, 434, 435, 436, nil, 489, nil, 263, nil, 192, 476, nil, nil, 452, 498, nil, nil, nil, 385, nil, nil, 174, 172, 266, 153, nil, nil, nil, 275, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 447, nil, 353, nil, nil, nil, nil, 476, nil, 462, nil, nil, nil, nil, 139, 266, 457, nil, 531, nil, 405, 266, nil, nil, nil, nil, nil, nil, nil, nil, 525, nil, nil, 394, 263, nil, 192, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 259, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 263, nil, 192, nil, nil, nil, 263, nil, 192, 428, nil, nil, 160, nil, 336, nil, nil, 504, nil, nil, nil, nil, nil, 437, nil, nil, nil, 441, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 510, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 449, nil, 450, nil, nil, nil, 520, nil, 522, 275, 526, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 487, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 491, nil, nil, nil, nil, nil, nil, 495, 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, 508, nil, nil, nil, nil, 513 ] racc_goto_check = [ 2, 15, 46, 47, 8, 24, 12, 12, 12, 71, 9, 6, 6, 13, 50, 48, 64, 16, 107, 63, 63, 88, 90, 54, 10, 100, 25, 45, 95, 95, 56, 80, 5, 74, 61, 1, 11, 11, 67, 67, 6, 59, 12, 12, 12, 91, 91, 3, 14, 58, 18, 23, 9, 71, 71, 44, 71, 55, 63, 71, 57, 6, 6, 6, 60, 62, 65, 6, 68, 75, 12, 56, 76, 77, 79, 74, 82, 6, 6, 6, 6, 83, 84, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 59, 6, 50, 12, 12, 48, 58, 12, 5, 90, 8, 88, 11, 11, 11, 11, 86, 73, 73, 48, 73, 25, 93, 71, 94, 96, 80, 71, 61, 72, 10, 97, 101, 102, 104, 9, 105, 106, 71, nil, 71, nil, 48, nil, nil, nil, 6, 56, 56, nil, nil, nil, nil, 73, nil, nil, nil, nil, nil, 71, 48, 64, 45, nil, 2, nil, 46, 47, nil, nil, 72, 72, nil, 72, 63, 24, nil, nil, nil, 48, nil, 54, nil, nil, 13, 88, 72, nil, 6, nil, 73, nil, nil, nil, 2, nil, nil, 2, nil, 12, nil, nil, nil, nil, 12, 12, 12, nil, nil, nil, nil, nil, nil, 63, nil, nil, 63, nil, 71, 71, 71, nil, 9, 71, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 8, nil, nil, nil, nil, 48, 48, nil, 107, nil, nil, nil, 12, nil, nil, nil, nil, 17, 48, 46, 47, nil, nil, nil, 13, nil, 9, nil, nil, nil, nil, nil, nil, nil, nil, 16, 6, nil, 12, 6, 6, 90, 100, 95, 17, nil, nil, nil, nil, nil, 2, nil, nil, 9, nil, nil, 13, 17, nil, 12, nil, nil, 17, nil, 13, nil, nil, nil, 2, 2, nil, 63, 63, 24, 63, nil, 6, nil, nil, 6, nil, nil, nil, nil, 6, nil, nil, nil, 17, nil, nil, 13, nil, nil, nil, nil, nil, 12, 12, 12, 12, nil, 64, nil, 12, nil, 6, 63, nil, nil, 50, 24, nil, nil, nil, 8, nil, nil, 46, 47, 9, 48, nil, nil, nil, 12, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 71, nil, 17, nil, nil, nil, nil, 63, nil, 12, nil, nil, nil, nil, 6, 9, 2, nil, 15, nil, 12, 9, nil, nil, nil, nil, nil, nil, nil, nil, 63, nil, nil, 17, 12, nil, 6, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 12, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 12, nil, 6, nil, nil, nil, 12, nil, 6, 17, nil, nil, 12, nil, 2, nil, nil, 12, nil, nil, nil, nil, nil, 17, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 2, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 17, nil, 17, nil, nil, nil, 2, nil, 2, 12, 2, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, 17, nil, nil, nil, nil, nil, nil, 17, 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, 17, nil, nil, nil, nil, 17 ] racc_goto_pointer = [ nil, 35, 0, 47, nil, 28, -9, nil, -45, -62, -25, 26, -11, -81, -382, -121, -257, 114, -325, nil, nil, nil, nil, -62, -109, -328, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, nil, -126, -154, -59, -58, -35, nil, -37, nil, nil, nil, -134, -234, -128, -405, -353, -363, -245, -275, -440, -99, -97, -196, nil, -80, -278, nil, nil, -3, 10, -288, 17, 10, -205, -306, nil, -242, -286, nil, -242, -314, -221, nil, -182, nil, -29, nil, -176, -25, nil, -161, -196, -42, -68, -62, nil, nil, -51, -58, -57, nil, -56, 62, 62, -182 ] racc_goto_default = [ nil, nil, 475, nil, 4, 5, 6, 7, 184, 140, nil, 8, 9, nil, nil, nil, nil, nil, 276, 13, 14, 15, 16, nil, nil, 265, 406, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 49, nil, 51, 52, 157, nil, nil, nil, 161, nil, nil, nil, nil, nil, 278, nil, nil, 117, nil, 222, 224, 223, 58, nil, nil, nil, 123, nil, nil, 169, nil, 170, 171, 175, 296, 297, 298, 299, 300, 303, 66, nil, nil, 189, 148, 186, 149, 73, 74, 75, 76, nil, nil, nil, 194, nil, nil, nil, nil ] racc_reduce_table = [ 0, 0, :racc_error, 1, 98, :_reduce_1, 1, 98, :_reduce_2, 0, 98, :_reduce_3, 1, 99, :_reduce_4, 1, 101, :_reduce_5, 3, 101, :_reduce_6, 2, 101, :_reduce_7, 1, 102, :_reduce_8, 3, 102, :_reduce_9, 1, 103, :_reduce_none, 3, 103, :_reduce_11, 3, 103, :_reduce_12, 3, 103, :_reduce_13, 1, 105, :_reduce_none, 1, 105, :_reduce_15, 1, 107, :_reduce_16, 3, 107, :_reduce_17, 1, 104, :_reduce_none, 3, 104, :_reduce_19, 3, 104, :_reduce_20, 3, 104, :_reduce_21, 3, 104, :_reduce_22, 1, 108, :_reduce_none, 2, 108, :_reduce_24, 2, 108, :_reduce_25, 7, 108, :_reduce_26, 5, 108, :_reduce_27, 5, 108, :_reduce_28, 4, 115, :_reduce_29, 1, 112, :_reduce_30, 3, 112, :_reduce_31, 1, 111, :_reduce_32, 2, 111, :_reduce_33, 4, 111, :_reduce_34, 1, 109, :_reduce_none, 1, 109, :_reduce_none, 1, 109, :_reduce_none, 1, 109, :_reduce_none, 3, 109, :_reduce_39, 3, 109, :_reduce_40, 3, 109, :_reduce_41, 3, 109, :_reduce_42, 3, 109, :_reduce_43, 3, 109, :_reduce_44, 3, 109, :_reduce_45, 3, 109, :_reduce_46, 3, 109, :_reduce_47, 3, 109, :_reduce_48, 2, 109, :_reduce_49, 2, 109, :_reduce_50, 3, 109, :_reduce_51, 3, 109, :_reduce_52, 3, 109, :_reduce_53, 3, 109, :_reduce_54, 3, 109, :_reduce_55, 3, 109, :_reduce_56, 2, 109, :_reduce_57, 3, 109, :_reduce_58, 3, 109, :_reduce_59, 3, 109, :_reduce_60, 3, 109, :_reduce_61, 3, 109, :_reduce_62, 5, 119, :_reduce_63, 1, 121, :_reduce_64, 3, 121, :_reduce_65, 1, 122, :_reduce_none, 1, 122, :_reduce_67, 1, 123, :_reduce_68, 3, 123, :_reduce_69, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_none, 1, 116, :_reduce_92, 1, 116, :_reduce_93, 1, 116, :_reduce_94, 1, 116, :_reduce_95, 1, 116, :_reduce_96, 4, 118, :_reduce_97, 2, 118, :_reduce_98, 5, 118, :_reduce_99, 3, 118, :_reduce_100, 2, 146, :_reduce_101, 2, 146, :_reduce_102, 1, 125, :_reduce_103, 2, 125, :_reduce_104, 4, 148, :_reduce_105, 3, 148, :_reduce_106, 1, 148, :_reduce_107, 3, 149, :_reduce_108, 3, 149, :_reduce_109, 3, 147, :_reduce_110, 3, 152, :_reduce_111, 2, 152, :_reduce_112, 2, 150, :_reduce_113, 4, 150, :_reduce_114, 2, 128, :_reduce_115, 5, 154, :_reduce_116, 4, 154, :_reduce_117, 0, 155, :_reduce_none, 2, 155, :_reduce_119, 4, 155, :_reduce_120, 3, 155, :_reduce_121, 6, 129, :_reduce_122, 5, 129, :_reduce_123, 0, 156, :_reduce_none, 4, 156, :_reduce_125, 3, 156, :_reduce_126, 5, 127, :_reduce_127, 1, 157, :_reduce_128, 2, 157, :_reduce_129, 5, 158, :_reduce_130, 1, 159, :_reduce_none, 1, 159, :_reduce_none, 1, 120, :_reduce_none, 4, 120, :_reduce_134, 1, 162, :_reduce_135, 3, 162, :_reduce_136, 3, 161, :_reduce_137, 6, 126, :_reduce_138, 2, 126, :_reduce_139, 3, 163, :_reduce_140, 3, 163, :_reduce_141, 1, 164, :_reduce_none, 1, 164, :_reduce_none, 0, 110, :_reduce_144, 1, 110, :_reduce_145, 3, 110, :_reduce_146, 1, 166, :_reduce_none, 1, 166, :_reduce_none, 3, 165, :_reduce_149, 3, 165, :_reduce_150, 3, 165, :_reduce_151, 6, 130, :_reduce_152, 6, 131, :_reduce_153, 7, 117, :_reduce_154, 7, 117, :_reduce_155, 1, 171, :_reduce_none, 1, 171, :_reduce_none, 6, 133, :_reduce_158, 7, 132, :_reduce_159, 1, 172, :_reduce_160, 1, 170, :_reduce_none, 1, 170, :_reduce_none, 1, 173, :_reduce_none, 2, 173, :_reduce_164, 1, 174, :_reduce_none, 1, 174, :_reduce_none, 4, 135, :_reduce_167, 3, 135, :_reduce_168, 7, 134, :_reduce_169, 6, 134, :_reduce_170, 1, 175, :_reduce_171, 3, 175, :_reduce_172, 1, 177, :_reduce_none, 1, 177, :_reduce_none, 1, 177, :_reduce_175, 1, 177, :_reduce_none, 1, 178, :_reduce_177, 3, 178, :_reduce_178, 1, 179, :_reduce_none, 1, 179, :_reduce_none, 1, 176, :_reduce_none, 2, 176, :_reduce_182, 7, 137, :_reduce_183, 2, 151, :_reduce_184, 5, 151, :_reduce_185, 1, 151, :_reduce_none, 1, 168, :_reduce_none, 1, 168, :_reduce_none, 1, 168, :_reduce_none, 1, 168, :_reduce_190, 1, 168, :_reduce_191, 1, 169, :_reduce_192, 2, 169, :_reduce_193, 2, 169, :_reduce_194, 4, 169, :_reduce_195, 4, 169, :_reduce_196, 1, 153, :_reduce_197, 3, 153, :_reduce_198, 1, 180, :_reduce_none, 1, 180, :_reduce_none, 1, 181, :_reduce_none, 1, 181, :_reduce_none, 3, 183, :_reduce_203, 1, 183, :_reduce_204, 2, 184, :_reduce_205, 2, 182, :_reduce_206, 1, 185, :_reduce_207, 4, 185, :_reduce_208, 4, 138, :_reduce_209, 7, 138, :_reduce_210, 3, 138, :_reduce_211, 3, 138, :_reduce_212, 3, 138, :_reduce_213, 2, 186, :_reduce_214, 5, 139, :_reduce_215, 7, 139, :_reduce_216, 1, 124, :_reduce_217, 1, 140, :_reduce_218, 1, 140, :_reduce_219, 4, 141, :_reduce_220, 2, 141, :_reduce_221, 4, 141, :_reduce_222, 2, 141, :_reduce_223, 3, 142, :_reduce_224, 4, 142, :_reduce_225, 2, 142, :_reduce_226, 1, 189, :_reduce_227, 3, 189, :_reduce_228, 3, 106, :_reduce_229, 1, 191, :_reduce_none, 1, 191, :_reduce_231, 1, 190, :_reduce_none, 1, 190, :_reduce_233, 1, 188, :_reduce_234, 3, 188, :_reduce_235, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 192, :_reduce_none, 1, 144, :_reduce_none, 1, 144, :_reduce_none, 1, 144, :_reduce_none, 1, 193, :_reduce_245, 1, 193, :_reduce_246, 2, 194, :_reduce_247, 1, 196, :_reduce_248, 1, 198, :_reduce_249, 1, 199, :_reduce_250, 2, 197, :_reduce_251, 1, 200, :_reduce_252, 1, 201, :_reduce_253, 2, 201, :_reduce_254, 2, 195, :_reduce_255, 2, 202, :_reduce_256, 2, 202, :_reduce_257, 3, 100, :_reduce_258, 0, 187, :_reduce_none, 1, 187, :_reduce_none, 0, 203, :_reduce_261, 2, 203, :_reduce_262, 4, 203, :_reduce_263, 1, 136, :_reduce_264, 3, 136, :_reduce_265, 5, 136, :_reduce_266, 1, 204, :_reduce_none, 1, 204, :_reduce_none, 1, 145, :_reduce_269, 1, 143, :_reduce_270, 0, 114, :_reduce_none, 1, 114, :_reduce_272, 0, 113, :_reduce_none, 1, 113, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 1, 167, :_reduce_none, 0, 160, :_reduce_297 ] racc_reduce_n = 298 racc_shift_n = 536 racc_token_table = { false => 0, :error => 1, :STRING => 2, :DQPRE => 3, :DQMID => 4, :DQPOST => 5, :WORD => 6, :LBRACK => 7, :RBRACK => 8, :LBRACE => 9, :RBRACE => 10, :SYMBOL => 11, :FARROW => 12, :COMMA => 13, :TRUE => 14, :FALSE => 15, :EQUALS => 16, :APPENDS => 17, :DELETES => 18, :LESSEQUAL => 19, :NOTEQUAL => 20, :DOT => 21, :COLON => 22, :LLCOLLECT => 23, :RRCOLLECT => 24, :QMARK => 25, :WSLPAREN => 26, :LPAREN => 27, :RPAREN => 28, :ISEQUAL => 29, :GREATEREQUAL => 30, :GREATERTHAN => 31, :LESSTHAN => 32, :IF => 33, :ELSE => 34, :DEFINE => 35, :ELSIF => 36, :VARIABLE => 37, :CLASS => 38, :INHERITS => 39, :NODE => 40, :BOOLEAN => 41, :NAME => 42, :SEMIC => 43, :CASE => 44, :DEFAULT => 45, :AT => 46, :ATAT => 47, :LCOLLECT => 48, :RCOLLECT => 49, :CLASSREF => 50, :NOT => 51, :OR => 52, :AND => 53, :UNDEF => 54, :PARROW => 55, :PLUS => 56, :MINUS => 57, :TIMES => 58, :DIV => 59, :LSHIFT => 60, :RSHIFT => 61, :UMINUS => 62, :MATCH => 63, :NOMATCH => 64, :REGEX => 65, :IN_EDGE => 66, :OUT_EDGE => 67, :IN_EDGE_SUB => 68, :OUT_EDGE_SUB => 69, :IN => 70, :UNLESS => 71, :PIPE => 72, :LAMBDA => 73, :SELBRACE => 74, :NUMBER => 75, :HEREDOC => 76, :SUBLOCATE => 77, :RENDER_STRING => 78, :RENDER_EXPR => 79, :EPP_START => 80, :EPP_END => 81, :EPP_END_TRIM => 82, :FUNCTION => 83, :TYPE => 84, :PRIVATE => 85, :ATTR => 86, :APPLICATION => 87, :PRODUCES => 88, :CONSUMES => 89, :SITE => 90, :PLAN => 91, :LOW => 92, :HIGH => 93, :LISTSTART => 94, :SPLAT => 95, :MODULO => 96 } racc_nt_base = 97 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", "STRING", "DQPRE", "DQMID", "DQPOST", "WORD", "LBRACK", "RBRACK", "LBRACE", "RBRACE", "SYMBOL", "FARROW", "COMMA", "TRUE", "FALSE", "EQUALS", "APPENDS", "DELETES", "LESSEQUAL", "NOTEQUAL", "DOT", "COLON", "LLCOLLECT", "RRCOLLECT", "QMARK", "WSLPAREN", "LPAREN", "RPAREN", "ISEQUAL", "GREATEREQUAL", "GREATERTHAN", "LESSTHAN", "IF", "ELSE", "DEFINE", "ELSIF", "VARIABLE", "CLASS", "INHERITS", "NODE", "BOOLEAN", "NAME", "SEMIC", "CASE", "DEFAULT", "AT", "ATAT", "LCOLLECT", "RCOLLECT", "CLASSREF", "NOT", "OR", "AND", "UNDEF", "PARROW", "PLUS", "MINUS", "TIMES", "DIV", "LSHIFT", "RSHIFT", "UMINUS", "MATCH", "NOMATCH", "REGEX", "IN_EDGE", "OUT_EDGE", "IN_EDGE_SUB", "OUT_EDGE_SUB", "IN", "UNLESS", "PIPE", "LAMBDA", "SELBRACE", "NUMBER", "HEREDOC", "SUBLOCATE", "RENDER_STRING", "RENDER_EXPR", "EPP_START", "EPP_END", "EPP_END_TRIM", "FUNCTION", "TYPE", "PRIVATE", "ATTR", "APPLICATION", "PRODUCES", "CONSUMES", "SITE", "PLAN", "LOW", "HIGH", "LISTSTART", "SPLAT", "MODULO", "$start", "program", "statements", "epp_expression", "syntactic_statements", "syntactic_statement", "assignment", "relationship", "argument", "hashpair", "arguments", "resource", "expression", "attribute_operations", "additional_resource_bodies", "resource_bodies", "endsemi", "endcomma", "resource_body", "primary_expression", "capability_mapping", "call_function_expression", "bracketed_expression", "selector_entries", "access_args", "access_arg", "expressions", "variable", "call_method_with_lambda_expression", "collection_expression", "case_expression", "if_expression", "unless_expression", "definition_expression", "application_expression", "hostclass_expression", "plan_expression", "node_definition_expression", "site_definition_expression", "epp_render_expression", "function_definition", "type_alias", "type_definition", "reserved_word", "array", "hash", "regex", "quotedtext", "type", "call_function_start", "lambda", "call_method_expression", "named_access", "lambda_parameter_list", "opt_return_type", "lambda_rest", "parameters", "if_part", "else", "unless_else", "case_options", "case_option", "options_statements", "nil", "selector_entry", "selector_entry_list", "collect_query", "optional_query", "attribute_operation", "attribute_name", "keyword", "classname", "parameter_list", "opt_statements", "capability_kw", "stacked_classname", "classparent", "classnameordefault", "hostnames", "nodeparent", "hostname", "dotted_name", "name_or_number", "parameter", "untyped_parameter", "typed_parameter", "regular_parameter", "splat_parameter", "parameter_type", "type_alias_lhs", "optional_statements", "collection_entries", "hashpairs", "hash_entry", "collection_entry", "collection_entry_keyword", "string", "dq_string", "heredoc", "dqpre", "dqrval", "dqpost", "dqmid", "text_expression", "dqtail", "sublocated_text", "epp_parameters_list", "epp_end" ] Racc_debug_parser = false ##### State transition tables end ##### # reduce 0 omitted module_eval(<<'.,.,', 'egrammar.ra', 68) def _reduce_1(val, _values, result) result = create_program(Factory.block_or_expression(val[0])) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 69) def _reduce_2(val, _values, result) result = create_program(val[0]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 70) def _reduce_3(val, _values, result) result = create_empty_program result end .,., module_eval(<<'.,.,', 'egrammar.ra', 74) def _reduce_4(val, _values, result) result = transform_calls(val[0]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 81) def _reduce_5(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 82) def _reduce_6(val, _values, result) result = val[0].push val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 83) def _reduce_7(val, _values, result) result = val[0].push val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 90) def _reduce_8(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 91) def _reduce_9(val, _values, result) result = aryfy(val[0]).push(val[1]).push(val[2]) result end .,., # reduce 10 omitted module_eval(<<'.,.,', 'egrammar.ra', 96) def _reduce_11(val, _values, result) result = val[0].set(val[2]) ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 97) def _reduce_12(val, _values, result) result = val[0].plus_set(val[2]) ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 98) def _reduce_13(val, _values, result) result = val[0].minus_set(val[2]); loc result, val[1] result end .,., # reduce 14 omitted module_eval(<<'.,.,', 'egrammar.ra', 103) def _reduce_15(val, _values, result) result = Factory.HASH_UNFOLDED([val[0]]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 107) def _reduce_16(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 108) def _reduce_17(val, _values, result) result = Factory.ARGUMENTS(val[0], val[2]) result end .,., # reduce 18 omitted module_eval(<<'.,.,', 'egrammar.ra', 112) def _reduce_19(val, _values, result) result = val[0].relop(val[1][:value], val[2]); loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 113) def _reduce_20(val, _values, result) result = val[0].relop(val[1][:value], val[2]); loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 114) def _reduce_21(val, _values, result) result = val[0].relop(val[1][:value], val[2]); loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 115) def _reduce_22(val, _values, result) result = val[0].relop(val[1][:value], val[2]); loc result, val[1] result end .,., # reduce 23 omitted module_eval(<<'.,.,', 'egrammar.ra', 124) def _reduce_24(val, _values, result) result = val[1] unless Factory.set_resource_form(result, 'virtual') # This is equivalent to a syntax error - additional semantic restrictions apply error val[0], "Virtual (@) can only be applied to a Resource Expression" end # relocate the result loc result, val[0], val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 135) def _reduce_25(val, _values, result) result = val[1] unless Factory.set_resource_form(result, 'exported') # This is equivalent to a syntax error - additional semantic restrictions apply error val[0], "Exported (@@) can only be applied to a Resource Expression" end # relocate the result loc result, val[0], val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 146) def _reduce_26(val, _values, result) bodies = [Factory.RESOURCE_BODY(val[2], val[4])] + val[5] result = Factory.RESOURCE(val[0], bodies) loc result, val[0], val[6] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 153) def _reduce_27(val, _values, result) result = Factory.RESOURCE(Factory.fqn(token_text(val[0])), val[2]) loc result, val[0], val[4] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 162) def _reduce_28(val, _values, result) result = case Factory.resource_shape(val[0]) when :resource, :class # This catches deprecated syntax. # If the attribute operations does not include +>, then the found expression # is actually a LEFT followed by LITERAL_HASH # unless tmp = transform_resource_wo_title(val[0], val[2], val[1], val[4]) error val[1], "Syntax error resource body without title or hash with +>" end tmp when :defaults Factory.RESOURCE_DEFAULTS(val[0], val[2]) when :override # This was only done for override in original - TODO should it be here at all Factory.RESOURCE_OVERRIDE(val[0], val[2]) else error val[0], "Expression is not valid as a resource, resource-default, or resource-override" end loc result, val[0], val[4] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 184) def _reduce_29(val, _values, result) result = Factory.RESOURCE_BODY(val[0], val[2]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 187) def _reduce_30(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 188) def _reduce_31(val, _values, result) result = val[0].push val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 194) def _reduce_32(val, _values, result) result = [] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 195) def _reduce_33(val, _values, result) result = [] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 196) def _reduce_34(val, _values, result) result = val[2] result end .,., # reduce 35 omitted # reduce 36 omitted # reduce 37 omitted # reduce 38 omitted module_eval(<<'.,.,', 'egrammar.ra', 205) def _reduce_39(val, _values, result) result = val[0].in val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 206) def _reduce_40(val, _values, result) result = val[0] =~ val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 207) def _reduce_41(val, _values, result) result = val[0].mne val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 208) def _reduce_42(val, _values, result) result = val[0] + val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 209) def _reduce_43(val, _values, result) result = val[0] - val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 210) def _reduce_44(val, _values, result) result = val[0] / val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 211) def _reduce_45(val, _values, result) result = val[0] * val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 212) def _reduce_46(val, _values, result) result = val[0] % val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 213) def _reduce_47(val, _values, result) result = val[0] << val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 214) def _reduce_48(val, _values, result) result = val[0] >> val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 215) def _reduce_49(val, _values, result) result = val[1].minus ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 216) def _reduce_50(val, _values, result) result = val[1].unfold ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 217) def _reduce_51(val, _values, result) result = val[0].ne val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 218) def _reduce_52(val, _values, result) result = val[0].eq val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 219) def _reduce_53(val, _values, result) result = val[0] > val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 220) def _reduce_54(val, _values, result) result = val[0] >= val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 221) def _reduce_55(val, _values, result) result = val[0] < val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 222) def _reduce_56(val, _values, result) result = val[0] <= val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 223) def _reduce_57(val, _values, result) result = val[1].not ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 224) def _reduce_58(val, _values, result) result = val[0].and val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 225) def _reduce_59(val, _values, result) result = val[0].or val[2] ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 226) def _reduce_60(val, _values, result) result = val[0].select(*val[2]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 227) def _reduce_61(val, _values, result) result = val[1].paren ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 228) def _reduce_62(val, _values, result) result = val[1].paren ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 231) def _reduce_63(val, _values, result) result = val[0].access(val[2]); loc result, val[0], val[4] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 234) def _reduce_64(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 235) def _reduce_65(val, _values, result) result = Factory.ARGUMENTS(val[0], val[2]) result end .,., # reduce 66 omitted module_eval(<<'.,.,', 'egrammar.ra', 239) def _reduce_67(val, _values, result) result = Factory.HASH_UNFOLDED([val[0]]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 248) def _reduce_68(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 249) def _reduce_69(val, _values, result) result = val[0].push(val[2]) result end .,., # reduce 70 omitted # reduce 71 omitted # reduce 72 omitted # reduce 73 omitted # reduce 74 omitted # reduce 75 omitted # reduce 76 omitted # reduce 77 omitted # reduce 78 omitted # reduce 79 omitted # reduce 80 omitted # reduce 81 omitted # reduce 82 omitted # reduce 83 omitted # reduce 84 omitted # reduce 85 omitted # reduce 86 omitted # reduce 87 omitted # reduce 88 omitted # reduce 89 omitted # reduce 90 omitted # reduce 91 omitted module_eval(<<'.,.,', 'egrammar.ra', 274) def _reduce_92(val, _values, result) result = Factory.NUMBER(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 275) def _reduce_93(val, _values, result) result = Factory.literal(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 276) def _reduce_94(val, _values, result) result = Factory.literal(:default) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 277) def _reduce_95(val, _values, result) result = Factory.literal(:undef) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 278) def _reduce_96(val, _values, result) result = Factory.QNAME_OR_NUMBER(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 287) def _reduce_97(val, _values, result) result = Factory.CALL_NAMED(val[0], true, val[1]) loc result, val[0], val[3] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 291) def _reduce_98(val, _values, result) result = Factory.CALL_NAMED(val[0], true, []) loc result, val[0], val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 295) def _reduce_99(val, _values, result) result = Factory.CALL_NAMED(val[0], true, val[1]) loc result, val[0], val[4] result.lambda = val[4] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 300) def _reduce_100(val, _values, result) result = Factory.CALL_NAMED(val[0], true, []) loc result, val[0], val[2] result.lambda = val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 306) def _reduce_101(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 307) def _reduce_102(val, _values, result) result = Factory.QNAME(val[0][:value]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 312) def _reduce_103(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 313) def _reduce_104(val, _values, result) result = val[0]; val[0].lambda = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 316) def _reduce_105(val, _values, result) result = Factory.CALL_METHOD(val[0], val[2]); loc result, val[1], val[3] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 317) def _reduce_106(val, _values, result) result = Factory.CALL_METHOD(val[0], []); loc result, val[1], val[3] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 318) def _reduce_107(val, _values, result) result = Factory.CALL_METHOD(val[0], []); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 322) def _reduce_108(val, _values, result) result = val[0].dot(Factory.fqn(val[2][:value])) loc result, val[1], val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 326) def _reduce_109(val, _values, result) result = val[0].dot(Factory.fqn(val[2][:value])) loc result, val[1], val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 334) def _reduce_110(val, _values, result) result = Factory.LAMBDA(val[0][:value], val[2][:value], val[1]) loc result, val[0][:start], val[2][:end] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 339) def _reduce_111(val, _values, result) result = {:end => val[2], :value =>val[1] } result end .,., module_eval(<<'.,.,', 'egrammar.ra', 340) def _reduce_112(val, _values, result) result = {:end => val[1], :value => nil } result end .,., module_eval(<<'.,.,', 'egrammar.ra', 344) def _reduce_113(val, _values, result) result = {:start => val[0], :value => [] } result end .,., module_eval(<<'.,.,', 'egrammar.ra', 345) def _reduce_114(val, _values, result) result = {:start => val[0], :value => val[1] } result end .,., module_eval(<<'.,.,', 'egrammar.ra', 353) def _reduce_115(val, _values, result) result = val[1] loc(result, val[0], val[1]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 360) def _reduce_116(val, _values, result) result = Factory.IF(val[0], Factory.block_or_expression(val[2], val[1], val[3]), val[4]) loc(result, val[0], (val[4] ? val[4] : val[3])) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 364) def _reduce_117(val, _values, result) result = Factory.IF(val[0], nil, val[3]) loc(result, val[0], (val[3] ? val[3] : val[2])) result end .,., # reduce 118 omitted module_eval(<<'.,.,', 'egrammar.ra', 372) def _reduce_119(val, _values, result) result = val[1] loc(result, val[0], val[1]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 376) def _reduce_120(val, _values, result) result = Factory.block_or_expression(val[2], val[1], val[3]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 379) def _reduce_121(val, _values, result) result = nil # don't think a nop is needed here either result end .,., module_eval(<<'.,.,', 'egrammar.ra', 386) def _reduce_122(val, _values, result) result = Factory.UNLESS(val[1], Factory.block_or_expression(val[3], val[2], val[4]), val[5]) loc result, val[0], val[4] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 390) def _reduce_123(val, _values, result) result = Factory.UNLESS(val[1], nil, val[4]) loc result, val[0], val[4] result end .,., # reduce 124 omitted module_eval(<<'.,.,', 'egrammar.ra', 400) def _reduce_125(val, _values, result) result = Factory.block_or_expression(val[2], val[1], val[3]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 403) def _reduce_126(val, _values, result) result = nil # don't think a nop is needed here either result end .,., module_eval(<<'.,.,', 'egrammar.ra', 410) def _reduce_127(val, _values, result) result = Factory.CASE(val[1], *val[3]) loc result, val[0], val[4] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 416) def _reduce_128(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 417) def _reduce_129(val, _values, result) result = val[0].push val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 422) def _reduce_130(val, _values, result) result = Factory.WHEN(val[0], val[3]); loc result, val[1], val[4] result end .,., # reduce 131 omitted # reduce 132 omitted # reduce 133 omitted module_eval(<<'.,.,', 'egrammar.ra', 438) def _reduce_134(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 443) def _reduce_135(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 444) def _reduce_136(val, _values, result) result = val[0].push val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 449) def _reduce_137(val, _values, result) result = Factory.MAP(val[0], val[2]) ; loc result, val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 459) def _reduce_138(val, _values, result) result = Factory.COLLECT(val[0], val[1], val[3]) loc result, val[0], val[5] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 463) def _reduce_139(val, _values, result) result = Factory.COLLECT(val[0], val[1], []) loc result, val[0], val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 468) def _reduce_140(val, _values, result) result = Factory.VIRTUAL_QUERY(val[1]) ; loc result, val[0], val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 469) def _reduce_141(val, _values, result) result = Factory.EXPORTED_QUERY(val[1]) ; loc result, val[0], val[2] result end .,., # reduce 142 omitted # reduce 143 omitted module_eval(<<'.,.,', 'egrammar.ra', 478) def _reduce_144(val, _values, result) result = [] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 479) def _reduce_145(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 480) def _reduce_146(val, _values, result) result = val[0].push(val[2]) result end .,., # reduce 147 omitted # reduce 148 omitted module_eval(<<'.,.,', 'egrammar.ra', 495) def _reduce_149(val, _values, result) result = Factory.ATTRIBUTE_OP(val[0][:value], '=>', val[2]) loc result, val[0], val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 499) def _reduce_150(val, _values, result) result = Factory.ATTRIBUTE_OP(val[0][:value], '+>', val[2]) loc result, val[0], val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 503) def _reduce_151(val, _values, result) result = Factory.ATTRIBUTES_OP(val[2]) ; loc result, val[0], val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 512) def _reduce_152(val, _values, result) definition = Factory.DEFINITION(classname(val[1][:value]), val[2], val[4]) loc(definition, val[0], val[5]) result = add_definition(definition) # New lexer does not keep track of this, this is done in validation if @lexer.respond_to?(:'indefine=') @lexer.indefine = false end result end .,., module_eval(<<'.,.,', 'egrammar.ra', 524) def _reduce_153(val, _values, result) definition = Factory.APPLICATION(classname(val[1][:value]), val[2], val[4]) loc(definition, val[0], val[5]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 531) def _reduce_154(val, _values, result) result = Factory.CAPABILITY_MAPPING(val[1][:value], Factory.QNAME(classname(val[0][:value])), classname(val[2][:value]), val[4]) loc result, val[0], val[6] add_mapping(result) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 538) def _reduce_155(val, _values, result) result = Factory.CAPABILITY_MAPPING(val[1][:value], val[0], classname(val[2][:value]), val[4]) loc result, val[0], val[6] add_mapping(result) result end .,., # reduce 156 omitted # reduce 157 omitted module_eval(<<'.,.,', 'egrammar.ra', 552) def _reduce_158(val, _values, result) # Remove this plan's name from the namestack as all nested plans have been parsed namepop definition = Factory.PLAN(classname(val[1][:value]), val[2], val[4]) loc(definition, val[0], val[5]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 565) def _reduce_159(val, _values, result) # Remove this class' name from the namestack as all nested classes have been parsed namepop definition = Factory.HOSTCLASS(classname(val[1][:value]), val[2], token_text(val[3]), val[5]) loc(definition, val[0], val[6]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 576) def _reduce_160(val, _values, result) namestack(val[0][:value]) ; result = val[0] result end .,., # reduce 161 omitted # reduce 162 omitted # reduce 163 omitted module_eval(<<'.,.,', 'egrammar.ra', 585) def _reduce_164(val, _values, result) result = val[1] result end .,., # reduce 165 omitted # reduce 166 omitted module_eval(<<'.,.,', 'egrammar.ra', 602) def _reduce_167(val, _values, result) definition = Factory.SITE(val[2]) loc(definition, val[0], val[3]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 607) def _reduce_168(val, _values, result) definition = Factory.SITE(nil) loc(definition, val[0], val[2]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 618) def _reduce_169(val, _values, result) definition = Factory.NODE(val[1], val[3], val[5]) loc(definition, val[0], val[6]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 623) def _reduce_170(val, _values, result) definition = Factory.NODE(val[1], val[3], nil) loc(definition, val[0], val[5]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 634) def _reduce_171(val, _values, result) result = [result] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 635) def _reduce_172(val, _values, result) result = val[0].push(val[2]) result end .,., # reduce 173 omitted # reduce 174 omitted module_eval(<<'.,.,', 'egrammar.ra', 642) def _reduce_175(val, _values, result) result = Factory.literal(:default); loc result, val[0] result end .,., # reduce 176 omitted module_eval(<<'.,.,', 'egrammar.ra', 646) def _reduce_177(val, _values, result) result = Factory.literal(val[0][:value]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 647) def _reduce_178(val, _values, result) result = Factory.concat(val[0], '.', val[2][:value]); loc result, val[0], val[2] result end .,., # reduce 179 omitted # reduce 180 omitted # reduce 181 omitted module_eval(<<'.,.,', 'egrammar.ra', 656) def _reduce_182(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 662) def _reduce_183(val, _values, result) definition = Factory.FUNCTION(val[1][:value], val[2], val[5], val[3]) loc(definition, val[0], val[6]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 668) def _reduce_184(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 669) def _reduce_185(val, _values, result) result = val[1].access(val[3]) ; loc result, val[1], val[4] result end .,., # reduce 186 omitted # reduce 187 omitted # reduce 188 omitted # reduce 189 omitted module_eval(<<'.,.,', 'egrammar.ra', 679) def _reduce_190(val, _values, result) error val[0], "'class' keyword not allowed at this location" result end .,., module_eval(<<'.,.,', 'egrammar.ra', 680) def _reduce_191(val, _values, result) error val[0], "A quoted string is not valid as a name here" result end .,., module_eval(<<'.,.,', 'egrammar.ra', 684) def _reduce_192(val, _values, result) result = [] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 685) def _reduce_193(val, _values, result) result = [] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 686) def _reduce_194(val, _values, result) result = [] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 687) def _reduce_195(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 688) def _reduce_196(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 692) def _reduce_197(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 693) def _reduce_198(val, _values, result) result = val[0].push(val[2]) result end .,., # reduce 199 omitted # reduce 200 omitted # reduce 201 omitted # reduce 202 omitted module_eval(<<'.,.,', 'egrammar.ra', 705) def _reduce_203(val, _values, result) result = Factory.PARAM(val[0][:value], val[2]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 706) def _reduce_204(val, _values, result) result = Factory.PARAM(val[0][:value]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 709) def _reduce_205(val, _values, result) result = val[1]; val[1].captures_rest result end .,., module_eval(<<'.,.,', 'egrammar.ra', 712) def _reduce_206(val, _values, result) val[1].type_expr(val[0]) ; result = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 715) def _reduce_207(val, _values, result) result = val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 716) def _reduce_208(val, _values, result) result = val[0].access(val[2]) ; loc result, val[0], val[3] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 721) def _reduce_209(val, _values, result) definition = Factory.TYPE_ASSIGNMENT(val[0], Factory.KEY_ENTRY(val[2], val[3])) loc(definition, val[0], val[3]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 726) def _reduce_210(val, _values, result) definition = Factory.TYPE_ASSIGNMENT(val[0], val[2].access(val[4])) loc(definition, val[0], val[5]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 731) def _reduce_211(val, _values, result) definition = Factory.TYPE_ASSIGNMENT(val[0], val[2]) loc(definition, val[0], val[2]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 736) def _reduce_212(val, _values, result) definition = Factory.TYPE_ASSIGNMENT(val[0], val[2]) loc(definition, val[0], val[2]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 741) def _reduce_213(val, _values, result) definition = Factory.TYPE_ASSIGNMENT(val[0], val[2]) loc(definition, val[0], val[4]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 747) def _reduce_214(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 753) def _reduce_215(val, _values, result) definition = Factory.TYPE_DEFINITION(val[1][:value], nil, val[3]) loc(definition, val[0], val[4]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 758) def _reduce_216(val, _values, result) definition = Factory.TYPE_DEFINITION(val[1][:value], val[3][:value], val[5]) loc(definition, val[0], val[6]) result = add_definition(definition) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 767) def _reduce_217(val, _values, result) fqn = Factory.fqn(val[0][:value]) loc(fqn, val[0]) fqn['offset'] += 1 fqn['length'] -= 1 result = fqn.var loc(result, val[0]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 778) def _reduce_218(val, _values, result) result = Factory.RESERVED(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 779) def _reduce_219(val, _values, result) result = Factory.RESERVED(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 785) def _reduce_220(val, _values, result) result = Factory.LIST(val[1]); loc result, val[0], val[3] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 786) def _reduce_221(val, _values, result) result = Factory.literal([]) ; loc result, val[0], val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 787) def _reduce_222(val, _values, result) result = Factory.LIST(val[1]); loc result, val[0], val[3] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 788) def _reduce_223(val, _values, result) result = Factory.literal([]) ; loc result, val[0], val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 791) def _reduce_224(val, _values, result) result = Factory.HASH(val[1]); loc result, val[0], val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 792) def _reduce_225(val, _values, result) result = Factory.HASH(val[1]); loc result, val[0], val[3] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 793) def _reduce_226(val, _values, result) result = Factory.literal({}) ; loc result, val[0], val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 796) def _reduce_227(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 797) def _reduce_228(val, _values, result) result = val[0].push val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 800) def _reduce_229(val, _values, result) result = Factory.KEY_ENTRY(val[0], val[2]); loc result, val[1] result end .,., # reduce 230 omitted module_eval(<<'.,.,', 'egrammar.ra', 804) def _reduce_231(val, _values, result) result = Factory.literal(val[0][:value]) ; loc result, val[0] result end .,., # reduce 232 omitted module_eval(<<'.,.,', 'egrammar.ra', 809) def _reduce_233(val, _values, result) result = Factory.literal(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 812) def _reduce_234(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 813) def _reduce_235(val, _values, result) result = Factory.ARGUMENTS(val[0], val[2]) result end .,., # reduce 236 omitted # reduce 237 omitted # reduce 238 omitted # reduce 239 omitted # reduce 240 omitted # reduce 241 omitted # reduce 242 omitted # reduce 243 omitted # reduce 244 omitted module_eval(<<'.,.,', 'egrammar.ra', 830) def _reduce_245(val, _values, result) result = Factory.literal(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 831) def _reduce_246(val, _values, result) result = Factory.literal(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 833) def _reduce_247(val, _values, result) result = Factory.STRING(val[0], *val[1]) ; loc result, val[0], val[1][-1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 834) def _reduce_248(val, _values, result) result = Factory.literal(val[0][:value]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 835) def _reduce_249(val, _values, result) result = Factory.literal(val[0][:value]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 836) def _reduce_250(val, _values, result) result = Factory.literal(val[0][:value]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 837) def _reduce_251(val, _values, result) result = [val[0]] + val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 838) def _reduce_252(val, _values, result) result = Factory.TEXT(val[0]) result end .,., module_eval(<<'.,.,', 'egrammar.ra', 841) def _reduce_253(val, _values, result) result = [val[0]] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 842) def _reduce_254(val, _values, result) result = [val[0]] + val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 845) def _reduce_255(val, _values, result) result = Factory.HEREDOC(val[0][:value], val[1]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 848) def _reduce_256(val, _values, result) result = Factory.SUBLOCATE(val[0], val[1]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 849) def _reduce_257(val, _values, result) result = Factory.SUBLOCATE(val[0], val[1]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 852) def _reduce_258(val, _values, result) result = Factory.EPP(val[1], val[2]); loc result, val[0] result end .,., # reduce 259 omitted # reduce 260 omitted module_eval(<<'.,.,', 'egrammar.ra', 859) def _reduce_261(val, _values, result) result = nil result end .,., module_eval(<<'.,.,', 'egrammar.ra', 860) def _reduce_262(val, _values, result) result = [] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 861) def _reduce_263(val, _values, result) result = val[1] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 864) def _reduce_264(val, _values, result) result = Factory.RENDER_STRING(val[0][:value]); loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 865) def _reduce_265(val, _values, result) result = Factory.RENDER_EXPR(val[1]); loc result, val[0], val[2] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 866) def _reduce_266(val, _values, result) result = Factory.RENDER_EXPR(Factory.block_or_expression(val[2], val[1], val[3])); loc result, val[0], val[4] result end .,., # reduce 267 omitted # reduce 268 omitted module_eval(<<'.,.,', 'egrammar.ra', 872) def _reduce_269(val, _values, result) result = Factory.QREF(val[0][:value]) ; loc result, val[0] result end .,., module_eval(<<'.,.,', 'egrammar.ra', 875) def _reduce_270(val, _values, result) result = Factory.literal(val[0][:value]); loc result, val[0] result end .,., # reduce 271 omitted module_eval(<<'.,.,', 'egrammar.ra', 881) def _reduce_272(val, _values, result) result = nil result end .,., # reduce 273 omitted # reduce 274 omitted # reduce 275 omitted # reduce 276 omitted # reduce 277 omitted # reduce 278 omitted # reduce 279 omitted # reduce 280 omitted # reduce 281 omitted # reduce 282 omitted # reduce 283 omitted # reduce 284 omitted # reduce 285 omitted # reduce 286 omitted # reduce 287 omitted # reduce 288 omitted # reduce 289 omitted # reduce 290 omitted # reduce 291 omitted # reduce 292 omitted # reduce 293 omitted # reduce 294 omitted # reduce 295 omitted # reduce 296 omitted module_eval(<<'.,.,', 'egrammar.ra', 912) def _reduce_297(val, _values, result) result = nil result end .,., def _reduce_none(val, _values, result) val[0] end end # class Parser end # module Parser end # module Pops end # module Puppet