#
# DO NOT MODIFY!!!!
# This file is automatically generated by racc 1.4.5
# from racc grammer file "grammar.ra".
#

require 'racc/parser'


require 'puppet'
require 'puppet/util/loadedfile'
require 'puppet/parser/lexer'
require 'puppet/parser/ast'

module Puppet
    class ParseError < Puppet::Error; end
    class ImportError < Racc::ParseError; end
    class AlreadyImportedError < ImportError; end
end


module Puppet

  module Parser

    class Parser < Racc::Parser

module_eval <<'..end grammar.ra modeval..id7145220b1b', 'grammar.ra', 876

# It got too annoying having code in a file that needs to be compiled.
require 'puppet/parser/parser_support'

# Make emacs happy
# Local Variables:
# mode: ruby
# End:

# $Id$

..end grammar.ra modeval..id7145220b1b

##### racc 1.4.5 generates ###

racc_reduce_table = [
 0, 0, :racc_error,
 1, 70, :_reduce_1,
 1, 70, :_reduce_none,
 1, 71, :_reduce_none,
 2, 71, :_reduce_4,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 1, 73, :_reduce_none,
 3, 87, :_reduce_19,
 3, 87, :_reduce_20,
 1, 88, :_reduce_none,
 1, 88, :_reduce_none,
 1, 88, :_reduce_none,
 1, 89, :_reduce_none,
 1, 89, :_reduce_none,
 1, 89, :_reduce_none,
 1, 89, :_reduce_none,
 4, 81, :_reduce_28,
 5, 81, :_reduce_29,
 3, 81, :_reduce_30,
 2, 81, :_reduce_31,
 1, 91, :_reduce_none,
 1, 91, :_reduce_none,
 3, 91, :_reduce_34,
 3, 91, :_reduce_35,
 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_44,
 5, 74, :_reduce_45,
 5, 74, :_reduce_46,
 5, 74, :_reduce_47,
 5, 85, :_reduce_48,
 2, 75, :_reduce_49,
 1, 108, :_reduce_50,
 2, 108, :_reduce_51,
 6, 76, :_reduce_52,
 2, 76, :_reduce_53,
 3, 109, :_reduce_54,
 3, 109, :_reduce_55,
 1, 110, :_reduce_none,
 1, 110, :_reduce_none,
 3, 110, :_reduce_58,
 1, 111, :_reduce_none,
 3, 111, :_reduce_60,
 1, 112, :_reduce_61,
 1, 112, :_reduce_62,
 3, 113, :_reduce_63,
 3, 113, :_reduce_64,
 1, 114, :_reduce_none,
 1, 114, :_reduce_none,
 4, 116, :_reduce_67,
 1, 102, :_reduce_none,
 3, 102, :_reduce_69,
 0, 103, :_reduce_none,
 1, 103, :_reduce_none,
 1, 118, :_reduce_72,
 1, 93, :_reduce_73,
 1, 95, :_reduce_74,
 1, 117, :_reduce_none,
 1, 117, :_reduce_none,
 1, 117, :_reduce_none,
 1, 117, :_reduce_none,
 1, 117, :_reduce_none,
 1, 117, :_reduce_none,
 1, 117, :_reduce_none,
 3, 77, :_reduce_82,
 3, 77, :_reduce_83,
 3, 86, :_reduce_84,
 0, 104, :_reduce_85,
 1, 104, :_reduce_86,
 3, 104, :_reduce_87,
 3, 122, :_reduce_88,
 3, 124, :_reduce_89,
 1, 125, :_reduce_none,
 1, 125, :_reduce_none,
 0, 107, :_reduce_92,
 1, 107, :_reduce_93,
 3, 107, :_reduce_94,
 1, 126, :_reduce_none,
 3, 126, :_reduce_96,
 1, 115, :_reduce_none,
 1, 115, :_reduce_none,
 1, 115, :_reduce_none,
 1, 115, :_reduce_none,
 1, 115, :_reduce_none,
 1, 115, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 4, 97, :_reduce_115,
 3, 97, :_reduce_116,
 1, 99, :_reduce_117,
 2, 99, :_reduce_118,
 2, 129, :_reduce_119,
 1, 130, :_reduce_120,
 2, 130, :_reduce_121,
 1, 96, :_reduce_122,
 4, 90, :_reduce_123,
 4, 90, :_reduce_124,
 2, 79, :_reduce_125,
 5, 131, :_reduce_126,
 4, 131, :_reduce_127,
 0, 132, :_reduce_none,
 2, 132, :_reduce_129,
 4, 132, :_reduce_130,
 3, 132, :_reduce_131,
 1, 120, :_reduce_none,
 3, 120, :_reduce_133,
 3, 120, :_reduce_134,
 3, 120, :_reduce_135,
 3, 120, :_reduce_136,
 3, 120, :_reduce_137,
 3, 120, :_reduce_138,
 3, 120, :_reduce_139,
 3, 120, :_reduce_140,
 3, 120, :_reduce_141,
 2, 120, :_reduce_142,
 3, 120, :_reduce_143,
 3, 120, :_reduce_144,
 3, 120, :_reduce_145,
 3, 120, :_reduce_146,
 3, 120, :_reduce_147,
 3, 120, :_reduce_148,
 2, 120, :_reduce_149,
 3, 120, :_reduce_150,
 3, 120, :_reduce_151,
 3, 120, :_reduce_152,
 5, 78, :_reduce_153,
 1, 134, :_reduce_none,
 2, 134, :_reduce_155,
 5, 135, :_reduce_156,
 4, 135, :_reduce_157,
 1, 136, :_reduce_none,
 3, 136, :_reduce_159,
 3, 98, :_reduce_160,
 1, 138, :_reduce_none,
 4, 138, :_reduce_162,
 1, 140, :_reduce_none,
 3, 140, :_reduce_164,
 3, 139, :_reduce_165,
 1, 137, :_reduce_none,
 1, 137, :_reduce_none,
 1, 137, :_reduce_none,
 1, 137, :_reduce_none,
 1, 137, :_reduce_none,
 1, 137, :_reduce_none,
 1, 137, :_reduce_none,
 1, 137, :_reduce_173,
 1, 137, :_reduce_none,
 1, 141, :_reduce_175,
 1, 142, :_reduce_none,
 3, 142, :_reduce_177,
 2, 80, :_reduce_178,
 6, 82, :_reduce_179,
 5, 82, :_reduce_180,
 7, 83, :_reduce_181,
 6, 83, :_reduce_182,
 6, 84, :_reduce_183,
 5, 84, :_reduce_184,
 1, 106, :_reduce_185,
 1, 101, :_reduce_186,
 1, 101, :_reduce_187,
 1, 101, :_reduce_188,
 1, 145, :_reduce_none,
 3, 145, :_reduce_190,
 1, 147, :_reduce_191,
 1, 148, :_reduce_192,
 1, 148, :_reduce_193,
 1, 148, :_reduce_194,
 1, 148, :_reduce_none,
 0, 72, :_reduce_196,
 0, 149, :_reduce_197,
 1, 143, :_reduce_none,
 3, 143, :_reduce_199,
 3, 143, :_reduce_200,
 1, 150, :_reduce_none,
 3, 150, :_reduce_202,
 3, 151, :_reduce_203,
 1, 151, :_reduce_204,
 3, 151, :_reduce_205,
 1, 151, :_reduce_206,
 1, 146, :_reduce_none,
 2, 146, :_reduce_208,
 1, 144, :_reduce_none,
 2, 144, :_reduce_210,
 1, 152, :_reduce_none,
 1, 152, :_reduce_none,
 1, 94, :_reduce_213,
 3, 119, :_reduce_214,
 4, 119, :_reduce_215,
 2, 119, :_reduce_216,
 1, 127, :_reduce_none,
 1, 127, :_reduce_none,
 0, 105, :_reduce_none,
 1, 105, :_reduce_220,
 1, 133, :_reduce_221,
 3, 128, :_reduce_222,
 4, 128, :_reduce_223,
 2, 128, :_reduce_224,
 1, 153, :_reduce_none,
 3, 153, :_reduce_226,
 3, 154, :_reduce_227,
 1, 155, :_reduce_228,
 1, 155, :_reduce_229,
 4, 121, :_reduce_230,
 1, 100, :_reduce_none,
 4, 100, :_reduce_232 ]

racc_reduce_n = 233

racc_shift_n = 384

