#
# 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'
#require 'puppet/parser/interpreter'

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

Puppet[:typecheck] = true
Puppet[:paramcheck] = true


module Puppet

  module Parser

    class Parser < Racc::Parser

module_eval <<'..end grammar.ra modeval..ide7bdbd4a34', 'grammar.ra', 802

# 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..ide7bdbd4a34

##### racc 1.4.5 generates ###

racc_reduce_table = [
 0, 0, :racc_error,
 1, 63, :_reduce_1,
 1, 63, :_reduce_none,
 1, 64, :_reduce_none,
 2, 64, :_reduce_4,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 1, 66, :_reduce_none,
 4, 74, :_reduce_18,
 5, 74, :_reduce_19,
 3, 74, :_reduce_20,
 2, 74, :_reduce_21,
 1, 80, :_reduce_none,
 1, 80, :_reduce_none,
 3, 80, :_reduce_24,
 3, 80, :_reduce_25,
 1, 81, :_reduce_none,
 1, 81, :_reduce_none,
 1, 81, :_reduce_none,
 1, 81, :_reduce_none,
 1, 81, :_reduce_none,
 1, 81, :_reduce_none,
 1, 81, :_reduce_none,
 1, 81, :_reduce_33,
 5, 67, :_reduce_34,
 5, 67, :_reduce_35,
 5, 67, :_reduce_36,
 5, 78, :_reduce_37,
 2, 68, :_reduce_38,
 1, 97, :_reduce_39,
 2, 97, :_reduce_40,
 6, 69, :_reduce_41,
 2, 69, :_reduce_42,
 3, 98, :_reduce_43,
 3, 98, :_reduce_44,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 3, 99, :_reduce_47,
 1, 100, :_reduce_none,
 3, 100, :_reduce_49,
 1, 101, :_reduce_50,
 1, 101, :_reduce_51,
 3, 102, :_reduce_52,
 3, 102, :_reduce_53,
 1, 103, :_reduce_none,
 1, 103, :_reduce_none,
 4, 105, :_reduce_56,
 1, 91, :_reduce_none,
 3, 91, :_reduce_58,
 0, 92, :_reduce_none,
 1, 92, :_reduce_none,
 1, 107, :_reduce_61,
 1, 83, :_reduce_62,
 1, 85, :_reduce_63,
 1, 106, :_reduce_none,
 1, 106, :_reduce_none,
 1, 106, :_reduce_none,
 1, 106, :_reduce_none,
 1, 106, :_reduce_none,
 1, 106, :_reduce_none,
 3, 70, :_reduce_70,
 3, 79, :_reduce_71,
 0, 93, :_reduce_72,
 1, 93, :_reduce_73,
 3, 93, :_reduce_74,
 3, 110, :_reduce_75,
 3, 112, :_reduce_76,
 1, 113, :_reduce_none,
 1, 113, :_reduce_none,
 0, 96, :_reduce_79,
 1, 96, :_reduce_80,
 3, 96, :_reduce_81,
 1, 114, :_reduce_none,
 3, 114, :_reduce_83,
 1, 104, :_reduce_none,
 1, 104, :_reduce_none,
 1, 104, :_reduce_none,
 1, 104, :_reduce_none,
 1, 104, :_reduce_none,
 1, 104, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 1, 111, :_reduce_none,
 4, 87, :_reduce_100,
 3, 87, :_reduce_101,
 1, 89, :_reduce_102,
 1, 89, :_reduce_103,
 1, 86, :_reduce_104,
 4, 82, :_reduce_105,
 4, 82, :_reduce_106,
 6, 72, :_reduce_107,
 5, 72, :_reduce_108,
 0, 116, :_reduce_none,
 4, 116, :_reduce_110,
 3, 116, :_reduce_111,
 1, 109, :_reduce_none,
 3, 109, :_reduce_113,
 3, 109, :_reduce_114,
 3, 109, :_reduce_115,
 3, 109, :_reduce_116,
 3, 109, :_reduce_117,
 3, 109, :_reduce_118,
 3, 109, :_reduce_119,
 3, 109, :_reduce_120,
 2, 109, :_reduce_121,
 3, 109, :_reduce_122,
 3, 109, :_reduce_123,
 3, 109, :_reduce_124,
 3, 109, :_reduce_125,
 3, 109, :_reduce_126,
 3, 109, :_reduce_127,
 2, 109, :_reduce_128,
 3, 109, :_reduce_129,
 3, 109, :_reduce_130,
 3, 109, :_reduce_131,
 5, 71, :_reduce_132,
 1, 118, :_reduce_none,
 2, 118, :_reduce_134,
 5, 119, :_reduce_135,
 4, 119, :_reduce_136,
 1, 120, :_reduce_none,
 3, 120, :_reduce_138,
 3, 88, :_reduce_139,
 1, 122, :_reduce_none,
 4, 122, :_reduce_141,
 1, 124, :_reduce_none,
 3, 124, :_reduce_143,
 3, 123, :_reduce_144,
 1, 121, :_reduce_none,
 1, 121, :_reduce_none,
 1, 121, :_reduce_none,
 1, 121, :_reduce_none,
 1, 121, :_reduce_none,
 1, 121, :_reduce_none,
 1, 121, :_reduce_none,
 1, 121, :_reduce_152,
 1, 121, :_reduce_none,
 1, 125, :_reduce_154,
 3, 125, :_reduce_155,
 2, 73, :_reduce_156,
 6, 75, :_reduce_157,
 5, 75, :_reduce_158,
 6, 76, :_reduce_159,
 5, 76, :_reduce_160,
 6, 77, :_reduce_161,
 5, 77, :_reduce_162,
 1, 95, :_reduce_163,
 1, 90, :_reduce_164,
 1, 90, :_reduce_165,
 1, 128, :_reduce_none,
 3, 128, :_reduce_167,
 1, 130, :_reduce_168,
 1, 131, :_reduce_169,
 1, 131, :_reduce_170,
 1, 131, :_reduce_171,
 1, 131, :_reduce_172,
 1, 131, :_reduce_none,
 0, 65, :_reduce_174,
 0, 132, :_reduce_175,
 1, 126, :_reduce_none,
 3, 126, :_reduce_177,
 3, 126, :_reduce_178,
 1, 133, :_reduce_none,
 3, 133, :_reduce_180,
 3, 134, :_reduce_181,
 1, 134, :_reduce_182,
 3, 134, :_reduce_183,
 1, 134, :_reduce_184,
 1, 129, :_reduce_none,
 2, 129, :_reduce_186,
 1, 127, :_reduce_none,
 2, 127, :_reduce_188,
 1, 135, :_reduce_none,
 1, 135, :_reduce_none,
 1, 84, :_reduce_191,
 3, 108, :_reduce_192,
 4, 108, :_reduce_193,
 2, 108, :_reduce_194,
 1, 115, :_reduce_none,
 1, 115, :_reduce_none,
 0, 94, :_reduce_none,
 1, 94, :_reduce_198,
 1, 117, :_reduce_199 ]

