steep 0.6.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
data/lib/steep/parser.rb CHANGED
@@ -8,7 +8,7 @@ require 'racc/parser.rb'
8
8
  module Steep
9
9
  class Parser < Racc::Parser
10
10
 
11
- module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1014)
11
+ module_eval(<<'...end parser.y/module_eval...', 'parser.y', 1023)
12
12
 
13
13
  require "strscan"
14
14
 
@@ -210,10 +210,6 @@ def next_token
210
210
  new_token(:kNOCONSTRUCTOR, :noconstructor)
211
211
  when input.scan(/\$\w+\b/)
212
212
  new_token(:tGVAR, input.matched.to_sym)
213
- when input.scan(/::([A-Z]\w*::)*[A-Z]\w*/)
214
- new_token(:tQUALIFIED_MODULE_NAME, Names::Module.parse(input.matched))
215
- when input.scan(/([A-Z]\w*::)+[A-Z]\w*/)
216
- new_token(:tQUALIFIED_MODULE_NAME, Names::Module.parse(input.matched))
217
213
  when input.scan(/::([A-Z]\w*::)*_\w+/)
218
214
  new_token(:tQUALIFIED_INTERFACE_NAME, Names::Interface.parse(input.matched))
219
215
  when input.scan(/([A-Z]\w*::)+_\w+/)
@@ -222,6 +218,10 @@ def next_token
222
218
  new_token(:tQUALIFIED_ALIAS_NAME, Names::Alias.parse(input.matched))
223
219
  when input.scan(/([A-Z]\w*::)+[a-z]\w*/)
224
220
  new_token(:tQUALIFIED_ALIAS_NAME, Names::Alias.parse(input.matched))
221
+ when input.scan(/::([A-Z]\w*::)*[A-Z]\w*/)
222
+ new_token(:tQUALIFIED_MODULE_NAME, Names::Module.parse(input.matched))
223
+ when input.scan(/([A-Z]\w*::)+[A-Z]\w*/)
224
+ new_token(:tQUALIFIED_MODULE_NAME, Names::Module.parse(input.matched))
225
225
  when input.scan(/[A-Z]\w*/)
226
226
  new_token(:tUIDENT, input.matched.to_sym)
227
227
  when input.scan(/_\w+/)
@@ -242,25 +242,25 @@ end
242
242
  ##### State transition tables begin ###
243
243
 
244
244
  clist = [
245
- '37,38,132,262,56,42,43,35,41,-34,58,262,215,216,131,386,137,137,388',
246
- '161,40,45,265,266,39,263,264,21,22,20,265,266,55,263,264,57,24,136,136',
247
- '383,54,46,56,261,51,49,58,50,28,29,30,261,26,382,21,22,20,23,262,25',
248
- '47,48,26,24,36,356,18,37,38,25,55,57,42,43,35,41,356,265,266,26,263',
249
- '264,262,355,23,391,25,40,45,26,26,39,64,18,355,208,25,25,261,26,206',
250
- '265,266,9,263,264,25,54,46,56,305,51,49,58,50,396,26,207,303,26,233',
251
- '397,261,25,232,26,25,47,48,26,86,36,25,399,37,38,25,55,57,42,43,35,41',
252
- '84,79,81,82,88,80,83,26,401,26,85,40,45,87,25,39,25,26,21,22,20,340',
253
- '289,290,25,175,9,24,403,404,9,54,46,56,9,51,49,58,50,2,3,4,5,6,9,21',
254
- '22,20,23,59,64,47,48,26,24,36,72,18,37,38,25,55,57,42,43,35,41,73,131',
255
- '131,158,136,184,185,9,23,190,9,40,45,26,9,39,9,18,195,195,25,197,198',
256
- '199,201,202,203,204,9,209,210,54,46,56,211,51,49,58,50,212,26,213,219',
257
- '220,221,222,223,25,224,225,226,47,48,26,227,36,234,235,37,38,25,55,57',
258
- '42,43,35,41,236,237,238,239,240,241,246,-97,-98,-99,-100,40,45,-104',
259
- '-95,39,-96,64,21,22,20,250,271,272,273,274,275,24,279,282,287,54,46',
260
- '56,136,51,49,58,50,297,298,312,314,250,317,21,22,20,23,319,321,47,48',
261
- '26,24,36,326,18,37,38,25,55,57,42,43,35,41,327,330,9,336,338,339,348',
262
- '357,23,358,360,40,45,26,360,39,362,18,364,365,25,369,370,371,9,374,375',
263
- '376,377,378,381,54,46,56,384,51,49,58,50,,26,,,,,,,25,,,,47,48,26,,36',
245
+ '37,38,56,263,386,42,43,35,41,58,208,262,137,359,137,206,215,216,385',
246
+ '359,40,45,266,267,39,264,265,21,22,20,55,358,207,136,57,136,24,358,132',
247
+ '-34,54,46,56,261,51,49,58,50,342,161,131,306,175,394,21,22,20,23,26',
248
+ '304,47,48,26,24,36,25,18,37,38,25,55,57,42,43,35,41,26,233,263,290,291',
249
+ '232,9,25,23,26,262,40,45,26,399,39,25,18,400,26,25,266,267,26,264,265',
250
+ '25,26,402,404,25,54,46,56,25,51,49,58,50,26,26,9,261,26,406,407,25,25',
251
+ '263,9,25,47,48,26,9,36,262,6,37,38,25,55,57,42,43,35,41,266,267,9,264',
252
+ '265,59,26,64,64,72,73,40,45,25,131,39,131,158,21,22,20,261,2,3,4,5,136',
253
+ '24,28,29,30,54,46,56,184,51,49,58,50,185,9,190,9,9,9,21,22,20,23,195',
254
+ '197,47,48,26,24,36,198,18,37,38,25,55,57,42,43,35,41,199,201,263,202',
255
+ '203,204,9,209,23,210,262,40,45,26,211,39,212,18,213,219,25,266,267,220',
256
+ '264,265,221,222,223,224,225,54,46,56,226,51,49,58,50,227,26,234,261',
257
+ '235,236,237,238,25,239,240,241,47,48,26,86,36,246,-97,37,38,25,55,57',
258
+ '42,43,35,41,84,79,81,82,88,80,83,-98,-99,-100,85,40,45,87,-104,39,-95',
259
+ '-96,21,22,20,64,250,272,273,274,275,24,276,280,283,54,46,56,288,51,49',
260
+ '58,50,136,298,299,313,315,250,21,22,20,23,318,320,47,48,26,24,36,321',
261
+ '18,37,38,25,55,57,42,43,35,41,323,328,329,332,9,338,340,341,23,350,360',
262
+ '40,45,26,361,39,363,18,363,365,25,367,368,372,373,374,9,377,378,379',
263
+ '380,54,46,56,381,51,49,58,50,384,26,387,389,391,,,,25,,,,47,48,26,,36',
264
264
  ',,178,179,25,55,57,42,43,177,41,157,,,,,,,,153,,,181,45,,,180,154,,155',
265
265
  ',,,37,38,,,,42,43,35,41,54,46,183,,51,49,182,50,,,,40,45,,174,39,,,175',
266
266
  '172,47,48,26,,36,,,,,25,55,57,46,56,,51,49,58,50,,,,,,,21,22,20,,,,47',
@@ -286,78 +286,82 @@ clist = [
286
286
  '40,45,,,39,,,,,,,37,38,,,,42,43,35,41,54,46,56,,51,49,58,50,,,,40,45',
287
287
  ',,39,,,,,47,48,26,,36,,,,,25,55,57,46,56,,51,49,58,50,,,,,,,233,,,,232',
288
288
  ',47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,',
289
- ',,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,340,,,,175,,47,48,26,,36,,,37',
289
+ ',,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,342,,,,175,,47,48,26,,36,,,37',
290
290
  '38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56',
291
291
  ',51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,',
292
292
  ',,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,',
293
293
  ',,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,',
294
- ',,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,178,179',
295
- '25,55,57,42,43,177,41,157,,,,,,,,153,,,181,45,,,180,154,,155,,,,,,,',
296
- ',,,,,54,46,183,,51,49,182,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55',
297
- '57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49',
298
- '58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,',
299
- ',,,40,45,,,39,,,,,,,37,38,,,,42,43,35,41,54,46,56,,51,49,58,50,,,,40',
300
- '45,,,39,,,,,47,48,26,,36,,,,,25,55,57,46,56,,51,49,58,50,,,,,,,,,,,',
294
+ ',,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38',
295
+ '25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,',
296
+ '51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,178,179,25,55,57,42,43,177,41',
297
+ '157,,,,,,,,153,,,181,45,,,180,154,,155,,,,,,,,,,,,,54,46,183,,51,49',
298
+ '182,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,',
299
+ ',,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48',
300
+ '26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,37,38',
301
+ ',,,42,43,35,41,54,46,56,,51,49,58,50,,,,40,45,,,39,,,,,47,48,26,,36',
302
+ ',,,,25,55,57,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25',
303
+ '55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51',
304
+ '49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,',
305
+ ',,,,,,40,45,,,39,,,,,,,37,38,,,,42,43,35,41,54,46,56,,51,49,58,50,,',
306
+ ',40,45,,,39,,,,,47,48,26,,36,,,,,25,55,57,46,56,,,49,58,61,,,,,,,,,',
307
+ ',,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,',
308
+ ',,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38',
309
+ '25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,',
310
+ '51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,',
311
+ ',,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,',
301
312
  ',47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,',
302
313
  ',,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25',
303
- '55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,37,38,,,,42,43,35,41,54',
304
- '46,56,,51,49,58,50,,,,40,45,,,39,,,,,47,48,26,,36,,,,,25,55,57,46,56',
305
- ',,49,58,61,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,',
306
- ',,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,',
307
- '47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,',
308
- ',,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25',
309
314
  '55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51',
310
315
  '49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,',
311
316
  ',,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47',
312
317
  '48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,',
313
- ',,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55',
314
- '57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49',
315
- '58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,',
316
- ',,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,340,,,,175',
318
+ ',,,,,,,,54,46,56,,51,49,58,50,,,,,,,342,,,,175,,47,48,26,,36,,,37,38',
319
+ '25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,',
320
+ '51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,',
321
+ ',,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,',
317
322
  ',47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,',
318
323
  ',,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25',
319
- '55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,37,38,,,,42,43,35,41,54',
320
- '46,56,,51,49,58,50,,,,40,45,,,39,,,,,47,48,26,,36,,,,,25,55,57,46,56',
321
- ',,49,58,,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,',
324
+ '55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51',
325
+ '49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,',
322
326
  ',,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47',
323
- '48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,',
324
- ',,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55',
325
- '57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49',
326
- '58,50,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,',
327
- ',,,40,45,,,39,,,,,,,,,,,,,,,,54,46,56,,51,49,58,50,,,,,,,,,,,,,47,48',
328
- '26,,36,,,37,38,25,55,57,42,43,35,41,150,151,,,,,,149,,157,,40,45,,,39',
329
- ',153,,,156,,,,152,154,,155,,,,54,46,56,,51,49,58,50,,,,148,,,,147,,',
330
- ',,47,48,26,309,36,,,,172,25,55,57,108,109,105,,106,99,119,103,104,120',
331
- '125,,,,,,,116,117,118,,,123,124,110,112,111,,121,122,,,115,98,,,,,96',
332
- ',114,,102,,,,100,,95,,94,113,93,107,,,,,91,92,,,101,97,108,109,105,',
333
- '106,99,119,103,104,120,125,,,,,,,116,117,118,,,123,124,110,112,111,',
334
- '121,122,,,115,98,,,,,96,,114,,102,,,,100,,95,,94,113,93,107,,,,,91,92',
335
- ',,101,97,108,109,105,,106,99,119,103,104,120,125,,,,,,,116,117,118,',
327
+ '48,26,,36,,,37,38,25,55,57,42,43,35,41,,,,,,,,,,,,40,45,,,39,,,,,,,37',
328
+ '38,,,,42,43,35,41,54,46,56,,51,49,58,50,,,,40,45,,,39,,,,,47,48,26,',
329
+ '36,,,,,25,55,57,46,56,,,49,58,,,,,,,,,,,,,,47,48,26,,36,,,37,38,25,55',
330
+ '57,42,43,35,41,150,151,,,,,,149,,157,,40,45,,,39,,153,,,156,,,,152,154',
331
+ ',155,,,,54,46,56,,51,49,58,50,,,,148,,,,147,,,,,47,48,26,310,36,,,,172',
332
+ '25,55,57,108,109,105,,106,99,119,103,104,120,125,,,,,,,116,117,118,',
336
333
  ',123,124,110,112,111,,121,122,,,115,98,,,,,96,,114,,102,,,,100,,95,',
337
334
  '94,113,93,107,,,,,91,92,,,101,97,108,109,105,,106,99,119,103,104,120',
338
- '125,,,,,,,116,117,118,,,123,124,110,112,111,,121,122,,,115,98,,,,,96',
339
- ',114,,102,,,,100,,95,,94,113,93,107,,,,,91,92,,,101,97,108,109,105,',
340
- '106,99,119,103,104,120,125,,,,,,,116,117,118,,,123,124,110,112,111,',
341
- '121,122,,,115,98,,,,,96,,114,,102,,,,100,,95,,94,113,93,107,,,,,91,92',
342
- ',,101,97,108,109,105,,106,99,119,103,104,120,125,,,,,,,116,117,118,351',
343
- '352,123,124,110,112,111,,121,122,,,115,98,,,,,96,,114,,102,,,,100,,95',
344
- ',94,113,93,107,,,,,91,92,,,101,97,108,109,105,,106,99,119,103,104,120',
345
- '125,,,,,,,116,117,118,,,123,124,110,112,111,,121,122,,,115,98,,,,,96',
346
- ',114,,102,,,,100,,95,,94,113,93,107,,,,,91,92,,,101,97,108,109,105,',
347
- '106,99,119,103,104,120,125,,,,,,,116,117,118,129,130,123,124,110,112',
335
+ '125,,,,,,,116,117,118,129,130,123,124,110,112,111,,121,122,,,115,98',
336
+ ',,,,96,,114,,102,,,,100,,95,,94,113,93,107,,,,,91,92,,,101,97,108,109',
337
+ '105,,106,99,119,103,104,120,125,,,,,,,116,117,118,,,123,124,110,112',
348
338
  '111,,121,122,,,115,98,,,,,96,,114,,102,,,,100,,95,,94,113,93,107,,,',
349
339
  ',91,92,,,101,97,108,109,105,,106,99,119,103,104,120,125,,,,,,,116,117',
350
340
  '118,,,123,124,110,112,111,,121,122,,,115,98,,,,,96,,114,,102,,,,100',
351
341
  ',95,,94,113,93,107,,,,,91,92,,,101,97,108,109,105,,106,99,119,103,104',
352
- '120,125,,,,,,,116,117,118,129,130,123,124,110,112,111,,121,122,,,115',
342
+ '120,125,,,,,,,116,117,118,,,123,124,110,112,111,,121,122,,,115,98,,',
343
+ ',,96,,114,,102,,,,100,,95,,94,113,93,107,,,,,91,92,,,101,97,108,109',
344
+ '105,,106,99,119,103,104,120,125,,,,,,,116,117,118,,,123,124,110,112',
345
+ '111,,121,122,,,115,98,,,,,96,,114,,102,,,,100,,95,,94,113,93,107,,,',
346
+ ',91,92,,,101,97,108,109,105,,106,99,119,103,104,120,125,,,,,,,116,117',
347
+ '118,,,123,124,110,112,111,,121,122,,,115,98,,,,,96,,114,,102,,,,100',
348
+ ',95,,94,113,93,107,,,,,91,92,,,101,97,108,109,105,,106,99,119,103,104',
349
+ '120,125,,,,,,,116,117,118,,,123,124,110,112,111,,121,122,,,115,98,,',
350
+ ',,96,,114,,102,,,,100,,95,,94,113,93,107,,,,,91,92,,,101,97,108,109',
351
+ '105,,106,99,119,103,104,120,125,,,,,,,116,117,118,129,130,123,124,110',
352
+ '112,111,,121,122,,,115,98,,,,,96,,114,,102,,,,100,,95,,94,113,93,107',
353
+ ',,,,91,92,,,101,97,108,109,105,,106,99,119,103,104,120,125,,,,,,,116',
354
+ '117,118,354,355,123,124,110,112,111,,121,122,,,115,98,,,,,96,,114,,102',
355
+ ',,,100,,95,,94,113,93,107,,,,,91,92,,,101,97,108,109,105,,106,99,119',
356
+ '103,104,120,125,,,,,,,116,117,118,,,123,124,110,112,111,,121,122,,,115',
353
357
  '98,,,,,96,,114,,102,,,,100,,95,,94,113,93,107,,,,,91,92,150,151,101',
354
358
  '97,,,,149,,157,,,150,151,,,,153,,149,156,157,,,152,154,,155,,153,,,156',
355
359
  ',,,152,154,,155,,142,148,,,,147,,,,150,151,,142,148,,,149,147,157,143',
356
360
  '144,,,,,,153,,,156,,143,144,152,154,,155,150,151,,,,,,149,,157,,,,,148',
357
361
  ',,153,147,,156,,,,152,154,174,155,150,151,175,172,,,,149,,157,,,,,148',
358
- ',,153,147,,156,,,,152,154,309,155,,,,172,,,,,,,,,,,148,,,,147,,,,,,',
359
- ',309,,,,,172' ]
360
- racc_action_table = arr = ::Array.new(3704, nil)
362
+ ',,153,147,,156,,,,152,154,310,155,,,,172,,,,,,,,,,,148,,,,147,,,,,,',
363
+ ',310,,,,,172' ]
364
+ racc_action_table = arr = ::Array.new(3835, nil)
361
365
  idx = 0