racc_action_table = [
   256,   257,   228,    82,    54,    72,    75,   181,   251,    48,
    72,    75,   194,   205,   210,   163,   156,   348,    46,    47,
   344,   184,   201,   203,   206,   209,   162,   352,    54,   182,
   351,   169,    54,  -168,    72,    75,   241,   242,   102,   305,
   106,   158,    58,   193,   230,    60,   204,   208,   193,   306,
   213,   196,   197,   198,   200,   202,    97,   207,   211,    72,
    75,    72,    75,   163,   199,    59,    58,    71,   245,    60,
    58,    83,    86,    60,   162,    92,   244,    72,    75,   169,
    78,   100,   352,   269,    89,   351,    63,    94,    64,    59,
   228,   326,    71,    59,   162,    59,    83,    86,    83,   268,
    92,    65,    92,   184,    76,    78,   307,   137,   163,    89,
   162,    89,    72,    75,    83,   268,   241,   242,    92,   162,
    59,   163,    59,   137,   169,    62,   254,    89,   207,   211,
    72,    75,   162,   308,   102,   199,   106,   169,    59,   255,
   213,   196,   197,   198,  -166,   162,   309,   207,   211,    83,
   268,   310,    97,    92,   199,    72,    75,   355,   137,   102,
  -170,   106,    89,    71,   218,   356,   173,    83,    86,   220,
   313,    92,  -171,    59,    72,    75,    78,   100,    37,   218,
    89,   249,    38,    94,   220,   246,   247,   173,    71,    11,
   210,    59,    83,    86,   246,   367,    92,   271,   201,    37,
  -167,    78,    37,    38,   270,    89,    38,    71,   246,   247,
    11,    83,    86,    11,    14,    92,    59,    72,    75,    76,
    78,   102,   278,   106,    89,   277,   213,   196,   197,   198,
   200,   202,   275,   207,   211,    59,   246,   274,   152,    97,
   199,    37,   318,    72,    75,   127,   319,   102,  -169,   106,
    71,    63,    11,    14,    83,    86,  -167,    37,    92,   207,
   211,   127,  -169,    78,   100,    97,   199,    89,    11,    14,
    94,  -166,   117,    72,    75,  -185,    71,    82,    59,   336,
    83,    86,   197,   198,    92,   231,   338,   207,   211,    78,
   100,   181,    48,    89,   199,    74,    94,   240,  -168,    72,
    75,   241,   242,   102,    59,   106,    71,   184,   176,    37,
    83,    86,    59,    38,    92,   345,   322,   175,    76,    78,
    11,    97,  -172,    89,  -171,    72,    75,  -170,    59,   102,
   214,   106,    71,    64,    59,   215,    83,    86,   173,   217,
    92,   -23,   -23,   -23,   -23,    78,   100,    97,   155,    89,
    72,    75,    94,   122,   102,   152,   106,    82,    71,   223,
    59,   122,    83,    86,    72,    75,    92,  -168,   102,   225,
   106,    78,   100,  -166,   276,    89,   226,   117,    94,    44,
    45,    41,    42,    71,  -169,  -167,    59,    83,    86,    72,
    75,    92,   226,   102,   229,   106,    78,    71,    52,  -168,
    89,    83,    86,    72,    75,    92,  -166,   102,  -169,   106,
    78,    59,   197,   198,    89,  -167,  -171,   207,   211,   365,
   231,   152,    71,   234,   199,    59,    83,    86,    50,   210,
    92,   -21,   -21,   -21,   -21,    78,    71,   201,   372,    89,
    83,    86,    49,   374,    92,    72,    75,   228,  -220,    78,
    59,   226,   354,    89,   377,    72,    75,    40,    39,   102,
   237,   106,   341,   nil,    59,   213,   196,   197,   198,   200,
   202,   nil,   207,   211,   nil,   nil,   nil,    97,   162,   199,
   nil,   nil,    83,   268,   nil,   nil,    92,   nil,    71,   nil,
   nil,   137,    83,    86,   nil,    89,    92,    44,    45,    41,
    42,    78,   100,    72,    75,    89,    59,   102,    94,   106,
   213,   196,   197,   198,   200,   202,    59,   207,   211,   nil,
   213,   196,   197,   198,   199,    97,   nil,   207,   211,    72,
    75,   nil,   nil,   102,   199,   106,    71,   nil,   nil,   nil,
    83,    86,   nil,   nil,    92,   nil,   nil,   nil,   nil,    78,
   100,    97,   nil,    89,   nil,   nil,    94,   nil,   nil,    72,
    75,   nil,    71,   102,    59,   106,    83,    86,   nil,   nil,
    92,   nil,   nil,   nil,   nil,    78,   100,   nil,   nil,    89,
   nil,    97,    94,   nil,   nil,    72,    75,   nil,   nil,   102,
    59,   106,    71,   nil,   nil,   nil,    83,    86,   nil,   nil,
    92,   nil,   nil,   nil,   nil,    78,   100,    97,   nil,    89,
    72,    75,    94,   nil,   102,   nil,   106,   nil,    71,   nil,
    59,   nil,    83,    86,    72,    75,    92,   nil,   102,   nil,
   nil,    78,   100,   nil,   nil,    89,   nil,   nil,    94,   nil,
   nil,   nil,   nil,    71,   nil,   nil,    59,    83,    86,    72,
    75,    92,   nil,   102,   nil,   106,    78,    71,   nil,   nil,
    89,    83,   143,   nil,   nil,    92,   nil,   nil,   nil,   nil,
   137,    59,   nil,   nil,    89,    72,    75,   nil,   nil,   102,
   nil,   106,    71,   nil,   nil,    59,    83,    86,   nil,   nil,
    92,   nil,   nil,   nil,   nil,    78,   nil,    97,   nil,    89,
   nil,    72,    75,   nil,   nil,   102,   nil,   106,    71,   nil,
    59,   nil,    83,    86,   nil,   nil,    92,   nil,   nil,   nil,
   nil,    78,   100,    97,   nil,    89,   nil,   nil,    94,   nil,
   nil,    72,    75,   nil,    71,   102,    59,   106,    83,    86,
   nil,   nil,    92,   nil,   nil,   nil,   nil,    78,   100,   nil,
   nil,    89,   nil,    97,    94,   nil,   nil,    72,    75,   nil,
   nil,   102,    59,   106,    71,   nil,   nil,   nil,    83,    86,
   nil,   nil,    92,   nil,   nil,   nil,   nil,    78,   100,    97,
   nil,    89,    72,    75,    94,   nil,   102,   nil,   106,   nil,
    71,   nil,    59,   nil,    83,    86,   nil,   nil,    92,   nil,
   nil,   nil,   nil,    78,   100,   nil,   nil,    89,    72,    75,
    94,   nil,   102,   nil,   106,    71,   nil,   nil,    59,    83,
    86,   nil,   nil,    92,   nil,   nil,   nil,   nil,    78,   nil,
    97,   nil,    89,   nil,    72,    75,   nil,   nil,   102,   nil,
   106,    71,   nil,    59,   nil,    83,    86,   nil,   nil,    92,
   nil,   nil,    72,    75,    78,   100,    97,   nil,    89,    72,
    75,    94,   nil,   102,   nil,   106,   nil,    71,   nil,    59,
   nil,    83,    86,   nil,   nil,    92,   nil,   nil,   nil,   nil,
    78,   100,   nil,   nil,    89,   162,   nil,    94,   nil,    83,
   268,   nil,    71,    92,   nil,    59,    83,    86,   137,   nil,
    92,   nil,    89,   nil,   nil,    78,    72,    75,   nil,    89,
   102,   nil,   106,    59,   nil,   nil,   nil,   nil,   nil,   nil,
    59,   nil,   nil,   nil,   nil,    72,    75,   nil,    97,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    71,
   nil,   nil,   nil,    83,    86,   nil,   nil,    92,   177,   nil,
    72,    75,    78,   100,   nil,   nil,    89,   nil,    71,    94,
   nil,   nil,    83,    86,   nil,   nil,    92,    59,    72,    75,
    76,    78,   102,   339,   106,    89,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,    71,   nil,   nil,    59,    83,    86,   nil,
    97,    92,   nil,    72,    75,    76,    78,   102,   nil,   106,
    89,    71,   nil,    72,    75,    83,    86,   nil,   nil,    92,
   nil,    59,   nil,   nil,    78,   100,   nil,   nil,    89,    72,
    75,    94,   nil,   nil,   nil,   nil,    71,   nil,   nil,    59,
    83,    86,   nil,   nil,    92,   nil,   162,   nil,   nil,    78,
    83,   268,   nil,    89,    92,   nil,    72,    75,   nil,   137,
   102,   nil,   162,    89,    59,   nil,    83,   268,   nil,   nil,
    92,   nil,    72,    75,    59,   137,   102,   nil,   106,    89,
   nil,   nil,    72,    75,   nil,   nil,   102,   nil,   106,    71,
    59,   nil,   nil,    83,   268,   nil,   nil,    92,   nil,   nil,
   nil,   nil,   137,   nil,    97,    71,    89,   nil,   nil,    83,
    86,   nil,   nil,    92,   nil,    71,   nil,    59,    78,    83,
    86,   nil,    89,    92,   nil,   nil,   nil,   nil,    78,   100,
    72,    75,    89,    59,   102,    94,   106,   213,   196,   197,
   198,   200,   202,    59,   207,   211,   nil,   nil,   nil,    72,
    75,   199,    97,   102,   189,   106,    72,    75,   nil,   nil,
   102,   nil,   106,    71,   nil,   nil,   nil,    83,    86,   nil,
   nil,    92,   nil,   nil,   nil,   nil,    78,   100,    72,    75,
    89,   nil,    71,    94,   nil,   nil,    83,    86,   nil,    71,
    92,    59,   nil,    83,    86,    78,   nil,    92,   nil,    89,
   nil,   nil,    78,    72,    75,   nil,    89,   102,   nil,   106,
    59,   162,   nil,   nil,   nil,    83,   268,    59,   nil,    92,
   nil,    72,    75,   nil,   137,   102,   nil,   106,    89,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,    71,   nil,   nil,    59,
    83,    86,   nil,    97,    92,   nil,   nil,   nil,   nil,    78,
   nil,    72,    75,    89,    71,   102,   nil,   106,    83,    86,
   nil,   nil,    92,   nil,    59,   nil,   nil,    78,   100,   nil,
   nil,    89,   nil,    97,    94,   nil,   nil,    72,    75,   nil,
   nil,   102,    59,   106,    71,   nil,   nil,   nil,    83,    86,
   nil,   nil,    92,   nil,   nil,   nil,   nil,    78,   100,    97,
   nil,    89,   nil,   nil,    94,   nil,   nil,   nil,   nil,   nil,
    71,   nil,    59,   nil,    83,    86,   212,   nil,    92,   nil,
   nil,   nil,   nil,    78,   100,   205,   210,    89,   nil,   nil,
    94,   nil,   nil,   nil,   201,   203,   206,   209,    59,   nil,
   205,   210,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   201,
   203,   206,   209,   nil,   nil,   nil,   nil,   nil,   204,   208,
   nil,   nil,   213,   196,   197,   198,   200,   202,   nil,   207,
   211,   nil,   nil,   204,   208,   nil,   199,   213,   196,   197,
   198,   200,   202,   nil,   207,   211,   205,   210,   nil,   nil,
   nil,   199,   nil,   nil,   nil,   201,   203,   206,   209,   nil,
   nil,   205,   210,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   201,   203,   206,   209,   nil,   nil,   nil,   nil,   nil,   204,
   208,   nil,   nil,   213,   196,   197,   198,   200,   202,   nil,
   207,   211,   nil,   nil,   204,   208,   nil,   199,   213,   196,
   197,   198,   200,   202,   nil,   207,   211,   205,   210,   nil,
   nil,   nil,   199,   nil,   nil,   nil,   201,   203,   206,   209,
   nil,   nil,   205,   210,   nil,   nil,   nil,   nil,   nil,   nil,
   273,   201,   203,   206,   209,   nil,   nil,   nil,   nil,   nil,
   nil,   208,   nil,   nil,   213,   196,   197,   198,   200,   202,
   nil,   207,   211,   nil,   nil,   204,   208,   nil,   199,   213,
   196,   197,   198,   200,   202,   nil,   207,   211,   205,   210,
   nil,   nil,   nil,   199,   nil,   nil,   nil,   201,   203,   206,
   209,   nil,   nil,    26,   210,    33,     1,   nil,     7,    12,
   nil,    17,   201,    23,   nil,    29,   nil,     3,   nil,   nil,
    11,    14,   nil,   210,   nil,   213,   196,   197,   198,   200,
   202,   201,   207,   211,   nil,   nil,   nil,   nil,   nil,   199,
   213,   196,   197,   198,   200,   202,   nil,   207,   211,   nil,
   nil,   324,   nil,   nil,   199,   nil,   nil,   nil,   nil,   213,
   196,   197,   198,   200,   202,   nil,   207,   211,   nil,   nil,
   379,   nil,    26,   199,    33,     1,   nil,     7,    12,   nil,
    17,   nil,    23,   nil,    29,   nil,     3,   nil,   nil,    11,
    14,    26,   382,    33,     1,   nil,     7,    12,   nil,    17,
   nil,    23,   nil,    29,   nil,     3,   nil,   nil,    11,    14,
   nil,   296,   nil,    26,   nil,    33,     1,   nil,     7,    12,
   nil,    17,   nil,    23,   nil,    29,   nil,     3,   nil,   nil,
    11,    14,    26,   364,    33,     1,   nil,     7,    12,   nil,
    17,   nil,    23,   nil,    29,   nil,     3,   nil,   nil,    11,
    14,   nil,   381,   nil,    26,   nil,    33,     1,   nil,     7,
    12,   nil,    17,   nil,    23,   nil,    29,   nil,     3,   nil,
   nil,    11,    14,    26,   383,    33,     1,   nil,     7,    12,
   nil,    17,   nil,    23,   nil,    29,   nil,     3,   nil,   nil,
    11,    14,   nil,   357,   nil,    26,   nil,    33,     1,   nil,
     7,    12,   nil,    17,   nil,    23,   nil,    29,   nil,     3,
   nil,   nil,    11,    14,    26,   363,    33,     1,   nil,     7,
    12,   nil,    17,   nil,    23,   nil,    29,   nil,     3,   nil,
   nil,    11,    14,   nil,   375,   nil,    26,   nil,    33,     1,
   nil,     7,    12,   nil,    17,   nil,    23,   nil,    29,   nil,
     3,   nil,   nil,    11,    14,    26,   304,    33,     1,   nil,
     7,    12,   nil,    17,   nil,    23,   nil,    29,   nil,     3,
   nil,   nil,    11,    14,   nil,   349,   nil,    26,   nil,    33,
     1,   nil,     7,    12,   nil,    17,   nil,    23,   nil,    29,
   nil,     3,   nil,   nil,    11,    14,    26,   nil,    33,     1,
   nil,     7,    12,   nil,    17,   nil,    23,   nil,    29,   nil,
     3,   nil,   nil,    11,    14,    26,   nil,    33,     1,   nil,
     7,    12,   nil,    17,   nil,    23,   nil,    29,   nil,     3,
   nil,   nil,    11,    14 ]

