rbs 1.0.3 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.github/workflows/ruby.yml +2 -2
- data/CHANGELOG.md +65 -0
- data/Gemfile +0 -1
- data/Rakefile +3 -2
- data/Steepfile +2 -0
- data/bin/rbs-prof +1 -1
- data/core/array.rbs +10 -6
- data/core/complex.rbs +1 -1
- data/core/enumerable.rbs +15 -1
- data/core/enumerator.rbs +4 -0
- data/core/file.rbs +2 -1
- data/core/integer.rbs +2 -1
- data/core/module.rbs +1 -1
- data/core/rational.rbs +2 -1
- data/core/string.rbs +2 -1
- data/core/symbol.rbs +2 -1
- data/core/thread.rbs +14 -1
- data/core/time.rbs +2 -1
- data/docs/stdlib.md +1 -1
- data/lib/rbs.rb +3 -0
- data/lib/rbs/ancestor_graph.rb +90 -0
- data/lib/rbs/ast/members.rb +13 -0
- data/lib/rbs/char_scanner.rb +20 -0
- data/lib/rbs/definition_builder.rb +50 -25
- data/lib/rbs/definition_builder/method_builder.rb +23 -2
- data/lib/rbs/environment.rb +42 -5
- data/lib/rbs/environment_walker.rb +4 -4
- data/lib/rbs/errors.rb +32 -17
- data/lib/rbs/parser.rb +437 -416
- data/lib/rbs/parser.y +29 -16
- data/lib/rbs/test/type_check.rb +7 -3
- data/lib/rbs/version.rb +1 -1
- data/sig/ancestor_graph.rbs +40 -0
- data/sig/char_scanner.rbs +9 -0
- data/sig/definition_builder.rbs +5 -1
- data/sig/environment.rbs +22 -2
- data/sig/environment_walker.rbs +39 -0
- data/sig/errors.rbs +42 -17
- data/sig/members.rbs +2 -0
- data/sig/method_builder.rbs +2 -0
- data/sig/parser.rbs +11 -4
- data/sig/polyfill.rbs +0 -14
- data/sig/types.rbs +7 -1
- data/stdlib/bigdecimal/0/big_decimal.rbs +1 -1
- data/stdlib/cgi/0/core.rbs +595 -0
- data/stdlib/date/0/date.rbs +1 -1
- data/stdlib/json/0/json.rbs +288 -0
- data/stdlib/pathname/0/pathname.rbs +2 -1
- data/stdlib/rubygems/0/basic_specification.rbs +3 -0
- data/stdlib/rubygems/0/config_file.rbs +3 -0
- data/stdlib/rubygems/0/dependency_installer.rbs +5 -0
- data/stdlib/rubygems/0/installer.rbs +3 -0
- data/stdlib/rubygems/0/path_support.rbs +3 -0
- data/stdlib/rubygems/0/platform.rbs +3 -0
- data/stdlib/rubygems/0/request_set.rbs +7 -0
- data/stdlib/rubygems/0/requirement.rbs +3 -0
- data/stdlib/rubygems/0/rubygems.rbs +710 -0
- data/stdlib/rubygems/0/source_list.rbs +2 -0
- data/stdlib/rubygems/0/specification.rbs +3 -0
- data/stdlib/rubygems/0/stream_ui.rbs +3 -0
- data/stdlib/rubygems/0/uninstaller.rbs +3 -0
- data/stdlib/rubygems/0/version.rbs +228 -0
- data/stdlib/set/0/set.rbs +7 -0
- data/stdlib/strscan/0/string_scanner.rbs +582 -0
- data/stdlib/timeout/0/timeout.rbs +57 -0
- data/stdlib/uri/0/rfc2396_parser.rbs +144 -7
- data/steep/Gemfile.lock +17 -19
- metadata +24 -2
    
        data/lib/rbs/parser.rb
    CHANGED
    
    | @@ -8,7 +8,7 @@ require 'racc/parser.rb' | |
| 8 8 | 
             
            module RBS
         | 
| 9 9 | 
             
              class Parser < Racc::Parser
         | 
| 10 10 |  | 
| 11 | 
            -
            module_eval(<<'...end parser.y/module_eval...', 'parser.y',  | 
| 11 | 
            +
            module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1072)
         | 
| 12 12 |  | 
| 13 13 | 
             
            Types = RBS::Types
         | 
| 14 14 | 
             
            Namespace = RBS::Namespace
         | 
| @@ -28,8 +28,6 @@ class LocatedValue | |
| 28 28 | 
             
              end
         | 
| 29 29 | 
             
            end
         | 
| 30 30 |  | 
| 31 | 
            -
            require "strscan"
         | 
| 32 | 
            -
             | 
| 33 31 | 
             
            attr_reader :input
         | 
| 34 32 | 
             
            attr_reader :buffer
         | 
| 35 33 | 
             
            attr_reader :eof_re
         | 
| @@ -38,7 +36,7 @@ def initialize(type, buffer:, eof_re:) | |
| 38 36 | 
             
              super()
         | 
| 39 37 | 
             
              @type = type
         | 
| 40 38 | 
             
              @buffer = buffer
         | 
| 41 | 
            -
              @input =  | 
| 39 | 
            +
              @input = CharScanner.new(buffer.content)
         | 
| 42 40 | 
             
              @eof_re = eof_re
         | 
| 43 41 | 
             
              @eof = false
         | 
| 44 42 | 
             
              @bound_variables_stack = []
         | 
| @@ -154,11 +152,7 @@ def new_token(type, value = input.matched) | |
| 154 152 | 
             
            end
         | 
| 155 153 |  | 
| 156 154 | 
             
            def charpos(scanner)
         | 
| 157 | 
            -
               | 
| 158 | 
            -
                scanner.pos
         | 
| 159 | 
            -
              else
         | 
| 160 | 
            -
                scanner.charpos
         | 
| 161 | 
            -
              end
         | 
| 155 | 
            +
              scanner.charpos
         | 
| 162 156 | 
             
            end
         | 
| 163 157 |  | 
| 164 158 | 
             
            def empty_params_result
         | 
