#
# DO NOT MODIFY!!!!
# This file is automatically generated by Racc 1.4.14
# from Racc grammer file "".
#

require 'racc/parser.rb'



module GraphQL
  module Language
    class Parser < Racc::Parser

module_eval(<<'...end parser.y/module_eval...', 'parser.y', 378)

def initialize(query_string, filename:, tracer: Tracing::NullTracer)
  @query_string = query_string
  @filename = filename
  @tracer = tracer
end

def parse_document
  @document ||= begin
    # Break the string into tokens
    @tracer.trace("lex", {query_string: @query_string}) do
      @tokens ||= GraphQL.scan(@query_string)
    end
    # From the tokens, build an AST
    @tracer.trace("parse", {query_string: @query_string}) do
      if @tokens.none?
        make_node(:Document, definitions: [], filename: @filename)
      else
        do_parse
      end
    end
  end
end

def self.parse(query_string, filename: nil, tracer: GraphQL::Tracing::NullTracer)
  self.new(query_string, filename: filename, tracer: tracer).parse_document
end

private

def next_token
  lexer_token = @tokens.shift
  if lexer_token.nil?
    nil
  else
    [lexer_token.name, lexer_token]
  end
end

def get_description(token)
  comments = []

  loop do
    prev_token = token
    token = token.prev_token

    break if token.nil?
    break if token.name != :COMMENT
    break if prev_token.line != token.line + 1

    comments.unshift(token.to_s.sub(/^#\s*/, ""))
  end

  return nil if comments.empty?

  comments.join("\n")
end

def on_error(parser_token_id, lexer_token, vstack)
  if lexer_token == "$" || lexer_token == nil
    raise GraphQL::ParseError.new("Unexpected end of document", nil, nil, @query_string, filename: @filename)
  else
    parser_token_name = token_to_str(parser_token_id)
    if parser_token_name.nil?
      raise GraphQL::ParseError.new("Parse Error on unknown token: {token_id: #{parser_token_id}, lexer_token: #{lexer_token}} from #{@query_string}", nil, nil, @query_string, filename: @filename)
    else
      line, col = lexer_token.line_and_column
      if lexer_token.name == :BAD_UNICODE_ESCAPE
        raise GraphQL::ParseError.new("Parse error on bad Unicode escape sequence: #{lexer_token.to_s.inspect} (#{parser_token_name}) at [#{line}, #{col}]", line, col, @query_string, filename: @filename)
      else
        raise GraphQL::ParseError.new("Parse error on #{lexer_token.to_s.inspect} (#{parser_token_name}) at [#{line}, #{col}]", line, col, @query_string, filename: @filename)
      end
    end
  end
end

def make_node(node_name, assigns)
  assigns.each do |key, value|
    if key != :position_source && value.is_a?(GraphQL::Language::Token)
      assigns[key] = value.to_s
    end
  end

  assigns[:filename] = @filename

  GraphQL::Language::Nodes.const_get(node_name).new(assigns)
end
...end parser.y/module_eval...
##### State transition tables begin ###

racc_action_table = [
  -127,    10,    11,    12,   138,    64,   138,   227,   138,   227,
   129,    99,    36,    37,    38,    39,    40,    41,    42,    43,
    44,    45,    46,    47,    48,    49,    53,    10,    11,    12,
    64,  -127,   118,  -127,   138,   138,   138,   190,    36,    37,
    38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
    48,    49,   191,    10,    11,    12,    64,    59,    64,   143,
    10,    11,    12,    31,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    76,    10,
    11,    12,    80,    59,    64,    79,    10,    11,    12,    72,
    36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
    46,    47,    48,    49,   187,    73,    10,    11,    12,    59,
    75,   185,    84,    64,   186,   212,    87,   158,    37,    38,
    39,    40,    41,    42,    43,    44,    45,   156,   157,   175,
   176,   172,   173,   174,   184,    10,    11,    12,    64,    90,
    64,    64,    64,    64,    64,    99,    36,    37,    38,    39,
    40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
   187,    64,    10,    11,    12,    59,    64,   185,   110,    80,
   186,   228,    64,   158,    37,    38,    39,    40,    41,    42,
    43,    44,    45,   156,   157,   175,   176,   172,   173,   174,
   184,   187,   122,    10,    11,    12,   123,   124,   185,   125,
   126,   186,   110,   110,   158,    37,    38,    39,    40,    41,
    42,    43,    44,    45,   156,   157,   175,   176,   172,   173,
   174,   184,   241,    80,    10,    11,    12,   137,   145,   146,
   149,   168,   186,   169,   110,   158,    37,    38,    39,    40,
    41,    42,    43,    44,    45,   156,   157,   175,   176,   172,
   173,   174,   184,   241,   110,    10,    11,    12,   149,   126,
   199,    64,   203,   186,   110,   222,   158,    37,    38,    39,
    40,    41,    42,    43,    44,    45,   156,   157,   175,   176,
   172,   173,   174,   184,   187,   225,    10,    11,    12,   233,
   242,   185,   245,    64,   186,   nil,   nil,   158,    37,    38,
    39,    40,    41,    42,    43,    44,    45,   156,   157,   175,
   176,   172,   173,   174,   184,   187,   nil,    10,    11,    12,
   nil,   nil,   185,   nil,   nil,   186,   nil,   nil,   158,    37,
    38,    39,    40,    41,    42,    43,    44,    45,   156,   157,
   175,   176,   172,   173,   174,   184,    10,    11,    12,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    82,    37,    38,
    39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
    49,   205,    10,    11,    12,    64,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,    42,
    43,    44,    45,    46,    47,    48,    49,   215,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,   230,    10,    11,    12,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,
    41,    42,    43,    44,    45,    46,    47,    48,    49,   221,
    10,    11,    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,    36,    37,    38,    39,    40,    41,    42,    43,    44,
    45,    46,    47,    48,    49,   234,    10,    11,    12,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,    37,    38,
    39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
    49,   248,    10,    11,    12,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,    42,
    43,    44,    45,    46,    47,    48,    49,   198,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   109,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   102,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,     9,   nil,    10,    11,    12,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    17,    24,    25,
   nil,    26,    27,    28,    29,    30,   nil,    13,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   109,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,     9,   nil,    10,    11,    12,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    17,    24,    25,
   nil,    26,    27,    28,    29,    30,   nil,    13,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   109,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   206,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   109,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   109,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   135,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   109,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,    10,    11,    12,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    36,    37,    38,    39,    40,    41,
    42,    43,    44,    45,    46,    47,    48,    49,    10,    11,
    12,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    36,
    37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
    47,    48,    49,   202,    10,    11,    12,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   158,    37,    38,    39,    40,
    41,    42,    43,    44,    45,   156,   157,    10,    11,    12,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   158,    37,
    38,    39,    40,    41,    42,    43,    44,    45,   156,   157 ]

racc_action_check = [
   121,    90,    90,    90,   209,   134,   224,   209,   108,   224,
    97,    97,    90,    90,    90,    90,    90,    90,    90,    90,
    90,    90,    90,    90,    90,    90,     9,     9,     9,     9,
   108,   121,    90,   121,   237,   140,   112,   140,     9,     9,
     9,     9,     9,     9,     9,     9,     9,     9,     9,     9,
     9,     9,   141,   141,   141,   141,   237,     9,   112,   114,
   114,   114,   114,     1,   141,   141,   141,   141,   141,   141,
   141,   141,   141,   141,   141,   141,   141,   141,    52,    52,
    52,    52,    58,   141,    17,    58,    87,    87,    87,    30,
    52,    52,    52,    52,    52,    52,    52,    52,    52,    52,
    52,    52,    52,    52,   186,    31,   186,   186,   186,    52,
    33,   186,    60,    62,   186,   186,    65,   186,   186,   186,
   186,   186,   186,   186,   186,   186,   186,   186,   186,   186,
   186,   186,   186,   186,   186,   110,   110,   110,    66,    67,
    68,    69,    70,    71,    74,    75,   110,   110,   110,   110,
   110,   110,   110,   110,   110,   110,   110,   110,   110,   110,
   213,    78,   213,   213,   213,   110,    81,   213,    83,    86,
   213,   213,    89,   213,   213,   213,   213,   213,   213,   213,
   213,   213,   213,   213,   213,   213,   213,   213,   213,   213,
   213,   137,    91,   137,   137,   137,    92,    93,   137,    94,
    95,   137,    96,   100,   137,   137,   137,   137,   137,   137,
   137,   137,   137,   137,   137,   137,   137,   137,   137,   137,
   137,   137,   245,   101,   245,   245,   245,   105,   116,   117,
   119,   127,   245,   131,   139,   245,   245,   245,   245,   245,
   245,   245,   245,   245,   245,   245,   245,   245,   245,   245,
   245,   245,   245,   227,   142,   227,   227,   227,   147,   151,
   155,   161,   164,   227,   170,   196,   227,   227,   227,   227,
   227,   227,   227,   227,   227,   227,   227,   227,   227,   227,
   227,   227,   227,   227,   233,   207,   233,   233,   233,   218,
   232,   233,   236,   238,   233,   nil,   nil,   233,   233,   233,
   233,   233,   233,   233,   233,   233,   233,   233,   233,   233,
   233,   233,   233,   233,   233,   242,   nil,   242,   242,   242,
   nil,   nil,   242,   nil,   nil,   242,   nil,   nil,   242,   242,
   242,   242,   242,   242,   242,   242,   242,   242,   242,   242,
   242,   242,   242,   242,   242,   242,    59,    59,    59,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,    59,    59,    59,
    59,    59,    59,    59,    59,    59,    59,    59,    59,    59,
    59,   166,   166,   166,   166,    59,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   166,   166,   166,   166,   166,   166,   166,
   166,   166,   166,   166,   166,   166,   166,   187,   187,   187,
   187,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   187,
   187,   187,   187,   187,   187,   187,   187,   187,   187,   187,
   187,   187,   187,   216,   216,   216,   216,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   216,   216,   216,   216,   216,
   216,   216,   216,   216,   216,   216,   216,   216,   216,   194,
   194,   194,   194,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   194,   194,   194,   194,   194,   194,   194,   194,   194,
   194,   194,   194,   194,   194,   219,   219,   219,   219,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   219,   219,   219,
   219,   219,   219,   219,   219,   219,   219,   219,   219,   219,
   219,   241,   241,   241,   241,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   241,   241,   241,   241,   241,   241,   241,
   241,   241,   241,   241,   241,   241,   241,   153,   153,   153,
   153,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   153,
   153,   153,   153,   153,   153,   153,   153,   153,   153,   153,
   153,   153,   153,    28,    28,    28,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    28,    28,    28,    28,    28,    28,
    28,    28,    28,    28,    28,    28,    28,    28,   222,   222,
   222,   nil,   nil,   nil,   nil,   nil,   222,   nil,   nil,   222,
   222,   222,   222,   222,   222,   222,   222,   222,   222,   222,
   222,   222,   222,   225,   225,   225,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   225,   225,   225,   225,   225,   225,
   225,   225,   225,   225,   225,   225,   225,   225,    29,    29,
    29,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    29,
    29,    29,    29,    29,    29,    29,    29,    29,    29,    29,
    29,    29,    29,     8,     8,     8,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,     8,     8,     8,     8,     8,     8,
     8,     8,     8,     8,     8,     8,     8,     8,    72,    72,
    72,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    72,
    72,    72,    72,    72,    72,    72,    72,    72,    72,    72,
    72,    72,    72,   126,   126,   126,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   126,   126,   126,   126,   126,   126,
   126,   126,   126,   126,   126,   126,   126,   126,    80,    80,
    80,   nil,    80,   nil,   nil,   nil,   nil,   nil,   nil,    80,
    80,    80,    80,    80,    80,    80,    80,    80,    80,    80,
    80,    80,    80,     0,   nil,     0,     0,     0,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,     0,     0,     0,
   nil,     0,     0,     0,     0,     0,   nil,     0,    82,    82,
    82,   nil,   nil,   nil,   nil,   nil,    82,   nil,   nil,    82,
    82,    82,    82,    82,    82,    82,    82,    82,    82,    82,
    82,    82,    82,     3,   nil,     3,     3,     3,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,     3,     3,     3,
   nil,     3,     3,     3,     3,     3,   nil,     3,   145,   145,
   145,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   145,
   145,   145,   145,   145,   145,   145,   145,   145,   145,   145,
   145,   145,   145,   146,   146,   146,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   146,   146,   146,   146,   146,   146,
   146,   146,   146,   146,   146,   146,   146,   146,    84,    84,
    84,   nil,   nil,   nil,   nil,   nil,    84,   nil,   nil,    84,
    84,    84,    84,    84,    84,    84,    84,    84,    84,    84,
    84,    84,    84,   149,   149,   149,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   149,   149,   149,   149,   149,   149,
   149,   149,   149,   149,   149,   149,   149,   149,    24,    24,
    24,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    24,
    24,    24,    24,    24,    24,    24,    24,    24,    24,    24,
    24,    24,    24,    64,    64,    64,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    64,    64,    64,    64,    64,    64,
    64,    64,    64,    64,    64,    64,    64,    64,   167,   167,
   167,   nil,   167,   nil,   nil,   nil,   nil,   nil,   nil,   167,
   167,   167,   167,   167,   167,   167,   167,   167,   167,   167,
   167,   167,   167,   168,   168,   168,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   168,   168,   168,   168,   168,   168,
   168,   168,   168,   168,   168,   168,   168,   168,   169,   169,
   169,   nil,   nil,   nil,   nil,   nil,   169,   nil,   nil,   169,
   169,   169,   169,   169,   169,   169,   169,   169,   169,   169,
   169,   169,   169,    25,    25,    25,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    25,    25,    25,    25,    25,    25,
    25,    25,    25,    25,    25,    25,    25,    25,   185,   185,
   185,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   185,
   185,   185,   185,   185,   185,   185,   185,   185,   185,   185,
   185,   185,   185,    26,    26,    26,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    26,    26,    26,    26,    26,    26,
    26,    26,    26,    26,    26,    26,    26,    26,   199,   199,
   199,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   199,
   199,   199,   199,   199,   199,   199,   199,   199,   199,   199,
   199,   199,   199,   203,   203,   203,   nil,   nil,   nil,   nil,
   nil,   203,   nil,   nil,   203,   203,   203,   203,   203,   203,
   203,   203,   203,   203,   203,   203,   203,   203,    27,    27,
    27,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    27,
    27,    27,    27,    27,    27,    27,    27,    27,    27,    27,
    27,    27,    27,    99,    99,    99,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    99,    99,    99,    99,    99,    99,
    99,    99,    99,    99,    99,    99,    99,    99,   125,   125,
   125,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   125,
   125,   125,   125,   125,   125,   125,   125,   125,   125,   125,
   125,   125,   125,   103,   103,   103,   nil,   103,   nil,   nil,
   nil,   nil,   nil,   nil,   103,   103,   103,   103,   103,   103,
   103,   103,   103,   103,   103,   103,   103,   103,    13,    13,
    13,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
    13,    13,    13,    13,    13,    13,    13,    13,    13,    13,
    13,    13,    13,   109,   109,   109,   nil,   nil,   nil,   nil,
   nil,   109,   nil,   nil,   109,   109,   109,   109,   109,   109,
   109,   109,   109,   109,   109,   109,   109,   109,   118,   118,
   118,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   118,
   118,   118,   118,   118,   118,   118,   118,   118,   118,   118,
   118,   118,   118,    79,    79,    79,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,    79,    79,    79,    79,    79,    79,
    79,    79,    79,    79,    79,    79,    79,    79,   120,   120,
   120,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   120,
   120,   120,   120,   120,   120,   120,   120,   120,   120,   120,
   120,   120,   120,   122,   122,   122,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   122,   122,   122,   122,   122,   122,
   122,   122,   122,   122,   122,   122,   122,   122,   123,   123,
   123,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   123,
   123,   123,   123,   123,   123,   123,   123,   123,   123,   123,
   123,   123,   123,   163,   163,   163,   163,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   163,   163,   163,   163,   163,
   163,   163,   163,   163,   163,   163,   163,   124,   124,   124,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   124,   124,
   124,   124,   124,   124,   124,   124,   124,   124,   124,   124 ]

racc_action_pointer = [
   751,    63,   nil,   801,   nil,   nil,   nil,   nil,   649,    23,
   nil,   nil,   nil,  1274,   nil,   nil,   nil,    51,   nil,   nil,
   nil,   nil,   nil,   nil,   924,  1049,  1099,  1174,   549,   624,
    56,   105,   nil,   103,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,    75,   nil,   nil,   nil,   nil,   nil,    75,   342,
    97,   nil,    80,   nil,   949,   114,   105,   120,   107,   108,
   109,   110,   674,   nil,   111,   136,   nil,   nil,   128,  1349,
   724,   133,   774,   166,   874,   nil,   162,    82,   nil,   139,
    -3,   190,   182,   195,   197,   193,   200,     2,   nil,  1199,
   201,   216,   nil,  1249,   nil,   217,   nil,   nil,    -3,  1299,
   131,   nil,    25,   nil,    56,   nil,   218,   227,  1324,   195,
  1374,    -2,  1399,  1424,  1473,  1224,   699,   216,   nil,   nil,
   nil,   223,   nil,   nil,   -28,   nil,   nil,   189,   nil,   232,
    24,    49,   252,   nil,   nil,   824,   849,   223,   nil,   899,
   nil,   252,   nil,   524,   nil,   224,   nil,   nil,   nil,   nil,
   nil,   228,   nil,  1450,   252,   nil,   368,   974,   999,  1024,
   262,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,  1074,   102,   394,   nil,   nil,
   nil,   nil,   nil,   nil,   446,   nil,   255,   nil,   nil,  1124,
   nil,   nil,   nil,  1149,   nil,   nil,   nil,   249,   nil,    -7,
   nil,   nil,   nil,   158,   nil,   nil,   420,   nil,   279,   472,
   nil,   nil,   574,   nil,    -5,   599,   nil,   251,   nil,   nil,
   nil,   nil,   280,   282,   nil,   nil,   282,    23,   260,   nil,
   nil,   498,   313,   nil,   nil,   220,   nil,   nil,   nil,   nil ]

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

racc_goto_table = [
     8,    34,    58,     8,   108,    52,   112,   133,    77,   171,
    65,    78,   127,   217,   197,   119,   153,    66,    67,    68,
    69,    70,    71,    61,   115,   111,   104,   162,    98,   226,
     4,   140,   103,    32,   216,   240,   161,   163,   128,   113,
   194,   243,   231,   147,   238,    58,   235,   160,    85,   136,
   130,   144,    83,   249,   134,   197,    60,    86,   214,    88,
   160,    91,    92,    93,    94,    95,   201,    96,   196,    81,
   114,   100,   101,   105,   106,   161,    97,   210,   204,   204,
    89,   189,   117,   121,   192,   229,   160,   116,   166,   167,
    74,   209,   131,    33,   120,     1,   105,    77,   207,     3,
     2,   139,   155,    58,   213,   142,   141,   nil,   nil,   160,
   nil,   148,   nil,   150,   116,   151,   154,   nil,   164,   164,
   nil,   nil,   nil,   nil,   159,   224,   nil,   170,   nil,   nil,
   nil,   nil,   nil,   nil,    58,   nil,   160,   159,   193,   151,
   nil,   nil,   195,   nil,   237,   nil,   151,   nil,   nil,   nil,
   160,   nil,   nil,   nil,   200,   nil,   160,   nil,   nil,   164,
   164,   208,   nil,   159,   nil,   160,   nil,   nil,   160,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   211,   nil,
   218,   nil,   nil,   nil,   nil,   nil,   159,   151,   nil,   nil,
   nil,   nil,   223,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   232,
   nil,   nil,   236,   159,   nil,   nil,   nil,   nil,   239,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   159,   nil,   nil,
   246,   247,   nil,   159,   236,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   159,   nil,   nil,   159 ]

racc_goto_check = [
     8,    14,    14,     8,    17,    13,    17,    20,    21,    33,
    11,    25,    65,    42,    66,    61,    60,    14,    14,    14,
    14,    14,    14,    26,    52,    12,    32,    29,    16,    18,
     4,    17,    31,     4,    41,    19,    28,    30,    12,    25,
    60,    19,    42,    61,    18,    14,    44,    27,    46,    32,
    16,    52,    11,    19,    25,    66,    47,    14,    33,    11,
    27,    11,    11,    11,    11,    14,    29,    11,    65,    26,
    51,    11,    14,    14,    11,    28,    15,    20,    63,    63,
    59,    12,    11,    14,    12,    33,    27,     8,    64,    64,
    10,    17,    14,     9,    62,     1,    14,    21,    68,     3,
     2,    11,    67,    14,    40,    11,    13,   nil,   nil,    27,
   nil,    14,   nil,    14,     8,    14,    14,   nil,    14,    14,
   nil,   nil,   nil,   nil,     8,    17,   nil,    11,   nil,   nil,
   nil,   nil,   nil,   nil,    14,   nil,    27,     8,    14,    14,
   nil,   nil,    14,   nil,    17,   nil,    14,   nil,   nil,   nil,
    27,   nil,   nil,   nil,    11,   nil,    27,   nil,   nil,    14,
    14,    14,   nil,     8,   nil,    27,   nil,   nil,    27,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    14,   nil,
    14,   nil,   nil,   nil,   nil,   nil,     8,    14,   nil,   nil,
   nil,   nil,    14,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    14,
   nil,   nil,    14,     8,   nil,   nil,   nil,   nil,    14,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,     8,   nil,   nil,
    11,    11,   nil,     8,    14,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,     8,   nil,   nil,     8 ]

racc_goto_pointer = [
   nil,    95,   100,    99,    30,   nil,   nil,   nil,     0,    85,
    57,    -7,   -58,    -4,    -7,     1,   -47,   -78,  -180,  -192,
   -93,   -44,   nil,   nil,   nil,   -47,    10,   -77,   -88,   -97,
   -87,   -48,   -54,  -128,   nil,   nil,   nil,   nil,   nil,   nil,
   -82,  -153,  -174,   nil,  -173,   nil,   -14,    43,   nil,   nil,
   nil,   -17,   -63,   nil,   nil,   nil,   nil,   nil,   nil,    13,
  -106,   -75,     4,   -88,   -37,   -83,  -139,   -21,   -70 ]

racc_goto_default = [
   nil,   nil,   nil,   nil,   nil,     5,     6,     7,    50,   nil,
   nil,   nil,   132,   nil,   107,   nil,   nil,   nil,   nil,   181,
   nil,    54,    55,    56,    57,   nil,    35,    51,   188,   nil,
   nil,   nil,   nil,   244,   177,   178,   179,   180,   182,   183,
   nil,   nil,   nil,   219,   220,    62,    63,   nil,    14,    15,
    16,   nil,   nil,    18,    19,    20,    21,    22,    23,   nil,
   nil,   nil,   nil,   165,   nil,   nil,   152,   nil,   nil ]

racc_reduce_table = [
  0, 0, :racc_error,
  1, 38, :_reduce_none,
  1, 39, :_reduce_2,
  1, 40, :_reduce_3,
  2, 40, :_reduce_4,
  1, 41, :_reduce_none,
  1, 41, :_reduce_none,
  1, 41, :_reduce_none,
  5, 42, :_reduce_8,
  3, 42, :_reduce_9,
  2, 42, :_reduce_10,
  1, 45, :_reduce_none,
  1, 45, :_reduce_none,
  1, 45, :_reduce_none,
  0, 46, :_reduce_14,
  1, 46, :_reduce_none,
  0, 47, :_reduce_16,
  3, 47, :_reduce_17,
  1, 52, :_reduce_18,
  2, 52, :_reduce_19,
  5, 53, :_reduce_20,
  1, 54, :_reduce_21,
  2, 54, :_reduce_22,
  3, 54, :_reduce_23,
  0, 55, :_reduce_24,
  2, 55, :_reduce_25,
  3, 49, :_reduce_26,
  0, 57, :_reduce_27,
  1, 57, :_reduce_28,
  1, 50, :_reduce_29,
  2, 50, :_reduce_30,
  1, 58, :_reduce_none,
  1, 58, :_reduce_none,
  1, 58, :_reduce_none,
  4, 59, :_reduce_34,
  6, 59, :_reduce_35,
  1, 51, :_reduce_none,
  1, 51, :_reduce_none,
  1, 64, :_reduce_none,
  1, 64, :_reduce_none,
  1, 64, :_reduce_none,
  1, 64, :_reduce_none,
  1, 64, :_reduce_none,
  1, 64, :_reduce_none,
  1, 64, :_reduce_none,
  1, 64, :_reduce_none,
  1, 64, :_reduce_none,
  1, 63, :_reduce_none,
  1, 63, :_reduce_none,
  1, 63, :_reduce_none,
  1, 63, :_reduce_none,
  1, 63, :_reduce_none,
  1, 63, :_reduce_none,
  1, 65, :_reduce_none,
  1, 65, :_reduce_none,
  1, 65, :_reduce_none,
  1, 65, :_reduce_none,
  1, 65, :_reduce_none,
  2, 66, :_reduce_58,
  1, 67, :_reduce_59,
  2, 67, :_reduce_60,
  0, 62, :_reduce_61,
  2, 62, :_reduce_62,
  3, 62, :_reduce_63,
  1, 68, :_reduce_64,
  2, 68, :_reduce_65,
  3, 69, :_reduce_66,
  1, 56, :_reduce_67,
  1, 56, :_reduce_68,
  1, 56, :_reduce_69,
  1, 56, :_reduce_70,
  1, 56, :_reduce_71,
  1, 56, :_reduce_none,
  1, 56, :_reduce_none,
  1, 56, :_reduce_none,
  1, 56, :_reduce_none,
  0, 70, :_reduce_none,
  1, 70, :_reduce_none,
  1, 70, :_reduce_none,
  1, 70, :_reduce_none,
  1, 71, :_reduce_80,
  2, 75, :_reduce_81,
  2, 73, :_reduce_82,
  3, 73, :_reduce_83,
  1, 77, :_reduce_84,
  2, 77, :_reduce_85,
  2, 76, :_reduce_86,
  3, 76, :_reduce_87,
  1, 78, :_reduce_88,
  2, 78, :_reduce_89,
  3, 79, :_reduce_90,
  2, 74, :_reduce_91,
  3, 74, :_reduce_92,
  1, 80, :_reduce_93,
  2, 80, :_reduce_94,
  3, 81, :_reduce_95,
  1, 72, :_reduce_96,
  0, 48, :_reduce_97,
  1, 48, :_reduce_none,
  1, 82, :_reduce_99,
  2, 82, :_reduce_100,
  3, 83, :_reduce_101,
  3, 60, :_reduce_102,
  5, 61, :_reduce_103,
  3, 61, :_reduce_104,
  6, 43, :_reduce_105,
  0, 84, :_reduce_106,
  1, 84, :_reduce_none,
  1, 44, :_reduce_none,
  1, 44, :_reduce_none,
  1, 44, :_reduce_none,
  5, 85, :_reduce_111,
  1, 88, :_reduce_none,
  2, 88, :_reduce_113,
  3, 89, :_reduce_114,
  1, 86, :_reduce_none,
  1, 86, :_reduce_none,
  1, 86, :_reduce_none,
  1, 86, :_reduce_none,
  1, 86, :_reduce_none,
  1, 86, :_reduce_none,
  3, 90, :_reduce_121,
  7, 91, :_reduce_122,
  0, 96, :_reduce_123,
  3, 96, :_reduce_124,
  2, 96, :_reduce_125,
  2, 96, :_reduce_126,
  1, 98, :_reduce_127,
  3, 98, :_reduce_128,
  1, 99, :_reduce_129,
  2, 99, :_reduce_130,
  5, 100, :_reduce_131,
  1, 101, :_reduce_132,
  2, 101, :_reduce_133,
  0, 102, :_reduce_134,
  3, 102, :_reduce_135,
  5, 103, :_reduce_136,
  0, 97, :_reduce_137,
  1, 97, :_reduce_138,
  2, 97, :_reduce_139,
  6, 92, :_reduce_140,
  1, 104, :_reduce_141,
  3, 104, :_reduce_142,
  5, 93, :_reduce_143,
  6, 94, :_reduce_144,
  6, 95, :_reduce_145,
  6, 87, :_reduce_146,
  1, 105, :_reduce_147,
  3, 105, :_reduce_148 ]

racc_reduce_n = 149

racc_shift_n = 250

racc_token_table = {
  false => 0,
  :error => 1,
  :LCURLY => 2,
  :RCURLY => 3,
  :QUERY => 4,
  :MUTATION => 5,
  :SUBSCRIPTION => 6,
  :LPAREN => 7,
  :RPAREN => 8,
  :VAR_SIGN => 9,
  :COLON => 10,
  :BANG => 11,
  :LBRACKET => 12,
  :RBRACKET => 13,
  :EQUALS => 14,
  :ON => 15,
  :SCHEMA => 16,
  :SCALAR => 17,
  :TYPE => 18,
  :IMPLEMENTS => 19,
  :INTERFACE => 20,
  :UNION => 21,
  :ENUM => 22,
  :INPUT => 23,
  :DIRECTIVE => 24,
  :IDENTIFIER => 25,
  :FRAGMENT => 26,
  :TRUE => 27,
  :FALSE => 28,
  :FLOAT => 29,
  :INT => 30,
  :STRING => 31,
  :NULL => 32,
  :DIR_SIGN => 33,
  :ELLIPSIS => 34,
  :AMP => 35,
  :PIPE => 36 }

racc_nt_base = 37

racc_use_result_var = true

Racc_arg = [
  racc_action_table,
  racc_action_check,
  racc_action_default,
  racc_action_pointer,
  racc_goto_table,
  racc_goto_check,
  racc_goto_default,
  racc_goto_pointer,
  racc_nt_base,
  racc_reduce_table,
  racc_token_table,
  racc_shift_n,
  racc_reduce_n,
  racc_use_result_var ]

Racc_token_to_s_table = [
  "$end",
  "error",
  "LCURLY",
  "RCURLY",
  "QUERY",
  "MUTATION",
  "SUBSCRIPTION",
  "LPAREN",
  "RPAREN",
  "VAR_SIGN",
  "COLON",
  "BANG",
  "LBRACKET",
  "RBRACKET",
  "EQUALS",
  "ON",
  "SCHEMA",
  "SCALAR",
  "TYPE",
  "IMPLEMENTS",
  "INTERFACE",
  "UNION",
  "ENUM",
  "INPUT",
  "DIRECTIVE",
  "IDENTIFIER",
  "FRAGMENT",
  "TRUE",
  "FALSE",
  "FLOAT",
  "INT",
  "STRING",
  "NULL",
  "DIR_SIGN",
  "ELLIPSIS",
  "AMP",
  "PIPE",
  "$start",
  "target",
  "document",
  "definitions_list",
  "definition",
  "operation_definition",
  "fragment_definition",
  "type_system_definition",
  "operation_type",
  "operation_name_opt",
  "variable_definitions_opt",
  "directives_list_opt",
  "selection_set",
  "selection_list",
  "name",
  "variable_definitions_list",
  "variable_definition",
  "type",
  "default_value_opt",
  "literal_value",
  "selection_set_opt",
  "selection",
  "field",
  "fragment_spread",
  "inline_fragment",
  "arguments_opt",
  "name_without_on",
  "schema_keyword",
  "enum_name",
  "enum_value_definition",
  "enum_value_definitions",
  "arguments_list",
  "argument",
  "input_value",
  "null_value",
  "enum_value",
  "list_value",
  "object_literal_value",
  "variable",
  "object_value",
  "list_value_list",
  "object_value_list",
  "object_value_field",
  "object_literal_value_list",
  "object_literal_value_field",
  "directives_list",
  "directive",
  "fragment_name_opt",
  "schema_definition",
  "type_definition",
  "directive_definition",
  "operation_type_definition_list",
  "operation_type_definition",
  "scalar_type_definition",
  "object_type_definition",
  "interface_type_definition",
  "union_type_definition",
  "enum_type_definition",
  "input_object_type_definition",
  "implements_opt",
  "field_definition_list",
  "interfaces_list",
  "legacy_interfaces_list",
  "input_value_definition",
  "input_value_definition_list",
  "arguments_definitions_opt",
  "field_definition",
  "union_members",
  "directive_locations" ]

Racc_debug_parser = false

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

# reduce 0 omitted

# reduce 1 omitted

module_eval(<<'.,.,', 'parser.y', 4)
  def _reduce_2(val, _values, result)
     return make_node(:Document, definitions: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 7)
  def _reduce_3(val, _values, result)
     return [val[0]]
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 8)
  def _reduce_4(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

# reduce 5 omitted

# reduce 6 omitted

# reduce 7 omitted

module_eval(<<'.,.,', 'parser.y', 17)
  def _reduce_8(val, _values, result)
            return  make_node(
          :OperationDefinition, {
            operation_type: val[0],
            name:           val[1],
            variables:      val[2],
            directives:     val[3],
            selections:     val[4],
            position_source: val[0],
          }
        )
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 29)
  def _reduce_9(val, _values, result)
            return make_node(
          :OperationDefinition, {
            operation_type: "query",
            selections: val[1],
            position_source: val[0],
          }
        )
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 38)
  def _reduce_10(val, _values, result)
            return make_node(
          :OperationDefinition, {
            operation_type: "query",
            selections: [],
            position_source: val[0],
          }
        )
      
    result
  end
