#
# 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..idfef5d70c9f', 'grammar.ra', 638

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

##### racc 1.4.5 generates ###

racc_reduce_table = [
 0, 0, :racc_error,
 1, 52, :_reduce_1,
 1, 52, :_reduce_none,
 1, 53, :_reduce_none,
 2, 53, :_reduce_4,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 1, 55, :_reduce_none,
 4, 63, :_reduce_17,
 3, 63, :_reduce_18,
 2, 63, :_reduce_19,
 1, 68, :_reduce_none,
 1, 68, :_reduce_none,
 1, 69, :_reduce_none,
 3, 69, :_reduce_23,
 1, 71, :_reduce_none,
 1, 71, :_reduce_none,
 1, 71, :_reduce_none,
 1, 71, :_reduce_none,
 1, 71, :_reduce_none,
 1, 71, :_reduce_none,
 1, 71, :_reduce_none,
 1, 71, :_reduce_31,
 1, 70, :_reduce_none,
 3, 70, :_reduce_33,
 5, 56, :_reduce_34,
 5, 56, :_reduce_35,
 5, 56, :_reduce_36,
 5, 67, :_reduce_37,
 2, 57, :_reduce_38,
 1, 87, :_reduce_39,
 2, 87, :_reduce_40,
 2, 58, :_reduce_41,
 3, 88, :_reduce_42,
 3, 88, :_reduce_43,
 1, 89, :_reduce_none,
 1, 89, :_reduce_none,
 3, 89, :_reduce_46,
 1, 90, :_reduce_none,
 3, 90, :_reduce_48,
 1, 91, :_reduce_none,
 1, 91, :_reduce_none,
 3, 92, :_reduce_51,
 3, 92, :_reduce_52,
 1, 93, :_reduce_none,
 1, 93, :_reduce_none,
 4, 95, :_reduce_55,
 1, 81, :_reduce_none,
 3, 81, :_reduce_57,
 0, 82, :_reduce_none,
 1, 82, :_reduce_none,
 1, 97, :_reduce_60,
 1, 72, :_reduce_61,
 1, 74, :_reduce_62,
 1, 96, :_reduce_none,
 1, 96, :_reduce_none,
 1, 96, :_reduce_none,
 1, 96, :_reduce_none,
 1, 96, :_reduce_none,
 1, 96, :_reduce_none,
 3, 59, :_reduce_69,
 0, 83, :_reduce_70,
 1, 83, :_reduce_71,
 3, 83, :_reduce_72,
 3, 100, :_reduce_73,
 3, 101, :_reduce_74,
 1, 102, :_reduce_none,
 1, 102, :_reduce_none,
 0, 86, :_reduce_77,
 1, 86, :_reduce_78,
 3, 86, :_reduce_79,
 1, 103, :_reduce_none,
 3, 103, :_reduce_81,
 1, 94, :_reduce_none,
 1, 94, :_reduce_none,
 1, 94, :_reduce_none,
 1, 94, :_reduce_none,
 1, 94, :_reduce_none,
 1, 94, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 1, 99, :_reduce_none,
 4, 76, :_reduce_98,
 3, 76, :_reduce_99,
 1, 78, :_reduce_100,
 1, 78, :_reduce_101,
 1, 75, :_reduce_102,
 4, 79, :_reduce_103,
 4, 79, :_reduce_104,
 6, 61, :_reduce_105,
 0, 106, :_reduce_none,
 4, 106, :_reduce_107,
 1, 105, :_reduce_none,
 5, 60, :_reduce_109,
 1, 107, :_reduce_none,
 2, 107, :_reduce_111,
 5, 108, :_reduce_112,
 4, 108, :_reduce_113,
 1, 109, :_reduce_none,
 3, 109, :_reduce_115,
 3, 77, :_reduce_116,
 1, 111, :_reduce_none,
 4, 111, :_reduce_118,
 1, 113, :_reduce_none,
 3, 113, :_reduce_120,
 3, 112, :_reduce_121,
 1, 110, :_reduce_none,
 1, 110, :_reduce_none,
 1, 110, :_reduce_none,
 1, 110, :_reduce_none,
 1, 110, :_reduce_none,
 1, 110, :_reduce_none,
 1, 110, :_reduce_none,
 1, 110, :_reduce_129,
 1, 114, :_reduce_130,
 3, 114, :_reduce_131,
 2, 62, :_reduce_132,
 6, 64, :_reduce_133,
 5, 64, :_reduce_134,
 6, 65, :_reduce_135,
 5, 65, :_reduce_136,
 6, 66, :_reduce_137,
 5, 66, :_reduce_138,
 1, 85, :_reduce_none,
 1, 80, :_reduce_none,
 1, 80, :_reduce_none,
 1, 117, :_reduce_none,
 3, 117, :_reduce_143,
 1, 119, :_reduce_none,
 1, 119, :_reduce_none,
 1, 119, :_reduce_none,
 1, 119, :_reduce_none,
 0, 54, :_reduce_148,
 0, 120, :_reduce_149,
 1, 115, :_reduce_none,
 3, 115, :_reduce_151,
 3, 115, :_reduce_152,
 1, 121, :_reduce_none,
 3, 121, :_reduce_154,
 3, 122, :_reduce_155,
 1, 122, :_reduce_156,
 3, 122, :_reduce_157,
 1, 122, :_reduce_158,
 1, 118, :_reduce_none,
 2, 118, :_reduce_160,
 1, 116, :_reduce_none,
 2, 116, :_reduce_162,
 1, 123, :_reduce_none,
 1, 123, :_reduce_none,
 1, 73, :_reduce_165,
 3, 98, :_reduce_166,
 2, 98, :_reduce_167,
 1, 104, :_reduce_none,
 1, 104, :_reduce_none,
 0, 84, :_reduce_none,
 1, 84, :_reduce_171 ]