racc_action_check = [
   180,   180,   152,    86,   156,   106,   106,   272,   174,     7,
   277,   277,   106,   180,   180,    65,    55,   277,     7,     7,
   272,    86,   180,   180,   180,   180,    65,   296,    17,    80,
   296,    65,   158,    95,   202,   202,   174,   174,   202,   218,
   202,    55,   156,   106,   152,   156,   180,   180,   277,   219,
   180,   180,   180,   180,   180,   180,   202,   180,   180,   181,
   181,   368,   368,   239,   180,   156,    17,   202,   165,    17,
   158,   202,   202,   158,   239,   202,   165,   182,   182,   239,
   202,   202,   349,   182,   202,   349,    22,   202,    22,    17,
   143,   243,   181,   158,   368,   202,   181,   181,   368,   368,
   181,    22,   368,   143,   181,   181,   220,   368,   163,   181,
   182,   368,   355,   355,   182,   182,   243,   243,   182,   163,
   181,    62,   368,   182,   163,    22,   178,   182,   281,   281,
   351,   351,    62,   221,   351,   281,   351,    62,   182,   178,
   285,   285,   285,   285,   101,   355,   221,   285,   285,   355,
   355,   224,   351,   355,   285,   341,   341,   300,   355,   341,
    91,   341,   355,   351,   308,   300,   226,   351,   351,   308,
   227,   351,    90,   355,   184,   184,   351,   351,    12,   122,
   351,   171,    12,   351,   122,   171,   171,   229,   341,    12,
   286,   351,   341,   341,   343,   343,   341,   184,   286,     1,
    87,   341,    30,     1,   183,   341,    30,   184,   183,   183,
     1,   184,   184,    30,    30,   184,   341,   196,   196,   184,
   184,   196,   195,   196,   184,   195,   286,   286,   286,   286,
   286,   286,   188,   286,   286,   184,   188,   188,   231,   196,
   286,   120,   232,   197,   197,   120,   233,   197,   103,   197,
   196,    85,   120,   120,   196,   196,   105,    43,   196,   280,
   280,    43,    84,   196,   196,   197,   280,   196,    43,    43,
   196,    81,   215,    23,    23,    78,   197,    23,   196,   250,
   197,   197,   279,   279,   197,   252,   253,   279,   279,   197,
   197,    77,    71,   197,   279,    23,   197,   160,    68,    26,
    26,   160,   160,    26,   197,    26,    23,   268,    67,   234,
    23,    23,   211,   234,    23,   274,   234,    66,    23,    23,
   234,    26,   107,    23,   108,   198,   198,   109,   207,   198,
   114,   198,    26,   115,    23,   119,    26,    26,    64,   121,
    26,    35,    35,    35,    35,    26,    26,   198,    52,    26,
    29,    29,    26,    51,    29,    50,    29,   127,   198,   132,
    26,    36,   198,   198,   307,   307,   198,   133,   307,   136,
   307,   198,   198,   138,   192,   198,   139,    33,   198,    34,
    34,    34,    34,    29,   140,   142,   198,    29,    29,   305,
   305,    29,   315,   305,   144,   305,    29,   307,    16,   327,
    29,   307,   307,   199,   199,   307,   328,   199,   330,   199,
   307,    29,   297,   297,   307,   331,   332,   297,   297,   337,
   153,   175,   305,   154,   297,   307,   305,   305,     9,   288,
   305,    28,    28,    28,    28,   305,   199,   288,   352,   305,
   199,   199,     8,   356,   199,   298,   298,   173,   367,   199,
   305,   172,   298,   199,   369,   200,   200,     3,     2,   200,
   157,   200,   263,   nil,   199,   288,   288,   288,   288,   288,
   288,   nil,   288,   288,   nil,   nil,   nil,   200,   298,   288,
   nil,   nil,   298,   298,   nil,   nil,   298,   nil,   200,   nil,
   nil,   298,   200,   200,   nil,   298,   200,     4,     4,     4,
     4,   200,   200,    39,    39,   200,   298,    39,   200,    39,
   293,   293,   293,   293,   293,   293,   200,   293,   293,   nil,
   283,   283,   283,   283,   293,    39,   nil,   283,   283,   201,
   201,   nil,   nil,   201,   283,   201,    39,   nil,   nil,   nil,
    39,    39,   nil,   nil,    39,   nil,   nil,   nil,   nil,    39,
    39,   201,   nil,    39,   nil,   nil,    39,   nil,   nil,    46,
    46,   nil,   201,    46,    39,    46,   201,   201,   nil,   nil,
   201,   nil,   nil,   nil,   nil,   201,   201,   nil,   nil,   201,
   nil,    46,   201,   nil,   nil,    47,    47,   nil,   nil,    47,
   201,    47,    46,   nil,   nil,   nil,    46,    46,   nil,   nil,
    46,   nil,   nil,   nil,   nil,    46,    46,    47,   nil,    46,
    48,    48,    46,   nil,    48,   nil,    48,   nil,    47,   nil,
    46,   nil,    47,    47,    49,    49,    47,   nil,    49,   nil,
   nil,    47,    47,   nil,   nil,    47,   nil,   nil,    47,   nil,
   nil,   nil,   nil,    48,   nil,   nil,    47,    48,    48,   176,
   176,    48,   nil,   176,   nil,   176,    48,    49,   nil,   nil,
    48,    49,    49,   nil,   nil,    49,   nil,   nil,   nil,   nil,
    49,    48,   nil,   nil,    49,   203,   203,   nil,   nil,   203,
   nil,   203,   176,   nil,   nil,    49,   176,   176,   nil,   nil,
   176,   nil,   nil,   nil,   nil,   176,   nil,   203,   nil,   176,
   nil,   204,   204,   nil,   nil,   204,   nil,   204,   203,   nil,
   176,   nil,   203,   203,   nil,   nil,   203,   nil,   nil,   nil,
   nil,   203,   203,   204,   nil,   203,   nil,   nil,   203,   nil,
   nil,   205,   205,   nil,   204,   205,   203,   205,   204,   204,
   nil,   nil,   204,   nil,   nil,   nil,   nil,   204,   204,   nil,
   nil,   204,   nil,   205,   204,   nil,   nil,   100,   100,   nil,
   nil,   100,   204,   100,   205,   nil,   nil,   nil,   205,   205,
   nil,   nil,   205,   nil,   nil,   nil,   nil,   205,   205,   100,
   nil,   205,    63,    63,   205,   nil,    63,   nil,    63,   nil,
   100,   nil,   205,   nil,   100,   100,   nil,   nil,   100,   nil,
   nil,   nil,   nil,   100,   100,   nil,   nil,   100,   208,   208,
   100,   nil,   208,   nil,   208,    63,   nil,   nil,   100,    63,
    63,   nil,   nil,    63,   nil,   nil,   nil,   nil,    63,   nil,
   208,   nil,    63,   nil,   209,   209,   nil,   nil,   209,   nil,
   209,   208,   nil,    63,   nil,   208,   208,   nil,   nil,   208,
   nil,   nil,   269,   269,   208,   208,   209,   nil,   208,   276,
   276,   208,   nil,   276,   nil,   276,   nil,   209,   nil,   208,
   nil,   209,   209,   nil,   nil,   209,   nil,   nil,   nil,   nil,
   209,   209,   nil,   nil,   209,   269,   nil,   209,   nil,   269,
   269,   nil,   276,   269,   nil,   209,   276,   276,   269,   nil,
   276,   nil,   269,   nil,   nil,   276,   256,   256,   nil,   276,
   256,   nil,   256,   269,   nil,   nil,   nil,   nil,   nil,   nil,
   276,   nil,   nil,   nil,   nil,    74,    74,   nil,   256,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   256,
   nil,   nil,   nil,   256,   256,   nil,   nil,   256,    74,   nil,
   254,   254,   256,   256,   nil,   nil,   256,   nil,    74,   256,
   nil,   nil,    74,    74,   nil,   nil,    74,   256,    75,    75,
    74,    74,    75,   254,    75,    74,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   254,   nil,   nil,    74,   254,   254,   nil,
    75,   254,   nil,   248,   248,   254,   254,   248,   nil,   248,
   254,    75,   nil,   245,   245,    75,    75,   nil,   nil,    75,
   nil,   254,   nil,   nil,    75,    75,   nil,   nil,    75,   244,
   244,    75,   nil,   nil,   nil,   nil,   248,   nil,   nil,    75,
   248,   248,   nil,   nil,   248,   nil,   245,   nil,   nil,   248,
   245,   245,   nil,   248,   245,   nil,   225,   225,   nil,   245,
   225,   nil,   244,   245,   248,   nil,   244,   244,   nil,   nil,
   244,   nil,    82,    82,   245,   244,    82,   nil,    82,   244,
   nil,   nil,   210,   210,   nil,   nil,   210,   nil,   210,   225,
   244,   nil,   nil,   225,   225,   nil,   nil,   225,   nil,   nil,
   nil,   nil,   225,   nil,   210,    82,   225,   nil,   nil,    82,
    82,   nil,   nil,    82,   nil,   210,   nil,   225,    82,   210,
   210,   nil,    82,   210,   nil,   nil,   nil,   nil,   210,   210,
   213,   213,   210,    82,   213,   210,   213,   284,   284,   284,
   284,   284,   284,   210,   284,   284,   nil,   nil,   nil,   102,
   102,   284,   213,   102,   102,   102,   230,   230,   nil,   nil,
   230,   nil,   230,   213,   nil,   nil,   nil,   213,   213,   nil,
   nil,   213,   nil,   nil,   nil,   nil,   213,   213,   214,   214,
   213,   nil,   102,   213,   nil,   nil,   102,   102,   nil,   230,
   102,   213,   nil,   230,   230,   102,   nil,   230,   nil,   102,
   nil,   nil,   230,   228,   228,   nil,   230,   228,   nil,   228,
   102,   214,   nil,   nil,   nil,   214,   214,   230,   nil,   214,
   nil,    94,    94,   nil,   214,    94,   nil,    94,   214,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   228,   nil,   nil,   214,
   228,   228,   nil,    94,   228,   nil,   nil,   nil,   nil,   228,
   nil,    97,    97,   228,    94,    97,   nil,    97,    94,    94,
   nil,   nil,    94,   nil,   228,   nil,   nil,    94,    94,   nil,
   nil,    94,   nil,    97,    94,   nil,   nil,   206,   206,   nil,
   nil,   206,    94,   206,    97,   nil,   nil,   nil,    97,    97,
   nil,   nil,    97,   nil,   nil,   nil,   nil,    97,    97,   206,
   nil,    97,   nil,   nil,    97,   nil,   nil,   nil,   nil,   nil,
   206,   nil,    97,   nil,   206,   206,   111,   nil,   206,   nil,
   nil,   nil,   nil,   206,   206,   111,   111,   206,   nil,   nil,
   206,   nil,   nil,   nil,   111,   111,   111,   111,   206,   nil,
   124,   124,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,
   124,   124,   124,   nil,   nil,   nil,   nil,   nil,   111,   111,
   nil,   nil,   111,   111,   111,   111,   111,   111,   nil,   111,
   111,   nil,   nil,   124,   124,   nil,   111,   124,   124,   124,
   124,   124,   124,   nil,   124,   124,   130,   130,   nil,   nil,
   nil,   124,   nil,   nil,   nil,   130,   130,   130,   130,   nil,
   nil,   131,   131,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   131,   131,   131,   131,   nil,   nil,   nil,   nil,   nil,   130,
   130,   nil,   nil,   130,   130,   130,   130,   130,   130,   nil,
   130,   130,   nil,   nil,   131,   131,   nil,   130,   131,   131,
   131,   131,   131,   131,   nil,   131,   131,   287,   287,   nil,
   nil,   nil,   131,   nil,   nil,   nil,   287,   287,   287,   287,
   nil,   nil,   186,   186,   nil,   nil,   nil,   nil,   nil,   nil,
   186,   186,   186,   186,   186,   nil,   nil,   nil,   nil,   nil,
   nil,   287,   nil,   nil,   287,   287,   287,   287,   287,   287,
   nil,   287,   287,   nil,   nil,   186,   186,   nil,   287,   186,
   186,   186,   186,   186,   186,   nil,   186,   186,   291,   291,
   nil,   nil,   nil,   186,   nil,   nil,   nil,   291,   291,   291,
   291,   nil,   nil,    19,   292,    19,    19,   nil,    19,    19,
   nil,    19,   292,    19,   nil,    19,   nil,    19,   nil,   nil,
    19,    19,   nil,   289,   nil,   291,   291,   291,   291,   291,
   291,   289,   291,   291,   nil,   nil,   nil,   nil,   nil,   291,
   292,   292,   292,   292,   292,   292,   nil,   292,   292,   nil,
   nil,   237,   nil,   nil,   292,   nil,   nil,   nil,   nil,   289,
   289,   289,   289,   289,   289,   nil,   289,   289,   nil,   nil,
   372,   nil,   237,   289,   237,   237,   nil,   237,   237,   nil,
   237,   nil,   237,   nil,   237,   nil,   237,   nil,   nil,   237,
   237,   372,   378,   372,   372,   nil,   372,   372,   nil,   372,
   nil,   372,   nil,   372,   nil,   372,   nil,   nil,   372,   372,
   nil,   212,   nil,   378,   nil,   378,   378,   nil,   378,   378,
   nil,   378,   nil,   378,   nil,   378,   nil,   378,   nil,   nil,
   378,   378,   212,   323,   212,   212,   nil,   212,   212,   nil,
   212,   nil,   212,   nil,   212,   nil,   212,   nil,   nil,   212,
   212,   nil,   374,   nil,   323,   nil,   323,   323,   nil,   323,
   323,   nil,   323,   nil,   323,   nil,   323,   nil,   323,   nil,
   nil,   323,   323,   374,   380,   374,   374,   nil,   374,   374,
   nil,   374,   nil,   374,   nil,   374,   nil,   374,   nil,   nil,
   374,   374,   nil,   303,   nil,   380,   nil,   380,   380,   nil,
   380,   380,   nil,   380,   nil,   380,   nil,   380,   nil,   380,
   nil,   nil,   380,   380,   303,   319,   303,   303,   nil,   303,
   303,   nil,   303,   nil,   303,   nil,   303,   nil,   303,   nil,
   nil,   303,   303,   nil,   362,   nil,   319,   nil,   319,   319,
   nil,   319,   319,   nil,   319,   nil,   319,   nil,   319,   nil,
   319,   nil,   nil,   319,   319,   362,   217,   362,   362,   nil,
   362,   362,   nil,   362,   nil,   362,   nil,   362,   nil,   362,
   nil,   nil,   362,   362,   nil,   295,   nil,   217,   nil,   217,
   217,   nil,   217,   217,   nil,   217,   nil,   217,   nil,   217,
   nil,   217,   nil,   nil,   217,   217,   295,   nil,   295,   295,
   nil,   295,   295,   nil,   295,   nil,   295,   nil,   295,   nil,
   295,   nil,   nil,   295,   295,     0,   nil,     0,     0,   nil,
     0,     0,   nil,     0,   nil,     0,   nil,     0,   nil,     0,
   nil,   nil,     0,     0 ]