362
366
  clist.each do |str|
363
367
  str.split(',', -1).each do |i|
@@ -367,134 +371,138 @@ clist = [
367
371
  end
368
372
 
369
373
  clist = [
370
- '73,73,32,189,20,73,73,73,73,60,24,365,132,132,32,363,217,44,368,60,73',
371
- '73,189,189,73,189,189,13,13,13,365,365,20,365,365,24,13,217,44,360,73',
372
- '73,73,189,73,73,73,73,4,4,4,365,29,360,14,14,14,13,252,29,73,73,73,14',
373
- '73,378,13,220,220,73,73,73,220,220,220,220,321,252,252,84,252,252,270',
374
- '378,14,373,84,220,220,13,190,220,190,14,321,90,13,190,252,263,90,270',
375
- '270,374,270,270,263,220,220,220,235,220,220,220,220,379,14,90,235,264',
376
- '338,380,270,14,338,21,264,220,220,220,28,220,21,383,223,223,220,220',
377
- '220,223,223,223,223,28,28,28,28,28,28,28,22,387,362,28,223,223,28,22',
378
- '223,362,23,11,11,11,371,215,215,23,371,391,11,393,394,403,223,223,223',
379
- '404,223,223,223,223,0,0,0,0,1,2,3,3,3,11,6,9,223,223,223,3,223,18,11',
380
- '224,224,223,223,223,224,224,224,224,19,33,34,54,62,63,64,74,3,75,76',
381
- '224,224,11,77,224,78,3,79,80,11,81,82,83,85,86,87,88,89,96,99,224,224',
382
- '224,127,224,224,224,224,129,3,130,138,139,140,141,142,3,143,144,145',
383
- '224,224,224,146,224,159,160,225,225,224,224,224,225,225,225,225,162',
384
- '163,165,167,169,170,176,177,178,179,180,225,225,181,182,225,183,185',
385
- '17,17,17,188,191,192,193,194,196,17,200,203,214,225,225,225,228,225',
386
- '225,225,225,229,231,244,248,249,251,16,16,16,17,261,262,225,225,225',
387
- '16,225,268,17,226,226,225,225,225,226,226,226,226,269,272,275,297,300',
388
- '304,316,322,16,323,324,226,226,17,325,226,326,16,328,330,17,341,342',
389
- '344,348,350,351,352,353,354,359,226,226,226,361,226,226,226,226,,16',
390
- ',,,,,,16,,,,226,226,226,,226,,,61,61,226,226,226,61,61,61,61,61,,,,',
391
- ',,,61,,,61,61,,,61,61,,61,,,,232,232,,,,232,232,232,232,61,61,61,,61',
392
- '61,61,61,,,,232,232,,61,232,,,61,61,61,61,61,,61,,,,,61,61,61,232,232',
393
- ',232,232,232,232,,,,,,,15,15,15,,,,232,232,232,15,232,,,233,233,232',
394
- '232,232,233,233,233,233,,,,,,,,,15,,,233,233,,,233,,15,,,,,234,234,',
395
- ',,234,234,234,234,,233,233,,233,233,233,233,,15,,234,234,,,234,15,,',
396
- ',233,233,233,,233,,,,,233,233,233,234,234,,234,234,234,234,,,,,,,,,',
397
- ',,,234,234,234,,234,,,237,237,234,234,234,237,237,237,237,237,,,,,,',
398
- ',237,,,237,237,,,237,237,,237,,,,,,,,,,,,,237,237,237,,237,237,237,237',
399
- ',,,,,,237,,,,237,237,237,237,237,,237,,,246,246,237,237,237,246,246',
400
- '246,246,,,,,,,,,,,,246,246,,,246,,,12,12,12,,,,,,,12,,,,246,246,246',
401
- ',246,246,246,246,,,,,,,,,,12,,,246,246,246,,246,,12,72,72,246,246,246',
402
- '72,72,72,72,,,,,,,,,,,,72,72,12,,72,,,,,12,,158,158,,,,158,158,158,158',
403
- '72,72,72,,72,72,72,72,,,,158,158,,,158,,,,,72,72,72,,72,,,,,72,72,72',
404
- '158,158,,158,158,158,158,,,,,,,158,,,,158,,158,158,158,,158,,,5,5,158',
405
- '158,158,5,5,5,5,309,309,,,,,,309,,309,,5,5,,,5,,309,,,309,,,,309,309',
406
- ',309,,,,5,5,5,,5,5,5,5,,,,309,,,,309,,,,,5,5,5,,5,,,271,271,5,5,5,271',
407
- '271,271,271,,,,,,,,,,,,271,271,,,271,,,,,,,,,,,,,,,,271,271,271,,271',
408
- '271,271,271,,,,,,,,,,,,,271,271,271,,271,,,273,273,271,271,271,273,273',
409
- '273,273,,,,,,,,,,,,273,273,,,273,,,,,,,,,,,,,,,,273,273,273,,273,273',
410
- '273,273,,,,,,,,,,,,,273,273,273,,273,,,274,274,273,273,273,274,274,274',
374
+ '72,72,20,368,363,72,72,72,72,24,90,368,217,381,44,90,132,132,363,323',
375
+ '72,72,368,368,72,368,368,11,11,11,20,381,90,217,24,44,11,323,32,60,72',
376
+ '72,72,368,72,72,72,72,374,60,32,235,374,376,15,15,15,11,265,235,72,72',
377
+ '72,15,72,265,11,220,220,72,72,72,220,220,220,220,21,340,271,215,215',
378
+ '340,377,21,15,84,271,220,220,11,382,220,84,15,383,23,11,271,271,29,271',
379
+ '271,23,22,386,390,29,220,220,220,22,220,220,220,220,264,15,394,271,365',
380
+ '396,397,264,15,252,406,365,220,220,220,407,220,252,1,223,223,220,220',
381
+ '220,223,223,223,223,252,252,2,252,252,6,190,9,190,18,19,223,223,190',
382
+ '33,223,34,54,12,12,12,252,0,0,0,0,62,12,4,4,4,223,223,223,63,223,223',
383
+ '223,223,64,74,75,76,77,78,16,16,16,12,79,81,223,223,223,16,223,82,12',
384
+ '224,224,223,223,223,224,224,224,224,83,85,189,86,87,88,89,96,16,99,189',
385
+ '224,224,12,127,224,129,16,130,138,12,189,189,139,189,189,140,141,142',
386
+ '143,144,224,224,224,145,224,224,224,224,146,16,159,189,160,162,163,165',
387
+ '16,167,169,170,224,224,224,28,224,176,177,225,225,224,224,224,225,225',
388
+ '225,225,28,28,28,28,28,28,28,178,179,180,28,225,225,28,181,225,182,183',
389
+ '13,13,13,185,188,191,192,193,194,13,196,200,203,225,225,225,214,225',
390
+ '225,225,225,228,229,231,244,248,249,3,3,3,13,251,261,225,225,225,3,225',
391
+ '262,13,226,226,225,225,225,226,226,226,226,263,269,270,273,276,298,301',
392
+ '305,3,317,324,226,226,13,325,226,326,3,327,328,13,330,332,343,344,346',
393
+ '350,353,354,355,356,226,226,226,357,226,226,226,226,362,3,364,366,371',
394
+ ',,,3,,,,226,226,226,,226,,,61,61,226,226,226,61,61,61,61,61,,,,,,,,61',
395
+ ',,61,61,,,61,61,,61,,,,232,232,,,,232,232,232,232,61,61,61,,61,61,61',
396
+ '61,,,,232,232,,61,232,,,61,61,61,61,61,,61,,,,,61,61,61,232,232,,232',
397
+ '232,232,232,,,,,,,14,14,14,,,,232,232,232,14,232,,,233,233,232,232,232',
398
+ '233,233,233,233,,,,,,,,,14,,,233,233,,,233,,14,,,,,234,234,,,,234,234',
399
+ '234,234,,233,233,,233,233,233,233,,14,,234,234,,,234,14,,,,233,233,233',
400
+ ',233,,,,,233,233,233,234,234,,234,234,234,234,,,,,,,,,,,,,234,234,234',
401
+ ',234,,,237,237,234,234,234,237,237,237,237,237,,,,,,,,237,,,237,237',
402
+ ',,237,237,,237,,,,,,,,,,,,,237,237,237,,237,237,237,237,,,,,,,237,,',
403
+ ',237,237,237,237,237,,237,,,246,246,237,237,237,246,246,246,246,,,,',
404
+ ',,,,,,,246,246,,,246,,,17,17,17,,,,,,,17,,,,246,246,246,,246,246,246',
405
+ '246,,,,,,,,,,17,,,246,246,246,,246,,17,73,73,246,246,246,73,73,73,73',
406
+ ',,,,,,,,,,,73,73,17,,73,,,,,17,,158,158,,,,158,158,158,158,73,73,73',
407
+ ',73,73,73,73,,,,158,158,,,158,,,,,73,73,73,,73,,,,,73,73,73,158,158',
408
+ ',158,158,158,158,,,,,,,158,,,,158,,158,158,158,,158,,,272,272,158,158',
409
+ '158,272,272,272,272,310,310,,,,,,310,,310,,272,272,,,272,,310,,,310',
410
+ ',,,310,310,,310,,,,272,272,272,,272,272,272,272,,,,310,,,,310,,,,,272',
411
+ '272,272,,272,,,5,5,272,272,272,5,5,5,5,,,,,,,,,,,,5,5,,,5,,,,,,,,,,',
412
+ ',,,,,5,5,5,,5,5,5,5,,,,,,,,,,,,,5,5,5,,5,,,274,274,5,5,5,274,274,274',
411
413
  '274,,,,,,,,,,,,274,274,,,274,,,,,,,,,,,,,,,,274,274,274,,274,274,274',
412
- '274,,,,,,,,,,,,,274,274,274,,274,,,279,279,274,274,274,279,279,279,279',
413
- ',,,,,,,,,,,279,279,,,279,,,,,,,,,,,,,,,,279,279,279,,279,279,279,279',
414
- ',,,,,,,,,,,,279,279,279,,279,,,282,282,279,279,279,282,282,282,282,',
415
- ',,,,,,,,,,282,282,,,282,,,,,,,298,298,,,,298,298,298,298,282,282,282',
416
- ',282,282,282,282,,,,298,298,,,298,,,,,282,282,282,,282,,,,,282,282,282',
417
- '298,298,,298,298,298,298,,,,,,,298,,,,298,,298,298,298,,298,,,305,305',
418
- '298,298,298,305,305,305,305,,,,,,,,,,,,305,305,,,305,,,,,,,,,,,,,,,',
419
- '305,305,305,,305,305,305,305,,,,,,,305,,,,305,,305,305,305,,305,,,312',
420
- '312,305,305,305,312,312,312,312,,,,,,,,,,,,312,312,,,312,,,,,,,,,,,',
421
- ',,,,312,312,312,,312,312,312,312,,,,,,,,,,,,,312,312,312,,312,,,172',
422
- '172,312,312,312,172,172,172,172,,,,,,,,,,,,172,172,,,172,,,,,,,,,,,',
423
- ',,,,172,172,172,,172,172,172,172,,,,,,,,,,,,,172,172,172,,172,,,319',
424
- '319,172,172,172,319,319,319,319,,,,,,,,,,,,319,319,,,319,,,,,,,,,,,',
425
- ',,,,319,319,319,,319,319,319,319,,,,,,,,,,,,,319,319,319,,319,,,174',
426
- '174,319,319,319,174,174,174,174,174,,,,,,,,174,,,174,174,,,174,174,',
414
+ '274,,,,,,,,,,,,,274,274,274,,274,,,275,275,274,274,274,275,275,275,275',
415
+ ',,,,,,,,,,,275,275,,,275,,,,,,,,,,,,,,,,275,275,275,,275,275,275,275',
416
+ ',,,,,,,,,,,,275,275,275,,275,,,280,280,275,275,275,280,280,280,280,',
417
+ ',,,,,,,,,,280,280,,,280,,,,,,,,,,,,,,,,280,280,280,,280,280,280,280',
418
+ ',,,,,,,,,,,,280,280,280,,280,,,283,283,280,280,280,283,283,283,283,',
419
+ ',,,,,,,,,,283,283,,,283,,,,,,,299,299,,,,299,299,299,299,283,283,283',
420
+ ',283,283,283,283,,,,299,299,,,299,,,,,283,283,283,,283,,,,,283,283,283',
421
+ '299,299,,299,299,299,299,,,,,,,299,,,,299,,299,299,299,,299,,,306,306',
422
+ '299,299,299,306,306,306,306,,,,,,,,,,,,306,306,,,306,,,,,,,,,,,,,,,',
423
+ '306,306,306,,306,306,306,306,,,,,,,306,,,,306,,306,306,306,,306,,,313',
424
+ '313,306,306,306,313,313,313,313,,,,,,,,,,,,313,313,,,313,,,,,,,,,,,',
425
+ ',,,,313,313,313,,313,313,313,313,,,,,,,,,,,,,313,313,313,,313,,,172',
426
+ '172,313,313,313,172,172,172,172,,,,,,,,,,,,172,172,,,172,,,,,,,,,,,',
427
+ ',,,,172,172,172,,172,172,172,172,,,,,,,,,,,,,172,172,172,,172,,,320',
428
+ '320,172,172,172,320,320,320,320,,,,,,,,,,,,320,320,,,320,,,,,,,,,,,',
429
+ ',,,,320,320,320,,320,320,320,320,,,,,,,,,,,,,320,320,320,,320,,,321',
430
+ '321,320,320,320,321,321,321,321,,,,,,,,,,,,321,321,,,321,,,,,,,,,,,',
431
+ ',,,,321,321,321,,321,321,321,321,,,,,,,,,,,,,321,321,321,,321,,,174',
432
+ '174,321,321,321,174,174,174,174,174,,,,,,,,174,,,174,174,,,174,174,',
427
433
  '174,,,,,,,,,,,,,174,174,174,,174,174,174,174,,,,,,,,,,,,,174,174,174',
428
434
  ',174,,,175,175,174,174,174,175,175,175,175,,,,,,,,,,,,175,175,,,175',
429
435
  ',,,,,,,,,,,,,,,175,175,175,,175,175,175,175,,,,,,,,,,,,,175,175,175',
430
- ',175,,,327,327,175,175,175,327,327,327,327,,,,,,,,,,,,327,327,,,327',
431
- ',,,,,,336,336,,,,336,336,336,336,327,327,327,,327,327,327,327,,,,336',
432
- '336,,,336,,,,,327,327,327,,327,,,,,327,327,327,336,336,,336,336,336',
433
- '336,,,,,,,,,,,,,336,336,336,,336,,,339,339,336,336,336,339,339,339,339',
434
- ',,,,,,,,,,,339,339,,,339,,,,,,,,,,,,,,,,339,339,339,,339,339,339,339',
435
- ',,,,,,,,,,,,339,339,339,,339,,,340,340,339,339,339,340,340,340,340,',
436
- ',,,,,,,,,,340,340,,,340,,,,,,,8,8,,,,8,8,8,8,340,340,340,,340,340,340',
437
- '340,,,,8,8,,,8,,,,,340,340,340,,340,,,,,340,340,340,8,8,,,8,8,8,,,,',
438
- ',,,,,,,,8,8,8,,8,,,49,49,8,8,8,49,49,49,49,,,,,,,,,,,,49,49,,,49,,,',
439
- ',,,,,,,,,,,,49,49,49,,49,49,49,49,,,,,,,,,,,,,49,49,49,,49,,,50,50,49',
436
+ ',175,,,329,329,175,175,175,329,329,329,329,,,,,,,,,,,,329,329,,,329',
437
+ ',,,,,,338,338,,,,338,338,338,338,329,329,329,,329,329,329,329,,,,338',
438
+ '338,,,338,,,,,329,329,329,,329,,,,,329,329,329,338,338,,338,338,338',
439
+ '338,,,,,,,,,,,,,338,338,338,,338,,,341,341,338,338,338,341,341,341,341',
440
+ ',,,,,,,,,,,341,341,,,341,,,,,,,,,,,,,,,,341,341,341,,341,341,341,341',
441
+ ',,,,,,,,,,,,341,341,341,,341,,,342,342,341,341,341,342,342,342,342,',
442
+ ',,,,,,,,,,342,342,,,342,,,,,,,8,8,,,,8,8,8,8,342,342,342,,342,342,342',
443
+ '342,,,,8,8,,,8,,,,,342,342,342,,342,,,,,342,342,342,8,8,,,8,8,8,,,,',
444
+ ',,,,,,,,8,8,8,,8,,,360,360,8,8,8,360,360,360,360,,,,,,,,,,,,360,360',
445
+ ',,360,,,,,,,,,,,,,,,,360,360,360,,360,360,360,360,,,,,,,,,,,,,360,360',
446
+ '360,,360,,,361,361,360,360,360,361,361,361,361,,,,,,,,,,,,361,361,,',
447
+ '361,,,,,,,,,,,,,,,,361,361,361,,361,361,361,361,,,,,,,,,,,,,361,361',
448
+ '361,,361,,,49,49,361,361,361,49,49,49,49,,,,,,,,,,,,49,49,,,49,,,,,',
449
+ ',,,,,,,,,,49,49,49,,49,49,49,49,,,,,,,,,,,,,49,49,49,,49,,,50,50,49',
440
450
  '49,49,50,50,50,50,,,,,,,,,,,,50,50,,,50,,,,,,,,,,,,,,,,50,50,50,,50',
441
- '50,50,50,,,,,,,,,,,,,50,50,50,,50,,,357,357,50,50,50,357,357,357,357',
442
- ',,,,,,,,,,,357,357,,,357,,,,,,,,,,,,,,,,357,357,357,,357,357,357,357',
443
- ',,,,,,,,,,,,357,357,357,,357,,,358,358,357,357,357,358,358,358,358,',
444
- ',,,,,,,,,,358,358,,,358,,,,,,,,,,,,,,,,358,358,358,,358,358,358,358',
445
- ',,,,,,,,,,,,358,358,358,,358,,,131,131,358,358,358,131,131,131,131,',
446
- ',,,,,,,,,,131,131,,,131,,,,,,,,,,,,,,,,131,131,131,,131,131,131,131',
451
+ '50,50,50,,,,,,,,,,,,,50,50,50,,50,,,131,131,50,50,50,131,131,131,131',
452
+ ',,,,,,,,,,,131,131,,,131,,,,,,,,,,,,,,,,131,131,131,,131,131,131,131',
447
453
  ',,,,,,,,,,,,131,131,131,,131,,,197,197,131,131,131,197,197,197,197,',
448
454
  ',,,,,,,,,,197,197,,,197,,,,,,,,,,,,,,,,197,197,197,,197,197,197,197',
449
- ',,,,,,,,,,,,197,197,197,,197,,,370,370,197,197,197,370,370,370,370,',
450
- ',,,,,,,,,,370,370,,,370,,,,,,,,,,,,,,,,370,370,370,,370,370,370,370',
451
- ',,,,,,370,,,,370,,370,370,370,,370,,,198,198,370,370,370,198,198,198',
455
+ ',,,,,,,,,,,,197,197,197,,197,,,373,373,197,197,197,373,373,373,373,',
456
+ ',,,,,,,,,,373,373,,,373,,,,,,,,,,,,,,,,373,373,373,,373,373,373,373',
457
+ ',,,,,,373,,,,373,,373,373,373,,373,,,198,198,373,373,373,198,198,198',
452
458
  '198,,,,,,,,,,,,198,198,,,198,,,,,,,,,,,,,,,,198,198,198,,198,198,198',
453
459
  '198,,,,,,,,,,,,,198,198,198,,198,,,199,199,198,198,198,199,199,199,199',
454
- ',,,,,,,,,,,199,199,,,199,,,,,,,137,137,,,,137,137,137,137,199,199,199',
455
- ',199,199,199,199,,,,137,137,,,137,,,,,199,199,199,,199,,,,,199,199,199',
456
- '137,137,,,137,137,,,,,,,,,,,,,,137,137,137,,137,,,201,201,137,137,137',
457
- '201,201,201,201,,,,,,,,,,,,201,201,,,201,,,,,,,,,,,,,,,,201,201,201',
458
- ',201,201,201,201,,,,,,,,,,,,,201,201,201,,201,,,381,381,201,201,201',
459
- '381,381,381,381,,,,,,,,,,,,381,381,,,381,,,,,,,,,,,,,,,,381,381,381',
460
- ',381,381,381,381,,,,,,,,,,,,,381,381,381,,381,,,202,202,381,381,381',
461
- '202,202,202,202,,,,,,,,,,,,202,202,,,202,,,,,,,,,,,,,,,,202,202,202',
462
- ',202,202,202,202,,,,,,,,,,,,,202,202,202,,202,,,384,384,202,202,202',
463
- '384,384,384,384,,,,,,,,,,,,384,384,,,384,,,,,,,,,,,,,,,,384,384,384',
464
- ',384,384,384,384,,,,,,,,,,,,,384,384,384,,384,,,204,204,384,384,384',
460
+ ',,,,,,,,,,,199,199,,,199,,,,,,,,,,,,,,,,199,199,199,,199,199,199,199',
461
+ ',,,,,,,,,,,,199,199,199,,199,,,201,201,199,199,199,201,201,201,201,',
462
+ ',,,,,,,,,,201,201,,,201,,,,,,,,,,,,,,,,201,201,201,,201,201,201,201',
463
+ ',,,,,,,,,,,,201,201,201,,201,,,384,384,201,201,201,384,384,384,384,',
464
+ ',,,,,,,,,,384,384,,,384,,,,,,,,,,,,,,,,384,384,384,,384,384,384,384',
465
+ ',,,,,,,,,,,,384,384,384,,384,,,202,202,384,384,384,202,202,202,202,',
466
+ ',,,,,,,,,,202,202,,,202,,,,,,,,,,,,,,,,202,202,202,,202,202,202,202',
467
+ ',,,,,,,,,,,,202,202,202,,202,,,387,387,202,202,202,387,387,387,387,',
468
+ ',,,,,,,,,,387,387,,,387,,,,,,,137,137,,,,137,137,137,137,387,387,387',
469
+ ',387,387,387,387,,,,137,137,,,137,,,,,387,387,387,,387,,,,,387,387,387',
470
+ '137,137,,,137,137,,,,,,,,,,,,,,137,137,137,,137,,,204,204,137,137,137',
465
471
  '204,204,204,204,240,240,,,,,,240,,240,,204,204,,,204,,240,,,240,,,,240',
466
472
  '240,,240,,,,204,204,204,,204,204,204,204,,,,240,,,,240,,,,,204,204,204',
467
- '240,204,,,,240,204,204,204,213,213,213,,213,213,213,213,213,213,213',
468
- ',,,,,,213,213,213,,,213,213,213,213,213,,213,213,,,213,213,,,,,213,',
469
- '213,,213,,,,213,,213,,213,213,213,213,,,,,213,213,,,213,213,376,376',
470
- '376,,376,376,376,376,376,376,376,,,,,,,376,376,376,,,376,376,376,376',
471
- '376,,376,376,,,376,376,,,,,376,,376,,376,,,,376,,376,,376,376,376,376',
472
- ',,,,376,376,,,376,376,266,266,266,,266,266,266,266,266,266,266,,,,,',
473
- ',266,266,266,,,266,266,266,266,266,,266,266,,,266,266,,,,,266,,266,',
474
- '266,,,,266,,266,,266,266,266,266,,,,,266,266,,,266,266,265,265,265,',
475
- '265,265,265,265,265,265,265,,,,,,,265,265,265,,,265,265,265,265,265',
476
- ',265,265,,,265,265,,,,,265,,265,,265,,,,265,,265,,265,265,265,265,,',
477
- ',,265,265,,,265,265,212,212,212,,212,212,212,212,212,212,212,,,,,,,212',
478
- '212,212,,,212,212,212,212,212,,212,212,,,212,212,,,,,212,,212,,212,',
479
- ',,212,,212,,212,212,212,212,,,,,212,212,,,212,212,320,320,320,,320,320',
480
- '320,320,320,320,320,,,,,,,320,320,320,320,320,320,320,320,320,320,,320',
481
- '320,,,320,320,,,,,320,,320,,320,,,,320,,320,,320,320,320,320,,,,,320',
482
- '320,,,320,320,250,250,250,,250,250,250,250,250,250,250,,,,,,,250,250',
483
- '250,,,250,250,250,250,250,,250,250,,,250,250,,,,,250,,250,,250,,,,250',
484
- ',250,,250,250,250,250,,,,,250,250,,,250,250,211,211,211,,211,211,211',
485
- '211,211,211,211,,,,,,,211,211,211,211,211,211,211,211,211,211,,211,211',
486
- ',,211,211,,,,,211,,211,,211,,,,211,,211,,211,211,211,211,,,,,211,211',
487
- ',,211,211,375,375,375,,375,375,375,375,375,375,375,,,,,,,375,375,375',
488
- ',,375,375,375,375,375,,375,375,,,375,375,,,,,375,,375,,375,,,,375,,375',
489
- ',375,375,375,375,,,,,375,375,,,375,375,30,30,30,,30,30,30,30,30,30,30',
490
- ',,,,,,30,30,30,30,30,30,30,30,30,30,,30,30,,,30,30,,,,,30,,30,,30,,',
491
- ',30,,30,,30,30,30,30,,,,,30,30,222,222,30,30,,,,222,,222,,,51,51,,,',
492
- '222,,51,222,51,,,222,222,,222,,51,,,51,,,,51,51,,51,,222,222,,,,222',
493
- ',,,238,238,,51,51,,,238,51,238,222,222,,,,,,238,,,238,,51,51,238,238',
494
- ',238,241,241,,,,,,241,,241,,,,,238,,,241,238,,241,,,,241,241,238,241',
495
- '239,239,238,238,,,,239,,239,,,,,241,,,239,241,,239,,,,239,239,241,239',
496
- ',,,241,,,,,,,,,,,239,,,,239,,,,,,,,239,,,,,239' ]
497
- racc_action_check = arr = ::Array.new(3704, nil)
473
+ '240,204,,,,240,204,204,204,266,266,266,,266,266,266,266,266,266,266',
474
+ ',,,,,,266,266,266,,,266,266,266,266,266,,266,266,,,266,266,,,,,266,',
475
+ '266,,266,,,,266,,266,,266,266,266,266,,,,,266,266,,,266,266,30,30,30',
476
+ ',30,30,30,30,30,30,30,,,,,,,30,30,30,30,30,30,30,30,30,30,,30,30,,,30',
477
+ '30,,,,,30,,30,,30,,,,30,,30,,30,30,30,30,,,,,30,30,,,30,30,250,250,250',
478
+ ',250,250,250,250,250,250,250,,,,,,,250,250,250,,,250,250,250,250,250',
479
+ ',250,250,,,250,250,,,,,250,,250,,250,,,,250,,250,,250,250,250,250,,',
480
+ ',,250,250,,,250,250,267,267,267,,267,267,267,267,267,267,267,,,,,,,267',
481
+ '267,267,,,267,267,267,267,267,,267,267,,,267,267,,,,,267,,267,,267,',
482
+ ',,267,,267,,267,267,267,267,,,,,267,267,,,267,267,212,212,212,,212,212',
483
+ '212,212,212,212,212,,,,,,,212,212,212,,,212,212,212,212,212,,212,212',
484
+ ',,212,212,,,,,212,,212,,212,,,,212,,212,,212,212,212,212,,,,,212,212',
485
+ ',,212,212,80,80,80,,80,80,80,80,80,80,80,,,,,,,80,80,80,,,80,80,80,80',
486
+ '80,,80,80,,,80,80,,,,,80,,80,,80,,,,80,,80,,80,80,80,80,,,,,80,80,,',
487
+ '80,80,378,378,378,,378,378,378,378,378,378,378,,,,,,,378,378,378,,,378',
488
+ '378,378,378,378,,378,378,,,378,378,,,,,378,,378,,378,,,,378,,378,,378',
489
+ '378,378,378,,,,,378,378,,,378,378,379,379,379,,379,379,379,379,379,379',
490
+ '379,,,,,,,379,379,379,,,379,379,379,379,379,,379,379,,,379,379,,,,,379',
491
+ ',379,,379,,,,379,,379,,379,379,379,379,,,,,379,379,,,379,379,211,211',
492
+ '211,,211,211,211,211,211,211,211,,,,,,,211,211,211,211,211,211,211,211',
493
+ '211,211,,211,211,,,211,211,,,,,211,,211,,211,,,,211,,211,,211,211,211',
494
+ '211,,,,,211,211,,,211,211,322,322,322,,322,322,322,322,322,322,322,',
495
+ ',,,,,322,322,322,322,322,322,322,322,322,322,,322,322,,,322,322,,,,',
496
+ '322,,322,,322,,,,322,,322,,322,322,322,322,,,,,322,322,,,322,322,213',
497
+ '213,213,,213,213,213,213,213,213,213,,,,,,,213,213,213,,,213,213,213',
498
+ '213,213,,213,213,,,213,213,,,,,213,,213,,213,,,,213,,213,,213,213,213',
499
+ '213,,,,,213,213,51,51,213,213,,,,51,,51,,,222,222,,,,51,,222,51,222',
500
+ ',,51,51,,51,,222,,,222,,,,222,222,,222,,51,51,,,,51,,,,238,238,,222',
501
+ '222,,,238,222,238,51,51,,,,,,238,,,238,,222,222,238,238,,238,239,239',
502
+ ',,,,,239,,239,,,,,238,,,239,238,,239,,,,239,239,238,239,241,241,238',
503
+ '238,,,,241,,241,,,,,239,,,241,239,,241,,,,241,241,239,241,,,,239,,,',
504
+ ',,,,,,,241,,,,241,,,,,,,,241,,,,,241' ]
505
+ racc_action_check = arr = ::Array.new(3835, nil)
498
506
  idx = 0