racc_reduce_n = 172

racc_shift_n = 276

racc_action_table = [
    71,    51,    53,   184,   162,   102,    71,    51,    53,   132,
   149,     5,   209,    47,  -127,    87,    71,    51,    53,    88,
   208,    65,    71,    51,    53,   162,   144,    34,    35,    99,
    65,    89,   126,  -127,    50,    54,    65,   126,    59,  -123,
    50,    54,   207,    45,    59,   161,    65,    56,  -126,    45,
    50,    54,    65,    56,    59,    90,    50,    54,   185,    45,
    59,    36,   169,    56,    37,    45,    71,    51,    53,    56,
   204,   206,    47,    51,    53,   200,   149,    51,    53,    33,
   199,  -122,    71,    51,    53,   238,     1,    65,    71,    51,
    53,    67,   144,    34,    35,    87,    65,   237,   234,  -123,
    50,    54,    65,   200,    59,   233,    50,    54,   199,    45,
    59,   252,    65,    56,    43,    45,    50,    54,    65,    56,
    59,    33,    50,    54,   156,    45,    59,    36,     1,    56,
    37,    45,    71,    51,    53,    56,   204,   206,    71,    51,
    53,   149,   149,    34,    35,   188,   259,   196,    71,    51,
    53,  -125,    65,    65,    71,    51,    53,   144,   144,    51,
    53,   202,    65,   162,    33,   168,    50,    54,    65,   137,
    59,     1,    50,    54,   168,    45,    59,    36,    65,    56,
    37,    45,    50,   174,    65,    56,    59,  -122,    50,    54,
   165,   111,    59,  -125,  -122,    56,   127,    45,    71,    51,
    53,    56,    33,   211,    71,    51,    53,   204,   206,     1,
     5,   135,   218,   186,    71,    51,    53,   188,   189,   106,
   125,    51,    53,   221,   222,   231,   140,   140,    65,   225,
   126,  -124,    50,    54,    65,   228,    59,    47,    50,    54,
  -139,    45,    59,   123,    65,    56,   106,    45,    50,   112,
    65,    56,    59,  -124,    50,   174,   134,   111,    59,    51,
    53,    56,   164,   111,   239,    51,    53,    56,   240,   241,
   242,  -124,    96,   140,  -126,    51,    53,    93,   179,   168,
    91,    51,    53,   159,   181,   260,   262,    85,    65,   157,
    88,   133,    50,   174,    65,    41,    59,  -124,    50,    54,
   128,   111,    59,  -122,    65,    56,    43,    45,    50,   174,
    65,    56,    59,  -125,    50,    54,  -123,   111,    59,    51,
    53,    56,    43,    45,  -127,    51,    53,    56,   176,    40,
   269,  -171,   270,  -128,  -123,    51,    53,   152,  -125,   nil,
   nil,    51,    53,   nil,   nil,   nil,   nil,   nil,    65,   nil,
   nil,   nil,    50,   174,    65,   nil,    59,   nil,    50,   174,
    43,   111,    59,   nil,    65,    56,   nil,   111,    50,   174,
    65,    56,    59,   254,    50,   174,   nil,   111,    59,    51,
    53,    56,   nil,   111,   nil,    51,    53,    56,   nil,   nil,
   nil,   nil,   nil,    15,   nil,    19,    21,   nil,    28,     2,
   nil,     8,   nil,    13,   nil,    17,   nil,    22,    65,   nil,
     1,     5,    50,   174,    65,   264,    59,   nil,    50,   174,
   nil,   111,    59,   nil,   nil,    56,   nil,   111,   nil,   nil,
   nil,    56,   nil,   nil,   271,    15,   nil,    19,    21,   nil,
    28,     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,
   nil,   nil,     1,     5,    15,   212,    19,    21,   nil,    28,
     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,   nil,
   nil,     1,     5,   nil,   230,    15,   nil,    19,    21,   nil,
    28,     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,
   nil,   nil,     1,     5,    15,   253,    19,    21,   nil,    28,
     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,   nil,
   nil,     1,     5,   nil,   214,    15,   nil,    19,    21,   nil,
    28,     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,
   nil,   nil,     1,     5,    15,   274,    19,    21,   nil,    28,
     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,   nil,
   nil,     1,     5,   nil,   235,    15,   nil,    19,    21,   nil,
    28,     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,
   nil,   nil,     1,     5,    15,   275,    19,    21,   nil,    28,
     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,   nil,
   nil,     1,     5,   nil,   nil,    15,   nil,    19,    21,   nil,
    28,     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,
   nil,   nil,     1,     5,    15,   nil,    19,    21,   nil,    28,
     2,   nil,     8,   nil,    13,   nil,    17,   nil,    22,   nil,
   nil,     1,     5,    15,   nil,    19,    21,   nil,    28,     2,
   nil,     8,   nil,    13,   nil,    17,   nil,    22,   nil,   nil,
     1,     5,    15,   nil,    19,    21,   nil,    28,     2,   nil,
     8,   nil,    13,   nil,    17,   nil,    22,   nil,   nil,     1,
     5,    15,   nil,    19,    21,   nil,    28,     2,   nil,     8,
   nil,    13,   nil,    17,   nil,    22,   nil,   nil,     1,     5 ]