racc_action_pointer = [
  1795,   163,   443,   413,   433,   nil,   nil,     3,   434,   420,
   nil,   nil,   142,   nil,   nil,   nil,   398,    26,   nil,  1483,
   nil,   nil,    80,   271,   nil,   nil,   297,   nil,   367,   348,
   166,   nil,   nil,   375,   315,   277,   337,   nil,   nil,   501,
   nil,   nil,   nil,   221,   nil,   nil,   557,   583,   608,   622,
   315,   329,   348,   nil,   nil,     4,   nil,   nil,   nil,   nil,
   nil,   nil,    97,   780,   298,    -9,   309,   302,   275,   nil,
   nil,   286,   nil,   nil,   923,   966,   nil,   279,   269,   nil,
     6,   248,  1060,   nil,   239,   245,    -3,   177,   nil,   nil,
   149,   137,   nil,   nil,  1209,    10,   nil,  1239,   nil,   nil,
   755,   121,  1137,   225,   nil,   233,     3,   299,   301,   304,
   nil,  1298,   nil,   nil,   322,   325,   nil,   nil,   nil,   323,
   205,   331,   144,   nil,  1313,   nil,   nil,   351,   nil,   nil,
  1359,  1374,   352,   344,   nil,   nil,   328,   nil,   350,   364,
   361,   nil,   362,    79,   374,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    -9,   408,   386,   nil,     2,   452,    30,   nil,
   251,   nil,   nil,    84,   nil,    50,   nil,   nil,   nil,   nil,
   nil,   174,   439,   436,   -14,   381,   647,   nil,   114,   nil,
    -4,    57,    75,   197,   172,   nil,  1435,   nil,   225,   nil,
   nil,   nil,   363,   nil,   nil,   213,   215,   241,   323,   401,
   453,   527,    32,   673,   699,   729,  1265,   265,   806,   832,
  1070,   249,  1612,  1118,  1166,   270,   nil,  1757,    24,    24,
    91,   121,   nil,   nil,   142,  1044,   126,   161,  1191,   147,
  1144,   198,   233,   238,   273,   nil,   nil,  1552,   nil,    39,
   nil,   nil,   nil,    66,  1017,  1001,   nil,   nil,   991,   nil,
   270,   nil,   273,   279,   948,   nil,   904,   nil,   nil,   nil,
   nil,   nil,   nil,   451,   nil,   nil,   nil,   nil,   283,   850,
   nil,   nil,    -5,   nil,   308,   nil,   857,     8,   nil,   226,
   198,    67,   nil,   466,  1073,    86,   172,  1420,   411,  1515,
   nil,  1481,  1496,   456,   nil,  1776,    -4,   356,   443,   nil,
   145,   nil,   nil,  1694,   nil,   387,   nil,   362,   129,   nil,
   nil,   nil,   nil,   nil,   nil,   380,   nil,   nil,   nil,  1716,
   nil,   nil,   nil,  1634,   nil,   nil,   nil,   376,   383,   nil,
   385,   392,   393,   nil,   nil,   nil,   nil,   410,   nil,   nil,
   nil,   153,   nil,   183,   nil,   nil,   nil,   nil,   nil,    51,
   nil,   128,   430,   nil,   nil,   110,   435,   nil,   nil,   nil,
   nil,   nil,  1735,   nil,   nil,   nil,   nil,   439,    59,   445,
   nil,   nil,  1571,   nil,  1653,   nil,   nil,   nil,  1593,   nil,
  1675,   nil,   nil,   nil ]

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