499
507
  clist.each do |str|
500
508
  str.split(',', -1).each do |i|
@@ -504,189 +512,191 @@ clist = [
504
512
  end
505
513
 
506
514
  racc_action_pointer = [
507
- 115, 186, 137, 186, 35, 828, 192, nil, 1859, 127,
508
- nil, 159, 690, 25, 52, 485, 320, 293, 163, 174,
509
- -40, 61, 86, 96, -38, nil, nil, nil, 127, -12,
510
- 3476, nil, -36, 161, 162, nil, nil, nil, nil, nil,
511
- nil, nil, nil, nil, -18, nil, nil, nil, nil, 1926,
512
- 1993, 3548, nil, nil, 164, nil, nil, nil, nil, nil,
513
- -37, 400, 158, 175, 179, nil, nil, nil, nil, nil,
514
- nil, nil, 730, -2, 167, 169, 170, 174, 176, 180,
515
- 181, 195, 196, 197, 15, 198, 199, 191, 201, 188,
516
- 61, nil, nil, nil, nil, nil, 199, nil, nil, 184,
515
+ 98, 133, 95, 320, 158, 895, 148, nil, 1926, 84,
516
+ nil, 25, 159, 293, 485, 52, 186, 690, 116, 117,
517
+ -42, 12, 39, 31, -39, nil, nil, nil, 261, 35,
518
+ 3031, nil, 0, 107, 109, nil, nil, nil, nil, nil,
519
+ nil, nil, nil, nil, -21, nil, nil, nil, nil, 2127,
520
+ 2194, 3667, nil, nil, 111, nil, nil, nil, nil, nil,
521
+ -7, 400, 113, 137, 145, nil, nil, nil, nil, nil,
522
+ nil, nil, -2, 730, 133, 134, 135, 136, 137, 144,
523
+ 3287, 157, 163, 174, 21, 175, 177, 169, 179, 166,
524
+ -24, nil, nil, nil, nil, nil, 177, nil, nil, 163,
517
525
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
518
526
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
519
- nil, nil, nil, nil, nil, nil, nil, 207, nil, 211,
520
- 213, 2194, 10, nil, nil, nil, nil, 2493, 194, 216,
521
- 195, 218, 205, 207, 208, 224, 207, nil, nil, nil,
522
- nil, nil, nil, nil, nil, nil, nil, nil, 761, 233,
523
- 221, nil, 218, 241, nil, 242, nil, 243, nil, 244,
524
- 245, nil, 1395, nil, 1529, 1596, 247, 248, 249, 250,
525
- 251, 254, 255, 257, nil, 228, nil, nil, 293, -2,
526
- 26, 263, 251, 262, 266, nil, 267, 2261, 2395, 2462,
527
- 269, 2560, 2694, 270, 2828, nil, nil, nil, nil, nil,
528
- nil, 3348, 3156, 2900, 267, 135, nil, -19, nil, nil,
529
- 65, nil, 3536, 132, 199, 266, 333, nil, 255, 257,
530
- nil, 280, 431, 498, 529, 61, nil, 596, 3586, 3642,
531
- 2837, 3614, nil, nil, 282, nil, 663, nil, 313, 315,
532
- 3284, 315, 53, nil, nil, nil, nil, nil, nil, nil,
533
- nil, 290, 278, 35, 55, 3092, 3028, nil, 293, 294,
534
- 77, 895, 281, 962, 1029, 296, nil, nil, nil, 1096,
535
- nil, nil, 1163, nil, nil, nil, nil, nil, nil, nil,
536
- nil, nil, nil, nil, nil, nil, nil, 314, 1194, nil,
537
- 311, nil, nil, nil, 316, 1261, nil, nil, nil, 837,
538
- nil, nil, 1328, nil, nil, nil, 314, nil, nil, 1462,
539
- 3220, 64, 301, 303, 305, 309, 310, 1663, 356, nil,
540
- 304, nil, nil, nil, nil, nil, 1694, nil, 64, 1761,
541
- 1828, 306, 329, nil, 330, nil, nil, nil, 318, nil,
542
- 333, 332, 333, 313, 336, nil, nil, 2060, 2127, 338,
543
- -6, 342, 88, -25, nil, 6, nil, nil, -39, nil,
544
- 2328, 108, nil, 50, 53, 3412, 2964, nil, 53, 75,
545
- 81, 2627, nil, 74, 2761, nil, nil, 145, nil, nil,
546
- nil, 119, nil, 135, 136, nil, nil, nil, nil, nil,
547
- nil, nil, nil, 123, 127, nil, nil ]
527
+ nil, nil, nil, nil, nil, nil, nil, 187, nil, 188,
528
+ 190, 2261, 14, nil, nil, nil, nil, 2828, 171, 196,
529
+ 177, 200, 187, 188, 189, 208, 192, nil, nil, nil,
530
+ nil, nil, nil, nil, nil, nil, nil, nil, 761, 218,
531
+ 207, nil, 195, 218, nil, 219, nil, 221, nil, 222,
532
+ 223, nil, 1395, nil, 1596, 1663, 230, 231, 248, 249,
533
+ 250, 255, 257, 258, nil, 232, nil, nil, 294, 207,
534
+ 85, 264, 252, 263, 267, nil, 269, 2328, 2462, 2529,
535
+ 270, 2596, 2730, 271, 2895, nil, nil, nil, nil, nil,
536
+ nil, 3479, 3223, 3607, 271, 49, nil, -23, nil, nil,
537
+ 65, nil, 3679, 132, 199, 266, 333, nil, 260, 258,
538
+ nil, 281, 431, 498, 529, 2, nil, 596, 3717, 3745,
539
+ 2904, 3773, nil, nil, 283, nil, 663, nil, 314, 316,
540
+ 3095, 320, 119, nil, nil, nil, nil, nil, nil, nil,
541
+ nil, 291, 297, 295, 51, -6, 2967, 3159, nil, 305,
542
+ 296, 73, 828, 283, 962, 1029, 298, nil, nil, nil,
543
+ 1096, nil, nil, 1163, nil, nil, nil, nil, nil, nil,
544
+ nil, nil, nil, nil, nil, nil, nil, nil, 316, 1194,
545
+ nil, 313, nil, nil, nil, 318, 1261, nil, nil, nil,
546
+ 837, nil, nil, 1328, nil, nil, nil, 317, nil, nil,
547
+ 1462, 1529, 3543, 7, 304, 308, 311, 313, 313, 1730,
548
+ 359, nil, 307, nil, nil, nil, nil, nil, 1761, nil,
549
+ 21, 1828, 1895, 308, 331, nil, 332, nil, nil, nil,
550
+ 320, nil, nil, 335, 334, 335, 315, 341, nil, nil,
551
+ 1993, 2060, 347, -41, 349, 55, 346, nil, -2, nil,
552
+ nil, 330, nil, 2395, -8, nil, 18, 32, 3351, 3415,
553
+ nil, 1, 50, 54, 2663, nil, 45, 2797, nil, nil,
554
+ 99, nil, nil, nil, 67, nil, 84, 85, nil, nil,
555
+ nil, nil, nil, nil, nil, nil, 75, 80, nil, nil ]
548
556
 