.,.,

# reduce 11 omitted

# reduce 12 omitted

# reduce 13 omitted

module_eval(<<'.,.,', 'parser.y', 53)
  def _reduce_14(val, _values, result)
     return nil 
    result
  end
.,.,

# reduce 15 omitted

module_eval(<<'.,.,', 'parser.y', 57)
  def _reduce_16(val, _values, result)
     return [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 58)
  def _reduce_17(val, _values, result)
     return val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 61)
  def _reduce_18(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 62)
  def _reduce_19(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 66)
  def _reduce_20(val, _values, result)
            return make_node(:VariableDefinition, {
          name: val[1],
          type: val[3],
          default_value: val[4],
          position_source: val[0],
        })
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 75)
  def _reduce_21(val, _values, result)
     return make_node(:TypeName, name: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 76)
  def _reduce_22(val, _values, result)
     return make_node(:NonNullType, of_type: val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 77)
  def _reduce_23(val, _values, result)
     return make_node(:ListType, of_type: val[1]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 80)
  def _reduce_24(val, _values, result)
     return nil 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 81)
  def _reduce_25(val, _values, result)
     return val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 84)
  def _reduce_26(val, _values, result)
     return val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 87)
  def _reduce_27(val, _values, result)
     return [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 88)
  def _reduce_28(val, _values, result)
     return val[0] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 91)
  def _reduce_29(val, _values, result)
     return [result] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 92)
  def _reduce_30(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

# reduce 31 omitted

# reduce 32 omitted

# reduce 33 omitted

module_eval(<<'.,.,', 'parser.y', 101)
  def _reduce_34(val, _values, result)
                return make_node(
              :Field, {
                name:         val[0],
                arguments:    val[1],
                directives:   val[2],
                selections:   val[3],
                position_source: val[0],
              }
            )
          
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 112)
  def _reduce_35(val, _values, result)
                return make_node(
              :Field, {
                alias:        val[0],
                name:         val[2],
                arguments:    val[3],
                directives:   val[4],
                selections:   val[5],
                position_source: val[0],
              }
            )
          
    result
  end