racc_goto_table = [
    22,     9,    68,   112,    53,   118,    61,    36,    91,   222,
    19,   267,    70,    93,     2,   227,   139,   191,    51,    22,
     9,   179,    77,    56,    73,   149,    21,   141,   133,   232,
   115,   172,   153,     2,   146,   263,   125,   116,   135,   148,
   147,   299,   129,    22,   126,   260,   160,   350,   250,   174,
   128,   171,    43,    68,   121,   329,   334,   298,   368,    91,
   258,   265,   123,    70,    93,   317,   343,   301,   136,   154,
   183,   119,   224,   178,   233,    73,    55,   123,   157,    66,
   238,   159,   120,   219,   221,   190,   325,   321,   195,    16,
   188,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   342,   nil,
   370,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   216,   nil,   nil,   nil,   nil,   260,   129,
    22,   126,   263,   nil,   nil,   353,   nil,   128,   337,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    81,
   nil,   nil,   nil,    53,   nil,    53,   nil,   243,   nil,   nil,
   149,   301,   nil,   nil,   nil,   nil,   nil,   252,   nil,   nil,
    68,   261,   236,    68,   nil,   138,    91,   146,   nil,    91,
    70,    93,   nil,    70,    93,   nil,   nil,   nil,   166,   nil,
   235,   166,   259,   272,   nil,    73,   nil,   302,   347,   nil,
    81,   361,   nil,   261,   290,   360,   315,   376,   294,   146,
   nil,   312,   340,   311,   133,   nil,   149,   nil,   373,   nil,
   146,   nil,    22,     9,   135,   148,   147,    22,     9,   369,
   nil,   263,   295,   327,   327,   nil,     2,   303,   nil,   146,
   146,     2,   nil,    68,   333,   333,   nil,    22,     9,    91,
   320,    88,   nil,    70,    93,   nil,   nil,   323,   261,   nil,
   nil,     2,   nil,   nil,   146,   259,   190,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    88,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,    87,   nil,   261,   nil,   166,
   nil,   nil,    61,   146,   nil,   nil,   nil,   nil,   nil,   nil,
    61,   nil,    88,   nil,   nil,    22,     9,    81,   262,   nil,
    81,   142,   nil,    22,     9,   nil,   nil,   nil,   nil,     2,
    61,   nil,   nil,   nil,   nil,   nil,   nil,     2,   nil,    22,
     9,   nil,   nil,    22,     9,   nil,    87,   nil,   371,   362,
   262,   nil,   nil,     2,   261,   nil,   nil,     2,   nil,   nil,
   146,   138,   nil,   nil,   nil,   nil,   nil,   261,   nil,    61,
   nil,   nil,   nil,   146,   nil,   166,   nil,   nil,   nil,   nil,
   328,   328,    22,     9,   114,    61,   nil,    61,   nil,    84,
    81,   nil,    22,     9,    22,     9,     2,    90,    22,     9,
    22,     9,   378,   132,   380,   262,     2,   nil,     2,   nil,
   nil,   nil,     2,   nil,     2,   140,   nil,   nil,   170,    88,
    88,   nil,    88,   145,   nil,   nil,   nil,   nil,   167,   nil,
   nil,   167,   nil,   nil,   262,   nil,   nil,   170,   nil,   nil,
    84,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    90,   nil,
   nil,   nil,    88,    87,   266,   nil,    87,   170,   nil,   nil,
   nil,   nil,   nil,    88,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    88,    88,   nil,   nil,   266,   nil,   nil,   nil,
   nil,   262,    88,   nil,   nil,   nil,   nil,   142,   nil,   nil,
   nil,   nil,   nil,   nil,   262,   nil,   nil,    88,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   331,   331,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,    87,   nil,   nil,   167,
   nil,   253,   nil,   nil,   nil,   nil,    88,   nil,   nil,   nil,
   nil,   266,   nil,   nil,   nil,   nil,   nil,    84,   264,   nil,
    84,   nil,   nil,   nil,   282,    90,   145,   nil,    90,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   266,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   264,   nil,   nil,   314,   nil,   316,   nil,   124,   145,   nil,
   nil,   140,   nil,    88,   130,   131,   nil,   nil,   nil,   145,
   nil,   nil,   nil,   335,   nil,   167,    88,   nil,   nil,   nil,
   330,   330,   nil,   nil,   nil,   nil,   nil,   nil,   332,   332,
    84,   nil,   nil,   180,   nil,   nil,   nil,   266,    90,   nil,
   nil,   346,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,
   266,   nil,   185,   145,   nil,   186,   nil,   nil,   187,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   358,   nil,   359,   nil,   264,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   145,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   366,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   264,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   145,
   nil,   nil,   nil,   nil,   264,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   145,   nil,   279,   280,   281,   nil,   283,   284,
   285,   286,   287,   288,   289,   nil,   291,   292,   293,   nil,
   nil,   297,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   180 ]

racc_goto_check = [
    37,    21,    30,    62,    64,    72,     4,    32,    28,    82,
     2,    70,    31,    29,    52,    36,    35,    85,    32,    37,
    21,    60,    22,    78,    21,    53,     3,    47,    30,    36,
    37,    35,    38,    52,    28,    68,    19,     5,    31,    29,
    50,    66,     7,    37,    21,    23,    41,    63,    36,    41,
     5,    57,    20,    30,    74,    46,    46,    65,    58,    28,
    61,    69,     3,    31,    29,    56,    71,    68,    33,    74,
    57,    73,    34,    22,    75,    21,    76,     3,    77,    40,
    79,     3,    20,    80,    81,    30,    42,    83,    84,     1,
    57,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    70,   nil,
    63,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,    19,   nil,   nil,   nil,   nil,    23,     7,
    37,    21,    68,   nil,   nil,    66,   nil,     5,    36,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    24,
   nil,   nil,   nil,    64,   nil,    64,   nil,    41,   nil,   nil,
    53,    68,   nil,   nil,   nil,   nil,   nil,    38,   nil,   nil,
    30,    30,    78,    30,   nil,    24,    28,    28,   nil,    28,
    31,    29,   nil,    31,    29,   nil,   nil,   nil,    24,   nil,
     3,    24,    21,    22,   nil,    21,   nil,    72,    85,   nil,
    24,    36,   nil,    30,    64,    82,    35,    70,    64,    28,
   nil,    53,    60,    47,    30,   nil,    53,   nil,    68,   nil,
    28,   nil,    37,    21,    31,    29,    50,    37,    21,    36,
   nil,    68,     2,    30,    30,   nil,    52,     2,   nil,    28,
    28,    52,   nil,    30,    29,    29,   nil,    37,    21,    28,
    32,    49,   nil,    31,    29,   nil,   nil,     2,    30,   nil,
   nil,    52,   nil,   nil,    28,    21,    30,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    49,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,    26,   nil,    30,   nil,    24,
   nil,   nil,     4,    28,   nil,   nil,   nil,   nil,   nil,   nil,
     4,   nil,    49,   nil,   nil,    37,    21,    24,    24,   nil,
    24,    26,   nil,    37,    21,   nil,   nil,   nil,   nil,    52,
     4,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,    37,
    21,   nil,   nil,    37,    21,   nil,    26,   nil,    62,     2,
    24,   nil,   nil,    52,    30,   nil,   nil,    52,   nil,   nil,
    28,    24,   nil,   nil,   nil,   nil,   nil,    30,   nil,     4,
   nil,   nil,   nil,    28,   nil,    24,   nil,   nil,   nil,   nil,
    24,    24,    37,    21,    54,     4,   nil,     4,   nil,    25,
    24,   nil,    37,    21,    37,    21,    52,    27,    37,    21,
    37,    21,     2,    54,     2,    24,    52,   nil,    52,   nil,
   nil,   nil,    52,   nil,    52,    25,   nil,   nil,    54,    49,
    49,   nil,    49,    27,   nil,   nil,   nil,   nil,    25,   nil,
   nil,    25,   nil,   nil,    24,   nil,   nil,    54,   nil,   nil,
    25,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    27,   nil,
   nil,   nil,    49,    26,    26,   nil,    26,    54,   nil,   nil,
   nil,   nil,   nil,    49,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    49,    49,   nil,   nil,    26,   nil,   nil,   nil,
   nil,    24,    49,   nil,   nil,   nil,   nil,    26,   nil,   nil,
   nil,   nil,   nil,   nil,    24,   nil,   nil,    49,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,    26,    26,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,    26,   nil,   nil,    25,
   nil,    54,   nil,   nil,   nil,   nil,    49,   nil,   nil,   nil,
   nil,    26,   nil,   nil,   nil,   nil,   nil,    25,    25,   nil,
    25,   nil,   nil,   nil,    54,    27,    27,   nil,    27,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
    26,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
    25,   nil,   nil,    54,   nil,    54,   nil,    51,    27,   nil,
   nil,    25,   nil,    49,    51,    51,   nil,   nil,   nil,    27,
   nil,   nil,   nil,    54,   nil,    25,    49,   nil,   nil,   nil,
    25,    25,   nil,   nil,   nil,   nil,   nil,   nil,    27,    27,
    25,   nil,   nil,    51,   nil,   nil,   nil,    26,    27,   nil,
   nil,    54,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,
    26,   nil,    51,    27,   nil,    51,   nil,   nil,    51,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
    54,   nil,    54,   nil,    25,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    27,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,    54,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,    25,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    27,
   nil,   nil,   nil,   nil,    25,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    27,   nil,    51,    51,    51,   nil,    51,    51,
    51,    51,    51,    51,    51,   nil,    51,    51,    51,   nil,
   nil,    51,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    51 ]