549
557
  racc_action_default = [
550
- -231, -231, -164, -106, -231, -231, -231, -1, -7, -231,
551
- -2, -106, -106, -106, -106, -106, -106, -106, -231, -231,
552
- -231, -231, -231, -231, -231, -129, -130, -3, -231, -231,
553
- -231, -4, -46, -46, -46, -53, -54, -55, -56, -57,
554
- -58, -59, -60, -61, -77, -63, -64, -65, -66, -231,
555
- -231, -68, -81, -82, -231, -127, -128, -131, -132, 407,
556
- -31, -24, -9, -231, -166, -107, -108, -109, -110, -111,
557
- -112, -113, -231, -231, -164, -118, -164, -164, -164, -231,
558
- -231, -231, -231, -231, -231, -231, -231, -231, -231, -164,
559
- -173, -174, -175, -176, -177, -178, -179, -180, -181, -231,
560
- -187, -188, -189, -190, -191, -192, -193, -194, -195, -196,
561
- -197, -198, -199, -200, -201, -202, -203, -204, -205, -206,
562
- -207, -208, -209, -210, -211, -212, -223, -226, -227, -231,
563
- -231, -231, -231, -50, -51, -52, -62, -231, -231, -91,
564
- -231, -70, -231, -231, -231, -231, -231, -95, -96, -97,
565
- -98, -99, -100, -101, -102, -103, -104, -105, -87, -231,
566
- -231, -35, -231, -10, -12, -13, -15, -16, -18, -19,
567
- -20, -23, -231, -26, -231, -231, -231, -53, -55, -56,
568
- -57, -58, -132, -128, -165, -231, -114, -115, -168, -133,
569
- -231, -125, -231, -231, -231, -230, -231, -231, -231, -231,
570
- -231, -231, -231, -231, -231, -222, -182, -183, -184, -185,
571
- -186, -231, -231, -231, -231, -78, -49, -93, -94, -67,
572
- -231, -75, -68, -231, -231, -231, -231, -76, -77, -231,
573
- -84, -85, -231, -231, -231, -36, -8, -24, -24, -24,
574
- -24, -24, -25, -27, -231, -28, -231, -167, -231, -168,
575
- -231, -231, -133, -135, -136, -137, -138, -139, -140, -141,
576
- -142, -231, -156, -231, -231, -231, -231, -119, -231, -162,
577
- -133, -231, -231, -231, -231, -164, -215, -216, -217, -231,
578
- -219, -220, -231, -224, -225, -228, -229, -47, -48, -79,
579
- -80, -92, -69, -71, -72, -73, -74, -231, -87, -88,
580
- -89, -5, -6, -32, -231, -44, -11, -14, -17, -231,
581
- -21, -22, -231, -29, -116, -169, -231, -117, -134, -231,
582
- -231, -231, -147, -149, -153, -153, -120, -231, -231, -126,
583
- -231, -124, -213, -214, -218, -221, -231, -86, -87, -231,
584
- -231, -231, -38, -40, -41, -43, -45, -30, -164, -143,
585
- -231, -231, -231, -231, -158, -160, -161, -231, -231, -231,
586
- -231, -231, -231, -231, -122, -133, -83, -90, -231, -37,
587
- -44, -44, -170, -171, -164, -231, -231, -157, -231, -231,
588
- -231, -231, -154, -231, -231, -121, -163, -231, -33, -39,
589
- -42, -164, -144, -231, -231, -159, -148, -150, -151, -155,
590
- -152, -123, -172, -164, -164, -145, -146 ]
558
+ -232, -232, -165, -106, -232, -232, -232, -1, -7, -232,
559
+ -2, -106, -106, -106, -106, -106, -106, -106, -232, -232,
560
+ -232, -232, -232, -232, -232, -129, -130, -3, -232, -232,
561
+ -232, -4, -46, -46, -46, -53, -54, -55, -56, -57,
562
+ -58, -59, -60, -61, -77, -63, -64, -65, -66, -232,
563
+ -232, -68, -81, -82, -232, -127, -128, -131, -132, 410,
564
+ -31, -24, -9, -232, -167, -107, -108, -109, -110, -111,
565
+ -112, -113, -232, -232, -165, -118, -165, -165, -165, -232,
566
+ -232, -232, -232, -232, -232, -232, -232, -232, -232, -165,
567
+ -174, -175, -176, -177, -178, -179, -180, -181, -182, -232,
568
+ -188, -189, -190, -191, -192, -193, -194, -195, -196, -197,
569
+ -198, -199, -200, -201, -202, -203, -204, -205, -206, -207,
570
+ -208, -209, -210, -211, -212, -213, -224, -227, -228, -232,
571
+ -232, -232, -232, -50, -51, -52, -62, -232, -232, -91,
572
+ -232, -70, -232, -232, -232, -232, -232, -95, -96, -97,
573
+ -98, -99, -100, -101, -102, -103, -104, -105, -87, -232,
574
+ -232, -35, -232, -10, -12, -13, -15, -16, -18, -19,
575
+ -20, -23, -232, -26, -232, -232, -232, -53, -55, -56,
576
+ -57, -58, -132, -128, -166, -232, -114, -115, -169, -133,
577
+ -232, -125, -232, -232, -232, -231, -232, -232, -232, -232,
578
+ -232, -232, -232, -232, -232, -223, -183, -184, -185, -186,
579
+ -187, -232, -232, -232, -232, -78, -49, -93, -94, -67,
580
+ -232, -75, -68, -232, -232, -232, -232, -76, -77, -232,
581
+ -84, -85, -232, -232, -232, -36, -8, -24, -24, -24,
582
+ -24, -24, -25, -27, -232, -28, -232, -168, -232, -169,
583
+ -232, -232, -133, -135, -136, -137, -138, -139, -140, -141,
584
+ -142, -232, -232, -157, -232, -232, -232, -232, -119, -232,
585
+ -163, -133, -232, -232, -232, -232, -165, -216, -217, -218,
586
+ -232, -220, -221, -232, -225, -226, -229, -230, -47, -48,
587
+ -79, -80, -92, -69, -71, -72, -73, -74, -232, -87,
588
+ -88, -89, -5, -6, -32, -232, -44, -11, -14, -17,
589
+ -232, -21, -22, -232, -29, -116, -170, -232, -117, -134,
590
+ -232, -232, -232, -232, -148, -150, -154, -154, -120, -232,
591
+ -232, -126, -232, -124, -214, -215, -219, -222, -232, -86,
592
+ -87, -232, -232, -232, -38, -40, -41, -43, -45, -30,
593
+ -165, -143, -144, -232, -232, -232, -232, -159, -161, -162,
594
+ -232, -232, -232, -232, -232, -232, -232, -122, -133, -83,
595
+ -90, -232, -37, -44, -44, -171, -172, -165, -232, -232,
596
+ -158, -232, -232, -232, -232, -155, -232, -232, -121, -164,
597
+ -232, -33, -39, -42, -165, -145, -232, -232, -160, -149,
598
+ -151, -152, -156, -153, -123, -173, -165, -165, -146, -147 ]
591
599
 