racc_action_check = [
    93,    93,    93,   127,   106,    38,    71,    71,    71,    71,
    90,   127,   146,    54,    78,    23,    87,    87,    87,    23,
   146,    90,   161,   161,   161,   112,    90,   102,   102,    38,
    93,    23,    54,    64,    93,    93,    71,   112,    93,    62,
    71,    71,   142,    93,    71,   106,    87,    93,    66,    71,
    87,    87,   161,    71,    87,    23,   161,   161,   129,    87,
   161,   102,   119,    87,   102,   161,   240,   240,   240,   161,
   142,   142,    13,    13,    13,   238,   149,   135,   135,     2,
   238,    74,    15,    15,    15,   197,     2,   149,    17,    17,
    17,    13,   149,    99,    99,    61,   240,   197,   194,   118,
   240,   240,    13,   137,   240,   194,    13,    13,   137,   240,
    13,   210,    15,   240,    13,    13,    15,    15,    17,    13,
    15,    96,    17,    17,    96,    15,    17,    99,    96,    15,
    99,    17,   239,   239,   239,    17,   210,   210,   162,   162,
   162,    89,   205,     8,     8,   227,   227,   136,   165,   165,
   165,   116,    89,   205,    47,    47,    47,    89,   205,    19,
    19,   139,   239,   140,    21,   141,   239,   239,   162,    84,
   239,    21,   162,   162,   115,   239,   162,     8,   165,   239,
     8,   162,   165,   165,    47,   162,   165,   114,    47,    47,
   113,   165,    47,    60,    58,   165,    55,    47,   225,   225,
   225,    47,    29,   151,   187,   187,   187,   151,   151,    29,
    29,    83,   163,   131,    41,    41,    41,   131,   131,   164,
    52,   192,   192,   166,   167,   192,   168,   169,   225,   170,
   174,    46,   225,   225,   187,   182,   225,   184,   187,   187,
    45,   225,   187,    42,    41,   225,    40,   187,    41,    41,
   192,   187,    41,   110,   192,   192,    81,    41,   192,   208,
   208,    41,   107,   192,   199,   126,   126,   192,   200,   201,
   203,    70,    32,    88,    79,   209,   209,    28,   124,   224,
    25,    67,    67,   100,   126,   230,   233,    22,   208,    97,
    95,    73,   208,   208,   126,    11,   208,   245,   126,   126,
    67,   208,   126,   246,   209,   208,   126,   126,   209,   209,
    67,   126,   209,   248,    67,    67,   249,   209,    67,   125,
   125,   209,    67,    67,   250,   123,   123,    67,   123,     9,
   258,   259,   260,    77,    76,   176,   176,    91,    75,   nil,
   nil,   134,   134,   nil,   nil,   nil,   nil,   nil,   125,   nil,
   nil,   nil,   125,   125,   123,   nil,   125,   nil,   123,   123,
   125,   125,   123,   nil,   176,   125,   nil,   123,   176,   176,
   134,   123,   176,   215,   134,   134,   nil,   176,   134,   234,
   234,   176,   nil,   134,   nil,   257,   257,   134,   nil,   nil,
   nil,   nil,   nil,   215,   nil,   215,   215,   nil,   215,   215,
   nil,   215,   nil,   215,   nil,   215,   nil,   215,   234,   nil,
   215,   215,   234,   234,   257,   236,   234,   nil,   257,   257,
   nil,   234,   257,   nil,   nil,   234,   nil,   257,   nil,   nil,
   nil,   257,   nil,   nil,   262,   236,   nil,   236,   236,   nil,
   236,   236,   nil,   236,   nil,   236,   nil,   236,   nil,   236,
   nil,   nil,   236,   236,   262,   157,   262,   262,   nil,   262,
   262,   nil,   262,   nil,   262,   nil,   262,   nil,   262,   nil,
   nil,   262,   262,   nil,   190,   157,   nil,   157,   157,   nil,
   157,   157,   nil,   157,   nil,   157,   nil,   157,   nil,   157,
   nil,   nil,   157,   157,   190,   213,   190,   190,   nil,   190,
   190,   nil,   190,   nil,   190,   nil,   190,   nil,   190,   nil,
   nil,   190,   190,   nil,   159,   213,   nil,   213,   213,   nil,
   213,   213,   nil,   213,   nil,   213,   nil,   213,   nil,   213,
   nil,   nil,   213,   213,   159,   272,   159,   159,   nil,   159,
   159,   nil,   159,   nil,   159,   nil,   159,   nil,   159,   nil,
   nil,   159,   159,   nil,   196,   272,   nil,   272,   272,   nil,
   272,   272,   nil,   272,   nil,   272,   nil,   272,   nil,   272,
   nil,   nil,   272,   272,   196,   273,   196,   196,   nil,   196,
   196,   nil,   196,   nil,   196,   nil,   196,   nil,   196,   nil,
   nil,   196,   196,   nil,   nil,   273,   nil,   273,   273,   nil,
   273,   273,   nil,   273,   nil,   273,   nil,   273,   nil,   273,
   nil,   nil,   273,   273,   133,   nil,   133,   133,   nil,   133,
   133,   nil,   133,   nil,   133,   nil,   133,   nil,   133,   nil,
   nil,   133,   133,   270,   nil,   270,   270,   nil,   270,   270,
   nil,   270,   nil,   270,   nil,   270,   nil,   270,   nil,   nil,
   270,   270,    27,   nil,    27,    27,   nil,    27,    27,   nil,
    27,   nil,    27,   nil,    27,   nil,    27,   nil,   nil,    27,
    27,     0,   nil,     0,     0,   nil,     0,     0,   nil,     0,
   nil,     0,   nil,     0,   nil,     0,   nil,   nil,     0,     0 ]