racc_goto_pointer = [
   nil,    89,    10,    26,   -13,     7,   nil,    -1,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    -7,
    48,     1,    -1,  -136,   116,   346,   252,   354,   -15,   -10,
   -21,   -11,     6,    19,   -64,   -33,  -124,     0,   -18,   nil,
    57,   -16,  -153,   nil,   nil,   nil,  -189,   -22,   nil,   218,
    -9,   528,    14,   -25,   335,   nil,  -166,   -12,  -285,   nil,
   -54,  -120,   -23,  -249,   -13,  -157,  -173,   nil,  -147,  -121,
  -171,  -203,   -28,    38,    18,   -80,    59,    23,     6,   -78,
   -39,   -38,  -113,  -147,   -18,   -89,   nil ]

racc_goto_default = [
   nil,   nil,   nil,   168,    25,    28,    32,    35,     5,     6,
    10,    13,    15,    18,    20,    24,    27,    31,    34,     4,
   nil,    99,   nil,    79,   101,   103,   105,   108,   109,   113,
    95,    96,     8,   nil,   nil,   nil,   nil,    85,   nil,    30,
   nil,   nil,   161,   239,   164,   165,   nil,   nil,   144,   107,
   110,   111,    67,   134,    98,   150,   151,   nil,   248,   104,
   nil,   nil,   nil,   nil,    69,   nil,   nil,   300,    80,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    57,
   nil,   nil,   nil,   nil,   nil,   nil,   192 ]

racc_token_table = {
 false => 0,
 Object.new => 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,
 :IMPORT => 32,
 :DEFINE => 33,
 :ELSIF => 34,
 :VARIABLE => 35,
 :CLASS => 36,
 :INHERITS => 37,
 :NODE => 38,
 :BOOLEAN => 39,
 :NAME => 40,
 :SEMIC => 41,
 :CASE => 42,
 :DEFAULT => 43,
 :AT => 44,
 :LCOLLECT => 45,
 :RCOLLECT => 46,
 :CLASSNAME => 47,
 :CLASSREF => 48,
 :NOT => 49,
 :OR => 50,
 :AND => 51,
 :UNDEF => 52,
 :PARROW => 53,
 :PLUS => 54,
 :MINUS => 55,
 :TIMES => 56,
 :DIV => 57,
 :LSHIFT => 58,
 :RSHIFT => 59,
 :UMINUS => 60,
 :MATCH => 61,
 :NOMATCH => 62,
 :REGEX => 63,
 :IN_EDGE => 64,
 :OUT_EDGE => 65,
 :IN_EDGE_SUB => 66,
 :OUT_EDGE_SUB => 67,
 :IN => 68 }

racc_use_result_var = true

racc_nt_base = 69

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',
'IMPORT',
'DEFINE',
'ELSIF',
'VARIABLE',
'CLASS',
'INHERITS',
'NODE',
'BOOLEAN',
'NAME',
'SEMIC',
'CASE',
'DEFAULT',
'AT',
'LCOLLECT',
'RCOLLECT',
'CLASSNAME',
'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',
'$start',
'program',
'statements',
'nil',
'statement',
'resource',
'virtualresource',
'collection',
'assignment',
'casestatement',
'ifstatement_begin',
'import',
'fstatement',
'definition',
'hostclass',
'nodedef',
'resourceoverride',
'append',
'relationship',
'relationship_side',
'edge',
'resourceref',
'funcvalues',
'namestring',
'name',
'variable',
'type',
'boolean',
'funcrvalue',
'selector',
'quotedtext',
'hasharrayaccesses',
'classname',
'resourceinstances',
'endsemi',
'params',
'endcomma',
'classref',
'anyparams',
'at',
'collectrhand',
'collstatements',
'collstatement',
'colljoin',
'collexpr',
'colllval',
'simplervalue',
'resourceinst',
'resourcename',
'undef',
'array',
'expression',
'hasharrayaccess',
'param',
'rvalue',
'addparam',
'anyparam',
'rvalues',
'comma',
'hash',
'dqrval',
'dqtail',
'ifstatement',
'else',
'regex',
'caseopts',
'caseopt',
'casevalues',
'selectlhand',
'svalues',
'selectval',
'sintvalues',
'string',
'strings',
'argumentlist',
'classparent',
'hostnames',
'nodeparent',
'nodename',
'hostname',
'nothing',
'arguments',
'argument',
'classnameordefault',
'hashpairs',
'hashpair',
'key']

Racc_debug_parser = false

##### racc system variables end #####

 # reduce 0 omitted

module_eval <<'.,.,', 'grammar.ra', 46
  def _reduce_1( val, _values, result )
    if val[0]
        # Make sure we always return an array.
        if val[0].is_a?(AST::ASTArray)
            if val[0].children.empty?
                result = nil
            else
                result = val[0]
            end
        else
            result = aryfy(val[0])
        end
    else
        result = nil
    end
   result
  end
.,.,

 # reduce 2 omitted

 # reduce 3 omitted

module_eval <<'.,.,', 'grammar.ra', 62
  def _reduce_4( val, _values, result )
    if val[0] and val[1]
        if val[0].instance_of?(AST::ASTArray)
            val[0].push(val[1])
            result = val[0]
        else
            result = ast AST::ASTArray, :children => [val[0],val[1]]
        end
    elsif obj = (val[0] || val[1])
        result = obj
    else result = nil
    end
   result
  end
.,.,

 # reduce 5 omitted

 # reduce 6 omitted

 # reduce 7 omitted

 # reduce 8 omitted

 # reduce 9 omitted

 # reduce 10 omitted

 # reduce 11 omitted

 # reduce 12 omitted

 # reduce 13 omitted

 # reduce 14 omitted

 # reduce 15 omitted

 # reduce 16 omitted

 # reduce 17 omitted

 # reduce 18 omitted

module_eval <<'.,.,', 'grammar.ra', 82
  def _reduce_19( val, _values, result )
    result = AST::Relationship.new(val[0], val[2], val[1][:value], ast_context)
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 85
  def _reduce_20( val, _values, result )
    result = AST::Relationship.new(val[0], val[2], val[1][:value], ast_context)
   result
  end
.,.,

 # reduce 21 omitted

 # reduce 22 omitted

 # reduce 23 omitted

 # reduce 24 omitted

 # reduce 25 omitted

 # reduce 26 omitted

 # reduce 27 omitted

module_eval <<'.,.,', 'grammar.ra', 98
  def _reduce_28( val, _values, result )
    args = aryfy(val[2])
    result = ast AST::Function,
        :name => val[0][:value],
        :line => val[0][:line],
        :arguments => args,
        :ftype => :statement
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 106
  def _reduce_29( val, _values, result )
    args = aryfy(val[2])
    result = ast AST::Function,
        :name => val[0][:value],
        :line => val[0][:line],
        :arguments => args,
        :ftype => :statement
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 112
  def _reduce_30( val, _values, result )
    result = ast AST::Function,
        :name => val[0][:value],
        :line => val[0][:line],
        :arguments => AST::ASTArray.new({}),
        :ftype => :statement
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 120
  def _reduce_31( val, _values, result )
    args = aryfy(val[1])
    result = ast AST::Function,
        :name => val[0][:value],
        :line => val[0][:line],
        :arguments => args,
        :ftype => :statement
   result
  end
.,.,

 # reduce 32 omitted

 # reduce 33 omitted

module_eval <<'.,.,', 'grammar.ra', 128
  def _reduce_34( val, _values, result )
    result = aryfy(val[0], val[2])
    result.line = @lexer.line
    result.file = @lexer.file
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 137
  def _reduce_35( val, _values, result )
    unless val[0].is_a?(AST::ASTArray)
        val[0] = aryfy(val[0])
    end

    val[0].push(val[2])

    result = val[0]
   result
  end
.,.,

 # reduce 36 omitted

 # reduce 37 omitted

 # reduce 38 omitted

 # reduce 39 omitted

 # reduce 40 omitted

 # reduce 41 omitted

 # reduce 42 omitted

 # reduce 43 omitted

