#
# 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', 718)

# Make emacs happy
# Local Variables:
# mode: ruby
# End:
...end egrammar.ra/module_eval...
##### State transition tables begin ###

clist = [
'68,-132,112,207,220,235,344,51,53,87,88,84,79,90,234,94,-130,89,51,53',
'80,82,81,83,234,283,224,269,222,115,233,223,321,114,207,234,244,204',
'93,-198,-207,-132,86,85,54,299,72,73,75,74,77,78,68,70,71,54,-130,316',
'202,315,69,87,88,84,79,90,59,94,76,89,51,53,80,82,81,83,245,59,115,-198',
'-207,301,114,115,115,51,53,114,114,115,93,330,291,114,86,85,105,104',
'72,73,75,74,77,78,68,70,71,120,225,227,122,226,69,87,88,84,79,90,68',
'94,76,89,54,297,80,82,81,83,68,59,115,90,268,94,114,89,243,51,53,105',
'104,90,93,94,128,89,86,85,68,267,72,73,75,74,77,78,93,70,71,84,79,90',
'68,94,69,89,93,306,80,82,81,83,76,192,54,90,316,94,315,89,309,70,71',
'105,104,310,93,207,69,51,53,85,68,168,72,73,75,74,77,78,93,70,71,84',
'79,90,313,94,69,89,51,53,80,82,81,83,76,105,68,68,317,51,53,229,228',
'319,120,63,263,122,93,90,90,94,94,89,89,241,72,73,75,74,77,78,243,70',
'71,120,59,326,122,327,69,68,241,91,93,93,120,267,76,122,87,88,84,79',
'90,259,94,59,89,70,71,80,82,81,83,68,69,63,59,64,66,65,67,134,258,257',
'336,79,90,93,94,243,89,86,85,80,243,72,73,75,74,77,78,116,70,71,241',
'339,217,341,106,69,217,93,282,286,319,346,347,76,348,72,73,75,74,77',
'78,68,70,71,349,99,352,353,354,69,285,63,60,79,90,361,94,76,89,362,363',
'80,364,,,68,,,,,,,,,,,,79,90,93,94,,89,,,80,,72,73,75,74,77,78,68,70',
'71,,,,,,69,,93,,,90,,94,76,89,72,73,75,74,77,78,68,70,71,,,,,,69,,,',
'79,90,93,94,76,89,,,80,,72,73,75,74,77,78,68,70,71,,,,,,69,,93,,,90',
',94,76,89,72,73,75,74,77,78,68,70,71,,,,,,69,87,88,84,79,90,93,94,76',
'89,,,80,82,81,83,68,,,,,70,71,,,,,,69,90,93,94,,89,86,85,,,72,73,75',
'74,77,78,68,70,71,,,,,,69,,93,,,90,,94,76,89,72,73,75,74,77,78,68,70',
'71,,,,,,69,,,,,90,93,94,76,89,,,,,72,73,75,74,,,,70,71,,,,,,69,,93,',
',,,,76,,72,73,75,74,,,68,70,71,,,,,,69,87,88,84,79,90,239,94,76,89,',
',80,82,81,83,,,,,,,,,,,,,,,93,,,,86,85,,,72,73,75,74,77,78,68,70,71',
',,,,,69,87,88,84,79,90,,94,76,89,,,80,82,81,83,,,,,,,,,,,,,,,93,,,,86',
'85,,,72,73,75,74,77,78,68,70,71,,,,,,69,87,88,84,79,90,,94,76,89,68',
',80,82,81,83,,,,,,,,90,,94,,89,,,93,,,,86,85,,,72,73,75,74,77,78,,70',
'71,,93,,,,69,,,,,,75,74,76,,68,70,71,,,,,,69,87,88,84,79,90,,94,76,89',
'68,,80,82,81,83,,,,,,,,90,,94,,89,,,93,,,,86,85,,,72,73,75,74,77,78',
',70,71,,93,,,,69,,,,,,75,74,76,,68,70,71,,,,,,69,87,88,84,79,90,,94',
'76,89,,,80,82,81,83,,,,,,,,,,,,,,,93,,,,86,85,,,72,73,75,74,77,78,68',
'70,71,,,,,,69,87,88,84,79,90,,94,76,89,,,80,82,81,83,,,,,,,,,,,,,,,93',
',,,86,85,,,72,73,75,74,77,78,68,70,71,,,,,,69,87,88,84,79,90,,94,76',
'89,,,80,82,81,83,,,,,,,,,,,,,,,93,,,,86,85,,,72,73,75,74,77,78,68,70',
'71,,,,,,69,87,88,84,79,90,,94,76,89,,,80,82,81,83,,,,,,,,,,,,,,,93,',
',,86,85,,,72,73,75,74,77,78,68,70,71,,,,,,69,87,88,84,79,90,,94,76,89',
',,80,82,81,83,,,,,,,,,,,,,,,93,,,,86,85,,,72,73,75,74,77,78,,70,71,',
',,,,69,68,,213,,,,,76,,87,88,84,79,90,,94,,89,,,80,82,81,83,,,,,,,,',
',,,,,,93,,,,86,85,,,72,73,75,74,77,78,,70,71,,,,,,69,68,,212,,,,,76',
',87,88,84,79,90,,94,,89,,,80,82,81,83,,,,,,,,,,,,,,,93,,,,86,85,,,72',
'73,75,74,77,78,,70,71,,,,,,69,68,,211,,,,,76,,87,88,84,79,90,,94,,89',
',,80,82,81,83,,,,,,,,,,,,,,,93,,,,86,85,,,72,73,75,74,77,78,,70,71,',
',,,,69,68,,210,,,,,76,,87,88,84,79,90,,94,,89,,,80,82,81,83,,,,,,,,',
',,,,,,93,,,,86,85,,,72,73,75,74,77,78,68,70,71,,,,,,69,87,88,84,79,90',
',94,76,89,,197,80,82,81,83,,,,,,,,,,,,,,,93,,,,86,85,,,72,73,75,74,77',
'78,,70,71,51,53,,,47,69,48,,,,,,,76,,,,,,,,,13,,,,,,38,,44,,46,96,,45',
'58,54,,40,57,,,,55,12,,,56,51,53,11,,47,,48,,,,59,,,,,,39,,,167,,,13',
',,,,,170,187,181,188,46,182,190,183,179,177,,172,185,,,,55,12,191,186',
'184,51,53,11,,47,,48,333,,,59,,,,,189,171,,,,,,13,,,,,,38,,44,,46,42',
',45,58,54,,40,57,43,,,55,12,51,53,56,,47,11,48,322,,,,,,59,,,,,,39,',
',13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48',
',,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51',
'53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,',
'40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44',
',46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39',
',,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48',
',,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51',
'53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,',
'40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44',
',46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39',
',,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48',
',,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51',
'53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,',
'40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44',
',46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39',
',,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48',
',,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51',
'53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,',
'40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44',
',46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39',
',,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48',
',,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51',
'53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,',
'40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44',
',46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39',
',,13,,,,,,170,187,181,188,46,182,190,183,179,177,,172,185,,,,55,12,191',
'186,184,51,53,11,,47,,48,308,,,59,,,,,189,171,,,,,,13,,,,,,38,,44,,46',
'42,,45,58,54,,40,57,43,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,',
',13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48',
',,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51',
'53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,',
'40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44',
',46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39',
',,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48',
',,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55,12',
'51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,199,,,,,38,,44,,46,96,,45,58',
'54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38',
',44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,',
',,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47',
'11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55',
'12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,209,,,,,38,,44,,46,96,,45',
'58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,',
'38,,44,,46,42,,45,58,54,,40,57,43,,,55,12,51,53,56,,47,11,48,,,,,,,59',
',,,,,39,,,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55,12,51,53,56',
',47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,42,,45,58,54,,40,57',
'43,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46',
'42,,45,58,54,,40,57,43,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,',
',13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48',
',,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51',
'53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,',
'40,57,,,,55,12,,,56,51,53,11,,47,290,48,,,,59,,,,,,39,,,,,,13,,,,,,38',
',44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,335,,,,,,59',
',,,,,39,,,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55,12,51,53,56',
',47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57',
',,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96',
',45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,273,,,,,,59,,,,,,39,,,13',
',,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55,12,51,53,56,,47,11,48,,',
',,,,59,,,,,,39,,,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55,12,51',
'53,56,,47,11,48,271,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,42,,45,58,54',
',40,57,43,,,55,12,51,53,56,,47,11,48,265,,,,,,59,,,,,,39,,,13,,,,,,38',
',44,,46,42,,45,58,54,,40,57,43,,,55,12,51,53,56,,47,11,48,,,,,,,59,',
',,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47',
'11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55',
'12,,,56,51,53,11,,47,126,48,,,,59,,,,,,39,,,,,,13,,,,,,38,,44,,46,96',
',45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,',
',,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,',
',59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53',
'56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40',
'57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46',
'96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13',
',,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,,,,',
',,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12,51,53',
'56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40',
'57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46',
'96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,351,,,,,,59,,,,,,39',
',,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55,12,51,53,56,,47,11',
'48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54,,40,57,,,,55,12',
'51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58,54',
',40,57,,,,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44',
',46,96,,45,58,54,,40,57,,,,55,12,51,53,56,,47,11,48,356,,,,,,59,,,,',
',39,,,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55,12,51,53,56,,47',
'11,48,358,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43',
',,55,12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,42',
',45,58,54,61,40,57,43,,,55,12,51,53,56,,47,11,48,360,,,,,,59,,,,,,39',
',,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55,12,51,53,56,,47,11',
'48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,42,,45,58,54,,40,57,43,,,55',
'12,51,53,56,,47,11,48,,,,,,,59,,,,,,39,,,13,,,,,,38,,44,,46,96,,45,58',
'54,,40,57,,,,55,12,,,56,,,11,,,,253,187,252,188,59,250,190,254,248,247',
'39,249,251,,,,,,191,186,255,253,187,252,188,,250,190,254,248,247,,249',
'251,,,189,256,,191,186,255,253,187,252,188,,250,190,254,248,247,,249',
'251,,,189,256,,191,186,255,,,,,,,,,,,,,,,,189,256' ]
        racc_action_table = arr = ::Array.new(4804, 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 = [
'164,179,42,105,118,164,316,70,70,164,164,164,164,164,208,164,177,164',
'71,71,164,164,164,164,274,217,125,208,118,42,141,125,274,42,217,141',
'180,105,164,185,184,179,164,164,70,240,164,164,164,164,164,164,163,164',
'164,71,177,271,103,271,164,163,163,163,163,163,70,163,164,163,220,220',
'163,163,163,163,180,71,96,185,184,242,96,182,282,226,226,182,282,181',
'163,282,226,181,163,163,306,306,163,163,163,163,163,163,162,163,163',
'220,127,130,220,127,163,162,162,162,162,162,97,162,163,162,226,236,162',
'162,162,162,151,220,44,97,207,97,44,97,246,48,48,199,199,151,162,151',
'48,151,162,162,161,205,162,162,162,162,162,162,97,162,162,161,161,161',
'142,161,162,161,151,260,161,161,161,161,162,92,48,142,313,142,313,142',
'264,151,151,36,36,266,161,267,151,183,183,161,160,90,161,161,161,161',
'161,161,142,161,161,160,160,160,270,160,161,160,45,45,160,160,160,160',
'161,104,150,95,272,222,222,133,133,273,183,135,200,183,160,150,95,150',
'95,150,95,277,160,160,160,160,160,160,278,160,160,45,183,279,45,280',
'160,10,214,10,150,95,222,284,160,222,10,10,10,10,10,198,10,45,10,150',
'150,10,10,10,10,159,150,62,222,7,7,7,7,60,196,194,296,159,159,10,159',
'174,159,10,10,159,298,10,10,10,10,10,10,43,10,10,173,305,113,307,37',
'10,117,159,215,219,317,319,320,10,324,159,159,159,159,159,159,158,159',
'159,325,35,331,332,334,159,218,5,1,158,158,350,158,159,158,355,357,158',
'359,,,157,,,,,,,,,,,,157,157,158,157,,157,,,157,,158,158,158,158,158',
'158,155,158,158,,,,,,158,,157,,,155,,155,158,155,157,157,157,157,157',
'157,156,157,157,,,,,,157,,,,156,156,155,156,157,156,,,156,,155,155,155',
'155,155,155,149,155,155,,,,,,155,,156,,,149,,149,155,149,156,156,156',
'156,156,156,312,156,156,,,,,,156,312,312,312,312,312,149,312,156,312',
',,312,312,312,312,154,,,,,149,149,,,,,,149,154,312,154,,154,312,312',
',,312,312,312,312,312,312,153,312,312,,,,,,312,,154,,,153,,153,312,153',
'154,154,154,154,154,154,152,154,154,,,,,,154,,,,,152,153,152,154,152',
',,,,153,153,153,153,,,,153,153,,,,,,153,,152,,,,,,153,,152,152,152,152',
',,169,152,152,,,,,,152,169,169,169,169,169,169,169,152,169,,,169,169',
'169,169,,,,,,,,,,,,,,,169,,,,169,169,,,169,169,169,169,169,169,304,169',
'169,,,,,,169,304,304,304,304,304,,304,169,304,,,304,304,304,304,,,,',
',,,,,,,,,,304,,,,304,304,,,304,304,304,304,304,304,303,304,304,,,,,',
'304,303,303,303,303,303,,303,304,303,148,,303,303,303,303,,,,,,,,148',
',148,,148,,,303,,,,303,303,,,303,303,303,303,303,303,,303,303,,148,',
',,303,,,,,,148,148,303,,295,148,148,,,,,,148,295,295,295,295,295,,295',
'148,295,147,,295,295,295,295,,,,,,,,147,,147,,147,,,295,,,,295,295,',
',295,295,295,295,295,295,,295,295,,147,,,,295,,,,,,147,147,295,,293',
'147,147,,,,,,147,293,293,293,293,293,,293,147,293,,,293,293,293,293',
',,,,,,,,,,,,,,293,,,,293,293,,,293,293,293,293,293,293,193,293,293,',
',,,,293,193,193,193,193,193,,193,293,193,,,193,193,193,193,,,,,,,,,',
',,,,,193,,,,193,193,,,193,193,193,193,193,193,289,193,193,,,,,,193,289',
'289,289,289,289,,289,193,289,,,289,289,289,289,,,,,,,,,,,,,,,289,,,',
'289,289,,,289,289,289,289,289,289,131,289,289,,,,,,289,131,131,131,131',
'131,,131,289,131,,,131,131,131,131,,,,,,,,,,,,,,,131,,,,131,131,,,131',
'131,131,131,131,131,124,131,131,,,,,,131,124,124,124,124,124,,124,131',
'124,,,124,124,124,124,,,,,,,,,,,,,,,124,,,,124,124,,,124,124,124,124',
'124,124,,124,124,,,,,,124,111,,111,,,,,124,,111,111,111,111,111,,111',
',111,,,111,111,111,111,,,,,,,,,,,,,,,111,,,,111,111,,,111,111,111,111',
'111,111,,111,111,,,,,,111,110,,110,,,,,111,,110,110,110,110,110,,110',
',110,,,110,110,110,110,,,,,,,,,,,,,,,110,,,,110,110,,,110,110,110,110',
'110,110,,110,110,,,,,,110,109,,109,,,,,110,,109,109,109,109,109,,109',
',109,,,109,109,109,109,,,,,,,,,,,,,,,109,,,,109,109,,,109,109,109,109',
'109,109,,109,109,,,,,,109,107,,107,,,,,109,,107,107,107,107,107,,107',
',107,,,107,107,107,107,,,,,,,,,,,,,,,107,,,,107,107,,,107,107,107,107',
'107,107,98,107,107,,,,,,107,98,98,98,98,98,,98,107,98,,98,98,98,98,98',
',,,,,,,,,,,,,,98,,,,98,98,,,98,98,98,98,98,98,,98,98,89,89,,,89,98,89',
',,,,,,98,,,,,,,,,89,,,,,,89,,89,,89,89,,89,89,89,,89,89,,,,89,89,,,89',
'213,213,89,,213,,213,,,,89,,,,,,89,,,89,,,213,,,,,,213,213,213,213,213',
'213,213,213,213,213,,213,213,,,,213,213,213,213,213,285,285,213,,285',
',285,285,,,213,,,,,213,213,,,,,,285,,,,,,285,,285,,285,285,,285,285',
'285,,285,285,285,,,285,285,275,275,285,,275,285,275,275,,,,,,285,,,',
',,285,,,275,,,,,,275,,275,,275,275,,275,275,275,,275,275,,,,275,275',
'72,72,275,,72,275,72,,,,,,,275,,,,,,275,,,72,,,,,,72,,72,,72,72,,72',
'72,72,,72,72,,,,72,72,73,73,72,,73,72,73,,,,,,,72,,,,,,72,,,73,,,,,',
'73,,73,,73,73,,73,73,73,,73,73,,,,73,73,74,74,73,,74,73,74,,,,,,,73',
',,,,,73,,,74,,,,,,74,,74,,74,74,,74,74,74,,74,74,,,,74,74,75,75,74,',
'75,74,75,,,,,,,74,,,,,,74,,,75,,,,,,75,,75,,75,75,,75,75,75,,75,75,',
',,75,75,76,76,75,,76,75,76,,,,,,,75,,,,,,75,,,76,,,,,,76,,76,,76,76',
',76,76,76,,76,76,,,,76,76,77,77,76,,77,76,77,,,,,,,76,,,,,,76,,,77,',
',,,,77,,77,,77,77,,77,77,77,,77,77,,,,77,77,78,78,77,,78,77,78,,,,,',
',77,,,,,,77,,,78,,,,,,78,,78,,78,78,,78,78,78,,78,78,,,,78,78,79,79',
'78,,79,78,79,,,,,,,78,,,,,,78,,,79,,,,,,79,,79,,79,79,,79,79,79,,79',
'79,,,,79,79,80,80,79,,80,79,80,,,,,,,79,,,,,,79,,,80,,,,,,80,,80,,80',
'80,,80,80,80,,80,80,,,,80,80,81,81,80,,81,80,81,,,,,,,80,,,,,,80,,,81',
',,,,,81,,81,,81,81,,81,81,81,,81,81,,,,81,81,82,82,81,,82,81,82,,,,',
',,81,,,,,,81,,,82,,,,,,82,,82,,82,82,,82,82,82,,82,82,,,,82,82,83,83',
'82,,83,82,83,,,,,,,82,,,,,,82,,,83,,,,,,83,,83,,83,83,,83,83,83,,83',
'83,,,,83,83,84,84,83,,84,83,84,,,,,,,83,,,,,,83,,,84,,,,,,84,,84,,84',
'84,,84,84,84,,84,84,,,,84,84,85,85,84,,85,84,85,,,,,,,84,,,,,,84,,,85',
',,,,,85,,85,,85,85,,85,85,85,,85,85,,,,85,85,86,86,85,,86,85,86,,,,',
',,85,,,,,,85,,,86,,,,,,86,,86,,86,86,,86,86,86,,86,86,,,,86,86,167,167',
'86,,167,86,167,,,,,,,86,,,,,,86,,,167,,,,,,167,,167,,167,167,,167,167',
'167,,167,167,,,,167,167,88,88,167,,88,167,88,,,,,,,167,,,,,,167,,,88',
',,,,,88,,88,,88,88,,88,88,88,,88,88,,,,88,88,68,68,88,,68,88,68,,,,',
',,88,,,,,,88,,,68,,,,,,68,,68,,68,68,,68,68,68,,68,68,,,,68,68,268,268',
'68,,268,68,268,,,,,,,68,,,,,,68,,,268,,,,,,268,,268,,268,268,,268,268',
'268,,268,268,,,,268,268,91,91,268,,91,268,91,,,,,,,268,,,,,,268,,,91',
',,,,,91,91,91,91,91,91,91,91,91,91,,91,91,,,,91,91,91,91,91,263,263',
'91,,263,,263,263,,,91,,,,,91,91,,,,,,263,,,,,,263,,263,,263,263,,263',
'263,263,,263,263,263,,,263,263,93,93,263,,93,263,93,,,,,,,263,,,,,,263',
',,93,,,,,,93,,93,,93,93,,93,93,93,,93,93,,,,93,93,94,94,93,,94,93,94',
',,,,,,93,,,,,,93,,,94,,,,,,94,,94,,94,94,,94,94,94,,94,94,,,,94,94,259',
'259,94,,259,94,259,,,,,,,94,,,,,,94,,,259,,,,,,259,,259,,259,259,,259',
'259,259,,259,259,,,,259,259,245,245,259,,245,259,245,,,,,,,259,,,,,',
'259,,,245,,,,,,245,,245,,245,245,,245,245,245,,245,245,,,,245,245,244',
'244,245,,244,245,244,,,,,,,245,,,,,,245,,,244,,,,,,244,,244,,244,244',
',244,244,244,,244,244,,,,244,244,67,67,244,,67,244,67,,,,,,,244,,,,',
',244,,,67,,,,,,67,,67,,67,67,,67,67,67,,67,67,67,,,67,67,99,99,67,,99',
'67,99,,,,,,,67,,,,,,67,,,99,99,,,,,99,,99,,99,99,,99,99,99,,99,99,,',
',99,99,241,241,99,,241,99,241,,,,,,,99,,,,,,99,,,241,,,,,,241,,241,',
'241,241,,241,241,241,,241,241,,,,241,241,235,235,241,,235,241,235,,',
',,,,241,,,,,,241,,,235,,,,,,235,,235,,235,235,,235,235,235,,235,235',
',,,235,235,234,234,235,,234,235,234,,,,,,,235,,,,,,235,,,234,,,,,,234',
',234,,234,234,,234,234,234,,234,234,,,,234,234,106,106,234,,106,234',
'106,,,,,,,234,,,,,,234,,,106,106,,,,,106,,106,,106,106,,106,106,106',
',106,106,,,,106,106,66,66,106,,66,106,66,,,,,,,106,,,,,,106,,,66,,,',
',,66,,66,,66,66,,66,66,66,,66,66,66,,,66,66,65,65,66,,65,66,65,,,,,',
',66,,,,,,66,,,65,,,,,,65,,65,,65,65,,65,65,65,,65,65,65,,,65,65,64,64',
'65,,64,65,64,,,,,,,65,,,,,,65,,,64,,,,,,64,,64,,64,64,,64,64,64,,64',
'64,64,,,64,64,63,63,64,,63,64,63,,,,,,,64,,,,,,64,,,63,,,,,,63,,63,',
'63,63,,63,63,63,,63,63,63,,,63,63,112,112,63,,112,63,112,,,,,,,63,,',
',,,63,,,112,,,,,,112,,112,,112,112,,112,112,112,,112,112,,,,112,112',
'232,232,112,,232,112,232,,,,,,,112,,,,,,112,,,232,,,,,,232,,232,,232',
'232,,232,232,232,,232,232,,,,232,232,227,227,232,,227,232,227,,,,,,',
'232,,,,,,232,,,227,,,,,,227,,227,,227,227,,227,227,227,,227,227,,,,227',
'227,,,227,223,223,227,,223,223,223,,,,227,,,,,,227,,,,,,223,,,,,,223',
',223,,223,223,,223,223,223,,223,223,,,,223,223,286,286,223,,286,223',
'286,286,,,,,,223,,,,,,223,,,286,,,,,,286,,286,,286,286,,286,286,286',
',286,286,286,,,286,286,69,69,286,,69,286,69,,,,,,,286,,,,,,286,,,69',
',,,,,69,,69,,69,69,,69,69,69,,69,69,,,,69,69,212,212,69,,212,69,212',
',,,,,,69,,,,,,69,,,212,,,,,,212,,212,,212,212,,212,212,212,,212,212',
',,,212,212,211,211,212,,211,212,211,211,,,,,,212,,,,,,212,,,211,,,,',
',211,,211,,211,211,,211,211,211,,211,211,211,,,211,211,61,61,211,,61',
'211,61,,,,,,,211,,,,,,211,,,61,,,,,,61,,61,,61,61,,61,61,61,,61,61,61',
',,61,61,210,210,61,,210,61,210,210,,,,,,61,,,,,,61,,,210,,,,,,210,,210',
',210,210,,210,210,210,,210,210,210,,,210,210,203,203,210,,203,210,203',
'203,,,,,,210,,,,,,210,,,203,,,,,,203,,203,,203,203,,203,203,203,,203',
'203,203,,,203,203,52,52,203,,52,203,52,,,,,,,203,,,,,,203,,,52,,,,,',
'52,,52,,52,52,,52,52,52,,52,52,,,,52,52,172,172,52,,172,52,172,,,,,',
',52,,,,,,52,,,172,,,,,,172,,172,,172,172,,172,172,172,,172,172,,,,172',
'172,,,172,47,47,172,,47,47,47,,,,172,,,,,,172,,,,,,47,,,,,,47,,47,,47',
'47,,47,47,47,,47,47,,,,47,47,297,297,47,,297,47,297,,,,,,,47,,,,,,47',
',,297,,,,,,297,,297,,297,297,,297,297,297,,297,297,,,,297,297,171,171',
'297,,171,297,171,,,,,,,297,,,,,,297,,,171,,,,,,171,,171,,171,171,,171',
'171,171,,171,171,,,,171,171,170,170,171,,170,171,170,,,,,,,171,,,,,',
'171,,,170,,,,,,170,,170,,170,170,,170,170,170,,170,170,,,,170,170,41',
'41,170,,41,170,41,,,,,,,170,,,,,,170,,,41,,,,,,41,,41,,41,41,,41,41',
'41,,41,41,,,,41,41,40,40,41,,40,41,40,,,,,,,41,,,,,,41,,,40,,,,,,40',
',40,,40,40,,40,40,40,,40,40,,,,40,40,39,39,40,,39,40,39,,,,,,,40,,,',
',,40,,,39,,,,,,39,,39,,39,39,,39,39,39,,39,39,,,,39,39,38,38,39,,38',
'39,38,,,,,,,39,,,,,,39,,,38,,,,,,38,,38,,38,38,,38,38,38,,38,38,,,,38',
'38,315,315,38,,315,38,315,,,,,,,38,,,,,,38,,,315,,,,,,315,,315,,315',
'315,,315,315,315,,315,315,,,,315,315,327,327,315,,327,315,327,327,,',
',,,315,,,,,,315,,,327,,,,,,327,,327,,327,327,,327,327,327,,327,327,327',
',,327,327,13,13,327,,13,327,13,,,,,,,327,,,,,,327,,,13,,,,,,13,,13,',
'13,13,,13,13,13,,13,13,,,,13,13,12,12,13,,12,13,12,,,,,,,13,,,,,,13',
',,12,,,,,,12,,12,,12,12,,12,12,12,,12,12,,,,12,12,11,11,12,,11,12,11',
',,,,,,12,,,,,,12,,,11,,,,,,11,,11,,11,11,,11,11,11,,11,11,,,,11,11,344',
'344,11,,344,11,344,344,,,,,,11,,,,,,11,,,344,,,,,,344,,344,,344,344',
',344,344,344,,344,344,344,,,344,344,346,346,344,,346,344,346,346,,,',
',,344,,,,,,344,,,346,,,,,,346,,346,,346,346,,346,346,346,,346,346,346',
',,346,346,4,4,346,,4,346,4,,,,,,,346,,,,,,346,,,4,,,,,,4,,4,,4,4,,4',
'4,4,4,4,4,4,,,4,4,347,347,4,,347,4,347,347,,,,,,4,,,,,,4,,,347,,,,,',
'347,,347,,347,347,,347,347,347,,347,347,347,,,347,347,0,0,347,,0,347',
'0,,,,,,,347,,,,,,347,,,0,,,,,,0,,0,,0,0,,0,0,0,,0,0,0,,,0,0,87,87,0',
',87,0,87,,,,,,,0,,,,,,0,,,87,,,,,,87,,87,,87,87,,87,87,87,,87,87,,,',
'87,87,,,87,,,87,,,,192,192,192,192,87,192,192,192,192,192,87,192,192',
',,,,,192,192,192,238,238,238,238,,238,238,238,238,238,,238,238,,,192',
'192,,238,238,238,243,243,243,243,,243,243,243,243,243,,243,243,,,238',
'238,,243,243,243,,,,,,,,,,,,,,,,243,243' ]
        racc_action_check = arr = ::Array.new(4804, 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 = [
  4621,   340,   nil,   nil,  4529,   327,   nil,   219,   nil,   nil,
   247,  4391,  4345,  4299,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   309,   115,   288,  4161,  4115,
  4069,  4023,    -6,   262,    95,   208,   nil,  3839,   135,   nil,
   nil,   nil,  3744,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   285,  3606,   267,  3189,  3143,  3097,  3051,  2775,  2358,  3468,
     5,    16,  1576,  1622,  1668,  1714,  1760,  1806,  1852,  1898,
  1944,  1990,  2036,  2082,  2128,  2174,  2220,  4667,  2312,  1386,
   154,  2450,   165,  2545,  2591,   213,    43,   112,  1327,  2821,
   nil,   nil,   nil,    47,   149,   -31,  3005,  1275,   nil,  1214,
  1153,  1092,  3235,   286,   nil,   nil,   nil,   290,    -8,   nil,
   nil,   nil,   nil,   nil,  1031,    19,   nil,    99,   nil,   nil,
    98,   979,   nil,   219,   nil,   215,   nil,   nil,   nil,   nil,
   nil,    23,   156,   nil,   nil,   nil,   nil,   771,   701,   427,
   212,   122,   527,   503,   475,   375,   399,   347,   323,   271,
   186,   142,    98,    46,    -6,   nil,   nil,  2266,   nil,   579,
  3977,  3931,  3790,   268,   281,   nil,   nil,     5,   nil,   -10,
    25,    54,    48,   187,    29,    28,   nil,   nil,   nil,   nil,
   nil,   nil,  4694,   875,   242,   nil,   264,   nil,   255,    71,
   220,   nil,   nil,  3698,   nil,   137,   nil,   117,     2,   nil,
  3652,  3560,  3514,  1435,   214,   280,   nil,     0,   330,   309,
    68,   nil,   219,  3376,   nil,   nil,    83,  3327,   nil,   nil,
   nil,   nil,  3281,   nil,  2959,  2913,   111,   nil,  4715,   nil,
    36,  2867,    72,  4736,  2729,  2683,   124,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,  2637,
   142,   nil,   nil,  2499,   171,   nil,   117,   153,  2404,   nil,
   197,    26,   211,   194,    12,  1530,   nil,   197,   232,   240,
   243,   nil,    49,   nil,   247,  1484,  3422,   nil,   nil,   927,
   nil,   nil,   nil,   823,   nil,   753,   279,  3885,   286,   nil,
   nil,   nil,   nil,   683,   631,   300,    28,   302,   nil,   nil,
   nil,   nil,   451,   145,   nil,  4207,    -2,   287,   nil,   311,
   312,   nil,   nil,   nil,   313,   323,   nil,  4253,   nil,   nil,
   nil,   309,   326,   nil,   327,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,  4437,   nil,  4483,  4575,   nil,   nil,
   334,   nil,   nil,   nil,   nil,   338,   nil,   339,   nil,   341,
   nil,   nil,   nil,   nil,   nil ]

racc_action_default = [
  -209,  -210,    -1,    -2,    -3,    -4,    -7,    -9,   -10,   -15,
  -109,  -210,  -210,  -210,   -43,   -44,   -45,   -46,   -47,   -48,
   -49,   -50,   -51,   -52,   -53,   -54,   -55,   -56,   -57,   -58,
   -59,   -60,   -61,   -62,   -63,   -68,   -69,   -73,  -210,  -210,
  -210,  -210,  -210,  -119,  -210,  -210,  -164,  -210,  -210,  -174,
  -175,  -176,  -210,  -178,  -185,  -186,  -187,  -188,  -189,  -190,
  -210,  -210,    -6,  -210,  -210,  -210,  -210,  -210,  -210,  -210,
  -210,  -210,  -210,  -210,  -210,  -210,  -210,  -210,  -210,  -210,
  -210,  -210,  -210,  -210,  -210,  -210,  -210,  -210,  -210,  -210,
  -210,  -127,  -122,  -209,  -209,   -27,  -210,   -34,  -210,  -210,
   -70,   -75,   -76,  -209,  -210,  -210,  -210,  -210,   -86,  -210,
  -210,  -210,  -210,  -209,  -153,  -154,  -120,  -209,  -209,  -145,
  -147,  -148,  -149,  -150,   -41,  -210,  -167,  -210,  -170,  -171,
  -210,  -182,  -177,  -210,   365,    -5,    -8,   -11,   -12,   -13,
   -14,  -210,   -17,   -18,  -162,  -163,   -19,   -20,   -21,   -22,
   -23,   -24,   -25,   -26,   -28,   -29,   -30,   -31,   -32,   -33,
   -35,   -36,   -37,   -38,  -210,   -39,  -104,  -210,   -74,  -210,
  -202,  -208,  -196,  -193,  -191,  -117,  -128,  -185,  -131,  -189,
  -210,  -199,  -197,  -205,  -187,  -188,  -195,  -200,  -201,  -203,
  -204,  -206,  -127,  -126,  -210,  -125,  -210,   -40,  -191,   -65,
  -210,   -80,   -81,  -210,   -84,  -191,  -158,  -161,  -210,   -72,
  -210,  -210,  -210,  -127,  -193,  -209,  -155,  -210,  -210,  -210,
  -210,  -151,  -210,  -210,  -165,  -168,  -210,  -210,  -179,  -180,
  -181,  -183,  -210,   -16,  -210,  -210,  -191,  -106,  -127,  -116,
  -210,  -194,  -210,  -192,  -210,  -210,  -191,  -130,  -132,  -196,
  -197,  -198,  -199,  -202,  -205,  -207,  -208,  -123,  -124,  -192,
  -210,   -67,   -77,  -210,  -210,   -83,  -210,  -192,  -210,   -71,
  -210,   -89,  -210,   -95,  -210,  -210,   -99,  -193,  -191,  -210,
  -210,  -139,  -210,  -156,  -191,  -210,  -210,  -146,  -152,   -42,
  -166,  -169,  -172,  -173,  -184,  -108,  -210,  -192,  -191,  -112,
  -118,  -113,  -129,  -133,  -134,  -210,   -64,  -210,   -79,   -82,
   -85,  -159,  -160,   -89,   -88,  -210,  -210,   -95,   -94,  -210,
  -210,  -103,   -98,  -100,  -210,  -210,  -114,  -210,  -140,  -141,
  -142,  -210,  -210,  -136,  -210,  -144,  -105,  -107,  -115,  -121,
   -66,   -78,   -87,   -90,  -210,   -93,  -210,  -210,  -110,  -111,
  -210,  -138,  -157,  -135,  -143,  -210,   -92,  -210,   -97,  -210,
  -102,  -137,   -91,   -96,  -101 ]

racc_goto_table = [
     2,   117,   100,    95,    97,    98,     3,   132,   129,   166,
   174,   240,   130,   205,   314,   318,   123,   121,   215,   173,
     1,   276,   218,   320,   287,    62,   288,   242,   194,   196,
   107,   109,   110,   111,   145,   145,   125,   143,   146,   124,
   214,   144,   144,   236,   131,   137,   138,   139,   140,   275,
   300,   260,   279,   238,   343,   302,   342,   141,   266,   345,
   124,   142,   262,   200,   147,   148,   149,   150,   151,   152,
   153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
   163,   164,   135,   169,   323,   193,   193,   237,   198,   296,
   280,   124,   328,   219,   203,   208,   311,   127,   124,   305,
   165,   136,   231,   232,   169,   230,   nil,   nil,   nil,   201,
   nil,   246,   nil,   nil,   nil,   324,   nil,   nil,   nil,   216,
   nil,   nil,   nil,   216,   221,   284,   nil,   nil,   nil,   nil,
   nil,   325,   278,   nil,   nil,   nil,   nil,   331,   117,   nil,
   nil,   277,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   338,   nil,   nil,   123,   121,   nil,   298,   nil,   164,
   nil,   nil,   107,   109,   110,   261,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   292,   294,   nil,   nil,
   130,   123,   121,   123,   121,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   264,   124,   169,   nil,   nil,   nil,   nil,
   270,   272,   nil,   nil,   nil,   289,   nil,   337,   nil,   293,
   nil,   281,   nil,   nil,   131,   nil,   289,   295,   nil,   nil,
   nil,   nil,   nil,   169,   nil,   nil,   303,   304,   nil,   329,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   289,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   312,   nil,   nil,   307,   nil,   nil,   nil,   124,   nil,   nil,
   nil,   nil,   340,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   332,   334,   nil,   nil,   164,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   107,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   350,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   355,   nil,   357,   359 ]

racc_goto_check = [
     2,    65,    37,     9,     9,     9,     3,    78,    74,    52,
    57,    56,    31,    45,    47,    48,    30,    35,    66,    55,
     1,    50,    66,    51,    71,     5,    71,    36,    61,    61,
     9,     9,     9,     9,    31,    31,    11,    12,    12,     9,
    55,    30,    30,    53,     9,     7,     7,     7,     7,    49,
    58,    36,    56,    59,    46,    62,    47,    11,    36,    48,
     9,     9,    44,    43,     9,     9,     9,     9,     9,     9,
     9,     9,     9,     9,     9,     9,     9,     9,     9,     9,
     9,     9,     5,     9,    50,     9,     9,    52,    11,    36,
    67,     9,    68,    70,    42,    11,    72,    73,     9,    36,
    13,     6,    79,    80,     9,    82,   nil,   nil,   nil,     3,
   nil,    57,   nil,   nil,   nil,    56,   nil,   nil,   nil,     3,
   nil,   nil,   nil,     3,     3,    45,   nil,   nil,   nil,   nil,
   nil,    36,    57,   nil,   nil,   nil,   nil,    36,    65,   nil,
   nil,    55,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,    36,   nil,   nil,    30,    35,   nil,    57,   nil,     9,
   nil,   nil,     9,     9,     9,    37,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,    74,    78,   nil,   nil,
    31,    30,    35,    30,    35,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,     2,     9,     9,   nil,   nil,   nil,   nil,
     2,     2,   nil,   nil,   nil,     9,   nil,    52,   nil,     9,
   nil,     3,   nil,   nil,     9,   nil,     9,     9,   nil,   nil,
   nil,   nil,   nil,     9,   nil,   nil,     9,     9,   nil,    65,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,     9,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
     9,   nil,   nil,     2,   nil,   nil,   nil,     9,   nil,   nil,
   nil,   nil,    37,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,     2,     2,   nil,   nil,     9,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,     9,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,   nil,   nil,     2,   nil,     2,     2 ]

racc_goto_pointer = [
   nil,    20,     0,     6,   nil,    21,    38,   -19,   nil,    -8,
   nil,   -11,   -33,    11,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   -29,   -36,   nil,   nil,   nil,   -28,  -147,   -34,   nil,   nil,
   nil,   nil,   -10,   -40,  -138,   -92,  -261,  -257,  -258,  -163,
  -191,  -251,   -80,  -124,   nil,   -72,  -162,   -81,  -191,  -116,
   nil,   -65,  -188,   nil,   nil,   -43,   -95,  -125,  -190,   nil,
   -25,  -196,  -171,    49,   -40,   nil,   nil,   nil,   -45,   -31,
   -30,   nil,   -28 ]

racc_goto_default = [
   nil,   nil,   nil,   195,     4,     5,     6,     7,     8,    10,
     9,   274,   nil,   nil,    14,    35,    15,    16,    17,    18,
    19,    20,    21,    22,    23,    24,    25,    26,    27,    28,
    29,    30,    31,    32,    33,    34,   nil,   nil,    36,    37,
   101,   102,   103,   nil,   nil,   nil,   108,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    41,   nil,   nil,   nil,   175,   nil,
    92,   nil,   176,   180,   178,   113,   nil,   nil,   nil,   118,
   nil,   119,   206,   nil,   nil,    49,    50,    52,   nil,   nil,
   nil,   133,   nil ]

racc_reduce_table = [
  0, 0, :racc_error,
  1, 78, :_reduce_1,
  1, 78, :_reduce_none,
  1, 79, :_reduce_3,
  1, 81, :_reduce_4,
  3, 81, :_reduce_5,
  2, 81, :_reduce_6,
  1, 82, :_reduce_7,
  3, 82, :_reduce_8,
  1, 83, :_reduce_none,
  1, 84, :_reduce_10,
  3, 84, :_reduce_11,
  3, 84, :_reduce_12,
  3, 84, :_reduce_13,
  3, 84, :_reduce_14,
  1, 86, :_reduce_none,
  4, 86, :_reduce_16,
  3, 86, :_reduce_17,
  3, 86, :_reduce_18,
  3, 86, :_reduce_19,
  3, 86, :_reduce_20,
  3, 86, :_reduce_21,
  3, 86, :_reduce_22,
  3, 86, :_reduce_23,
  3, 86, :_reduce_24,
  3, 86, :_reduce_25,
  3, 86, :_reduce_26,
  2, 86, :_reduce_27,
  3, 86, :_reduce_28,
  3, 86, :_reduce_29,
  3, 86, :_reduce_30,
  3, 86, :_reduce_31,
  3, 86, :_reduce_32,
  3, 86, :_reduce_33,
  2, 86, :_reduce_34,
  3, 86, :_reduce_35,
  3, 86, :_reduce_36,
  3, 86, :_reduce_37,
  3, 86, :_reduce_38,
  3, 86, :_reduce_39,
  3, 86, :_reduce_40,
  1, 88, :_reduce_41,
  3, 88, :_reduce_42,
  1, 87, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 92, :_reduce_none,
  1, 93, :_reduce_none,
  1, 93, :_reduce_none,
  1, 93, :_reduce_none,
  1, 93, :_reduce_none,
  1, 93, :_reduce_none,
  1, 93, :_reduce_none,
  1, 93, :_reduce_none,
  1, 93, :_reduce_none,
  1, 108, :_reduce_62,
  1, 108, :_reduce_63,
  5, 91, :_reduce_64,
  3, 91, :_reduce_65,
  6, 91, :_reduce_66,
  4, 91, :_reduce_67,
  1, 91, :_reduce_68,
  1, 95, :_reduce_69,
  2, 95, :_reduce_70,
  4, 115, :_reduce_71,
  3, 115, :_reduce_72,
  1, 115, :_reduce_73,
  3, 116, :_reduce_74,
  1, 114, :_reduce_none,
  1, 114, :_reduce_none,
  3, 117, :_reduce_77,
  3, 121, :_reduce_78,
  2, 121, :_reduce_79,
  1, 120, :_reduce_none,
  1, 120, :_reduce_none,
  4, 118, :_reduce_82,
  3, 118, :_reduce_83,
  2, 119, :_reduce_84,
  4, 119, :_reduce_85,
  2, 98, :_reduce_86,
  5, 123, :_reduce_87,
  4, 123, :_reduce_88,
  0, 124, :_reduce_none,
  2, 124, :_reduce_90,
  4, 124, :_reduce_91,
  3, 124, :_reduce_92,
  6, 99, :_reduce_93,
  5, 99, :_reduce_94,
  0, 125, :_reduce_none,
  4, 125, :_reduce_96,
  3, 125, :_reduce_97,
  5, 97, :_reduce_98,
  1, 126, :_reduce_99,
  2, 126, :_reduce_100,
  5, 127, :_reduce_101,
  4, 127, :_reduce_102,
  1, 128, :_reduce_103,
  1, 90, :_reduce_none,
  4, 90, :_reduce_105,
  1, 130, :_reduce_106,
  3, 130, :_reduce_107,
  3, 129, :_reduce_108,
  1, 85, :_reduce_109,
  6, 85, :_reduce_110,
  6, 85, :_reduce_111,
  5, 85, :_reduce_112,
  5, 85, :_reduce_113,
  5, 85, :_reduce_114,
  4, 135, :_reduce_115,
  1, 136, :_reduce_116,
  1, 132, :_reduce_117,
  3, 132, :_reduce_118,
  1, 131, :_reduce_119,
  2, 131, :_reduce_120,
  6, 96, :_reduce_121,
  2, 96, :_reduce_122,
  3, 137, :_reduce_123,
  3, 137, :_reduce_124,
  1, 138, :_reduce_none,
  1, 138, :_reduce_none,
  0, 134, :_reduce_127,
  1, 134, :_reduce_128,
  3, 134, :_reduce_129,
  1, 140, :_reduce_none,
  1, 140, :_reduce_none,
  1, 140, :_reduce_none,
  3, 139, :_reduce_133,
  3, 139, :_reduce_134,
  6, 100, :_reduce_135,
  5, 100, :_reduce_136,
  7, 101, :_reduce_137,
  6, 101, :_reduce_138,
  1, 144, :_reduce_none,
  2, 144, :_reduce_140,
  1, 145, :_reduce_none,
  1, 145, :_reduce_none,
  6, 102, :_reduce_143,
  5, 102, :_reduce_144,
  1, 146, :_reduce_145,
  3, 146, :_reduce_146,
  1, 148, :_reduce_147,
  1, 148, :_reduce_148,
  1, 148, :_reduce_149,
  1, 148, :_reduce_none,
  1, 147, :_reduce_none,
  2, 147, :_reduce_152,
  1, 142, :_reduce_153,
  1, 142, :_reduce_154,
  1, 143, :_reduce_155,
  2, 143, :_reduce_156,
  4, 143, :_reduce_157,
  1, 122, :_reduce_158,
  3, 122, :_reduce_159,
  3, 149, :_reduce_160,
  1, 149, :_reduce_161,
  1, 89, :_reduce_none,
  1, 89, :_reduce_none,
  1, 94, :_reduce_164,
  3, 103, :_reduce_165,
  4, 103, :_reduce_166,
  2, 103, :_reduce_167,
  3, 106, :_reduce_168,
  4, 106, :_reduce_169,
  2, 106, :_reduce_170,
  1, 150, :_reduce_171,
  3, 150, :_reduce_172,
  3, 151, :_reduce_173,
  1, 112, :_reduce_none,
  1, 112, :_reduce_none,
  1, 152, :_reduce_176,
  2, 153, :_reduce_177,
  1, 154, :_reduce_178,
  1, 156, :_reduce_179,
  1, 157, :_reduce_180,
  2, 155, :_reduce_181,
  1, 158, :_reduce_182,
  1, 159, :_reduce_183,
  2, 159, :_reduce_184,
  1, 111, :_reduce_185,
  1, 109, :_reduce_186,
  1, 110, :_reduce_187,
  1, 105, :_reduce_188,
  1, 104, :_reduce_189,
  1, 107, :_reduce_190,
  0, 113, :_reduce_none,
  1, 113, :_reduce_192,
  0, 133, :_reduce_none,
  1, 133, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  1, 141, :_reduce_none,
  0, 80, :_reduce_209 ]

racc_reduce_n = 210

racc_shift_n = 365

racc_token_table = {
  false => 0,
  :error => 1,
  :STRING => 2,
  :DQPRE => 3,
  :DQMID => 4,
  :DQPOST => 5,
  :LBRACK => 6,
  :RBRACK => 7,
  :LBRACE => 8,
  :RBRACE => 9,
  :SYMBOL => 10,
  :FARROW => 11,
  :COMMA => 12,
  :TRUE => 13,
  :FALSE => 14,
  :EQUALS => 15,
  :APPENDS => 16,
  :LESSEQUAL => 17,
  :NOTEQUAL => 18,
  :DOT => 19,
  :COLON => 20,
  :LLCOLLECT => 21,
  :RRCOLLECT => 22,
  :QMARK => 23,
  :LPAREN => 24,
  :RPAREN => 25,
  :ISEQUAL => 26,
  :GREATEREQUAL => 27,
  :GREATERTHAN => 28,
  :LESSTHAN => 29,
  :IF => 30,
  :ELSE => 31,
  :DEFINE => 32,
  :ELSIF => 33,
  :VARIABLE => 34,
  :CLASS => 35,
  :INHERITS => 36,
  :NODE => 37,
  :BOOLEAN => 38,
  :NAME => 39,
  :SEMIC => 40,
  :CASE => 41,
  :DEFAULT => 42,
  :AT => 43,
  :LCOLLECT => 44,
  :RCOLLECT => 45,
  :CLASSREF => 46,
  :NOT => 47,
  :OR => 48,
  :AND => 49,
  :UNDEF => 50,
  :PARROW => 51,
  :PLUS => 52,
  :MINUS => 53,
  :TIMES => 54,
  :DIV => 55,
  :LSHIFT => 56,
  :RSHIFT => 57,
  :UMINUS => 58,
  :MATCH => 59,
  :NOMATCH => 60,
  :REGEX => 61,
  :IN_EDGE => 62,
  :OUT_EDGE => 63,
  :IN_EDGE_SUB => 64,
  :OUT_EDGE_SUB => 65,
  :IN => 66,
  :UNLESS => 67,
  :PIPE => 68,
  :LAMBDA => 69,
  :SELBRACE => 70,
  :LOW => 71,
  :HIGH => 72,
  :CALL => 73,
  :MODULO => 74,
  :TITLE_COLON => 75,
  :CASE_COLON => 76 }

racc_nt_base = 77

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",
  "LBRACK",
  "RBRACK",
  "LBRACE",
  "RBRACE",
  "SYMBOL",
  "FARROW",
  "COMMA",
  "TRUE",
  "FALSE",
  "EQUALS",
  "APPENDS",
  "LESSEQUAL",
  "NOTEQUAL",
  "DOT",
  "COLON",
  "LLCOLLECT",
  "RRCOLLECT",
  "QMARK",
  "LPAREN",
  "RPAREN",
  "ISEQUAL",
  "GREATEREQUAL",
  "GREATERTHAN",
  "LESSTHAN",
  "IF",
  "ELSE",
  "DEFINE",
  "ELSIF",
  "VARIABLE",
  "CLASS",
  "INHERITS",
  "NODE",
  "BOOLEAN",
  "NAME",
  "SEMIC",
  "CASE",
  "DEFAULT",
  "AT",
  "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",
  "LOW",
  "HIGH",
  "CALL",
  "MODULO",
  "TITLE_COLON",
  "CASE_COLON",
  "$start",
  "program",
  "statements",
  "nil",
  "syntactic_statements",
  "syntactic_statement",
  "any_expression",
  "relationship_expression",
  "resource_expression",
  "expression",
  "higher_precedence",
  "expressions",
  "match_rvalue",
  "selector_entries",
  "call_function_expression",
  "primary_expression",
  "literal_expression",
  "variable",
  "call_method_with_lambda_expression",
  "collection_expression",
  "case_expression",
  "if_expression",
  "unless_expression",
  "definition_expression",
  "hostclass_expression",
  "node_definition_expression",
  "array",
  "boolean",
  "default",
  "hash",
  "regex",
  "text_or_name",
  "type",
  "undef",
  "name",
  "quotedtext",
  "endcomma",
  "lambda",
  "call_method_expression",
  "named_access",
  "lambda_j8",
  "lambda_ruby",
  "lambda_parameter_list",
  "optional_farrow",
  "lambda_rest",
  "parameters",
  "if_part",
  "else",
  "unless_else",
  "case_options",
  "case_option",
  "case_colon",
  "selector_entry",
  "selector_entry_list",
  "at",
  "resourceinstances",
  "endsemi",
  "attribute_operations",
  "resourceinst",
  "title_colon",
  "collect_query",
  "optional_query",
  "attribute_operation",
  "attribute_name",
  "keyword",
  "classname",
  "parameter_list",
  "classparent",
  "classnameordefault",
  "hostnames",
  "nodeparent",
  "hostname",
  "parameter",
  "hashpairs",
  "hashpair",
  "string",
  "dq_string",
  "dqpre",
  "dqrval",
  "dqpost",
  "dqmid",
  "text_expression",
  "dqtail" ]

Racc_debug_parser = false

##### State transition tables end #####

# reduce 0 omitted

module_eval(<<'.,.,', 'egrammar.ra', 57)
  def _reduce_1(val, _values, result)
     result = Factory.block_or_expression(*val[0]) 
    result
  end
.,.,

# reduce 2 omitted

module_eval(<<'.,.,', 'egrammar.ra', 62)
  def _reduce_3(val, _values, result)
     result = transform_calls(val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 68)
  def _reduce_4(val, _values, result)
     result = [val[0]]
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 69)
  def _reduce_5(val, _values, result)
     result = val[0].push val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 70)
  def _reduce_6(val, _values, result)
     result = val[0].push val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 74)
  def _reduce_7(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 75)
  def _reduce_8(val, _values, result)
     result = aryfy(val[0]).push val[2] 
    result
  end