racc_action_pointer = [
   644,   nil,    42,   nil,   nil,   nil,   nil,   nil,   140,   323,
   nil,   289,   nil,    70,   nil,    80,   nil,    86,   nil,   156,
   nil,   127,   246,    13,   nil,   280,   nil,   625,   264,   165,
   nil,   nil,   238,   nil,   nil,   nil,   nil,   nil,    -5,   nil,
   209,   212,   223,   nil,   nil,   238,   211,   152,   nil,   nil,
   nil,   nil,   210,   nil,    11,   186,   nil,   nil,   174,   nil,
   173,    93,    19,   nil,    13,   nil,    28,   278,   nil,   nil,
   251,     4,   nil,   285,    61,   318,   314,   313,    -6,   254,
   nil,   250,   nil,   201,   148,   nil,   nil,    14,   236,   120,
   -11,   337,   nil,    -2,   nil,   284,    84,   283,   nil,    90,
   277,   nil,    24,   nil,   nil,   nil,    -5,   252,   nil,   nil,
   233,   nil,    16,   152,   167,   164,   131,   nil,    79,    45,
   nil,   nil,   nil,   322,   273,   316,   262,   -34,   nil,    36,
   nil,   208,   nil,   587,   338,    74,   141,    71,   nil,   156,
   154,   155,    23,   nil,   nil,   nil,    -3,   nil,   nil,    55,
   nil,   160,   nil,   nil,   nil,   nil,   nil,   448,   nil,   507,
   nil,    20,   136,   205,   182,   146,   216,   217,   189,   190,
   220,   nil,   nil,   nil,   209,   nil,   332,   nil,   nil,   nil,
   nil,   nil,   213,   nil,   235,   nil,   nil,   202,   nil,   nil,
   467,   nil,   218,   nil,    88,   nil,   547,    75,   nil,   251,
   255,   247,   nil,   263,   nil,   121,   nil,   nil,   256,   272,
    89,   nil,   nil,   488,   nil,   366,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   269,   196,   nil,   136,   nil,   nil,
   257,   nil,   nil,   280,   376,   nil,   408,   nil,    43,   130,
    64,   nil,   nil,   nil,   nil,   277,   283,   nil,   293,   296,
   304,   nil,   nil,   nil,   nil,   nil,   nil,   382,   323,   324,
   326,   nil,   427,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   606,   nil,   528,   568,   nil,   nil ]

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