.,.,

# reduce 36 omitted

# reduce 37 omitted

# reduce 38 omitted

# reduce 39 omitted

# reduce 40 omitted

# reduce 41 omitted

# reduce 42 omitted

# reduce 43 omitted

# reduce 44 omitted

# reduce 45 omitted

# reduce 46 omitted

# reduce 47 omitted

# reduce 48 omitted

# reduce 49 omitted

# reduce 50 omitted

# reduce 51 omitted

# reduce 52 omitted

# reduce 53 omitted

# reduce 54 omitted

# reduce 55 omitted

# reduce 56 omitted

# reduce 57 omitted

module_eval(<<'.,.,', 'parser.y', 155)
  def _reduce_58(val, _values, result)
     return make_node(:EnumValueDefinition, name: val[0], directives: val[1], description: get_description(val[0]), position_source: val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 158)
  def _reduce_59(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 159)
  def _reduce_60(val, _values, result)
     return val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 162)
  def _reduce_61(val, _values, result)
     return [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 163)
  def _reduce_62(val, _values, result)
     return [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 164)
  def _reduce_63(val, _values, result)
     return val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 167)
  def _reduce_64(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 168)
  def _reduce_65(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 171)
  def _reduce_66(val, _values, result)
     return make_node(:Argument, name: val[0], value: val[2], position_source: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 174)
  def _reduce_67(val, _values, result)
     return val[0].to_f 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 175)
  def _reduce_68(val, _values, result)
     return val[0].to_i 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 176)
  def _reduce_69(val, _values, result)
     return val[0].to_s 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 177)
  def _reduce_70(val, _values, result)
     return true 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 178)
  def _reduce_71(val, _values, result)
     return false 
    result
  end