592
600
  racc_goto_table = [
593
- 31, 19, 62, 138, 126, 7, 145, 162, 63, 19,
594
- 19, 19, 19, 19, 19, 19, 146, 231, 267, 75,
595
- 76, 77, 229, 344, 251, 342, 353, 89, 133, 134,
596
- 135, 346, 188, 341, 191, 192, 193, 304, 248, 218,
597
- 10, 285, 286, 194, 196, 140, 160, 205, 65, 66,
598
- 67, 68, 69, 70, 71, 367, 173, 390, 372, 308,
599
- 310, 311, 359, 361, 189, 307, 301, 186, 187, 159,
600
- 270, 320, 60, 1, 27, 74, 288, 78, nil, 316,
601
- nil, nil, 200, 395, 392, 214, nil, 318, 344, 344,
602
- 342, 299, 300, 302, 324, 325, 346, 346, 389, 315,
603
- nil, 402, nil, nil, nil, 328, nil, nil, nil, nil,
604
- nil, nil, nil, 405, 406, nil, nil, nil, nil, nil,
605
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 244,
606
- nil, 217, nil, nil, nil, nil, nil, nil, nil, nil,
607
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 350,
608
- nil, nil, 228, nil, nil, nil, nil, 231, nil, nil,
609
- nil, nil, 337, nil, nil, nil, nil, 242, nil, 243,
610
- 245, nil, nil, nil, 291, nil, nil, 145, nil, nil,
611
- nil, nil, nil, 306, 247, 284, nil, 292, 269, 268,
612
- 385, nil, 276, 277, 278, 366, 280, 281, nil, 283,
613
- 387, nil, nil, nil, 393, 394, nil, nil, nil, nil,
614
- nil, nil, nil, nil, nil, nil, nil, nil, 293, 294,
615
- 295, 296, nil, nil, nil, nil, 228, 228, 228, nil,
601
+ 31, 19, 62, 7, 196, 145, 138, 251, 63, 19,
602
+ 19, 19, 19, 19, 19, 19, 146, 126, 229, 75,
603
+ 76, 77, 231, 346, 162, 348, 268, 89, 344, 356,
604
+ 362, 364, 343, 248, 188, 78, 191, 192, 193, 133,
605
+ 134, 135, 309, 311, 312, 140, 305, 218, 160, 205,
606
+ 10, 370, 393, 189, 308, 302, 173, 375, 65, 66,
607
+ 67, 68, 69, 70, 71, 159, 271, 186, 187, 322,
608
+ 319, 60, 1, 27, 194, 74, 289, nil, nil, nil,
609
+ nil, nil, 200, nil, 395, nil, nil, 398, 214, 330,
610
+ 346, 346, 348, 348, 316, 344, 300, 301, 303, 392,
611
+ nil, 405, nil, nil, nil, nil, nil, nil, nil, nil,
612
+ nil, nil, nil, 408, 409, nil, nil, nil, nil, nil,
613
+ nil, nil, nil, nil, nil, nil, nil, nil, 244, nil,
614
+ nil, 217, nil, nil, nil, nil, 286, 287, nil, nil,
615
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
616
+ nil, nil, 228, nil, nil, nil, nil, nil, nil, 339,
617
+ nil, nil, nil, 231, nil, nil, nil, 242, nil, 243,
618
+ 245, nil, nil, nil, 317, nil, 145, 292, nil, nil,
619
+ nil, nil, nil, nil, 247, nil, 390, 293, 270, 269,
620
+ 326, 327, 277, 278, 279, nil, 281, 282, 285, 284,
621
+ 307, 388, 369, nil, nil, nil, nil, nil, nil, nil,
622
+ nil, nil, nil, nil, nil, nil, nil, nil, 294, 295,
623
+ 296, 297, nil, nil, nil, nil, 228, 228, 228, nil,
616
624
  nil, nil, 173, nil, nil, nil, nil, nil, nil, nil,
617
- nil, 313, nil, nil, nil, nil, nil, nil, nil, nil,
625
+ nil, 314, nil, nil, nil, nil, 353, nil, nil, nil,
618
626
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
619
- nil, 322, 323, nil, 244, nil, 329, nil, 331, 332,
620
- nil, nil, nil, nil, 334, nil, nil, 335, 333, nil,
621
- nil, 363, nil, nil, nil, nil, nil, nil, nil, nil,
622
- nil, nil, 228, nil, nil, nil, nil, nil, nil, nil,
623
- 173, nil, nil, nil, nil, nil, nil, 347, nil, nil,
624
- nil, 379, 380, nil, 349, nil, nil, nil, nil, nil,
627
+ nil, nil, 324, 325, 244, nil, nil, 331, nil, 333,
628
+ 334, nil, nil, nil, nil, 336, nil, 335, 337, nil,
629
+ nil, nil, nil, nil, nil, nil, 366, nil, nil, nil,
630
+ nil, nil, nil, 228, nil, nil, nil, nil, nil, nil,
631
+ nil, 173, 396, 397, nil, nil, nil, nil, 349, nil,
632
+ nil, nil, nil, nil, nil, 351, 352, 382, 383, nil,
625
633
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
626
- 228, nil, nil, nil, 368, 243, nil, nil, nil, nil,
634
+ nil, nil, 228, nil, nil, nil, 371, 243, nil, nil,
627
635
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
628
636
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
629
- 269, nil, nil, nil, nil, 173, nil, nil, nil, nil,
630
- nil, nil, nil, nil, nil, nil, 398, nil, nil, 400 ]
637
+ nil, nil, nil, 270, nil, nil, nil, nil, 173, nil,
638
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 401,
639
+ nil, nil, 403 ]
631
640
 