racc_goto_table = [
    23,    27,   122,    92,   173,   105,   198,    49,   117,    46,
   187,    39,    31,   170,    32,    82,   193,   103,   115,    25,
   142,   151,   243,    44,   191,   247,   251,    23,   131,    95,
    64,    86,    73,    84,   261,   192,   107,   110,   166,   172,
   113,   227,    83,    62,    98,   163,   136,    97,    38,   100,
   101,   108,   180,   167,   201,   197,    94,   226,   120,   154,
   nil,   129,   nil,    46,    66,   141,   170,   nil,   nil,   nil,
   nil,   118,   nil,   nil,   232,   nil,   nil,    44,   nil,   203,
   210,   nil,   191,   nil,    64,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   121,   nil,   nil,   nil,   138,    62,   nil,   nil,
   nil,   nil,   158,   nil,   nil,   160,   257,   265,   155,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    66,   171,
   182,    46,    46,   nil,   263,   nil,   122,   nil,   nil,   219,
   171,   195,   220,    23,   190,    44,    44,   nil,   268,   nil,
   120,   103,    64,    64,   nil,   223,   224,   170,   nil,   nil,
   nil,   120,   nil,   178,   nil,    62,    62,    23,   213,    23,
   215,   110,   255,   nil,   178,   258,    92,   nil,   nil,   nil,
    60,   nil,   171,   nil,   121,   108,    66,    66,   nil,   nil,
    58,   nil,   120,   nil,   nil,   121,   nil,   nil,   171,    92,
    23,    92,   nil,   120,   nil,   118,    23,   236,   116,   nil,
   nil,   nil,   nil,   nil,   245,   245,   178,   nil,   114,   120,
   nil,   nil,    92,    23,   nil,    23,   121,   nil,   244,   244,
   nil,   nil,   178,   nil,    60,   250,   250,   121,   nil,   nil,
   171,   nil,   nil,   nil,    58,   nil,    23,   nil,   249,   249,
   nil,   nil,   nil,   121,   nil,   nil,   148,   148,    92,    92,
   nil,   120,   nil,   171,   nil,   nil,   147,   147,   nil,   121,
   121,   nil,    23,   272,   178,   nil,   nil,   nil,   nil,   nil,
    23,   273,    23,    23,   120,    68,   nil,    81,   nil,    77,
   177,    77,    60,    60,    48,   121,    72,   178,    72,   nil,
   175,   177,    58,    58,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   175,   nil,   nil,   nil,   nil,   148,   124,   121,   nil,
   nil,    77,   nil,   nil,   nil,   nil,   147,   nil,    72,   nil,
   nil,   nil,   116,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   130,   114,   177,   nil,    77,   nil,   nil,    48,   nil,
   nil,   nil,    72,   175,   nil,   nil,   nil,   139,   nil,   177,
   nil,    77,   nil,   153,   nil,   nil,   nil,    77,    72,   175,
   nil,   nil,   148,   nil,    72,   248,   248,   nil,   nil,   nil,
   nil,   nil,   147,   nil,   nil,   246,   246,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   177,   nil,   nil,   nil,   nil,   nil,    48,   183,   nil,
   nil,   175,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   177,   nil,   nil,   nil,   nil,   nil,
   nil,   216,   217,   nil,   175,    77,    77,   nil,   nil,   nil,
   nil,   nil,    72,    72,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   229,   nil,   nil,
   nil,    77,   nil,   nil,   nil,   nil,   nil,   nil,    72,   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,   256,   nil,   nil,   nil,    77,
   nil,   nil,   nil,   nil,   nil,   nil,    72,   nil,   nil,   266,
   267,   nil,   nil,    77,    77,   nil,   nil,   nil,   nil,   nil,
    72,    72 ]