module_eval <<'.,.,', 'grammar.ra', 151
  def _reduce_44( val, _values, result )
                    result = ast AST::Name, :value => val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 173
  def _reduce_45( val, _values, result )
    @lexer.commentpop
    array = val[2]
    if array.instance_of?(AST::ResourceInstance)
        array = [array]
    end
    result = ast AST::ASTArray

    # this iterates across each specified resourceinstance
    array.each { |instance|
        unless instance.instance_of?(AST::ResourceInstance)
            raise Puppet::Dev, "Got something that isn't an instance"
        end
        # now, i need to somehow differentiate between those things with
        # arrays in their names, and normal things
        result.push ast(AST::Resource,
            :type => val[0],
            :title => instance[0],
            :parameters => instance[1])
    }
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 176
  def _reduce_46( val, _values, result )
    # This is a deprecated syntax.
    error "All resource specifications require names"
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 180
  def _reduce_47( val, _values, result )
    # a defaults setting for a type
    @lexer.commentpop
    result = ast(AST::ResourceDefaults, :type => val[0], :parameters => val[2])
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 186
  def _reduce_48( val, _values, result )
    @lexer.commentpop
    result = ast AST::ResourceOverride, :object => val[0], :parameters => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 213
  def _reduce_49( val, _values, result )
    type = val[0]

    if (type == :exported and ! Puppet[:storeconfigs]) and ! Puppet[:parseonly]
        Puppet.warning addcontext("You cannot collect without storeconfigs being set")
    end

    if val[1].is_a? AST::ResourceDefaults
        error "Defaults are not virtualizable"
    end

    method = type.to_s + "="

    # Just mark our resources as exported and pass them through.
    if val[1].instance_of?(AST::ASTArray)
        val[1].each do |obj|
            obj.send(method, true)
        end
    else
        val[1].send(method, true)
    end

    result = val[1]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 214
  def _reduce_50( val, _values, result )
 result = :virtual
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 215
  def _reduce_51( val, _values, result )
 result = :exported
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 240
  def _reduce_52( val, _values, result )
    @lexer.commentpop
    if val[0] =~ /^[a-z]/
        Puppet.warning addcontext("Collection names must now be capitalized")
    end
    type = val[0].downcase
    args = {:type => type}

    if val[1].is_a?(AST::CollExpr)
        args[:query] = val[1]
        args[:query].type = type
        args[:form] = args[:query].form
    else
        args[:form] = val[1]
    end
    if args[:form] == :exported and ! Puppet[:storeconfigs] and ! Puppet[:parseonly]
        Puppet.warning addcontext("You cannot collect exported resources without storeconfigs being set; the collection will be ignored")
    end
    args[:override] = val[3]
    result = ast AST::Collection, args
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 259
  def _reduce_53( val, _values, result )
    if val[0] =~ /^[a-z]/
        Puppet.warning addcontext("Collection names must now be capitalized")
    end
    type = val[0].downcase
    args = {:type => type }

    if val[1].is_a?(AST::CollExpr)
        args[:query] = val[1]
        args[:query].type = type
        args[:form] = args[:query].form
    else
        args[:form] = val[1]
    end
    if args[:form] == :exported and ! Puppet[:storeconfigs] and ! Puppet[:parseonly]
        Puppet.warning addcontext("You cannot collect exported resources without storeconfigs being set; the collection will be ignored")
    end
    result = ast AST::Collection, args
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 269
  def _reduce_54( val, _values, result )
    if val[1]
        result = val[1]
        result.form = :virtual
    else
        result = :virtual
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 277
  def _reduce_55( val, _values, result )
    if val[1]
        result = val[1]
        result.form = :exported
    else
        result = :exported
    end
   result
  end
.,.,

 # reduce 56 omitted

 # reduce 57 omitted

module_eval <<'.,.,', 'grammar.ra', 285
  def _reduce_58( val, _values, result )
    result = ast AST::CollExpr, :test1 => val[0], :oper => val[1], :test2 => val[2]
   result
  end
.,.,

 # reduce 59 omitted

module_eval <<'.,.,', 'grammar.ra', 291
  def _reduce_60( val, _values, result )
    result = val[1]
    result.parens = true
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 292
  def _reduce_61( val, _values, result )
 result=val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 293
  def _reduce_62( val, _values, result )
 result=val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 300
  def _reduce_63( val, _values, result )
    result = ast AST::CollExpr, :test1 => val[0], :oper => val[1][:value], :test2 => val[2]
    #result = ast AST::CollExpr
    #result.push *val
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 305
  def _reduce_64( val, _values, result )
    result = ast AST::CollExpr, :test1 => val[0], :oper => val[1][:value], :test2 => val[2]
    #result = ast AST::CollExpr
    #result.push *val
   result
  end
.,.,

 # reduce 65 omitted

 # reduce 66 omitted

module_eval <<'.,.,', 'grammar.ra', 312
  def _reduce_67( val, _values, result )
    result = ast AST::ResourceInstance, :children => [val[0],val[2]]
   result
  end
.,.,

 # reduce 68 omitted

module_eval <<'.,.,', 'grammar.ra', 322
  def _reduce_69( val, _values, result )
    if val[0].instance_of?(AST::ResourceInstance)
        result = ast AST::ASTArray, :children => [val[0],val[2]]
    else
        val[0].push val[2]
        result = val[0]
    end
   result
  end
.,.,

 # reduce 70 omitted

 # reduce 71 omitted

module_eval <<'.,.,', 'grammar.ra', 329
  def _reduce_72( val, _values, result )
    result = ast AST::Undef, :value => :undef
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 333
  def _reduce_73( val, _values, result )
    result = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 337
  def _reduce_74( val, _values, result )
    result = ast AST::Type, :value => val[0][:value], :line => val[0][:line]
   result
  end
.,.,

 # reduce 75 omitted

 # reduce 76 omitted

 # reduce 77 omitted

 # reduce 78 omitted

 # reduce 79 omitted

 # reduce 80 omitted

 # reduce 81 omitted

module_eval <<'.,.,', 'grammar.ra', 354
  def _reduce_82( val, _values, result )
    if val[0][:value] =~ /::/
        raise Puppet::ParseError, "Cannot assign to variables in other namespaces"
    end
    # this is distinct from referencing a variable
    variable = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
    result = ast AST::VarDef, :name => variable, :value => val[2], :line => val[0][:line]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 357
  def _reduce_83( val, _values, result )
    result = ast AST::VarDef, :name => val[0], :value => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 362
  def _reduce_84( val, _values, result )
    variable = ast AST::Name, :value => val[0][:value], :line => val[0][:line]
    result = ast AST::VarDef, :name => variable, :value => val[2], :append => true, :line => val[0][:line]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 367
  def _reduce_85( val, _values, result )
    result = ast AST::ASTArray
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 367
  def _reduce_86( val, _values, result )
 result = val[0]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 376
  def _reduce_87( val, _values, result )
    if val[0].instance_of?(AST::ASTArray)
        val[0].push(val[2])
        result = val[0]
    else
        result = ast AST::ASTArray, :children => [val[0],val[2]]
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 380
  def _reduce_88( val, _values, result )
    result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 385
  def _reduce_89( val, _values, result )
    result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2],
                                     :add => true
   result
  end
.,.,

 # reduce 90 omitted

 # reduce 91 omitted

module_eval <<'.,.,', 'grammar.ra', 393
  def _reduce_92( val, _values, result )
    result = ast AST::ASTArray
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 393
  def _reduce_93( val, _values, result )
 result = val[0]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 402
  def _reduce_94( val, _values, result )
    if val[0].instance_of?(AST::ASTArray)
        val[0].push(val[2])
        result = val[0]
    else
        result = ast AST::ASTArray, :children => [val[0],val[2]]
    end
   result
  end
.,.,

 # reduce 95 omitted

module_eval <<'.,.,', 'grammar.ra', 411
  def _reduce_96( val, _values, result )
    if val[0].instance_of?(AST::ASTArray)
        result = val[0].push(val[2])
    else
        result = ast AST::ASTArray, :children => [val[0],val[2]]
    end
   result
  end
.,.,

 # reduce 97 omitted

 # reduce 98 omitted

 # reduce 99 omitted

 # reduce 100 omitted

 # reduce 101 omitted

 # reduce 102 omitted

 # reduce 103 omitted

 # reduce 104 omitted

 # reduce 105 omitted

 # reduce 106 omitted

 # reduce 107 omitted

 # reduce 108 omitted

 # reduce 109 omitted

 # reduce 110 omitted

 # reduce 111 omitted

 # reduce 112 omitted

 # reduce 113 omitted

 # reduce 114 omitted

module_eval <<'.,.,', 'grammar.ra', 440
  def _reduce_115( val, _values, result )
    args = aryfy(val[2])
    result = ast AST::Function,
        :name => val[0][:value], :line => val[0][:line],
        :arguments => args,
        :ftype => :rvalue
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 445
  def _reduce_116( val, _values, result )
    result = ast AST::Function,
        :name => val[0][:value], :line => val[0][:line],
        :arguments => AST::ASTArray.new({}),
        :ftype => :rvalue
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 446
  def _reduce_117( val, _values, result )
 result = ast AST::String, :value => val[0][:value],                  :line => val[0][:line]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 447
  def _reduce_118( val, _values, result )
 result = ast AST::Concat, :value => [ast(AST::String,val[0])]+val[1], :line => val[0][:line]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 449
  def _reduce_119( val, _values, result )
 result = [val[0]] + val[1]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 451
  def _reduce_120( val, _values, result )
 result = [ast(AST::String,val[0])]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 452
  def _reduce_121( val, _values, result )
 result = [ast(AST::String,val[0])] + val[1]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 457
  def _reduce_122( val, _values, result )
    result = ast AST::Boolean, :value => val[0][:value], :line => val[0][:line]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 462
  def _reduce_123( val, _values, result )
    Puppet.warning addcontext("Deprecation notice:  Resource references should now be capitalized")
    result = ast AST::ResourceReference, :type => val[0][:value], :line => val[0][:line], :title => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 464
  def _reduce_124( val, _values, result )
    result = ast AST::ResourceReference, :type => val[0], :title => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 468
  def _reduce_125( val, _values, result )
    result = val[1]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 482
  def _reduce_126( val, _values, result )
    @lexer.commentpop
    args = {
        :test => val[0],
        :statements => val[2]
    }

    if val[4]
        args[:else] = val[4]
    end

    result = ast AST::IfStatement, args
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 495
  def _reduce_127( val, _values, result )
    @lexer.commentpop
    args = {
        :test => val[0],
        :statements => ast(AST::Nop)
    }

    if val[3]
        args[:else] = val[3]
    end

    result = ast AST::IfStatement, args
   result
  end
.,.,

 # reduce 128 omitted

module_eval <<'.,.,', 'grammar.ra', 501
  def _reduce_129( val, _values, result )
                #@lexer.commentpop
    result = ast AST::Else, :statements => val[1]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 505
  def _reduce_130( val, _values, result )
    @lexer.commentpop
    result = ast AST::Else, :statements => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 509
  def _reduce_131( val, _values, result )
    @lexer.commentpop
    result = ast AST::Else, :statements => ast(AST::Nop)
   result
  end
.,.,

 # reduce 132 omitted