racc_reduce_n = 200

racc_shift_n = 329

racc_action_table = [
    77,    56,    59,    56,    59,    54,   285,   187,   165,   126,
   158,   159,   160,   144,   284,    56,    59,   152,   156,    48,
    73,    77,    56,    59,   170,   138,    90,    77,    56,    59,
    91,    48,   249,    48,   123,    58,    61,    58,   201,    68,
   248,    68,   312,    92,    55,    78,   111,    73,    63,   194,
    63,    84,    48,    77,    56,    59,    58,    61,    48,    41,
    68,    41,    58,    61,   187,    55,    68,    93,   261,    63,
   247,    55,    78,    38,    39,    63,  -146,   138,    84,  -151,
    41,   287,    38,    39,    48,   253,    41,   301,    58,   201,
   257,   264,    68,    77,    56,    59,   137,   111,   245,   246,
   300,    63,   165,    77,    56,    59,   245,   246,    40,   277,
   253,    44,    41,    48,    36,   257,   163,    40,   170,   165,
    44,     4,     8,    73,    48,    54,    56,    59,    58,    61,
    48,    41,    68,   165,    48,   170,    36,    55,    58,    61,
    41,    63,    68,     4,    48,    51,    36,    55,    78,   170,
   207,    63,    41,     4,    84,   163,    48,    77,    56,    59,
    58,    61,    41,   206,    68,    38,    39,    36,    52,    55,
   183,   208,  -148,    63,     4,   210,   211,    73,    77,    56,
    59,   160,   144,  -145,    41,   270,   152,   156,    48,   160,
   144,   130,    58,    61,   152,   156,    68,    77,    56,    59,
    40,    55,    78,    44,   272,    63,   250,   138,    84,    48,
   245,   246,  -147,    58,    61,  -149,    41,    68,    77,    56,
    59,  -150,    55,    41,   161,   217,    63,   278,    48,   210,
   218,   258,    58,    61,   163,   241,    68,    41,    73,   210,
   211,    55,    33,    34,    41,    63,    56,    59,   175,    48,
    77,    56,    59,    58,    61,  -146,    41,    68,   210,   311,
   152,   156,    55,    78,   152,   156,    63,  -148,    90,    84,
  -145,    77,    56,    59,   176,   137,   177,    41,   280,  -163,
    41,    48,   178,  -149,  -147,    58,    61,    91,   286,    68,
   184,  -147,   132,   130,    55,   196,   298,   299,    63,   186,
   302,   189,    48,    77,    56,    59,    58,    61,   105,    41,
    68,   189,  -145,  -148,   189,    55,  -150,   280,   314,    63,
    99,  -147,  -145,    73,    77,    56,    59,  -148,  -146,  -150,
    41,   316,   190,  -146,    48,    97,   130,    47,    58,    61,
   322,  -198,    68,    37,   196,   187,   192,    55,    78,   nil,
   nil,    63,   nil,   nil,    84,    48,    77,    56,    59,    58,
    61,   nil,    41,    68,   nil,   nil,   nil,   nil,    55,   nil,
   nil,   nil,    63,   nil,   nil,   nil,    73,    77,    56,    59,
   nil,   nil,   nil,    41,   nil,   nil,   nil,    48,   nil,   nil,
   nil,    58,    61,   nil,   nil,    68,   nil,    73,   nil,   nil,
    55,    78,   nil,   nil,    63,   nil,   nil,    84,    48,    77,
    56,    59,    58,    61,   nil,    41,    68,   nil,   nil,   nil,
   nil,    55,    78,   nil,   nil,    63,   nil,   nil,    84,    73,
    77,    56,    59,   nil,   nil,   nil,    41,   nil,   nil,   nil,
    48,   nil,   nil,   nil,    58,    61,   nil,   nil,    68,   nil,
    73,   nil,   nil,    55,    78,   nil,   nil,    63,   nil,   nil,
    84,    48,    77,    56,    59,    58,    61,   nil,    41,    68,
   nil,   nil,   nil,   nil,    55,    78,   nil,   nil,    63,   nil,
   nil,    84,   nil,    77,    56,    59,   nil,   nil,   nil,    41,
   nil,   nil,   nil,    48,   nil,   nil,   nil,    58,   113,   nil,
   nil,    68,   nil,    73,   nil,   nil,   111,   nil,   nil,   nil,
    63,   nil,   155,   nil,    48,   nil,   nil,   nil,    58,    61,
   146,    41,    68,    77,    56,    59,   141,    55,    78,   nil,
   nil,    63,   nil,   nil,    84,   nil,   nil,    77,    56,    59,
   nil,   nil,    41,   nil,    77,    56,    59,   nil,   158,   159,
   160,   144,   145,   147,    48,   152,   156,   nil,    58,    61,
   nil,   nil,    68,   nil,    73,   nil,   nil,    55,    48,   155,
   nil,    63,    58,    61,   nil,    48,    68,   146,   nil,    58,
    61,    55,    41,    68,   nil,    63,   nil,   nil,    55,    78,
   nil,   nil,    63,   nil,   nil,    84,    41,    77,    56,    59,
    56,    59,   nil,    41,   nil,   158,   159,   160,   144,   145,
   147,   nil,   152,   156,   nil,   nil,   nil,    73,    77,    56,
    59,   nil,   nil,   nil,    77,    56,    59,   nil,    48,   nil,
    48,   nil,    58,    61,    58,   201,    68,   nil,    68,   nil,
   nil,    55,    78,   111,    73,    63,   nil,    63,    84,    48,
    77,    56,    59,    58,    61,    48,    41,    68,    41,    58,
    61,   nil,    55,    68,   nil,   nil,    63,   nil,    55,    78,
    73,   nil,    63,   nil,   nil,    84,   nil,    41,   nil,   155,
   nil,    48,   nil,    41,   nil,    58,    61,   146,   nil,    68,
    77,    56,    59,   nil,    55,    78,   nil,   nil,    63,   nil,
   nil,    84,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    41,
    73,    77,    56,    59,   nil,   158,   159,   160,   144,   145,
   147,    48,   152,   156,   nil,    58,    61,   nil,   nil,    68,
   nil,    73,   nil,   nil,    55,    78,   nil,   nil,    63,   nil,
   nil,    84,    48,    77,    56,    59,    58,    61,   nil,    41,
    68,   nil,   nil,   nil,   nil,    55,    78,   nil,   nil,    63,
   nil,   nil,    84,    73,    77,    56,    59,   nil,   nil,   nil,
    41,   nil,   nil,   nil,    48,   nil,   nil,   nil,    58,    61,
   nil,   nil,    68,   nil,    73,   nil,   nil,    55,    78,   nil,
   nil,    63,   nil,   nil,    84,    48,    77,    56,    59,    58,
    61,   nil,    41,    68,   nil,   nil,   nil,   nil,    55,    78,
   nil,   nil,    63,   nil,   nil,    84,    73,   nil,    56,    59,
   nil,   nil,   nil,    41,    56,    59,   nil,    48,   nil,   nil,
   nil,    58,    61,   nil,   nil,    68,   nil,   nil,   133,   nil,
    55,    78,   nil,   nil,    63,   nil,   nil,    84,    48,    56,
    59,   nil,    58,    61,    48,    41,    68,   nil,    58,   201,
    52,    55,    68,    56,    59,    63,   nil,   111,   nil,   275,
   nil,    63,   nil,   nil,   nil,   nil,    41,   nil,   nil,    48,
   nil,   nil,    41,    58,    61,    56,    59,    68,   nil,   nil,
   nil,    52,    55,    48,   nil,   nil,    63,    58,   201,    56,
    59,    68,   nil,   nil,   nil,   214,   111,    41,   nil,   nil,
    63,   nil,   nil,   nil,   nil,    48,   nil,    56,    59,    58,
    61,    41,   nil,    68,   nil,   nil,   nil,    52,    55,    48,
   nil,   nil,    63,    58,   201,    56,    59,    68,   203,   nil,
   nil,   nil,   111,    41,   nil,   nil,    63,    48,   nil,    56,
    59,    58,    61,   nil,   nil,    68,   nil,    41,   nil,    52,
    55,   nil,   nil,   nil,    63,    48,   nil,    56,    59,    58,
   201,   282,   nil,    68,   nil,    41,   nil,   nil,   111,    48,
   nil,   nil,    63,    58,   201,   nil,   nil,    68,   nil,   nil,
   nil,   nil,   111,    41,   nil,   nil,    63,    48,   nil,   157,
   nil,    58,   201,   nil,   nil,    68,   nil,    41,   150,   155,
   111,   nil,   nil,   nil,    63,   nil,   nil,   146,   148,   151,
   154,   150,   155,   nil,   nil,    41,   nil,   nil,   nil,   nil,
   146,   148,   151,   154,   nil,   nil,   158,   159,   160,   144,
   nil,   149,   153,   152,   156,   158,   159,   160,   144,   145,
   147,   nil,   152,   156,   nil,   nil,   nil,   nil,   158,   159,
   160,   144,   145,   147,   nil,   152,   156,   150,   155,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   146,   148,   151,   154,
   150,   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   146,
   148,   151,   154,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   149,   153,   nil,   nil,   158,   159,   160,   144,   145,   147,
   nil,   152,   156,   149,   153,   nil,   nil,   158,   159,   160,
   144,   145,   147,   nil,   152,   156,   150,   155,   nil,   nil,
   nil,   nil,   nil,   nil,   216,   146,   148,   151,   154,   150,
   155,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   146,   148,
   151,   154,   nil,   155,   nil,   nil,   nil,   nil,   nil,   149,
   153,   146,   nil,   158,   159,   160,   144,   145,   147,   nil,
   152,   156,   nil,   153,   nil,   nil,   158,   159,   160,   144,
   145,   147,   281,   152,   156,   nil,   nil,   nil,   nil,   158,
   159,   160,   144,   145,   147,   nil,   152,   156,   nil,   nil,
   nil,   303,   nil,    18,   nil,    23,    26,   nil,     1,     5,
   nil,    12,   nil,    16,   nil,    20,   nil,    27,   nil,   nil,
     4,     8,    18,   305,    23,    26,   nil,     1,     5,   nil,
    12,   nil,    16,   nil,    20,   nil,    27,   nil,   nil,     4,
     8,   nil,   307,   nil,    18,   nil,    23,    26,   nil,     1,
     5,   nil,    12,   nil,    16,   nil,    20,   nil,    27,   nil,
   nil,     4,     8,    18,   320,    23,    26,   nil,     1,     5,
   nil,    12,   nil,    16,   nil,    20,   nil,    27,   nil,   nil,
     4,     8,   nil,   259,   nil,    18,   nil,    23,    26,   nil,
     1,     5,   nil,    12,   nil,    16,   nil,    20,   nil,    27,
   nil,   nil,     4,     8,    18,   232,    23,    26,   nil,     1,
     5,   nil,    12,   nil,    16,   nil,    20,   nil,    27,   nil,
   nil,     4,     8,   nil,   323,   nil,    18,   nil,    23,    26,
   nil,     1,     5,   nil,    12,   nil,    16,   nil,    20,   nil,
    27,   nil,   nil,     4,     8,    18,   325,    23,    26,   nil,
     1,     5,   nil,    12,   nil,    16,   nil,    20,   nil,    27,
   nil,   nil,     4,     8,   nil,   327,   nil,    18,   nil,    23,
    26,   nil,     1,     5,   nil,    12,   nil,    16,   nil,    20,
   nil,    27,   nil,   nil,     4,     8,    18,   267,    23,    26,
   nil,     1,     5,   nil,    12,   nil,    16,   nil,    20,   nil,
    27,   nil,   nil,     4,     8,   nil,   328,   nil,    18,   nil,
    23,    26,   nil,     1,     5,   nil,    12,   nil,    16,   nil,
    20,   nil,    27,   nil,   nil,     4,     8,    18,   nil,    23,
    26,   nil,     1,     5,   nil,    12,   nil,    16,   nil,    20,
   nil,    27,   nil,   nil,     4,     8,    18,   nil,    23,    26,
   nil,     1,     5,   nil,    12,   nil,    16,   nil,    20,   nil,
    27,   nil,   nil,     4,     8,    18,   nil,    23,    26,   nil,
     1,     5,   nil,    12,   nil,    16,   nil,    20,   nil,    27,
   nil,   nil,     4,     8,   158,   159,   160,   144,   145,   147,
   nil,   152,   156,   158,   159,   160,   144,   145,   147,   nil,
   152,   156 ]