.,.,

# reduce 9 omitted

module_eval(<<'.,.,', 'egrammar.ra', 81)
  def _reduce_10(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 82)
  def _reduce_11(val, _values, result)
     result = val[0].relop(val[1][:value], val[2]); loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 83)
  def _reduce_12(val, _values, result)
     result = val[0].relop(val[1][:value], val[2]); loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 84)
  def _reduce_13(val, _values, result)
     result = val[0].relop(val[1][:value], val[2]); loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 85)
  def _reduce_14(val, _values, result)
     result = val[0].relop(val[1][:value], val[2]); loc result, val[1] 
    result
  end
.,.,

# reduce 15 omitted

module_eval(<<'.,.,', 'egrammar.ra', 92)
  def _reduce_16(val, _values, result)
     result = val[0][*val[2]]         ; loc result, val[0], val[3] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 93)
  def _reduce_17(val, _values, result)
     result = val[0].in val[2]        ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 94)
  def _reduce_18(val, _values, result)
     result = val[0] =~  val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 95)
  def _reduce_19(val, _values, result)
     result = val[0].mne val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 96)
  def _reduce_20(val, _values, result)
     result = val[0] +   val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 97)
  def _reduce_21(val, _values, result)
     result = val[0] -   val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 98)
  def _reduce_22(val, _values, result)
     result = val[0] /   val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 99)
  def _reduce_23(val, _values, result)
     result = val[0] *   val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 100)
  def _reduce_24(val, _values, result)
     result = val[0] %   val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 101)
  def _reduce_25(val, _values, result)
     result = val[0] <<  val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 102)
  def _reduce_26(val, _values, result)
     result = val[0] >>  val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 103)
  def _reduce_27(val, _values, result)
     result = val[1].minus()          ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 104)
  def _reduce_28(val, _values, result)
     result = val[0].ne  val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 105)
  def _reduce_29(val, _values, result)
     result = val[0] ==  val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 106)
  def _reduce_30(val, _values, result)
     result = val[0] >   val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 107)
  def _reduce_31(val, _values, result)
     result = val[0] >=  val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 108)
  def _reduce_32(val, _values, result)
     result = val[0] <   val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 109)
  def _reduce_33(val, _values, result)
     result = val[0] <=  val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 110)
  def _reduce_34(val, _values, result)
     result = val[1].not              ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 111)
  def _reduce_35(val, _values, result)
     result = val[0].and val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 112)
  def _reduce_36(val, _values, result)
     result = val[0].or  val[2]       ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 113)
  def _reduce_37(val, _values, result)
     result = val[0].set(val[2])      ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 114)
  def _reduce_38(val, _values, result)
     result = val[0].plus_set(val[2]) ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 115)
  def _reduce_39(val, _values, result)
     result = val[0].select(*val[2])  ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 116)
  def _reduce_40(val, _values, result)
     result = val[1].paren()          ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 124)
  def _reduce_41(val, _values, result)
     result = [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 125)
  def _reduce_42(val, _values, result)
     result = val[0].push(val[2]) 
    result
  end