| @@ -365,7 +359,11 @@ def next_token | |
| 365 359 | 
             
                s = input.matched.yield_self {|s| s[1, s.length - 2] }.gsub(/\\'/, "'")
         | 
| 366 360 | 
             
                new_token(:tSTRING, s)
         | 
| 367 361 | 
             
              else
         | 
| 368 | 
            -
                 | 
| 362 | 
            +
                text = input.peek(10)
         | 
| 363 | 
            +
                start_index = charpos(input)
         | 
| 364 | 
            +
                end_index = start_index + text.length
         | 
| 365 | 
            +
                location = RBS::Location.new(buffer: buffer, start_pos: start_index, end_pos: end_index)
         | 
| 366 | 
            +
                raise LexerError.new(input: text, location: location)
         | 
| 369 367 | 
             
              end
         | 
| 370 368 | 
             
            end
         | 
| 371 369 |  | 
| @@ -373,7 +371,7 @@ def on_error(token_id, error_value, value_stack) | |
| 373 371 | 
             
              raise SyntaxError.new(token_str: token_to_str(token_id), error_value: error_value, value_stack: value_stack)
         | 
| 374 372 | 
             
            end
         | 
| 375 373 |  | 
| 376 | 
            -
            class SyntaxError <  | 
| 374 | 
            +
            class SyntaxError < ParsingError
         | 
| 377 375 | 
             
              attr_reader :token_str, :error_value, :value_stack
         | 
| 378 376 |  | 
| 379 377 | 
             
              def initialize(token_str:, error_value:, value_stack: nil)
         | 
| @@ -385,7 +383,7 @@ class SyntaxError < StandardError | |
| 385 383 | 
             
              end
         | 
| 386 384 | 
             
            end
         | 
| 387 385 |  | 
| 388 | 
            -
            class SemanticsError <  | 
| 386 | 
            +
            class SemanticsError < ParsingError
         | 
| 389 387 | 
             
              attr_reader :subject, :location, :original_message
         | 
| 390 388 |  | 
| 391 389 | 
             
              def initialize(message, subject:, location:)
         | 
| @@ -397,77 +395,88 @@ class SemanticsError < StandardError | |
| 397 395 | 
             
              end
         | 
| 398 396 | 
             
            end
         | 
| 399 397 |  | 
| 398 | 
            +
            class LexerError < ParsingError
         | 
| 399 | 
            +
              attr_reader :location, :input
         | 
| 400 | 
            +
             | 
| 401 | 
            +
              def initialize(input:, location:)
         | 
| 402 | 
            +
                @input = input
         | 
| 403 | 
            +
                @location = location
         | 
| 404 | 
            +
             | 
| 405 | 
            +
                super "Unexpected string: #{input}..."
         | 
| 406 | 
            +
              end
         | 
| 407 | 
            +
            end
         | 
| 408 | 
            +
             | 
| 400 409 | 
             
            ...end parser.y/module_eval...
         | 
| 401 410 | 
             
            ##### State transition tables begin ###
         | 
| 402 411 |  | 
| 403 412 | 
             
            clist = [
         | 
| 404 | 
            -
            ' | 
| 405 | 
            -
            '40,41,55,56,57,58,59,60,61,62, | 
| 406 | 
            -
            '32,53, | 
| 407 | 
            -
            '76,75, | 
| 408 | 
            -
            '32,96,97,98,99,104,49,39,33,33,33, | 
| 409 | 
            -
            '58,59,60,61,62,79, | 
| 410 | 
            -
            ' | 
| 411 | 
            -
            ' | 
| 412 | 
            -
            '99, | 
| 413 | 
            -
            '60,61,62,79, | 
| 414 | 
            -
            ' | 
| 415 | 
            -
            '73,78,80, | 
| 416 | 
            -
            '2,3,4,40,41, | 
| 417 | 
            -
            '63,54,64,65,66,77,67,68,69,83,40,41, | 
| 418 | 
            -
            '40,41,40,41, | 
| 419 | 
            -
            ' | 
| 420 | 
            -
            '56,57,58,59,60,61,62,79, | 
| 421 | 
            -
            ' | 
| 422 | 
            -
            '75, | 
| 423 | 
            -
            '39,- | 
| 424 | 
            -
            '64,65,66,77,67,68,69,83,40,41,- | 
| 425 | 
            -
            '41,40,41, | 
| 426 | 
            -
            '84,85,81,86, | 
| 427 | 
            -
            ' | 
| 428 | 
            -
            ' | 
| 429 | 
            -
            ' | 
| 430 | 
            -
            ' | 
| 431 | 
            -
            ' | 
| 432 | 
            -
            ' | 
| 433 | 
            -
            ' | 
| 434 | 
            -
            ' | 
| 435 | 
            -
            ' | 
| 436 | 
            -
            ' | 
| 437 | 
            -
            ' | 
| 438 | 
            -
            ',131,132,133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68',
         | 
| 439 | 
            -
            '69,83,,32,,,174,28,,177,,175,,,,,,,82,70,71,72,74,76,75,,,,73,78,80',
         | 
| 440 | 
            -
            '176,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131',
         | 
| 413 | 
            +
            '354,355,33,356,5,113,37,33,33,42,341,397,49,33,33,353,43,248,339,396',
         | 
| 414 | 
            +
            '40,41,55,56,57,58,59,60,61,62,358,33,63,54,64,65,66,77,67,68,69,83,33',
         | 
| 415 | 
            +
            '32,53,349,343,344,32,32,347,345,348,308,32,32,33,346,82,70,71,72,74',
         | 
| 416 | 
            +
            '76,75,342,351,352,73,78,80,126,32,185,48,84,85,81,86,354,355,33,356',
         | 
| 417 | 
            +
            '32,96,97,98,99,104,49,39,33,33,33,353,207,207,32,186,40,41,55,56,57',
         | 
| 418 | 
            +
            '58,59,60,61,62,79,226,63,54,64,65,66,77,67,68,69,83,53,32,160,349,343',
         | 
| 419 | 
            +
            '344,53,53,347,345,348,32,32,32,227,346,82,70,71,72,74,76,75,342,351',
         | 
| 420 | 
            +
            '352,73,78,80,40,41,161,283,84,85,81,86,354,355,120,356,180,96,97,98',
         | 
| 421 | 
            +
            '99,125,179,101,102,165,103,353,166,330,363,400,284,39,55,56,57,58,59',
         | 
| 422 | 
            +
            '60,61,62,79,401,63,54,64,65,66,77,67,68,69,83,186,186,186,349,343,344',
         | 
| 423 | 
            +
            '402,167,347,345,348,326,40,41,186,346,82,70,71,72,74,76,75,342,351,352',
         | 
| 424 | 
            +
            '73,78,80,168,322,186,170,84,85,81,86,354,355,171,356,172,96,97,98,99',
         | 
| 425 | 
            +
            '2,3,4,40,41,113,353,40,41,40,41,40,41,55,56,57,58,59,60,61,62,79,178',
         | 
| 426 | 
            +
            '63,54,64,65,66,77,67,68,69,83,40,41,181,349,343,344,40,41,347,345,348',
         | 
| 427 | 
            +
            '40,41,40,41,346,82,70,71,72,74,76,75,342,351,352,73,78,80,354,355,184',
         | 
| 428 | 
            +
            '356,84,85,81,86,-4,41,-242,187,33,189,117,353,-242,40,41,40,41,113,55',
         | 
| 429 | 
            +
            '56,57,58,59,60,61,62,79,180,63,54,64,65,66,77,67,68,69,83,40,41,190',
         | 
| 430 | 
            +
            '349,343,344,286,287,347,345,348,32,375,376,-104,346,82,70,71,72,74,76',
         | 
| 431 | 
            +
            '75,342,351,352,73,78,80,354,355,-105,356,84,85,81,86,40,41,40,41,-106',
         | 
| 432 | 
            +
            '39,-107,353,391,392,40,41,40,41,55,56,57,58,59,60,61,62,79,-108,63,54',
         | 
| 433 | 
            +
            '64,65,66,77,67,68,69,83,40,41,-109,349,343,344,40,41,347,345,348,40',
         | 
| 434 | 
            +
            '41,40,41,346,82,70,71,72,74,76,75,342,351,352,73,78,80,40,41,-110,-111',
         | 
| 435 | 
            +
            '84,85,81,86,354,355,-112,356,-113,96,97,98,99,-114,48,-129,195,196,197',
         | 
| 436 | 
            +
            '353,198,199,200,208,209,42,55,56,57,58,59,60,61,62,79,210,63,54,64,65',
         | 
| 437 | 
            +
            '66,77,67,68,69,83,228,242,251,349,343,344,252,253,347,345,348,255,257',
         | 
| 438 | 
            +
            '258,42,346,82,70,71,72,74,76,75,342,351,352,73,78,80,354,355,260,356',
         | 
| 439 | 
            +
            '84,85,81,86,260,260,266,42,228,270,274,353,276,278,279,315,274,317,55',
         | 
| 440 | 
            +
            '56,57,58,59,60,61,62,79,278,63,54,64,65,66,77,67,68,69,83,327,328,329',
         | 
| 441 | 
            +
            '349,343,344,332,332,347,345,348,332,362,364,371,346,82,70,71,72,74,76',
         | 
| 442 | 
            +
            '75,342,351,352,73,78,80,372,373,374,377,84,85,81,86,33,379,382,96,97',
         | 
| 443 | 
            +
            '98,99,382,382,395,22,23,21,398,26,-219,25,399,30,406,131,132,133,134',
         | 
| 444 | 
            +
            '135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,407,32,408',
         | 
| 445 | 
            +
            '410,415,28,416,156,417,157,159,418,415,,,,82,70,71,72,74,76,75,,,,73',
         | 
| 446 | 
            +
            '78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,,25,,30,,131',
         | 
| 441 447 | 
             
            '132,133,134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83',
         | 
| 442 | 
            -
            ',32 | 
| 443 | 
            -
            '85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133 | 
| 444 | 
            -
            '135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32 | 
| 445 | 
            -
            '156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81 | 
| 446 | 
            -
            ' | 
| 447 | 
            -
            '138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,, | 
| 448 | 
            +
            ',32,,,174,28,,177,,175,,,,,,,82,70,71,72,74,76,75,,,,73,78,80,176,,',
         | 
| 449 | 
            +
            ',84,85,81,86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133',
         | 
| 450 | 
            +
            '134,135,136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,',
         | 
| 451 | 
            +
            '28,,156,,157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81',
         | 
| 452 | 
            +
            '86,33,,,96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135',
         | 
| 453 | 
            +
            '136,137,138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156',
         | 
| 454 | 
            +
            ',157,159,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,',
         | 
| 455 | 
            +
            '96,97,98,99,,,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137',
         | 
| 456 | 
            +
            '138,142,16,139,130,140,141,66,77,67,68,69,83,,32,,,,28,,234,,,159,,',
         | 
| 448 457 | 
             
            ',,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99',
         | 
| 449 458 | 
             
            ',,,22,23,21,,26,-219,25,,30,,131,132,133,134,135,136,137,138,142,16',
         | 
| 450 459 | 
             
            '139,130,140,141,66,77,67,68,69,83,,32,,,,28,,156,,157,159,,,,,,82,70',
         | 
| 451 460 | 
             
            '71,72,74,76,75,,,,73,78,80,,,,,84,85,81,86,33,,,96,97,98,99,,,,22,23',
         | 
| 452 461 | 
             
            '21,,26,-219,25,,30,,131,132,133,134,135,136,137,138,142,16,139,130,140',
         | 
| 453 | 
            -
            '141,66,77,67,68,69,83,,32,,,,28,, | 
| 462 | 
            +
            '141,66,77,67,68,69,83,,32,,,,28,,234,,,159,,,,,,82,70,71,72,74,76,75',
         | 
| 454 463 | 
             
            ',,,73,78,80,,,,,84,85,81,86,96,97,98,99,,,,90,89,91,,,,,,,,55,56,57',
         | 
| 455 | 
            -
            '58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,,,,,, | 
| 464 | 
            +
            '58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,,,,,,,,,192,,193,,',
         | 
| 456 465 | 
             
            ',,,82,70,71,72,74,76,75,,95,94,73,78,80,,,,,84,85,81,86,96,97,98,99',
         | 
| 457 466 | 
             
            ',,,90,89,91,,,,,,40,41,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77',
         | 
| 458 | 
            -
            '67,68,69,83, | 
| 467 | 
            +
            '67,68,69,83,194,,,,,,,,,,,,,,,,82,70,71,72,74,76,75,,95,94,73,78,80',
         | 
| 459 468 | 
             
            '96,97,98,99,84,85,81,86,,,,,,,,,,55,56,57,58,59,60,61,62,79,,63,54,64',
         | 
| 460 | 
            -
            '65,66,77,67,68,69,83, | 
| 461 | 
            -
            ' | 
| 462 | 
            -
            '60,61,62,79,,63,54,64,65,66,77,67,68,69,83, | 
| 463 | 
            -
            ',,,,82,70,71,72,74,76,75, | 
| 464 | 
            -
            ',,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83, | 
| 465 | 
            -
            ' | 
| 466 | 
            -
            '85,81,86,,,,,,,,40,41,,40,41,,40,41,-242,,33,,117,,-242,,, | 
| 467 | 
            -
            ',, | 
| 468 | 
            -
            ',,32,-242,,33,,117,,-242,, | 
| 469 | 
            -
            ',175,,, | 
| 470 | 
            -
            '22,23,21, | 
| 469 | 
            +
            '65,66,77,67,68,69,83,192,,193,,,,,234,,,159,,,,,,82,70,71,72,74,76,75',
         | 
| 470 | 
            +
            '192,,193,73,78,80,96,97,98,99,84,85,81,86,,,,,,,,40,41,55,56,57,58,59',
         | 
| 471 | 
            +
            '60,61,62,79,,63,54,64,65,66,77,67,68,69,83,194,40,41,,,,,234,,,159,',
         | 
| 472 | 
            +
            ',,,,82,70,71,72,74,76,75,194,,,73,78,80,96,97,98,99,84,85,81,86,,,,',
         | 
| 473 | 
            +
            ',,,,,55,56,57,58,59,60,61,62,79,,63,54,64,65,66,77,67,68,69,83,192,',
         | 
| 474 | 
            +
            '193,192,,193,192,,193,,,,,,,,82,70,71,72,74,76,75,,,,73,78,80,,,,,84',
         | 
| 475 | 
            +
            '85,81,86,,,,,,,,40,41,,40,41,,40,41,-242,,33,,117,,-242,,,303,304,113',
         | 
| 476 | 
            +
            ',,194,,,194,,,194,,-242,,33,,117,,-242,,305,303,304,113,,,,,,300,299',
         | 
| 477 | 
            +
            ',,32,-242,,33,,117,,-242,,305,303,304,113,,,,291,,300,299,,174,32,,177',
         | 
| 478 | 
            +
            ',175,,,326,,305,,,,,,,314,,300,299,,33,32,,176,,322,323,319,320,321',
         | 
| 479 | 
            +
            '22,23,21,324,26,,25,318,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
         | 
| 471 480 | 
             
            ',,33,,,,,32,,,,28,22,23,21,,26,,25,45,30,,8,12,19,20,9,10,13,14,15,16',
         | 
| 472 481 | 
             
            '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10',
         | 
| 473 482 | 
             
            '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12',
         | 
| @@ -476,44 +485,45 @@ clist = [ | |
| 476 485 | 
             
            '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32',
         | 
| 477 486 | 
             
            ',,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27',
         | 
| 478 487 | 
             
            ',,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16',
         | 
| 479 | 
            -
            '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25 | 
| 480 | 
            -
            '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8 | 
| 481 | 
            -
            '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26 | 
| 482 | 
            -
            ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22 | 
| 483 | 
            -
            '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33 | 
| 484 | 
            -
            ' | 
| 485 | 
            -
            ' | 
| 486 | 
            -
            '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9 | 
| 487 | 
            -
            '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8 | 
| 488 | 
            -
            '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26 | 
| 489 | 
            -
            ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22 | 
| 490 | 
            -
            '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33 | 
| 491 | 
            -
            ' | 
| 492 | 
            -
            ' | 
| 493 | 
            -
            '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9 | 
| 494 | 
            -
            '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8 | 
| 495 | 
            -
            '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26 | 
| 496 | 
            -
            ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22 | 
| 497 | 
            -
            '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33 | 
| 498 | 
            -
            ' | 
| 499 | 
            -
            ' | 
| 500 | 
            -
            '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9 | 
| 501 | 
            -
            '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8 | 
| 502 | 
            -
            '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26 | 
| 503 | 
            -
            ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22 | 
| 504 | 
            -
            '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33 | 
| 505 | 
            -
            ' | 
| 506 | 
            -
            ' | 
| 507 | 
            -
            '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9 | 
| 508 | 
            -
            '13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8 | 
| 509 | 
            -
            '19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26 | 
| 510 | 
            -
            ',30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22 | 
| 511 | 
            -
            '21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33 | 
| 512 | 
            -
            ' | 
| 513 | 
            -
            ' | 
| 514 | 
            -
            '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9 | 
| 515 | 
            -
            '13,14,15,16,17,18,11,27 | 
| 516 | 
            -
             | 
| 488 | 
            +
            '17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,-246,30,,8,12,19,20,9',
         | 
| 489 | 
            +
            '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
         | 
| 490 | 
            +
            '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
         | 
| 491 | 
            +
            ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
         | 
| 492 | 
            +
            '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
         | 
| 493 | 
            +
            '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
         | 
| 494 | 
            +
            '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
         | 
| 495 | 
            +
            '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
         | 
| 496 | 
            +
            '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
         | 
| 497 | 
            +
            '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
         | 
| 498 | 
            +
            ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
         | 
| 499 | 
            +
            '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
         | 
| 500 | 
            +
            '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
         | 
| 501 | 
            +
            '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
         | 
| 502 | 
            +
            '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
         | 
| 503 | 
            +
            '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
         | 
| 504 | 
            +
            '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
         | 
| 505 | 
            +
            ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
         | 
| 506 | 
            +
            '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
         | 
| 507 | 
            +
            '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
         | 
| 508 | 
            +
            '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
         | 
| 509 | 
            +
            '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
         | 
| 510 | 
            +
            '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
         | 
| 511 | 
            +
            '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
         | 
| 512 | 
            +
            ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
         | 
| 513 | 
            +
            '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
         | 
| 514 | 
            +
            '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
         | 
| 515 | 
            +
            '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
         | 
| 516 | 
            +
            '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
         | 
| 517 | 
            +
            '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
         | 
| 518 | 
            +
            '12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26',
         | 
| 519 | 
            +
            ',25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22',
         | 
| 520 | 
            +
            '23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11,27,,,33,,,,',
         | 
| 521 | 
            +
            '32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15,16,17,18,11',
         | 
| 522 | 
            +
            '27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9,10,13,14,15',
         | 
| 523 | 
            +
            '16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8,12,19,20,9',
         | 
| 524 | 
            +
            '10,13,14,15,16,17,18,11,27,,,33,,,,,32,,,,28,22,23,21,,26,,25,,30,,8',
         | 
| 525 | 
            +
            '12,19,20,9,10,13,14,15,16,17,18,11,27,,,,,,,,32,,,,28' ]
         | 
| 526 | 
            +
                    racc_action_table = arr = ::Array.new(3044, nil)
         | 
| 517 527 | 
             
                    idx = 0
         | 
| 518 528 | 
             
                    clist.each do |str|
         | 
| 519 529 | 
             
                      str.split(',', -1).each do |i|
         | 
| @@ -523,82 +533,82 @@ clist = [ | |
| 523 533 | 
             
                    end
         | 
| 524 534 |  | 
| 525 535 | 
             
            clist = [
         | 
| 526 | 
            -
            ' | 
| 527 | 
            -
            '44,44, | 
| 528 | 
            -
            ' | 
| 529 | 
            -
            ' | 
| 530 | 
            -
            '27, | 
| 531 | 
            -
            ' | 
| 532 | 
            -
            ' | 
| 533 | 
            -
            ' | 
| 534 | 
            -
            ' | 
| 535 | 
            -
            ' | 
| 536 | 
            -
            ' | 
| 537 | 
            -
            ' | 
| 538 | 
            -
            ' | 
| 539 | 
            -
            ' | 
| 540 | 
            -
            ' | 
| 541 | 
            -
            ' | 
| 542 | 
            -
            ' | 
| 543 | 
            -
            ' | 
| 544 | 
            -
            ' | 
| 545 | 
            -
            ' | 
| 546 | 
            -
            ' | 
| 547 | 
            -
            ' | 
| 548 | 
            -
            ' | 
| 549 | 
            -
            ' | 
| 550 | 
            -
            ' | 
| 551 | 
            -
            ' | 
| 552 | 
            -
            ' | 
| 553 | 
            -
            ' | 
| 554 | 
            -
            ' | 
| 555 | 
            -
            ' | 
| 556 | 
            -
            ' | 
| 557 | 
            -
            '282, | 
| 558 | 
            -
            ' | 
| 559 | 
            -
            '329, | 
| 560 | 
            -
            ' | 
| 561 | 
            -
            '49, | 
| 562 | 
            -
            '49,49,49,49,49,49, | 
| 563 | 
            -
            '49,49,49,49,49,49,49,,,,49,49,49,,,,,49,49,49,49,156,,,156,156,156 | 
| 564 | 
            -
            ' | 
| 565 | 
            -
            '156,156,156,156,156,156,156,156,156,156,,156,,,114,156,,114,,114 | 
| 566 | 
            -
            ' | 
| 567 | 
            -
            ' | 
| 568 | 
            -
            ' | 
| 569 | 
            -
            ' | 
| 570 | 
            -
            ' | 
| 571 | 
            -
            ' | 
| 572 | 
            -
            ' | 
| 573 | 
            -
            ' | 
| 574 | 
            -
            ' | 
| 575 | 
            -
            ' | 
| 576 | 
            -
            ' | 
| 577 | 
            -
            ', | 
| 578 | 
            -
            ' | 
| 579 | 
            -
            ' | 
| 580 | 
            -
            ' | 
| 581 | 
            -
            ', | 
| 582 | 
            -
            ' | 
| 583 | 
            -
            ' | 
| 536 | 
            +
            '326,326,48,326,1,280,5,177,218,7,325,382,28,219,220,326,24,219,325,382',
         | 
| 537 | 
            +
            '44,44,326,326,326,326,326,326,326,326,326,248,326,326,326,326,326,326',
         | 
| 538 | 
            +
            '326,326,326,326,270,48,28,326,326,326,177,218,326,326,326,280,219,220',
         | 
| 539 | 
            +
            '276,326,326,326,326,326,326,326,326,326,326,326,326,326,326,47,248,123',
         | 
| 540 | 
            +
            '27,326,326,326,326,333,333,278,333,270,333,333,333,333,32,119,35,322',
         | 
| 541 | 
            +
            '323,324,333,160,208,276,123,47,47,333,333,333,333,333,333,333,333,333',
         | 
| 542 | 
            +
            '183,333,333,333,333,333,333,333,333,333,333,119,278,51,333,333,333,160',
         | 
| 543 | 
            +
            '208,333,333,333,322,323,324,183,333,333,333,333,333,333,333,333,333',
         | 
| 544 | 
            +
            '333,333,333,333,333,6,6,51,271,333,333,333,333,334,334,36,334,116,334',
         | 
| 545 | 
            +
            '334,334,334,46,116,31,31,87,31,334,89,307,331,387,271,6,334,334,334',
         | 
| 546 | 
            +
            '334,334,334,334,334,334,388,334,334,334,334,334,334,334,334,334,334',
         | 
| 547 | 
            +
            '307,331,387,334,334,334,389,90,334,334,334,313,169,169,388,334,334,334',
         | 
| 548 | 
            +
            '334,334,334,334,334,334,334,334,334,334,334,91,313,389,93,334,334,334',
         | 
| 549 | 
            +
            '334,335,335,94,335,95,335,335,335,335,0,0,0,188,188,113,335,212,212',
         | 
| 550 | 
            +
            '213,213,214,214,335,335,335,335,335,335,335,335,335,115,335,335,335',
         | 
| 551 | 
            +
            '335,335,335,335,335,335,335,215,215,117,335,335,335,216,216,335,335',
         | 
| 552 | 
            +
            '335,217,217,223,223,335,335,335,335,335,335,335,335,335,335,335,335',
         | 
| 553 | 
            +
            '335,335,359,359,120,359,335,335,335,335,34,121,34,124,34,127,34,359',
         | 
| 554 | 
            +
            '34,224,224,225,225,34,359,359,359,359,359,359,359,359,359,128,359,359',
         | 
| 555 | 
            +
            '359,359,359,359,359,359,359,359,267,267,129,359,359,359,273,273,359',
         | 
| 556 | 
            +
            '359,359,34,350,350,130,359,359,359,359,359,359,359,359,359,359,359,359',
         | 
| 557 | 
            +
            '359,359,377,377,131,377,359,359,359,359,360,360,361,361,132,34,133,377',
         | 
| 558 | 
            +
            '374,374,380,380,383,383,377,377,377,377,377,377,377,377,377,134,377',
         | 
| 559 | 
            +
            '377,377,377,377,377,377,377,377,377,385,385,135,377,377,377,394,394',
         | 
| 560 | 
            +
            '377,377,377,409,409,411,411,377,377,377,377,377,377,377,377,377,377',
         | 
| 561 | 
            +
            '377,377,377,377,412,412,136,137,377,377,377,377,390,390,138,390,139',
         | 
| 562 | 
            +
            '390,390,390,390,140,141,142,145,146,148,390,150,153,154,161,162,163',
         | 
| 563 | 
            +
            '390,390,390,390,390,390,390,390,390,164,390,390,390,390,390,390,390',
         | 
| 564 | 
            +
            '390,390,390,190,206,221,390,390,390,222,227,390,390,390,232,243,244',
         | 
| 565 | 
            +
            '245,390,390,390,390,390,390,390,390,390,390,390,390,390,390,417,417',
         | 
| 566 | 
            +
            '246,417,390,390,390,390,247,249,250,254,257,259,260,417,261,262,264',
         | 
| 567 | 
            +
            '282,284,285,417,417,417,417,417,417,417,417,417,289,417,417,417,417',
         | 
| 568 | 
            +
            '417,417,417,417,417,417,303,304,305,417,417,417,319,320,417,417,417',
         | 
| 569 | 
            +
            '321,329,332,336,417,417,417,417,417,417,417,417,417,417,417,417,417',
         | 
| 570 | 
            +
            '417,337,338,340,358,417,417,417,417,49,362,366,49,49,49,49,368,370,381',
         | 
| 571 | 
            +
            '49,49,49,384,49,49,49,386,49,391,49,49,49,49,49,49,49,49,49,49,49,49',
         | 
| 572 | 
            +
            '49,49,49,49,49,49,49,49,392,49,393,397,403,49,405,49,408,49,49,414,418',
         | 
| 573 | 
            +
            ',,,49,49,49,49,49,49,49,,,,49,49,49,,,,,49,49,49,49,156,,,156,156,156',
         | 
| 574 | 
            +
            '156,,,,156,156,156,,156,,156,,156,,156,156,156,156,156,156,156,156,156',
         | 
| 575 | 
            +
            '156,156,156,156,156,156,156,156,156,156,156,,156,,,114,156,,114,,114',
         | 
| 576 | 
            +
            ',,,,,,156,156,156,156,156,156,156,,,,156,156,156,114,,,,156,156,156',
         | 
| 577 | 
            +
            '156,196,,,196,196,196,196,,,,196,196,196,,196,196,196,,196,,196,196',
         | 
| 578 | 
            +
            '196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196,196',
         | 
| 579 | 
            +
            '196,,196,,,,196,,196,,196,196,,,,,,196,196,196,196,196,196,196,,,,196',
         | 
| 580 | 
            +
            '196,196,,,,,196,196,196,196,197,,,197,197,197,197,,,,197,197,197,,197',
         | 
| 581 | 
            +
            '197,197,,197,,197,197,197,197,197,197,197,197,197,197,197,197,197,197',
         | 
| 582 | 
            +
            '197,197,197,197,197,197,,197,,,,197,,197,,197,197,,,,,,197,197,197,197',
         | 
| 583 | 
            +
            '197,197,197,,,,197,197,197,,,,,197,197,197,197,198,,,198,198,198,198',
         | 
| 584 | 
            +
            ',,,198,198,198,,198,198,198,,198,,198,198,198,198,198,198,198,198,198',
         | 
| 585 | 
            +
            '198,198,198,198,198,198,198,198,198,198,198,,198,,,,198,,198,,,198,',
         | 
| 586 | 
            +
            ',,,,198,198,198,198,198,198,198,,,,198,198,198,,,,,198,198,198,198,207',
         | 
| 587 | 
            +
            ',,207,207,207,207,,,,207,207,207,,207,207,207,,207,,207,207,207,207',
         | 
| 588 | 
            +
            '207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,207,,207',
         | 
| 589 | 
            +
            ',,,207,,207,,207,207,,,,,,207,207,207,207,207,207,207,,,,207,207,207',
         | 
| 590 | 
            +
            ',,,,207,207,207,207,255,,,255,255,255,255,,,,255,255,255,,255,255,255',
         | 
| 591 | 
            +
            ',255,,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255',
         | 
| 592 | 
            +
            '255,255,255,255,,255,,,,255,,255,,,255,,,,,,255,255,255,255,255,255',
         | 
| 593 | 
            +
            '255,,,,255,255,255,,,,,255,255,255,255,30,30,30,30,,,,30,30,30,,,,,',
         | 
| 584 594 | 
             
            ',,30,30,30,30,30,30,30,30,30,,30,30,30,30,30,30,30,30,30,30,,,,,,,,',
         | 
| 585 595 | 
             
            '143,,143,,,,,,30,30,30,30,30,30,30,,30,30,30,30,30,,,,,30,30,30,30,165',
         | 
| 586 596 | 
             
            '165,165,165,,,,165,165,165,,,,,,143,143,165,165,165,165,165,165,165',
         | 
| 587 597 | 
             
            '165,165,,165,165,165,165,165,165,165,165,165,165,143,,,,,,,,,,,,,,,',
         | 
| 588 | 
            -
            '165,165,165,165,165,165,165,,165,165,165,165,165, | 
| 589 | 
            -
            '165,165,165,,,,,,,,,, | 
| 590 | 
            -
            ' | 
| 591 | 
            -
            ' | 
| 592 | 
            -
            ',,,,,,, | 
| 593 | 
            -
            ' | 
| 594 | 
            -
            ' | 
| 595 | 
            -
            ',,, | 
| 596 | 
            -
            ' | 
| 597 | 
            -
            ' | 
| 598 | 
            -
            ' | 
| 599 | 
            -
            ', | 
| 600 | 
            -
            ' | 
| 601 | 
            -
            ' | 
| 598 | 
            +
            '165,165,165,165,165,165,165,,165,165,165,165,165,199,199,199,199,165',
         | 
| 599 | 
            +
            '165,165,165,,,,,,,,,,199,199,199,199,199,199,199,199,199,,199,199,199',
         | 
| 600 | 
            +
            '199,199,199,199,199,199,199,201,,201,,,,,199,,,199,,,,,,199,199,199',
         | 
| 601 | 
            +
            '199,199,199,199,203,,203,199,199,199,200,200,200,200,199,199,199,199',
         | 
| 602 | 
            +
            ',,,,,,,201,201,200,200,200,200,200,200,200,200,200,,200,200,200,200',
         | 
| 603 | 
            +
            '200,200,200,200,200,200,201,203,203,,,,,200,,,200,,,,,,200,200,200,200',
         | 
| 604 | 
            +
            '200,200,200,203,,,200,200,200,234,234,234,234,200,200,200,200,,,,,,',
         | 
| 605 | 
            +
            ',,,234,234,234,234,234,234,234,234,234,,234,234,234,234,234,234,234',
         | 
| 606 | 
            +
            '234,234,234,204,,204,205,,205,238,,238,,,,,,,,234,234,234,234,234,234',
         | 
| 607 | 
            +
            '234,,,,234,234,234,,,,,234,234,234,234,,,,,,,,204,204,,205,205,,238',
         | 
| 608 | 
            +
            '238,277,,277,,277,,277,,,277,277,277,,,204,,,205,,,238,,281,,281,,281',
         | 
| 609 | 
            +
            ',281,,277,281,281,281,,,,,,277,277,,,277,288,,288,,288,,288,,281,288',
         | 
| 610 | 
            +
            '288,288,,,,277,,281,281,,290,281,,290,,290,,,290,,288,,,,,,,281,,288',
         | 
| 611 | 
            +
            '288,,2,288,,290,,290,290,290,290,290,2,2,2,290,2,,2,288,2,,2,2,2,2,2',
         | 
| 602 612 | 
             
            '2,2,2,2,2,2,2,2,2,,,25,,,,,2,,,,2,25,25,25,,25,,25,25,25,,25,25,25,25',
         | 
| 603 613 | 
             
            '25,25,25,25,25,25,25,25,25,25,,,26,,,,,25,,,,25,26,26,26,,26,,26,,26',
         | 
| 604 614 | 
             
            ',26,26,26,26,26,26,26,26,26,26,26,26,26,26,,,40,,,,,26,,,,26,40,40,40',
         | 
| @@ -608,54 +618,56 @@ clist = [ | |
| 608 618 | 
             
            '43,43,43,43,,,53,,,,,43,,,,43,53,53,53,,53,,53,,53,,53,53,53,53,53,53',
         | 
| 609 619 | 
             
            '53,53,53,53,53,53,53,53,,,92,,,,,53,,,,53,92,92,92,,92,,92,,92,,92,92',
         | 
| 610 620 | 
             
            '92,92,92,92,92,92,92,92,92,92,92,92,,,125,,,,,92,,,,92,125,125,125,',
         | 
| 611 | 
            -
            '125,,125 | 
| 612 | 
            -
            ' | 
| 613 | 
            -
            '157,157,157,157,157,157,157,157,157,,,158,,,,,157,,,,157,158,158 | 
| 614 | 
            -
            ' | 
| 615 | 
            -
            '158,,,159,,,,,158,,,,158,159,159,159,,159,,159,,159,,159,159,159 | 
| 616 | 
            -
            '159,159,159,159,159,159,159,159,159,159,,,166,,,,,159,,,,159,166 | 
| 617 | 
            -
            '166,,166,,166,,166,,166,166,166,166,166,166,166,166,166,166,166 | 
| 618 | 
            -
            '166,166,,,167,,,,,166,,,,166,167,167,167,,167,,167,,167,,167,167 | 
| 619 | 
            -
            '167,167,167,167,167,167,167,167,167,167,167,,,168,,,,,167,,,,167 | 
| 620 | 
            -
            '168,168,,168,,168,,168,,168,168,168,168,168,168,168,168,168,168 | 
| 621 | 
            -
            '168,168,168,,,170,,,,,168,,,,168,170,170,170,,170,,170,,170,,170 | 
| 622 | 
            -
            '170,170,170,170,170,170,170,170,170,170,170,170,,,171,,,,,170 | 
| 623 | 
            -
            '171,171,171,,171,,171,,171,,171,171,171,171,171,171,171,171,171 | 
| 624 | 
            -
            '171,171,171,171,,,172,,,,,171,,,,171,172,172,172,,172,,172,,172 | 
| 625 | 
            -
            '172,172,172,172,172,172,172,172,172,172,172,172,172,,,178,,,,,172 | 
| 626 | 
            -
            ' | 
| 621 | 
            +
            '125,,125,125,125,,125,125,125,125,125,125,125,125,125,125,125,125,125',
         | 
| 622 | 
            +
            '125,,,157,,,,,125,,,,125,157,157,157,,157,,157,,157,,157,157,157,157',
         | 
| 623 | 
            +
            '157,157,157,157,157,157,157,157,157,157,,,158,,,,,157,,,,157,158,158',
         | 
| 624 | 
            +
            '158,,158,,158,,158,,158,158,158,158,158,158,158,158,158,158,158,158',
         | 
| 625 | 
            +
            '158,158,,,159,,,,,158,,,,158,159,159,159,,159,,159,,159,,159,159,159',
         | 
| 626 | 
            +
            '159,159,159,159,159,159,159,159,159,159,159,,,166,,,,,159,,,,159,166',
         | 
| 627 | 
            +
            '166,166,,166,,166,,166,,166,166,166,166,166,166,166,166,166,166,166',
         | 
| 628 | 
            +
            '166,166,166,,,167,,,,,166,,,,166,167,167,167,,167,,167,,167,,167,167',
         | 
| 629 | 
            +
            '167,167,167,167,167,167,167,167,167,167,167,167,,,168,,,,,167,,,,167',
         | 
| 630 | 
            +
            '168,168,168,,168,,168,,168,,168,168,168,168,168,168,168,168,168,168',
         | 
| 631 | 
            +
            '168,168,168,168,,,170,,,,,168,,,,168,170,170,170,,170,,170,,170,,170',
         | 
| 632 | 
            +
            '170,170,170,170,170,170,170,170,170,170,170,170,170,,,171,,,,,170,,',
         | 
| 633 | 
            +
            ',170,171,171,171,,171,,171,,171,,171,171,171,171,171,171,171,171,171',
         | 
| 634 | 
            +
            '171,171,171,171,171,,,172,,,,,171,,,,171,172,172,172,,172,,172,,172',
         | 
| 635 | 
            +
            ',172,172,172,172,172,172,172,172,172,172,172,172,172,172,,,178,,,,,172',
         | 
| 636 | 
            +
            ',,,172,178,178,178,,178,,178,,178,,178,178,178,178,178,178,178,178,178',
         | 
| 627 637 | 
             
            '178,178,178,178,178,,,179,,,,,178,,,,178,179,179,179,,179,,179,,179',
         | 
| 628 638 | 
             
            ',179,179,179,179,179,179,179,179,179,179,179,179,179,179,,,181,,,,,179',
         | 
| 629 639 | 
             
            ',,,179,181,181,181,,181,,181,,181,,181,181,181,181,181,181,181,181,181',
         | 
| 630 | 
            -
            '181,181,181,181,181,,, | 
| 631 | 
            -
            ', | 
| 632 | 
            -
            ',,, | 
| 633 | 
            -
            ' | 
| 634 | 
            -
            ', | 
| 635 | 
            -
            ',,, | 
| 636 | 
            -
            ' | 
| 637 | 
            -
            ', | 
| 638 | 
            -
            ',,, | 
| 639 | 
            -
            ' | 
| 640 | 
            -
            ', | 
| 641 | 
            -
            ',,, | 
| 642 | 
            -
            ' | 
| 643 | 
            -
            ', | 
| 644 | 
            -
            ',,, | 
| 645 | 
            -
            ' | 
| 646 | 
            -
            ', | 
| 647 | 
            -
            ',,, | 
| 648 | 
            -
            ' | 
| 649 | 
            -
            ', | 
| 650 | 
            -
            ',,, | 
| 651 | 
            -
            ' | 
| 652 | 
            -
            ', | 
| 653 | 
            -
            ',,, | 
| 654 | 
            -
            ' | 
| 655 | 
            -
            ',395,395,395,395,395,395,395,395,395,395,395,395,395,395,,, | 
| 656 | 
            -
            ',,,395, | 
| 657 | 
            -
            ' | 
| 658 | 
            -
             | 
| 640 | 
            +
            '181,181,181,181,181,,,186,,,,,181,,,,181,186,186,186,,186,,186,,186',
         | 
| 641 | 
            +
            ',186,186,186,186,186,186,186,186,186,186,186,186,186,186,,,202,,,,,186',
         | 
| 642 | 
            +
            ',,,186,202,202,202,,202,,202,,202,,202,202,202,202,202,202,202,202,202',
         | 
| 643 | 
            +
            '202,202,202,202,202,,,209,,,,,202,,,,202,209,209,209,,209,,209,,209',
         | 
| 644 | 
            +
            ',209,209,209,209,209,209,209,209,209,209,209,209,209,209,,,228,,,,,209',
         | 
| 645 | 
            +
            ',,,209,228,228,228,,228,,228,,228,,228,228,228,228,228,228,228,228,228',
         | 
| 646 | 
            +
            '228,228,228,228,228,,,251,,,,,228,,,,228,251,251,251,,251,,251,,251',
         | 
| 647 | 
            +
            ',251,251,251,251,251,251,251,251,251,251,251,251,251,251,,,279,,,,,251',
         | 
| 648 | 
            +
            ',,,251,279,279,279,,279,,279,,279,,279,279,279,279,279,279,279,279,279',
         | 
| 649 | 
            +
            '279,279,279,279,279,,,315,,,,,279,,,,279,315,315,315,,315,,315,,315',
         | 
| 650 | 
            +
            ',315,315,315,315,315,315,315,315,315,315,315,315,315,315,,,327,,,,,315',
         | 
| 651 | 
            +
            ',,,315,327,327,327,,327,,327,,327,,327,327,327,327,327,327,327,327,327',
         | 
| 652 | 
            +
            '327,327,327,327,327,,,328,,,,,327,,,,327,328,328,328,,328,,328,,328',
         | 
| 653 | 
            +
            ',328,328,328,328,328,328,328,328,328,328,328,328,328,328,,,365,,,,,328',
         | 
| 654 | 
            +
            ',,,328,365,365,365,,365,,365,,365,,365,365,365,365,365,365,365,365,365',
         | 
| 655 | 
            +
            '365,365,365,365,365,,,367,,,,,365,,,,365,367,367,367,,367,,367,,367',
         | 
| 656 | 
            +
            ',367,367,367,367,367,367,367,367,367,367,367,367,367,367,,,369,,,,,367',
         | 
| 657 | 
            +
            ',,,367,369,369,369,,369,,369,,369,,369,369,369,369,369,369,369,369,369',
         | 
| 658 | 
            +
            '369,369,369,369,369,,,371,,,,,369,,,,369,371,371,371,,371,,371,,371',
         | 
| 659 | 
            +
            ',371,371,371,371,371,371,371,371,371,371,371,371,371,371,,,372,,,,,371',
         | 
| 660 | 
            +
            ',,,371,372,372,372,,372,,372,,372,,372,372,372,372,372,372,372,372,372',
         | 
| 661 | 
            +
            '372,372,372,372,372,,,373,,,,,372,,,,372,373,373,373,,373,,373,,373',
         | 
| 662 | 
            +
            ',373,373,373,373,373,373,373,373,373,373,373,373,373,373,,,379,,,,,373',
         | 
| 663 | 
            +
            ',,,373,379,379,379,,379,,379,,379,,379,379,379,379,379,379,379,379,379',
         | 
| 664 | 
            +
            '379,379,379,379,379,,,395,,,,,379,,,,379,395,395,395,,395,,395,,395',
         | 
| 665 | 
            +
            ',395,395,395,395,395,395,395,395,395,395,395,395,395,395,,,398,,,,,395',
         | 
| 666 | 
            +
            ',,,395,398,398,398,,398,,398,,398,,398,398,398,398,398,398,398,398,398',
         | 
| 667 | 
            +
            '398,398,398,398,398,,,399,,,,,398,,,,398,399,399,399,,399,,399,,399',
         | 
| 668 | 
            +
            ',399,399,399,399,399,399,399,399,399,399,399,399,399,399,,,,,,,,399',
         | 
| 669 | 
            +
            ',,,399' ]
         | 
| 670 | 
            +
                    racc_action_check = arr = ::Array.new(3044, nil)
         | 
| 659 671 | 
             
                    idx = 0
         | 
| 660 672 | 
             
                    clist.each do |str|
         | 
| 661 673 | 
             
                      str.split(',', -1).each do |i|
         | 
| @@ -669,192 +681,194 @@ racc_action_pointer = [ | |
| 669 681 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 670 682 | 
             
               nil,   nil,   nil,   nil,    -4,  1626,  1662,    56,    -6,   nil,
         | 
| 671 683 | 
             
              1140,   167,    84,   nil,   316,    14,   140,   nil,   nil,   nil,
         | 
| 672 | 
            -
              1698,  1734,   nil,  1770,   -27,   nil, | 
| 684 | 
            +
              1698,  1734,   nil,  1770,   -27,   nil,   121,    52,    -2,   604,
         | 
| 673 685 | 
             
               nil,   101,   nil,  1806,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 674 686 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 675 687 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 676 | 
            -
               nil,   nil,   nil,   nil,   nil,   nil,   nil,    | 
| 677 | 
            -
                | 
| 688 | 
            +
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   125,   nil,   119,
         | 
| 689 | 
            +
               152,   174,  1842,   188,   195,   197,   nil,   nil,   nil,   nil,
         | 
| 678 690 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 679 | 
            -
               nil,   nil,   nil,    | 
| 680 | 
            -
                | 
| 681 | 
            -
               337,   347,   349,   366,   379,   408,   409,   416,   418, | 
| 682 | 
            -
                | 
| 683 | 
            -
                | 
| 684 | 
            -
                77,    | 
| 691 | 
            +
               nil,   nil,   nil,   238,   694,   224,   160,   237,   nil,    71,
         | 
| 692 | 
            +
               308,   269,   nil,    52,   298,  1878,   nil,   302,   337,   333,
         | 
| 693 | 
            +
               320,   337,   347,   349,   366,   379,   408,   409,   416,   418,
         | 
| 694 | 
            +
               423,   450,   425,  1189,   nil,   426,   425,   nil,   426,   nil,
         | 
| 695 | 
            +
               428,   nil,   nil,   429,   430,   nil,   681,  1914,  1950,  1986,
         | 
| 696 | 
            +
                77,   455,   428,   428,   466,  1214,  2022,  2058,  2094,   165,
         | 
| 685 697 | 
             
              2130,  2166,  2202,   nil,   nil,   nil,   nil,     3,  2238,  2274,
         | 
| 686 | 
            -
               nil,  2310,   nil, | 
| 687 | 
            -
               nil,   nil,   nil,   nil,   758,   835,   912,  1280, | 
| 688 | 
            -
               | 
| 689 | 
            -
               208,   210,   232,   238,   243,     4,     9, | 
| 690 | 
            -
               245,   278,   280,   nil,   505,   | 
| 691 | 
            -
               nil, | 
| 692 | 
            -
               493,   490,   463,   511,   517,    27,   518, | 
| 693 | 
            -
               nil,   489,  1066,   nil,   491,   nil,   483, | 
| 694 | 
            -
                | 
| 695 | 
            -
               279,   nil,   nil,    52,  1506,    77,   | 
| 696 | 
            -
               nil,   470,   548,   nil,   nil,  1550,   514, | 
| 697 | 
            -
             | 
| 698 | 
            -
                | 
| 699 | 
            -
               168,   nil,   | 
| 700 | 
            -
                88,    89,   -62,    -2,   | 
| 701 | 
            -
                77,   156,   235,   565,   580,   581,   nil, | 
| 702 | 
            -
                | 
| 703 | 
            -
                | 
| 704 | 
            -
                | 
| 705 | 
            -
              2814,   363,   nil,   nil,   377,   nil,   | 
| 706 | 
            -
                | 
| 707 | 
            -
               618,   380,   | 
| 708 | 
            -
                | 
| 709 | 
            -
               nil,   612,   nil,   nil,   527,   602,   nil, | 
| 698 | 
            +
               nil,  2310,   nil,    89,   nil,   nil,  2346,   nil,   202,   nil,
         | 
| 699 | 
            +
               450,   nil,   nil,   nil,   nil,   nil,   758,   835,   912,  1280,
         | 
| 700 | 
            +
              1346,  1321,  2382,  1344,  1453,  1456,   478,   989,    78,  2418,
         | 
| 701 | 
            +
               nil,   nil,   206,   208,   210,   232,   238,   243,     4,     9,
         | 
| 702 | 
            +
                10,   446,   503,   245,   278,   280,   nil,   505,  2454,   nil,
         | 
| 703 | 
            +
               nil,   nil,   465,   nil,  1412,   nil,   nil,   nil,  1459,   nil,
         | 
| 704 | 
            +
               nil,   nil,   nil,   493,   490,   463,   511,   517,    27,   518,
         | 
| 705 | 
            +
               534,  2490,   nil,   nil,   489,  1066,   nil,   491,   nil,   483,
         | 
| 706 | 
            +
               464,   501,   500,   nil,   527,   nil,   nil,   303,   nil,   nil,
         | 
| 707 | 
            +
                38,   132,   nil,   279,   nil,   nil,    52,  1506,    77,  2526,
         | 
| 708 | 
            +
                -8,  1528,   528,   nil,   470,   548,   nil,   nil,  1550,   514,
         | 
| 709 | 
            +
              1537,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 710 | 
            +
               nil,   nil,   nil,   527,   528,   516,   nil,   154,   nil,   nil,
         | 
| 711 | 
            +
               nil,   nil,   nil,   168,   nil,  2562,   nil,   nil,   nil,   545,
         | 
| 712 | 
            +
               546,   550,    87,    88,    89,   -62,    -2,  2598,  2634,   572,
         | 
| 713 | 
            +
               nil,   155,   527,    77,   156,   235,   565,   580,   581,   nil,
         | 
| 714 | 
            +
               563,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 715 | 
            +
               311,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   546,   306,
         | 
| 716 | 
            +
               340,   342,   565,   nil,   nil,  2670,   592,  2706,   597,  2742,
         | 
| 717 | 
            +
               598,  2778,  2814,  2850,   363,   nil,   nil,   377,   nil,  2886,
         | 
| 718 | 
            +
               350,   573,     0,   352,   577,   374,   581,   156,   168,   185,
         | 
| 719 | 
            +
               456,   570,   591,   618,   380,  2922,   nil,   632,  2958,  2994,
         | 
| 720 | 
            +
               nil,   nil,   nil,   594,   nil,   610,   nil,   nil,   599,   385,
         | 
| 721 | 
            +
               nil,   387,   403,   nil,   612,   nil,   nil,   527,   602,   nil,
         | 
| 722 | 
            +
               nil ]
         | 
| 710 723 |  | 
| 711 724 | 
             
            racc_action_default = [
         | 
| 712 | 
            -
              - | 
| 725 | 
            +
              -248,  -248,  -242,    -6,   -15,  -248,    -4,  -157,  -160,  -161,
         | 
| 713 726 | 
             
              -162,  -163,  -164,  -165,  -166,  -167,  -168,  -169,  -170,  -171,
         | 
| 714 | 
            -
              -172,  -173,  -174,  -175,  -176,  -242,  -242,  - | 
| 715 | 
            -
              - | 
| 716 | 
            -
              -242,  -242,  -183,  -242,  -185,  -178,  - | 
| 717 | 
            -
              -182,  - | 
| 727 | 
            +
              -172,  -173,  -174,  -175,  -176,  -242,  -242,  -248,   -80,  -184,
         | 
| 728 | 
            +
              -248,  -248,  -243,  -245,   -16,    -4,  -147,   421,    -1,    -5,
         | 
| 729 | 
            +
              -242,  -242,  -183,  -242,  -185,  -178,  -247,  -248,  -242,  -242,
         | 
| 730 | 
            +
              -182,  -248,  -204,  -242,  -104,  -105,  -106,  -107,  -108,  -109,
         | 
| 718 731 | 
             
              -110,  -111,  -112,  -113,  -114,  -115,  -116,  -117,  -118,  -119,
         | 
| 719 732 | 
             
              -120,  -121,  -122,  -123,  -124,  -125,  -126,  -127,  -128,  -129,
         | 
| 720 | 
            -
              -130,  -131,  -132,  -133,  -134,  -135,  -136,  - | 
| 721 | 
            -
              - | 
| 733 | 
            +
              -130,  -131,  -132,  -133,  -134,  -135,  -136,  -247,  -188,  -248,
         | 
| 734 | 
            +
              -248,  -248,  -242,  -248,  -248,  -248,  -199,  -200,  -201,  -202,
         | 
| 722 735 | 
             
              -235,  -236,  -237,  -238,  -244,    -2,    -7,    -8,    -9,   -10,
         | 
| 723 | 
            -
               -11,   -12,   -13,   -16,  - | 
| 724 | 
            -
              - | 
| 736 | 
            +
               -11,   -12,   -13,   -16,  -248,  -248,  -248,  -248,    -3,   -80,
         | 
| 737 | 
            +
              -248,  -158,  -159,  -248,  -248,  -242,  -180,  -248,  -248,  -248,
         | 
| 725 738 | 
             
              -170,  -160,  -164,  -171,  -172,  -161,  -162,  -165,  -166,  -169,
         | 
| 726 | 
            -
              -163,  -115,  -167,  -231,  -197,  - | 
| 739 | 
            +
              -163,  -115,  -167,  -231,  -197,  -248,  -208,  -209,  -211,  -212,
         | 
| 727 740 | 
             
              -214,  -215,  -218,  -221,  -223,  -224,  -242,  -242,  -242,  -242,
         | 
| 728 | 
            -
              - | 
| 741 | 
            +
              -248,  -248,  -248,  -206,  -248,  -246,  -242,  -242,  -242,  -193,
         | 
| 729 742 | 
             
              -242,  -242,  -242,   -17,   -14,   -14,   -14,  -242,  -242,  -242,
         | 
| 730 | 
            -
              -240,  -242,   -79,  - | 
| 731 | 
            -
              -232,  -233,  -234,  -198,  -242,  -242,  -242,  -219, | 
| 732 | 
            -
              - | 
| 733 | 
            -
              - | 
| 734 | 
            -
              - | 
| 735 | 
            -
              - | 
| 736 | 
            -
              - | 
| 737 | 
            -
              - | 
| 738 | 
            -
               -26,   -29,   -57,  -239,  -153,  -216,   -30, | 
| 739 | 
            -
              -142,  -146,   -30,  -242,   -16,  -242,  -242, | 
| 740 | 
            -
              -138,  -145,  - | 
| 741 | 
            -
               - | 
| 742 | 
            -
              - | 
| 743 | 
            -
               -71,   -18,  -242,  -140,  -141,   -22,   -42, | 
| 744 | 
            -
             | 
| 745 | 
            -
              - | 
| 746 | 
            -
             | 
| 747 | 
            -
               -99,  -100,  -101,  -102,  -103,  -129,  - | 
| 748 | 
            -
               - | 
| 749 | 
            -
              -242,   -73,   -95,   -96,  - | 
| 750 | 
            -
               - | 
| 751 | 
            -
              - | 
| 752 | 
            -
               - | 
| 753 | 
            -
               -70,   -76,   -77,   -85,  - | 
| 743 | 
            +
              -240,  -242,   -79,  -248,  -149,  -177,  -242,  -179,  -186,  -181,
         | 
| 744 | 
            +
               -81,  -225,  -232,  -233,  -234,  -198,  -242,  -242,  -242,  -219,
         | 
| 745 | 
            +
              -219,  -231,  -242,  -231,  -231,  -231,  -248,  -242,  -248,  -242,
         | 
| 746 | 
            +
              -187,  -189,  -190,  -191,  -192,  -194,  -195,  -196,  -242,  -242,
         | 
| 747 | 
            +
              -242,  -248,  -248,  -154,  -155,  -156,  -148,  -248,  -242,  -207,
         | 
| 748 | 
            +
              -215,  -210,  -217,  -213,  -248,  -220,  -222,  -226,  -231,  -227,
         | 
| 749 | 
            +
              -228,  -230,   -82,  -248,  -248,  -203,  -137,  -137,  -242,  -137,
         | 
| 750 | 
            +
              -248,  -242,  -241,  -150,  -205,  -242,  -229,  -248,   -83,   -19,
         | 
| 751 | 
            +
              -145,   -24,   -30,   -26,   -29,   -57,  -239,  -153,  -216,   -30,
         | 
| 752 | 
            +
              -242,  -248,  -139,  -142,  -146,   -30,  -242,   -16,  -242,  -242,
         | 
| 753 | 
            +
               -16,   -16,   -20,  -138,  -145,  -248,  -143,  -144,   -16,   -25,
         | 
| 754 | 
            +
               -71,   -23,   -31,   -32,   -33,   -34,   -35,   -36,   -37,   -38,
         | 
| 755 | 
            +
               -39,   -40,   -41,  -248,  -248,  -248,   -27,  -248,   -56,   -58,
         | 
| 756 | 
            +
               -59,   -60,   -61,   -71,   -18,  -242,  -140,  -141,   -22,   -42,
         | 
| 757 | 
            +
               -42,   -42,  -242,  -242,  -242,   -68,  -248,  -242,  -242,  -248,
         | 
| 758 | 
            +
               -28,  -248,  -248,  -248,  -248,  -248,   -62,   -64,   -66,   -69,
         | 
| 759 | 
            +
              -248,   -72,   -86,   -87,   -88,   -89,   -90,   -91,   -92,   -93,
         | 
| 760 | 
            +
               -94,   -97,   -98,   -99,  -100,  -101,  -102,  -103,  -129,  -248,
         | 
| 761 | 
            +
               -53,   -54,  -248,   -21,   -43,  -242,   -50,  -242,   -50,  -242,
         | 
| 762 | 
            +
               -50,  -242,  -242,  -242,   -73,   -95,   -96,  -248,  -151,  -242,
         | 
| 763 | 
            +
               -44,  -248,  -248,   -46,  -248,   -48,  -248,  -248,  -248,  -248,
         | 
| 764 | 
            +
              -248,  -248,  -248,  -248,   -55,  -242,   -51,  -248,  -242,  -242,
         | 
| 765 | 
            +
               -63,   -65,   -67,   -15,   -84,  -248,   -74,   -75,  -248,   -45,
         | 
| 766 | 
            +
               -52,   -47,   -49,   -70,   -76,   -77,   -85,  -248,   -15,  -152,
         | 
| 767 | 
            +
               -78 ]
         | 
| 754 768 |  | 
| 755 769 | 
             
            racc_goto_table = [
         | 
| 756 | 
            -
                 6,    93,    | 
| 757 | 
            -
             | 
| 758 | 
            -
                | 
| 759 | 
            -
                | 
| 760 | 
            -
             | 
| 761 | 
            -
                | 
| 762 | 
            -
                | 
| 763 | 
            -
                | 
| 764 | 
            -
                | 
| 765 | 
            -
               169,    | 
| 766 | 
            -
               nil,    | 
| 767 | 
            -
               nil,    | 
| 768 | 
            -
               nil,   nil,   nil,    | 
| 770 | 
            +
                 6,    93,   127,    46,    92,   116,   163,    88,   114,   191,
         | 
| 771 | 
            +
                50,   202,   206,   129,    38,   230,   124,   233,   264,   128,
         | 
| 772 | 
            +
               272,   123,   359,   262,    47,   232,   232,     1,   277,   366,
         | 
| 773 | 
            +
               368,   370,   235,   236,   413,   281,    34,    35,   121,   122,
         | 
| 774 | 
            +
               106,   288,   105,   118,   316,   269,   264,   143,   264,   420,
         | 
| 775 | 
            +
               381,   289,   384,   275,   386,   378,   306,   164,   259,   261,
         | 
| 776 | 
            +
               244,   265,   218,   219,   220,   310,   311,   237,   312,   239,
         | 
| 777 | 
            +
               240,   241,   249,   393,   268,   333,   334,   335,   280,   309,
         | 
| 778 | 
            +
               340,   390,   403,   232,   119,   162,   405,   173,   271,   202,
         | 
| 779 | 
            +
               169,   285,   336,   337,   338,   183,   221,    87,   231,   100,
         | 
| 780 | 
            +
               nil,   182,   nil,   nil,   256,   nil,   nil,   nil,   nil,   nil,
         | 
| 781 | 
            +
               nil,   nil,   nil,   419,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 782 | 
            +
               nil,   nil,   nil,   188,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 769 783 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,    93,   nil,   nil,    92,
         | 
| 770 | 
            -
               nil,   nil,    | 
| 771 | 
            -
               nil,   nil,   nil,   nil,    | 
| 772 | 
            -
                | 
| 773 | 
            -
                | 
| 774 | 
            -
               nil,    | 
| 775 | 
            -
               nil,   nil,   143,   143,   143,   nil,   nil,   nil, | 
| 776 | 
            -
                | 
| 784 | 
            +
               nil,   nil,   211,   nil,   nil,   nil,   nil,   nil,   222,   nil,
         | 
| 785 | 
            +
               nil,   nil,   nil,   nil,   201,   203,   204,   205,   nil,   nil,
         | 
| 786 | 
            +
               229,   nil,   245,   nil,   212,   213,   214,   nil,   215,   216,
         | 
| 787 | 
            +
               217,   243,   246,   247,   nil,   nil,   223,   224,   nil,   225,
         | 
| 788 | 
            +
               nil,   254,   nil,   nil,   188,   nil,   nil,   nil,   nil,   128,
         | 
| 789 | 
            +
               128,   250,   nil,   nil,   143,   143,   143,   nil,   nil,   nil,
         | 
| 790 | 
            +
               238,   nil,   nil,   nil,   nil,   143,   nil,   nil,   nil,   nil,
         | 
| 777 791 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 778 | 
            -
               nil,   nil,   nil,   nil,    | 
| 779 | 
            -
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   128,   nil,
         | 
| 780 | 
            -
               nil,   nil,   nil,   nil,   nil,   116,   264,   nil,   nil,   116,
         | 
| 781 | 
            -
               143,   310,   nil,   nil,   304,   nil,   116,   nil,   nil,   nil,
         | 
| 792 | 
            +
               nil,   nil,   nil,   nil,   282,   nil,   nil,   nil,   nil,   nil,
         | 
| 782 793 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 794 | 
            +
               nil,   128,   nil,   nil,   nil,   nil,   nil,   nil,   116,   267,
         | 
| 795 | 
            +
               nil,   nil,   116,   143,   313,   nil,   nil,   307,   nil,   116,
         | 
| 783 796 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 784 797 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 785 | 
            -
               328,   nil,   nil,   nil,   354,   nil,   nil,   nil,   nil,   nil,
         | 
| 786 | 
            -
               nil,   354,   354,   354,   362,   364,   366,   nil,   nil,   nil,
         | 
| 787 798 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 788 | 
            -
               nil,   nil,    | 
| 799 | 
            +
               nil,   nil,   nil,   331,   nil,   nil,   nil,   357,   nil,   nil,
         | 
| 800 | 
            +
               nil,   nil,   nil,   nil,   357,   357,   357,   365,   367,   369,
         | 
| 789 801 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 790 | 
            -
               nil,   nil,   nil,   nil,   nil,    | 
| 791 | 
            -
                | 
| 792 | 
            -
                | 
| 793 | 
            -
                | 
| 794 | 
            -
               nil,    | 
| 795 | 
            -
                | 
| 802 | 
            +
               nil,   nil,   nil,   nil,   nil,   360,   361,   nil,   nil,   nil,
         | 
| 803 | 
            +
               357,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 804 | 
            +
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   357,   387,
         | 
| 805 | 
            +
               388,   389,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 806 | 
            +
               nil,   357,   nil,   380,   404,   383,   nil,   385,   nil,   nil,
         | 
| 807 | 
            +
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   394,   nil,   nil,
         | 
| 808 | 
            +
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   357,   nil,
         | 
| 809 | 
            +
               nil,   nil,   nil,   409,   nil,   nil,   411,   412 ]
         | 
| 796 810 |  | 
| 797 811 | 
             
            racc_goto_check = [
         | 
| 798 | 
            -
                 2,    52,     | 
| 799 | 
            -
                 | 
| 800 | 
            -
                 | 
| 801 | 
            -
                 | 
| 802 | 
            -
                  | 
| 803 | 
            -
                 | 
| 804 | 
            -
                 | 
| 805 | 
            -
                 | 
| 806 | 
            -
                42,    43,    45,    49,    35,     | 
| 807 | 
            -
                 2,     | 
| 808 | 
            -
               nil,   nil, | 
| 809 | 
            -
               nil, | 
| 812 | 
            +
                 2,    52,    16,    20,    34,    59,    60,    64,    15,    76,
         | 
| 813 | 
            +
                46,    65,    50,    48,     3,    71,    61,    71,    24,    59,
         | 
| 814 | 
            +
                54,    20,    35,    22,     2,    66,    66,     1,    19,    35,
         | 
| 815 | 
            +
                35,    35,    72,    72,    44,    19,     4,     5,     2,     2,
         | 
| 816 | 
            +
                 6,    19,     3,     3,    54,    18,    24,     2,    24,    44,
         | 
| 817 | 
            +
                36,    22,    36,    21,    36,    35,    23,    61,    17,    17,
         | 
| 818 | 
            +
                50,    17,    13,    13,    13,    26,    27,    76,    32,    76,
         | 
| 819 | 
            +
                76,    76,    37,    35,    71,    33,    33,    33,    38,    39,
         | 
| 820 | 
            +
                40,    42,    43,    66,    45,    49,    35,    15,    53,    65,
         | 
| 821 | 
            +
                 2,    56,    24,    24,    24,    57,    58,    63,    67,    77,
         | 
| 822 | 
            +
               nil,    46,   nil,   nil,    76,   nil,   nil,   nil,   nil,   nil,
         | 
| 823 | 
            +
               nil,   nil,   nil,    35,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 810 824 | 
             
               nil,   nil,   nil,     2,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 811 825 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,    34,
         | 
| 812 | 
            -
               nil,   nil,     | 
| 813 | 
            -
               nil,   nil,   nil,   nil,     2,     2,     2,     2, | 
| 814 | 
            -
             | 
| 815 | 
            -
                 2, | 
| 816 | 
            -
               nil,    60,   nil,   nil,   nil,   nil, | 
| 817 | 
            -
               nil,   nil,     2,     2,     2,   nil,   nil,   nil, | 
| 818 | 
            -
             | 
| 826 | 
            +
               nil,   nil,    64,   nil,   nil,   nil,   nil,   nil,    59,   nil,
         | 
| 827 | 
            +
               nil,   nil,   nil,   nil,     2,     2,     2,     2,   nil,   nil,
         | 
| 828 | 
            +
                48,   nil,    60,   nil,     2,     2,     2,   nil,     2,     2,
         | 
| 829 | 
            +
                 2,    48,    16,    16,   nil,   nil,     2,     2,   nil,     2,
         | 
| 830 | 
            +
               nil,    60,   nil,   nil,     2,   nil,   nil,   nil,   nil,    59,
         | 
| 831 | 
            +
                59,    59,   nil,   nil,     2,     2,     2,   nil,   nil,   nil,
         | 
| 832 | 
            +
                 2,   nil,   nil,   nil,   nil,     2,   nil,   nil,   nil,   nil,
         | 
| 819 833 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 820 | 
            -
               nil,   nil,   nil,   nil, | 
| 821 | 
            -
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    59,   nil,
         | 
| 822 | 
            -
               nil,   nil,   nil,   nil,   nil,    59,     2,   nil,   nil,    59,
         | 
| 823 | 
            -
                 2,    15,   nil,   nil,    20,   nil,    59,   nil,   nil,   nil,
         | 
| 834 | 
            +
               nil,   nil,   nil,   nil,    16,   nil,   nil,   nil,   nil,   nil,
         | 
| 824 835 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 836 | 
            +
               nil,    59,   nil,   nil,   nil,   nil,   nil,   nil,    59,     2,
         | 
| 837 | 
            +
               nil,   nil,    59,     2,    15,   nil,   nil,    20,   nil,    59,
         | 
| 825 838 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 826 839 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 827 | 
            -
                20,   nil,   nil,   nil,    52,   nil,   nil,   nil,   nil,   nil,
         | 
| 828 | 
            -
               nil,    52,    52,    52,    34,    34,    34,   nil,   nil,   nil,
         | 
| 829 840 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 830 | 
            -
               nil,   nil, | 
| 841 | 
            +
               nil,   nil,   nil,    20,   nil,   nil,   nil,    52,   nil,   nil,
         | 
| 842 | 
            +
               nil,   nil,   nil,   nil,    52,    52,    52,    34,    34,    34,
         | 
| 831 843 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 832 | 
            -
               nil,   nil,   nil,   nil,   nil, | 
| 844 | 
            +
               nil,   nil,   nil,   nil,   nil,     2,     2,   nil,   nil,   nil,
         | 
| 845 | 
            +
                52,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 846 | 
            +
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    52,    20,
         | 
| 847 | 
            +
                20,    20,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
         | 
| 848 | 
            +
               nil,    52,   nil,     2,    34,     2,   nil,     2,   nil,   nil,
         | 
| 849 | 
            +
               nil,   nil,   nil,   nil,   nil,   nil,   nil,     2,   nil,   nil,
         | 
| 833 850 | 
             
               nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,    52,   nil,
         | 
| 834 | 
            -
             | 
| 835 | 
            -
               nil,   nil,   nil,   nil,     2,   nil,   nil,   nil,   nil,   nil,
         | 
| 836 | 
            -
               nil,   nil,   nil,   nil,   nil,    52,   nil,   nil,   nil,   nil,
         | 
| 837 | 
            -
                 2,   nil,   nil,     2,     2 ]
         | 
| 851 | 
            +
               nil,   nil,   nil,     2,   nil,   nil,     2,     2 ]
         | 
| 838 852 |  | 
| 839 853 | 
             
            racc_goto_pointer = [
         | 
| 840 | 
            -
               nil,     | 
| 841 | 
            -
               nil,   nil,   nil,  - | 
| 842 | 
            -
               -22,  - | 
| 843 | 
            -
               nil,   nil,  - | 
| 844 | 
            -
              - | 
| 845 | 
            -
              - | 
| 846 | 
            -
               - | 
| 847 | 
            -
              - | 
| 854 | 
            +
               nil,    27,    -2,     8,    33,    33,     6,   nil,   nil,   nil,
         | 
| 855 | 
            +
               nil,   nil,   nil,  -112,   nil,   -26,   -46,  -188,  -214,  -234,
         | 
| 856 | 
            +
               -22,  -208,  -225,  -222,  -230,   nil,  -215,  -214,   nil,   nil,
         | 
| 857 | 
            +
               nil,   nil,  -212,  -244,   -26,  -304,  -316,  -148,  -187,  -201,
         | 
| 858 | 
            +
              -245,   nil,  -293,  -308,  -369,    48,   -18,   nil,   -36,    34,
         | 
| 859 | 
            +
              -148,   nil,   -29,  -172,  -240,   nil,  -182,   -25,   -81,   -29,
         | 
| 860 | 
            +
               -47,   -30,   nil,    67,   -23,  -145,  -172,   -99,   nil,   nil,
         | 
| 861 | 
            +
               nil,  -181,  -167,   nil,   nil,   nil,  -134,    68 ]
         | 
| 848 862 |  | 
| 849 863 | 
             
            racc_goto_default = [
         | 
| 850 | 
            -
               nil,   nil,    44,   nil,   nil,    | 
| 851 | 
            -
               110,   111,   112,   nil,    36,    | 
| 852 | 
            -
               nil,   nil,   nil,    | 
| 853 | 
            -
                | 
| 854 | 
            -
               nil,    | 
| 855 | 
            -
                52,    | 
| 856 | 
            -
                 7,    29,   nil, | 
| 857 | 
            -
               151,   152,   153,   154,   155,   nil,   nil ]
         | 
| 864 | 
            +
               nil,   nil,    44,   nil,   nil,   414,   302,   107,   108,   109,
         | 
| 865 | 
            +
               110,   111,   112,   nil,    36,   290,   115,   nil,   nil,   nil,
         | 
| 866 | 
            +
               nil,   nil,   nil,   263,    24,   292,   293,   294,   295,   296,
         | 
| 867 | 
            +
               297,   298,   301,   nil,   144,   nil,   nil,   nil,   nil,   nil,
         | 
| 868 | 
            +
               nil,   325,   nil,   nil,   nil,   nil,   nil,    51,   nil,   nil,
         | 
| 869 | 
            +
                52,   350,   145,   nil,   nil,   273,   nil,   nil,   nil,    31,
         | 
| 870 | 
            +
                 7,   nil,    29,   nil,   nil,   158,   146,   147,   148,   149,
         | 
| 871 | 
            +
               150,   151,   152,   153,   154,   155,   nil,   nil ]
         | 
| 858 872 |  | 
| 859 873 | 
             
            racc_reduce_table = [
         | 
| 860 874 | 
             
              0, 0, :racc_error,
         | 
| @@ -1036,7 +1050,7 @@ racc_reduce_table = [ | |
| 1036 1050 | 
             
              1, 141, :_reduce_176,
         | 
| 1037 1051 | 
             
              4, 141, :_reduce_177,
         | 
| 1038 1052 | 
             
              2, 141, :_reduce_178,
         | 
| 1039 | 
            -
               | 
| 1053 | 
            +
              4, 141, :_reduce_179,
         | 
| 1040 1054 | 
             
              3, 141, :_reduce_180,
         | 
| 1041 1055 | 
             
              4, 141, :_reduce_181,
         | 
| 1042 1056 | 
             
              2, 141, :_reduce_182,
         | 
| @@ -1044,18 +1058,18 @@ racc_reduce_table = [ | |
| 1044 1058 | 
             
              1, 141, :_reduce_none,
         | 
| 1045 1059 | 
             
              1, 101, :_reduce_185,
         | 
| 1046 1060 | 
             
              3, 101, :_reduce_186,
         | 
| 1047 | 
            -
               | 
| 1048 | 
            -
              1,  | 
| 1049 | 
            -
              3,  | 
| 1050 | 
            -
              3,  | 
| 1051 | 
            -
              3,  | 
| 1052 | 
            -
              3,  | 
| 1053 | 
            -
              2,  | 
| 1054 | 
            -
              3,  | 
| 1055 | 
            -
              3,  | 
| 1056 | 
            -
              3,  | 
| 1057 | 
            -
              1,  | 
| 1058 | 
            -
              2,  | 
| 1061 | 
            +
              4, 143, :_reduce_187,
         | 
| 1062 | 
            +
              1, 144, :_reduce_188,
         | 
| 1063 | 
            +
              3, 144, :_reduce_189,
         | 
| 1064 | 
            +
              3, 145, :_reduce_190,
         | 
| 1065 | 
            +
              3, 145, :_reduce_191,
         | 
| 1066 | 
            +
              3, 145, :_reduce_192,
         | 
| 1067 | 
            +
              2, 145, :_reduce_193,
         | 
| 1068 | 
            +
              3, 145, :_reduce_194,
         | 
| 1069 | 
            +
              3, 145, :_reduce_195,
         | 
| 1070 | 
            +
              3, 145, :_reduce_196,
         | 
| 1071 | 
            +
              1, 146, :_reduce_none,
         | 
| 1072 | 
            +
              2, 146, :_reduce_198,
         | 
| 1059 1073 | 
             
              1, 115, :_reduce_none,
         | 
| 1060 1074 | 
             
              1, 115, :_reduce_none,
         | 
| 1061 1075 | 
             
              1, 115, :_reduce_none,
         | 
| @@ -1067,46 +1081,48 @@ racc_reduce_table = [ | |
| 1067 1081 | 
             
              3, 129, :_reduce_207,
         | 
| 1068 1082 | 
             
              1, 129, :_reduce_208,
         | 
| 1069 1083 | 
             
              1, 129, :_reduce_none,
         | 
| 1070 | 
            -
              3,  | 
| 1071 | 
            -
              1,  | 
| 1072 | 
            -
              1,  | 
| 1073 | 
            -
              3,  | 
| 1074 | 
            -
              1,  | 
| 1075 | 
            -
              1,  | 
| 1076 | 
            -
              3,  | 
| 1077 | 
            -
              1,  | 
| 1078 | 
            -
              1,  | 
| 1079 | 
            -
              0,  | 
| 1080 | 
            -
              3,  | 
| 1081 | 
            -
              1,  | 
| 1082 | 
            -
              3,  | 
| 1083 | 
            -
              1,  | 
| 1084 | 
            -
              1,  | 
| 1085 | 
            -
              2,  | 
| 1086 | 
            -
              3,  | 
| 1087 | 
            -
              3,  | 
| 1088 | 
            -
              3,  | 
| 1089 | 
            -
              4,  | 
| 1090 | 
            -
              3,  | 
| 1091 | 
            -
              0,  | 
| 1092 | 
            -
              1, 156, :_reduce_none,
         | 
| 1093 | 
            -
              1, 156, :_reduce_none,
         | 
| 1094 | 
            -
              1, 156, :_reduce_none,
         | 
| 1095 | 
            -
              2, 105, :_reduce_235,
         | 
| 1084 | 
            +
              3, 148, :_reduce_210,
         | 
| 1085 | 
            +
              1, 148, :_reduce_211,
         | 
| 1086 | 
            +
              1, 148, :_reduce_none,
         | 
| 1087 | 
            +
              3, 150, :_reduce_213,
         | 
| 1088 | 
            +
              1, 150, :_reduce_214,
         | 
| 1089 | 
            +
              1, 150, :_reduce_none,
         | 
| 1090 | 
            +
              3, 152, :_reduce_216,
         | 
| 1091 | 
            +
              1, 152, :_reduce_217,
         | 
| 1092 | 
            +
              1, 152, :_reduce_none,
         | 
| 1093 | 
            +
              0, 153, :_reduce_219,
         | 
| 1094 | 
            +
              3, 153, :_reduce_220,
         | 
| 1095 | 
            +
              1, 153, :_reduce_221,
         | 
| 1096 | 
            +
              3, 153, :_reduce_222,
         | 
| 1097 | 
            +
              1, 153, :_reduce_223,
         | 
| 1098 | 
            +
              1, 153, :_reduce_224,
         | 
| 1099 | 
            +
              2, 147, :_reduce_225,
         | 
| 1100 | 
            +
              3, 149, :_reduce_226,
         | 
| 1101 | 
            +
              3, 151, :_reduce_227,
         | 
| 1102 | 
            +
              3, 154, :_reduce_228,
         | 
| 1103 | 
            +
              4, 155, :_reduce_229,
         | 
| 1104 | 
            +
              3, 156, :_reduce_230,
         | 
| 1105 | 
            +
              0, 157, :_reduce_none,
         | 
| 1096 1106 | 
             
              1, 157, :_reduce_none,
         | 
| 1097 1107 | 
             
              1, 157, :_reduce_none,
         | 
| 1098 1108 | 
             
              1, 157, :_reduce_none,
         | 
| 1109 | 
            +
              2, 105, :_reduce_235,
         | 
| 1110 | 
            +
              1, 158, :_reduce_none,
         | 
| 1111 | 
            +
              1, 158, :_reduce_none,
         | 
| 1112 | 
            +
              1, 158, :_reduce_none,
         | 
| 1099 1113 | 
             
              2, 118, :_reduce_239,
         | 
| 1100 1114 | 
             
              2, 97, :_reduce_240,
         | 
| 1101 1115 | 
             
              2, 139, :_reduce_241,
         | 
| 1102 1116 | 
             
              0, 140, :_reduce_242,
         | 
| 1103 1117 | 
             
              1, 140, :_reduce_243,
         | 
| 1104 1118 | 
             
              2, 140, :_reduce_244,
         | 
| 1105 | 
            -
              1, 140, :_reduce_245 | 
| 1119 | 
            +
              1, 140, :_reduce_245,
         | 
| 1120 | 
            +
              1, 142, :_reduce_none,
         | 
| 1121 | 
            +
              0, 142, :_reduce_none ]
         | 
| 1106 1122 |  | 
| 1107 | 
            -
            racc_reduce_n =  | 
| 1123 | 
            +
            racc_reduce_n = 248
         | 
| 1108 1124 |  | 
| 1109 | 
            -
            racc_shift_n =  | 
| 1125 | 
            +
            racc_shift_n = 421
         | 
| 1110 1126 |  | 
| 1111 1127 | 
             
            racc_token_table = {
         | 
| 1112 1128 | 
             
              false => 0,
         | 
| @@ -1354,6 +1370,7 @@ Racc_token_to_s_table = [ | |
| 1354 1370 | 
             
              "type_alias_name",
         | 
| 1355 1371 | 
             
              "namespace",
         | 
| 1356 1372 | 
             
              "simple_type",
         | 
| 1373 | 
            +
              "comma_opt",
         | 
| 1357 1374 | 
             
              "record_type",
         | 
| 1358 1375 | 
             
              "record_fields",
         | 
| 1359 1376 | 
             
              "record_field",
         | 
| @@ -2702,7 +2719,7 @@ module_eval(<<'.,.,', 'parser.y', 759) | |
| 2702 2719 |  | 
| 2703 2720 | 
             
            module_eval(<<'.,.,', 'parser.y', 763)
         | 
| 2704 2721 | 
             
              def _reduce_179(val, _values, result)
         | 
| 2705 | 
            -
                        location = val[0].location + val[ | 
| 2722 | 
            +
                        location = val[0].location + val[3].location
         | 
| 2706 2723 | 
             
                    types = val[1]
         | 
| 2707 2724 | 
             
                    result = Types::Tuple.new(types: types, location: location)
         | 
| 2708 2725 |  | 
| @@ -2770,7 +2787,7 @@ module_eval(<<'.,.,', 'parser.y', 797) | |
| 2770 2787 | 
             
              def _reduce_187(val, _values, result)
         | 
| 2771 2788 | 
             
                        result = Types::Record.new(
         | 
| 2772 2789 | 
             
                      fields: val[1],
         | 
| 2773 | 
            -
                      location: val[0].location + val[ | 
| 2790 | 
            +
                      location: val[0].location + val[3].location
         | 
| 2774 2791 | 
             
                    )
         | 
| 2775 2792 |  | 
| 2776 2793 | 
             
                result
         | 
| @@ -3225,6 +3242,10 @@ module_eval(<<'.,.,', 'parser.y', 1061) | |
| 3225 3242 | 
             
              end
         | 
| 3226 3243 | 
             
            .,.,
         | 
| 3227 3244 |  | 
| 3245 | 
            +
            # reduce 246 omitted
         | 
| 3246 | 
            +
             | 
| 3247 | 
            +
            # reduce 247 omitted
         | 
| 3248 | 
            +
             | 
| 3228 3249 | 
             
            def _reduce_none(val, _values, result)
         | 
| 3229 3250 | 
             
              val[0]
         | 
| 3230 3251 | 
             
            end
         |