.,.,

# reduce 72 omitted

# reduce 73 omitted

# reduce 74 omitted

# reduce 75 omitted

# reduce 76 omitted

# reduce 77 omitted

# reduce 78 omitted

# reduce 79 omitted

module_eval(<<'.,.,', 'parser.y', 189)
  def _reduce_80(val, _values, result)
     return make_node(:NullValue, name: val[0], position_source: val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 190)
  def _reduce_81(val, _values, result)
     return make_node(:VariableIdentifier, name: val[1], position_source: val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 193)
  def _reduce_82(val, _values, result)
     return [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 194)
  def _reduce_83(val, _values, result)
     return val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 197)
  def _reduce_84(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 198)
  def _reduce_85(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 201)
  def _reduce_86(val, _values, result)
     return make_node(:InputObject, arguments: [], position_source: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 202)
  def _reduce_87(val, _values, result)
     return make_node(:InputObject, arguments: val[1], position_source: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 205)
  def _reduce_88(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 206)
  def _reduce_89(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 209)
  def _reduce_90(val, _values, result)
     return make_node(:Argument, name: val[0], value: val[2], position_source: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 213)
  def _reduce_91(val, _values, result)
     return make_node(:InputObject, arguments: [], position_source: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 214)
  def _reduce_92(val, _values, result)
     return make_node(:InputObject, arguments: val[1], position_source: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 217)
  def _reduce_93(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 218)
  def _reduce_94(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 221)
  def _reduce_95(val, _values, result)
     return make_node(:Argument, name: val[0], value: val[2], position_source: val[0])
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 223)
  def _reduce_96(val, _values, result)
     return make_node(:Enum, name: val[0], position_source: val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 226)
  def _reduce_97(val, _values, result)
     return [] 
    result
  end