racc_action_check = [
   155,   155,   155,   248,   248,    61,   240,   130,    93,    43,
   222,   222,   222,   222,   240,   176,   176,   222,   222,    93,
   155,    90,    90,    90,    93,    61,    21,    84,    84,    84,
    21,   155,   169,   248,    43,   155,   155,   248,   248,   155,
   169,   248,   280,    21,   155,   155,   248,    84,   155,   130,
   248,   155,    90,   186,   186,   186,    90,    90,    84,   155,
    90,   248,    84,    84,   113,    90,    84,    21,   185,    90,
   166,    84,    84,    12,    12,    84,    83,   113,    84,    82,
    90,   243,   123,   123,   186,   178,    84,   255,   186,   186,
   178,   188,   186,   187,   187,   187,   215,   186,   166,   166,
   255,   186,    92,   159,   159,   159,   243,   243,    12,   215,
   301,    12,   186,    92,    28,   301,   189,   123,    92,   244,
   123,    28,    28,   159,   187,    16,    16,    16,   187,   187,
   244,    12,   187,   165,   159,   244,     5,   187,   159,   159,
   123,   187,   159,     5,   165,    16,    26,   159,   159,   165,
   134,   159,   187,    26,   159,   190,    16,    18,    18,    18,
    16,    16,   159,   134,    16,   126,   126,   105,    16,    16,
   105,   136,    81,    16,   105,   136,   136,    18,    20,    20,
    20,   234,   234,    80,    16,   195,   234,   234,    18,   235,
   235,   196,    18,    18,   235,   235,    18,   194,   194,   194,
   126,    18,    18,   126,   197,    18,   174,   201,    18,    20,
   174,   174,    76,    20,    20,    72,    18,    20,   144,   144,
   144,    71,    20,   126,    89,   140,    20,   218,   194,   140,
   140,   179,   194,   194,    91,   162,   194,    20,   144,   162,
   162,   194,     1,     1,   156,   194,    23,    23,    94,   144,
   302,   302,   302,   144,   144,    70,   194,   144,   274,   274,
   236,   236,   144,   144,   219,   219,   144,    67,    66,   144,
    64,   298,   298,   298,    96,    57,    97,   144,   232,    55,
   152,   302,    98,    88,    53,   302,   302,   101,   242,   302,
   106,   110,    49,    47,   302,   251,   253,   254,   302,   112,
   257,   114,   298,    78,    78,    78,   298,   298,    35,   302,
   298,   266,   115,   117,   164,   298,    86,   281,   284,   298,
    27,   290,   292,    78,   272,   272,   272,   293,   294,   295,
   298,   297,   118,   119,    78,    25,   175,    15,    78,    78,
   310,   311,    78,     9,   131,   163,   124,    78,    78,   nil,
   nil,    78,   nil,   nil,    78,   272,   145,   145,   145,   272,
   272,   nil,    78,   272,   nil,   nil,   nil,   nil,   272,   nil,
   nil,   nil,   272,   nil,   nil,   nil,   145,    33,    33,    33,
   nil,   nil,   nil,   272,   nil,   nil,   nil,   145,   nil,   nil,
   nil,   145,   145,   nil,   nil,   145,   nil,    33,   nil,   nil,
   145,   145,   nil,   nil,   145,   nil,   nil,   145,    33,    34,
    34,    34,    33,    33,   nil,   145,    33,   nil,   nil,   nil,
   nil,    33,    33,   nil,   nil,    33,   nil,   nil,    33,    34,
   146,   146,   146,   nil,   nil,   nil,    33,   nil,   nil,   nil,
    34,   nil,   nil,   nil,    34,    34,   nil,   nil,    34,   nil,
   146,   nil,   nil,    34,    34,   nil,   nil,    34,   nil,   nil,
    34,   146,    37,    37,    37,   146,   146,   nil,    34,   146,
   nil,   nil,   nil,   nil,   146,   146,   nil,   nil,   146,   nil,
   nil,   146,   nil,   147,   147,   147,   nil,   nil,   nil,   146,
   nil,   nil,   nil,    37,   nil,   nil,   nil,    37,    37,   nil,
   nil,    37,   nil,   147,   nil,   nil,    37,   nil,   nil,   nil,
    37,   nil,   223,   nil,   147,   nil,   nil,   nil,   147,   147,
   223,    37,   147,    77,    77,    77,    77,   147,   147,   nil,
   nil,   147,   nil,   nil,   147,   nil,   nil,   209,   209,   209,
   nil,   nil,   147,   nil,    73,    73,    73,   nil,   223,   223,
   223,   223,   223,   223,    77,   223,   223,   nil,    77,    77,
   nil,   nil,    77,   nil,    73,   nil,   nil,    77,   209,   226,
   nil,    77,   209,   209,   nil,    73,   209,   226,   nil,    73,
    73,   209,    77,    73,   nil,   209,   nil,   nil,    73,    73,
   nil,   nil,    73,   nil,   nil,    73,   209,   158,   158,   158,
   203,   203,   nil,    73,   nil,   226,   226,   226,   226,   226,
   226,   nil,   226,   226,   nil,   nil,   nil,   158,    54,    54,
    54,   nil,   nil,   nil,   148,   148,   148,   nil,   158,   nil,
   203,   nil,   158,   158,   203,   203,   158,   nil,   203,   nil,
   nil,   158,   158,   203,   148,   158,   nil,   203,   158,    54,
   149,   149,   149,    54,    54,   148,   158,    54,   203,   148,
   148,   nil,    54,   148,   nil,   nil,    54,   nil,   148,   148,
   149,   nil,   148,   nil,   nil,   148,   nil,    54,   nil,   229,
   nil,   149,   nil,   148,   nil,   149,   149,   229,   nil,   149,
   150,   150,   150,   nil,   149,   149,   nil,   nil,   149,   nil,
   nil,   149,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   149,
   150,   151,   151,   151,   nil,   229,   229,   229,   229,   229,
   229,   150,   229,   229,   nil,   150,   150,   nil,   nil,   150,
   nil,   151,   nil,   nil,   150,   150,   nil,   nil,   150,   nil,
   nil,   150,   151,   153,   153,   153,   151,   151,   nil,   150,
   151,   nil,   nil,   nil,   nil,   151,   151,   nil,   nil,   151,
   nil,   nil,   151,   153,   154,   154,   154,   nil,   nil,   nil,
   151,   nil,   nil,   nil,   153,   nil,   nil,   nil,   153,   153,
   nil,   nil,   153,   nil,   154,   nil,   nil,   153,   153,   nil,
   nil,   153,   nil,   nil,   153,   154,   160,   160,   160,   154,
   154,   nil,   153,   154,   nil,   nil,   nil,   nil,   154,   154,
   nil,   nil,   154,   nil,   nil,   154,   160,   nil,    51,    51,
   nil,   nil,   nil,   154,   249,   249,   nil,   160,   nil,   nil,
   nil,   160,   160,   nil,   nil,   160,   nil,   nil,    51,   nil,
   160,   160,   nil,   nil,   160,   nil,   nil,   160,    51,   207,
   207,   nil,    51,    51,   249,   160,    51,   nil,   249,   249,
    51,    51,   249,   285,   285,    51,   nil,   249,   nil,   207,
   nil,   249,   nil,   nil,   nil,   nil,    51,   nil,   nil,   207,
   nil,   nil,   249,   207,   207,   138,   138,   207,   nil,   nil,
   nil,   207,   207,   285,   nil,   nil,   207,   285,   285,   309,
   309,   285,   nil,   nil,   nil,   138,   285,   207,   nil,   nil,
   285,   nil,   nil,   nil,   nil,   138,   nil,   137,   137,   138,
   138,   285,   nil,   138,   nil,   nil,   nil,   138,   138,   309,
   nil,   nil,   138,   309,   309,   132,   132,   309,   132,   nil,
   nil,   nil,   309,   138,   nil,   nil,   309,   137,   nil,   161,
   161,   137,   137,   nil,   nil,   137,   nil,   309,   nil,   137,
   137,   nil,   nil,   nil,   137,   132,   nil,   238,   238,   132,
   132,   238,   nil,   132,   nil,   137,   nil,   nil,   132,   161,
   nil,   nil,   132,   161,   161,   nil,   nil,   161,   nil,   nil,
   nil,   nil,   161,   132,   nil,   nil,   161,   238,   nil,    87,
   nil,   238,   238,   nil,   nil,   238,   nil,   161,    87,    87,
   238,   nil,   nil,   nil,   238,   nil,   nil,    87,    87,    87,
    87,   228,   228,   nil,   nil,   238,   nil,   nil,   nil,   nil,
   228,   228,   228,   228,   nil,   nil,   220,   220,   220,   220,
   nil,    87,    87,   220,   220,    87,    87,    87,    87,    87,
    87,   nil,    87,    87,   nil,   nil,   nil,   nil,   228,   228,
   228,   228,   228,   228,   nil,   228,   228,   103,   103,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   103,   103,   103,   103,
   104,   104,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   104,
   104,   104,   104,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   103,   103,   nil,   nil,   103,   103,   103,   103,   103,   103,
   nil,   103,   103,   104,   104,   nil,   nil,   104,   104,   104,
   104,   104,   104,   nil,   104,   104,   139,   139,   nil,   nil,
   nil,   nil,   nil,   nil,   139,   139,   139,   139,   139,   224,
   224,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   224,   224,
   224,   224,   nil,   225,   nil,   nil,   nil,   nil,   nil,   139,
   139,   225,   nil,   139,   139,   139,   139,   139,   139,   nil,
   139,   139,   nil,   224,   nil,   nil,   224,   224,   224,   224,
   224,   224,   233,   224,   224,   nil,   nil,   nil,   nil,   225,
   225,   225,   225,   225,   225,   nil,   225,   225,   nil,   nil,
   nil,   258,   nil,   233,   nil,   233,   233,   nil,   233,   233,
   nil,   233,   nil,   233,   nil,   233,   nil,   233,   nil,   nil,
   233,   233,   258,   260,   258,   258,   nil,   258,   258,   nil,
   258,   nil,   258,   nil,   258,   nil,   258,   nil,   nil,   258,
   258,   nil,   268,   nil,   260,   nil,   260,   260,   nil,   260,
   260,   nil,   260,   nil,   260,   nil,   260,   nil,   260,   nil,
   nil,   260,   260,   268,   304,   268,   268,   nil,   268,   268,
   nil,   268,   nil,   268,   nil,   268,   nil,   268,   nil,   nil,
   268,   268,   nil,   184,   nil,   304,   nil,   304,   304,   nil,
   304,   304,   nil,   304,   nil,   304,   nil,   304,   nil,   304,
   nil,   nil,   304,   304,   184,   157,   184,   184,   nil,   184,
   184,   nil,   184,   nil,   184,   nil,   184,   nil,   184,   nil,
   nil,   184,   184,   nil,   312,   nil,   157,   nil,   157,   157,
   nil,   157,   157,   nil,   157,   nil,   157,   nil,   157,   nil,
   157,   nil,   nil,   157,   157,   312,   314,   312,   312,   nil,
   312,   312,   nil,   312,   nil,   312,   nil,   312,   nil,   312,
   nil,   nil,   312,   312,   nil,   324,   nil,   314,   nil,   314,
   314,   nil,   314,   314,   nil,   314,   nil,   314,   nil,   314,
   nil,   314,   nil,   nil,   314,   314,   324,   192,   324,   324,
   nil,   324,   324,   nil,   324,   nil,   324,   nil,   324,   nil,
   324,   nil,   nil,   324,   324,   nil,   326,   nil,   192,   nil,
   192,   192,   nil,   192,   192,   nil,   192,   nil,   192,   nil,
   192,   nil,   192,   nil,   nil,   192,   192,   326,   nil,   326,
   326,   nil,   326,   326,   nil,   326,   nil,   326,   nil,   326,
   nil,   326,   nil,   nil,   326,   326,     0,   nil,     0,     0,
   nil,     0,     0,   nil,     0,   nil,     0,   nil,     0,   nil,
     0,   nil,   nil,     0,     0,    30,   nil,    30,    30,   nil,
    30,    30,   nil,    30,   nil,    30,   nil,    30,   nil,    30,
   nil,   nil,    30,    30,   230,   230,   230,   230,   230,   230,
   nil,   230,   230,   221,   221,   221,   221,   221,   221,   nil,
   221,   221 ]