632
641
  racc_goto_check = [
633
- 5, 30, 12, 29, 70, 2, 22, 11, 50, 30,
634
- 30, 30, 30, 30, 30, 30, 34, 10, 49, 30,
635
- 30, 30, 37, 15, 48, 13, 65, 30, 28, 28,
636
- 28, 17, 6, 25, 6, 6, 6, 24, 46, 36,
637
- 3, 62, 62, 69, 69, 5, 23, 6, 3, 3,
638
- 3, 3, 3, 3, 3, 38, 5, 26, 63, 18,
639
- 18, 18, 64, 64, 47, 14, 9, 5, 5, 8,
640
- 51, 61, 7, 1, 4, 32, 31, 33, nil, 62,
641
- nil, nil, 30, 65, 63, 29, nil, 48, 15, 15,
642
- 13, 10, 10, 10, 62, 62, 17, 17, 25, 46,
643
- nil, 63, nil, nil, nil, 48, nil, nil, nil, nil,
642
+ 5, 30, 12, 2, 62, 22, 29, 48, 50, 30,
643
+ 30, 30, 30, 30, 30, 30, 34, 70, 37, 30,
644
+ 30, 30, 10, 15, 11, 17, 49, 30, 13, 65,
645
+ 64, 64, 25, 46, 6, 33, 6, 6, 6, 28,
646
+ 28, 28, 18, 18, 18, 5, 24, 36, 23, 6,
647
+ 3, 38, 26, 47, 14, 9, 5, 63, 3, 3,
648
+ 3, 3, 3, 3, 3, 8, 51, 5, 5, 61,
649
+ 48, 7, 1, 4, 69, 32, 31, nil, nil, nil,
650
+ nil, nil, 30, nil, 63, nil, nil, 65, 29, 48,
651
+ 15, 15, 17, 17, 46, 13, 10, 10, 10, 25,
652
+ nil, 63, nil, nil, nil, nil, nil, nil, nil, nil,
644
653
  nil, nil, nil, 63, 63, nil, nil, nil, nil, nil,
645
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 22,
646
- nil, 12, nil, nil, nil, nil, nil, nil, nil, nil,
647
- nil, nil, nil, nil, nil, nil, nil, nil, nil, 62,
648
- nil, nil, 12, nil, nil, nil, nil, 10, nil, nil,
649
- nil, nil, 37, nil, nil, nil, nil, 5, nil, 5,
650
- 5, nil, nil, nil, 29, nil, nil, 22, nil, nil,
651
- nil, nil, nil, 11, 50, 70, nil, 34, 30, 50,
652
- 49, nil, 5, 5, 5, 10, 5, 5, nil, 5,
653
- 48, nil, nil, nil, 62, 62, nil, nil, nil, nil,
654
+ nil, nil, nil, nil, nil, nil, nil, nil, 22, nil,
655
+ nil, 12, nil, nil, nil, nil, 62, 62, nil, nil,
656
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
657
+ nil, nil, 12, nil, nil, nil, nil, nil, nil, 37,
658
+ nil, nil, nil, 10, nil, nil, nil, 5, nil, 5,
659
+ 5, nil, nil, nil, 62, nil, 22, 29, nil, nil,
660
+ nil, nil, nil, nil, 50, nil, 48, 34, 30, 50,
661
+ 62, 62, 5, 5, 5, nil, 5, 5, 70, 5,
662
+ 11, 49, 10, nil, nil, nil, nil, nil, nil, nil,
654
663
  nil, nil, nil, nil, nil, nil, nil, nil, 5, 5,
655
664
  5, 5, nil, nil, nil, nil, 12, 12, 12, nil,
656
665
  nil, nil, 5, nil, nil, nil, nil, nil, nil, nil,
657
- nil, 5, nil, nil, nil, nil, nil, nil, nil, nil,
666
+ nil, 5, nil, nil, nil, nil, 62, nil, nil, nil,
658
667
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
659
- nil, 30, 30, nil, 22, nil, 5, nil, 5, 5,
660
- nil, nil, nil, nil, 5, nil, nil, 5, 2, nil,
661
- nil, 29, nil, nil, nil, nil, nil, nil, nil, nil,
662
- nil, nil, 12, nil, nil, nil, nil, nil, nil, nil,
663
- 5, nil, nil, nil, nil, nil, nil, 5, nil, nil,
664
- nil, 29, 29, nil, 5, nil, nil, nil, nil, nil,
668
+ nil, nil, 30, 30, 22, nil, nil, 5, nil, 5,
669
+ 5, nil, nil, nil, nil, 5, nil, 2, 5, nil,
670
+ nil, nil, nil, nil, nil, nil, 29, nil, nil, nil,
671
+ nil, nil, nil, 12, nil, nil, nil, nil, nil, nil,
672
+ nil, 5, 62, 62, nil, nil, nil, nil, 5, nil,
673
+ nil, nil, nil, nil, nil, 5, 5, 29, 29, nil,
665
674
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
666
- 12, nil, nil, nil, 5, 5, nil, nil, nil, nil,
675
+ nil, nil, 12, nil, nil, nil, 5, 5, nil, nil,
667
676
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
668
677
  nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
669
- 30, nil, nil, nil, nil, 5, nil, nil, nil, nil,
670
- nil, nil, nil, nil, nil, nil, 5, nil, nil, 5 ]
678
+ nil, nil, nil, 30, nil, nil, nil, nil, 5, nil,
679
+ nil, nil, nil, nil, nil, nil, nil, nil, nil, 5,
680
+ nil, nil, 5 ]
671
681
 
672
682
  racc_goto_pointer = [
673
- nil, 73, 3, 37, 70, -5, -42, 64, 9, -168,
674
- -141, -54, -6, -280, -173, -282, nil, -274, -180, nil,
675
- nil, nil, -45, -14, -198, -272, -314, nil, -4, -46,
676
- -2, -139, 55, 53, -35, nil, -98, -136, -283, nil,
677
- nil, nil, nil, nil, nil, nil, -150, -11, -165, -172,
678
- -1, -121, nil, nil, nil, nil, nil, nil, nil, nil,
679
- nil, -191, -171, -290, -262, -295, nil, nil, nil, -36,
680
- -26, nil ]
683
+ nil, 72, 1, 47, 69, -5, -40, 63, 5, -179,
684
+ -136, -37, -6, -278, -184, -283, nil, -281, -197, nil,
685
+ nil, nil, -46, -12, -189, -274, -322, nil, 7, -43,
686
+ -2, -139, 55, 11, -35, nil, -90, -140, -289, nil,
687
+ nil, nil, nil, nil, nil, nil, -155, -22, -182, -164,
688
+ -1, -125, nil, nil, nil, nil, nil, nil, nil, nil,
689
+ nil, -194, -76, -293, -296, -294, nil, nil, nil, -5,
690
+ -13, nil ]
681
691
 
682
692
  racc_goto_default = [
683
- nil, nil, 373, nil, nil, 139, 8, nil, nil, nil,
693
+ nil, nil, 376, nil, nil, 139, 8, nil, nil, nil,
684
694
  52, nil, 44, 163, 164, 165, 166, 167, 168, 169,
685
- 170, 171, 176, nil, nil, nil, 343, 345, nil, nil,
695
+ 170, 171, 176, nil, nil, nil, 345, 347, nil, nil,
686
696
  32, nil, 33, 34, nil, 141, 53, nil, 230, 11,
687
697
  12, 13, 14, 15, 16, 17, nil, nil, nil, nil,
688
698
  nil, nil, 252, 253, 254, 255, 256, 257, 258, 259,
689
- 260, nil, 128, nil, nil, nil, 354, 249, 90, nil,
699
+ 260, nil, 128, nil, nil, nil, 357, 249, 90, nil,
690
700
  nil, 127 ]
691
701
 