module_eval <<'.,.,', 'grammar.ra', 526
  def _reduce_133( val, _values, result )
    result = ast AST::InOperator, :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 529
  def _reduce_134( val, _values, result )
    result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 532
  def _reduce_135( val, _values, result )
    result = ast AST::MatchOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 535
  def _reduce_136( val, _values, result )
    result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 538
  def _reduce_137( val, _values, result )
    result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 541
  def _reduce_138( val, _values, result )
    result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 544
  def _reduce_139( val, _values, result )
    result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 547
  def _reduce_140( val, _values, result )
    result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 550
  def _reduce_141( val, _values, result )
    result = ast AST::ArithmeticOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 553
  def _reduce_142( val, _values, result )
    result = ast AST::Minus, :value => val[1]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 556
  def _reduce_143( val, _values, result )
    result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 559
  def _reduce_144( val, _values, result )
    result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 562
  def _reduce_145( val, _values, result )
    result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 565
  def _reduce_146( val, _values, result )
    result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 568
  def _reduce_147( val, _values, result )
    result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 571
  def _reduce_148( val, _values, result )
    result = ast AST::ComparisonOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 574
  def _reduce_149( val, _values, result )
    result = ast AST::Not, :value => val[1]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 577
  def _reduce_150( val, _values, result )
    result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 580
  def _reduce_151( val, _values, result )
    result = ast AST::BooleanOperator, :operator => val[1][:value], :lval => val[0], :rval => val[2]
   result
  end
.,.,

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

module_eval <<'.,.,', 'grammar.ra', 592
  def _reduce_153( val, _values, result )
    @lexer.commentpop
    options = val[3]
    unless options.instance_of?(AST::ASTArray)
        options = ast AST::ASTArray, :children => [val[3]]
    end
    result = ast AST::CaseStatement, :test => val[1], :options => options
   result
  end
.,.,

 # reduce 154 omitted

module_eval <<'.,.,', 'grammar.ra', 602
  def _reduce_155( val, _values, result )
    if val[0].instance_of?(AST::ASTArray)
        val[0].push val[1]
        result = val[0]
    else
        result = ast AST::ASTArray, :children => [val[0], val[1]]
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 607
  def _reduce_156( val, _values, result )
    @lexer.commentpop
    result = ast AST::CaseOpt, :value => val[0], :statements => val[3]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 613
  def _reduce_157( val, _values, result )
    @lexer.commentpop
    result = ast(AST::CaseOpt,
        :value => val[0],
        :statements => ast(AST::ASTArray)
    )
   result
  end
.,.,

 # reduce 158 omitted

module_eval <<'.,.,', 'grammar.ra', 623
  def _reduce_159( val, _values, result )
    if val[0].instance_of?(AST::ASTArray)
        val[0].push(val[2])
        result = val[0]
    else
        result = ast AST::ASTArray, :children => [val[0],val[2]]
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 627
  def _reduce_160( val, _values, result )
    result = ast AST::Selector, :param => val[0], :values => val[2]
   result
  end
.,.,

 # reduce 161 omitted

module_eval <<'.,.,', 'grammar.ra', 633
  def _reduce_162( val, _values, result )
    @lexer.commentpop
    result = val[1]
   result
  end
.,.,

 # reduce 163 omitted

module_eval <<'.,.,', 'grammar.ra', 643
  def _reduce_164( val, _values, result )
    if val[0].instance_of?(AST::ASTArray)
        val[0].push(val[2])
        result = val[0]
    else
        result = ast AST::ASTArray, :children => [val[0],val[2]]
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 647
  def _reduce_165( val, _values, result )
    result = ast AST::ResourceParam, :param => val[0], :value => val[2]
   result
  end
.,.,

 # reduce 166 omitted

 # reduce 167 omitted

 # reduce 168 omitted

 # reduce 169 omitted

 # reduce 170 omitted

 # reduce 171 omitted

 # reduce 172 omitted

module_eval <<'.,.,', 'grammar.ra', 658
  def _reduce_173( val, _values, result )
    result = ast AST::Default, :value => val[0][:value], :line => val[0][:line]
   result
  end
.,.,

 # reduce 174 omitted

module_eval <<'.,.,', 'grammar.ra', 661
  def _reduce_175( val, _values, result )
 result = [val[0][:value]]
   result
  end
.,.,

 # reduce 176 omitted

module_eval <<'.,.,', 'grammar.ra', 663
  def _reduce_177( val, _values, result )
 result = val[0] += val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 672
  def _reduce_178( val, _values, result )
    val[1].each do |file|
        import(file)
    end

    result = AST::ASTArray.new(:children => [])
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 683
  def _reduce_179( val, _values, result )
    @lexer.commentpop
    newdefine classname(val[1]), :arguments => val[2], :code => val[4], :line => val[0][:line]
    @lexer.indefine = false
    result = nil

#}           | DEFINE NAME argumentlist parent LBRACE RBRACE {
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 688
  def _reduce_180( val, _values, result )
    @lexer.commentpop
    newdefine classname(val[1]), :arguments => val[2], :line => val[0][:line]
    @lexer.indefine = false
    result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 697
  def _reduce_181( val, _values, result )
    @lexer.commentpop
    # Our class gets defined in the parent namespace, not our own.
    @lexer.namepop
    newclass classname(val[1]), :arguments => val[2], :parent => val[3], :code => val[5], :line => val[0][:line]
    result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 703
  def _reduce_182( val, _values, result )
    @lexer.commentpop
    # Our class gets defined in the parent namespace, not our own.
    @lexer.namepop
    newclass classname(val[1]), :arguments => val[2], :parent => val[3], :line => val[0][:line]
    result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 709
  def _reduce_183( val, _values, result )
    @lexer.commentpop
    newnode val[1], :parent => val[2], :code => val[4], :line => val[0][:line]
    result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 713
  def _reduce_184( val, _values, result )
    @lexer.commentpop
    newnode val[1], :parent => val[2], :line => val[0][:line]
    result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 714
  def _reduce_185( val, _values, result )
 result = val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 716
  def _reduce_186( val, _values, result )
 result = val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 717
  def _reduce_187( val, _values, result )
 result = val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 718
  def _reduce_188( val, _values, result )
 result = "class"
   result
  end
.,.,

 # reduce 189 omitted

module_eval <<'.,.,', 'grammar.ra', 728
  def _reduce_190( val, _values, result )
    result = val[0]
    result = [result] unless result.is_a?(Array)
    result << val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 732
  def _reduce_191( val, _values, result )
    result = ast AST::HostName, :value => val[0]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 733
  def _reduce_192( val, _values, result )
 result = val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 734
  def _reduce_193( val, _values, result )
 result = val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 735
  def _reduce_194( val, _values, result )
 result = val[0][:value]
   result
  end
.,.,

 # reduce 195 omitted

module_eval <<'.,.,', 'grammar.ra', 741
  def _reduce_196( val, _values, result )
    result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 745
  def _reduce_197( val, _values, result )
    result = ast AST::ASTArray, :children => []
   result
  end
.,.,

 # reduce 198 omitted

module_eval <<'.,.,', 'grammar.ra', 750
  def _reduce_199( val, _values, result )
    result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 754
  def _reduce_200( val, _values, result )
    result = val[1]
    result = [result] unless result[0].is_a?(Array)
   result
  end
.,.,

 # reduce 201 omitted

module_eval <<'.,.,', 'grammar.ra', 761
  def _reduce_202( val, _values, result )
    result = val[0]
    result = [result] unless result[0].is_a?(Array)
    result << val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 766
  def _reduce_203( val, _values, result )
    Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
    result = [val[0][:value], val[2]]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 770
  def _reduce_204( val, _values, result )
    Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
    result = [val[0][:value]]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 772
  def _reduce_205( val, _values, result )
    result = [val[0][:value], val[2]]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 774
  def _reduce_206( val, _values, result )
    result = [val[0][:value]]
   result
  end
.,.,

 # reduce 207 omitted

module_eval <<'.,.,', 'grammar.ra', 779
  def _reduce_208( val, _values, result )
    result = val[1]
   result
  end
.,.,

 # reduce 209 omitted

module_eval <<'.,.,', 'grammar.ra', 784
  def _reduce_210( val, _values, result )
    result = val[1]
   result
  end
.,.,

 # reduce 211 omitted

 # reduce 212 omitted

module_eval <<'.,.,', 'grammar.ra', 790
  def _reduce_213( val, _values, result )
    result = ast AST::Variable, :value => val[0][:value], :line => val[0][:line]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 798
  def _reduce_214( val, _values, result )
    if val[1].instance_of?(AST::ASTArray)
        result = val[1]
    else
        result = ast AST::ASTArray, :children => [val[1]]
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 805
  def _reduce_215( val, _values, result )
    if val[1].instance_of?(AST::ASTArray)
        result = val[1]
    else
        result = ast AST::ASTArray, :children => [val[1]]
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 807
  def _reduce_216( val, _values, result )
    result = ast AST::ASTArray
   result
  end
.,.,

 # reduce 217 omitted

 # reduce 218 omitted

 # reduce 219 omitted

module_eval <<'.,.,', 'grammar.ra', 812
  def _reduce_220( val, _values, result )
 result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 817
  def _reduce_221( val, _values, result )
    result = ast AST::Regex, :value => val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 825
  def _reduce_222( val, _values, result )
    if val[1].instance_of?(AST::ASTHash)
        result = val[1]
    else
        result = ast AST::ASTHash, { :value => val[1] }
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 832
  def _reduce_223( val, _values, result )
    if val[1].instance_of?(AST::ASTHash)
        result = val[1]
    else
        result = ast AST::ASTHash, { :value => val[1] }
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 834
  def _reduce_224( val, _values, result )
    result = ast AST::ASTHash
   result
  end
.,.,

 # reduce 225 omitted

module_eval <<'.,.,', 'grammar.ra', 844
  def _reduce_226( val, _values, result )
    if val[0].instance_of?(AST::ASTHash)
        result = val[0].merge(val[2])
    else
        result = ast AST::ASTHash, :value => val[0]
        result.merge(val[2])
    end
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 848
  def _reduce_227( val, _values, result )
    result = ast AST::ASTHash, { :value => { val[0] => val[2] } }
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 849
  def _reduce_228( val, _values, result )
 result = val[0][:value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 850
  def _reduce_229( val, _values, result )
 result = val[0]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 855
  def _reduce_230( val, _values, result )
    result = ast AST::HashOrArrayAccess, :variable => val[0][:value], :key => val[2]
   result
  end
.,.,

 # reduce 231 omitted

module_eval <<'.,.,', 'grammar.ra', 860
  def _reduce_232( val, _values, result )
    result = ast AST::HashOrArrayAccess, :variable => val[0], :key => val[2]
   result
  end
.,.,

 def _reduce_none( val, _values, result )
  result
 end

    end   # class Parser

  end   # module Parser

end   # module Puppet