racc_action_pointer = [
  1418,   229,   nil,   nil,   nil,    98,   nil,   nil,   nil,   337,
   nil,   nil,    70,   nil,   nil,   331,   123,   nil,   155,   nil,
   176,    24,   nil,   243,   nil,   335,   108,   278,    76,   nil,
  1437,   nil,   nil,   375,   407,   273,   nil,   460,   nil,   nil,
   nil,   nil,   nil,    -1,   nil,   nil,   nil,   255,   nil,   271,
   nil,   815,   nil,   263,   616,   277,   nil,   265,   nil,   nil,
   nil,     3,   nil,   nil,   249,   nil,   266,   246,   nil,   nil,
   234,   200,   194,   542,   nil,   nil,   191,   521,   301,   nil,
   162,   151,    58,    55,    25,   nil,   295,   993,   262,   218,
    19,   196,    80,   -14,   242,   nil,   264,   276,   260,   nil,
   nil,   281,   nil,  1052,  1065,   129,   284,   nil,   nil,   nil,
   270,   nil,   260,    55,   291,   291,   nil,   292,   314,   312,
   nil,   nil,   nil,    79,   340,   nil,   162,   nil,   nil,   nil,
    -2,   334,   932,   nil,   140,   nil,   166,   914,   882,  1111,
   220,   nil,   nil,   nil,   216,   354,   428,   481,   622,   648,
   688,   709,   219,   741,   762,    -2,   183,  1298,   595,   101,
   794,   946,   230,   336,   304,   111,    50,   nil,   nil,    16,
   nil,   nil,   nil,   nil,   162,   298,    12,   nil,    52,   225,
   nil,   nil,   nil,   nil,  1276,    61,    51,    91,    84,    78,
   117,   nil,  1380,   nil,   195,   178,   153,   195,   nil,   nil,
   nil,   185,   nil,   597,   nil,   nil,   nil,   846,   nil,   535,
   nil,   nil,   nil,   nil,   nil,    86,   nil,   nil,   222,   205,
   984,  1441,   -42,   496,  1124,  1137,   553,   nil,  1006,   663,
  1432,   nil,   249,  1175,   127,   135,   201,   nil,   964,   nil,
    -4,   nil,   281,    58,    97,   nil,   nil,   nil,     0,   821,
   nil,   285,   nil,   283,   274,    77,   nil,   287,  1194,   nil,
  1216,   nil,   nil,   nil,   nil,   nil,   301,   nil,  1235,   nil,
   nil,   nil,   322,   nil,   249,   nil,   nil,   nil,   nil,   nil,
    36,   288,   nil,   nil,   312,   860,   nil,   nil,   nil,   nil,
   300,   nil,   301,   306,   307,   308,   nil,   324,   269,   nil,
   nil,    77,   248,   nil,  1257,   nil,   nil,   nil,   nil,   896,
   333,   334,  1317,   nil,  1339,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,  1358,   nil,  1399,   nil,   nil ]

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

