ruby_parser 3.7.3 → 3.8.0
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
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/.autotest +1 -1
- data/History.txt +15 -0
- data/Manifest.txt +2 -0
- data/Rakefile +13 -3
- data/lib/ruby20_parser.rb +2848 -2796
- data/lib/ruby20_parser.y +34 -0
- data/lib/ruby21_parser.rb +2592 -2573
- data/lib/ruby21_parser.y +27 -0
- data/lib/ruby22_parser.rb +265 -253
- data/lib/ruby22_parser.y +24 -0
- data/lib/ruby23_parser.rb +6882 -0
- data/lib/ruby23_parser.y +2417 -0
- data/lib/ruby_lexer.rb +5 -4
- data/lib/ruby_lexer.rex +2 -1
- data/lib/ruby_lexer.rex.rb +3 -1
- data/lib/ruby_parser.rb +1 -0
- data/lib/ruby_parser.yy +52 -16
- data/lib/ruby_parser_extras.rb +11 -3
- data/test/test_ruby_lexer.rb +43 -4
- data/test/test_ruby_parser.rb +75 -2
- metadata +4 -2
- metadata.gz.sig +0 -0
    
        data/lib/ruby21_parser.y
    CHANGED
    
    | @@ -19,7 +19,12 @@ token kCLASS kMODULE kDEF kUNDEF kBEGIN kRESCUE kENSURE kEND kIF kUNLESS | |
| 19 19 | 
             
                  tWORDS_BEG tQWORDS_BEG tSTRING_DBEG tSTRING_DVAR tSTRING_END
         | 
| 20 20 | 
             
                  tSTRING tSYMBOL tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
         | 
| 21 21 | 
             
                  tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND tUBANG
         | 
| 22 | 
            +
            #if defined(RUBY21) || defined(RUBY22) || defined(RUBY23))
         | 
| 22 23 | 
             
                  tRATIONAL tIMAGINARY
         | 
| 24 | 
            +
            #endif
         | 
| 25 | 
            +
            #if defined(RUBY22 || defined(RUBY23))
         | 
| 26 | 
            +
                  tLABEL_END
         | 
| 27 | 
            +
            #endif
         | 
| 23 28 |  | 
| 24 29 | 
             
            prechigh
         | 
| 25 30 | 
             
              right    tBANG tTILDE tUPLUS
         | 
| @@ -205,7 +210,9 @@ rule | |
| 205 210 | 
             
                                {
         | 
| 206 211 | 
             
                                  result = self.node_assign val[0], s(:svalue, val[2])
         | 
| 207 212 | 
             
                                }
         | 
| 213 | 
            +
            #if   defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
         | 
| 208 214 | 
             
                            | mlhs tEQL mrhs_arg
         | 
| 215 | 
            +
            #endif
         | 
| 209 216 | 
             
                                {
         | 
| 210 217 | 
             
                                  result = new_masgn val[0], val[2]
         | 
| 211 218 | 
             
                                }
         | 
| @@ -679,7 +686,9 @@ rule | |
| 679 686 | 
             
                                {
         | 
| 680 687 | 
             
                                  result = new_call val[0], :**, argl(val[2])
         | 
| 681 688 | 
             
                                }
         | 
| 689 | 
            +
            #if   defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
         | 
| 682 690 | 
             
                            | tUMINUS_NUM simple_numeric tPOW arg
         | 
| 691 | 
            +
            #endif
         | 
| 683 692 | 
             
                                {
         | 
| 684 693 | 
             
                                  result = new_call(new_call(s(:lit, val[1]), :"**", argl(val[3])), :"-@")
         | 
| 685 694 | 
             
                                }
         | 
| @@ -892,6 +901,7 @@ rule | |
| 892 901 | 
             
                                  result = self.list_append val[0], s(:splat, val[3])
         | 
| 893 902 | 
             
                                }
         | 
| 894 903 |  | 
| 904 | 
            +
            #if defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
         | 
| 895 905 | 
             
                    mrhs_arg: mrhs
         | 
| 896 906 | 
             
                                {
         | 
| 897 907 | 
             
                                  result = new_masgn_arg val[0]
         | 
| @@ -901,6 +911,7 @@ rule | |
| 901 911 | 
             
                                  result = new_masgn_arg val[0], :wrap
         | 
| 902 912 | 
             
                                }
         | 
| 903 913 |  | 
| 914 | 
            +
            #endif
         | 
| 904 915 | 
             
                        mrhs: args tCOMMA arg_value
         | 
| 905 916 | 
             
                                {
         | 
| 906 917 | 
             
                                  result = val[0] << val[2]
         | 
| @@ -1850,7 +1861,9 @@ regexp_contents: none | |
| 1850 1861 | 
             
                                }
         | 
| 1851 1862 | 
             
                                compstmt tRCURLY
         | 
| 1852 1863 | 
             
                                {
         | 
| 1864 | 
            +
            #if   defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
         | 
| 1853 1865 | 
             
                                  # TODO: tRCURLY -> tSTRING_END
         | 
| 1866 | 
            +
            #endif
         | 
| 1854 1867 | 
             
                                  _, memo, stmt, _ = val
         | 
| 1855 1868 |  | 
| 1856 1869 | 
             
                                  lex_strterm, brace_nest, string_nest, oldcond, oldcmdarg, oldlex_state = memo
         | 
| @@ -1916,17 +1929,21 @@ regexp_contents: none | |
| 1916 1929 | 
             
                                  end
         | 
| 1917 1930 | 
             
                                }
         | 
| 1918 1931 |  | 
| 1932 | 
            +
            #if   defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
         | 
| 1919 1933 | 
             
                     numeric: simple_numeric
         | 
| 1920 1934 | 
             
                            | tUMINUS_NUM simple_numeric
         | 
| 1935 | 
            +
            #endif
         | 
| 1921 1936 | 
             
                                {
         | 
| 1922 1937 | 
             
                                  result = -val[1] # TODO: pt_testcase
         | 
| 1923 1938 | 
             
                                }
         | 
| 1924 1939 |  | 
| 1940 | 
            +
            #if defined(RUBY21) || defined(RUBY22) || defined(RUBY23))
         | 
| 1925 1941 | 
             
              simple_numeric: tINTEGER
         | 
| 1926 1942 | 
             
                            | tFLOAT
         | 
| 1927 1943 | 
             
                            | tRATIONAL
         | 
| 1928 1944 | 
             
                            | tIMAGINARY
         | 
| 1929 1945 |  | 
| 1946 | 
            +
            #endif
         | 
| 1930 1947 | 
             
               user_variable: tIDENTIFIER
         | 
| 1931 1948 | 
             
                            | tIVAR
         | 
| 1932 1949 | 
             
                            | tGVAR
         | 
| @@ -2119,11 +2136,21 @@ keyword_variable: kNIL      { result = s(:nil)   } | |
| 2119 2136 | 
             
                                  result = identifier
         | 
| 2120 2137 | 
             
                                }
         | 
| 2121 2138 |  | 
| 2139 | 
            +
            #if defined(RUBY22) || defined(RUBY23))
         | 
| 2140 | 
            +
                  f_arg_asgn: f_norm_arg
         | 
| 2141 | 
            +
             | 
| 2142 | 
            +
                  f_arg_item: f_arg_asgn
         | 
| 2143 | 
            +
                            | tLPAREN f_margs rparen
         | 
| 2144 | 
            +
                                {
         | 
| 2145 | 
            +
                                  result = val[1]
         | 
| 2146 | 
            +
                                }
         | 
| 2147 | 
            +
            #else
         | 
| 2122 2148 | 
             
                  f_arg_item: f_norm_arg
         | 
| 2123 2149 | 
             
                            | tLPAREN f_margs rparen
         | 
| 2124 2150 | 
             
                                {
         | 
| 2125 2151 | 
             
                                  result = val[1]
         | 
| 2126 2152 | 
             
                                }
         | 
| 2153 | 
            +
            #endif
         | 
| 2127 2154 |  | 
| 2128 2155 | 
             
                       f_arg: f_arg_item
         | 