.,.,

# reduce 43 omitted

# reduce 44 omitted

# reduce 45 omitted

# reduce 46 omitted

# reduce 47 omitted

# reduce 48 omitted

# reduce 49 omitted

# reduce 50 omitted

# reduce 51 omitted

# reduce 52 omitted

# reduce 53 omitted

# reduce 54 omitted

# reduce 55 omitted

# reduce 56 omitted

# reduce 57 omitted

# reduce 58 omitted

# reduce 59 omitted

# reduce 60 omitted

# reduce 61 omitted

module_eval(<<'.,.,', 'egrammar.ra', 155)
  def _reduce_62(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 156)
  def _reduce_63(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 164)
  def _reduce_64(val, _values, result)
          result = Factory.CALL_NAMED(val[0], true, val[2])
      loc result, val[0], val[4]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 168)
  def _reduce_65(val, _values, result)
          result = Factory.CALL_NAMED(val[0], true, [])
      loc result, val[0], val[2]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 172)
  def _reduce_66(val, _values, result)
          result = Factory.CALL_NAMED(val[0], true, val[2])
      loc result, val[0], val[4]
      result.lambda = val[5]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 177)
  def _reduce_67(val, _values, result)
          result = Factory.CALL_NAMED(val[0], true, [])
      loc result, val[0], val[2]
      result.lambda = val[3]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 181)
  def _reduce_68(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 186)
  def _reduce_69(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 187)
  def _reduce_70(val, _values, result)
     result = val[0]; val[0].lambda = val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 190)
  def _reduce_71(val, _values, result)
     result = Factory.CALL_METHOD(val[0], val[2]); loc result, val[1], val[3] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 191)
  def _reduce_72(val, _values, result)
     result = Factory.CALL_METHOD(val[0], []); loc result, val[1], val[3] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 192)
  def _reduce_73(val, _values, result)
     result = Factory.CALL_METHOD(val[0], []); loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 197)
  def _reduce_74(val, _values, result)
            result = val[0].dot(Factory.fqn(val[2][:value]))
        loc result, val[1], val[2]
      
    result
  end