.,.,

# reduce 98 omitted

module_eval(<<'.,.,', 'parser.y', 230)
  def _reduce_99(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 231)
  def _reduce_100(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 233)
  def _reduce_101(val, _values, result)
     return make_node(:Directive, name: val[1], arguments: val[2], position_source: val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 236)
  def _reduce_102(val, _values, result)
     return make_node(:FragmentSpread, name: val[1], directives: val[2], position_source: val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 240)
  def _reduce_103(val, _values, result)
            return make_node(:InlineFragment, {
          type: val[2],
          directives: val[3],
          selections: val[4],
          position_source: val[0]
        })
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 248)
  def _reduce_104(val, _values, result)
            return make_node(:InlineFragment, {
          type: nil,
          directives: val[1],
          selections: val[2],
          position_source: val[0]
        })
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 258)
  def _reduce_105(val, _values, result)
          return make_node(:FragmentDefinition, {
          name:       val[1],
          type:       val[3],
          directives: val[4],
          selections: val[5],
          position_source: val[0],
        }
      )
    
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 269)
  def _reduce_106(val, _values, result)
     return nil 
    result
  end
.,.,

# reduce 107 omitted

# reduce 108 omitted

# reduce 109 omitted

# reduce 110 omitted

module_eval(<<'.,.,', 'parser.y', 278)
  def _reduce_111(val, _values, result)
     return make_node(:SchemaDefinition, position_source: val[0], directives: val[1], **val[3]) 
    result
  end