racc_goto_table = [
    15,    21,   102,   197,    30,   116,   200,   114,    42,   256,
   188,   131,    50,    57,   121,    45,    62,    35,   239,   212,
    32,   166,   174,   279,    69,    25,   136,   195,   271,   101,
    15,    21,   237,   109,   291,   296,   309,   127,    98,   238,
   288,    94,   199,   185,   274,    69,    96,    50,   134,   140,
    67,    62,    72,   179,   106,   107,    43,   124,   112,    69,
   242,   164,   162,   125,   191,   254,   255,   100,   182,   nil,
   nil,   117,   313,   122,   197,   nil,   nil,   273,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,    67,   nil,    72,   nil,   212,
   nil,   nil,   nil,   nil,   243,   283,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   237,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   181,   180,    42,
   nil,    89,    42,   nil,   nil,   nil,   172,   172,   nil,   193,
   nil,   nil,   318,    50,    50,   215,   nil,   213,    62,   251,
    69,   nil,   nil,   nil,   nil,    69,    69,   297,   227,   nil,
   nil,   nil,   231,   nil,   262,   135,   315,    15,    21,   nil,
   266,   233,   306,   121,   nil,   127,   204,   nil,   122,    69,
   310,    67,    67,    72,    72,   nil,   nil,   nil,   135,   265,
   197,   nil,   109,   321,    15,    21,   127,   nil,   260,   nil,
   nil,   135,    15,    21,    69,   204,   268,   122,   nil,   172,
   nil,   nil,   nil,    50,   nil,   102,   nil,   213,   nil,   nil,
   nil,    69,   nil,   nil,    53,    69,   nil,    71,   nil,   nil,
   117,    95,   122,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
    64,   nil,   102,    15,    21,   110,   nil,   204,   120,   122,
   102,    67,   nil,    72,   289,   289,    69,   nil,   nil,    53,
   nil,   115,    71,   nil,   nil,   nil,    69,    69,    15,    21,
    15,    21,   304,   nil,   nil,    64,   nil,   nil,    15,    21,
   nil,   nil,   204,    70,   122,   nil,   102,   nil,   172,   nil,
   nil,   nil,   293,   293,   122,   122,   nil,   nil,   263,   nil,
   nil,   nil,   nil,    69,   119,   269,   102,   nil,   102,   nil,
   nil,   nil,   nil,   nil,    15,    21,   171,   171,    70,   nil,
   276,   nil,    15,    21,    15,    21,   324,    69,   326,   204,
   nil,   122,   nil,   nil,    15,    21,    15,    21,   nil,   nil,
   198,   nil,   nil,   120,   nil,    53,    53,   nil,    71,    71,
   nil,   nil,   nil,   204,   nil,   122,   202,   nil,   nil,   nil,
   nil,    64,    64,   nil,   nil,   nil,   nil,   nil,   nil,   198,
   nil,   nil,   120,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   308,   252,   202,   nil,   nil,   nil,   171,
   nil,   nil,   nil,   nil,   110,   nil,   nil,   120,   nil,   205,
   nil,   nil,   nil,   nil,    70,    70,   nil,   nil,   nil,   317,
   115,   198,   nil,   319,   120,    53,   nil,   nil,    71,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   202,   205,    87,
   nil,    64,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   103,   104,   198,   nil,   nil,   120,
   nil,   nil,   nil,   119,   nil,   nil,   290,   290,   nil,   295,
   295,   nil,   202,   nil,   nil,   nil,   nil,   nil,   171,   nil,
   205,   nil,   292,   292,    70,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   139,   nil,   nil,   nil,   nil,   142,
   nil,   nil,   nil,   198,   nil,   143,   120,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   205,   nil,   nil,   nil,   202,
   nil,   nil,   nil,   nil,   nil,   294,   294,   198,   nil,   nil,
   120,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   202,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   205,   nil,   nil,   219,   220,   221,   222,   223,
   224,   225,   226,   nil,   228,   229,   230,   nil,   nil,   234,
   235,   236,   nil,   nil,   nil,   nil,   205 ]