.,.,

# reduce 75 omitted

# reduce 76 omitted

module_eval(<<'.,.,', 'egrammar.ra', 212)
  def _reduce_77(val, _values, result)
          result = Factory.LAMBDA(val[0], val[2])
#      loc result, val[1] # TODO
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 217)
  def _reduce_78(val, _values, result)
     result = val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 218)
  def _reduce_79(val, _values, result)
     result = nil 
    result
  end
.,.,

# reduce 80 omitted

# reduce 81 omitted

module_eval(<<'.,.,', 'egrammar.ra', 228)
  def _reduce_82(val, _values, result)
          result = Factory.LAMBDA(val[1], val[2])
      loc result, val[0], val[3]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 232)
  def _reduce_83(val, _values, result)
          result = Factory.LAMBDA(val[1], nil)
      loc result, val[0], val[2]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 238)
  def _reduce_84(val, _values, result)
     result = [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 239)
  def _reduce_85(val, _values, result)
     result = val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 249)
  def _reduce_86(val, _values, result)
          result = val[1]
      loc(result, val[0], val[1])
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 256)
  def _reduce_87(val, _values, result)
            result = Factory.IF(val[0], Factory.block_or_expression(*val[2]), val[4])
        loc(result, val[0], (val[4] ? val[4] : val[3]))
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 260)
  def _reduce_88(val, _values, result)
            result = Factory.IF(val[0], nil, val[3])
        loc(result, val[0], (val[3] ? val[3] : val[2]))
      
    result
  end