.,.,

# reduce 112 omitted

module_eval(<<'.,.,', 'parser.y', 282)
  def _reduce_113(val, _values, result)
     return val[0].merge(val[1]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 285)
  def _reduce_114(val, _values, result)
     return { val[0].to_s.to_sym => val[2] } 
    result
  end
.,.,

# reduce 115 omitted

# reduce 116 omitted

# reduce 117 omitted

# reduce 118 omitted

# reduce 119 omitted

# reduce 120 omitted

module_eval(<<'.,.,', 'parser.y', 295)
  def _reduce_121(val, _values, result)
     return make_node(:ScalarTypeDefinition, name: val[1], directives: val[2], description: get_description(val[0]), position_source: val[0]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 299)
  def _reduce_122(val, _values, result)
            return make_node(:ObjectTypeDefinition, name: val[1], interfaces: val[2], directives: val[3], fields: val[5], description: get_description(val[0]), position_source: val[0])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 303)
  def _reduce_123(val, _values, result)
     return [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 304)
  def _reduce_124(val, _values, result)
     return val[2] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 305)
  def _reduce_125(val, _values, result)
     return val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 306)
  def _reduce_126(val, _values, result)
     return val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 309)
  def _reduce_127(val, _values, result)
     return [make_node(:TypeName, name: val[0], position_source: val[0])] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 310)
  def _reduce_128(val, _values, result)
     val[0] << make_node(:TypeName, name: val[2], position_source: val[2]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 313)
  def _reduce_129(val, _values, result)
     return [make_node(:TypeName, name: val[0], position_source: val[0])] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 314)
  def _reduce_130(val, _values, result)
     val[0] << make_node(:TypeName, name: val[1], position_source: val[1]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 318)
  def _reduce_131(val, _values, result)
            return make_node(:InputValueDefinition, name: val[0], type: val[2], default_value: val[3], directives: val[4], description: get_description(val[0]), position_source: val[0])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 322)
  def _reduce_132(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 323)
  def _reduce_133(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 326)
  def _reduce_134(val, _values, result)
     return [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 327)
  def _reduce_135(val, _values, result)
     return val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 331)
  def _reduce_136(val, _values, result)
            return make_node(:FieldDefinition, name: val[0], arguments: val[1], type: val[3], directives: val[4], description: get_description(val[0]), position_source: val[0])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 335)
  def _reduce_137(val, _values, result)
     return [] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 336)
  def _reduce_138(val, _values, result)
     return [val[0]] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 337)
  def _reduce_139(val, _values, result)
     val[0] << val[1] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 341)
  def _reduce_140(val, _values, result)
            return make_node(:InterfaceTypeDefinition, name: val[1], directives: val[2], fields: val[4], description: get_description(val[0]), position_source: val[0])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 345)
  def _reduce_141(val, _values, result)
     return [make_node(:TypeName, name: val[0], position_source: val[0])]
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 346)
  def _reduce_142(val, _values, result)
     val[0] << make_node(:TypeName, name: val[2], position_source: val[2]) 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 350)
  def _reduce_143(val, _values, result)
            return make_node(:UnionTypeDefinition, name: val[1], directives: val[2], types: val[4], description: get_description(val[0]), position_source: val[0])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 355)
  def _reduce_144(val, _values, result)
             return make_node(:EnumTypeDefinition, name: val[1], directives: val[2], values: val[4], description: get_description(val[0]), position_source: val[0])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 360)
  def _reduce_145(val, _values, result)
            return make_node(:InputObjectTypeDefinition, name: val[1], directives: val[2], fields: val[4], description: get_description(val[0]), position_source: val[0])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 365)
  def _reduce_146(val, _values, result)
            return make_node(:DirectiveDefinition, name: val[2], arguments: val[3], locations: val[5], description: get_description(val[0]), position_source: val[0])
      
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 369)
  def _reduce_147(val, _values, result)
     return [make_node(:DirectiveLocation, name: val[0].to_s, position_source: val[0])] 
    result
  end
.,.,

module_eval(<<'.,.,', 'parser.y', 370)
  def _reduce_148(val, _values, result)
     val[0] << make_node(:DirectiveLocation, name: val[2].to_s, position_source: val[2]) 
    result
  end
.,.,

def _reduce_none(val, _values, result)
  val[0]
end

    end   # class Parser
    end   # module Language
  end   # module GraphQL