racc_goto_check = [
    20,    33,     4,    59,     2,    43,    61,    31,    55,    72,
    32,    34,    26,    18,    46,    68,    20,    28,    57,    19,
     3,    37,    37,    54,    45,     1,    52,    32,    51,    33,
    20,    33,    59,    26,    42,    42,    53,    48,    28,    56,
    38,    36,    60,    30,    62,    45,    63,    26,    18,    52,
    22,    20,    25,    64,    65,     3,    66,    67,    29,    45,
    32,    31,    52,     3,    69,    70,    71,     5,    73,   nil,
   nil,    22,    54,    25,    59,   nil,   nil,    61,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,    22,   nil,    25,   nil,    19,
   nil,   nil,   nil,   nil,    37,    57,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    59,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    28,     3,    55,
   nil,    49,    55,   nil,   nil,   nil,    22,    22,   nil,    68,
   nil,   nil,    72,    26,    26,    18,   nil,    20,    20,    34,
    45,   nil,   nil,   nil,   nil,    45,    45,    32,    55,   nil,
   nil,   nil,    55,   nil,    43,    49,    59,    20,    33,   nil,
    31,     2,    32,    46,   nil,    48,    22,   nil,    25,    45,
    32,    22,    22,    25,    25,   nil,   nil,   nil,    49,    48,
    59,   nil,    26,    61,    20,    33,    48,   nil,     2,   nil,
   nil,    49,    20,    33,    45,    22,     2,    25,   nil,    22,
   nil,   nil,   nil,    26,   nil,     4,   nil,    20,   nil,   nil,
   nil,    45,   nil,   nil,    27,    45,   nil,    24,   nil,   nil,
    22,    27,    25,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
    21,   nil,     4,    20,    33,    27,   nil,    22,    24,    25,
     4,    22,   nil,    25,    26,    26,    45,   nil,   nil,    27,
   nil,    21,    24,   nil,   nil,   nil,    45,    45,    20,    33,
    20,    33,     2,   nil,   nil,    21,   nil,   nil,    20,    33,
   nil,   nil,    22,    23,    25,   nil,     4,   nil,    22,   nil,
   nil,   nil,    22,    22,    25,    25,   nil,   nil,    49,   nil,
   nil,   nil,   nil,    45,    23,    49,     4,   nil,     4,   nil,
   nil,   nil,   nil,   nil,    20,    33,    21,    21,    23,   nil,
    49,   nil,    20,    33,    20,    33,     2,    45,     2,    22,
   nil,    25,   nil,   nil,    20,    33,    20,    33,   nil,   nil,
    27,   nil,   nil,    24,   nil,    27,    27,   nil,    24,    24,
   nil,   nil,   nil,    22,   nil,    25,    21,   nil,   nil,   nil,
   nil,    21,    21,   nil,   nil,   nil,   nil,   nil,   nil,    27,
   nil,   nil,    24,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,    49,    27,    21,   nil,   nil,   nil,    21,
   nil,   nil,   nil,   nil,    27,   nil,   nil,    24,   nil,    23,
   nil,   nil,   nil,   nil,    23,    23,   nil,   nil,   nil,    49,
    21,    27,   nil,    49,    24,    27,   nil,   nil,    24,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    21,    23,    47,
   nil,    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    47,    47,    27,   nil,   nil,    24,
   nil,   nil,   nil,    23,   nil,   nil,    27,    27,   nil,    24,
    24,   nil,    21,   nil,   nil,   nil,   nil,   nil,    21,   nil,
    23,   nil,    21,    21,    23,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    47,   nil,   nil,   nil,   nil,    47,
   nil,   nil,   nil,    27,   nil,    47,    24,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,    23,   nil,   nil,   nil,    21,
   nil,   nil,   nil,   nil,   nil,    23,    23,    27,   nil,   nil,
    24,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,    21,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    23,   nil,   nil,    47,    47,    47,    47,    47,
    47,    47,    47,   nil,    47,    47,    47,   nil,   nil,    47,
    47,    47,   nil,   nil,   nil,   nil,    23 ]