.,.,

# reduce 89 omitted

module_eval(<<'.,.,', 'egrammar.ra', 268)
  def _reduce_90(val, _values, result)
            result = val[1]
        loc(result, val[0], val[1])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 272)
  def _reduce_91(val, _values, result)
            result = Factory.block_or_expression(*val[2])
        loc result, val[0], val[3]
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 276)
  def _reduce_92(val, _values, result)
            result = nil # don't think a nop is needed here either
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 285)
  def _reduce_93(val, _values, result)
          result = Factory.UNLESS(val[1], Factory.block_or_expression(*val[3]), val[5])
      loc result, val[0], val[4]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 289)
  def _reduce_94(val, _values, result)
          result = Factory.UNLESS(val[1], nil, nil)
      loc result, val[0], val[4]
    
    result
  end
.,.,

# reduce 95 omitted

module_eval(<<'.,.,', 'egrammar.ra', 299)
  def _reduce_96(val, _values, result)
            result = Factory.block_or_expression(*val[2])
        loc result, val[0], val[3]
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 303)
  def _reduce_97(val, _values, result)
            result = nil # don't think a nop is needed here either
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 311)
  def _reduce_98(val, _values, result)
          result = Factory.CASE(val[1], *val[3])
      loc result, val[0], val[4]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 317)
  def _reduce_99(val, _values, result)
     result = [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 318)
  def _reduce_100(val, _values, result)
     result = val[0].push val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 323)
  def _reduce_101(val, _values, result)
            result = Factory.WHEN(val[0], val[3])
        loc result, val[1], val[4]
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 327)
  def _reduce_102(val, _values, result)
            result = Factory.WHEN(val[0], nil)
        loc result, val[1], val[3]
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 331)
  def _reduce_103(val, _values, result)
     result = val[0] 
    result
  end