| 2129 2156 | 
             
                                {
         | 
    
        data/lib/ruby22_parser.rb
    CHANGED
    
    | @@ -19,39 +19,39 @@ require "ruby_parser_extras" | |
| 19 19 | 
             
            ##### State transition tables begin ###
         | 
| 20 20 |  | 
| 21 21 | 
             
            clist = [
         | 
| 22 | 
            -
            '- | 
| 23 | 
            -
            '- | 
| 24 | 
            -
            '-102,584,270,610,- | 
| 22 | 
            +
            '-607,584,610,584,3,217,218,-607,-607,-607,753,270,220,-607,-607,569',
         | 
| 23 | 
            +
            '-607,-510,-99,-106,855,241,665,-101,-510,-607,572,270,665,822,-103,584',
         | 
| 24 | 
            +
            '-102,584,270,610,-607,-607,615,-607,-607,-607,-607,-607,-100,744,217',
         | 
| 25 25 | 
             
            '218,221,745,705,-94,-92,238,-100,584,664,240,239,580,579,221,664,612',
         | 
| 26 | 
            -
            '611,623,665,- | 
| 27 | 
            -
            '- | 
| 28 | 
            -
            '- | 
| 29 | 
            -
            '- | 
| 30 | 
            -
            '-288,- | 
| 31 | 
            -
            '115,-288,-101,-102,-103,116,-102,116,- | 
| 26 | 
            +
            '611,623,665,-607,-607,-607,-607,-607,-607,-607,-607,-607,-607,-607,-607',
         | 
| 27 | 
            +
            '-607,-607,733,-104,-607,-607,-607,-105,649,217,218,270,-607,-416,573',
         | 
| 28 | 
            +
            '-607,221,612,611,269,-607,664,-607,-101,-607,-607,-607,-607,-607,-607',
         | 
| 29 | 
            +
            '-607,-603,-607,-607,-607,269,116,752,116,-94,-92,115,269,115,-90,-97',
         | 
| 30 | 
            +
            '-288,-607,-607,845,-93,-98,-607,-288,-288,-288,116,221,-101,-288,-288',
         | 
| 31 | 
            +
            '115,-288,-101,-102,-103,116,-102,116,-604,-103,115,-102,115,-94,-92',
         | 
| 32 32 | 
             
            '704,-94,-92,-100,-91,733,-288,-288,-100,-288,-288,-288,-288,-288,116',
         | 
| 33 33 | 
             
            '-94,-92,935,221,115,-102,-103,269,221,733,629,116,83,883,-425,610,115',
         | 
| 34 34 | 
             
            '-95,665,822,84,-96,-288,-288,-288,-288,-288,-288,-288,-288,-288,-288',
         | 
| 35 35 | 
             
            '-288,-288,-288,-288,626,-92,-288,-288,-288,-84,648,822,531,590,-288',
         | 
| 36 36 | 
             
            '94,95,-288,94,95,664,241,-288,-70,-288,694,-288,-288,-288,-288,-288',
         | 
| 37 | 
            -
            '-288,-288,-89,-288,-425,-288,-100,272,- | 
| 37 | 
            +
            '-288,-288,-89,-288,-425,-288,-100,272,-603,610,628,-425,-607,612,611',
         | 
| 38 38 | 
             
            '608,272,-502,-288,-288,-425,-95,788,-288,-502,-502,-502,116,221,-502',
         | 
| 39 39 | 
             
            '-502,-502,115,-502,680,-104,625,-105,-425,851,822,-502,787,-502,-502',
         | 
| 40 | 
            -
            '-502,116,-93,-94,543,- | 
| 41 | 
            -
            '-502,-511,569,96,97,- | 
| 42 | 
            -
            '- | 
| 43 | 
            -
            '-502,-502,-502,-502,-502,-502,-502,-101,- | 
| 44 | 
            -
            '-502,580,579,-502,610,-505,-502,-502,221,-502,- | 
| 40 | 
            +
            '-502,116,-93,-94,543,-601,115,545,-502,-502,694,-502,-502,-502,-502',
         | 
| 41 | 
            +
            '-502,-511,569,96,97,-607,96,97,-511,116,612,611,-607,572,115,-517,-516',
         | 
| 42 | 
            +
            '-603,-103,765,458,-607,-607,-517,-502,-502,-502,-502,-502,-502,-502',
         | 
| 43 | 
            +
            '-502,-502,-502,-502,-502,-502,-502,-101,-607,-502,-502,-502,-505,-502',
         | 
| 44 | 
            +
            '-502,580,579,-502,610,-505,-502,-502,221,-502,-601,-502,-90,-502,-505',
         | 
| 45 45 | 
             
            '-502,-502,-502,-502,-502,-502,-502,-502,-502,506,-502,-99,-98,504,-502',
         | 
| 46 | 
            -
            '- | 
| 47 | 
            -
            '-502,- | 
| 48 | 
            -
            '-505,-513,-280,221,- | 
| 49 | 
            -
            '-96,542,- | 
| 46 | 
            +
            '-607,-106,-601,531,-99,573,260,-607,-502,-502,-502,-502,-603,-502,-505',
         | 
| 47 | 
            +
            '-502,-607,610,217,218,-264,-505,-505,-505,-513,-502,-505,-505,-505,792',
         | 
| 48 | 
            +
            '-505,-513,-280,221,-607,612,611,491,-505,-280,-505,-505,-505,543,763',
         | 
| 49 | 
            +
            '-96,542,-600,-280,543,-505,-505,545,-505,-505,-505,-505,-505,564,-105',
         | 
| 50 50 | 
             
            '561,560,559,882,562,491,564,610,561,560,559,959,562,561,560,559,610',
         | 
| 51 51 | 
             
            '562,612,611,618,-505,-505,-505,-505,-505,-505,-505,-505,-505,-505,-505',
         | 
| 52 52 | 
             
            '-505,-505,-505,774,-505,-505,-505,-505,-502,-505,-505,-505,-263,-505',
         | 
| 53 | 
            -
            '768,-502,-505,-505,767,-505,- | 
| 54 | 
            -
            '-505,-505,-505,766,-505,-507,-505,612,611,630,610,543,-507,- | 
| 53 | 
            +
            '768,-502,-505,-505,767,-505,-600,-505,643,-505,-502,-505,-505,-505,-505',
         | 
| 54 | 
            +
            '-505,-505,-505,766,-505,-507,-505,612,611,630,610,543,-507,-600,545',
         | 
| 55 55 | 
             
            '847,612,611,613,-505,-505,-505,-505,981,-505,-288,-505,-516,773,580',
         | 
| 56 56 | 
             
            '579,736,-288,-288,-288,-94,-505,-288,-288,-288,564,-288,561,560,559',
         | 
| 57 57 | 
             
            '569,562,533,-508,-103,-509,-288,-288,-288,534,-508,572,-509,217,218',
         | 
| @@ -61,20 +61,20 @@ clist = [ | |
| 61 61 | 
             
            '263,-288,-288,-288,-289,790,-288,264,729,-288,727,-289,-288,-288,-97',
         | 
| 62 62 | 
             
            '-288,573,-288,726,-288,-289,-288,-288,-288,-288,-288,-288,-288,-106',
         | 
| 63 63 | 
             
            '-288,885,-288,564,-512,561,560,559,569,562,221,-512,-92,1005,710,-288',
         | 
| 64 | 
            -
            '-288,-288,-288,572,-288,- | 
| 65 | 
            -
            '893,-104,- | 
| 66 | 
            -
            '- | 
| 67 | 
            -
            '- | 
| 68 | 
            -
            '559,713,562,722,694,711,573,906,- | 
| 69 | 
            -
            '- | 
| 70 | 
            -
            '910,- | 
| 71 | 
            -
            '- | 
| 72 | 
            -
            '236,237,115,593,918,116,- | 
| 64 | 
            +
            '-288,-288,-288,572,-288,-607,-288,217,218,888,-101,891,-607,-607,-607',
         | 
| 65 | 
            +
            '893,-104,-607,-607,-607,564,-607,561,560,559,567,562,851,822,895,-607',
         | 
| 66 | 
            +
            '-607,-607,-607,577,576,580,579,116,221,897,-607,-607,115,-607,-607,-607',
         | 
| 67 | 
            +
            '-607,-607,116,898,725,717,564,115,561,560,559,719,562,564,715,561,560',
         | 
| 68 | 
            +
            '559,713,562,722,694,711,573,906,-607,-607,-607,-607,-607,-607,-607,-607',
         | 
| 69 | 
            +
            '-607,-607,-607,-607,-607,-607,710,241,-607,-607,-607,719,789,-607,-262',
         | 
| 70 | 
            +
            '910,-607,912,719,-607,-607,913,-607,221,-607,710,-607,722,-607,-607',
         | 
| 71 | 
            +
            '-607,-607,-607,-607,-607,241,-607,-607,-607,238,916,592,116,240,239',
         | 
| 72 | 
            +
            '236,237,115,593,918,116,-607,-607,-607,-607,115,-607,591,-607,748,295',
         | 
| 73 73 | 
             
            '72,73,74,12,60,747,238,-102,66,67,240,239,920,70,749,68,69,71,33,34',
         | 
| 74 74 | 
             
            '75,76,119,120,121,122,123,32,31,30,104,103,105,106,874,875,22,922,876',
         | 
| 75 75 | 
             
            '110,111,653,11,48,922,13,108,107,109,98,59,100,99,101,221,102,110,111',
         | 
| 76 76 | 
             
            '707,94,95,928,45,46,44,241,245,250,251,252,247,249,257,258,253,254,-288',
         | 
| 77 | 
            -
            '234,235,748,116,255,256,-288,43,115,962,36,- | 
| 77 | 
            +
            '234,235,748,116,255,256,-288,43,115,962,36,-604,221,61,62,-288,116,63',
         | 
| 78 78 | 
             
            '749,38,238,115,244,47,240,239,236,237,248,246,242,23,243,930,700,213',
         | 
| 79 79 | 
             
            '91,83,85,86,87,89,214,932,699,84,92,694,259,536,-239,212,221,65,683',
         | 
| 80 80 | 
             
            '-84,81,88,90,221,221,96,97,295,72,73,74,12,60,221,221,523,66,67,241',
         | 
| @@ -82,7 +82,7 @@ clist = [ | |
| 82 82 | 
             
            '103,105,106,241,241,22,652,272,641,640,637,11,48,221,13,108,107,109',
         | 
| 83 83 | 
             
            '98,59,100,99,101,956,102,110,111,636,94,95,-262,45,46,44,241,245,250',
         | 
| 84 84 | 
             
            '251,252,247,249,257,258,253,254,-288,234,235,-289,634,255,256,-288,43',
         | 
| 85 | 
            -
            '963,-289,297,- | 
| 85 | 
            +
            '963,-289,297,-604,964,61,62,-288,627,63,-289,38,238,966,244,47,240,239',
         | 
| 86 86 | 
             
            '236,237,248,246,242,23,243,967,624,-515,91,83,85,86,87,89,-515,-335',
         | 
| 87 87 | 
             
            '621,84,92,617,259,595,-335,-515,594,65,402,590,81,88,90,-335,506,96',
         | 
| 88 88 | 
             
            '97,295,72,73,74,12,60,547,983,-289,66,67,546,985,986,70,-289,68,69,71',
         | 
| @@ -94,10 +94,10 @@ clist = [ | |
| 94 94 | 
             
            '23,243,-69,1014,1011,91,83,85,86,87,89,1012,-280,922,84,92,922,259,922',
         | 
| 95 95 | 
             
            '-280,1010,1019,65,506,983,81,88,90,-280,504,96,97,295,72,73,74,12,60',
         | 
| 96 96 | 
             
            '501,272,454,66,67,491,220,460,70,455,68,69,71,33,34,75,76,459,456,457',
         | 
| 97 | 
            -
            '413,408,32,31,30,104,103,105,106,392,959,22,561,560,559,- | 
| 98 | 
            -
            '48,- | 
| 97 | 
            +
            '413,408,32,31,30,104,103,105,106,392,959,22,561,560,559,-604,562,11',
         | 
| 98 | 
            +
            '48,-603,13,108,107,109,98,59,100,99,101,699,102,110,111,389,94,95,386',
         | 
| 99 99 | 
             
            '45,46,44,241,245,250,251,252,247,249,257,258,253,254,-288,234,235,-514',
         | 
| 100 | 
            -
            '383,255,256,-288,43,359,-514,36,- | 
| 100 | 
            +
            '383,255,256,-288,43,359,-514,36,-604,221,61,62,-288,320,63,-514,38,238',
         | 
| 101 101 | 
             
            '983,244,47,240,239,236,237,248,246,242,23,243,319,1042,1043,91,83,85',
         | 
| 102 102 | 
             
            '86,87,89,1044,1045,1001,84,92,221,259,1001,1001,221,260,65,216,211,81',
         | 
| 103 103 | 
             
            '88,90,210,922,96,97,295,72,73,74,12,60,983,209,112,66,67,1001,,,70,',
         | 
| @@ -177,13 +177,13 @@ clist = [ | |
| 177 177 | 
             
            '84,92,240,239,236,237,,,65,,,81,88,90,,,96,97,295,72,73,74,12,60,,,',
         | 
| 178 178 | 
             
            '66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22',
         | 
| 179 179 | 
             
            ',,,,,11,48,,13,108,107,109,98,59,100,99,101,,102,110,111,,94,95,,45',
         | 
| 180 | 
            -
            '46,44,241,245,250,251,252,247,249,257,258,253,254,,- | 
| 180 | 
            +
            '46,44,241,245,250,251,252,247,249,257,258,253,254,,-626,-626,,,255,256',
         | 
| 181 181 | 
             
            ',43,,,36,,,61,62,,,63,,38,238,,244,47,240,239,236,237,248,246,242,23',
         | 
| 182 182 | 
             
            '243,,,,91,83,85,86,87,89,,,,84,92,,564,,561,560,559,65,562,,81,88,90',
         | 
| 183 183 | 
             
            ',,96,97,8,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,719,,',
         | 
| 184 184 | 
             
            ',,32,31,30,104,103,105,106,,564,22,561,560,559,,562,11,48,10,13,108',
         | 
| 185 | 
            -
            '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,- | 
| 186 | 
            -
            '- | 
| 185 | 
            +
            '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626',
         | 
| 186 | 
            +
            '-626,-626,247,249,,719,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63',
         | 
| 187 187 | 
             
            ',38,238,,244,47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86,87',
         | 
| 188 188 | 
             
            '89,,,,84,92,,564,,561,560,559,65,562,,81,88,90,,,96,97,295,72,73,74',
         | 
| 189 189 | 
             
            '12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,719,,,,,32,31,30,104,103',
         | 
| @@ -202,13 +202,13 @@ clist = [ | |
| 202 202 | 
             
            '236,237,248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,',
         | 
| 203 203 | 
             
            '81,88,90,,,96,97,295,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75',
         | 
| 204 204 | 
             
            '76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11,48,,13,108,107,109,98',
         | 
| 205 | 
            -
            '59,100,99,101,,102,110,111,,94,95,,45,46,44,241,- | 
| 206 | 
            -
            '247,249,,,- | 
| 205 | 
            +
            '59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626,-626,-626',
         | 
| 206 | 
            +
            '247,249,,,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244',
         | 
| 207 207 | 
             
            '47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92',
         | 
| 208 208 | 
             
            ',,,,,,65,,,81,88,90,,,96,97,295,72,73,74,12,60,,,,66,67,,,,70,,68,69',
         | 
| 209 209 | 
             
            '71,33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11,48,,13,108',
         | 
| 210 | 
            -
            '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,- | 
| 211 | 
            -
            '- | 
| 210 | 
            +
            '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626',
         | 
| 211 | 
            +
            '-626,-626,247,249,,,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63,,38',
         | 
| 212 212 | 
             
            '238,,244,47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86,87,89',
         | 
| 213 213 | 
             
            ',,,84,92,,,,,,,65,,,81,88,90,,,96,97,295,72,73,74,12,60,,,,66,67,,,',
         | 
| 214 214 | 
             
            '70,,68,69,71,33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11',
         | 
| @@ -222,23 +222,23 @@ clist = [ | |
| 222 222 | 
             
            '248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90',
         | 
| 223 223 | 
             
            ',,96,97,295,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,',
         | 
| 224 224 | 
             
            ',32,31,30,104,103,105,106,,,22,,,,,,11,48,,13,108,107,109,98,59,100',
         | 
| 225 | 
            -
            '99,101,,102,110,111,,94,95,,45,46,44,241,- | 
| 226 | 
            -
            ',,- | 
| 225 | 
            +
            '99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626,-626,-626,247,249',
         | 
| 226 | 
            +
            ',,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244,47,240,239',
         | 
| 227 227 | 
             
            '236,237,248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,',
         | 
| 228 228 | 
             
            '81,88,90,,,96,97,295,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75',
         | 
| 229 229 | 
             
            '76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11,48,,13,108,107,109,98',
         | 
| 230 | 
            -
            '59,100,99,101,,102,110,111,,94,95,,45,46,44,241,- | 
| 231 | 
            -
            '247,249,,,- | 
| 230 | 
            +
            '59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626,-626,-626',
         | 
| 231 | 
            +
            '247,249,,,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244',
         | 
| 232 232 | 
             
            '47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92',
         | 
| 233 233 | 
             
            ',,,,,,65,,,81,88,90,,,96,97,8,72,73,74,12,60,,,,66,67,,,,70,,68,69,71',
         | 
| 234 234 | 
             
            '33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11,48,10,13,108',
         | 
| 235 235 | 
             
            '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,245,250,251',
         | 
| 236 | 
            -
            '252,247,249,257,258,253,254,,- | 
| 236 | 
            +
            '252,247,249,257,258,253,254,,-626,-626,,,255,256,,43,,,36,,,61,62,,',
         | 
| 237 237 | 
             
            '63,,38,238,,244,47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86',
         | 
| 238 238 | 
             
            '87,89,,,,84,92,,,,,,,65,,,81,88,90,,,96,97,72,73,74,,60,,,,66,67,,,',
         | 
| 239 239 | 
             
            '70,,68,69,71,312,313,75,76,,,,,,308,309,315,104,103,105,106,,,233,,',
         | 
| 240 240 | 
             
            ',,,,48,,,108,107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44',
         | 
| 241 | 
            -
            '241,- | 
| 241 | 
            +
            '241,-626,-626,-626,-626,247,249,,,-626,-626,,,,,,255,256,,226,,,232',
         | 
| 242 242 | 
             
            ',,61,62,,,63,,,238,,244,47,240,239,236,237,248,246,242,231,243,,,,91',
         | 
| 243 243 | 
             
            '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,,,96,97,72,73,74,,60,,,',
         | 
| 244 244 | 
             
            '66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22',
         | 
| @@ -778,18 +778,18 @@ clist = [ | |
| 778 778 | 
             
            ',-281,-281,-281,-281,-281,-281,-281,-281,-281,-281,-281,-281,-281,-281',
         | 
| 779 779 | 
             
            ',,-281,-281,-281,,,-281,,,-281,,,-281,-281,,-281,573,-281,,-281,,-281',
         | 
| 780 780 | 
             
            '-281,-281,-281,-281,-281,-281,,-281,,-281,,,,,,,,,,,,,-281,-281,-281',
         | 
| 781 | 
            -
            '-281,- | 
| 782 | 
            -
            '560,559,569,562,,,,- | 
| 783 | 
            -
            '- | 
| 784 | 
            -
            '- | 
| 785 | 
            -
            ',,- | 
| 786 | 
            -
            '- | 
| 787 | 
            -
            ',,,- | 
| 788 | 
            -
            '- | 
| 789 | 
            -
            ',,567,,,,,,,,,,,580,579,,- | 
| 790 | 
            -
            '- | 
| 791 | 
            -
            ',- | 
| 792 | 
            -
            '- | 
| 781 | 
            +
            '-281,-608,-281,,-281,,,,-608,-608,-608,,,-608,-608,-608,564,-608,561',
         | 
| 782 | 
            +
            '560,559,569,562,,,,-608,-608,-608,-608,,,572,,,,,-608,-608,,-608,-608',
         | 
| 783 | 
            +
            '-608,-608,-608,,,,,,,,,,567,,,,,,,,,,,580,579,,-608,-608,-608,-608,-608',
         | 
| 784 | 
            +
            '-608,-608,-608,-608,-608,-608,-608,-608,-608,,,-608,-608,-608,,,-608',
         | 
| 785 | 
            +
            ',,-608,,,-608,-608,,-608,573,-608,,-608,,-608,-608,-608,-608,-608,-608',
         | 
| 786 | 
            +
            '-608,,-608,-608,-608,,,,,,,,,,,,,-608,-608,-608,-608,-609,-608,,-608',
         | 
| 787 | 
            +
            ',,,-609,-609,-609,,,-609,-609,-609,564,-609,561,560,559,569,562,,,,-609',
         | 
| 788 | 
            +
            '-609,-609,-609,,,572,,,,,-609,-609,,-609,-609,-609,-609,-609,,,,,,,',
         | 
| 789 | 
            +
            ',,567,,,,,,,,,,,580,579,,-609,-609,-609,-609,-609,-609,-609,-609,-609',
         | 
| 790 | 
            +
            '-609,-609,-609,-609,-609,,,-609,-609,-609,,,-609,,,-609,,,-609,-609',
         | 
| 791 | 
            +
            ',-609,573,-609,,-609,,-609,-609,-609,-609,-609,-609,-609,,-609,-609',
         | 
| 792 | 
            +
            '-609,,,,,,,,,,,,,-609,-609,-609,-609,,-609,,-609,176,187,177,200,173',
         | 
| 793 793 | 
             
            '193,183,182,203,204,198,181,180,175,201,205,206,185,174,188,192,194',
         | 
| 794 794 | 
             
            '186,179,,,,195,202,197,196,189,199,184,172,191,190,,,,,,171,178,169',
         | 
| 795 795 | 
             
            '170,166,167,168,127,129,,,128,,,,,,,,,161,162,,157,139,140,141,148,145',
         | 
| @@ -836,16 +836,16 @@ clist = [ | |
| 836 836 | 
             
            ',-295,-295,-295,-295,-295,,,,,,,,,,567,,,,,,,,,577,576,580,579,,-295',
         | 
| 837 837 | 
             
            '-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,,,-295',
         | 
| 838 838 | 
             
            '-295,-295,,,-295,,275,-295,,,-295,-295,,-295,573,-295,,-295,,-295,-295',
         | 
| 839 | 
            -
            '-295,-295,-295,-295,-295,,-295,,-295,,,,,,,,,,,,- | 
| 840 | 
            -
            ',-295,- | 
| 841 | 
            -
            ',,- | 
| 842 | 
            -
            '560,559,569,562,567,,,,,,,,,572,,580,579,,- | 
| 843 | 
            -
            ',- | 
| 844 | 
            -
            '579,,573,,,,,- | 
| 845 | 
            -
            ',,,,- | 
| 846 | 
            -
            '- | 
| 847 | 
            -
            ',- | 
| 848 | 
            -
            ',,,,,1037,439,,,1038,,,- | 
| 839 | 
            +
            '-295,-295,-295,-295,-295,,-295,,-295,,,,,,,,,,,,-625,-295,-295,,-295',
         | 
| 840 | 
            +
            ',-295,-625,-625,-625,,,-625,-625,-625,564,-625,561,560,559,569,562,',
         | 
| 841 | 
            +
            ',,-625,-625,,,,,572,,,,,-625,-625,,-625,-625,-625,-625,-625,,,564,,561',
         | 
| 842 | 
            +
            '560,559,569,562,567,,,,,,,,,572,,580,579,,-625,,,,,,,-625,-625,-625',
         | 
| 843 | 
            +
            ',-625,-625,-625,-625,,-625,567,-625,,,,,272,-625,-625,-625,-625,580',
         | 
| 844 | 
            +
            '579,,573,,,,,-625,-625,,-625,-625,-625,-625,-625,,-625,-625,,,,,,,,',
         | 
| 845 | 
            +
            ',,,,-625,,,573,,-625,,,-625,-625,-625,-625,-625,-625,-625,-625,-625',
         | 
| 846 | 
            +
            '-625,-625,-625,-625,-625,,,-625,-625,-625,,,-625,,272,-625,,,-625,-625',
         | 
| 847 | 
            +
            ',-625,,-625,,-625,,-625,-625,-625,-625,-625,-625,-625,,-625,-625,-625',
         | 
| 848 | 
            +
            ',,,,,1037,439,,,1038,,,-625,-625,,-625,,-625,161,162,,157,139,140,141',
         | 
| 849 849 | 
             
            '148,145,147,,,142,143,,,,163,164,149,150,,,,,,272,,,,,,,,154,153,,138',
         | 
| 850 850 | 
             
            '160,156,155,151,152,146,144,136,159,137,,,165,,,,,1035,432,,,1036,,',
         | 
| 851 851 | 
             
            ',,,,,,161,162,158,157,139,140,141,148,145,147,,,142,143,,,,163,164,149',
         | 
| @@ -1963,19 +1963,19 @@ racc_action_pointer = [ | |
| 1963 1963 | 
             
                32,   nil,  1227,   nil ]
         | 
| 1964 1964 |  | 
| 1965 1965 | 
             
            racc_action_default = [
         | 
| 1966 | 
            -
                -1,  - | 
| 1967 | 
            -
                -9,  - | 
| 1968 | 
            -
               -40,   -43,  - | 
| 1969 | 
            -
              -257,  -257,  -292,  -331,  -332,   -69,  - | 
| 1970 | 
            -
              - | 
| 1971 | 
            -
              -271,  -272,  -273,  -274,  -275,  -276,  -277,  -278,  -279,  - | 
| 1972 | 
            -
              -282,  - | 
| 1973 | 
            -
              - | 
| 1974 | 
            -
              -448,  -449,  -450,  - | 
| 1975 | 
            -
              - | 
| 1976 | 
            -
              -504,  - | 
| 1977 | 
            -
              -518,  -519,  1054,    -3,  - | 
| 1978 | 
            -
              - | 
| 1966 | 
            +
                -1,  -626,  -625,  -626,    -2,  -612,    -4,    -5,  -626,    -8,
         | 
| 1967 | 
            +
                -9,  -626,  -626,  -626,   -29,  -626,  -626,  -626,  -280,  -626,
         | 
| 1968 | 
            +
               -40,   -43,  -614,  -626,   -48,   -50,   -51,   -52,   -57,  -257,
         | 
| 1969 | 
            +
              -257,  -257,  -292,  -331,  -332,   -69,  -625,   -73,   -81,   -83,
         | 
| 1970 | 
            +
              -626,  -514,  -515,  -626,  -626,  -626,  -626,  -626,  -614,  -238,
         | 
| 1971 | 
            +
              -271,  -272,  -273,  -274,  -275,  -276,  -277,  -278,  -279,  -602,
         | 
| 1972 | 
            +
              -282,  -614,  -625,  -625,  -300,  -403,  -626,  -626,  -305,  -308,
         | 
| 1973 | 
            +
              -612,  -626,  -316,  -323,  -626,  -333,  -334,  -445,  -446,  -447,
         | 
| 1974 | 
            +
              -448,  -449,  -450,  -625,  -453,  -625,  -625,  -625,  -625,  -625,
         | 
| 1975 | 
            +
              -625,  -625,  -490,  -496,  -498,  -499,  -500,  -501,  -600,  -503,
         | 
| 1976 | 
            +
              -504,  -601,  -506,  -507,  -508,  -509,  -510,  -511,  -512,  -513,
         | 
| 1977 | 
            +
              -518,  -519,  1054,    -3,  -613,  -621,  -622,  -623,    -7,  -626,
         | 
| 1978 | 
            +
              -626,  -626,  -626,  -626,  -626,   -17,  -626,  -112,  -113,  -114,
         | 
| 1979 1979 | 
             
              -115,  -116,  -117,  -118,  -119,  -120,  -124,  -125,  -126,  -127,
         | 
| 1980 1980 | 
             
              -128,  -129,  -130,  -131,  -132,  -133,  -134,  -135,  -136,  -137,
         | 
| 1981 1981 | 
             
              -138,  -139,  -140,  -141,  -142,  -143,  -144,  -145,  -146,  -147,
         | 
| @@ -1983,92 +1983,92 @@ racc_action_default = [ | |
| 1983 1983 | 
             
              -158,  -159,  -160,  -161,  -162,  -163,  -164,  -165,  -166,  -167,
         | 
| 1984 1984 | 
             
              -168,  -169,  -170,  -171,  -172,  -173,  -174,  -175,  -176,  -177,
         | 
| 1985 1985 | 
             
              -178,  -179,  -180,  -181,  -182,  -183,  -184,  -185,  -186,  -187,
         | 
| 1986 | 
            -
              -188,  -189,  -190,  -191,  -192,  -193,  -194,   -22,  -121,  - | 
| 1987 | 
            -
              - | 
| 1988 | 
            -
              - | 
| 1989 | 
            -
              -230,  - | 
| 1990 | 
            -
              - | 
| 1991 | 
            -
              - | 
| 1992 | 
            -
              -409,  -412,  - | 
| 1993 | 
            -
              -429,   -64,  - | 
| 1994 | 
            -
              - | 
| 1995 | 
            -
               -67,   -68,  - | 
| 1996 | 
            -
               -74,   -77,  - | 
| 1997 | 
            -
              - | 
| 1998 | 
            -
              -289,  -497,  - | 
| 1999 | 
            -
              - | 
| 2000 | 
            -
              -302,  -546,   -49,  - | 
| 2001 | 
            -
              -514,  -515,  - | 
| 2002 | 
            -
              - | 
| 2003 | 
            -
              -326,  - | 
| 2004 | 
            -
              -476,  - | 
| 2005 | 
            -
              - | 
| 2006 | 
            -
              -494,    -6,  - | 
| 2007 | 
            -
               -19,   -20,   -21,  -122,  - | 
| 2008 | 
            -
              -266,   -31,  -197,  - | 
| 2009 | 
            -
              -257,  -421,  - | 
| 2010 | 
            -
              - | 
| 2011 | 
            -
               -45,   -46,  - | 
| 2012 | 
            -
              - | 
| 1986 | 
            +
              -188,  -189,  -190,  -191,  -192,  -193,  -194,   -22,  -121,  -625,
         | 
| 1987 | 
            +
              -626,  -626,  -625,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
         | 
| 1988 | 
            +
              -614,  -615,   -47,  -626,  -514,  -515,  -626,  -280,  -626,  -626,
         | 
| 1989 | 
            +
              -230,  -626,  -625,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
         | 
| 1990 | 
            +
              -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
         | 
| 1991 | 
            +
              -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,  -626,
         | 
| 1992 | 
            +
              -409,  -412,  -626,  -610,  -611,   -58,  -626,  -299,  -626,  -426,
         | 
| 1993 | 
            +
              -429,   -64,  -625,  -423,   -65,  -614,   -66,  -239,  -252,  -625,
         | 
| 1994 | 
            +
              -625,  -256,  -626,  -262,  -626,  -625,  -490,  -593,  -626,  -626,
         | 
| 1995 | 
            +
               -67,   -68,  -612,   -13,   -14,  -626,   -71,  -625,  -614,  -626,
         | 
| 1996 | 
            +
               -74,   -77,  -625,   -89,   -90,  -626,  -626,   -97,  -292,  -295,
         | 
| 1997 | 
            +
              -614,  -416,  -331,  -332,  -335,  -424,  -626,   -79,  -626,   -85,
         | 
| 1998 | 
            +
              -289,  -497,  -626,  -215,  -216,  -231,  -626,  -625,  -285,  -284,
         | 
| 1999 | 
            +
              -626,  -240,  -618,  -618,  -626,  -626,  -591,  -618,  -626,  -301,
         | 
| 2000 | 
            +
              -302,  -546,   -49,  -626,  -626,  -626,  -626,  -612,  -626,  -613,
         | 
| 2001 | 
            +
              -514,  -515,  -626,  -626,  -280,  -626,  -356,  -357,  -626,  -319,
         | 
| 2002 | 
            +
              -626,  -112,  -113,  -154,  -155,  -156,  -172,  -177,  -184,  -187,
         | 
| 2003 | 
            +
              -326,  -626,  -514,  -515,  -588,  -589,  -451,  -626,  -474,  -626,
         | 
| 2004 | 
            +
              -476,  -626,  -478,  -626,  -626,  -458,  -626,  -626,  -464,  -626,
         | 
| 2005 | 
            +
              -626,  -470,  -626,  -626,  -472,  -626,  -489,  -491,  -492,  -493,
         | 
| 2006 | 
            +
              -494,    -6,  -624,   -23,   -24,   -25,   -26,   -27,  -625,  -626,
         | 
| 2007 | 
            +
               -19,   -20,   -21,  -122,  -626,   -30,   -39,  -267,  -626,  -626,
         | 
| 2008 | 
            +
              -266,   -31,  -197,  -614,  -247,  -248,  -625,  -625,  -603,  -604,
         | 
| 2009 | 
            +
              -257,  -421,  -605,  -606,  -604,  -603,  -257,  -420,  -422,  -605,
         | 
| 2010 | 
            +
              -606,   -37,  -205,   -38,  -626,   -41,   -42,  -195,  -262,   -44,
         | 
| 2011 | 
            +
               -45,   -46,  -614,  -298,  -626,  -626,  -625,  -289,  -626,  -626,
         | 
| 2012 | 
            +
              -626,  -206,  -207,  -208,  -209,  -210,  -211,  -212,  -213,  -217,
         | 
| 2013 2013 | 
             
              -218,  -219,  -220,  -221,  -222,  -223,  -224,  -225,  -226,  -227,
         | 
| 2014 | 
            -
              -228,  -229,  -232,  -233,  -234,  -235,  - | 
| 2015 | 
            -
              - | 
| 2016 | 
            -
              -253,  - | 
| 2017 | 
            -
              - | 
| 2018 | 
            -
              - | 
| 2019 | 
            -
               -87,  - | 
| 2020 | 
            -
              - | 
| 2021 | 
            -
              -546,  -406,  - | 
| 2022 | 
            -
              -548,  -549,  -550,  -551,  -552,  -553,  -554,  - | 
| 2023 | 
            -
              - | 
| 2024 | 
            -
              - | 
| 2025 | 
            -
              -432,  - | 
| 2026 | 
            -
              - | 
| 2027 | 
            -
              -480,  -481,  -483,  -454,  -477,  -455,  -479,  -456,  -457,  - | 
| 2028 | 
            -
              -460,  -462,  - | 
| 2029 | 
            -
              -495,  - | 
| 2030 | 
            -
              -249,  -251,  - | 
| 2031 | 
            -
               -62,  -419,  - | 
| 2032 | 
            -
              -195,  - | 
| 2033 | 
            -
              -427,  -430,  -244,  -293,  - | 
| 2034 | 
            -
              - | 
| 2035 | 
            -
               -93,   -95,  - | 
| 2036 | 
            -
              -283,  -286,  - | 
| 2037 | 
            -
              - | 
| 2038 | 
            -
              -360,  -362,  -369,  - | 
| 2039 | 
            -
              - | 
| 2040 | 
            -
              - | 
| 2041 | 
            -
              -317,  -520,  -521,  - | 
| 2042 | 
            -
              - | 
| 2043 | 
            -
              -268,  - | 
| 2044 | 
            -
               -61,   -35,  -203,   -36,  -202,   -63,  -196,  - | 
| 2045 | 
            -
              - | 
| 2046 | 
            -
              - | 
| 2047 | 
            -
               -55,  - | 
| 2048 | 
            -
              - | 
| 2049 | 
            -
              - | 
| 2050 | 
            -
              - | 
| 2051 | 
            -
              -352,  - | 
| 2052 | 
            -
              -108,  -111,  - | 
| 2053 | 
            -
              -525,  -329,  - | 
| 2054 | 
            -
               -32,  -199,  -250,  - | 
| 2055 | 
            -
              -384,  - | 
| 2056 | 
            -
              - | 
| 2057 | 
            -
              - | 
| 2058 | 
            -
              - | 
| 2059 | 
            -
              -303,  - | 
| 2060 | 
            -
              - | 
| 2061 | 
            -
              - | 
| 2062 | 
            -
              -402,  - | 
| 2063 | 
            -
               -98,   -99,  - | 
| 2064 | 
            -
              -363,  - | 
| 2065 | 
            -
              -318,  -522,  - | 
| 2066 | 
            -
              -385,  - | 
| 2067 | 
            -
              - | 
| 2068 | 
            -
              -366,  - | 
| 2069 | 
            -
              - | 
| 2070 | 
            -
              -364,  -353,  -315,  -322,  -330,  - | 
| 2071 | 
            -
              -425,  -533,  - | 
| 2014 | 
            +
              -228,  -229,  -232,  -233,  -234,  -235,  -614,  -625,  -257,  -603,
         | 
| 2015 | 
            +
              -604,   -54,   -59,  -258,  -417,  -625,  -625,  -614,  -614,  -294,
         | 
| 2016 | 
            +
              -253,  -626,  -261,  -254,  -626,  -259,  -626,  -263,  -626,  -598,
         | 
| 2017 | 
            +
              -596,  -599,   -12,  -613,   -16,  -614,   -70,  -287,   -86,   -75,
         | 
| 2018 | 
            +
              -626,  -614,  -625,  -626,  -626,   -96,  -626,  -497,  -626,   -82,
         | 
| 2019 | 
            +
               -87,  -626,  -626,  -626,  -626,  -236,  -626,  -437,  -626,  -614,
         | 
| 2020 | 
            +
              -616,  -241,  -620,  -619,  -243,  -620,  -290,  -291,  -592,  -626,
         | 
| 2021 | 
            +
              -546,  -406,  -587,  -587,  -529,  -531,  -531,  -531,  -545,  -547,
         | 
| 2022 | 
            +
              -548,  -549,  -550,  -551,  -552,  -553,  -554,  -626,  -558,  -560,
         | 
| 2023 | 
            +
              -562,  -567,  -569,  -570,  -572,  -577,  -579,  -580,  -582,  -583,
         | 
| 2024 | 
            +
              -584,  -626,  -625,  -347,  -348,  -625,  -626,  -626,  -626,  -626,
         | 
| 2025 | 
            +
              -432,  -625,  -626,  -626,  -289,  -313,  -107,  -108,  -626,  -110,
         | 
| 2026 | 
            +
              -626,  -280,  -626,  -626,  -324,  -546,  -328,  -626,  -452,  -475,
         | 
| 2027 | 
            +
              -480,  -481,  -483,  -454,  -477,  -455,  -479,  -456,  -457,  -626,
         | 
| 2028 | 
            +
              -460,  -462,  -626,  -463,  -466,  -467,  -626,  -468,  -469,  -626,
         | 
| 2029 | 
            +
              -495,  -626,   -18,  -626,   -28,  -270,  -626,  -626,  -425,  -626,
         | 
| 2030 | 
            +
              -249,  -251,  -626,  -626,   -60,  -245,  -246,  -418,  -626,  -626,
         | 
| 2031 | 
            +
               -62,  -419,  -626,  -626,  -297,  -603,  -604,  -603,  -604,  -614,
         | 
| 2032 | 
            +
              -195,  -626,  -392,  -393,  -614,  -395,  -410,   -53,  -413,  -625,
         | 
| 2033 | 
            +
              -427,  -430,  -244,  -293,  -625,  -260,  -264,  -626,  -594,  -595,
         | 
| 2034 | 
            +
              -626,   -15,   -72,  -626,   -78,   -84,  -614,  -603,  -604,  -625,
         | 
| 2035 | 
            +
               -93,   -95,  -626,   -80,  -626,  -204,  -214,  -614,  -625,  -625,
         | 
| 2036 | 
            +
              -283,  -286,  -618,  -404,  -625,  -625,  -614,  -626,  -527,  -528,
         | 
| 2037 | 
            +
              -626,  -626,  -538,  -626,  -541,  -626,  -543,  -626,  -358,  -626,
         | 
| 2038 | 
            +
              -360,  -362,  -369,  -614,  -561,  -571,  -581,  -585,  -625,  -349,
         | 
| 2039 | 
            +
              -625,  -306,  -350,  -351,  -309,  -626,  -312,  -626,  -614,  -603,
         | 
| 2040 | 
            +
              -604,  -607,  -288,  -626,  -107,  -108,  -109,  -626,  -626,  -625,
         | 
| 2041 | 
            +
              -317,  -520,  -521,  -626,  -320,  -625,  -625,  -546,  -626,  -626,
         | 
| 2042 | 
            +
              -614,  -626,  -625,  -459,  -461,  -465,  -471,  -473,   -10,  -123,
         | 
| 2043 | 
            +
              -268,  -626,  -198,  -626,  -617,  -625,   -33,  -200,   -34,  -201,
         | 
| 2044 | 
            +
               -61,   -35,  -203,   -36,  -202,   -63,  -196,  -626,  -626,  -626,
         | 
| 2045 | 
            +
              -626,  -425,  -626,  -587,  -587,  -374,  -625,  -625,  -625,  -391,
         | 
| 2046 | 
            +
              -626,  -614,  -397,  -554,  -564,  -565,  -575,  -625,  -415,  -414,
         | 
| 2047 | 
            +
               -55,  -625,  -625,  -255,  -265,  -597,   -76,   -91,   -88,  -296,
         | 
| 2048 | 
            +
              -625,  -354,  -625,  -438,  -625,  -439,  -440,  -242,  -626,  -626,
         | 
| 2049 | 
            +
              -614,  -587,  -568,  -586,  -530,  -531,  -531,  -559,  -531,  -531,
         | 
| 2050 | 
            +
              -578,  -531,  -554,  -573,  -614,  -626,  -367,  -626,  -555,  -626,
         | 
| 2051 | 
            +
              -352,  -626,  -626,  -625,  -625,  -311,  -626,  -425,  -626,  -107,
         | 
| 2052 | 
            +
              -108,  -111,  -614,  -625,  -626,  -523,  -626,  -626,  -626,  -614,
         | 
| 2053 | 
            +
              -525,  -329,  -590,  -482,  -485,  -486,  -487,  -488,  -626,  -269,
         | 
| 2054 | 
            +
               -32,  -199,  -250,  -626,  -237,  -626,  -372,  -373,  -382,  -376,
         | 
| 2055 | 
            +
              -384,  -626,  -387,  -626,  -389,  -394,  -626,  -626,  -626,  -563,
         | 
| 2056 | 
            +
              -626,  -626,  -625,  -626,  -626,   -11,  -625,  -444,  -355,  -626,
         | 
| 2057 | 
            +
              -626,  -442,  -407,  -408,  -405,  -526,  -626,  -534,  -626,  -536,
         | 
| 2058 | 
            +
              -626,  -539,  -626,  -542,  -544,  -359,  -361,  -365,  -626,  -370,
         | 
| 2059 | 
            +
              -303,  -626,  -304,  -626,  -626,  -626,  -625,  -314,  -425,  -626,
         | 
| 2060 | 
            +
              -626,  -321,  -325,  -327,  -524,  -546,  -484,  -587,  -566,  -375,
         | 
| 2061 | 
            +
              -625,  -625,  -625,  -625,  -576,  -625,  -396,  -614,  -399,  -401,
         | 
| 2062 | 
            +
              -402,  -574,  -626,  -289,  -411,  -626,  -428,  -431,  -443,  -625,
         | 
| 2063 | 
            +
               -98,   -99,  -626,  -626,  -106,  -441,  -531,  -531,  -531,  -531,
         | 
| 2064 | 
            +
              -363,  -626,  -368,  -626,  -625,  -307,  -310,  -264,  -625,  -625,
         | 
| 2065 | 
            +
              -318,  -522,  -625,  -625,  -371,  -626,  -379,  -626,  -381,  -626,
         | 
| 2066 | 
            +
              -385,  -626,  -388,  -390,  -398,  -626,  -288,  -607,   -56,  -437,
         | 
| 2067 | 
            +
              -625,  -626,  -626,  -105,  -626,  -532,  -535,  -537,  -540,  -626,
         | 
| 2068 | 
            +
              -366,  -625,  -433,  -434,  -435,  -626,  -626,  -626,  -625,  -625,
         | 
| 2069 | 
            +
              -625,  -625,  -400,  -436,  -614,  -603,  -604,  -607,  -104,  -531,
         | 
| 2070 | 
            +
              -364,  -353,  -315,  -322,  -330,  -626,  -377,  -380,  -383,  -386,
         | 
| 2071 | 
            +
              -425,  -533,  -625,  -378 ]
         | 
| 2072 2072 |  | 
| 2073 2073 | 
             
            clist = [
         | 
| 2074 2074 | 
             
            '6,219,278,278,278,423,430,436,446,370,117,261,589,130,130,558,273,314',
         | 
| @@ -2869,48 +2869,50 @@ racc_reduce_table = [ | |
| 2869 2869 | 
             
              1, 331, :_reduce_none,
         | 
| 2870 2870 | 
             
              1, 332, :_reduce_none,
         | 
| 2871 2871 | 
             
              3, 332, :_reduce_555,
         | 
| 2872 | 
            -
              1,  | 
| 2873 | 
            -
              3,  | 
| 2872 | 
            +
              1, 332, :_reduce_none,
         | 
| 2873 | 
            +
              3, 332, :_reduce_557,
         | 
| 2874 | 
            +
              1, 285, :_reduce_558,
         | 
| 2875 | 
            +
              3, 285, :_reduce_559,
         | 
| 2874 2876 | 
             
              1, 333, :_reduce_none,
         | 
| 2875 | 
            -
              2, 334, : | 
| 2876 | 
            -
              1, 334, : | 
| 2877 | 
            -
              2, 335, : | 
| 2878 | 
            -
              1, 335, : | 
| 2877 | 
            +
              2, 334, :_reduce_561,
         | 
| 2878 | 
            +
              1, 334, :_reduce_562,
         | 
| 2879 | 
            +
              2, 335, :_reduce_563,
         | 
| 2880 | 
            +
              1, 335, :_reduce_564,
         | 
| 2879 2881 | 
             
              1, 279, :_reduce_none,
         | 
| 2880 | 
            -
              3, 279, : | 
| 2882 | 
            +
              3, 279, :_reduce_566,
         | 
| 2881 2883 | 
             
              1, 328, :_reduce_none,
         | 
| 2882 | 
            -
              3, 328, : | 
| 2884 | 
            +
              3, 328, :_reduce_568,
         | 
| 2883 2885 | 
             
              1, 336, :_reduce_none,
         | 
| 2884 2886 | 
             
              1, 336, :_reduce_none,
         | 
| 2885 | 
            -
              2, 280, : | 
| 2886 | 
            -
              1, 280, : | 
| 2887 | 
            -
              3, 337, : | 
| 2888 | 
            -
              3, 338, : | 
| 2889 | 
            -
              1, 286, : | 
| 2890 | 
            -
              3, 286, : | 
| 2891 | 
            -
              1, 330, : | 
| 2892 | 
            -
              3, 330, : | 
| 2887 | 
            +
              2, 280, :_reduce_571,
         | 
| 2888 | 
            +
              1, 280, :_reduce_572,
         | 
| 2889 | 
            +
              3, 337, :_reduce_573,
         | 
| 2890 | 
            +
              3, 338, :_reduce_574,
         | 
| 2891 | 
            +
              1, 286, :_reduce_575,
         | 
| 2892 | 
            +
              3, 286, :_reduce_576,
         | 
| 2893 | 
            +
              1, 330, :_reduce_577,
         | 
| 2894 | 
            +
              3, 330, :_reduce_578,
         | 
| 2893 2895 | 
             
              1, 339, :_reduce_none,
         | 
| 2894 2896 | 
             
              1, 339, :_reduce_none,
         | 
| 2895 | 
            -
              2, 287, : | 
| 2896 | 
            -
              1, 287, : | 
| 2897 | 
            +
              2, 287, :_reduce_581,
         | 
| 2898 | 
            +
              1, 287, :_reduce_582,
         | 
| 2897 2899 | 
             
              1, 340, :_reduce_none,
         | 
| 2898 2900 | 
             
              1, 340, :_reduce_none,
         | 
| 2899 | 
            -
              2, 282, : | 
| 2900 | 
            -
              2, 281, : | 
| 2901 | 
            -
              0, 281, : | 
| 2901 | 
            +
              2, 282, :_reduce_585,
         | 
| 2902 | 
            +
              2, 281, :_reduce_586,
         | 
| 2903 | 
            +
              0, 281, :_reduce_587,
         | 
| 2902 2904 | 
             
              1, 244, :_reduce_none,
         | 
| 2903 | 
            -
              0, 341, : | 
| 2904 | 
            -
              4, 244, : | 
| 2905 | 
            -
              1, 232, : | 
| 2906 | 
            -
              2, 232, : | 
| 2905 | 
            +
              0, 341, :_reduce_589,
         | 
| 2906 | 
            +
              4, 244, :_reduce_590,
         | 
| 2907 | 
            +
              1, 232, :_reduce_591,
         | 
| 2908 | 
            +
              2, 232, :_reduce_592,
         | 
| 2907 2909 | 
             
              1, 217, :_reduce_none,
         | 
| 2908 | 
            -
              3, 217, : | 
| 2909 | 
            -
              3, 342, : | 
| 2910 | 
            -
              2, 342, :_reduce_594,
         | 
| 2911 | 
            -
              4, 342, :_reduce_595,
         | 
| 2910 | 
            +
              3, 217, :_reduce_594,
         | 
| 2911 | 
            +
              3, 342, :_reduce_595,
         | 
| 2912 2912 | 
             
              2, 342, :_reduce_596,
         | 
| 2913 | 
            -
               | 
| 2913 | 
            +
              4, 342, :_reduce_597,
         | 
| 2914 | 
            +
              2, 342, :_reduce_598,
         | 
| 2915 | 
            +
              2, 342, :_reduce_599,
         | 
| 2914 2916 | 
             
              1, 191, :_reduce_none,
         | 
| 2915 2917 | 
             
              1, 191, :_reduce_none,
         | 
| 2916 2918 | 
             
              1, 191, :_reduce_none,
         | 
| @@ -2932,13 +2934,13 @@ racc_reduce_table = [ | |
| 2932 2934 | 
             
              0, 216, :_reduce_none,
         | 
| 2933 2935 | 
             
              1, 216, :_reduce_none,
         | 
| 2934 2936 | 
             
              1, 216, :_reduce_none,
         | 
| 2935 | 
            -
              1, 242, : | 
| 2937 | 
            +
              1, 242, :_reduce_621,
         | 
| 2936 2938 | 
             
              1, 242, :_reduce_none,
         | 
| 2937 2939 | 
             
              1, 153, :_reduce_none,
         | 
| 2938 | 
            -
              2, 153, : | 
| 2939 | 
            -
              0, 151, : | 
| 2940 | 
            +
              2, 153, :_reduce_624,
         | 
| 2941 | 
            +
              0, 151, :_reduce_625 ]
         | 
| 2940 2942 |  | 
| 2941 | 
            -
            racc_reduce_n =  | 
| 2943 | 
            +
            racc_reduce_n = 626
         | 
| 2942 2944 |  | 
| 2943 2945 | 
             
            racc_shift_n = 1054
         | 
| 2944 2946 |  | 
| @@ -6053,7 +6055,9 @@ def _reduce_483(val, _values, result) | |
| 6053 6055 | 
             
            end
         | 
| 6054 6056 |  | 
| 6055 6057 | 
             
            def _reduce_484(val, _values, result)
         | 
| 6058 | 
            +
            #if   defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
         | 
| 6056 6059 | 
             
                                  # TODO: tRCURLY -> tSTRING_END
         | 
| 6060 | 
            +
            #endif
         | 
| 6057 6061 | 
             
                                  _, memo, stmt, _ = val
         | 
| 6058 6062 |  | 
| 6059 6063 | 
             
                                  lex_strterm, brace_nest, string_nest, oldcond, oldcmdarg, oldlex_state = memo
         | 
| @@ -6460,7 +6464,15 @@ def _reduce_555(val, _values, result) | |
| 6460 6464 | 
             
                result
         | 
| 6461 6465 | 
             
            end
         | 
| 6462 6466 |  | 
| 6463 | 
            -
             | 
| 6467 | 
            +
            # reduce 556 omitted
         | 
| 6468 | 
            +
             | 
| 6469 | 
            +
            def _reduce_557(val, _values, result)
         | 
| 6470 | 
            +
                                  result = val[1]
         | 
| 6471 | 
            +
                                
         | 
| 6472 | 
            +
                result
         | 
| 6473 | 
            +
            end
         | 
| 6474 | 
            +
             | 
| 6475 | 
            +
            def _reduce_558(val, _values, result)
         | 
| 6464 6476 | 
             
                                  case val[0]
         | 
| 6465 6477 | 
             
                                  when Symbol then
         | 
| 6466 6478 | 
             
                                    result = s(:args)
         | 
| @@ -6475,7 +6487,7 @@ def _reduce_556(val, _values, result) | |
| 6475 6487 | 
             
                result
         | 
| 6476 6488 | 
             
            end
         | 
| 6477 6489 |  | 
| 6478 | 
            -
            def  | 
| 6490 | 
            +
            def _reduce_559(val, _values, result)
         | 
| 6479 6491 | 
             
                                  list, _, item = val
         | 
| 6480 6492 |  | 
| 6481 6493 | 
             
                                  if list.sexp_type == :args then
         | 
| @@ -6489,9 +6501,9 @@ def _reduce_557(val, _values, result) | |
| 6489 6501 | 
             
                result
         | 
| 6490 6502 | 
             
            end
         | 
| 6491 6503 |  | 
| 6492 | 
            -
            # reduce  | 
| 6504 | 
            +
            # reduce 560 omitted
         | 
| 6493 6505 |  | 
| 6494 | 
            -
            def  | 
| 6506 | 
            +
            def _reduce_561(val, _values, result)
         | 
| 6495 6507 | 
             
                                  # TODO: call_args
         | 
| 6496 6508 | 
             
                                  label, _ = val[0] # TODO: fix lineno?
         | 
| 6497 6509 | 
             
                                  identifier = label.to_sym
         | 
| @@ -6502,7 +6514,7 @@ def _reduce_559(val, _values, result) | |
| 6502 6514 | 
             
                result
         | 
| 6503 6515 | 
             
            end
         | 
| 6504 6516 |  | 
| 6505 | 
            -
            def  | 
| 6517 | 
            +
            def _reduce_562(val, _values, result)
         | 
| 6506 6518 | 
             
                                  label, _ = val[0] # TODO: fix lineno?
         | 
| 6507 6519 | 
             
                                  identifier = label.to_sym
         | 
| 6508 6520 | 
             
                                  self.env[identifier] = :lvar
         | 
| @@ -6512,7 +6524,7 @@ def _reduce_560(val, _values, result) | |
| 6512 6524 | 
             
                result
         | 
| 6513 6525 | 
             
            end
         | 
| 6514 6526 |  | 
| 6515 | 
            -
            def  | 
| 6527 | 
            +
            def _reduce_563(val, _values, result)
         | 
| 6516 6528 | 
             
                                  # TODO: call_args
         | 
| 6517 6529 | 
             
                                  label, _ = val[0] # TODO: fix lineno?
         | 
| 6518 6530 | 
             
                                  identifier = label.to_sym
         | 
| @@ -6523,7 +6535,7 @@ def _reduce_561(val, _values, result) | |
| 6523 6535 | 
             
                result
         | 
| 6524 6536 | 
             
            end
         | 
| 6525 6537 |  | 
| 6526 | 
            -
            def  | 
| 6538 | 
            +
            def _reduce_564(val, _values, result)
         | 
| 6527 6539 | 
             
                                  label, _ = val[0] # TODO: fix lineno?
         | 
| 6528 6540 | 
             
                                  identifier = label.to_sym
         | 
| 6529 6541 | 
             
                                  self.env[identifier] = :lvar
         | 
| @@ -6533,82 +6545,82 @@ def _reduce_562(val, _values, result) | |
| 6533 6545 | 
             
                result
         | 
| 6534 6546 | 
             
            end
         | 
| 6535 6547 |  | 
| 6536 | 
            -
            # reduce  | 
| 6548 | 
            +
            # reduce 565 omitted
         | 
| 6537 6549 |  | 
| 6538 | 
            -
            def  | 
| 6550 | 
            +
            def _reduce_566(val, _values, result)
         | 
| 6539 6551 | 
             
                                  list, _, item = val
         | 
| 6540 6552 | 
             
                                  result = list << item.last
         | 
| 6541 6553 |  | 
| 6542 6554 | 
             
                result
         | 
| 6543 6555 | 
             
            end
         | 
| 6544 6556 |  | 
| 6545 | 
            -
            # reduce  | 
| 6557 | 
            +
            # reduce 567 omitted
         | 
| 6546 6558 |  | 
| 6547 | 
            -
            def  | 
| 6559 | 
            +
            def _reduce_568(val, _values, result)
         | 
| 6548 6560 | 
             
                                  result = args val
         | 
| 6549 6561 |  | 
| 6550 6562 | 
             
                result
         | 
| 6551 6563 | 
             
            end
         | 
| 6552 6564 |  | 
| 6553 | 
            -
            # reduce  | 
| 6565 | 
            +
            # reduce 569 omitted
         | 
| 6554 6566 |  | 
| 6555 | 
            -
            # reduce  | 
| 6567 | 
            +
            # reduce 570 omitted
         | 
| 6556 6568 |  | 
| 6557 | 
            -
            def  | 
| 6569 | 
            +
            def _reduce_571(val, _values, result)
         | 
| 6558 6570 | 
             
                                  result = :"**#{val[1]}"
         | 
| 6559 6571 |  | 
| 6560 6572 | 
             
                result
         | 
| 6561 6573 | 
             
            end
         | 
| 6562 6574 |  | 
| 6563 | 
            -
            def  | 
| 6575 | 
            +
            def _reduce_572(val, _values, result)
         | 
| 6564 6576 | 
             
                                  debug20 36, val, result
         | 
| 6565 6577 |  | 
| 6566 6578 | 
             
                result
         | 
| 6567 6579 | 
             
            end
         | 
| 6568 6580 |  | 
| 6569 | 
            -
            def  | 
| 6581 | 
            +
            def _reduce_573(val, _values, result)
         | 
| 6570 6582 | 
             
                                  result = self.assignable val[0], val[2]
         | 
| 6571 6583 | 
             
                                  # TODO: detect duplicate names
         | 
| 6572 6584 |  | 
| 6573 6585 | 
             
                result
         | 
| 6574 6586 | 
             
            end
         | 
| 6575 6587 |  | 
| 6576 | 
            -
            def  | 
| 6588 | 
            +
            def _reduce_574(val, _values, result)
         | 
| 6577 6589 | 
             
                                  result = self.assignable val[0], val[2]
         | 
| 6578 6590 |  | 
| 6579 6591 | 
             
                result
         | 
| 6580 6592 | 
             
            end
         | 
| 6581 6593 |  | 
| 6582 | 
            -
            def  | 
| 6594 | 
            +
            def _reduce_575(val, _values, result)
         | 
| 6583 6595 | 
             
                                  result = s(:block, val[0])
         | 
| 6584 6596 |  | 
| 6585 6597 | 
             
                result
         | 
| 6586 6598 | 
             
            end
         | 
| 6587 6599 |  | 
| 6588 | 
            -
            def  | 
| 6600 | 
            +
            def _reduce_576(val, _values, result)
         | 
| 6589 6601 | 
             
                                  result = val[0]
         | 
| 6590 6602 | 
             
                                  result << val[2]
         | 
| 6591 6603 |  | 
| 6592 6604 | 
             
                result
         | 
| 6593 6605 | 
             
            end
         | 
| 6594 6606 |  | 
| 6595 | 
            -
            def  | 
| 6607 | 
            +
            def _reduce_577(val, _values, result)
         | 
| 6596 6608 | 
             
                                  result = s(:block, val[0])
         | 
| 6597 6609 |  | 
| 6598 6610 | 
             
                result
         | 
| 6599 6611 | 
             
            end
         | 
| 6600 6612 |  | 
| 6601 | 
            -
            def  | 
| 6613 | 
            +
            def _reduce_578(val, _values, result)
         | 
| 6602 6614 | 
             
                                  result = self.block_append val[0], val[2]
         | 
| 6603 6615 |  | 
| 6604 6616 | 
             
                result
         | 
| 6605 6617 | 
             
            end
         | 
| 6606 6618 |  | 
| 6607 | 
            -
            # reduce  | 
| 6619 | 
            +
            # reduce 579 omitted
         | 
| 6608 6620 |  | 
| 6609 | 
            -
            # reduce  | 
| 6621 | 
            +
            # reduce 580 omitted
         | 
| 6610 6622 |  | 
| 6611 | 
            -
            def  | 
| 6623 | 
            +
            def _reduce_581(val, _values, result)
         | 
| 6612 6624 | 
             
                                  # TODO: differs from parse.y - needs tests
         | 
| 6613 6625 | 
             
                                  name = val[1].to_sym
         | 
| 6614 6626 | 
             
                                  self.assignable name
         | 
| @@ -6617,7 +6629,7 @@ def _reduce_579(val, _values, result) | |
| 6617 6629 | 
             
                result
         | 
| 6618 6630 | 
             
            end
         | 
| 6619 6631 |  | 
| 6620 | 
            -
            def  | 
| 6632 | 
            +
            def _reduce_582(val, _values, result)
         | 
| 6621 6633 | 
             
                                  name = :"*"
         | 
| 6622 6634 | 
             
                                  self.env[name] = :lvar
         | 
| 6623 6635 | 
             
                                  result = name
         | 
| @@ -6625,11 +6637,11 @@ def _reduce_580(val, _values, result) | |
| 6625 6637 | 
             
                result
         | 
| 6626 6638 | 
             
            end
         | 
| 6627 6639 |  | 
| 6628 | 
            -
            # reduce  | 
| 6640 | 
            +
            # reduce 583 omitted
         | 
| 6629 6641 |  | 
| 6630 | 
            -
            # reduce  | 
| 6642 | 
            +
            # reduce 584 omitted
         | 
| 6631 6643 |  | 
| 6632 | 
            -
            def  | 
| 6644 | 
            +
            def _reduce_585(val, _values, result)
         | 
| 6633 6645 | 
             
                                  identifier = val[1].to_sym
         | 
| 6634 6646 |  | 
| 6635 6647 | 
             
                                  self.env[identifier] = :lvar
         | 
| @@ -6638,27 +6650,27 @@ def _reduce_583(val, _values, result) | |
| 6638 6650 | 
             
                result
         | 
| 6639 6651 | 
             
            end
         | 
| 6640 6652 |  | 
| 6641 | 
            -
            def  | 
| 6653 | 
            +
            def _reduce_586(val, _values, result)
         | 
| 6642 6654 | 
             
                                  result = val[1]
         | 
| 6643 6655 |  | 
| 6644 6656 | 
             
                result
         | 
| 6645 6657 | 
             
            end
         | 
| 6646 6658 |  | 
| 6647 | 
            -
            def  | 
| 6659 | 
            +
            def _reduce_587(val, _values, result)
         | 
| 6648 6660 | 
             
                                  result = nil
         | 
| 6649 6661 |  | 
| 6650 6662 | 
             
                result
         | 
| 6651 6663 | 
             
            end
         | 
| 6652 6664 |  | 
| 6653 | 
            -
            # reduce  | 
| 6665 | 
            +
            # reduce 588 omitted
         | 
| 6654 6666 |  | 
| 6655 | 
            -
            def  | 
| 6667 | 
            +
            def _reduce_589(val, _values, result)
         | 
| 6656 6668 | 
             
                                  lexer.lex_state = :expr_beg
         | 
| 6657 6669 |  | 
| 6658 6670 | 
             
                result
         | 
| 6659 6671 | 
             
            end
         | 
| 6660 6672 |  | 
| 6661 | 
            -
            def  | 
| 6673 | 
            +
            def _reduce_590(val, _values, result)
         | 
| 6662 6674 | 
             
                                  result = val[2]
         | 
| 6663 6675 | 
             
                                  yyerror "Can't define single method for literals." if
         | 
| 6664 6676 | 
             
                                    result[0] == :lit
         | 
| @@ -6666,21 +6678,21 @@ def _reduce_588(val, _values, result) | |
| 6666 6678 | 
             
                result
         | 
| 6667 6679 | 
             
            end
         | 
| 6668 6680 |  | 
| 6669 | 
            -
            def  | 
| 6681 | 
            +
            def _reduce_591(val, _values, result)
         | 
| 6670 6682 | 
             
                                  result = s(:array)
         | 
| 6671 6683 |  | 
| 6672 6684 | 
             
                result
         | 
| 6673 6685 | 
             
            end
         | 
| 6674 6686 |  | 
| 6675 | 
            -
            def  | 
| 6687 | 
            +
            def _reduce_592(val, _values, result)
         | 
| 6676 6688 | 
             
                                  result = val[0]
         | 
| 6677 6689 |  | 
| 6678 6690 | 
             
                result
         | 
| 6679 6691 | 
             
            end
         | 
| 6680 6692 |  | 
| 6681 | 
            -
            # reduce  | 
| 6693 | 
            +
            # reduce 593 omitted
         | 
| 6682 6694 |  | 
| 6683 | 
            -
            def  | 
| 6695 | 
            +
            def _reduce_594(val, _values, result)
         | 
| 6684 6696 | 
             
                                  list = val[0].dup
         | 
| 6685 6697 | 
             
                                  more = val[2][1..-1]
         | 
| 6686 6698 | 
             
                                  list.push(*more) unless more.empty?
         | 
| @@ -6691,19 +6703,19 @@ def _reduce_592(val, _values, result) | |
| 6691 6703 | 
             
                result
         | 
| 6692 6704 | 
             
            end
         | 
| 6693 6705 |  | 
| 6694 | 
            -
            def  | 
| 6706 | 
            +
            def _reduce_595(val, _values, result)
         | 
| 6695 6707 | 
             
                                  result = s(:array, val[0], val[2])
         | 
| 6696 6708 |  | 
| 6697 6709 | 
             
                result
         | 
| 6698 6710 | 
             
            end
         | 
| 6699 6711 |  | 
| 6700 | 
            -
            def  | 
| 6712 | 
            +
            def _reduce_596(val, _values, result)
         | 
| 6701 6713 | 
             
                                  result = s(:array, s(:lit, val[0][0].to_sym), val[1])
         | 
| 6702 6714 |  | 
| 6703 6715 | 
             
                result
         | 
| 6704 6716 | 
             
            end
         | 
| 6705 6717 |  | 
| 6706 | 
            -
            def  | 
| 6718 | 
            +
            def _reduce_597(val, _values, result)
         | 
| 6707 6719 | 
             
                                  _, sym, _, value = val
         | 
| 6708 6720 | 
             
                                  sym[0] = :dsym
         | 
| 6709 6721 | 
             
                                  result = s(:array, sym, value)
         | 
| @@ -6711,23 +6723,19 @@ def _reduce_595(val, _values, result) | |
| 6711 6723 | 
             
                result
         | 
| 6712 6724 | 
             
            end
         | 
| 6713 6725 |  | 
| 6714 | 
            -
            def  | 
| 6726 | 
            +
            def _reduce_598(val, _values, result)
         | 
| 6715 6727 | 
             
                                  raise "not yet: #{val.inspect}"
         | 
| 6716 6728 | 
             
                                  # result = s(:array, s(:lit, val[1].to_sym), val[1])
         | 
| 6717 6729 |  | 
| 6718 6730 | 
             
                result
         | 
| 6719 6731 | 
             
            end
         | 
| 6720 6732 |  | 
| 6721 | 
            -
            def  | 
| 6733 | 
            +
            def _reduce_599(val, _values, result)
         | 
| 6722 6734 | 
             
                                  result = s(:array, s(:kwsplat, val[1]))
         | 
| 6723 6735 |  | 
| 6724 6736 | 
             
                result
         | 
| 6725 6737 | 
             
            end
         | 
| 6726 6738 |  | 
| 6727 | 
            -
            # reduce 598 omitted
         | 
| 6728 | 
            -
             | 
| 6729 | 
            -
            # reduce 599 omitted
         | 
| 6730 | 
            -
             | 
| 6731 6739 | 
             
            # reduce 600 omitted
         | 
| 6732 6740 |  | 
| 6733 6741 | 
             
            # reduce 601 omitted
         | 
| @@ -6766,21 +6774,25 @@ end | |
| 6766 6774 |  | 
| 6767 6775 | 
             
            # reduce 618 omitted
         | 
| 6768 6776 |  | 
| 6769 | 
            -
             | 
| 6777 | 
            +
            # reduce 619 omitted
         | 
| 6778 | 
            +
             | 
| 6779 | 
            +
            # reduce 620 omitted
         | 
| 6780 | 
            +
             | 
| 6781 | 
            +
            def _reduce_621(val, _values, result)
         | 
| 6770 6782 | 
             
             yyerrok 
         | 
| 6771 6783 | 
             
                result
         | 
| 6772 6784 | 
             
            end
         | 
| 6773 6785 |  | 
| 6774 | 
            -
            # reduce  | 
| 6786 | 
            +
            # reduce 622 omitted
         | 
| 6775 6787 |  | 
| 6776 | 
            -
            # reduce  | 
| 6788 | 
            +
            # reduce 623 omitted
         | 
| 6777 6789 |  | 
| 6778 | 
            -
            def  | 
| 6790 | 
            +
            def _reduce_624(val, _values, result)
         | 
| 6779 6791 | 
             
             yyerrok 
         | 
| 6780 6792 | 
             
                result
         | 
| 6781 6793 | 
             
            end
         | 
| 6782 6794 |  | 
| 6783 | 
            -
            def  | 
| 6795 | 
            +
            def _reduce_625(val, _values, result)
         | 
| 6784 6796 | 
             
             result = nil; 
         | 
| 6785 6797 | 
             
                result
         | 
| 6786 6798 | 
             
            end
         |