racc_goto_check = [
    34,     2,    47,     4,    61,    51,    71,    17,    44,    27,
    53,    68,     3,    59,    29,    27,    57,    49,    32,     1,
    38,    38,    39,    26,    59,    43,    43,    34,    52,    34,
    24,    37,    54,    29,    55,    56,    35,    27,    31,    60,
    30,    62,    63,    23,     3,    33,    64,    65,    66,    67,
     3,    26,    20,    33,    69,    70,     5,    61,    24,    72,
   nil,    17,   nil,    27,    25,    32,    59,   nil,   nil,   nil,
   nil,    23,   nil,   nil,    57,   nil,   nil,    26,   nil,    33,
    38,   nil,    59,   nil,    24,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    25,   nil,   nil,   nil,     3,    23,   nil,   nil,
   nil,   nil,    68,   nil,   nil,    68,    53,    71,    29,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    25,    27,
    17,    27,    27,   nil,    59,   nil,    47,   nil,   nil,    51,
    27,    27,    44,    34,     2,    26,    26,   nil,    61,   nil,
    24,    49,    24,    24,   nil,    49,    32,    59,   nil,   nil,
   nil,    24,   nil,    23,   nil,    23,    23,    34,     2,    34,
     2,    27,    33,   nil,    23,    33,     4,   nil,   nil,   nil,
    22,   nil,    27,   nil,    25,    26,    25,    25,   nil,   nil,
    21,   nil,    24,   nil,   nil,    25,   nil,   nil,    27,     4,
    34,     4,   nil,    24,   nil,    23,    34,     2,    22,   nil,
   nil,   nil,   nil,   nil,    27,    27,    23,   nil,    21,    24,
   nil,   nil,     4,    34,   nil,    34,    25,   nil,    26,    26,
   nil,   nil,    23,   nil,    22,    24,    24,    25,   nil,   nil,
    27,   nil,   nil,   nil,    21,   nil,    34,   nil,    23,    23,
   nil,   nil,   nil,    25,   nil,   nil,    22,    22,     4,     4,
   nil,    24,   nil,    27,   nil,   nil,    21,    21,   nil,    25,
    25,   nil,    34,     2,    23,   nil,   nil,   nil,   nil,   nil,
    34,     2,    34,    34,    24,    48,   nil,    48,   nil,    46,
    22,    46,    22,    22,    28,    25,    28,    23,    28,   nil,
    21,    22,    21,    21,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,    21,   nil,   nil,   nil,   nil,    22,    48,    25,   nil,
   nil,    46,   nil,   nil,   nil,   nil,    21,   nil,    28,   nil,
   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,    48,    21,    22,   nil,    46,   nil,   nil,    28,   nil,
   nil,   nil,    28,    21,   nil,   nil,   nil,    48,   nil,    22,
   nil,    46,   nil,    48,   nil,   nil,   nil,    46,    28,    21,
   nil,   nil,    22,   nil,    28,    22,    22,   nil,   nil,   nil,
   nil,   nil,    21,   nil,   nil,    21,    21,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,    22,   nil,   nil,   nil,   nil,   nil,    28,    28,   nil,
   nil,    21,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    22,   nil,   nil,   nil,   nil,   nil,
   nil,    48,    48,   nil,    21,    46,    46,   nil,   nil,   nil,
   nil,   nil,    28,    28,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    48,   nil,   nil,
   nil,    46,   nil,   nil,   nil,   nil,   nil,   nil,    28,   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,    48,   nil,   nil,   nil,    46,
   nil,   nil,   nil,   nil,   nil,   nil,    28,   nil,   nil,    48,
    48,   nil,   nil,    46,    46,   nil,   nil,   nil,   nil,   nil,
    28,    28 ]