.,.,

# reduce 104 omitted

module_eval(<<'.,.,', 'egrammar.ra', 342)
  def _reduce_105(val, _values, result)
            result = val[1]
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 347)
  def _reduce_106(val, _values, result)
     result = [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 348)
  def _reduce_107(val, _values, result)
     result = val[0].push val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 353)
  def _reduce_108(val, _values, result)
     result = Factory.MAP(val[0], val[2]) ; loc result, val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 369)
  def _reduce_109(val, _values, result)
          result = val[0]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 372)
  def _reduce_110(val, _values, result)
          result = case Factory.resource_shape(val[1])
      when :resource, :class
        tmp = Factory.RESOURCE(Factory.fqn(token_text(val[1])), val[3])
        tmp.form = val[0]
        tmp
      when :defaults
        error "A resource default can not be virtual or exported"
      when :override
        error "A resource override can not be virtual or exported"
      else
        error "Expression is not valid as a resource, resource-default, or resource-override"
      end
      loc result, val[1], val[4]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 387)
  def _reduce_111(val, _values, result)
          result = case Factory.resource_shape(val[1])
      when :resource, :class
        error "Defaults are not virtualizable"
      when :defaults
        error "Defaults are not virtualizable"
      when :override
        error "Defaults are not virtualizable"
      else
        error "Expression is not valid as a resource, resource-default, or resource-override"
      end
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 399)
  def _reduce_112(val, _values, result)
          result = case Factory.resource_shape(val[0])
      when :resource, :class
        Factory.RESOURCE(Factory.fqn(token_text(val[0])), val[2])
      when :defaults
        error "A resource default can not specify a resource name"
      when :override
        error "A resource override does not allow override of name of resource"
      else
        error "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', 412)
  def _reduce_113(val, _values, result)
          result = case Factory.resource_shape(val[0])
      when :resource, :class
        # This catches deprecated syntax.
        error "All resource specifications require names"
      when :defaults
        Factory.RESOURCE_DEFAULTS(val[0], val[2])
      when :override
        # This was only done for override in original - TODO shuld it be here at all
        Factory.RESOURCE_OVERRIDE(val[0], val[2])
      else
        error "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', 427)
  def _reduce_114(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', 432)
  def _reduce_115(val, _values, result)
     result = Factory.RESOURCE_BODY(val[0], val[2]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 434)
  def _reduce_116(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 437)
  def _reduce_117(val, _values, result)
     result = [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 438)
  def _reduce_118(val, _values, result)
     result = val[0].push val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 443)
  def _reduce_119(val, _values, result)
     result = :virtual  
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 444)
  def _reduce_120(val, _values, result)
     result = :exported 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 456)
  def _reduce_121(val, _values, result)
          result = Factory.COLLECT(val[0], val[1], val[3])
      loc result, val[0], val[5]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 460)
  def _reduce_122(val, _values, result)
          result = Factory.COLLECT(val[0], val[1], [])
      loc result, val[0], val[1]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 465)
  def _reduce_123(val, _values, result)
     result = Factory.VIRTUAL_QUERY(val[1])   ; loc result, val[0], val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 466)
  def _reduce_124(val, _values, result)
     result = Factory.EXPORTED_QUERY(val[1])  ; loc result, val[0], val[2] 
    result
  end