692
702
  racc_reduce_table = [
@@ -834,35 +844,36 @@ racc_reduce_table = [
834
844
  1, 126, :_reduce_none,
835
845
  1, 126, :_reduce_none,
836
846
  3, 132, :_reduce_143,
837
- 5, 127, :_reduce_144,
838
- 7, 128, :_reduce_145,
839
- 7, 129, :_reduce_146,
840
- 2, 130, :_reduce_147,
841
- 5, 130, :_reduce_148,
842
- 2, 131, :_reduce_149,
843
- 5, 131, :_reduce_150,
844
- 5, 133, :_reduce_151,
845
- 5, 134, :_reduce_152,
846
- 0, 138, :_reduce_153,
847
- 2, 138, :_reduce_154,
848
- 3, 138, :_reduce_155,
849
- 0, 135, :_reduce_156,
850
- 3, 135, :_reduce_157,
851
- 1, 139, :_reduce_158,
852
- 3, 139, :_reduce_159,
853
- 1, 140, :_reduce_160,
847
+ 3, 132, :_reduce_144,
848
+ 5, 127, :_reduce_145,
849
+ 7, 128, :_reduce_146,
850
+ 7, 129, :_reduce_147,
851
+ 2, 130, :_reduce_148,
852
+ 5, 130, :_reduce_149,
853
+ 2, 131, :_reduce_150,
854
+ 5, 131, :_reduce_151,
855
+ 5, 133, :_reduce_152,
856
+ 5, 134, :_reduce_153,
857
+ 0, 138, :_reduce_154,
858
+ 2, 138, :_reduce_155,
859
+ 3, 138, :_reduce_156,
860
+ 0, 135, :_reduce_157,
861
+ 3, 135, :_reduce_158,
862
+ 1, 139, :_reduce_159,
863
+ 3, 139, :_reduce_160,
854
864
  1, 140, :_reduce_161,
855
- 1, 123, :_reduce_162,
856
- 4, 123, :_reduce_163,
857
- 0, 80, :_reduce_164,
858
- 3, 80, :_reduce_165,
859
- 1, 124, :_reduce_166,
860
- 3, 124, :_reduce_167,
861
- 0, 120, :_reduce_168,
862
- 2, 120, :_reduce_169,
863
- 4, 141, :_reduce_170,
864
- 1, 137, :_reduce_171,
865
- 3, 137, :_reduce_172,
865
+ 1, 140, :_reduce_162,
866
+ 1, 123, :_reduce_163,
867
+ 4, 123, :_reduce_164,
868
+ 0, 80, :_reduce_165,
869
+ 3, 80, :_reduce_166,
870
+ 1, 124, :_reduce_167,
871
+ 3, 124, :_reduce_168,
872
+ 0, 120, :_reduce_169,
873
+ 2, 120, :_reduce_170,
874
+ 4, 141, :_reduce_171,
875
+ 1, 137, :_reduce_172,
876
+ 3, 137, :_reduce_173,
866
877
  1, 136, :_reduce_none,
867
878
  1, 136, :_reduce_none,
868
879
  1, 136, :_reduce_none,
@@ -871,12 +882,12 @@ racc_reduce_table = [
871
882
  1, 136, :_reduce_none,
872
883
  1, 136, :_reduce_none,
873
884
  1, 136, :_reduce_none,
874
- 1, 136, :_reduce_181,
875
- 2, 136, :_reduce_182,
885
+ 1, 136, :_reduce_182,
876
886
  2, 136, :_reduce_183,
877
887
  2, 136, :_reduce_184,
878
888
  2, 136, :_reduce_185,
879
889
  2, 136, :_reduce_186,
890
+ 2, 136, :_reduce_187,
880
891
  1, 142, :_reduce_none,
881
892
  1, 142, :_reduce_none,
882
893
  1, 142, :_reduce_none,
@@ -898,33 +909,33 @@ racc_reduce_table = [
898
909
  1, 142, :_reduce_none,
899
910
  1, 142, :_reduce_none,
900
911
  1, 142, :_reduce_none,
901
- 1, 142, :_reduce_208,
902
912
  1, 142, :_reduce_209,
913
+ 1, 142, :_reduce_210,
903
914
  1, 142, :_reduce_none,
904
915
  1, 142, :_reduce_none,
905
916
  1, 142, :_reduce_none,
906
- 5, 78, :_reduce_213,
907
917
  5, 78, :_reduce_214,
908
- 4, 78, :_reduce_215,
918
+ 5, 78, :_reduce_215,
909
919
  4, 78, :_reduce_216,
910
920
  4, 78, :_reduce_217,
911
- 5, 78, :_reduce_218,
912
- 4, 78, :_reduce_219,
921
+ 4, 78, :_reduce_218,
922
+ 5, 78, :_reduce_219,
913
923
  4, 78, :_reduce_220,
914
- 5, 78, :_reduce_221,
915
- 3, 78, :_reduce_222,
916
- 2, 78, :_reduce_223,
917
- 4, 78, :_reduce_224,
918
- 3, 144, :_reduce_225,
919
- 1, 144, :_reduce_226,
920
- 1, 145, :_reduce_227,
921
- 3, 145, :_reduce_228,
924
+ 4, 78, :_reduce_221,
925
+ 5, 78, :_reduce_222,
926
+ 3, 78, :_reduce_223,
927
+ 2, 78, :_reduce_224,
928
+ 4, 78, :_reduce_225,
929
+ 3, 144, :_reduce_226,
930
+ 1, 144, :_reduce_227,
931
+ 1, 145, :_reduce_228,
922
932
  3, 145, :_reduce_229,
923
- 1, 143, :_reduce_230 ]
933
+ 3, 145, :_reduce_230,
934
+ 1, 143, :_reduce_231 ]
924
935
 
925
- racc_reduce_n = 231
936
+ racc_reduce_n = 232
926
937
 
927
- racc_shift_n = 407
938
+ racc_shift_n = 410
928
939
 
929
940
  racc_token_table = {
930
941
  false => 0,
@@ -2276,8 +2287,21 @@ module_eval(<<'.,.,', 'parser.y', 662)
2276
2287
  end
2277
2288
  .,.,
2278
2289
 
2279
- module_eval(<<'.,.,', 'parser.y', 672)
2290
+ module_eval(<<'.,.,', 'parser.y', 671)
2280
2291
  def _reduce_144(val, _values, result)
2292
+ loc = val.first.location + val.last.location
2293
+ result = AST::Signature::Members::Ivar.new(
2294
+ location: loc,
2295
+ name: :"@type",
2296
+ type: val[2]
2297
+ )
2298
+
2299
+ result
2300
+ end
2301
+ .,.,
2302
+
2303
+ module_eval(<<'.,.,', 'parser.y', 681)
2304
+ def _reduce_145(val, _values, result)
2281
2305
  loc = val.first.location + val.last.last.location
2282
2306
  result = AST::Signature::Members::Method.new(
2283
2307
  name: val[2].value,
@@ -2291,8 +2315,8 @@ module_eval(<<'.,.,', 'parser.y', 672)
2291
2315
  end
2292
2316
  .,.,
2293
2317
 
2294
- module_eval(<<'.,.,', 'parser.y', 684)
2295
- def _reduce_145(val, _values, result)
2318
+ module_eval(<<'.,.,', 'parser.y', 693)
2319
+ def _reduce_146(val, _values, result)
2296
2320
  loc = val.first.location + val.last.last.location
2297
2321
  result = AST::Signature::Members::Method.new(
2298
2322
  name: val[4].value,
@@ -2306,8 +2330,8 @@ module_eval(<<'.,.,', 'parser.y', 684)
2306
2330
  end
2307
2331
  .,.,
2308
2332
 
2309
- module_eval(<<'.,.,', 'parser.y', 696)
2310
- def _reduce_146(val, _values, result)
2333
+ module_eval(<<'.,.,', 'parser.y', 705)
2334
+ def _reduce_147(val, _values, result)
2311
2335
  loc = val.first.location + val.last.last.location
2312
2336
  result = AST::Signature::Members::Method.new(
2313
2337
  name: val[4].value,
@@ -2321,8 +2345,8 @@ module_eval(<<'.,.,', 'parser.y', 696)
2321
2345
  end
2322
2346
  .,.,
2323
2347
 
2324
- module_eval(<<'.,.,', 'parser.y', 708)
2325
- def _reduce_147(val, _values, result)
2348
+ module_eval(<<'.,.,', 'parser.y', 717)
2349
+ def _reduce_148(val, _values, result)
2326
2350
  loc = val[0].location + val[1].location
2327
2351
  name = val[1].value
2328
2352
  result = AST::Signature::Members::Include.new(name: name, location: loc, args: [])
@@ -2331,8 +2355,8 @@ module_eval(<<'.,.,', 'parser.y', 708)
2331
2355
  end
2332
2356
  .,.,
2333
2357
 
2334
- module_eval(<<'.,.,', 'parser.y', 714)
2335
- def _reduce_148(val, _values, result)
2358
+ module_eval(<<'.,.,', 'parser.y', 723)
2359
+ def _reduce_149(val, _values, result)
2336
2360
  loc = val[0].location + val[4].location
2337
2361
  name = val[1].value
2338
2362
  result = AST::Signature::Members::Include.new(name: name, location: loc, args: val[3])
@@ -2341,8 +2365,8 @@ module_eval(<<'.,.,', 'parser.y', 714)
2341
2365
  end
2342
2366
  .,.,
2343
2367
 
2344
- module_eval(<<'.,.,', 'parser.y', 721)
2345
- def _reduce_149(val, _values, result)
2368
+ module_eval(<<'.,.,', 'parser.y', 730)
2369
+ def _reduce_150(val, _values, result)
2346
2370
  loc = val[0].location + val[1].location
2347
2371
  name = val[1].value
2348
2372
  result = AST::Signature::Members::Extend.new(name: name, location: loc, args: [])
@@ -2351,8 +2375,8 @@ module_eval(<<'.,.,', 'parser.y', 721)
2351
2375
  end
2352
2376
  .,.,
2353
2377
 
2354
- module_eval(<<'.,.,', 'parser.y', 727)
2355
- def _reduce_150(val, _values, result)
2378
+ module_eval(<<'.,.,', 'parser.y', 736)
2379
+ def _reduce_151(val, _values, result)
2356
2380
  loc = val[0].location + val[4].location
2357
2381
  name = val[1].value
2358
2382
  result = AST::Signature::Members::Extend.new(name: name, location: loc, args: val[3])
@@ -2361,8 +2385,8 @@ module_eval(<<'.,.,', 'parser.y', 727)
2361
2385
  end
2362
2386
  .,.,
2363
2387
 
2364
- module_eval(<<'.,.,', 'parser.y', 734)
2365
- def _reduce_151(val, _values, result)
2388
+ module_eval(<<'.,.,', 'parser.y', 743)
2389
+ def _reduce_152(val, _values, result)
2366
2390
  loc = val.first.location + val.last.location
2367
2391
  result = AST::Signature::Members::Attr.new(location: loc, name: val[1].value, kind: :reader, ivar: val[2], type: val[4])
2368
2392
 
@@ -2370,8 +2394,8 @@ module_eval(<<'.,.,', 'parser.y', 734)
2370
2394
  end
2371
2395
  .,.,
2372
2396
 
2373
- module_eval(<<'.,.,', 'parser.y', 740)
2374
- def _reduce_152(val, _values, result)
2397
+ module_eval(<<'.,.,', 'parser.y', 749)
2398
+ def _reduce_153(val, _values, result)
2375
2399
  loc = val.first.location + val.last.location
2376
2400
  result = AST::Signature::Members::Attr.new(location: loc, name: val[1].value, kind: :accessor, ivar: val[2], type: val[4])
2377
2401
 
@@ -2379,88 +2403,88 @@ module_eval(<<'.,.,', 'parser.y', 740)
2379
2403
  end
2380
2404
  .,.,
2381
2405
 
2382
- module_eval(<<'.,.,', 'parser.y', 746)
2383
- def _reduce_153(val, _values, result)
2406
+ module_eval(<<'.,.,', 'parser.y', 755)
2407
+ def _reduce_154(val, _values, result)
2384
2408
  result = nil
2385
2409
 
2386
2410
  result
2387
2411
  end
2388
2412
  .,.,
2389
2413
 
2390
- module_eval(<<'.,.,', 'parser.y', 750)
2391
- def _reduce_154(val, _values, result)
2414
+ module_eval(<<'.,.,', 'parser.y', 759)
2415
+ def _reduce_155(val, _values, result)
2392
2416
  result = false
2393
2417
 
2394
2418
  result
2395
2419
  end
2396
2420
  .,.,
2397
2421
 
2398
- module_eval(<<'.,.,', 'parser.y', 754)
2399
- def _reduce_155(val, _values, result)
2422
+ module_eval(<<'.,.,', 'parser.y', 763)
2423
+ def _reduce_156(val, _values, result)
2400
2424
  result = val[1].value
2401
2425
 
2402
2426
  result
2403
2427
  end
2404
2428
  .,.,
2405
2429
 
2406
- module_eval(<<'.,.,', 'parser.y', 759)
2407
- def _reduce_156(val, _values, result)
2430
+ module_eval(<<'.,.,', 'parser.y', 768)
2431
+ def _reduce_157(val, _values, result)
2408
2432
  result = nil
2409
2433
 
2410
2434
  result
2411
2435
  end
2412
2436
  .,.,
2413
2437
 
2414
- module_eval(<<'.,.,', 'parser.y', 763)
2415
- def _reduce_157(val, _values, result)
2438
+ module_eval(<<'.,.,', 'parser.y', 772)
2439
+ def _reduce_158(val, _values, result)
2416
2440
  result = val[1]
2417
2441
 
2418
2442
  result
2419
2443
  end
2420
2444
  .,.,
2421
2445
 
2422
- module_eval(<<'.,.,', 'parser.y', 768)
2423
- def _reduce_158(val, _values, result)
2446
+ module_eval(<<'.,.,', 'parser.y', 777)
2447
+ def _reduce_159(val, _values, result)
2424
2448
  result = [val[0]]
2425
2449
 
2426
2450
  result
2427
2451
  end
2428
2452
  .,.,
2429
2453
 
2430
- module_eval(<<'.,.,', 'parser.y', 772)
2431
- def _reduce_159(val, _values, result)
2454
+ module_eval(<<'.,.,', 'parser.y', 781)
2455
+ def _reduce_160(val, _values, result)
2432
2456
  result = [val[0]] + val[2]
2433
2457
 
2434
2458
  result
2435
2459
  end
2436
2460
  .,.,
2437
2461
 
2438
- module_eval(<<'.,.,', 'parser.y', 777)
2439
- def _reduce_160(val, _values, result)
2462
+ module_eval(<<'.,.,', 'parser.y', 786)
2463
+ def _reduce_161(val, _values, result)
2440
2464
  result = val[0].value
2441
2465
 
2442
2466
  result
2443
2467
  end
2444
2468
  .,.,
2445
2469
 
2446
- module_eval(<<'.,.,', 'parser.y', 781)
2447
- def _reduce_161(val, _values, result)
2470
+ module_eval(<<'.,.,', 'parser.y', 790)
2471
+ def _reduce_162(val, _values, result)
2448
2472
  result = val[0].value
2449
2473
 
2450
2474
  result
2451
2475
  end
2452
2476
  .,.,
2453
2477
 
2454
- module_eval(<<'.,.,', 'parser.y', 786)
2455
- def _reduce_162(val, _values, result)
2478
+ module_eval(<<'.,.,', 'parser.y', 795)
2479
+ def _reduce_163(val, _values, result)
2456
2480
  result = AST::Signature::SuperClass.new(location: val[0].location, name: val[0].value, args: [])
2457
2481
 
2458
2482
  result
2459
2483
  end
2460
2484
  .,.,
2461
2485
 
2462
- module_eval(<<'.,.,', 'parser.y', 790)
2463
- def _reduce_163(val, _values, result)
2486
+ module_eval(<<'.,.,', 'parser.y', 799)
2487
+ def _reduce_164(val, _values, result)
2464
2488
  loc = val[0].location + val[3].location
2465
2489
  name = val[0].value
2466
2490
  result = AST::Signature::SuperClass.new(location: loc, name: name, args: val[2])
@@ -2469,16 +2493,16 @@ module_eval(<<'.,.,', 'parser.y', 790)
2469
2493
  end
2470
2494
  .,.,
2471
2495
 
2472
- module_eval(<<'.,.,', 'parser.y', 797)
2473
- def _reduce_164(val, _values, result)
2496
+ module_eval(<<'.,.,', 'parser.y', 806)
2497
+ def _reduce_165(val, _values, result)
2474
2498
  result = nil
2475
2499
 
2476
2500
  result
2477
2501
  end
2478
2502
  .,.,
2479
2503
 
2480
- module_eval(<<'.,.,', 'parser.y', 801)
2481
- def _reduce_165(val, _values, result)
2504
+ module_eval(<<'.,.,', 'parser.y', 810)
2505
+ def _reduce_166(val, _values, result)
2482
2506
  location = val[0].location + val[2].location
2483
2507
  result = AST::TypeParams.new(location: location, variables: val[1])
2484
2508
 
@@ -2486,40 +2510,40 @@ module_eval(<<'.,.,', 'parser.y', 801)
2486
2510
  end
2487
2511
  .,.,
2488
2512
 
2489
- module_eval(<<'.,.,', 'parser.y', 807)
2490
- def _reduce_166(val, _values, result)
2513
+ module_eval(<<'.,.,', 'parser.y', 816)
2514
+ def _reduce_167(val, _values, result)
2491
2515
  result = [val[0].value]
2492
2516
 
2493
2517
  result
2494
2518
  end
2495
2519
  .,.,
2496
2520
 
2497
- module_eval(<<'.,.,', 'parser.y', 811)
2498
- def _reduce_167(val, _values, result)
2521
+ module_eval(<<'.,.,', 'parser.y', 820)
2522
+ def _reduce_168(val, _values, result)
2499
2523
  result = [val[0].value] + val[2]
2500
2524
 
2501
2525
  result
2502
2526
  end
2503
2527
  .,.,
2504
2528
 
2505
- module_eval(<<'.,.,', 'parser.y', 816)
2506
- def _reduce_168(val, _values, result)
2529
+ module_eval(<<'.,.,', 'parser.y', 825)
2530
+ def _reduce_169(val, _values, result)
2507
2531
  result = []
2508
2532
 
2509
2533
  result
2510
2534
  end
2511
2535
  .,.,
2512
2536
 
2513
- module_eval(<<'.,.,', 'parser.y', 820)
2514
- def _reduce_169(val, _values, result)
2537
+ module_eval(<<'.,.,', 'parser.y', 829)
2538
+ def _reduce_170(val, _values, result)
2515
2539
  result = val[1].unshift(val[0])
2516
2540
 
2517
2541
  result
2518
2542
  end
2519
2543
  .,.,
2520
2544
 
2521
- module_eval(<<'.,.,', 'parser.y', 825)
2522
- def _reduce_170(val, _values, result)
2545
+ module_eval(<<'.,.,', 'parser.y', 834)
2546
+ def _reduce_171(val, _values, result)
2523
2547
  loc = val[0].location + val[3].last.location
2524
2548
  result = AST::Signature::Interface::Method.new(location: loc, name: val[1].value, types: val[3])
2525
2549
 
@@ -2527,24 +2551,22 @@ module_eval(<<'.,.,', 'parser.y', 825)
2527
2551
  end
2528
2552
  .,.,
2529
2553
 
2530
- module_eval(<<'.,.,', 'parser.y', 831)
2531
- def _reduce_171(val, _values, result)
2554
+ module_eval(<<'.,.,', 'parser.y', 840)
2555
+ def _reduce_172(val, _values, result)
2532
2556
  result = [val[0]]
2533
2557
 
2534
2558
  result
2535
2559
  end
2536
2560
  .,.,
2537
2561
 
2538
- module_eval(<<'.,.,', 'parser.y', 835)
2539
- def _reduce_172(val, _values, result)
2562
+ module_eval(<<'.,.,', 'parser.y', 844)
2563
+ def _reduce_173(val, _values, result)
2540
2564
  result = [val[0]] + val[2]
2541
2565
 
2542
2566
  result
2543
2567
  end
2544
2568
  .,.,
2545
2569
 
2546
- # reduce 173 omitted
2547
-
2548
2570
  # reduce 174 omitted
2549
2571
 
2550
2572
  # reduce 175 omitted
@@ -2559,16 +2581,18 @@ module_eval(<<'.,.,', 'parser.y', 835)
2559
2581
 
2560
2582
  # reduce 180 omitted
2561
2583
 
2562
- module_eval(<<'.,.,', 'parser.y', 848)
2563
- def _reduce_181(val, _values, result)
2584
+ # reduce 181 omitted
2585
+
2586
+ module_eval(<<'.,.,', 'parser.y', 857)
2587
+ def _reduce_182(val, _values, result)
2564
2588
  result = LocatedValue.new(location: val[0].location, value: :|)
2565
2589
 
2566
2590
  result
2567
2591
  end
2568
2592
  .,.,
2569
2593
 
2570
- module_eval(<<'.,.,', 'parser.y', 852)
2571
- def _reduce_182(val, _values, result)
2594
+ module_eval(<<'.,.,', 'parser.y', 861)
2595
+ def _reduce_183(val, _values, result)
2572
2596
  raise ParseError, "\nunexpected method name #{val[0].to_s} =" unless val[0].location.pred?(val[1].location)
2573
2597
  result = LocatedValue.new(location: val[0].location + val[1].location,
2574
2598
  value: :"#{val[0].value}=")
@@ -2577,8 +2601,8 @@ module_eval(<<'.,.,', 'parser.y', 852)
2577
2601
  end
2578
2602
  .,.,
2579
2603
 
2580
- module_eval(<<'.,.,', 'parser.y', 858)
2581
- def _reduce_183(val, _values, result)
2604
+ module_eval(<<'.,.,', 'parser.y', 867)
2605
+ def _reduce_184(val, _values, result)
2582
2606
  raise ParseError, "\nunexpected method name #{val[0].to_s} ?" unless val[0].location.pred?(val[1].location)
2583
2607
  result = LocatedValue.new(location: val[0].location + val[1].location,
2584
2608
  value: :"#{val[0].value}?")
@@ -2587,8 +2611,8 @@ module_eval(<<'.,.,', 'parser.y', 858)
2587
2611
  end
2588
2612
  .,.,
2589
2613
 
2590
- module_eval(<<'.,.,', 'parser.y', 864)
2591
- def _reduce_184(val, _values, result)
2614
+ module_eval(<<'.,.,', 'parser.y', 873)
2615
+ def _reduce_185(val, _values, result)
2592
2616
  raise ParseError, "\nunexpected method name #{val[0].to_s} !" unless val[0].location.pred?(val[1].location)
2593
2617
  result = LocatedValue.new(location: val[0].location + val[1].location,
2594
2618
  value: :"#{val[0].value}!")
@@ -2597,8 +2621,8 @@ module_eval(<<'.,.,', 'parser.y', 864)
2597
2621
  end
2598
2622
  .,.,
2599
2623
 
2600
- module_eval(<<'.,.,', 'parser.y', 870)
2601
- def _reduce_185(val, _values, result)
2624
+ module_eval(<<'.,.,', 'parser.y', 879)
2625
+ def _reduce_186(val, _values, result)
2602
2626
  raise ParseError, "\nunexpected method name > >" unless val[0].location.pred?(val[1].location)
2603
2627
  result = LocatedValue.new(location: val[0].location + val[1].location, value: :>>)
2604
2628
 
@@ -2606,8 +2630,8 @@ module_eval(<<'.,.,', 'parser.y', 870)
2606
2630
  end
2607
2631
  .,.,
2608
2632
 
2609
- module_eval(<<'.,.,', 'parser.y', 875)
2610
- def _reduce_186(val, _values, result)
2633
+ module_eval(<<'.,.,', 'parser.y', 884)
2634
+ def _reduce_187(val, _values, result)
2611
2635
  raise ParseError, "\nunexpected method name #{val[0].to_s} ?" unless val[0].location.pred?(val[1].location)
2612
2636
  result = LocatedValue.new(location: val[0].location + val[1].location,
2613
2637
  value: :"nil?")
@@ -2616,8 +2640,6 @@ module_eval(<<'.,.,', 'parser.y', 875)
2616
2640
  end
2617
2641
  .,.,
2618
2642
 
2619
- # reduce 187 omitted
2620
-
2621
2643
  # reduce 188 omitted
2622
2644
 
2623
2645
  # reduce 189 omitted
@@ -2658,30 +2680,32 @@ module_eval(<<'.,.,', 'parser.y', 875)
2658
2680
 
2659
2681
  # reduce 207 omitted
2660
2682
 
2661
- module_eval(<<'.,.,', 'parser.y', 903)
2662
- def _reduce_208(val, _values, result)
2683
+ # reduce 208 omitted
2684
+
2685
+ module_eval(<<'.,.,', 'parser.y', 912)
2686
+ def _reduce_209(val, _values, result)
2663
2687
  result = LocatedValue.new(location: val[0].location, value: :constructor)
2664
2688
 
2665
2689
  result
2666
2690
  end
2667
2691
  .,.,
2668
2692
 
2669
- module_eval(<<'.,.,', 'parser.y', 907)
2670
- def _reduce_209(val, _values, result)
2693
+ module_eval(<<'.,.,', 'parser.y', 916)
2694
+ def _reduce_210(val, _values, result)
2671
2695
  result = LocatedValue.new(location: val[0].location, value: :noconstructor)
2672
2696
 
2673
2697
  result
2674
2698
  end
2675
2699
  .,.,
2676
2700
 
2677
- # reduce 210 omitted
2678
-
2679
2701
  # reduce 211 omitted
2680
2702
 
2681
2703
  # reduce 212 omitted
2682
2704
 
2683
- module_eval(<<'.,.,', 'parser.y', 915)
2684
- def _reduce_213(val, _values, result)
2705
+ # reduce 213 omitted
2706
+
2707
+ module_eval(<<'.,.,', 'parser.y', 924)
2708
+ def _reduce_214(val, _values, result)
2685
2709
  loc = val.first.location + val.last.location
2686
2710
  result = AST::Annotation::VarType.new(location: loc,
2687
2711
  name: val[2].value,
@@ -2691,8 +2715,8 @@ module_eval(<<'.,.,', 'parser.y', 915)
2691
2715
  end
2692
2716
  .,.,
2693
2717
 
2694
- module_eval(<<'.,.,', 'parser.y', 922)
2695
- def _reduce_214(val, _values, result)
2718
+ module_eval(<<'.,.,', 'parser.y', 931)
2719
+ def _reduce_215(val, _values, result)
2696
2720
  loc = val.first.location + val.last.location
2697
2721
  result = AST::Annotation::MethodType.new(location: loc,
2698
2722
  name: val[2].value,
@@ -2702,8 +2726,8 @@ module_eval(<<'.,.,', 'parser.y', 922)
2702
2726
  end
2703
2727
  .,.,
2704
2728
 
2705
- module_eval(<<'.,.,', 'parser.y', 929)
2706
- def _reduce_215(val, _values, result)
2729
+ module_eval(<<'.,.,', 'parser.y', 938)
2730
+ def _reduce_216(val, _values, result)
2707
2731
  loc = val.first.location + val.last.location
2708
2732
  result = AST::Annotation::ReturnType.new(type: val[3], location: loc)
2709
2733
 
@@ -2711,8 +2735,8 @@ module_eval(<<'.,.,', 'parser.y', 929)
2711
2735
  end
2712
2736
  .,.,
2713
2737
 
2714
- module_eval(<<'.,.,', 'parser.y', 934)
2715
- def _reduce_216(val, _values, result)
2738
+ module_eval(<<'.,.,', 'parser.y', 943)
2739
+ def _reduce_217(val, _values, result)
2716
2740
  loc = val.first.location + val.last.location
2717
2741
  result = AST::Annotation::BlockType.new(type: val[3], location: loc)
2718
2742
 
@@ -2720,8 +2744,8 @@ module_eval(<<'.,.,', 'parser.y', 934)
2720
2744
  end
2721
2745
  .,.,
2722
2746
 
2723
- module_eval(<<'.,.,', 'parser.y', 939)
2724
- def _reduce_217(val, _values, result)
2747
+ module_eval(<<'.,.,', 'parser.y', 948)
2748
+ def _reduce_218(val, _values, result)
2725
2749
  loc = val.first.location + val.last.location
2726
2750
  result = AST::Annotation::SelfType.new(type: val[3], location: loc)
2727
2751
 
@@ -2729,8 +2753,8 @@ module_eval(<<'.,.,', 'parser.y', 939)
2729
2753
  end
2730
2754
  .,.,
2731
2755
 
2732
- module_eval(<<'.,.,', 'parser.y', 944)
2733
- def _reduce_218(val, _values, result)
2756
+ module_eval(<<'.,.,', 'parser.y', 953)
2757
+ def _reduce_219(val, _values, result)
2734
2758
  loc = val[0].location + val[4].location
2735
2759
  result = AST::Annotation::ConstType.new(name: val[2].value,
2736
2760
  type: val[4],
@@ -2740,8 +2764,8 @@ module_eval(<<'.,.,', 'parser.y', 944)
2740
2764
  end
2741
2765
  .,.,
2742
2766
 
2743
- module_eval(<<'.,.,', 'parser.y', 951)
2744
- def _reduce_219(val, _values, result)
2767
+ module_eval(<<'.,.,', 'parser.y', 960)
2768
+ def _reduce_220(val, _values, result)
2745
2769
  loc = val.first.location + val.last.location
2746
2770
  result = AST::Annotation::InstanceType.new(type: val[3], location: loc)
2747
2771
 
@@ -2749,8 +2773,8 @@ module_eval(<<'.,.,', 'parser.y', 951)
2749
2773
  end
2750
2774
  .,.,
2751
2775
 
2752
- module_eval(<<'.,.,', 'parser.y', 956)
2753
- def _reduce_220(val, _values, result)
2776
+ module_eval(<<'.,.,', 'parser.y', 965)
2777
+ def _reduce_221(val, _values, result)
2754
2778
  loc = val.first.location + val.last.location
2755
2779
  result = AST::Annotation::ModuleType.new(type: val[3], location: loc)
2756
2780
 
@@ -2758,8 +2782,8 @@ module_eval(<<'.,.,', 'parser.y', 956)
2758
2782
  end
2759
2783
  .,.,
2760
2784
 
2761
- module_eval(<<'.,.,', 'parser.y', 961)
2762
- def _reduce_221(val, _values, result)
2785
+ module_eval(<<'.,.,', 'parser.y', 970)
2786
+ def _reduce_222(val, _values, result)
2763
2787
  loc = val.first.location + val.last.location
2764
2788
  result = AST::Annotation::IvarType.new(name: val[2].value, type: val[4], location: loc)
2765
2789
 
@@ -2767,8 +2791,8 @@ module_eval(<<'.,.,', 'parser.y', 961)
2767
2791
  end
2768
2792
  .,.,
2769
2793
 
2770
- module_eval(<<'.,.,', 'parser.y', 966)
2771
- def _reduce_222(val, _values, result)
2794
+ module_eval(<<'.,.,', 'parser.y', 975)
2795
+ def _reduce_223(val, _values, result)
2772
2796
  loc = val[0].location + (val[2]&.location || val[1].location)
2773
2797
  args = val[2]&.variables || []
2774
2798
  name = AST::Annotation::Implements::Module.new(name: val[1].value, args: args)
@@ -2778,8 +2802,8 @@ module_eval(<<'.,.,', 'parser.y', 966)
2778
2802
  end
2779
2803
  .,.,
2780
2804
 
2781
- module_eval(<<'.,.,', 'parser.y', 973)
2782
- def _reduce_223(val, _values, result)
2805
+ module_eval(<<'.,.,', 'parser.y', 982)
2806
+ def _reduce_224(val, _values, result)
2783
2807
  loc = val[0].location + val[1].last.location
2784
2808
  result = AST::Annotation::Dynamic.new(names: val[1], location: loc)
2785
2809
 
@@ -2787,8 +2811,8 @@ module_eval(<<'.,.,', 'parser.y', 973)
2787
2811
  end
2788
2812
  .,.,
2789
2813
 
2790
- module_eval(<<'.,.,', 'parser.y', 978)
2791
- def _reduce_224(val, _values, result)
2814
+ module_eval(<<'.,.,', 'parser.y', 987)
2815
+ def _reduce_225(val, _values, result)
2792
2816
  loc = val.first.location + val.last.location
2793
2817
  result = AST::Annotation::BreakType.new(type: val[3], location: loc)
2794
2818
 
@@ -2796,32 +2820,32 @@ module_eval(<<'.,.,', 'parser.y', 978)
2796
2820
  end
2797
2821
  .,.,
2798
2822
 
2799
- module_eval(<<'.,.,', 'parser.y', 984)
2800
- def _reduce_225(val, _values, result)
2823
+ module_eval(<<'.,.,', 'parser.y', 993)
2824
+ def _reduce_226(val, _values, result)
2801
2825
  result = [val[0]] + val[2]
2802
2826
 
2803
2827
  result
2804
2828
  end
2805
2829
  .,.,
2806
2830
 
2807
- module_eval(<<'.,.,', 'parser.y', 988)
2808
- def _reduce_226(val, _values, result)
2831
+ module_eval(<<'.,.,', 'parser.y', 997)
2832
+ def _reduce_227(val, _values, result)
2809
2833
  result = val
2810
2834
 
2811
2835
  result
2812
2836
  end
2813
2837
  .,.,
2814
2838
 
2815
- module_eval(<<'.,.,', 'parser.y', 993)
2816
- def _reduce_227(val, _values, result)
2839
+ module_eval(<<'.,.,', 'parser.y', 1002)
2840
+ def _reduce_228(val, _values, result)
2817
2841
  result = AST::Annotation::Dynamic::Name.new(name: val[0].value, location: val[0].location, kind: :instance)
2818
2842
 
2819
2843
  result
2820
2844
  end
2821
2845
  .,.,
2822
2846
 
2823
- module_eval(<<'.,.,', 'parser.y', 997)
2824
- def _reduce_228(val, _values, result)
2847
+ module_eval(<<'.,.,', 'parser.y', 1006)
2848
+ def _reduce_229(val, _values, result)
2825
2849
  loc = val.first.location + val.last.location
2826
2850
  result = AST::Annotation::Dynamic::Name.new(name: val[2].value, location: loc, kind: :module)
2827
2851
 
@@ -2829,8 +2853,8 @@ module_eval(<<'.,.,', 'parser.y', 997)
2829
2853
  end
2830
2854
  .,.,
2831
2855
 
2832
- module_eval(<<'.,.,', 'parser.y', 1002)
2833
- def _reduce_229(val, _values, result)
2856
+ module_eval(<<'.,.,', 'parser.y', 1011)
2857
+ def _reduce_230(val, _values, result)
2834
2858
  loc = val.first.location + val.last.location
2835
2859
  result = AST::Annotation::Dynamic::Name.new(name: val[2].value, location: loc, kind: :module_instance)
2836
2860
 
@@ -2838,8 +2862,8 @@ module_eval(<<'.,.,', 'parser.y', 1002)
2838
2862
  end
2839
2863
  .,.,
2840
2864
 
2841
- module_eval(<<'.,.,', 'parser.y', 1008)
2842
- def _reduce_230(val, _values, result)
2865
+ module_eval(<<'.,.,', 'parser.y', 1017)
2866
+ def _reduce_231(val, _values, result)
2843
2867
  result = val[0]
2844
2868
 
2845
2869
  result