racc_goto_pointer = [
   nil,    19,     1,    12,   -24,    27,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    -6,   nil,   nil,
   -73,   167,   157,    30,    17,    51,    10,    -4,   271,    12,
    -1,   -75,   -23,   -62,     0,    -4,   nil,     8,   -69,  -183,
   nil,   nil,   nil,  -183,   -33,   nil,   264,   -39,   260,   -23,
   nil,   -35,   -43,  -121,    17,  -196,   -99,  -118,   nil,  -110,
   -84,  -119,  -135,    23,   -38,    15,    40,    11,     3,   -83,
   -82,  -131,   -37 ]

racc_goto_default = [
   nil,   nil,   nil,   150,     4,     7,    10,    12,    14,    16,
    18,    20,    24,    26,    30,     3,     6,   nil,    52,    55,
    57,    74,    75,    76,    78,    79,    69,    70,     9,    11,
   nil,   nil,   nil,   nil,    61,   nil,    29,   nil,   nil,   143,
   205,   145,   146,   nil,   nil,   119,    63,    80,   nil,   109,
   104,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   194,    42,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   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,
 :LESSEQUAL => 14,
 :NOTEQUAL => 15,
 :DOT => 16,
 :COLON => 17,
 :LLCOLLECT => 18,
 :RRCOLLECT => 19,
 :QMARK => 20,
 :LPAREN => 21,
 :RPAREN => 22,
 :ISEQUAL => 23,
 :GREATEREQUAL => 24,
 :GREATERTHAN => 25,
 :LESSTHAN => 26,
 :IF => 27,
 :ELSE => 28,
 :IMPORT => 29,
 :DEFINE => 30,
 :ELSIF => 31,
 :VARIABLE => 32,
 :CLASS => 33,
 :INHERITS => 34,
 :NODE => 35,
 :BOOLEAN => 36,
 :NAME => 37,
 :SEMIC => 38,
 :CASE => 39,
 :DEFAULT => 40,
 :AT => 41,
 :LCOLLECT => 42,
 :RCOLLECT => 43,
 :CLASSNAME => 44,
 :CLASSREF => 45,
 :NOT => 46,
 :OR => 47,
 :AND => 48,
 :UNDEF => 49,
 :PARROW => 50 }

racc_use_result_var = true

racc_nt_base = 51

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

Racc_debug_parser = false

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

 # reduce 0 omitted

module_eval <<'.,.,', 'grammar.ra', 30
  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', 46
  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

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

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

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

 # reduce 20 omitted

 # reduce 21 omitted

 # reduce 22 omitted

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

 # reduce 24 omitted

 # reduce 25 omitted

 # reduce 26 omitted

 # reduce 27 omitted

 # reduce 28 omitted

 # reduce 29 omitted

 # reduce 30 omitted

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

 # reduce 32 omitted

module_eval <<'.,.,', 'grammar.ra', 115
  def _reduce_33( 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
.,.,

module_eval <<'.,.,', 'grammar.ra', 136
  def _reduce_34( val, _values, result )
    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', 139
  def _reduce_35( val, _values, result )
    # This is a deprecated syntax.
    error "All resource specifications require names"
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 142
  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', 147
  def _reduce_37( val, _values, result )
    result = ast AST::ResourceOverride, :object => val[0], :params => val[2]
   result
  end
.,.,

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

    if (type == :exported and ! Puppet[:storeconfigs]) and ! Puppet[:parseonly]
        error "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', 175
  def _reduce_39( val, _values, result )
 result = :virtual
   result
  end
.,.,

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

module_eval <<'.,.,', 'grammar.ra', 199
  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]
        error "You cannot collect exported resources without storeconfigs being set"
    end
    result = ast AST::Collection, args
   result
  end