.,.,

# reduce 125 omitted

# reduce 126 omitted

module_eval(<<'.,.,', 'egrammar.ra', 479)
  def _reduce_127(val, _values, result)
     result = [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 480)
  def _reduce_128(val, _values, result)
     result = [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 481)
  def _reduce_129(val, _values, result)
     result = val[0].push(val[2]) 
    result
  end
.,.,

# reduce 130 omitted

# reduce 131 omitted

# reduce 132 omitted

module_eval(<<'.,.,', 'egrammar.ra', 497)
  def _reduce_133(val, _values, result)
            result = Factory.ATTRIBUTE_OP(val[0][:value], :'=>', val[2])
        loc result, val[0], val[2]
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 501)
  def _reduce_134(val, _values, result)
            result = Factory.ATTRIBUTE_OP(val[0][:value], :'+>', val[2])
        loc result, val[0], val[2]
      
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 511)
  def _reduce_135(val, _values, result)
          result = Factory.DEFINITION(classname(val[1][:value]), val[2], val[4])
      loc result, val[0], val[5]
      @lexer.indefine = false
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 516)
  def _reduce_136(val, _values, result)
          result = Factory.DEFINITION(classname(val[1][:value]), val[2], nil)
      loc result, val[0], val[4]
      @lexer.indefine = false
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 531)
  def _reduce_137(val, _values, result)
          @lexer.namepop
      result = Factory.HOSTCLASS(classname(val[1][:value]), val[2], token_text(val[3]), val[5])
      loc result, val[0], val[6]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 536)
  def _reduce_138(val, _values, result)
          @lexer.namepop
      result = Factory.HOSTCLASS(classname(val[1][:value]), val[2], token_text(val[3]), nil)
      loc result, val[0], val[5]
      
    result
  end