racc_goto_pointer = [
   nil,    25,     4,    20,   -28,    39,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    -3,  -118,
     0,   214,    34,   257,   201,    36,    -4,   198,    12,    21,
   -69,   -30,  -104,     1,   -36,   nil,    20,   -71,  -204,   nil,
   nil,   nil,  -214,   -32,   nil,     8,   -23,   401,   -10,   101,
   nil,  -168,   -28,  -238,  -209,    -4,  -122,  -143,   nil,  -129,
   -90,  -126,  -159,    23,   -45,    19,    44,    14,     3,   -59,
  -113,  -112,  -169,   -37 ]

racc_goto_default = [
   nil,   nil,   nil,   173,     3,     7,    11,    13,    14,    17,
    19,    22,    24,    29,    31,     2,     6,    10,   nil,    60,
    79,    80,    81,    83,    86,    88,    74,    76,     9,   nil,
   nil,   nil,   nil,    66,   nil,    28,   nil,   nil,   167,   244,
   168,   169,   nil,   nil,   118,    82,    85,   nil,   108,    75,
   128,   129,   nil,   209,   nil,    65,   nil,   nil,   240,    49,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    46,
   nil,   nil,   nil,   nil ]

racc_token_table = {
 false => 0,
 Object.new => 1,
 :LBRACK => 2,
 :DQTEXT => 3,
 :SQTEXT => 4,
 :RBRACK => 5,
 :LBRACE => 6,
 :RBRACE => 7,
 :SYMBOL => 8,
 :FARROW => 9,
 :COMMA => 10,
 :TRUE => 11,
 :FALSE => 12,
 :EQUALS => 13,
 :APPENDS => 14,
 :LESSEQUAL => 15,
 :NOTEQUAL => 16,
 :DOT => 17,
 :COLON => 18,
 :LLCOLLECT => 19,
 :RRCOLLECT => 20,
 :QMARK => 21,
 :LPAREN => 22,
 :RPAREN => 23,
 :ISEQUAL => 24,
 :GREATEREQUAL => 25,
 :GREATERTHAN => 26,
 :LESSTHAN => 27,
 :IF => 28,
 :ELSE => 29,
 :IMPORT => 30,
 :DEFINE => 31,
 :ELSIF => 32,
 :VARIABLE => 33,
 :CLASS => 34,
 :INHERITS => 35,
 :NODE => 36,
 :BOOLEAN => 37,
 :NAME => 38,
 :SEMIC => 39,
 :CASE => 40,
 :DEFAULT => 41,
 :AT => 42,
 :LCOLLECT => 43,
 :RCOLLECT => 44,
 :CLASSNAME => 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 }

racc_use_result_var = true

racc_nt_base = 62

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',
'LBRACK',
'DQTEXT',
'SQTEXT',
'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',
'$start',
'program',
'statements',
'nil',
'statement',
'resource',
'virtualresource',
'collection',
'assignment',
'casestatement',
'ifstatement',
'import',
'fstatement',
'definition',
'hostclass',
'nodedef',
'resourceoverride',
'append',
'funcvalues',
'namestring',
'resourceref',
'name',
'variable',
'type',
'boolean',
'funcrvalue',
'selector',
'quotedtext',
'classname',
'resourceinstances',
'endsemi',
'params',
'endcomma',
'classref',
'anyparams',
'at',
'collectrhand',
'collstatements',
'collstatement',
'colljoin',
'collexpr',
'colllval',
'simplervalue',
'resourceinst',
'resourcename',
'undef',
'array',
'expression',
'param',
'rvalue',
'addparam',
'anyparam',
'rvalues',
'comma',
'else',
'regex',
'caseopts',
'caseopt',
'casevalues',
'selectlhand',
'svalues',
'selectval',
'sintvalues',
'qtexts',
'argumentlist',
'classparent',
'hostnames',
'nodeparent',
'nodename',
'hostname',
'nothing',
'arguments',
'argument',
'classnameordefault']

Racc_debug_parser = false

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

 # reduce 0 omitted

module_eval <<'.,.,', 'grammar.ra', 44
  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', 60
  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