.,.,

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

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

 # reduce 44 omitted

 # reduce 45 omitted

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

 # reduce 47 omitted

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

 # reduce 49 omitted

 # reduce 50 omitted

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

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

 # reduce 53 omitted

 # reduce 54 omitted

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

 # reduce 56 omitted

module_eval <<'.,.,', 'grammar.ra', 261
  def _reduce_57( 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 58 omitted

 # reduce 59 omitted

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

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

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

 # reduce 63 omitted

 # reduce 64 omitted

 # reduce 65 omitted

 # reduce 66 omitted

 # reduce 67 omitted

 # reduce 68 omitted

module_eval <<'.,.,', 'grammar.ra', 292
  def _reduce_69( val, _values, result )
    if val[0] =~ /::/
        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]
    result = ast AST::VarDef, :name => variable, :value => val[2]
   result
  end
.,.,

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

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

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

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

 # reduce 75 omitted

 # reduce 76 omitted

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

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

module_eval <<'.,.,', 'grammar.ra', 332
  def _reduce_79( 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 80 omitted

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

 # reduce 83 omitted

 # reduce 84 omitted

 # reduce 85 omitted

 # reduce 86 omitted

 # reduce 87 omitted

 # reduce 88 omitted

 # reduce 89 omitted

 # reduce 90 omitted

 # reduce 91 omitted

 # reduce 92 omitted

 # reduce 93 omitted

 # reduce 94 omitted

 # reduce 95 omitted

 # reduce 96 omitted

 # reduce 97 omitted

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

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

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

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

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

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

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

module_eval <<'.,.,', 'grammar.ra', 403
  def _reduce_105( val, _values, result )
    args = {
        :test => val[1],
        :statements => val[3]
    }

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

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

 # reduce 106 omitted

module_eval <<'.,.,', 'grammar.ra', 408
  def _reduce_107( val, _values, result )
    result = ast AST::Else, :statements => val[2]
   result
  end
.,.,

 # reduce 108 omitted

module_eval <<'.,.,', 'grammar.ra', 420
  def _reduce_109( val, _values, result )
    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 110 omitted

module_eval <<'.,.,', 'grammar.ra', 430
  def _reduce_111( 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', 434
  def _reduce_112( val, _values, result )
    result = ast AST::CaseOpt, :value => val[0], :statements => val[3]
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 439
  def _reduce_113( val, _values, result )
    result = ast(AST::CaseOpt,
        :value => val[0],
        :statements => ast(AST::ASTArray)
    )
   result
  end
.,.,

 # reduce 114 omitted

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

 # reduce 117 omitted

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

 # reduce 119 omitted

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

 # reduce 122 omitted

 # reduce 123 omitted

 # reduce 124 omitted

 # reduce 125 omitted

 # reduce 126 omitted

 # reduce 127 omitted

 # reduce 128 omitted

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

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

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

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

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

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

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

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

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

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

module_eval <<'.,.,', 'grammar.ra', 527
  def _reduce_137( val, _values, result )
    newnode val[1], :parent => val[2], :code => val[4]
    result = nil
   result
  end
.,.,

module_eval <<'.,.,', 'grammar.ra', 530
  def _reduce_138( val, _values, result )
    newnode val[1], :parent => val[2]
    result = nil
   result
  end
.,.,

 # reduce 139 omitted

 # reduce 140 omitted

 # reduce 141 omitted

 # reduce 142 omitted

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

 # reduce 144 omitted

 # reduce 145 omitted

 # reduce 146 omitted

 # reduce 147 omitted

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

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

 # reduce 150 omitted

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

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

 # reduce 153 omitted

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

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

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

module_eval <<'.,.,', 'grammar.ra', 584
  def _reduce_157( val, _values, result )
    result = [val[0], val[2]]
   result
  end
.,.,

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

 # reduce 159 omitted

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

 # reduce 161 omitted

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

 # reduce 163 omitted

 # reduce 164 omitted

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

module_eval <<'.,.,', 'grammar.ra', 610
  def _reduce_166( 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', 612
  def _reduce_167( val, _values, result )
    result = ast AST::ASTArray
   result
  end
.,.,

 # reduce 168 omitted

 # reduce 169 omitted

 # reduce 170 omitted

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

 def _reduce_none( val, _values, result )
  result
 end

    end   # class Parser

  end   # module Parser

end   # module Puppet