.,.,

# reduce 139 omitted

module_eval(<<'.,.,', 'egrammar.ra', 544)
  def _reduce_140(val, _values, result)
     result = val[1] 
    result
  end
.,.,

# reduce 141 omitted

# reduce 142 omitted

module_eval(<<'.,.,', 'egrammar.ra', 561)
  def _reduce_143(val, _values, result)
          result = Factory.NODE(val[1], val[2], val[4])
      loc result, val[0], val[5]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 565)
  def _reduce_144(val, _values, result)
          result = Factory.NODE(val[1], val[2], nil)
      loc result, val[0], val[4]
    
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 575)
  def _reduce_145(val, _values, result)
     result = [result] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 576)
  def _reduce_146(val, _values, result)
     result = val[0].push(val[2]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 581)
  def _reduce_147(val, _values, result)
     result = Factory.fqn(val[0][:value]); loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 582)
  def _reduce_148(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 583)
  def _reduce_149(val, _values, result)
     result = Factory.literal(:default); loc result, val[0] 
    result
  end
.,.,

# reduce 150 omitted

# reduce 151 omitted

module_eval(<<'.,.,', 'egrammar.ra', 589)
  def _reduce_152(val, _values, result)
     result = val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 594)
  def _reduce_153(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 595)
  def _reduce_154(val, _values, result)
     result = val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 599)
  def _reduce_155(val, _values, result)
     result = [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 600)
  def _reduce_156(val, _values, result)
     result = [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 601)
  def _reduce_157(val, _values, result)
     result = val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 605)
  def _reduce_158(val, _values, result)
     result = [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 606)
  def _reduce_159(val, _values, result)
     result = val[0].push(val[2]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 610)
  def _reduce_160(val, _values, result)
     result = Factory.PARAM(val[0][:value], val[2]) ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 611)
  def _reduce_161(val, _values, result)
     result = Factory.PARAM(val[0][:value]); loc result, val[0] 
    result
  end
.,.,

# reduce 162 omitted

# reduce 163 omitted

module_eval(<<'.,.,', 'egrammar.ra', 624)
  def _reduce_164(val, _values, result)
     result = Factory.fqn(val[0][:value]).var ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 630)
  def _reduce_165(val, _values, result)
     result = Factory.LIST(val[1]); loc result, val[0], val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 631)
  def _reduce_166(val, _values, result)
     result = Factory.LIST(val[1]); loc result, val[0], val[3] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 632)
  def _reduce_167(val, _values, result)
     result = Factory.literal([]) ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 635)
  def _reduce_168(val, _values, result)
     result = Factory.HASH(val[1]); loc result, val[0], val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 636)
  def _reduce_169(val, _values, result)
     result = Factory.HASH(val[1]); loc result, val[0], val[3] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 637)
  def _reduce_170(val, _values, result)
     result = Factory.literal({}) ; loc result, val[0], val[3] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 640)
  def _reduce_171(val, _values, result)
     result = [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 641)
  def _reduce_172(val, _values, result)
     result = val[0].push val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 644)
  def _reduce_173(val, _values, result)
     result = Factory.KEY_ENTRY(val[0], val[2]); loc result, val[1] 
    result
  end
.,.,

# reduce 174 omitted

# reduce 175 omitted

module_eval(<<'.,.,', 'egrammar.ra', 650)
  def _reduce_176(val, _values, result)
     result = Factory.literal(val[0][:value]) ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 651)
  def _reduce_177(val, _values, result)
     result = Factory.string(val[0], *val[1]) ; loc result, val[0], val[1][-1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 652)
  def _reduce_178(val, _values, result)
     result = Factory.literal(val[0][:value]); loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 653)
  def _reduce_179(val, _values, result)
     result = Factory.literal(val[0][:value]); loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 654)
  def _reduce_180(val, _values, result)
     result = Factory.literal(val[0][:value]); loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 655)
  def _reduce_181(val, _values, result)
     result = [val[0]] + val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 656)
  def _reduce_182(val, _values, result)
     result = Factory.TEXT(val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 659)
  def _reduce_183(val, _values, result)
     result = [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 660)
  def _reduce_184(val, _values, result)
     result = [val[0]] + val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 662)
  def _reduce_185(val, _values, result)
     result = Factory.QNAME_OR_NUMBER(val[0][:value]) ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 663)
  def _reduce_186(val, _values, result)
     result = Factory.QREF(val[0][:value])  ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 664)
  def _reduce_187(val, _values, result)
     result = Factory.literal(:undef); loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 665)
  def _reduce_188(val, _values, result)
     result = Factory.literal(:default); loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 670)
  def _reduce_189(val, _values, result)
     result = Factory.literal(val[0][:value]) ; loc result, val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'egrammar.ra', 673)
  def _reduce_190(val, _values, result)
     result = Factory.literal(val[0][:value]); loc result, val[0] 
    result
  end
.,.,

# reduce 191 omitted

module_eval(<<'.,.,', 'egrammar.ra', 679)
  def _reduce_192(val, _values, result)
     result = nil 
    result
  end
.,.,

# reduce 193 omitted

# reduce 194 omitted

# reduce 195 omitted

# reduce 196 omitted

# reduce 197 omitted

# reduce 198 omitted

# reduce 199 omitted

# reduce 200 omitted

# reduce 201 omitted

# reduce 202 omitted

# reduce 203 omitted

# reduce 204 omitted

# reduce 205 omitted

# reduce 206 omitted

# reduce 207 omitted

# reduce 208 omitted

module_eval(<<'.,.,', 'egrammar.ra', 702)
  def _reduce_209(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