module_eval <<'.,.,', 'grammar.ra', 84
  def _reduce_18( 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', 92
  def _reduce_19( 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', 98
  def _reduce_20( 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', 106
  def _reduce_21( 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 22 omitted

 # reduce 23 omitted

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

module_eval <<'.,.,', 'grammar.ra', 123
  def _reduce_25( 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 26 omitted

 # reduce 27 omitted

 # reduce 28 omitted

 # reduce 29 omitted

 # reduce 30 omitted

 # reduce 31 omitted

 # reduce 32 omitted

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

module_eval <<'.,.,', 'grammar.ra', 158
  def _reduce_34( 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],
            :params => instance[1])
    }
   result
  end
.,.,

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

module_eval <<'.,.,', 'grammar.ra', 164
  def _reduce_36( val, _values, result )
    # a defaults setting for a type
    result = ast(AST::ResourceDefaults, :type => val[0], :params => val[2])
   result
  end
.,.,

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

module_eval <<'.,.,', 'grammar.ra', 197
  def _reduce_38( 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', 198
  def _reduce_39( val, _values, result )
 result = :virtual
   result
  end
.,.,

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

module_eval <<'.,.,', 'grammar.ra', 223
  def _reduce_41( 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
    args[:override] = val[3]
    result = ast AST::Collection, args
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 242
  def _reduce_42( 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', 252
  def _reduce_43( val, _values, result )
    if val[1]
        result = val[1]
        result.form = :virtual
    else
        result = :virtual
    end
   result
  end
.,.,

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

 # reduce 45 omitted

 # reduce 46 omitted

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

 # reduce 48 omitted

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

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

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

module_eval <<'.,.,', 'grammar.ra', 283
  def _reduce_52( 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', 288
  def _reduce_53( 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 54 omitted

 # reduce 55 omitted

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

 # reduce 57 omitted

module_eval <<'.,.,', 'grammar.ra', 305
  def _reduce_58( 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 59 omitted

 # reduce 60 omitted

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

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

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

 # reduce 64 omitted

 # reduce 65 omitted

 # reduce 66 omitted

 # reduce 67 omitted

 # reduce 68 omitted

 # reduce 69 omitted

module_eval <<'.,.,', 'grammar.ra', 336
  def _reduce_70( 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', 341
  def _reduce_71( 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', 346
  def _reduce_72( val, _values, result )
    result = ast AST::ASTArray
   result
  end
.,.,

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

module_eval <<'.,.,', 'grammar.ra', 355
  def _reduce_74( 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', 359
  def _reduce_75( val, _values, result )
    result = ast AST::ResourceParam, :param => val[0][:value], :line => val[0][:line], :value => val[2]
   result
  end
.,.,

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

 # reduce 77 omitted

 # reduce 78 omitted

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

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

module_eval <<'.,.,', 'grammar.ra', 381
  def _reduce_81( 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 82 omitted

module_eval <<'.,.,', 'grammar.ra', 390
  def _reduce_83( 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 84 omitted

 # reduce 85 omitted

 # reduce 86 omitted

 # reduce 87 omitted

 # reduce 88 omitted

 # reduce 89 omitted

 # reduce 90 omitted

 # reduce 91 omitted

 # reduce 92 omitted

 # reduce 93 omitted

 # reduce 94 omitted

 # reduce 95 omitted

 # reduce 96 omitted

 # reduce 97 omitted

 # reduce 98 omitted

 # reduce 99 omitted

module_eval <<'.,.,', 'grammar.ra', 417
  def _reduce_100( 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', 422
  def _reduce_101( 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', 426
  def _reduce_102( val, _values, result )
    result = ast AST::String, :value => val[0][:value], :line => val[0][:line]
   result
  end
.,.,

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

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

module_eval <<'.,.,', 'grammar.ra', 437
  def _reduce_105( 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', 439
  def _reduce_106( val, _values, result )
    result = ast AST::ResourceReference, :type => val[0], :title => val[2]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 453
  def _reduce_107( val, _values, result )
    @lexer.commentpop
    args = {
        :test => val[1],
        :statements => val[3]
    }

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

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

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

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

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

 # reduce 109 omitted

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

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

 # reduce 112 omitted

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

module_eval <<'.,.,', 'grammar.ra', 556
  def _reduce_132( 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 133 omitted

module_eval <<'.,.,', 'grammar.ra', 566
  def _reduce_134( 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', 571
  def _reduce_135( val, _values, result )
    @lexer.commentpop
    result = ast AST::CaseOpt, :value => val[0], :statements => val[3]
   result
  end
.,.,

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

 # reduce 137 omitted

module_eval <<'.,.,', 'grammar.ra', 587
  def _reduce_138( 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', 591
  def _reduce_139( val, _values, result )
    result = ast AST::Selector, :param => val[0], :values => val[2]
   result
  end
.,.,

 # reduce 140 omitted

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

 # reduce 142 omitted

module_eval <<'.,.,', 'grammar.ra', 607
  def _reduce_143( 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', 611
  def _reduce_144( val, _values, result )
    result = ast AST::ResourceParam, :param => val[0], :value => val[2]
   result
  end
.,.,

 # reduce 145 omitted

 # reduce 146 omitted

 # reduce 147 omitted

 # reduce 148 omitted

 # reduce 149 omitted

 # reduce 150 omitted

 # reduce 151 omitted

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

 # reduce 153 omitted

module_eval <<'.,.,', 'grammar.ra', 625
  def _reduce_154( val, _values, result )
 result = [val[0].value]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 629
  def _reduce_155( val, _values, result )
    results = val[0] << val[2].value
   result
  end
.,.,

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

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

module_eval <<'.,.,', 'grammar.ra', 648
  def _reduce_157( 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', 653
  def _reduce_158( 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', 662
  def _reduce_159( val, _values, result )
    @lexer.commentpop
    # Our class gets defined in the parent namespace, not our own.
    @lexer.namepop
    newclass classname(val[1]), :code => val[4], :parent => val[2], :line => val[0][:line]
    result = nil
   result
  end
.,.,

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

module_eval <<'.,.,', 'grammar.ra', 674
  def _reduce_161( 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', 678
  def _reduce_162( val, _values, result )
    @lexer.commentpop
    newnode val[1], :parent => val[2], :line => val[0][:line]
    result = nil
   result
  end
.,.,

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

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

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

 # reduce 166 omitted

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

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

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

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

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

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

 # reduce 173 omitted

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

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

 # reduce 176 omitted

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

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

 # reduce 179 omitted

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

module_eval <<'.,.,', 'grammar.ra', 731
  def _reduce_181( 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', 735
  def _reduce_182( val, _values, result )
    Puppet.warning addcontext("Deprecation notice: must now include '$' in prototype")
    result = [val[0][:value]]
   result
  end
.,.,

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

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

 # reduce 185 omitted

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

 # reduce 187 omitted

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

 # reduce 189 omitted

 # reduce 190 omitted

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

module_eval <<'.,.,', 'grammar.ra', 763
  def _reduce_192( 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', 770
  def _reduce_193( 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', 772
  def _reduce_194( val, _values, result )
    result = ast AST::ASTArray
   result
  end
.,.,

 # reduce 195 omitted

 # reduce 196 omitted

 # reduce 197 omitted

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

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

 def _reduce_none( val, _values, result )
  result
 end

    end   # class Parser

  end   # module Parser

end   # module Puppet
