lib/opal/grammar.rb



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

require 'racc/parser.rb'
module Opal
  class Grammar < Racc::Parser


##### State transition tables begin ###

clist = [
'63,64,65,7,51,525,197,198,57,58,197,198,372,61,561,59,60,62,23,24,66',
'67,196,-470,262,590,22,28,27,89,88,90,91,262,669,17,197,198,197,198',
'701,6,41,8,9,93,92,83,50,85,84,86,87,94,95,489,81,82,589,38,39,37,-303',
'-77,-74,654,657,590,-417,-303,-85,73,100,-415,525,-417,560,99,525,74',
'-415,36,-82,532,30,-470,525,52,-80,723,525,-59,32,294,262,257,40,100',
'-80,-424,589,-74,99,-84,18,-81,-470,261,-74,79,73,75,76,77,78,100,261',
'524,74,80,99,-303,63,64,65,294,51,56,-67,654,57,58,-415,53,54,61,668',
'59,60,62,248,249,66,67,741,726,654,-78,247,278,282,89,88,90,91,100,257',
'197,198,702,99,100,549,653,41,554,99,93,92,83,50,85,84,86,87,94,95,261',
'81,82,-472,38,39,37,100,257,524,800,100,99,524,778,-82,99,-82,419,100',
'-82,524,217,100,99,524,202,590,99,206,-82,-80,52,-80,661,549,-80,595',
'-81,244,-81,40,726,-81,532,551,550,549,100,209,653,590,257,99,79,73',
'75,76,77,78,589,-415,-79,74,80,100,-85,653,-415,-418,99,251,56,63,64',
'65,-418,51,53,54,-422,57,58,531,589,532,61,-422,59,60,62,248,249,66',
'67,551,550,562,374,247,278,282,89,88,90,91,217,551,550,100,217,-472',
'-73,567,99,41,685,813,93,92,83,50,85,84,86,87,94,95,549,81,82,649,38',
'39,37,217,221,226,227,228,223,225,233,234,229,230,415,210,211,-73,100',
'231,232,416,202,99,-73,206,549,726,52,521,323,322,326,325,214,731,220',
'40,216,215,212,213,224,222,218,209,219,287,288,732,79,73,75,76,77,78',
'551,550,552,74,80,733,235,63,64,65,549,51,56,518,-423,57,58,417,53,54',
'61,-423,59,60,62,23,24,66,67,518,551,550,556,22,28,27,89,88,90,91,844',
'-251,17,-259,-424,-72,100,845,-251,41,-259,99,93,92,83,50,85,84,86,87',
'94,95,501,81,82,500,38,39,37,-257,551,550,547,-423,519,501,-257,194',
'503,-419,-423,-473,-72,254,195,-70,-419,-423,202,-72,255,206,-78,613',
'52,501,520,-421,503,843,-251,244,-259,40,-421,483,-251,-258,-258,509',
'510,18,484,-251,-258,-258,79,73,75,76,77,78,572,741,726,74,80,100,-257',
'63,64,65,99,51,56,738,193,57,58,-423,53,54,61,719,59,60,62,248,249,66',
'67,501,197,198,500,247,278,282,89,88,90,91,726,-74,482,-251,-258,-258',
'745,567,-82,41,813,746,93,92,83,50,85,84,86,87,94,95,519,81,82,518,38',
'39,37,217,221,226,227,228,223,225,233,234,229,230,-412,210,211,492,515',
'231,232,-412,202,513,493,206,487,488,52,323,322,326,325,246,214,217',
'220,40,216,215,212,213,224,222,218,209,219,326,325,-257,79,73,75,76',
'77,78,-257,718,533,74,80,-473,235,713,-212,665,506,251,56,63,64,65,663',
'51,53,54,417,57,58,712,504,217,61,455,59,60,62,248,249,66,67,761,763',
'518,766,247,278,282,89,88,90,91,665,455,691,-420,544,768,-257,737,571',
'41,-420,545,93,92,83,50,85,84,86,87,94,95,664,81,82,453,38,39,37,217',
'221,226,227,228,223,225,233,234,229,230,-257,210,211,-71,257,231,232',
'-257,202,-72,-79,206,-473,381,52,489,-80,383,382,664,214,217,220,40',
'216,215,212,213,224,222,218,209,219,-239,491,490,79,73,75,76,77,78,704',
'555,257,74,80,294,235,63,64,65,217,51,56,266,-76,57,58,-257,53,54,61',
'-84,59,60,62,248,249,66,67,485,479,638,478,247,278,282,89,88,90,91,-258',
'214,779,780,781,216,215,-258,257,41,645,257,93,92,83,50,85,84,86,87',
'94,95,217,81,82,236,38,39,37,217,221,226,227,228,223,225,233,234,229',
'230,-259,210,211,477,784,231,232,-259,202,785,-58,206,787,462,52,323',
'322,326,325,-258,214,-237,220,40,216,215,212,213,224,222,218,209,219',
'791,634,607,79,73,75,76,77,78,608,455,795,74,80,797,235,63,64,65,7,51',
'56,453,450,57,58,-259,53,54,61,421,59,60,62,23,24,66,67,420,633,-472',
'803,22,28,27,89,88,90,91,294,418,17,102,103,104,105,106,6,41,8,9,93',
'92,83,50,85,84,86,87,94,95,217,81,82,570,38,39,37,217,221,226,227,228',
'223,225,233,234,229,230,607,210,211,807,808,231,232,608,36,294,632,30',
'495,214,52,619,817,216,215,32,214,-240,220,40,216,215,212,213,224,222',
'218,18,219,384,687,818,79,73,75,76,77,78,645,820,722,74,80,294,235,63',
'64,65,363,51,56,360,518,57,58,-473,53,54,61,559,59,60,62,248,249,66',
'67,830,831,339,-67,247,278,282,89,88,90,91,102,103,104,105,106,323,322',
'326,325,41,834,618,93,92,83,50,85,84,86,87,94,95,836,81,82,837,38,39',
'37,217,221,226,227,228,223,225,233,234,229,230,518,210,211,617,766,231',
'232,236,202,294,462,206,770,771,52,772,94,95,286,609,214,846,220,40',
'216,215,212,213,224,222,218,209,219,285,-238,462,79,73,75,76,77,78,236',
'852,294,74,80,565,235,63,64,65,217,51,56,632,604,57,58,192,53,54,61',
'191,59,60,62,23,24,66,67,190,189,862,518,22,28,27,89,88,90,91,864,214',
'17,865,188,216,215,212,213,41,566,-237,93,92,83,50,85,84,86,87,94,95',
'96,81,82,569,38,39,37,217,221,226,227,228,223,225,233,234,229,230,518',
'210,211,,,231,232,,202,,,206,,,52,,,,,,214,,220,40,216,215,212,213,224',
'222,218,18,219,,,,79,73,75,76,77,78,,,,74,80,,235,63,64,65,217,51,56',
',,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',214,,,,216,215,212,213,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38',
'39,37,217,221,226,227,228,223,225,233,234,229,230,,210,211,,,231,232',
',202,,,206,,,52,,,,,595,214,,220,40,216,215,212,213,224,222,218,209',
'219,,,,79,73,75,76,77,78,,,,74,80,,235,63,64,65,,51,56,,,57,58,,53,54',
'61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,',
',93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,217,221,226,227,228',
'223,225,233,234,229,230,,210,211,,,231,232,,202,,,206,,,52,,,,,,214',
',220,40,216,215,212,213,224,222,218,209,219,,,,79,73,75,76,77,78,,,',
'74,80,,235,,-212,,,251,56,63,64,65,,51,53,54,,57,58,,,,61,,59,60,62',
'248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50',
'85,84,86,87,94,95,,81,82,,38,39,37,217,221,226,227,228,223,225,233,234',
'229,230,,210,211,,,231,232,,202,,,206,,,52,,,,,246,214,,220,40,216,215',
'212,213,224,222,218,209,219,,,,79,73,75,76,77,78,,,,74,80,,235,587,',
',,251,56,63,64,65,7,51,53,54,,57,58,,,,61,,59,60,62,23,24,66,67,,,,',
'22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95',
',81,82,,38,39,37,217,221,226,227,228,223,225,233,234,229,230,,210,211',
',,231,232,,36,,,30,,,52,,,,,32,214,,220,40,216,215,212,213,224,222,218',
'18,219,,,,79,73,75,76,77,78,,,,74,80,,235,63,64,65,,51,56,,,57,58,,53',
'54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41,',
',93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,217,221,226,227,228',
'223,225,233,234,229,230,,210,211,,,231,232,,202,,,206,,,52,,,,,,214',
',220,40,216,215,212,213,224,222,218,18,219,,,,79,73,75,76,77,78,,,,74',
'80,,235,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,',
'22,28,27,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,217,221,226,227,228,223,225,233,234,229,230,,210,211,,',
'231,232,,202,,,206,,,52,,,,,,214,,220,40,216,215,212,213,224,222,218',
'209,219,,,,79,73,75,76,77,78,,,,74,80,,235,63,64,65,7,51,56,,,57,58',
',53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6',
'41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,217,221,226,227',
'228,223,225,233,234,229,230,,210,211,,,231,232,,36,,,30,,,52,,,,,32',
'214,,220,40,216,215,212,213,224,222,218,18,219,,,,79,73,75,76,77,78',
',,,74,80,,235,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66',
'67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86',
'87,94,95,,81,82,,38,39,37,217,221,226,227,228,223,225,233,234,229,230',
',210,211,,,231,232,,36,,,30,,,52,,,,,32,214,,220,40,216,215,212,213',
'224,222,218,18,219,,,,79,73,75,76,77,78,,,,74,80,,235,63,64,65,,51,56',
',,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,28,27,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,217,221',
'226,227,228,223,225,233,234,229,230,,210,211,,,231,232,,202,,,206,,',
'52,,,,,246,214,244,220,40,216,215,212,213,224,222,218,209,219,,,,79',
'73,75,76,77,78,,,,74,80,316,235,320,318,317,319,251,56,63,64,65,,51',
'53,54,,57,58,,,,61,,59,60,62,248,249,66,67,,,,,247,28,27,89,88,90,91',
',,,,323,322,326,325,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,217,221,226,227,228,223,225,233,234,229,230,,210,211,,,231,232,,202',
',,206,,,52,,,,,246,214,244,220,40,216,215,212,213,224,222,218,209,219',
',,,79,73,75,76,77,78,,,,74,80,679,235,320,318,317,319,251,56,63,64,65',
',51,53,54,,57,58,,,,61,,59,60,62,248,249,66,67,,,,,247,28,27,89,88,90',
'91,,,,,323,322,326,325,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38',
'39,37,,,,,,,,,,,,,,316,,320,318,317,319,202,,,206,,,52,,,,,246,,244',
',40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,323,322,326,325,,,251',
'56,63,64,65,7,51,53,54,,57,58,,,,61,,59,60,62,23,24,66,67,,,,,22,28',
'27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,217,-494,-494,-494,-494,223,225,,,-494,-494,,,,,,231,232',
',36,,,30,,,52,,,,,32,214,,220,40,216,215,212,213,224,222,218,18,219',
',,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59',
'60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,279,,,93,92',
'83,50,85,84,86,87,94,95,,81,82,,,,283,,,,,,,,,,,,,,679,,320,318,317',
'319,647,,,206,,,52,,,-350,316,,320,318,317,319,-350,-350,-350,,,-350',
'-350,-350,,-350,,,79,73,75,76,77,78,-350,-350,-350,74,80,323,322,326',
'325,,-350,-350,56,-350,-350,-350,-350,-350,53,54,,323,322,326,325,,',
',,,,,706,,,,,,,-350,-350,-350,-350,-350,-350,-350,-350,-350,-350,-350',
'-350,-350,-350,,,-350,-350,-350,,,-350,,257,-350,,,,,-350,,-350,,-350',
',-350,-350,-350,-350,-350,-350,-350,,-350,-350,-350,,316,,320,318,317',
'319,,,,,,-350,-350,-350,-350,,-350,-265,,,,,,-350,-265,-265,-265,,,-265',
'-265,-265,679,-265,320,318,317,319,308,,,,,-265,-265,323,322,326,325',
',,,-265,-265,,-265,-265,-265,-265,-265,,316,,320,318,317,319,,,,673',
',,,,,,323,322,326,325,-265,-265,-265,-265,-265,-265,-265,-265,-265,-265',
'-265,-265,-265,-265,,,-265,-265,-265,512,,-265,,266,-265,323,322,326',
'325,-265,,-265,,-265,,-265,-265,-265,-265,-265,-265,-265,,-265,,-265',
',,,,,,,,,,,,-265,-265,-265,-265,,-265,63,64,65,7,51,,-265,,57,58,,,',
'61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9',
'93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,217,221,226,227,228,223',
'225,233,,229,230,,,,,,231,232,,36,,,268,,,52,,,,,32,214,,220,40,216',
'215,212,213,224,222,218,18,219,,,,79,73,75,76,77,78,,,,74,80,,,63,64',
'65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282',
'89,88,90,91,,,,,,,,,,279,,,93,92,83,50,85,84,86,87,94,95,,81,82,217',
',679,283,320,318,317,319,,,,,,,,,231,232,,,,,,276,,,273,,,52,,214,,220',
'272,216,215,212,213,,673,218,,219,,,,323,322,326,325,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66',
'67,,,,,247,278,282,89,88,90,91,,,,,,,,,,279,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,,,283,217,221,226,227,228,223,225,,,229,230,,,,,,231,232',
',276,,,206,,,52,,,,,,214,,220,,216,215,212,213,224,222,218,,219,,,,79',
'73,75,76,77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60',
'62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83',
'50,85,84,86,87,94,95,,81,82,,38,39,37,217,-494,-494,-494,-494,223,225',
',,-494,-494,,,,,,231,232,,36,,,30,,,52,,,,,32,214,,220,40,216,215,212',
'213,224,222,218,18,219,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,7,51',
'56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91',
',,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,217',
'-494,-494,-494,-494,223,225,,,-494,-494,,,,,,231,232,,36,,,30,,,52,',
',,,32,214,,220,40,216,215,212,213,224,222,218,18,219,,,,79,73,75,76',
'77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24',
'66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,217,-494,-494,-494,-494,223,225,,,-494',
'-494,,,,,,231,232,,36,,,30,,,52,,,,,32,214,,220,40,216,215,212,213,224',
'222,218,18,219,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,7,51,56,,,57',
'58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,',
',,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,217,-494,-494',
'-494,-494,223,225,,,-494,-494,,,,,,231,232,,36,,,30,,,52,,,,,32,214',
',220,40,216,215,212,213,224,222,218,18,219,,,,79,73,75,76,77,78,,,,74',
'80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247',
'278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,217,-494,-494,-494,-494,223,225,,,-494,-494,,,,,,231,232',
',202,,,206,,,52,,,,,,214,,220,40,216,215,212,213,224,222,218,209,219',
',,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59',
'60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92',
'83,50,85,84,86,87,94,95,,81,82,,38,39,37,217,,,,,,,,,,,,,,,,231,232',
',202,,,206,,,52,,,,,,214,,220,40,216,215,212,213,,,218,209,219,,,,79',
'73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62',
'248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50',
'85,84,86,87,94,95,,81,82,,38,39,37,217,221,226,227,228,223,225,233,234',
'229,230,,-494,-494,,,231,232,,202,,,206,,,52,,,,,,214,,220,40,216,215',
'212,213,224,222,218,209,219,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65',
',51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89',
'88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37',
'217,221,226,227,228,223,225,233,234,229,230,,-494,-494,,,231,232,,202',
',,206,,,52,,,,,595,214,244,220,40,216,215,212,213,224,222,218,209,219',
',,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59',
'60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92',
'83,50,85,84,86,87,94,95,,81,82,,38,39,37,217,,,,,,,,,,,,,,,,231,232',
',202,,,206,,,52,,,,,,214,,220,40,216,215,212,213,,,218,209,219,,,,79',
'73,75,76,77,78,,-252,,74,80,,,,-252,-252,-252,,56,-252,-252,-252,217',
'-252,53,54,,,,,,-252,,-252,-252,,,,231,232,,,-252,-252,,-252,-252,-252',
'-252,-252,,,,214,,220,,216,215,212,213,,,218,,219,,,,,,-252,-252,-252',
'-252,-252,-252,-252,-252,-252,-252,-252,-252,-252,-252,,,-252,-252,-252',
',,-252,,,-252,,,-252,,-252,,-252,,-252,,-252,-252,-252,-252,-252,-252',
'-252,,-252,,-252,,,,,,,,,,,,,-252,-252,-252,-252,,-252,,,-252,-252,',
',-252,63,64,65,,51,,,,57,58,,,,61,,59,60,62,23,24,66,67,,,,,22,28,27',
'89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,217,81,82',
',38,39,37,,217,,,,,,,,231,232,,,,,,,231,232,202,,,206,,214,52,220,,216',
'215,212,213,214,,40,,216,215,212,213,,,18,,,,,79,73,75,76,77,78,,,,74',
'80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247',
'278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,217,,,,,,,,,,,,,,,,231,232,,202,,,206,,,52,,,,,246,214',
',220,40,216,215,212,213,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,,,,',
'251,56,63,64,65,,51,53,54,,57,58,,,,61,,59,60,62,248,249,66,67,,,,,247',
'278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,246,,,,40,,,,,,,',
'209,,,,,79,73,75,76,77,78,,,,74,80,,,,,,,251,56,63,64,65,,51,53,54,',
'57,58,,,,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,',
',,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,',
',,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,',
',,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,',
',,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94',
'95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,',
',,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53',
'54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41,',
',93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202',
',,206,,,52,,,,,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89',
'88,90,91,,,17,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,18,,,,,79,73',
'75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23',
'24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,',
',,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,100,,,,,99,,56,63,64',
'65,7,51,53,54,,57,58,,,,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88',
'90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73',
'75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248',
'249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,595',
',,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,',
'57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67',
',,,,22,28,27,89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85,84,86,87,94',
'95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,',
',,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53',
'54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,279',
',,93,92,83,50,85,84,86,87,94,95,,81,82,,,,283,,,,,,,,,,,,,,,,,,,,825',
',,206,,,52,,,,,,,,,,,,,,,,,,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65',
',51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89',
'88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37',
',,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,246,,,,40,,,,,,,,209,,,,,79,73',
'75,76,77,78,,,,74,80,,,,,,,251,56,-475,-475,-475,,-475,53,54,,-475,-475',
',,,-475,,-475,-475,-475,-475,-475,-475,-475,,,,,-475,-475,-475,-475',
'-475,-475,-475,,,,,,,,,,-475,,,-475,-475,-475,-475,-475,-475,-475,-475',
'-475,-475,,-475,-475,,-475,-475,-475,,,,,,,,,,,,,,,,,,,,-475,,,-475',
'-475,,-475,,,,,-475,,-475,,-475,,,,,,,,-475,,,,,-475,-475,-475,-475',
'-475,-475,,,,-475,-475,,,,,,,-475,-475,-469,-469,-469,,-469,-475,-475',
',-469,-469,,,,-469,,-469,-469,-469,-469,-469,-469,-469,,-469,,,-469',
'-469,-469,-469,-469,-469,-469,,,,,,,,,,-469,,,-469,-469,-469,-469,-469',
'-469,-469,-469,-469,-469,,-469,-469,,-469,-469,-469,,,,,,,,,,,,,,,,',
',,,-469,,,-469,-469,,-469,,,,,-469,,-469,,-469,,,,,,,,-469,,-469,,,-469',
'-469,-469,-469,-469,-469,,,,-469,-469,,,,,,,-469,-469,-470,-470,-470',
',-470,-469,-469,,-470,-470,,,,-470,,-470,-470,-470,-470,-470,-470,-470',
',-470,,,-470,-470,-470,-470,-470,-470,-470,,,,,,,,,,-470,,,-470,-470',
'-470,-470,-470,-470,-470,-470,-470,-470,,-470,-470,,-470,-470,-470,',
',,,,,,,,,,,,,,,,,,-470,,,-470,-470,,-470,,,,,-470,,-470,,-470,,,,,,',
',-470,,-470,,,-470,-470,-470,-470,-470,-470,,,,-470,-470,,,,,,,-470',
'-470,63,64,65,7,51,-470,-470,,57,58,,,,61,,59,60,62,23,24,66,67,,,,',
'22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95',
',81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,',
',18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54',
'61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9',
'93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36',
',,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,374,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27',
'89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38',
'39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,18,,,,,79',
'73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62',
'23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85',
'84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,',
',,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56',
',,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17',
',,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,',
',,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,',
',,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,',
',,22,28,27,89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95',
',81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,',
',18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54',
'61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9',
'93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36',
',,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282',
'89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73',
'75,76,77,78,,,,74,80,,,-474,-474,-474,,-474,56,,,-474,-474,,53,54,-474',
',-474,-474,-474,-474,-474,-474,-474,,,,,-474,-474,-474,-474,-474,-474',
'-474,,,,,,,,,,-474,,,-474,-474,-474,-474,-474,-474,-474,-474,-474,-474',
',-474,-474,,-474,-474,-474,,,,,,,,,,,,,,,,,,,,-474,,,-474,-474,,-474',
',,,,-474,,-474,,-474,,,,,,,,-474,,,,-257,-474,-474,-474,-474,-474,-474',
'-257,-257,-257,-474,-474,,-257,-257,,-257,,-474,-474,,,,,,-474,-474',
',,,,,,,,-257,-257,,-257,-257,-257,-257,-257,,,,,,,,,,,,,,,,,,,,,,-257',
'-257,-257,-257,-257,-257,-257,-257,-257,-257,-257,-257,-257,-257,,,-257',
'-257,-257,,580,,,,-257,,,,,,,-257,,-257,,-257,-257,-257,-257,-257,-257',
'-257,,-257,,-257,,,,,,,,,,,,,-257,-257,,-75,,-257,,,,,-83,,-257,63,64',
'65,7,51,,,,57,58,,,,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91',
',,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,',
',,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75,76',
'77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24',
'66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32',
',,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57',
'58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,,,,,,',
',41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,',
',,,,202,,,206,,,52,,,,,391,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,',
',74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,',
',22,28,27,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,391,,,,40,,,,,,,',
'209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54',
'61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,,,,,,,,41,,,93,92',
'83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206',
',,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65',
',51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89',
'88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37',
',,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,246,,,,40,,,,,,,,209,,,,,79,73',
'75,76,77,78,-476,,,74,80,,,-476,-476,-476,,251,56,-476,-476,,-476,,53',
'54,,,,,,-476,,,,,,,,,,-476,-476,,-476,-476,-476,-476,-476,,,,,,,,,,',
',,,,,,,,,,,-476,-476,-476,-476,-476,-476,-476,-476,-476,-476,-476,-476',
'-476,-476,,,-476,-476,-476,,577,,,,-476,,,,,,,-476,,-476,,-476,-476',
'-476,-476,-476,-476,-476,,-476,-476,-476,,,,,,,,,,,,,-476,-476,,-73',
',-476,-492,,,,-81,,-476,-492,-492,-492,,,-492,-492,-492,,-492,,,,,,',
',,-492,-492,-492,,,,,,,,-492,-492,,-492,-492,-492,-492,-492,,,,,,,,',
',,,,,,,,,,,,,-492,-492,-492,-492,-492,-492,-492,-492,-492,-492,-492',
'-492,-492,-492,,,-492,-492,-492,,,-492,,257,-492,,,,,-492,,-492,,-492',
',-492,-492,-492,-492,-492,-492,-492,,-492,-492,-492,,,,,,,,,,,,,-492',
'-492,-492,-492,,-492,63,64,65,,51,,-492,,57,58,,,,61,,59,60,62,23,24',
'66,67,,,,,22,28,27,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40',
',,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58',
',53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,',
'41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,',
',,,202,,,206,,,52,,,,,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80',
',,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28',
'27,89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82',
',38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,18,,,',
',79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59',
'60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41,,,93,92,83',
'50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,',
',52,,,,,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,',
'51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88',
'90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,',
',,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75',
'76,77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23',
'24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85',
'84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,',
'32,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56',
',,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66',
'67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,690,,,',
'40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57',
'58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,',
',,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,',
',,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78',
',,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67',
',,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87',
'94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40',
',,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,',
'53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,',
',,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,',
',,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74',
'80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247',
'278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209',
',,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,',
'59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93',
'92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,',
',206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282',
'89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73',
'75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248',
'249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,',
',,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,',
'57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66',
'67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40',
',,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58',
',53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,',
',,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,',
',,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,',
'74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,',
',,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95',
',81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,',
',209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54',
'61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,',
',93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202',
',,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282',
'89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73',
'75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248',
'249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,',
',,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,',
'57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66',
'67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40',
',,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58',
',53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,',
',,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,',
',,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,',
'74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,',
',,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95',
',81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,',
',209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54',
'61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,',
',93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202',
',,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282',
'89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73',
'75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248',
'249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,',
',,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,',
'57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66',
'67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40',
',,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58',
',53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,',
',,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,',
',,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,',
'74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,',
',,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95',
',81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,',
',209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54',
'61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,',
',93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202',
',,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282',
'89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73',
'75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248',
'249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,',
',,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,',
'57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67',
',,,,22,28,27,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95',
',81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,',
',209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54',
'61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9',
'93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36',
',,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89',
'88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38',
'39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79',
'73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62',
'248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50',
'85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52',
',,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51',
'56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66',
'67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40',
',,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58',
',53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,',
',,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,',
',,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,',
'74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,',
'22,28,27,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209',
',,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,',
'59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93',
'92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,',
',206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89',
'88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38',
'39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79',
'73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62',
'248,249,66,67,,,,,247,28,27,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85',
'84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,',
',,246,,244,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,,,,,251,56',
'63,64,65,,51,53,54,,57,58,,,,61,,59,60,62,248,249,66,67,,,,,247,28,27',
'89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,202,,,206,,,471,,,,,246,,244,,40,,,,,,,,209,,',
',,79,73,75,76,77,78,,,,74,80,,,,,,,251,56,63,64,65,,51,53,54,,57,58',
',,,61,,59,60,62,248,249,66,67,,,,,247,28,27,89,88,90,91,,,,,,,,,,41',
',,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,',
'202,,,206,,475,52,,,,,246,,244,,40,,,,,,,,209,,,,,79,73,75,76,77,78',
',-476,,74,80,,,,-476,-476,-476,251,56,-476,-476,-476,,-476,53,54,,,',
',,,-476,-476,-476,,,,,,,,-476,-476,,-476,-476,-476,-476,-476,,,,,,,',
',,,,,,,,,,,,,,-476,-476,-476,-476,-476,-476,-476,-476,-476,-476,-476',
'-476,-476,-476,,,-476,-476,-476,,703,-476,,,-476,,,-476,,-476,,-476',
',-476,,-476,-476,-476,-476,-476,-476,-476,,-476,-476,-476,,,,,,,,,,',
',,-476,-476,-476,-476,,-476,,,,,-81,,-476,63,64,65,7,51,,,,57,58,,,',
'61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9',
'93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36',
',,268,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63',
'64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282',
'89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39',
'37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,246,,,,40,,,,,,,,209,,,,,79',
'73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62',
'23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85',
'84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,',
',,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56',
',,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66',
'67,,,,,247,278,282,89,88,90,91,,,,,,,,,,279,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,,,283,,,,,,,,,,,,,,,,,,,,276,,,206,,,52,,,,,,,,,,,,,,',
',,,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54',
'61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9',
'93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36',
',,268,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,-257,,74,80',
',,,-257,-257,-257,,56,-257,-257,-257,,-257,53,54,,,,,,,,-257,-257,,',
',,,,,-257,-257,,-257,-257,-257,-257,-257,,,,,,,,,,,,,,,,,,,,,,-257,-257',
'-257,-257,-257,-257,-257,-257,-257,-257,-257,-257,-257,-257,,,-257,-257',
'-257,,580,-257,,,-257,,,-257,,-257,,-257,,-257,,-257,-257,-257,-257',
'-257,-257,-257,,-257,,-257,,,,,,,,,,,,,-257,-257,-257,-257,,-257,,63',
'64,65,-83,51,-257,,,57,58,,,,61,,59,60,62,248,249,66,67,,,,,247,278',
'282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,',
'38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,',
',79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59',
'60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92',
'83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206',
',,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65',
'7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90',
'91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37',
',,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75',
'76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248',
'249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,',
',,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,',
'57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66',
'67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86',
'87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,',
'40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58',
',53,54,61,,59,60,62,248,249,66,67,,,,,247,28,27,89,88,90,91,,,,,,,,',
',41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,',
',,,,202,,,206,,,52,,,,,595,,244,,40,,,,,,,,209,,,,,79,73,75,76,77,78',
',,,74,80,,,,,,,251,56,63,64,65,,51,53,54,,57,58,,,,61,,59,60,62,248',
'249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,279,,,93,92,83,50,85',
'84,534,87,94,95,,81,82,,,,283,,,,,,,,,,,,,,,,,,,,535,,,206,,,52,,,,',
',,,,,,,,,,,,,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58',
',53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,',
',,,279,,,93,92,83,50,85,84,534,87,94,95,,81,82,,,,283,,,,,,,,,,,,,,',
',,,,,535,,,206,,,52,,,,,,,,,,,,,,,,,,,,,,79,73,75,76,77,78,,,,74,80',
',,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28',
'27,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38',
'39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40,,,,,,,,209,,,,,79',
'73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62',
'248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50',
'85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52',
',,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,7,51',
'56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91',
',,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,',
',,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75,76',
'77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24',
'66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84',
'86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32',
',,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57',
'58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,',
',,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,',
',,,,,,,,,202,,,206,495,,52,,,,,,,,,40,,,,,,,,209,,,,,79,73,75,76,77',
'78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66',
'67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86',
'87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,',
'40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58',
',53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,',
'41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,',
',,,202,,,206,,,52,,,,,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80',
',,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28',
'27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,,,18',
',,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,',
'59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41,,,93,92',
'83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206',
',,52,,,,,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65',
'7,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90',
'91,,,17,,,,,,6,41,8,9,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37',
',,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,,32,,,,40,,,,,,,,18,,,,,79,73,75',
'76,77,78,,,,74,80,,,63,64,65,7,51,56,,,57,58,,53,54,61,,59,60,62,23',
'24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,6,41,8,9,93,92,83,50,85',
'84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,36,,,30,,,52,,,,',
'32,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56',
',,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91',
',,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,',
',,,,,,,,,,,,202,,,206,,,52,,,,,391,,,,40,,,,,,,,209,,,,,79,73,75,76',
'77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,23,24,66',
'67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41,,,93,92,83,50,85,84,86,87',
'94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,,,40',
',,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,,,63,64,65,,51,56,,,57,58,',
'53,54,61,,59,60,62,23,24,66,67,,,,,22,28,27,89,88,90,91,,,17,,,,,,,41',
',,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,',
'202,,,206,,,52,,,,,,,,,40,,,,,,,,18,,,,,79,73,75,76,77,78,,,,74,80,',
',63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247,278',
'282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81,82,',
'38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,246,,,,40,,,,,,,,209',
',,,,79,73,75,76,77,78,,,,74,80,,,,,,,251,56,63,64,65,,51,53,54,,57,58',
',,,61,,59,60,62,248,249,66,67,,,,,247,278,282,89,88,90,91,,,,,,,,,,41',
',,93,92,83,50,85,84,86,87,94,95,,81,82,,38,39,37,,,,,,,,,,,,,,,,,,,',
'202,,,206,,,52,,,,,246,,,,40,,,,,,,,209,,,,,79,73,75,76,77,78,,,,74',
'80,,,63,64,65,,51,56,,,57,58,,53,54,61,,59,60,62,248,249,66,67,,,,,247',
'278,282,89,88,90,91,,,,,,,,,,41,,,93,92,83,50,85,84,86,87,94,95,,81',
'82,,38,39,37,,,,,,,,,,,,,,,,,,,,202,,,206,,,52,,,,,,,244,,40,,,,,,,',
'209,,,,,79,73,75,76,77,78,,-492,,74,80,,,,-492,-492,-492,251,56,-492',
'-492,-492,,-492,53,54,,,,,,,,-492,,,,,,,,,-492,-492,,-492,-492,-492',
'-492,-492,,,,,,,,,,,,-492,,,,,,,-492,-492,-492,,,-492,-492,-492,,-492',
',,,,-492,,,,,-492,,-492,,,,,257,-492,-492,-492,,-492,-492,-492,-492',
'-492,,,,,,,,,,,,,-492,,,,,,,,,,,,,-492,,-492,,,-492,,-492,,,,,,,-492',
',,,,257,-492,,,,,,,,,,,,,,,,,,,,,-492,,,,,,,,,,,,,-492,,-492,,,-492',
'153,164,154,177,150,170,160,159,,,175,158,157,152,178,,,162,151,165',
'169,171,163,156,,,172,179,174,173,166,176,161,149,168,167,180,181,182',
'183,184,148,155,146,147,144,145,109,111,,,110,,,,,,,,137,138,,135,119',
'120,121,143,124,126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131,,118',
'136,134,133,129,130,125,123,116,142,117,,,141,185,153,164,154,177,150',
'170,160,159,,80,175,158,157,152,178,,,162,151,165,169,171,163,156,,',
'172,179,174,173,166,176,161,149,168,167,180,181,182,183,184,148,155',
'146,147,144,145,109,111,,,110,,,,,,,,137,138,,135,119,120,121,143,124',
'126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136,134,133,129',
'130,125,123,116,142,117,,,141,185,153,164,154,177,150,170,160,159,,80',
'175,158,157,152,178,,,162,151,165,169,171,163,156,,,172,179,174,173',
'166,176,161,149,168,167,180,181,182,183,184,148,155,146,147,144,145',
'109,111,108,,110,,,,,,,,137,138,,135,119,120,121,143,124,126,,,122,',
',,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136,134,133,129,130,125',
'123,116,142,117,,,141,185,153,164,154,177,150,170,160,159,,80,175,158',
'157,152,178,,,162,151,165,169,171,163,156,,,172,179,174,173,166,176',
'161,149,168,167,180,181,182,183,184,148,155,146,147,144,145,109,111',
',,110,,,,,,,,137,138,,135,119,120,121,143,124,126,,,122,,,,,139,140',
'127,128,,,,,,,,,,,,,132,131,,118,136,134,133,129,130,125,123,116,142',
'117,,,141,185,153,164,154,177,150,170,160,159,,80,175,158,157,152,178',
',,162,151,165,169,171,163,156,,,172,179,174,173,166,176,161,149,168',
'167,180,181,182,183,184,148,155,146,147,144,145,109,111,370,369,110',
'371,,,,,,,137,138,,135,119,120,121,143,124,126,,,122,,,,,139,140,127',
'128,,,,,,,,,,,,,132,131,,118,136,134,133,129,130,125,123,116,142,117',
',,141,153,164,154,177,150,170,160,159,,,175,158,157,152,178,,,162,151',
'165,169,171,163,156,,,172,179,174,347,346,348,345,149,168,167,180,181',
'182,183,184,148,155,146,147,343,344,341,111,85,84,342,87,,,,,,,137,138',
',135,119,120,121,143,124,126,,,122,,,,,139,140,127,128,,,,,,353,,,,',
',,132,131,,118,136,134,133,129,130,125,123,116,142,117,,,141,153,164',
'154,177,150,170,160,159,,,175,158,157,152,178,,,162,151,165,169,171',
'163,156,,,172,179,174,173,166,176,161,149,168,167,180,181,182,183,184',
'148,155,146,147,144,145,109,111,,,110,,,,,,,,137,138,,135,119,120,121',
'143,124,126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136,134',
'133,129,130,125,123,116,142,117,,,141,153,164,154,177,150,170,160,159',
',,175,158,157,152,178,,,162,151,165,169,171,163,156,,,172,179,174,173',
'166,176,161,149,168,167,180,181,182,183,184,148,155,146,147,144,145',
'109,111,370,369,110,371,,,,,,,137,138,,135,119,120,121,143,124,126,',
',122,,,,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136,134,133,129,130',
'125,123,116,142,117,459,403,141,,460,,,,,,,,137,138,,135,119,120,121',
'143,124,126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136,134',
'133,129,130,125,123,116,142,117,459,403,141,,460,,,,,,,,137,138,,135',
'119,120,121,143,124,126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131',
',118,136,134,133,129,130,125,123,116,142,117,751,409,141,,794,,,,,,',
',137,138,,135,119,120,121,143,124,126,,,122,,,,,139,140,127,128,,,,',
',,,,,,,,132,131,,118,136,134,133,129,130,125,123,116,142,117,857,403',
'141,,858,,,,,,,,137,138,,135,119,120,121,143,124,126,,,122,,,,,139,140',
'127,128,,,,,,257,,,,,,,132,131,,118,136,134,133,129,130,125,123,116',
'142,117,859,409,141,,860,,,,,,,,137,138,,135,119,120,121,143,124,126',
',,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136,134,133,129,130',
'125,123,116,142,117,583,409,141,,584,,,,,,,,137,138,,135,119,120,121',
'143,124,126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136,134',
'133,129,130,125,123,116,142,117,581,403,141,,582,,,,,,,,137,138,,135',
'119,120,121,143,124,126,,,122,,,,,139,140,127,128,,,,,,257,,,,,,,132',
'131,,118,136,134,133,129,130,125,123,116,142,117,459,403,141,,460,,',
',,,,,137,138,,135,119,120,121,143,124,126,,,122,,,,,139,140,127,128',
',,,,,,,,,,,,132,131,,118,136,134,133,129,130,125,123,116,142,117,405',
'409,141,,407,,,,,,,,137,138,,135,119,120,121,143,124,126,,,122,,,,,139',
'140,127,128,,,,,,,,,,,,,132,131,,118,136,134,133,129,130,125,123,116',
'142,117,399,403,141,,400,,,,,,,,137,138,,135,119,120,121,143,124,126',
',,122,,,,,139,140,127,128,,,,,,257,,,,,,,132,131,,118,136,134,133,129',
'130,125,123,116,142,117,459,403,141,,460,,,,,,,,137,138,,135,119,120',
'121,143,124,126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136',
'134,133,129,130,125,123,116,142,117,624,409,141,,625,,,,,,,,137,138',
',135,119,120,121,143,124,126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132',
'131,,118,136,134,133,129,130,125,123,116,142,117,621,403,141,,622,,',
',,,,,137,138,,135,119,120,121,143,124,126,,,122,,,,,139,140,127,128',
',,,,,257,,,,,,,132,131,,118,136,134,133,129,130,125,123,116,142,117',
'751,409,141,,749,,,,,,,,137,138,,135,119,120,121,143,124,126,,,122,',
',,,139,140,127,128,,,,,,,,,,,,,132,131,,118,136,134,133,129,130,125',
'123,116,142,117,581,403,141,,582,,,,,,,,137,138,,135,119,120,121,143',
'124,126,,,122,,,,,139,140,127,128,,,,,,257,,,,,,,132,131,,118,136,134',
'133,129,130,125,123,116,142,117,583,409,141,,584,,,,,,,,137,138,,135',
'119,120,121,143,124,126,,,122,,,,,139,140,127,128,,,,,,,,,,,,,132,131',
',118,136,134,133,129,130,125,123,116,142,117,459,403,141,,460,,,,,,',
',137,138,,135,119,120,121,143,124,126,,,122,,,,,139,140,127,128,,,,',
',257,,,,,,,132,131,,118,136,134,133,129,130,125,123,116,142,117,,,141' ]
        racc_action_table = arr = ::Array.new(21316, nil)
        idx = 0
        clist.each do |str|
          str.split(',', -1).each do |i|
            arr[idx] = i.to_i unless i.empty?
            idx += 1
          end
        end

clist = [
'0,0,0,0,0,790,296,296,0,0,670,670,96,0,364,0,0,0,0,0,0,0,14,534,55,462',
'0,0,0,0,0,0,0,280,539,0,630,630,546,546,581,0,0,0,0,0,0,0,0,0,0,0,0',
'0,0,418,0,0,462,0,0,0,42,14,622,748,530,473,346,42,14,71,754,534,747',
'346,364,754,330,71,534,0,858,529,0,534,329,0,581,630,829,618,0,296,26',
'280,0,670,857,201,473,622,670,418,0,859,534,55,622,0,0,0,0,0,0,790,280',
'790,0,0,790,42,450,450,450,546,450,0,618,527,450,450,534,0,0,450,539',
'450,450,450,450,450,450,450,861,861,528,201,450,450,450,450,450,450',
'450,539,26,15,15,582,539,748,359,748,450,359,748,450,450,450,450,450',
'450,450,450,450,450,26,450,450,859,450,450,450,747,623,747,747,330,747',
'330,704,858,330,858,203,329,858,329,426,829,329,829,450,472,829,450',
'582,857,450,857,535,366,857,450,859,450,859,450,832,859,832,359,359',
'557,527,450,527,448,626,527,450,450,450,450,450,450,472,342,704,450',
'450,528,203,528,342,347,528,450,450,455,455,455,347,455,450,450,343',
'455,455,334,448,334,455,343,455,455,455,455,455,455,455,366,366,366',
'335,455,455,455,455,455,455,455,628,557,557,674,629,624,624,586,674',
'455,557,837,455,455,455,455,455,455,455,455,455,455,357,455,455,523',
'455,455,455,586,586,586,586,586,586,586,586,586,586,586,200,586,586',
'624,669,586,586,200,455,669,624,455,361,631,455,327,837,837,837,837',
'586,636,586,455,586,586,586,586,586,586,586,455,586,37,37,637,455,455',
'455,455,455,455,357,357,357,455,455,639,586,471,471,471,355,471,455',
'640,823,471,471,200,455,455,471,823,471,471,471,471,471,471,471,643',
'361,361,361,471,471,471,471,471,471,471,824,826,471,722,35,621,3,824',
'826,471,722,3,471,471,471,471,471,471,471,471,471,471,298,471,471,298',
'471,471,471,749,355,355,355,823,645,299,749,13,299,348,274,749,621,25',
'13,35,348,274,471,621,25,471,35,471,471,304,324,344,304,824,826,471',
'722,471,344,275,277,846,485,307,307,471,275,277,846,485,471,471,471',
'471,471,471,400,648,648,471,471,333,749,482,482,482,333,482,471,647',
'13,482,482,274,471,471,482,614,482,482,482,482,482,482,482,301,328,328',
'301,482,482,482,482,482,482,482,650,400,275,277,846,485,656,389,400',
'482,763,658,482,482,482,482,482,482,482,482,482,482,316,482,482,313',
'482,482,482,389,389,389,389,389,389,389,389,389,389,389,341,389,389',
'289,312,389,389,341,482,311,289,482,283,283,482,763,763,763,763,482',
'389,427,389,482,389,389,389,389,389,389,389,482,389,518,518,625,482',
'482,482,482,482,482,625,611,336,482,482,625,389,606,389,537,302,482',
'482,489,489,489,537,489,482,482,289,489,489,605,300,428,489,597,489',
'489,489,489,489,489,489,675,676,677,679,489,489,489,489,489,489,489',
'646,594,570,345,350,682,625,646,399,489,345,350,489,489,489,489,489',
'489,489,489,489,489,537,489,489,592,489,489,489,494,494,494,494,494',
'494,494,494,494,494,494,860,494,494,570,406,494,494,860,489,399,570',
'489,860,108,489,286,399,108,108,646,494,291,494,489,494,494,494,494',
'494,494,494,489,494,689,288,287,489,489,489,489,489,489,585,360,282',
'489,489,279,494,490,490,490,425,490,489,278,286,490,490,860,489,489',
'490,286,490,490,490,490,490,490,490,276,271,511,270,490,490,490,490',
'490,490,490,661,425,707,708,711,425,425,661,714,490,515,715,490,490',
'490,490,490,490,490,490,490,490,429,490,490,717,490,490,490,777,777',
'777,777,777,777,777,777,777,777,777,865,777,777,269,720,777,777,865',
'490,721,267,490,724,256,490,515,515,515,515,661,777,727,777,490,777',
'777,777,777,777,777,777,490,777,728,498,716,490,490,490,490,490,490',
'716,245,739,490,490,742,777,847,847,847,847,847,490,242,241,847,847',
'865,490,490,847,205,847,847,847,847,847,847,847,204,497,751,752,847',
'847,847,847,847,847,847,716,202,847,373,373,373,373,373,847,847,847',
'847,847,847,847,847,847,847,847,847,847,847,424,847,847,398,847,847',
'847,397,397,397,397,397,397,397,397,397,397,397,466,397,397,757,758',
'397,397,466,847,759,496,847,486,424,847,481,774,424,424,847,397,775',
'397,847,397,397,397,397,397,397,397,847,397,186,561,782,847,847,847',
'847,847,847,733,783,620,847,847,466,397,491,491,491,78,491,847,77,793',
'491,491,794,847,847,491,363,491,491,491,491,491,491,491,798,799,63,477',
'491,491,491,491,491,491,491,5,5,5,5,5,733,733,733,733,491,804,476,491',
'491,491,491,491,491,491,491,491,491,809,491,491,810,491,491,491,239',
'239,239,239,239,239,239,239,239,239,239,811,239,239,474,813,239,239',
'468,491,41,578,491,683,683,491,683,683,683,36,467,239,825,239,491,239',
'239,239,239,239,239,239,491,239,34,568,573,491,491,491,491,491,491,20',
'835,465,491,491,385,239,495,495,495,443,495,491,842,464,495,495,12,491',
'491,495,11,495,495,495,495,495,495,495,10,9,851,853,495,495,495,495',
'495,495,495,854,443,495,856,8,443,443,443,443,495,386,394,495,495,495',
'495,495,495,495,495,495,495,1,495,495,392,495,495,495,19,19,19,19,19',
'19,19,19,19,19,19,812,19,19,,,19,19,,495,,,495,,,495,,,,,,19,,19,495',
'19,19,19,19,19,19,19,495,19,,,,495,495,495,495,495,495,,,,495,495,,19',
'500,500,500,444,500,495,,,500,500,,495,495,500,,500,500,500,500,500',
'500,500,,,,,500,500,500,500,500,500,500,,444,,,,444,444,444,444,500',
',,500,500,500,500,500,500,500,500,500,500,,500,500,,500,500,500,705',
'705,705,705,705,705,705,705,705,705,705,,705,705,,,705,705,,500,,,500',
',,500,,,,,500,705,,705,500,705,705,705,705,705,705,705,500,705,,,,500',
'500,500,500,500,500,,,,500,500,,705,503,503,503,,503,500,,,503,503,',
'500,500,503,,503,503,503,503,503,503,503,,,,,503,503,503,503,503,503',
'503,,,,,,,,,,503,,,503,503,503,503,503,503,503,503,503,503,,503,503',
',503,503,503,610,610,610,610,610,610,610,610,610,610,610,,610,610,,',
'610,610,,503,,,503,,,503,,,,,,610,,610,503,610,610,610,610,610,610,610',
'503,610,,,,503,503,503,503,503,503,,,,503,503,,610,,610,,,503,503,843',
'843,843,,843,503,503,,843,843,,,,843,,843,843,843,843,843,843,843,,',
',,843,843,843,843,843,843,843,,,,,,,,,,843,,,843,843,843,843,843,843',
'843,843,843,843,,843,843,,843,843,843,447,447,447,447,447,447,447,447',
'447,447,447,,447,447,,,447,447,,843,,,843,,,843,,,,,843,447,,447,843',
'447,447,447,447,447,447,447,843,447,,,,843,843,843,843,843,843,,,,843',
'843,,447,447,,,,843,843,841,841,841,841,841,843,843,,841,841,,,,841',
',841,841,841,841,841,841,841,,,,,841,841,841,841,841,841,841,,,841,',
',,,,841,841,841,841,841,841,841,841,841,841,841,841,841,841,,841,841',
',841,841,841,412,412,412,412,412,412,412,412,412,412,412,,412,412,,',
'412,412,,841,,,841,,,841,,,,,841,412,,412,841,412,412,412,412,412,412',
'412,841,412,,,,841,841,841,841,841,841,,,,841,841,,412,17,17,17,,17',
'841,,,17,17,,841,841,17,,17,17,17,17,17,17,17,,,,,17,17,17,17,17,17',
'17,,,17,,,,,,,17,,,17,17,17,17,17,17,17,17,17,17,,17,17,,17,17,17,700',
'700,700,700,700,700,700,700,700,700,700,,700,700,,,700,700,,17,,,17',
',,17,,,,,,700,,700,17,700,700,700,700,700,700,700,17,700,,,,17,17,17',
'17,17,17,,,,17,17,,700,18,18,18,,18,17,,,18,18,,17,17,18,,18,18,18,18',
'18,18,18,,,,,18,18,18,18,18,18,18,,,,,,,,,,18,,,18,18,18,18,18,18,18',
'18,18,18,,18,18,,18,18,18,698,698,698,698,698,698,698,698,698,698,698',
',698,698,,,698,698,,18,,,18,,,18,,,,,,698,,698,18,698,698,698,698,698',
'698,698,18,698,,,,18,18,18,18,18,18,,,,18,18,,698,509,509,509,509,509',
'18,,,509,509,,18,18,509,,509,509,509,509,509,509,509,,,,,509,509,509',
'509,509,509,509,,,509,,,,,,509,509,509,509,509,509,509,509,509,509,509',
'509,509,509,,509,509,,509,509,509,695,695,695,695,695,695,695,695,695',
'695,695,,695,695,,,695,695,,509,,,509,,,509,,,,,509,695,,695,509,695',
'695,695,695,695,695,695,509,695,,,,509,509,509,509,509,509,,,,509,509',
',695,833,833,833,833,833,509,,,833,833,,509,509,833,,833,833,833,833',
'833,833,833,,,,,833,833,833,833,833,833,833,,,833,,,,,,833,833,833,833',
'833,833,833,833,833,833,833,833,833,833,,833,833,,833,833,833,693,693',
'693,693,693,693,693,693,693,693,693,,693,693,,,693,693,,833,,,833,,',
'833,,,,,833,693,,693,833,693,693,693,693,693,693,693,833,693,,,,833',
'833,833,833,833,833,,,,833,833,,693,22,22,22,,22,833,,,22,22,,833,833',
'22,,22,22,22,22,22,22,22,,,,,22,22,22,22,22,22,22,,,,,,,,,,22,,,22,22',
'22,22,22,22,22,22,22,22,,22,22,,22,22,22,688,688,688,688,688,688,688',
'688,688,688,688,,688,688,,,688,688,,22,,,22,,,22,,,,,22,688,22,688,22',
'688,688,688,688,688,688,688,22,688,,,,22,22,22,22,22,22,,,,22,22,62',
'688,62,62,62,62,22,22,23,23,23,,23,22,22,,23,23,,,,23,,23,23,23,23,23',
'23,23,,,,,23,23,23,23,23,23,23,,,,,62,62,62,62,,23,,,23,23,23,23,23',
'23,23,23,23,23,,23,23,,23,23,23,627,627,627,627,627,627,627,627,627',
'627,627,,627,627,,,627,627,,23,,,23,,,23,,,,,23,627,23,627,23,627,627',
'627,627,627,627,627,23,627,,,,23,23,23,23,23,23,,,,23,23,673,627,673',
'673,673,673,23,23,24,24,24,,24,23,23,,24,24,,,,24,,24,24,24,24,24,24',
'24,,,,,24,24,24,24,24,24,24,,,,,673,673,673,673,,24,,,24,24,24,24,24',
'24,24,24,24,24,,24,24,,24,24,24,,,,,,,,,,,,,,513,,513,513,513,513,24',
',,24,,,24,,,,,24,,24,,24,,,,,,,,24,,,,,24,24,24,24,24,24,,,,24,24,513',
'513,513,513,,,24,24,510,510,510,510,510,24,24,,510,510,,,,510,,510,510',
'510,510,510,510,510,,,,,510,510,510,510,510,510,510,,,510,,,,,,510,510',
'510,510,510,510,510,510,510,510,510,510,510,510,,510,510,,510,510,510',
'433,433,433,433,433,433,433,,,433,433,,,,,,433,433,,510,,,510,,,510',
',,,,510,433,,433,510,433,433,433,433,433,433,433,510,433,,,,510,510',
'510,510,510,510,,,,510,510,,,519,519,519,,519,510,,,519,519,,510,510',
'519,,519,519,519,519,519,519,519,,,,,519,519,519,519,519,519,519,,,',
',,,,,,519,,,519,519,519,519,519,519,519,519,519,519,,519,519,,,,519',
',,,,,,,,,,,,,761,,761,761,761,761,519,,,519,,,519,,,27,589,,589,589',
'589,589,27,27,27,,,27,27,27,,27,,,519,519,519,519,519,519,27,27,27,519',
'519,761,761,761,761,,27,27,519,27,27,27,27,27,519,519,,589,589,589,589',
',,,,,,,589,,,,,,,27,27,27,27,27,27,27,27,27,27,27,27,27,27,,,27,27,27',
',,27,,27,27,,,,,27,,27,,27,,27,27,27,27,27,27,27,,27,27,27,,56,,56,56',
'56,56,,,,,,27,27,27,27,,27,28,,,,,,27,28,28,28,,,28,28,28,542,28,542',
'542,542,542,56,,,,,28,28,56,56,56,56,,,,28,28,,28,28,28,28,28,,308,',
'308,308,308,308,,,,542,,,,,,,542,542,542,542,28,28,28,28,28,28,28,28',
'28,28,28,28,28,28,,,28,28,28,308,,28,,28,28,308,308,308,308,28,,28,',
'28,,28,28,28,28,28,28,28,,28,,28,,,,,,,,,,,,,28,28,28,28,,28,30,30,30',
'30,30,,28,,30,30,,,,30,,30,30,30,30,30,30,30,,,,,30,30,30,30,30,30,30',
',,30,,,,,,30,30,30,30,30,30,30,30,30,30,30,30,30,30,,30,30,,30,30,30',
'446,446,446,446,446,446,446,446,,446,446,,,,,,446,446,,30,,,30,,,30',
',,,,30,446,,446,30,446,446,446,446,446,446,446,30,446,,,,30,30,30,30',
'30,30,,,,30,30,,,31,31,31,,31,30,,,31,31,,30,30,31,,31,31,31,31,31,31',
'31,,,,,31,31,31,31,31,31,31,,,,,,,,,,31,,,31,31,31,31,31,31,31,31,31',
'31,,31,31,437,,816,31,816,816,816,816,,,,,,,,,437,437,,,,,,31,,,31,',
',31,,437,,437,31,437,437,437,437,,816,437,,437,,,,816,816,816,816,31',
'31,31,31,31,31,,,,31,31,,,32,32,32,,32,31,,,32,32,,31,31,32,,32,32,32',
'32,32,32,32,,,,,32,32,32,32,32,32,32,,,,,,,,,,32,,,32,32,32,32,32,32',
'32,32,32,32,,32,32,,,,32,445,445,445,445,445,445,445,,,445,445,,,,,',
'445,445,,32,,,32,,,32,,,,,,445,,445,,445,445,445,445,445,445,445,,445',
',,,32,32,32,32,32,32,,,,32,32,,,522,522,522,522,522,32,,,522,522,,32',
'32,522,,522,522,522,522,522,522,522,,,,,522,522,522,522,522,522,522',
',,522,,,,,,522,522,522,522,522,522,522,522,522,522,522,522,522,522,',
'522,522,,522,522,522,438,438,438,438,438,438,438,,,438,438,,,,,,438',
'438,,522,,,522,,,522,,,,,522,438,,438,522,438,438,438,438,438,438,438',
'522,438,,,,522,522,522,522,522,522,,,,522,522,,,526,526,526,526,526',
'522,,,526,526,,522,522,526,,526,526,526,526,526,526,526,,,,,526,526',
'526,526,526,526,526,,,526,,,,,,526,526,526,526,526,526,526,526,526,526',
'526,526,526,526,,526,526,,526,526,526,439,439,439,439,439,439,439,,',
'439,439,,,,,,439,439,,526,,,526,,,526,,,,,526,439,,439,526,439,439,439',
'439,439,439,439,526,439,,,,526,526,526,526,526,526,,,,526,526,,,531',
'531,531,531,531,526,,,531,531,,526,526,531,,531,531,531,531,531,531',
'531,,,,,531,531,531,531,531,531,531,,,531,,,,,,531,531,531,531,531,531',
'531,531,531,531,531,531,531,531,,531,531,,531,531,531,440,440,440,440',
'440,440,440,,,440,440,,,,,,440,440,,531,,,531,,,531,,,,,531,440,,440',
'531,440,440,440,440,440,440,440,531,440,,,,531,531,531,531,531,531,',
',,531,531,,,822,822,822,822,822,531,,,822,822,,531,531,822,,822,822',
'822,822,822,822,822,,,,,822,822,822,822,822,822,822,,,822,,,,,,822,822',
'822,822,822,822,822,822,822,822,822,822,822,822,,822,822,,822,822,822',
'441,441,441,441,441,441,441,,,441,441,,,,,,441,441,,822,,,822,,,822',
',,,,822,441,,441,822,441,441,441,441,441,441,441,822,441,,,,822,822',
'822,822,822,822,,,,822,822,,,38,38,38,,38,822,,,38,38,,822,822,38,,38',
'38,38,38,38,38,38,,,,,38,38,38,38,38,38,38,,,,,,,,,,38,,,38,38,38,38',
'38,38,38,38,38,38,,38,38,,38,38,38,442,442,442,442,442,442,442,,,442',
'442,,,,,,442,442,,38,,,38,,,38,,,,,,442,,442,38,442,442,442,442,442',
'442,442,38,442,,,,38,38,38,38,38,38,,,,38,38,,,39,39,39,,39,38,,,39',
'39,,38,38,39,,39,39,39,39,39,39,39,,,,,39,39,39,39,39,39,39,,,,,,,,',
',39,,,39,39,39,39,39,39,39,39,39,39,,39,39,,39,39,39,434,,,,,,,,,,,',
',,,,434,434,,39,,,39,,,39,,,,,,434,,434,39,434,434,434,434,,,434,39',
'434,,,,39,39,39,39,39,39,,,,39,39,,,40,40,40,,40,39,,,40,40,,39,39,40',
',40,40,40,40,40,40,40,,,,,40,40,40,40,40,40,40,,,,,,,,,,40,,,40,40,40',
'40,40,40,40,40,40,40,,40,40,,40,40,40,422,422,422,422,422,422,422,422',
'422,422,422,,422,422,,,422,422,,40,,,40,,,40,,,,,,422,,422,40,422,422',
'422,422,422,422,422,40,422,,,,40,40,40,40,40,40,,,,40,40,,,820,820,820',
',820,40,,,820,820,,40,40,820,,820,820,820,820,820,820,820,,,,,820,820',
'820,820,820,820,820,,,,,,,,,,820,,,820,820,820,820,820,820,820,820,820',
'820,,820,820,,820,820,820,423,423,423,423,423,423,423,423,423,423,423',
',423,423,,,423,423,,820,,,820,,,820,,,,,820,423,820,423,820,423,423',
'423,423,423,423,423,820,423,,,,820,820,820,820,820,820,,,,820,820,,',
'421,421,421,,421,820,,,421,421,,820,820,421,,421,421,421,421,421,421',
'421,,,,,421,421,421,421,421,421,421,,,,,,,,,,421,,,421,421,421,421,421',
'421,421,421,421,421,,421,421,,421,421,421,435,,,,,,,,,,,,,,,,435,435',
',421,,,421,,,421,,,,,,435,,435,421,435,435,435,435,,,435,421,435,,,',
'421,421,421,421,421,421,,50,,421,421,,,,50,50,50,,421,50,50,50,436,50',
'421,421,,,,,,50,,50,50,,,,436,436,,,50,50,,50,50,50,50,50,,,,436,,436',
',436,436,436,436,,,436,,436,,,,,,50,50,50,50,50,50,50,50,50,50,50,50',
'50,50,,,50,50,50,,,50,,,50,,,50,,50,,50,,50,,50,50,50,50,50,50,50,,50',
',50,,,,,,,,,,,,,50,50,50,50,,50,,,50,50,,,50,52,52,52,,52,,,,52,52,',
',,52,,52,52,52,52,52,52,52,,,,,52,52,52,52,52,52,52,,,52,,,,,,,52,,',
'52,52,52,52,52,52,52,52,52,52,430,52,52,,52,52,52,,432,,,,,,,,430,430',
',,,,,,432,432,52,,,52,,430,52,430,,430,430,430,430,432,,52,,432,432',
'432,432,,,52,,,,,52,52,52,52,52,52,,,,52,52,,,53,53,53,,53,52,,,53,53',
',52,52,53,,53,53,53,53,53,53,53,,,,,53,53,53,53,53,53,53,,,,,,,,,,53',
',,53,53,53,53,53,53,53,53,53,53,,53,53,,53,53,53,431,,,,,,,,,,,,,,,',
'431,431,,53,,,53,,,53,,,,,53,431,,431,53,431,431,431,431,,,,53,,,,,53',
'53,53,53,53,53,,,,53,53,,,,,,,53,53,54,54,54,,54,53,53,,54,54,,,,54',
',54,54,54,54,54,54,54,,,,,54,54,54,54,54,54,54,,,,,,,,,,54,,,54,54,54',
'54,54,54,54,54,54,54,,54,54,,54,54,54,,,,,,,,,,,,,,,,,,,,54,,,54,,,54',
',,,,54,,,,54,,,,,,,,54,,,,,54,54,54,54,54,54,,,,54,54,,,,,,,54,54,420',
'420,420,,420,54,54,,420,420,,,,420,,420,420,420,420,420,420,420,,,,',
'420,420,420,420,420,420,420,,,,,,,,,,420,,,420,420,420,420,420,420,420',
'420,420,420,,420,420,,420,420,420,,,,,,,,,,,,,,,,,,,,420,,,420,,,420',
',,,,,,,,420,,,,,,,,420,,,,,420,420,420,420,420,420,,,,420,420,,,806',
'806,806,806,806,420,,,806,806,,420,420,806,,806,806,806,806,806,806',
'806,,,,,806,806,806,806,806,806,806,,,806,,,,,,806,806,806,806,806,806',
'806,806,806,806,806,806,806,806,,806,806,,806,806,806,,,,,,,,,,,,,,',
',,,,,806,,,806,,,806,,,,,806,,,,806,,,,,,,,806,,,,,806,806,806,806,806',
'806,,,,806,806,,,57,57,57,,57,806,,,57,57,,806,806,57,,57,57,57,57,57',
'57,57,,,,,57,57,57,57,57,57,57,,,57,,,,,,,57,,,57,57,57,57,57,57,57',
'57,57,57,,57,57,,57,57,57,,,,,,,,,,,,,,,,,,,,57,,,57,,,57,,,,,,,,,57',
',,,,,,,57,,,,,57,57,57,57,57,57,,,,57,57,,,58,58,58,,58,57,,,58,58,',
'57,57,58,,58,58,58,58,58,58,58,,,,,58,58,58,58,58,58,58,,,58,,,,,,,58',
',,58,58,58,58,58,58,58,58,58,58,,58,58,,58,58,58,,,,,,,,,,,,,,,,,,,',
'58,,,58,,,58,,,,,,,,,58,,,,,,,,58,,,,,58,58,58,58,58,58,,,,58,58,,,61',
'61,61,,61,58,,,61,61,,58,58,61,,61,61,61,61,61,61,61,,,,,61,61,61,61',
'61,61,61,,,61,,,,,,,61,,,61,61,61,61,61,61,61,61,61,61,,61,61,,61,61',
'61,,,,,,,,,,,,,,,,,,,,61,,,61,,,61,,,,,,,,,61,,,,,,,,61,,,,,61,61,61',
'61,61,61,,,,61,61,61,,,,,61,,61,801,801,801,801,801,61,61,,801,801,',
',,801,,801,801,801,801,801,801,801,,,,,801,801,801,801,801,801,801,',
',801,,,,,,801,801,801,801,801,801,801,801,801,801,801,801,801,801,,801',
'801,,801,801,801,,,,,,,,,,,,,,,,,,,,801,,,801,,,801,,,,,801,,,,801,',
',,,,,,801,,,,,801,801,801,801,801,801,,,,801,801,,,800,800,800,,800',
'801,,,800,800,,801,801,800,,800,800,800,800,800,800,800,,,,,800,800',
'800,800,800,800,800,,,,,,,,,,800,,,800,800,800,800,800,800,800,800,800',
'800,,800,800,,800,800,800,,,,,,,,,,,,,,,,,,,,800,,,800,,,800,,,,,800',
',,,800,,,,,,,,800,,,,,800,800,800,800,800,800,,,,800,800,,,419,419,419',
',419,800,,,419,419,,800,800,419,,419,419,419,419,419,419,419,,,,,419',
'419,419,419,419,419,419,,,,,,,,,,419,,,419,419,419,419,419,419,419,419',
'419,419,,419,419,,419,419,419,,,,,,,,,,,,,,,,,,,,419,,,419,,,419,,,',
',,,,,419,,,,,,,,419,,,,,419,419,419,419,419,419,,,,419,419,,,796,796',
'796,,796,419,,,796,796,,419,419,796,,796,796,796,796,796,796,796,,,',
',796,796,796,796,796,796,796,,,796,,,,,,,796,,,796,796,796,796,796,796',
'796,796,796,796,,796,796,,796,796,796,,,,,,,,,,,,,,,,,,,,796,,,796,',
',796,,,,,,,,,796,,,,,,,,796,,,,,796,796,796,796,796,796,,,,796,796,',
',791,791,791,,791,796,,,791,791,,796,796,791,,791,791,791,791,791,791',
'791,,,,,791,791,791,791,791,791,791,,,,,,,,,,791,,,791,791,791,791,791',
'791,791,791,791,791,,791,791,,,,791,,,,,,,,,,,,,,,,,,,,791,,,791,,,791',
',,,,,,,,,,,,,,,,,,,,,791,791,791,791,791,791,,,,791,791,,,417,417,417',
',417,791,,,417,417,,791,791,417,,417,417,417,417,417,417,417,,,,,417',
'417,417,417,417,417,417,,,,,,,,,,417,,,417,417,417,417,417,417,417,417',
'417,417,,417,417,,417,417,417,,,,,,,,,,,,,,,,,,,,417,,,417,,,417,,,',
',417,,,,417,,,,,,,,417,,,,,417,417,417,417,417,417,,,,417,417,,,,,,',
'417,417,410,410,410,,410,417,417,,410,410,,,,410,,410,410,410,410,410',
'410,410,,,,,410,410,410,410,410,410,410,,,,,,,,,,410,,,410,410,410,410',
'410,410,410,410,410,410,,410,410,,410,410,410,,,,,,,,,,,,,,,,,,,,410',
',,410,410,,410,,,,,410,,410,,410,,,,,,,,410,,,,,410,410,410,410,410',
'410,,,,410,410,,,,,,,410,410,83,83,83,,83,410,410,,83,83,,,,83,,83,83',
'83,83,83,83,83,,83,,,83,83,83,83,83,83,83,,,,,,,,,,83,,,83,83,83,83',
'83,83,83,83,83,83,,83,83,,83,83,83,,,,,,,,,,,,,,,,,,,,83,,,83,83,,83',
',,,,83,,83,,83,,,,,,,,83,,83,,,83,83,83,83,83,83,,,,83,83,,,,,,,83,83',
'86,86,86,,86,83,83,,86,86,,,,86,,86,86,86,86,86,86,86,,86,,,86,86,86',
'86,86,86,86,,,,,,,,,,86,,,86,86,86,86,86,86,86,86,86,86,,86,86,,86,86',
'86,,,,,,,,,,,,,,,,,,,,86,,,86,86,,86,,,,,86,,86,,86,,,,,,,,86,,86,,',
'86,86,86,86,86,86,,,,86,86,,,,,,,86,86,787,787,787,787,787,86,86,,787',
'787,,,,787,,787,787,787,787,787,787,787,,,,,787,787,787,787,787,787',
'787,,,787,,,,,,787,787,787,787,787,787,787,787,787,787,787,787,787,787',
',787,787,,787,787,787,,,,,,,,,,,,,,,,,,,,787,,,787,,,787,,,,,787,,,',
'787,,,,,,,,787,,,,,787,787,787,787,787,787,,,,787,787,,,98,98,98,98',
'98,787,,,98,98,,787,787,98,,98,98,98,98,98,98,98,,,,,98,98,98,98,98',
'98,98,,,98,,,,,,98,98,98,98,98,98,98,98,98,98,98,98,98,98,,98,98,,98',
'98,98,,,,,,,,,,,,,,,,,,,,98,,,98,,,98,,,,,98,,,,98,,,,,,,,98,,,,,98',
'98,98,98,98,98,,,,98,98,,,102,102,102,98,102,98,,,102,102,,98,98,102',
',102,102,102,102,102,102,102,,,,,102,102,102,102,102,102,102,,,102,',
',,,,,102,,,102,102,102,102,102,102,102,102,102,102,,102,102,,102,102',
'102,,,,,,,,,,,,,,,,,,,,102,,,102,,,102,,,,,,,,,102,,,,,,,,102,,,,,102',
'102,102,102,102,102,,,,102,102,,,103,103,103,,103,102,,,103,103,,102',
'102,103,,103,103,103,103,103,103,103,,,,,103,103,103,103,103,103,103',
',,103,,,,,,,103,,,103,103,103,103,103,103,103,103,103,103,,103,103,',
'103,103,103,,,,,,,,,,,,,,,,,,,,103,,,103,,,103,,,,,,,,,103,,,,,,,,103',
',,,,103,103,103,103,103,103,,,,103,103,,,104,104,104,,104,103,,,104',
'104,,103,103,104,,104,104,104,104,104,104,104,,,,,104,104,104,104,104',
'104,104,,,104,,,,,,,104,,,104,104,104,104,104,104,104,104,104,104,,104',
'104,,104,104,104,,,,,,,,,,,,,,,,,,,,104,,,104,,,104,,,,,,,,,104,,,,',
',,,104,,,,,104,104,104,104,104,104,,,,104,104,,,105,105,105,,105,104',
',,105,105,,104,104,105,,105,105,105,105,105,105,105,,,,,105,105,105',
'105,105,105,105,,,105,,,,,,,105,,,105,105,105,105,105,105,105,105,105',
'105,,105,105,,105,105,105,,,,,,,,,,,,,,,,,,,,105,,,105,,,105,,,,,,,',
',105,,,,,,,,105,,,,,105,105,105,105,105,105,,,,105,105,,,106,106,106',
'106,106,105,,,106,106,,105,105,106,,106,106,106,106,106,106,106,,,,',
'106,106,106,106,106,106,106,,,106,,,,,,106,106,106,106,106,106,106,106',
'106,106,106,106,106,106,,106,106,,106,106,106,,,,,,,,,,,,,,,,,,,,106',
',,106,,,106,,,,,106,,,,106,,,,,,,,106,,,,,106,106,106,106,106,106,,',
',106,106,,,778,778,778,,778,106,,,778,778,,106,106,778,,778,778,778',
'778,778,778,778,,,,,778,778,778,778,778,778,778,,,,,,,,,,778,,,778,778',
'778,778,778,778,778,778,778,778,,778,778,,778,778,778,,,,,,,,,,,,,,',
',,,,,778,,,778,,,778,,,,,,,,,778,,,,,,,,778,,,,,778,778,778,778,778',
'778,,,,778,778,,,409,409,409,,409,778,,,409,409,,778,778,409,,409,409',
'409,409,409,409,409,,,,,409,409,409,409,409,409,409,,,,,,,,,,409,,,409',
'409,409,409,409,409,409,409,409,409,,409,409,,409,409,409,,,,,,,,,,',
',,,,,,,,,409,,,409,409,,409,,,,,409,,409,,409,,,,,,,,409,,,,407,409',
'409,409,409,409,409,407,407,407,409,409,,407,407,,407,,409,409,,,,,',
'409,409,,,,,,,,,407,407,,407,407,407,407,407,,,,,,,,,,,,,,,,,,,,,,407',
'407,407,407,407,407,407,407,407,407,407,407,407,407,,,407,407,407,,407',
',,,407,,,,,,,407,,407,,407,407,407,407,407,407,407,,407,,407,,,,,,,',
',,,,,407,407,,407,,407,,,,,407,,407,188,188,188,188,188,,,,188,188,',
',,188,,188,188,188,188,188,188,188,,,,,188,188,188,188,188,188,188,',
',188,,,,,,188,188,188,188,188,188,188,188,188,188,188,188,188,188,,188',
'188,,188,188,188,,,,,,,,,,,,,,,,,,,,188,,,188,,,188,,,,,188,,,,188,',
',,,,,,188,,,,,188,188,188,188,188,188,,,,188,188,,,189,189,189,189,189',
'188,,,189,189,,188,188,189,,189,189,189,189,189,189,189,,,,,189,189',
'189,189,189,189,189,,,189,,,,,,189,189,189,189,189,189,189,189,189,189',
'189,189,189,189,,189,189,,189,189,189,,,,,,,,,,,,,,,,,,,,189,,,189,',
',189,,,,,189,,,,189,,,,,,,,189,,,,,189,189,189,189,189,189,,,,189,189',
',,190,190,190,,190,189,,,190,190,,189,189,190,,190,190,190,190,190,190',
'190,,,,,190,190,190,190,190,190,190,,,,,,,,,,190,,,190,190,190,190,190',
'190,190,190,190,190,,190,190,,190,190,190,,,,,,,,,,,,,,,,,,,,190,,,190',
',,190,,,,,190,,,,190,,,,,,,,190,,,,,190,190,190,190,190,190,,,,190,190',
',,191,191,191,,191,190,,,191,191,,190,190,191,,191,191,191,191,191,191',
'191,,,,,191,191,191,191,191,191,191,,,,,,,,,,191,,,191,191,191,191,191',
'191,191,191,191,191,,191,191,,191,191,191,,,,,,,,,,,,,,,,,,,,191,,,191',
',,191,,,,,191,,,,191,,,,,,,,191,,,,,191,191,191,191,191,191,,,,191,191',
',,192,192,192,,192,191,,,192,192,,191,191,192,,192,192,192,192,192,192',
'192,,,,,192,192,192,192,192,192,192,,,,,,,,,,192,,,192,192,192,192,192',
'192,192,192,192,192,,192,192,,192,192,192,,,,,,,,,,,,,,,,,,,,192,,,192',
',,192,,,,,,,,,192,,,,,,,,192,,,,,192,192,192,192,192,192,,,,192,192',
',,193,193,193,,193,192,,,193,193,,192,192,193,,193,193,193,193,193,193',
'193,,,,,193,193,193,193,193,193,193,,,,,,,,,,193,,,193,193,193,193,193',
'193,193,193,193,193,,193,193,,193,193,193,,,,,,,,,,,,,,,,,,,,193,,,193',
',,193,,,,,193,,,,193,,,,,,,,193,,,,,193,193,193,193,193,193,405,,,193',
'193,,,405,405,405,,193,193,405,405,,405,,193,193,,,,,,405,,,,,,,,,,405',
'405,,405,405,405,405,405,,,,,,,,,,,,,,,,,,,,,,405,405,405,405,405,405',
'405,405,405,405,405,405,405,405,,,405,405,405,,405,,,,405,,,,,,,405',
',405,,405,405,405,405,405,405,405,,405,405,405,,,,,,,,,,,,,405,405,',
'405,,405,401,,,,405,,405,401,401,401,,,401,401,401,,401,,,,,,,,,401',
'401,401,,,,,,,,401,401,,401,401,401,401,401,,,,,,,,,,,,,,,,,,,,,,401',
'401,401,401,401,401,401,401,401,401,401,401,401,401,,,401,401,401,,',
'401,,401,401,,,,,401,,401,,401,,401,401,401,401,401,401,401,,401,401',
'401,,,,,,,,,,,,,401,401,401,401,,401,196,196,196,,196,,401,,196,196',
',,,196,,196,196,196,196,196,196,196,,,,,196,196,196,196,196,196,196',
',,,,,,,,,196,,,196,196,196,196,196,196,196,196,196,196,,196,196,,196',
'196,196,,,,,,,,,,,,,,,,,,,,196,,,196,,,196,,,,,,,,,196,,,,,,,,196,,',
',,196,196,196,196,196,196,,,,196,196,,,197,197,197,,197,196,,,197,197',
',196,196,197,,197,197,197,197,197,197,197,,,,,197,197,197,197,197,197',
'197,,,197,,,,,,,197,,,197,197,197,197,197,197,197,197,197,197,,197,197',
',197,197,197,,,,,,,,,,,,,,,,,,,,197,,,197,,,197,,,,,,,,,197,,,,,,,,197',
',,,,197,197,197,197,197,197,,,,197,197,,,198,198,198,,198,197,,,198',
'198,,197,197,198,,198,198,198,198,198,198,198,,,,,198,198,198,198,198',
'198,198,,,198,,,,,,,198,,,198,198,198,198,198,198,198,198,198,198,,198',
'198,,198,198,198,,,,,,,,,,,,,,,,,,,,198,,,198,,,198,,,,,,,,,198,,,,',
',,,198,,,,,198,198,198,198,198,198,,,,198,198,,,540,540,540,,540,198',
',,540,540,,198,198,540,,540,540,540,540,540,540,540,,,,,540,540,540',
'540,540,540,540,,,540,,,,,,,540,,,540,540,540,540,540,540,540,540,540',
'540,,540,540,,540,540,540,,,,,,,,,,,,,,,,,,,,540,,,540,,,540,,,,,,,',
',540,,,,,,,,540,,,,,540,540,540,540,540,540,,,,540,540,,,766,766,766',
',766,540,,,766,766,,540,540,766,,766,766,766,766,766,766,766,,,,,766',
'766,766,766,766,766,766,,,,,,,,,,766,,,766,766,766,766,766,766,766,766',
'766,766,,766,766,,766,766,766,,,,,,,,,,,,,,,,,,,,766,,,766,,,766,,,',
',,,,,766,,,,,,,,766,,,,,766,766,766,766,766,766,,,,766,766,,,753,753',
'753,753,753,766,,,753,753,,766,766,753,,753,753,753,753,753,753,753',
',,,,753,753,753,753,753,753,753,,,753,,,,,,753,753,753,753,753,753,753',
'753,753,753,753,753,753,753,,753,753,,753,753,753,,,,,,,,,,,,,,,,,,',
',753,,,753,,,753,,,,,753,,,,753,,,,,,,,753,,,,,753,753,753,753,753,753',
',,,753,753,,,567,567,567,,567,753,,,567,567,,753,753,567,,567,567,567',
'567,567,567,567,,,,,567,567,567,567,567,567,567,,,,,,,,,,567,,,567,567',
'567,567,567,567,567,567,567,567,,567,567,,567,567,567,,,,,,,,,,,,,,',
',,,,,567,,,567,,,567,,,,,,,,,567,,,,,,,,567,,,,,567,567,567,567,567',
'567,,,,567,567,,,569,569,569,,569,567,,,569,569,,567,567,569,,569,569',
'569,569,569,569,569,,,,,569,569,569,569,569,569,569,,,,,,,,,,569,,,569',
'569,569,569,569,569,569,569,569,569,,569,569,,569,569,569,,,,,,,,,,',
',,,,,,,,,569,,,569,,,569,,,,,569,,,,569,,,,,,,,569,,,,,569,569,569,569',
'569,569,,,,569,569,,,391,391,391,,391,569,,,391,391,,569,569,391,,391',
'391,391,391,391,391,391,,,,,391,391,391,391,391,391,391,,,,,,,,,,391',
',,391,391,391,391,391,391,391,391,391,391,,391,391,,391,391,391,,,,',
',,,,,,,,,,,,,,,391,,,391,,,391,,,,,,,,,391,,,,,,,,391,,,,,391,391,391',
'391,391,391,,,,391,391,,,206,206,206,206,206,391,,,206,206,,391,391',
'206,,206,206,206,206,206,206,206,,,,,206,206,206,206,206,206,206,,,206',
',,,,,206,206,206,206,206,206,206,206,206,206,206,206,206,206,,206,206',
',206,206,206,,,,,,,,,,,,,,,,,,,,206,,,206,,,206,,,,,206,,,,206,,,,,',
',,206,,,,,206,206,206,206,206,206,,,,206,206,,,209,209,209,,209,206',
',,209,209,,206,206,209,,209,209,209,209,209,209,209,,,,,209,209,209',
'209,209,209,209,,,,,,,,,,209,,,209,209,209,209,209,209,209,209,209,209',
',209,209,,209,209,209,,,,,,,,,,,,,,,,,,,,209,,,209,,,209,,,,,,,,,209',
',,,,,,,209,,,,,209,209,209,209,209,209,,,,209,209,,,210,210,210,,210',
'209,,,210,210,,209,209,210,,210,210,210,210,210,210,210,,,,,210,210',
'210,210,210,210,210,,,,,,,,,,210,,,210,210,210,210,210,210,210,210,210',
'210,,210,210,,210,210,210,,,,,,,,,,,,,,,,,,,,210,,,210,,,210,,,,,,,',
',210,,,,,,,,210,,,,,210,210,210,210,210,210,,,,210,210,,,211,211,211',
',211,210,,,211,211,,210,210,211,,211,211,211,211,211,211,211,,,,,211',
'211,211,211,211,211,211,,,,,,,,,,211,,,211,211,211,211,211,211,211,211',
'211,211,,211,211,,211,211,211,,,,,,,,,,,,,,,,,,,,211,,,211,,,211,,,',
',,,,,211,,,,,,,,211,,,,,211,211,211,211,211,211,,,,211,211,,,212,212',
'212,,212,211,,,212,212,,211,211,212,,212,212,212,212,212,212,212,,,',
',212,212,212,212,212,212,212,,,,,,,,,,212,,,212,212,212,212,212,212',
'212,212,212,212,,212,212,,212,212,212,,,,,,,,,,,,,,,,,,,,212,,,212,',
',212,,,,,,,,,212,,,,,,,,212,,,,,212,212,212,212,212,212,,,,212,212,',
',213,213,213,,213,212,,,213,213,,212,212,213,,213,213,213,213,213,213',
'213,,,,,213,213,213,213,213,213,213,,,,,,,,,,213,,,213,213,213,213,213',
'213,213,213,213,213,,213,213,,213,213,213,,,,,,,,,,,,,,,,,,,,213,,,213',
',,213,,,,,,,,,213,,,,,,,,213,,,,,213,213,213,213,213,213,,,,213,213',
',,214,214,214,,214,213,,,214,214,,213,213,214,,214,214,214,214,214,214',
'214,,,,,214,214,214,214,214,214,214,,,,,,,,,,214,,,214,214,214,214,214',
'214,214,214,214,214,,214,214,,214,214,214,,,,,,,,,,,,,,,,,,,,214,,,214',
',,214,,,,,,,,,214,,,,,,,,214,,,,,214,214,214,214,214,214,,,,214,214',
',,215,215,215,,215,214,,,215,215,,214,214,215,,215,215,215,215,215,215',
'215,,,,,215,215,215,215,215,215,215,,,,,,,,,,215,,,215,215,215,215,215',
'215,215,215,215,215,,215,215,,215,215,215,,,,,,,,,,,,,,,,,,,,215,,,215',
',,215,,,,,,,,,215,,,,,,,,215,,,,,215,215,215,215,215,215,,,,215,215',
',,216,216,216,,216,215,,,216,216,,215,215,216,,216,216,216,216,216,216',
'216,,,,,216,216,216,216,216,216,216,,,,,,,,,,216,,,216,216,216,216,216',
'216,216,216,216,216,,216,216,,216,216,216,,,,,,,,,,,,,,,,,,,,216,,,216',
',,216,,,,,,,,,216,,,,,,,,216,,,,,216,216,216,216,216,216,,,,216,216',
',,217,217,217,,217,216,,,217,217,,216,216,217,,217,217,217,217,217,217',
'217,,,,,217,217,217,217,217,217,217,,,,,,,,,,217,,,217,217,217,217,217',
'217,217,217,217,217,,217,217,,217,217,217,,,,,,,,,,,,,,,,,,,,217,,,217',
',,217,,,,,,,,,217,,,,,,,,217,,,,,217,217,217,217,217,217,,,,217,217',
',,218,218,218,,218,217,,,218,218,,217,217,218,,218,218,218,218,218,218',
'218,,,,,218,218,218,218,218,218,218,,,,,,,,,,218,,,218,218,218,218,218',
'218,218,218,218,218,,218,218,,218,218,218,,,,,,,,,,,,,,,,,,,,218,,,218',
',,218,,,,,,,,,218,,,,,,,,218,,,,,218,218,218,218,218,218,,,,218,218',
',,219,219,219,,219,218,,,219,219,,218,218,219,,219,219,219,219,219,219',
'219,,,,,219,219,219,219,219,219,219,,,,,,,,,,219,,,219,219,219,219,219',
'219,219,219,219,219,,219,219,,219,219,219,,,,,,,,,,,,,,,,,,,,219,,,219',
',,219,,,,,,,,,219,,,,,,,,219,,,,,219,219,219,219,219,219,,,,219,219',
',,220,220,220,,220,219,,,220,220,,219,219,220,,220,220,220,220,220,220',
'220,,,,,220,220,220,220,220,220,220,,,,,,,,,,220,,,220,220,220,220,220',
'220,220,220,220,220,,220,220,,220,220,220,,,,,,,,,,,,,,,,,,,,220,,,220',
',,220,,,,,,,,,220,,,,,,,,220,,,,,220,220,220,220,220,220,,,,220,220',
',,221,221,221,,221,220,,,221,221,,220,220,221,,221,221,221,221,221,221',
'221,,,,,221,221,221,221,221,221,221,,,,,,,,,,221,,,221,221,221,221,221',
'221,221,221,221,221,,221,221,,221,221,221,,,,,,,,,,,,,,,,,,,,221,,,221',
',,221,,,,,,,,,221,,,,,,,,221,,,,,221,221,221,221,221,221,,,,221,221',
',,222,222,222,,222,221,,,222,222,,221,221,222,,222,222,222,222,222,222',
'222,,,,,222,222,222,222,222,222,222,,,,,,,,,,222,,,222,222,222,222,222',
'222,222,222,222,222,,222,222,,222,222,222,,,,,,,,,,,,,,,,,,,,222,,,222',
',,222,,,,,,,,,222,,,,,,,,222,,,,,222,222,222,222,222,222,,,,222,222',
',,223,223,223,,223,222,,,223,223,,222,222,223,,223,223,223,223,223,223',
'223,,,,,223,223,223,223,223,223,223,,,,,,,,,,223,,,223,223,223,223,223',
'223,223,223,223,223,,223,223,,223,223,223,,,,,,,,,,,,,,,,,,,,223,,,223',
',,223,,,,,,,,,223,,,,,,,,223,,,,,223,223,223,223,223,223,,,,223,223',
',,224,224,224,,224,223,,,224,224,,223,223,224,,224,224,224,224,224,224',
'224,,,,,224,224,224,224,224,224,224,,,,,,,,,,224,,,224,224,224,224,224',
'224,224,224,224,224,,224,224,,224,224,224,,,,,,,,,,,,,,,,,,,,224,,,224',
',,224,,,,,,,,,224,,,,,,,,224,,,,,224,224,224,224,224,224,,,,224,224',
',,225,225,225,,225,224,,,225,225,,224,224,225,,225,225,225,225,225,225',
'225,,,,,225,225,225,225,225,225,225,,,,,,,,,,225,,,225,225,225,225,225',
'225,225,225,225,225,,225,225,,225,225,225,,,,,,,,,,,,,,,,,,,,225,,,225',
',,225,,,,,,,,,225,,,,,,,,225,,,,,225,225,225,225,225,225,,,,225,225',
',,226,226,226,,226,225,,,226,226,,225,225,226,,226,226,226,226,226,226',
'226,,,,,226,226,226,226,226,226,226,,,,,,,,,,226,,,226,226,226,226,226',
'226,226,226,226,226,,226,226,,226,226,226,,,,,,,,,,,,,,,,,,,,226,,,226',
',,226,,,,,,,,,226,,,,,,,,226,,,,,226,226,226,226,226,226,,,,226,226',
',,227,227,227,,227,226,,,227,227,,226,226,227,,227,227,227,227,227,227',
'227,,,,,227,227,227,227,227,227,227,,,,,,,,,,227,,,227,227,227,227,227',
'227,227,227,227,227,,227,227,,227,227,227,,,,,,,,,,,,,,,,,,,,227,,,227',
',,227,,,,,,,,,227,,,,,,,,227,,,,,227,227,227,227,227,227,,,,227,227',
',,228,228,228,,228,227,,,228,228,,227,227,228,,228,228,228,228,228,228',
'228,,,,,228,228,228,228,228,228,228,,,,,,,,,,228,,,228,228,228,228,228',
'228,228,228,228,228,,228,228,,228,228,228,,,,,,,,,,,,,,,,,,,,228,,,228',
',,228,,,,,,,,,228,,,,,,,,228,,,,,228,228,228,228,228,228,,,,228,228',
',,229,229,229,,229,228,,,229,229,,228,228,229,,229,229,229,229,229,229',
'229,,,,,229,229,229,229,229,229,229,,,,,,,,,,229,,,229,229,229,229,229',
'229,229,229,229,229,,229,229,,229,229,229,,,,,,,,,,,,,,,,,,,,229,,,229',
',,229,,,,,,,,,229,,,,,,,,229,,,,,229,229,229,229,229,229,,,,229,229',
',,230,230,230,,230,229,,,230,230,,229,229,230,,230,230,230,230,230,230',
'230,,,,,230,230,230,230,230,230,230,,,,,,,,,,230,,,230,230,230,230,230',
'230,230,230,230,230,,230,230,,230,230,230,,,,,,,,,,,,,,,,,,,,230,,,230',
',,230,,,,,,,,,230,,,,,,,,230,,,,,230,230,230,230,230,230,,,,230,230',
',,231,231,231,,231,230,,,231,231,,230,230,231,,231,231,231,231,231,231',
'231,,,,,231,231,231,231,231,231,231,,,,,,,,,,231,,,231,231,231,231,231',
'231,231,231,231,231,,231,231,,231,231,231,,,,,,,,,,,,,,,,,,,,231,,,231',
',,231,,,,,,,,,231,,,,,,,,231,,,,,231,231,231,231,231,231,,,,231,231',
',,232,232,232,,232,231,,,232,232,,231,231,232,,232,232,232,232,232,232',
'232,,,,,232,232,232,232,232,232,232,,,,,,,,,,232,,,232,232,232,232,232',
'232,232,232,232,232,,232,232,,232,232,232,,,,,,,,,,,,,,,,,,,,232,,,232',
',,232,,,,,,,,,232,,,,,,,,232,,,,,232,232,232,232,232,232,,,,232,232',
',,233,233,233,,233,232,,,233,233,,232,232,233,,233,233,233,233,233,233',
'233,,,,,233,233,233,233,233,233,233,,,,,,,,,,233,,,233,233,233,233,233',
'233,233,233,233,233,,233,233,,233,233,233,,,,,,,,,,,,,,,,,,,,233,,,233',
',,233,,,,,,,,,233,,,,,,,,233,,,,,233,233,233,233,233,233,,,,233,233',
',,234,234,234,,234,233,,,234,234,,233,233,234,,234,234,234,234,234,234',
'234,,,,,234,234,234,234,234,234,234,,,,,,,,,,234,,,234,234,234,234,234',
'234,234,234,234,234,,234,234,,234,234,234,,,,,,,,,,,,,,,,,,,,234,,,234',
',,234,,,,,,,,,234,,,,,,,,234,,,,,234,234,234,234,234,234,,,,234,234',
',,235,235,235,,235,234,,,235,235,,234,234,235,,235,235,235,235,235,235',
'235,,,,,235,235,235,235,235,235,235,,,,,,,,,,235,,,235,235,235,235,235',
'235,235,235,235,235,,235,235,,235,235,235,,,,,,,,,,,,,,,,,,,,235,,,235',
',,235,,,,,,,,,235,,,,,,,,235,,,,,235,235,235,235,235,235,,,,235,235',
',,571,571,571,,571,235,,,571,571,,235,235,571,,571,571,571,571,571,571',
'571,,,,,571,571,571,571,571,571,571,,,,,,,,,,571,,,571,571,571,571,571',
'571,571,571,571,571,,571,571,,571,571,571,,,,,,,,,,,,,,,,,,,,571,,,571',
',,571,,,,,,,,,571,,,,,,,,571,,,,,571,571,571,571,571,571,,,,571,571',
',,744,744,744,744,744,571,,,744,744,,571,571,744,,744,744,744,744,744',
'744,744,,,,,744,744,744,744,744,744,744,,,744,,,,,,744,744,744,744,744',
'744,744,744,744,744,744,744,744,744,,744,744,,744,744,744,,,,,,,,,,',
',,,,,,,,,744,,,744,,,744,,,,,744,,,,744,,,,,,,,744,,,,,744,744,744,744',
'744,744,,,,744,744,,,743,743,743,743,743,744,,,743,743,,744,744,743',
',743,743,743,743,743,743,743,,,,,743,743,743,743,743,743,743,,,743,',
',,,,743,743,743,743,743,743,743,743,743,743,743,743,743,743,,743,743',
',743,743,743,,,,,,,,,,,,,,,,,,,,743,,,743,,,743,,,,,743,,,,743,,,,,',
',,743,,,,,743,743,743,743,743,743,,,,743,743,,,244,244,244,,244,743',
',,244,244,,743,743,244,,244,244,244,244,244,244,244,,,,,244,244,244',
'244,244,244,244,,,,,,,,,,244,,,244,244,244,244,244,244,244,244,244,244',
',244,244,,244,244,244,,,,,,,,,,,,,,,,,,,,244,,,244,,,244,,,,,,,,,244',
',,,,,,,244,,,,,244,244,244,244,244,244,,,,244,244,,,572,572,572,,572',
'244,,,572,572,,244,244,572,,572,572,572,572,572,572,572,,,,,572,572',
'572,572,572,572,572,,,,,,,,,,572,,,572,572,572,572,572,572,572,572,572',
'572,,572,572,,572,572,572,,,,,,,,,,,,,,,,,,,,572,,,572,,,572,,,,,,,',
',572,,,,,,,,572,,,,,572,572,572,572,572,572,,,,572,572,,,246,246,246',
',246,572,,,246,246,,572,572,246,,246,246,246,246,246,246,246,,,,,246',
'246,246,246,246,246,246,,,,,,,,,,246,,,246,246,246,246,246,246,246,246',
'246,246,,246,246,,246,246,246,,,,,,,,,,,,,,,,,,,,246,,,246,,,246,,,',
',,,,,246,,,,,,,,246,,,,,246,246,246,246,246,246,,,,246,246,,,251,251',
'251,,251,246,,,251,251,,246,246,251,,251,251,251,251,251,251,251,,,',
',251,251,251,251,251,251,251,,,,,,,,,,251,,,251,251,251,251,251,251',
'251,251,251,251,,251,251,,251,251,251,,,,,,,,,,,,,,,,,,,,251,,,251,',
',251,,,,,,,,,251,,,,,,,,251,,,,,251,251,251,251,251,251,,,,251,251,',
',577,577,577,,577,251,,,577,577,,251,251,577,,577,577,577,577,577,577',
'577,,,,,577,577,577,577,577,577,577,,,,,,,,,,577,,,577,577,577,577,577',
'577,577,577,577,577,,577,577,,577,577,577,,,,,,,,,,,,,,,,,,,,577,,,577',
',,577,,,,,,,,,577,,,,,,,,577,,,,,577,577,577,577,577,577,,,,577,577',
',,580,580,580,,580,577,,,580,580,,577,577,580,,580,580,580,580,580,580',
'580,,,,,580,580,580,580,580,580,580,,,,,,,,,,580,,,580,580,580,580,580',
'580,580,580,580,580,,580,580,,580,580,580,,,,,,,,,,,,,,,,,,,,580,,,580',
',,580,,,,,,,,,580,,,,,,,,580,,,,,580,580,580,580,580,580,,,,580,580',
',,726,726,726,726,726,580,,,726,726,,580,580,726,,726,726,726,726,726',
'726,726,,,,,726,726,726,726,726,726,726,,,726,,,,,,726,726,726,726,726',
'726,726,726,726,726,726,726,726,726,,726,726,,726,726,726,,,,,,,,,,',
',,,,,,,,,726,,,726,,,726,,,,,726,,,,726,,,,,,,,726,,,,,726,726,726,726',
'726,726,,,,726,726,,,257,257,257,,257,726,,,257,257,,726,726,257,,257',
'257,257,257,257,257,257,,,,,257,257,257,257,257,257,257,,,,,,,,,,257',
',,257,257,257,257,257,257,257,257,257,257,,257,257,,257,257,257,,,,',
',,,,,,,,,,,,,,,257,,,257,,,257,,,,,257,,257,,257,,,,,,,,257,,,,,257',
'257,257,257,257,257,,,,257,257,,,,,,,257,257,258,258,258,,258,257,257',
',258,258,,,,258,,258,258,258,258,258,258,258,,,,,258,258,258,258,258',
'258,258,,,,,,,,,,258,,,258,258,258,258,258,258,258,258,258,258,,258',
'258,,258,258,258,,,,,,,,,,,,,,,,,,,,258,,,258,,,258,,,,,258,,258,,258',
',,,,,,,258,,,,,258,258,258,258,258,258,,,,258,258,,,,,,,258,258,266',
'266,266,,266,258,258,,266,266,,,,266,,266,266,266,266,266,266,266,,',
',,266,266,266,266,266,266,266,,,,,,,,,,266,,,266,266,266,266,266,266',
'266,266,266,266,,266,266,,266,266,266,,,,,,,,,,,,,,,,,,,,266,,,266,',
'266,266,,,,,266,,266,,266,,,,,,,,266,,,,,266,266,266,266,266,266,,583',
',266,266,,,,583,583,583,266,266,583,583,583,,583,266,266,,,,,,,583,583',
'583,,,,,,,,583,583,,583,583,583,583,583,,,,,,,,,,,,,,,,,,,,,,583,583',
'583,583,583,583,583,583,583,583,583,583,583,583,,,583,583,583,,583,583',
',,583,,,583,,583,,583,,583,,583,583,583,583,583,583,583,,583,583,583',
',,,,,,,,,,,,583,583,583,583,,583,,,,,583,,583,268,268,268,268,268,,',
',268,268,,,,268,,268,268,268,268,268,268,268,,,,,268,268,268,268,268',
'268,268,,,268,,,,,,268,268,268,268,268,268,268,268,268,268,268,268,268',
'268,,268,268,,268,268,268,,,,,,,,,,,,,,,,,,,,268,,,268,,,268,,,,,268',
',,,268,,,,,,,,268,,,,,268,268,268,268,268,268,,,,268,268,,,718,718,718',
',718,268,,,718,718,,268,268,718,,718,718,718,718,718,718,718,,,,,718',
'718,718,718,718,718,718,,,,,,,,,,718,,,718,718,718,718,718,718,718,718',
'718,718,,718,718,,718,718,718,,,,,,,,,,,,,,,,,,,,718,,,718,,,718,,,',
',718,,,,718,,,,,,,,718,,,,,718,718,718,718,718,718,,,,718,718,,,353',
'353,353,,353,718,,,353,353,,718,718,353,,353,353,353,353,353,353,353',
',,,,353,353,353,353,353,353,353,,,353,,,,,,,353,,,353,353,353,353,353',
'353,353,353,353,353,,353,353,,353,353,353,,,,,,,,,,,,,,,,,,,,353,,,353',
',,353,,,,,,,,,353,,,,,,,,353,,,,,353,353,353,353,353,353,,,,353,353',
',,703,703,703,,703,353,,,703,703,,353,353,703,,703,703,703,703,703,703',
'703,,,,,703,703,703,703,703,703,703,,,,,,,,,,703,,,703,703,703,703,703',
'703,703,703,703,703,,703,703,,703,703,703,,,,,,,,,,,,,,,,,,,,703,,,703',
',,703,,,,,,,,,703,,,,,,,,703,,,,,703,703,703,703,703,703,,,,703,703',
',,272,272,272,,272,703,,,272,272,,703,703,272,,272,272,272,272,272,272',
'272,,,,,272,272,272,272,272,272,272,,,,,,,,,,272,,,272,272,272,272,272',
'272,272,272,272,272,,272,272,,,,272,,,,,,,,,,,,,,,,,,,,272,,,272,,,272',
',,,,,,,,,,,,,,,,,,,,,272,272,272,272,272,272,,,,272,272,,,273,273,273',
'273,273,272,,,273,273,,272,272,273,,273,273,273,273,273,273,273,,,,',
'273,273,273,273,273,273,273,,,273,,,,,,273,273,273,273,273,273,273,273',
'273,273,273,273,273,273,,273,273,,273,273,273,,,,,,,,,,,,,,,,,,,,273',
',,273,,,273,,,,,273,,,,273,,,,,,,,273,,,,,273,273,273,273,273,273,,584',
',273,273,,,,584,584,584,,273,584,584,584,,584,273,273,,,,,,,,584,584',
',,,,,,,584,584,,584,584,584,584,584,,,,,,,,,,,,,,,,,,,,,,584,584,584',
'584,584,584,584,584,584,584,584,584,584,584,,,584,584,584,,584,584,',
',584,,,584,,584,,584,,584,,584,584,584,584,584,584,584,,584,,584,,,',
',,,,,,,,,584,584,584,584,,584,,587,587,587,584,587,584,,,587,587,,,',
'587,,587,587,587,587,587,587,587,,,,,587,587,587,587,587,587,587,,,',
',,,,,,587,,,587,587,587,587,587,587,587,587,587,587,,587,587,,587,587',
'587,,,,,,,,,,,,,,,,,,,,587,,,587,,,587,,,,,,,,,587,,,,,,,,587,,,,,587',
'587,587,587,587,587,,,,587,587,,,702,702,702,,702,587,,,702,702,,587',
'587,702,,702,702,702,702,702,702,702,,,,,702,702,702,702,702,702,702',
',,,,,,,,,702,,,702,702,702,702,702,702,702,702,702,702,,702,702,,702',
'702,702,,,,,,,,,,,,,,,,,,,,702,,,702,,,702,,,,,,,,,702,,,,,,,,702,,',
',,702,702,702,702,702,702,,,,702,702,,,591,591,591,591,591,702,,,591',
'591,,702,702,591,,591,591,591,591,591,591,591,,,,,591,591,591,591,591',
'591,591,,,591,,,,,,591,591,591,591,591,591,591,591,591,591,591,591,591',
'591,,591,591,,591,591,591,,,,,,,,,,,,,,,,,,,,591,,,591,,,591,,,,,591',
',,,591,,,,,,,,591,,,,,591,591,591,591,591,591,,,,591,591,,,701,701,701',
',701,591,,,701,701,,591,591,701,,701,701,701,701,701,701,701,,,,,701',
'701,701,701,701,701,701,,,,,,,,,,701,,,701,701,701,701,701,701,701,701',
'701,701,,701,701,,701,701,701,,,,,,,,,,,,,,,,,,,,701,,,701,,,701,,,',
',,,,,701,,,,,,,,701,,,,,701,701,701,701,701,701,,,,701,701,,,595,595',
'595,,595,701,,,595,595,,701,701,595,,595,595,595,595,595,595,595,,,',
',595,595,595,595,595,595,595,,,,,,,,,,595,,,595,595,595,595,595,595',
'595,595,595,595,,595,595,,595,595,595,,,,,,,,,,,,,,,,,,,,595,,,595,',
',595,,,,,,,,,595,,,,,,,,595,,,,,595,595,595,595,595,595,,,,595,595,',
',603,603,603,603,603,595,,,603,603,,595,595,603,,603,603,603,603,603',
'603,603,,,,,603,603,603,603,603,603,603,,,603,,,,,,603,603,603,603,603',
'603,603,603,603,603,603,603,603,603,,603,603,,603,603,603,,,,,,,,,,',
',,,,,,,,,603,,,603,,,603,,,,,603,,,,603,,,,,,,,603,,,,,603,603,603,603',
'603,603,,,,603,603,,,609,609,609,,609,603,,,609,609,,603,603,609,,609',
'609,609,609,609,609,609,,,,,609,609,609,609,609,609,609,,,,,,,,,,609',
',,609,609,609,609,609,609,609,609,609,609,,609,609,,609,609,609,,,,',
',,,,,,,,,,,,,,,609,,,609,,,609,,,,,609,,609,,609,,,,,,,,609,,,,,609',
'609,609,609,609,609,,,,609,609,,,,,,,609,609,340,340,340,,340,609,609',
',340,340,,,,340,,340,340,340,340,340,340,340,,,,,340,340,340,340,340',
'340,340,,,,,,,,,,340,,,340,340,340,340,340,340,340,340,340,340,,340',
'340,,,,340,,,,,,,,,,,,,,,,,,,,340,,,340,,,340,,,,,,,,,,,,,,,,,,,,,,340',
'340,340,340,340,340,,,,340,340,,,338,338,338,,338,340,,,338,338,,340',
'340,338,,338,338,338,338,338,338,338,,,,,338,338,338,338,338,338,338',
',,,,,,,,,338,,,338,338,338,338,338,338,338,338,338,338,,338,338,,,,338',
',,,,,,,,,,,,,,,,,,,338,,,338,,,338,,,,,,,,,,,,,,,,,,,,,,338,338,338',
'338,338,338,,,,338,338,,,691,691,691,,691,338,,,691,691,,338,338,691',
',691,691,691,691,691,691,691,,,,,691,691,691,691,691,691,691,,,,,,,',
',,691,,,691,691,691,691,691,691,691,691,691,691,,691,691,,691,691,691',
',,,,,,,,,,,,,,,,,,,691,,,691,,,691,,,,,,,,,691,,,,,,,,691,,,,,691,691',
'691,691,691,691,,,,691,691,,,690,690,690,,690,691,,,690,690,,691,691',
'690,,690,690,690,690,690,690,690,,,,,690,690,690,690,690,690,690,,,',
',,,,,,690,,,690,690,690,690,690,690,690,690,690,690,,690,690,,690,690',
'690,,,,,,,,,,,,,,,,,,,,690,,,690,,,690,,,,,,,,,690,,,,,,,,690,,,,,690',
'690,690,690,690,690,,,,690,690,,,615,615,615,615,615,690,,,615,615,',
'690,690,615,,615,615,615,615,615,615,615,,,,,615,615,615,615,615,615',
'615,,,615,,,,,,615,615,615,615,615,615,615,615,615,615,615,615,615,615',
',615,615,,615,615,615,,,,,,,,,,,,,,,,,,,,615,,,615,,,615,,,,,615,,,',
'615,,,,,,,,615,,,,,615,615,615,615,615,615,,,,615,615,,,616,616,616',
'616,616,615,,,616,616,,615,615,616,,616,616,616,616,616,616,616,,,,',
'616,616,616,616,616,616,616,,,616,,,,,,616,616,616,616,616,616,616,616',
'616,616,616,616,616,616,,616,616,,616,616,616,,,,,,,,,,,,,,,,,,,,616',
',,616,,,616,,,,,616,,,,616,,,,,,,,616,,,,,616,616,616,616,616,616,,',
',616,616,,,293,293,293,,293,616,,,293,293,,616,616,293,,293,293,293',
'293,293,293,293,,,,,293,293,293,293,293,293,293,,,,,,,,,,293,,,293,293',
'293,293,293,293,293,293,293,293,,293,293,,293,293,293,,,,,,,,,,,,,,',
',,,,,293,,,293,293,,293,,,,,,,,,293,,,,,,,,293,,,,,293,293,293,293,293',
'293,,,,293,293,,,295,295,295,295,295,293,,,295,295,,293,293,295,,295',
'295,295,295,295,295,295,,,,,295,295,295,295,295,295,295,,,295,,,,,,295',
'295,295,295,295,295,295,295,295,295,295,295,295,295,,295,295,,295,295',
'295,,,,,,,,,,,,,,,,,,,,295,,,295,,,295,,,,,295,,,,295,,,,,,,,295,,,',
',295,295,295,295,295,295,,,,295,295,,,332,332,332,,332,295,,,332,332',
',295,295,332,,332,332,332,332,332,332,332,,,,,332,332,332,332,332,332',
'332,,,332,,,,,,,332,,,332,332,332,332,332,332,332,332,332,332,,332,332',
',332,332,332,,,,,,,,,,,,,,,,,,,,332,,,332,,,332,,,,,,,,,332,,,,,,,,332',
',,,,332,332,332,332,332,332,,,,332,332,,,684,684,684,684,684,332,,,684',
'684,,332,332,684,,684,684,684,684,684,684,684,,,,,684,684,684,684,684',
'684,684,,,684,,,,,,684,684,684,684,684,684,684,684,684,684,684,684,684',
'684,,684,684,,684,684,684,,,,,,,,,,,,,,,,,,,,684,,,684,,,684,,,,,684',
',,,684,,,,,,,,684,,,,,684,684,684,684,684,684,,,,684,684,,,331,331,331',
',331,684,,,331,331,,684,684,331,,331,331,331,331,331,331,331,,,,,331',
'331,331,331,331,331,331,,,331,,,,,,,331,,,331,331,331,331,331,331,331',
'331,331,331,,331,331,,331,331,331,,,,,,,,,,,,,,,,,,,,331,,,331,,,331',
',,,,,,,,331,,,,,,,,331,,,,,331,331,331,331,331,331,,,,331,331,,,672',
'672,672,672,672,331,,,672,672,,331,331,672,,672,672,672,672,672,672',
'672,,,,,672,672,672,672,672,672,672,,,672,,,,,,672,672,672,672,672,672',
'672,672,672,672,672,672,672,672,,672,672,,672,672,672,,,,,,,,,,,,,,',
',,,,,672,,,672,,,672,,,,,672,,,,672,,,,,,,,672,,,,,672,672,672,672,672',
'672,,,,672,672,,,671,671,671,671,671,672,,,671,671,,672,672,671,,671',
'671,671,671,671,671,671,,,,,671,671,671,671,671,671,671,,,671,,,,,,671',
'671,671,671,671,671,671,671,671,671,671,671,671,671,,671,671,,671,671',
'671,,,,,,,,,,,,,,,,,,,,671,,,671,,,671,,,,,671,,,,671,,,,,,,,671,,,',
',671,671,671,671,671,671,,,,671,671,,,632,632,632,,632,671,,,632,632',
',671,671,632,,632,632,632,632,632,632,632,,,,,632,632,632,632,632,632',
'632,,,,,,,,,,632,,,632,632,632,632,632,632,632,632,632,632,,632,632',
',632,632,632,,,,,,,,,,,,,,,,,,,,632,,,632,,,632,,,,,632,,,,632,,,,,',
',,632,,,,,632,632,632,632,632,632,,,,632,632,,,668,668,668,,668,632',
',,668,668,,632,632,668,,668,668,668,668,668,668,668,,,,,668,668,668',
'668,668,668,668,,,668,,,,,,,668,,,668,668,668,668,668,668,668,668,668',
'668,,668,668,,668,668,668,,,,,,,,,,,,,,,,,,,,668,,,668,,,668,,,,,,,',
',668,,,,,,,,668,,,,,668,668,668,668,668,668,,,,668,668,,,660,660,660',
',660,668,,,660,660,,668,668,660,,660,660,660,660,660,660,660,,,,,660',
'660,660,660,660,660,660,,,660,,,,,,,660,,,660,660,660,660,660,660,660',
'660,660,660,,660,660,,660,660,660,,,,,,,,,,,,,,,,,,,,660,,,660,,,660',
',,,,,,,,660,,,,,,,,660,,,,,660,660,660,660,660,660,,,,660,660,,,664',
'664,664,,664,660,,,664,664,,660,660,664,,664,664,664,664,664,664,664',
',,,,664,664,664,664,664,664,664,,,,,,,,,,664,,,664,664,664,664,664,664',
'664,664,664,664,,664,664,,664,664,664,,,,,,,,,,,,,,,,,,,,664,,,664,',
',664,,,,,664,,,,664,,,,,,,,664,,,,,664,664,664,664,664,664,,,,664,664',
',,,,,,664,664,659,659,659,,659,664,664,,659,659,,,,659,,659,659,659',
'659,659,659,659,,,,,659,659,659,659,659,659,659,,,,,,,,,,659,,,659,659',
'659,659,659,659,659,659,659,659,,659,659,,659,659,659,,,,,,,,,,,,,,',
',,,,,659,,,659,,,659,,,,,659,,,,659,,,,,,,,659,,,,,659,659,659,659,659',
'659,,,,659,659,,,453,453,453,,453,659,,,453,453,,659,659,453,,453,453',
'453,453,453,453,453,,,,,453,453,453,453,453,453,453,,,,,,,,,,453,,,453',
'453,453,453,453,453,453,453,453,453,,453,453,,453,453,453,,,,,,,,,,',
',,,,,,,,,453,,,453,,,453,,,,,,,453,,453,,,,,,,,453,,,,,453,453,453,453',
'453,453,,461,,453,453,,,,461,461,461,453,453,461,461,461,,461,453,453',
',,,,,,,461,,,,,,,,,461,461,,461,461,461,461,461,,,,,,,,,,,,458,,,,,',
',458,458,458,,,458,458,458,,458,,,,,461,,,,,458,,461,,,,,461,461,458',
'458,,458,458,458,458,458,,,,,,,,,,,,,461,,,,,,,,,,,,,461,,461,,,461',
',458,,,,,,,458,,,,,458,458,,,,,,,,,,,,,,,,,,,,,458,,,,,,,,,,,,,458,',
'458,,,458,7,7,7,7,7,7,7,7,,,7,7,7,7,7,,,7,7,7,7,7,7,7,,,7,7,7,7,7,7',
'7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,,,7,,,,,,,,7,7,,7,7,7,7,7,7,7,,,7',
',,,,7,7,7,7,,,,,,,,,,,,,7,7,,7,7,7,7,7,7,7,7,7,7,7,,,7,7,384,384,384',
'384,384,384,384,384,,7,384,384,384,384,384,,,384,384,384,384,384,384',
'384,,,384,384,384,384,384,384,384,384,384,384,384,384,384,384,384,384',
'384,384,384,384,384,384,384,,,384,,,,,,,,384,384,,384,384,384,384,384',
'384,384,,,384,,,,,384,384,384,384,,,,,,,,,,,,,384,384,,384,384,384,384',
'384,384,384,384,384,384,384,,,384,384,6,6,6,6,6,6,6,6,,384,6,6,6,6,6',
',,6,6,6,6,6,6,6,,,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,,6',
',,,,,,,6,6,,6,6,6,6,6,6,6,,,6,,,,,6,6,6,6,,,,,,,,,,,,,6,6,,6,6,6,6,6',
'6,6,6,6,6,6,,,6,6,380,380,380,380,380,380,380,380,,6,380,380,380,380',
'380,,,380,380,380,380,380,380,380,,,380,380,380,380,380,380,380,380',
'380,380,380,380,380,380,380,380,380,380,380,380,380,380,380,,,380,,',
',,,,,380,380,,380,380,380,380,380,380,380,,,380,,,,,380,380,380,380',
',,,,,,,,,,,,380,380,,380,380,380,380,380,380,380,380,380,380,380,,,380',
'380,79,79,79,79,79,79,79,79,,380,79,79,79,79,79,,,79,79,79,79,79,79',
'79,,,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79,79',
'79,79,79,79,79,79,,,,,,,79,79,,79,79,79,79,79,79,79,,,79,,,,,79,79,79',
'79,,,,,,,,,,,,,79,79,,79,79,79,79,79,79,79,79,79,79,79,,,79,65,65,65',
'65,65,65,65,65,,,65,65,65,65,65,,,65,65,65,65,65,65,65,,,65,65,65,65',
'65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65',
',,,,,,65,65,,65,65,65,65,65,65,65,,,65,,,,,65,65,65,65,,,,,,65,,,,,',
',65,65,,65,65,65,65,65,65,65,65,65,65,65,,,65,681,681,681,681,681,681',
'681,681,,,681,681,681,681,681,,,681,681,681,681,681,681,681,,,681,681',
'681,681,681,681,681,681,681,681,681,681,681,681,681,681,681,681,681',
'681,681,681,681,,,681,,,,,,,,681,681,,681,681,681,681,681,681,681,,',
'681,,,,,681,681,681,681,,,,,,,,,,,,,681,681,,681,681,681,681,681,681',
'681,681,681,681,681,,,681,185,185,185,185,185,185,185,185,,,185,185',
'185,185,185,,,185,185,185,185,185,185,185,,,185,185,185,185,185,185',
'185,185,185,185,185,185,185,185,185,185,185,185,185,185,185,185,185',
'185,185,185,185,,,,,,,185,185,,185,185,185,185,185,185,185,,,185,,,',
',185,185,185,185,,,,,,,,,,,,,185,185,,185,185,185,185,185,185,185,185',
'185,185,185,254,254,185,,254,,,,,,,,254,254,,254,254,254,254,254,254',
'254,,,254,,,,,254,254,254,254,,,,,,,,,,,,,254,254,,254,254,254,254,254',
'254,254,254,254,254,254,255,255,254,,255,,,,,,,,255,255,,255,255,255',
'255,255,255,255,,,255,,,,,255,255,255,255,,,,,,,,,,,,,255,255,,255,255',
'255,255,255,255,255,255,255,255,255,737,737,255,,737,,,,,,,,737,737',
',737,737,737,737,737,737,737,,,737,,,,,737,737,737,737,,,,,,,,,,,,,737',
'737,,737,737,737,737,737,737,737,737,737,737,737,844,844,737,,844,,',
',,,,,844,844,,844,844,844,844,844,844,844,,,844,,,,,844,844,844,844',
',,,,,844,,,,,,,844,844,,844,844,844,844,844,844,844,844,844,844,844',
'845,845,844,,845,,,,,,,,845,845,,845,845,845,845,845,845,845,,,845,',
',,,845,845,845,845,,,,,,,,,,,,,845,845,,845,845,845,845,845,845,845',
'845,845,845,845,493,493,845,,493,,,,,,,,493,493,,493,493,493,493,493',
'493,493,,,493,,,,,493,493,493,493,,,,,,,,,,,,,493,493,,493,493,493,493',
'493,493,493,493,493,493,493,492,492,493,,492,,,,,,,,492,492,,492,492',
'492,492,492,492,492,,,492,,,,,492,492,492,492,,,,,,492,,,,,,,492,492',
',492,492,492,492,492,492,492,492,492,492,492,607,607,492,,607,,,,,,',
',607,607,,607,607,607,607,607,607,607,,,607,,,,,607,607,607,607,,,,',
',,,,,,,,607,607,,607,607,607,607,607,607,607,607,607,607,607,195,195',
'607,,195,,,,,,,,195,195,,195,195,195,195,195,195,195,,,195,,,,,195,195',
'195,195,,,,,,,,,,,,,195,195,,195,195,195,195,195,195,195,195,195,195',
'195,194,194,195,,194,,,,,,,,194,194,,194,194,194,194,194,194,194,,,194',
',,,,194,194,194,194,,,,,,194,,,,,,,194,194,,194,194,194,194,194,194',
'194,194,194,194,194,608,608,194,,608,,,,,,,,608,608,,608,608,608,608',
'608,608,608,,,608,,,,,608,608,608,608,,,,,,,,,,,,,608,608,,608,608,608',
'608,608,608,608,608,608,608,608,484,484,608,,484,,,,,,,,484,484,,484',
'484,484,484,484,484,484,,,484,,,,,484,484,484,484,,,,,,,,,,,,,484,484',
',484,484,484,484,484,484,484,484,484,484,484,483,483,484,,483,,,,,,',
',483,483,,483,483,483,483,483,483,483,,,483,,,,,483,483,483,483,,,,',
',483,,,,,,,483,483,,483,483,483,483,483,483,483,483,483,483,483,663',
'663,483,,663,,,,,,,,663,663,,663,663,663,663,663,663,663,,,663,,,,,663',
'663,663,663,,,,,,,,,,,,,663,663,,663,663,663,663,663,663,663,663,663',
'663,663,415,415,663,,415,,,,,,,,415,415,,415,415,415,415,415,415,415',
',,415,,,,,415,415,415,415,,,,,,415,,,,,,,415,415,,415,415,415,415,415',
'415,415,415,415,415,415,416,416,415,,416,,,,,,,,416,416,,416,416,416',
'416,416,416,416,,,416,,,,,416,416,416,416,,,,,,,,,,,,,416,416,,416,416',
'416,416,416,416,416,416,416,416,416,665,665,416,,665,,,,,,,,665,665',
',665,665,665,665,665,665,665,,,665,,,,,665,665,665,665,,,,,,665,,,,',
',,665,665,,665,665,665,665,665,665,665,665,665,665,665,,,665' ]
        racc_action_check = arr = ::Array.new(21316, nil)
        idx = 0
        clist.each do |str|
          str.split(',', -1).each do |i|
            arr[idx] = i.to_i unless i.empty?
            idx += 1
          end
        end

racc_action_pointer = [
    -2,  1165,   nil,   289,   nil,   983, 19655, 19435,  1039,  1025,
  1000,   992,  1036,   367,   -62,   122,   nil,  1730,  1852,  1108,
  1076,   nil,  2218,  2346,  2474,   373,    69,  2816,  2944,   nil,
  3070,  3192,  3314,   nil,   969,   325,  1026,   298,  3924,  4046,
  4168,   948,   -13,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
  4530,   nil,  4663,  4785,  4913,    -1,  2878,  5285,  5407,   nil,
   nil,  5529,  2291,   932,   nil, 19984,   nil,   nil,   nil,   nil,
   nil,   -41,   nil,   nil,   nil,   nil,   nil,   868,   865, 19875,
   nil,   nil,   nil,  6523,   nil,   nil,  6651,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,    12,   nil,  6901,   nil,
   nil,   nil,  7023,  7145,  7267,  7389,  7511,   nil,   657,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil, 20202,   847,   nil,  7998,  8120,
  8242,  8364,  8486,  8608, 20792, 20733,  8979,  9101,  9223,   nil,
   248,    15,   847,   111,   756,   796, 10077,   nil,   nil, 10199,
 10321, 10443, 10565, 10687, 10809, 10931, 11053, 11175, 11297, 11419,
 11541, 11663, 11785, 11907, 12029, 12151, 12273, 12395, 12517, 12639,
 12761, 12883, 13005, 13127, 13249, 13371,   nil,   nil,   nil,   986,
   nil,   748,   747,   nil, 13859,   775, 14103,   nil,   nil,   nil,
   nil, 14225,   nil,   nil, 20261, 20320,   737, 14713, 14841,   nil,
   nil,   nil,   nil,   nil,   nil,   nil, 14969,   739, 15220,   732,
   681,   642, 15708, 15830,   370,   395,   713,   396,   663,   620,
     8,   nil,   652,   521,   nil,   nil,   626,   666,   665,   495,
   nil,   652,   nil, 17667,   nil, 17789,   -29,   nil,   305,   318,
   542,   394,   510,   nil,   338,   nil,   nil,   344,  2939,   nil,
   nil,   451,   446,   427,   nil,   nil,   417,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   412,   nil,   nil,   289,   482,    74,
    66, 18155, 17911,   370,   246,   148,   587,   nil, 17057,   nil,
 16935,   492,   163,   182,   387,   583,    -7,   171,   369,   nil,
   584,   nil,   nil, 15464,   nil,   318,   nil,   248,   nil,   105,
   619,   278,   nil,   883,   -43,   nil,   155,   nil,   nil,   nil,
   nil,   nil,   nil,   864,   nil,   nil,   nil,   nil,   nil,   nil,
 19765,   nil,   nil,   nil, 19545,   999,  1044,   nil,   nil,   492,
   nil,  9955,  1043,   nil,  1029,   nil,   nil,   864,   833,   579,
   403,  8853,   nil,   nil,   nil,  8725,   612,  7865,   nil,  7755,
  6395,   nil,  1608,   nil,   nil, 21087, 21146,  6267,   -29,  5901,
  5041,  4412,  4168,  4290,   857,   683,   135,   524,   570,   735,
  4656,  4785,  4664,  2602,  4046,  4412,  4481,  3188,  3436,  3558,
  3680,  3802,  3924,  1049,  1171,  3314,  3070,  1480,   156,   nil,
   120,   nil,   nil, 19137,   nil,   248,   nil,   nil, 19309,   nil,
   nil, 19255,   -47,   nil,  1029,   983,   864,   955,  1041,   nil,
   nil,   370,   132,    -5,   976,   nil,   944,   888,   nil,   nil,
   nil,   866,   492, 20969, 20910,   398,   864,   nil,   nil,   620,
   742,   986, 20615, 20556,   620,  1108,   942,   880,   763,   nil,
  1230,   nil,   nil,  1352,   nil,   nil,   nil,   nil,   nil,  1974,
  2602,   680,   nil,  2502,   nil,   738,   nil,   nil,   504,  2724,
   nil,   nil,  3436,   296,   nil,   nil,  3558,   103,   120,    67,
    57,  3680,   nil,   nil,    -2,   158,   nil,   543,   nil,    33,
  9345,   nil,  2910,   nil,   nil,   nil,     3,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   167,   nil,   nil,
   nil,   847,   nil,   nil,   nil,   nil,   nil,  9711,   970,  9833,
   573, 13493, 13981,  1003,   nil,   nil,   nil, 14347,   978,   nil,
 14469,   -44,    75, 15087, 15948,   646,   248, 16075,   nil,  2768,
   nil, 16319,   555,   nil,   571, 16563,   nil,   551,   nil,   nil,
   nil,   nil,   nil, 16685,   nil,   544,   528, 20674, 20851, 16807,
  1352,   485,   nil,   nil,   420, 17423, 17545,   nil,     3,   nil,
   892,   322,   -24,    98,   201,   527,   142,  2346,   219,   223,
     1,   322, 18521,   nil,   nil,   nil,   235,   349,   nil,   245,
   253,   nil,   nil,   269,   nil,   307,   580,   447,   475,   nil,
   513,   nil,   nil,   nil,   nil,   nil,   524,   nil,   529, 19015,
 18765,   702,   nil, 21028, 18887, 21205,   nil,   nil, 18643,   205,
   -25, 18399, 18277,  2419,   164,   519,   520,   521,   nil,   515,
   nil, 20093,   572,  1022, 18033,   nil,   nil,   nil,  2218,   603,
 17301, 17179,   nil,  2096,   nil,  1974,   nil,   nil,  1852,   nil,
  1730, 16441, 16197, 15586,   107,  1230,   nil,   674,   771,   nil,
   nil,   672,   nil,   nil,   698,   701,   777,   775, 15342,   nil,
   712,   817,   333,   nil,   821,   nil, 14591,   713,   765,   nil,
   nil,   nil,   nil,   932,   nil,   nil,   nil, 20379,   nil,   852,
   nil,   nil,   855, 13737, 13615,   nil,   nil,    62,    39,   359,
   nil,   803,   800,  9589,   -50,   nil,   nil,   933,   934,   826,
   nil,  2752,   nil,   488,   nil,   nil,  9467,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   846,   835,   nil,   742,  7633,   nil,
   nil,   nil,   886,   857,   nil,   nil,   nil,  6779,   nil,   nil,
    -7,  6145,   nil,   870,   911,   nil,  6023,   nil,  1001,  1002,
  5779,  5657,   nil,   nil,  1022,   nil,  5163,   nil,   nil,   955,
   921,   936,  1058,   933,   nil,   nil,  3205,   nil,   nil,   nil,
  4290,   nil,  3802,   304,   330,  1029,   331,   nil,   nil,    78,
   nil,   nil,   205,  2096,   nil,  1095,   nil,   245,   nil,   nil,
   nil,  1608,  1109,  1480, 20438, 20497,   397,   864,   nil,   nil,
   nil,  1125,   nil,  1010,  1134,   nil,  1055,    86,    70,    93,
   620,   131,   nil,   nil,   nil,   742,   nil ]

racc_action_default = [
  -492,  -494,    -1,  -481,    -4,    -5,  -494,  -494,  -494,  -494,
  -494,  -494,  -494,  -494,  -251,   -31,   -32,  -494,  -494,   -37,
   -39,   -40,  -262,  -299,  -300,   -44,  -229,  -229,  -229,   -56,
  -492,   -60,   -65,   -66,  -494,  -423,  -494,  -494,  -494,  -494,
  -494,  -483,  -211,  -244,  -245,  -246,  -247,  -248,  -249,  -250,
  -471,  -253,  -494,  -492,  -492,  -268,  -492,  -494,  -494,  -273,
  -276,  -481,  -494,  -285,  -291,  -494,  -301,  -302,  -368,  -369,
  -370,  -371,  -372,  -492,  -375,  -492,  -492,  -492,  -492,  -492,
  -402,  -408,  -409,  -412,  -413,  -414,  -415,  -416,  -417,  -418,
  -419,  -420,  -421,  -422,  -425,  -426,  -494,    -3,  -482,  -488,
  -489,  -490,  -494,  -494,  -494,  -494,  -494,    -7,  -494,   -90,
   -91,   -92,   -93,   -94,   -95,   -96,   -99,  -100,  -101,  -102,
  -103,  -104,  -105,  -106,  -107,  -108,  -109,  -110,  -111,  -112,
  -113,  -114,  -115,  -116,  -117,  -118,  -119,  -120,  -121,  -122,
  -123,  -124,  -125,  -126,  -127,  -128,  -129,  -130,  -131,  -132,
  -133,  -134,  -135,  -136,  -137,  -138,  -139,  -140,  -141,  -142,
  -143,  -144,  -145,  -146,  -147,  -148,  -149,  -150,  -151,  -152,
  -153,  -154,  -155,  -156,  -157,  -158,  -159,  -160,  -161,  -162,
  -163,  -164,  -165,  -166,  -167,  -494,   -12,   -97,  -492,  -492,
  -494,  -494,  -494,  -492,  -494,  -494,  -494,  -494,  -494,   -35,
  -494,  -423,  -494,  -251,  -494,  -494,  -492,   -36,  -203,  -494,
  -494,  -494,  -494,  -494,  -494,  -494,  -494,  -494,  -494,  -494,
  -494,  -494,  -494,  -494,  -494,  -494,  -494,  -494,  -494,  -494,
  -494,  -494,  -494,  -494,  -494,  -494,  -339,  -341,   -41,  -212,
  -222,  -493,  -493,  -226,  -494,  -237,  -494,  -262,  -299,  -300,
  -465,  -494,   -42,   -43,  -494,  -494,   -48,  -492,  -494,  -267,
  -344,  -351,  -353,   -54,  -349,   -55,  -494,   -56,  -492,  -494,
  -494,   -61,   -63,  -492,   -70,  -494,  -494,   -77,  -265,  -483,
  -494,  -303,  -350,  -494,   -64,   -68,  -258,  -410,  -411,  -494,
  -188,  -189,  -204,  -494,  -484,  -492,  -483,  -213,  -485,  -485,
  -494,  -485,  -494,  -462,  -485,  -269,  -270,  -494,  -494,  -314,
  -315,  -459,  -459,  -459,  -331,  -332,  -445,  -441,  -442,  -443,
  -444,  -446,  -451,  -452,  -454,  -455,  -456,  -494,   -38,  -494,
  -494,  -494,  -494,  -481,  -494,  -482,  -494,  -323,  -494,  -288,
  -494,   -90,   -91,  -127,  -128,  -144,  -149,  -156,  -159,  -294,
  -494,  -423,  -460,  -494,  -373,  -494,  -388,  -494,  -390,  -494,
  -494,  -494,  -380,  -494,  -494,  -386,  -494,  -401,  -403,  -404,
  -405,  -406,   867,    -6,  -491,   -13,   -14,   -15,   -16,   -17,
  -494,    -9,   -10,   -11,  -494,  -494,  -494,   -20,   -28,  -168,
  -237,  -494,  -494,   -21,   -29,   -30,   -22,  -170,  -494,  -472,
  -473,  -229,  -346,  -474,  -475,  -472,  -229,  -473,  -348,  -477,
  -478,   -27,  -177,   -33,   -34,  -494,  -494,  -492,  -258,  -494,
  -494,  -494,  -178,  -179,  -180,  -181,  -182,  -183,  -184,  -185,
  -190,  -191,  -192,  -193,  -194,  -195,  -196,  -197,  -198,  -199,
  -200,  -201,  -202,  -205,  -206,  -207,  -208,  -494,  -492,  -223,
  -494,  -236,  -224,  -494,  -234,  -494,  -238,  -468,  -229,  -472,
  -473,  -229,  -492,   -49,  -494,  -483,  -483,  -493,  -222,  -230,
  -231,  -494,  -492,  -492,  -494,  -264,  -494,   -57,  -256,   -69,
   -62,  -494,  -492,  -494,  -494,   -76,  -494,  -410,  -411,  -494,
  -494,  -494,  -494,  -494,  -209,  -494,  -360,  -494,  -494,  -214,
  -487,  -486,  -215,  -487,  -260,  -464,  -261,  -463,  -311,  -492,
  -492,  -494,  -313,  -494,  -327,  -494,  -329,  -330,  -494,  -494,
  -453,  -457,  -492,  -304,  -305,  -306,  -492,  -494,  -494,  -494,
  -494,  -492,  -355,  -282,   -86,  -494,   -88,  -494,  -251,  -494,
  -494,  -292,  -440,  -296,  -479,  -480,  -483,  -374,  -389,  -392,
  -393,  -395,  -376,  -391,  -377,  -378,  -379,  -494,  -382,  -384,
  -385,  -494,  -407,    -8,   -98,   -18,   -19,  -494,  -243,  -494,
  -259,  -494,  -494,   -50,  -220,  -221,  -345,  -494,   -52,  -347,
  -494,  -472,  -473,  -472,  -473,  -494,  -168,  -494,  -335,  -494,
  -337,  -492,  -493,  -235,  -239,  -494,  -466,  -494,  -467,   -45,
  -342,   -46,  -343,  -492,  -216,  -494,  -494,  -494,  -494,  -494,
   -37,  -494,  -228,  -232,  -494,  -492,  -492,  -263,   -57,   -67,
  -494,  -472,  -473,  -492,  -476,   -75,  -494,  -176,  -186,  -187,
  -494,  -492,  -492,  -254,  -255,  -239,  -494,  -494,  -312,  -459,
  -459,  -447,  -458,  -459,  -333,  -494,  -334,  -494,  -492,  -307,
  -492,  -274,  -308,  -309,  -310,  -277,  -494,  -280,  -494,  -494,
  -494,   -86,   -87,  -494,  -492,  -494,  -286,  -427,  -494,  -494,
  -494,  -492,  -492,  -440,  -494,  -459,  -459,  -459,  -439,  -445,
  -449,  -494,  -494,  -494,  -492,  -381,  -383,  -387,  -169,  -241,
  -494,  -494,   -24,  -172,   -25,  -173,   -51,   -26,  -174,   -53,
  -175,  -494,  -494,  -494,  -259,  -210,  -336,  -494,  -494,  -225,
  -240,  -494,  -217,  -218,  -492,  -492,  -483,  -494,  -494,  -233,
  -494,  -494,   -71,  -266,  -492,  -321,  -492,  -361,  -492,  -362,
  -363,  -316,  -317,  -494,  -325,  -326,  -328,  -494,  -258,  -494,
  -318,  -319,  -494,  -492,  -492,  -279,  -281,  -494,  -494,   -86,
   -89,  -476,  -494,  -492,  -494,  -429,  -289,  -494,  -494,  -483,
  -431,  -494,  -435,  -494,  -437,  -438,  -494,  -297,  -461,  -394,
  -397,  -398,  -399,  -400,  -494,  -242,   -23,  -171,  -494,  -338,
  -340,   -47,  -494,  -493,  -352,  -354,    -2,  -492,  -367,  -322,
  -494,  -494,  -365,  -459,  -257,  -271,  -494,  -272,  -494,  -494,
  -494,  -492,  -283,  -259,  -494,  -428,  -492,  -293,  -295,  -494,
  -459,  -459,  -459,  -494,  -450,  -448,  -440,  -396,  -219,  -227,
  -494,  -366,  -492,   -78,  -494,  -494,   -85,  -364,  -324,  -494,
  -275,  -278,  -492,  -492,  -287,  -494,  -430,  -494,  -433,  -434,
  -436,  -492,  -360,  -492,  -494,  -494,   -84,  -492,  -356,  -357,
  -358,  -494,  -290,  -459,  -494,  -359,  -494,  -472,  -473,  -476,
   -83,  -492,  -284,  -432,  -298,   -79,  -320 ]

clist = [
'26,293,300,336,112,112,349,452,466,281,281,522,526,388,395,2,497,26',
'26,530,368,463,26,26,26,299,304,672,314,631,26,256,263,265,314,199,675',
'641,97,207,241,241,241,115,115,270,284,644,401,406,107,187,26,309,269',
'814,662,26,26,739,796,26,724,112,240,240,240,260,264,596,296,267,301',
'651,655,328,328,112,640,328,643,742,614,350,514,516,517,373,543,593',
'329,330,593,295,333,379,334,539,26,541,331,35,26,26,26,26,26,677,458',
'461,612,499,502,101,505,743,332,507,548,596,328,328,328,328,558,744',
'368,600,660,814,602,35,274,274,591,375,376,377,378,357,359,833,398,366',
'338,753,540,806,603,340,238,252,253,671,542,681,816,307,615,616,508',
'306,469,666,639,299,351,675,271,352,380,101,186,448,472,473,848,659',
'728,790,354,355,302,112,750,361,557,98,26,26,26,26,26,410,364,769,26',
'26,26,35,683,684,759,385,386,810,26,35,392,392,305,387,393,396,656,413',
'414,411,786,1,,270,,,,,,,,,,,,,,,,,677,486,,,,,,,,,593,,281,,,,,,498',
'26,26,,,,,849,,644,26,,26,401,406,,866,26,,467,241,,,,314,14,,270,241',
'641,480,,270,35,35,,476,,802,26,,481,793,468,240,841,,,,511,,35,240',
'267,675,14,277,277,267,,281,,281,,686,260,,264,,,811,,812,,,26,26,,',
',,623,696,,,,,699,,,623,,,328,328,,,26,,,,709,,,716,,,,527,528,585,10',
'529,35,,546,,274,35,855,,,112,14,,677,112,600,602,465,470,14,,299,12',
',757,758,474,,35,10,,,,,853,,,,573,,,,,578,734,735,410,,736,115,,,12',
'115,592,,563,605,606,,564,801,,620,,,,,,,,351,,351,575,101,,,,579,762',
'764,765,,,,299,729,,,,593,,714,715,599,,10,601,,,14,14,26,822,10,804',
',,,,,,,410,,,,,14,12,296,,410,,,,26,12,281,,575,,,575,,,,682,,,26,26',
'847,,630,678,,,850,,623,,,26,,636,637,26,835,,,707,26,,,,,,648,,,26',
'650,,,,,658,,819,14,,,,277,14,10,10,,670,,,314,854,,,,828,,,,,26,26',
'10,,,14,26,12,12,,592,,838,839,840,,,,,,26,692,694,,,12,,697,,,,,26',
',,708,,,26,35,35,,752,,26,26,,711,538,351,538,767,35,,,863,35,,,720',
'721,35,,,10,299,652,652,,10,,,,,678,,,,667,392,717,,,,,,,12,,26,410',
'10,12,575,,,579,26,,,26,26,,,,782,747,328,112,,,,,26,12,328,,,,,26,35',
'748,,,,,623,774,,754,,,35,,,,,,,,776,,,,35,35,,809,,,,,,,26,,,,,,,,',
'410,783,,,,,789,,26,26,,,,,,,,,26,,575,575,,798,799,,,,,,,,,,281,,,35',
'35,,,,,,755,756,,,,760,35,,26,678,,14,14,856,,,,26,,,,538,26,821,14',
',,26,14,,,,,14,,328,299,832,,,,,,26,,,,,35,,829,,,,26,,,,842,,,,26,',
'410,35,35,,26,851,,,,,,35,,,,652,,,,861,,805,,,,,,,,14,,,,10,10,,,,',
',,14,,,,35,10,,,823,10,,,14,14,10,12,12,,35,,,,,35,,,,,12,,,,12,,,,',
'12,,35,,,,,,,,,,,35,,,,,,,,35,,,,,,35,,,,14,14,,,,,10,,,,,,773,14,,',
',,10,,,,,,,,,,,12,10,10,,,,,,,,,,12,,,13,,,,,,,,,12,12,14,,,,,,200,200',
',,,200,200,200,,,,14,14,13,275,275,,,,,,14,,,,10,10,,,,,,,,,200,,,10',
',200,200,,,200,,,,12,12,,,,,,14,,,,826,,12,,,,,,,,14,,,,,14,,,,,,10',
'13,,,,200,200,200,200,13,14,,,,,,,10,10,,,14,,12,,,,10,,14,,,,,,14,',
',,,12,12,,,,,,,,,12,,,,,,,,,,,10,,,,827,,,,,,,,,,10,,,,,10,,,,12,,,',
',,,13,13,200,200,200,10,,12,200,200,200,,12,,,208,10,,13,239,239,239',
',,10,,,,12,,10,,,,,290,291,292,,12,,,,,,,,12,,,239,239,,12,,,,,,,,,',
',,,,,,200,200,,,,,,,,200,,13,,,,275,13,,,,,,,,,,,297,303,,310,,,,,,',
',13,,,,,,,,,356,,358,358,362,365,358,,,,,,,,,,,,,,,,,,,,,200,200,,,',
',,537,,537,,,,,,,,,,,,,200,,,,,,,,,,,,,,,,,,,,,,389,239,397,239,,,412',
',,390,394,,,,,,,,,208,422,423,424,425,426,427,428,429,430,431,432,433',
'434,435,436,437,438,439,440,441,442,443,444,445,446,447,,,,297,,,,,239',
',239,,,,,239,,454,,456,,239,239,,457,,,,,,239,,,,,,,,,,,,,,,,,,,,200',
',,,,,,494,,,,,,,,,,464,,,,,,,200,,,,,,,,,,,,,,13,13,,,,,,,,,646,,,13',
',,,13,,,,,13,,,,,,,,,200,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,200,200,,,,239',
'200,,,,,,,,568,,,,,,13,,,,,,,,,,,239,13,412,586,397,,,200,,,,,,13,13',
',,,,,,,,,,,,,,,574,,,239,,,239,,239,,,,594,,,597,297,598,,,,,,,610,',
',,200,,,,,611,,239,200,,,13,13,,627,628,629,,,588,,,,,13,239,,,239,574',
',200,574,588,635,,,597,,,,,,588,588,,,,,,,,,297,,,,,,,,,,,,,13,,,,,',
',,,,,,,,,,,13,13,,,,,,,,688,13,239,,693,695,,,,,698,689,,700,,,,,,,705',
',,,,,,,239,,,,,,,13,,710,,824,,,239,,200,,,,,13,,594,,,13,,,,,,,,,,',
'239,,,,,13,,,,727,,,,,,,13,,,,,,,,13,,,239,,,13,,239,,,,390,574,,,,',
',,,725,730,,,,,,,,,,,,239,777,,,725,,725,,,775,,693,695,698,,,,,,,297',
',,,,,,,239,,,,,,,,,390,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,574,574,,,,,239',
',,,788,,,,792,815,,,777,,,,,,,,,,,,,,,,,,,,,,239,,,,,,,,,635,,,,,,,',
',,,239,,,,,,,,,635,,,,,,,,,,,,,,239,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,',
',,725,,,,,,,,,,,297,,,,,,,,,,,,,,,,,,725' ]
        racc_goto_table = arr = ::Array.new(2089, nil)
        idx = 0
        clist.each do |str|
          str.split(',', -1).each do |i|
            arr[idx] = i.to_i unless i.empty?
            idx += 1
          end
        end

clist = [
'35,48,20,76,45,45,44,55,30,49,49,72,72,22,22,2,3,35,35,75,44,33,35,35',
'35,52,52,79,106,4,35,32,32,32,106,24,102,133,8,16,50,50,50,47,47,2,40',
'107,31,31,12,12,35,100,37,134,42,35,35,73,101,35,5,45,27,27,27,53,53',
'137,24,36,50,74,74,24,24,45,104,24,104,5,57,80,105,105,105,10,81,56',
'14,14,56,82,14,10,8,43,35,43,83,41,35,35,35,35,35,104,31,31,56,51,51',
'78,51,84,85,51,125,137,24,24,24,24,125,86,44,54,87,134,54,41,41,41,34',
'14,14,14,14,122,122,88,20,122,89,90,91,92,34,93,29,29,29,94,95,96,97',
'98,34,34,99,71,58,77,103,52,41,102,39,67,25,78,13,109,111,112,113,114',
'115,116,120,121,68,45,42,123,124,11,35,35,35,35,35,45,126,127,35,35',
'35,41,128,129,131,2,2,132,35,41,50,50,69,16,16,16,75,24,24,16,6,1,,2',
',,,,,,,,,,,,,,,,104,48,,,,,,,,,56,,49,,,,,,48,35,35,,,,,5,,107,35,,35',
'31,31,,73,35,,50,50,,,,106,21,,2,50,133,40,,2,41,41,,37,,74,35,,37,104',
'27,27,79,,,,100,,41,27,36,102,21,21,21,36,,49,,49,,125,53,,53,,,104',
',104,,,35,35,,,,,31,33,,,,,33,,,31,,,24,24,,,35,,,,55,,,30,,,,14,14',
'20,15,8,41,,24,,41,41,4,,,45,21,,104,45,54,54,29,29,21,,52,18,,3,3,29',
',41,15,,,,,104,,,,32,,,,,32,105,105,45,,105,47,,,18,47,52,,12,48,48',
',12,72,,20,,,,,,,,41,,41,53,78,,,,53,105,105,105,,,,52,22,,,,56,,31',
'31,32,,15,32,,,21,21,35,72,15,3,,,,,,,,45,,,,,21,18,24,,45,,,,35,18',
'49,,53,,,53,,,,48,,,35,35,72,,24,106,,,75,,31,,,35,,2,2,35,3,,,76,35',
',,,,,2,,,35,2,,,,,2,,55,21,,,,21,21,15,15,,24,,,106,3,,,,105,,,,,35',
'35,15,,,21,35,18,18,,52,,105,105,105,,,,,,35,16,16,,,18,,16,,,,,35,',
',2,,,35,41,41,,20,,35,35,,2,21,41,21,44,41,,,105,41,,,2,2,41,,,15,52',
'78,78,,15,,,,,106,,,,78,50,27,,,,,,,18,,35,45,15,18,53,,,53,35,,,35',
'35,,,,48,50,24,45,,,,,35,18,24,,,,,35,41,14,,,,,31,2,,14,,,41,,,,,,',
',16,,,,41,41,,48,,,,,,,35,,,,,,,,,45,50,,,,,2,,35,35,,,,,,,,,35,,53',
'53,,2,2,,,,,,,,,,49,,,41,41,,,,,,78,78,,,,78,41,,35,106,,21,21,20,,',
',35,,,,21,35,2,21,,,35,21,,,,,21,,24,52,2,,,,,,35,,,,,41,,14,,,,35,',
',,2,,,,35,,45,41,41,,35,2,,,,,,41,,,,78,,,,2,,78,,,,,,,,21,,,,15,15',
',,,,,,21,,,,41,15,,,41,15,,,21,21,15,18,18,,41,,,,,41,,,,,18,,,,18,',
',,,18,,41,,,,,,,,,,,41,,,,,,,,41,,,,,,41,,,,21,21,,,,,15,,,,,,21,21',
',,,,15,,,,,,,,,,,18,15,15,,,,,,,,,,18,,,19,,,,,,,,,18,18,21,,,,,,19',
'19,,,,19,19,19,,,,21,21,19,19,19,,,,,,21,,,,15,15,,,,,,,,,19,,,15,,19',
'19,,,19,,,,18,18,,,,,,21,,,,21,,18,,,,,,,,21,,,,,21,,,,,,15,19,,,,19',
'19,19,19,19,21,,,,,,,15,15,,,21,,18,,,,15,,21,,,,,,21,,,,,18,18,,,,',
',,,,18,,,,,,,,,,,15,,,,15,,,,,,,,,,15,,,,,15,,,,18,,,,,,,19,19,19,19',
'19,15,,18,19,19,19,,18,,,26,15,,19,26,26,26,,,15,,,,18,,15,,,,,26,26',
'26,,18,,,,,,,,18,,,26,26,,18,,,,,,,,,,,,,,,,19,19,,,,,,,,19,,19,,,,19',
'19,,,,,,,,,,,9,9,,9,,,,,,,,19,,,,,,,,,9,,9,9,9,9,9,,,,,,,,,,,,,,,,,',
',,,19,19,,,,,,19,,19,,,,,,,,,,,,,19,,,,,,,,,,,,,,,,,,,,,,26,26,26,26',
',,26,,,23,23,,,,,,,,,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26,26',
'26,26,26,26,26,26,26,26,26,26,26,,,,9,,,,,26,,26,,,,,26,,23,,23,,26',
'26,,23,,,,,,26,,,,,,,,,,,,,,,,,,,,19,,,,,,,26,,,,,,,,,,9,,,,,,,19,,',
',,,,,,,,,,,19,19,,,,,,,,,19,,,19,,,,19,,,,,19,,,,,,,,,19,,,,,,,,,,,',
',,,,,,,,,,,,,,,,,,,19,19,,,,26,19,,,,,,,,23,,,,,,19,,,,,,,,,,,26,19',
'26,26,26,,,19,,,,,,19,19,,,,,,,,,,,,,,,,9,,,26,,,26,,26,,,,23,,,23,9',
'23,,,,,,,26,,,,19,,,,,23,,26,19,,,19,19,,26,26,26,,,9,,,,,19,26,,,26',
'9,,19,9,9,23,,,23,,,,,,9,9,,,,,,,,,9,,,,,,,,,,,,,19,,,,,,,,,,,,,,,,',
'19,19,,,,,,,,26,19,26,,26,26,,,,,26,23,,26,,,,,,,26,,,,,,,,26,,,,,,',
'19,,23,,19,,,26,,19,,,,,19,,23,,,19,,,,,,,,,,,26,,,,,19,,,,23,,,,,,',
'19,,,,,,,,19,,,26,,,19,,26,,,,23,9,,,,,,,,9,9,,,,,,,,,,,,26,26,,,9,',
'9,,,23,,26,26,26,,,,,,,9,,,,,,,,26,,,,,,,,,23,,,,,,,,,,,,,,,,,,,,,,',
',,,,,,,,,,9,9,,,,,26,,,,9,,,,9,23,,,26,,,,,,,,,,,,,,,,,,,,,,26,,,,,',
',,,23,,,,,,,,,,,26,,,,,,,,,23,,,,,,,,,,,,,,26,,,,,,,,,,,,,,,,,,,,,,',
',,,,,,,,,,,,9,,,,,,,,,,,9,,,,,,,,,,,,,,,,,,9' ]
        racc_goto_check = arr = ::Array.new(2089, nil)
        idx = 0
        clist.each do |str|
          str.split(',', -1).each do |i|
            arr[idx] = i.to_i unless i.empty?
            idx += 1
          end
        end

racc_goto_pointer = [
   nil,   219,    15,  -279,  -467,  -569,  -506,   nil,    35,  1227,
   -11,   184,    44,   165,    33,   367,    21,   nil,   390,   996,
   -51,   281,  -177,  1190,    18,    63,  1181,    42,   nil,   128,
  -249,  -146,     5,  -235,  -314,     0,    41,    24,   nil,   137,
    14,   101,  -479,  -241,   -59,    -2,   nil,    37,   -40,   -22,
    18,  -187,   -28,    41,  -331,  -235,  -361,  -389,   -96,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   104,   128,   155,
   nil,   105,  -318,  -589,  -454,  -315,   -59,  -376,   110,  -515,
    18,  -262,    42,    41,  -536,    56,  -530,  -405,  -661,    81,
  -521,  -193,  -609,    85,  -388,  -195,  -388,  -611,   101,  -147,
    -3,  -681,  -506,  -349,  -435,  -227,   -28,  -468,   nil,   -63,
   nil,   -87,   -87,  -656,  -355,  -454,  -549,   nil,   nil,   nil,
   109,   108,    64,   108,  -175,  -237,   116,  -488,  -350,  -350,
   nil,  -471,  -556,  -476,  -708,   nil,   nil,  -384 ]

racc_goto_default = [
   nil,   nil,   496,   nil,   nil,   740,   nil,     3,   nil,     4,
     5,   335,   nil,   nil,   nil,   204,    16,    11,   205,   289,
   nil,   203,   nil,   245,    15,   nil,    19,    20,    21,   nil,
    25,   626,   nil,   nil,   nil,   280,    29,   nil,    31,    34,
    33,   201,   536,   nil,   114,   404,   113,    69,   nil,    42,
   298,   nil,   242,   402,   576,   449,   243,   nil,   nil,   258,
   451,    43,    44,    45,    46,    47,    48,    49,   nil,   259,
    55,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   523,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,   nil,
   337,   nil,   311,   312,   313,   nil,   642,   315,   237,   nil,
   408,   nil,   nil,   nil,   nil,   nil,   nil,    68,    70,    71,
    72,   nil,   nil,   nil,   nil,   553,   nil,   nil,   nil,   nil,
   367,   674,   676,   321,   680,   324,   327,   250 ]

racc_reduce_table = [
  0, 0, :racc_error,
  1, 138, :_reduce_1,
  4, 140, :_reduce_2,
  2, 139, :_reduce_3,
  1, 144, :_reduce_4,
  1, 144, :_reduce_5,
  3, 144, :_reduce_6,
  0, 162, :_reduce_7,
  4, 147, :_reduce_8,
  3, 147, :_reduce_9,
  3, 147, :_reduce_none,
  3, 147, :_reduce_11,
  2, 147, :_reduce_12,
  3, 147, :_reduce_13,
  3, 147, :_reduce_14,
  3, 147, :_reduce_15,
  3, 147, :_reduce_16,
  3, 147, :_reduce_none,
  4, 147, :_reduce_none,
  4, 147, :_reduce_none,
  3, 147, :_reduce_20,
  3, 147, :_reduce_21,
  3, 147, :_reduce_22,
  6, 147, :_reduce_none,
  5, 147, :_reduce_24,
  5, 147, :_reduce_none,
  5, 147, :_reduce_none,
  3, 147, :_reduce_none,
  3, 147, :_reduce_28,
  3, 147, :_reduce_29,
  3, 147, :_reduce_30,
  1, 147, :_reduce_none,
  1, 161, :_reduce_none,
  3, 161, :_reduce_33,
  3, 161, :_reduce_34,
  2, 161, :_reduce_35,
  2, 161, :_reduce_36,
  1, 161, :_reduce_none,
  1, 151, :_reduce_none,
  1, 153, :_reduce_none,
  1, 153, :_reduce_none,
  2, 153, :_reduce_41,
  2, 153, :_reduce_42,
  2, 153, :_reduce_43,
  1, 165, :_reduce_none,
  4, 165, :_reduce_none,
  4, 165, :_reduce_none,
  4, 170, :_reduce_none,
  2, 164, :_reduce_48,
  3, 164, :_reduce_none,
  4, 164, :_reduce_50,
  5, 164, :_reduce_none,
  4, 164, :_reduce_52,
  5, 164, :_reduce_none,
  2, 164, :_reduce_54,
  2, 164, :_reduce_55,
  1, 154, :_reduce_56,
  3, 154, :_reduce_57,
  1, 174, :_reduce_58,
  3, 174, :_reduce_59,
  1, 173, :_reduce_60,
  2, 173, :_reduce_61,
  3, 173, :_reduce_62,
  2, 173, :_reduce_63,
  2, 173, :_reduce_64,
  1, 173, :_reduce_65,
  1, 176, :_reduce_66,
  3, 176, :_reduce_67,
  2, 175, :_reduce_68,
  3, 175, :_reduce_69,
  1, 177, :_reduce_70,
  4, 177, :_reduce_none,
  3, 177, :_reduce_none,
  3, 177, :_reduce_none,
  3, 177, :_reduce_none,
  3, 177, :_reduce_none,
  2, 177, :_reduce_none,
  1, 177, :_reduce_none,
  1, 152, :_reduce_78,
  4, 152, :_reduce_79,
  3, 152, :_reduce_80,
  3, 152, :_reduce_81,
  3, 152, :_reduce_82,
  3, 152, :_reduce_none,
  2, 152, :_reduce_none,
  1, 152, :_reduce_none,
  1, 179, :_reduce_none,
  2, 180, :_reduce_87,
  1, 180, :_reduce_88,
  3, 180, :_reduce_89,
  1, 181, :_reduce_none,
  1, 181, :_reduce_none,
  1, 181, :_reduce_none,
  1, 181, :_reduce_93,
  1, 181, :_reduce_94,
  1, 149, :_reduce_95,
  1, 149, :_reduce_96,
  1, 150, :_reduce_97,
  3, 150, :_reduce_98,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 182, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  1, 183, :_reduce_none,
  3, 163, :_reduce_168,
  5, 163, :_reduce_none,
  3, 163, :_reduce_170,
  6, 163, :_reduce_171,
  5, 163, :_reduce_172,
  5, 163, :_reduce_none,
  5, 163, :_reduce_none,
  5, 163, :_reduce_none,
  4, 163, :_reduce_none,
  3, 163, :_reduce_none,
  3, 163, :_reduce_178,
  3, 163, :_reduce_179,
  3, 163, :_reduce_180,
  3, 163, :_reduce_181,
  3, 163, :_reduce_182,
  3, 163, :_reduce_183,
  3, 163, :_reduce_184,
  3, 163, :_reduce_185,
  4, 163, :_reduce_none,
  4, 163, :_reduce_none,
  2, 163, :_reduce_188,
  2, 163, :_reduce_189,
  3, 163, :_reduce_190,
  3, 163, :_reduce_191,
  3, 163, :_reduce_192,
  3, 163, :_reduce_193,
  3, 163, :_reduce_194,
  3, 163, :_reduce_195,
  3, 163, :_reduce_196,
  3, 163, :_reduce_197,
  3, 163, :_reduce_198,
  3, 163, :_reduce_199,
  3, 163, :_reduce_200,
  3, 163, :_reduce_201,
  3, 163, :_reduce_202,
  2, 163, :_reduce_203,
  2, 163, :_reduce_204,
  3, 163, :_reduce_205,
  3, 163, :_reduce_206,
  3, 163, :_reduce_207,
  3, 163, :_reduce_208,
  3, 163, :_reduce_209,
  5, 163, :_reduce_210,
  1, 163, :_reduce_none,
  1, 160, :_reduce_none,
  1, 157, :_reduce_213,
  2, 157, :_reduce_214,
  2, 157, :_reduce_215,
  3, 190, :_reduce_216,
  4, 190, :_reduce_217,
  4, 190, :_reduce_none,
  6, 190, :_reduce_none,
  1, 191, :_reduce_none,
  1, 191, :_reduce_none,
  1, 166, :_reduce_222,
  2, 166, :_reduce_223,
  2, 166, :_reduce_224,
  4, 166, :_reduce_225,
  1, 166, :_reduce_226,
  4, 194, :_reduce_none,
  1, 194, :_reduce_none,
  0, 196, :_reduce_229,
  2, 169, :_reduce_230,
  1, 195, :_reduce_none,
  2, 195, :_reduce_232,
  3, 195, :_reduce_233,
  2, 193, :_reduce_234,
  2, 192, :_reduce_235,
  1, 192, :_reduce_236,
  1, 187, :_reduce_237,
  2, 187, :_reduce_238,
  3, 187, :_reduce_239,
  4, 187, :_reduce_240,
  3, 159, :_reduce_241,
  4, 159, :_reduce_none,
  2, 159, :_reduce_243,
  1, 186, :_reduce_none,
  1, 186, :_reduce_none,
  1, 186, :_reduce_none,
  1, 186, :_reduce_none,
  1, 186, :_reduce_none,
  1, 186, :_reduce_none,
  1, 186, :_reduce_none,
  1, 186, :_reduce_none,
  1, 186, :_reduce_none,
  0, 219, :_reduce_253,
  4, 186, :_reduce_254,
  4, 186, :_reduce_255,
  3, 186, :_reduce_256,
  3, 186, :_reduce_257,
  2, 186, :_reduce_258,
  4, 186, :_reduce_259,
  3, 186, :_reduce_260,
  3, 186, :_reduce_261,
  1, 186, :_reduce_262,
  4, 186, :_reduce_263,
  3, 186, :_reduce_264,
  1, 186, :_reduce_265,
  5, 186, :_reduce_266,
  2, 186, :_reduce_267,
  1, 186, :_reduce_none,
  2, 186, :_reduce_269,
  2, 186, :_reduce_270,
  6, 186, :_reduce_271,
  6, 186, :_reduce_272,
  0, 220, :_reduce_273,
  0, 221, :_reduce_274,
  7, 186, :_reduce_275,
  0, 222, :_reduce_276,
  0, 223, :_reduce_277,
  7, 186, :_reduce_278,
  5, 186, :_reduce_279,
  4, 186, :_reduce_280,
  5, 186, :_reduce_281,
  0, 224, :_reduce_282,
  0, 225, :_reduce_283,
  9, 186, :_reduce_none,
  0, 226, :_reduce_285,
  0, 227, :_reduce_286,
  7, 186, :_reduce_287,
  0, 228, :_reduce_288,
  0, 229, :_reduce_289,
  8, 186, :_reduce_290,
  0, 230, :_reduce_291,
  0, 231, :_reduce_292,
  6, 186, :_reduce_293,
  0, 232, :_reduce_294,
  6, 186, :_reduce_295,
  0, 233, :_reduce_296,
  0, 234, :_reduce_297,
  9, 186, :_reduce_298,
  1, 186, :_reduce_299,
  1, 186, :_reduce_300,
  1, 186, :_reduce_301,
  1, 186, :_reduce_none,
  1, 156, :_reduce_none,
  1, 209, :_reduce_none,
  1, 209, :_reduce_none,
  1, 209, :_reduce_none,
  2, 209, :_reduce_none,
  1, 211, :_reduce_none,
  1, 211, :_reduce_none,
  1, 211, :_reduce_none,
  2, 208, :_reduce_311,
  3, 235, :_reduce_312,
  2, 235, :_reduce_313,
  1, 235, :_reduce_none,
  1, 235, :_reduce_none,
  3, 236, :_reduce_316,
  3, 236, :_reduce_317,
  1, 210, :_reduce_318,
  0, 238, :_reduce_319,
  6, 210, :_reduce_320,
  1, 142, :_reduce_none,
  2, 142, :_reduce_322,
  1, 213, :_reduce_323,
  6, 237, :_reduce_324,
  4, 237, :_reduce_325,
  4, 237, :_reduce_326,
  2, 237, :_reduce_327,
  4, 237, :_reduce_328,
  2, 237, :_reduce_329,
  2, 237, :_reduce_330,
  1, 237, :_reduce_331,
  1, 240, :_reduce_332,
  3, 240, :_reduce_333,
  3, 244, :_reduce_334,
  1, 171, :_reduce_none,
  2, 171, :_reduce_336,
  1, 171, :_reduce_337,
  3, 171, :_reduce_338,
  0, 246, :_reduce_339,
  5, 245, :_reduce_340,
  2, 167, :_reduce_341,
  4, 167, :_reduce_none,
  4, 167, :_reduce_none,
  2, 207, :_reduce_344,
  4, 207, :_reduce_345,
  3, 207, :_reduce_346,
  4, 207, :_reduce_347,
  3, 207, :_reduce_348,
  2, 207, :_reduce_349,
  1, 207, :_reduce_350,
  0, 248, :_reduce_351,
  5, 206, :_reduce_352,
  0, 249, :_reduce_353,
  5, 206, :_reduce_354,
  0, 251, :_reduce_355,
  6, 212, :_reduce_356,
  1, 250, :_reduce_357,
  1, 250, :_reduce_none,
  6, 141, :_reduce_359,
  0, 141, :_reduce_360,
  1, 252, :_reduce_361,
  1, 252, :_reduce_none,
  1, 252, :_reduce_none,
  2, 253, :_reduce_364,
  1, 253, :_reduce_365,
  2, 143, :_reduce_366,
  1, 143, :_reduce_none,
  1, 198, :_reduce_368,
  1, 198, :_reduce_369,
  1, 198, :_reduce_none,
  1, 199, :_reduce_371,
  1, 256, :_reduce_none,
  2, 256, :_reduce_none,
  3, 257, :_reduce_374,
  1, 257, :_reduce_375,
  3, 200, :_reduce_376,
  3, 201, :_reduce_377,
  3, 202, :_reduce_378,
  3, 202, :_reduce_379,
  1, 260, :_reduce_380,
  3, 260, :_reduce_381,
  1, 261, :_reduce_382,
  2, 261, :_reduce_383,
  3, 203, :_reduce_384,
  3, 203, :_reduce_385,
  1, 263, :_reduce_386,
  3, 263, :_reduce_387,
  1, 258, :_reduce_388,
  2, 258, :_reduce_389,
  1, 259, :_reduce_390,
  2, 259, :_reduce_391,
  1, 262, :_reduce_392,
  0, 265, :_reduce_393,
  3, 262, :_reduce_394,
  0, 266, :_reduce_395,
  4, 262, :_reduce_396,
  1, 264, :_reduce_397,
  1, 264, :_reduce_398,
  1, 264, :_reduce_399,
  1, 264, :_reduce_none,
  2, 184, :_reduce_401,
  1, 184, :_reduce_none,
  1, 267, :_reduce_none,
  1, 267, :_reduce_none,
  1, 267, :_reduce_none,
  1, 267, :_reduce_none,
  3, 255, :_reduce_407,
  1, 254, :_reduce_none,
  1, 254, :_reduce_none,
  2, 254, :_reduce_none,
  2, 254, :_reduce_none,
  1, 178, :_reduce_412,
  1, 178, :_reduce_413,
  1, 178, :_reduce_414,
  1, 178, :_reduce_415,
  1, 178, :_reduce_416,
  1, 178, :_reduce_417,
  1, 178, :_reduce_418,
  1, 178, :_reduce_419,
  1, 178, :_reduce_420,
  1, 178, :_reduce_421,
  1, 178, :_reduce_422,
  1, 204, :_reduce_423,
  1, 155, :_reduce_424,
  1, 158, :_reduce_none,
  1, 158, :_reduce_none,
  1, 214, :_reduce_427,
  3, 214, :_reduce_428,
  2, 214, :_reduce_429,
  4, 216, :_reduce_430,
  2, 216, :_reduce_431,
  6, 268, :_reduce_432,
  4, 268, :_reduce_433,
  4, 268, :_reduce_434,
  2, 268, :_reduce_435,
  4, 268, :_reduce_436,
  2, 268, :_reduce_437,
  2, 268, :_reduce_438,
  1, 268, :_reduce_439,
  0, 268, :_reduce_440,
  1, 270, :_reduce_441,
  1, 270, :_reduce_442,
  1, 270, :_reduce_443,
  1, 270, :_reduce_444,
  1, 270, :_reduce_445,
  1, 239, :_reduce_446,
  3, 239, :_reduce_447,
  3, 271, :_reduce_448,
  1, 269, :_reduce_449,
  3, 269, :_reduce_450,
  1, 272, :_reduce_none,
  1, 272, :_reduce_none,
  2, 241, :_reduce_453,
  1, 241, :_reduce_454,
  1, 273, :_reduce_none,
  1, 273, :_reduce_none,
  2, 243, :_reduce_457,
  2, 242, :_reduce_458,
  0, 242, :_reduce_459,
  1, 217, :_reduce_460,
  4, 217, :_reduce_461,
  1, 205, :_reduce_462,
  2, 205, :_reduce_463,
  2, 205, :_reduce_464,
  1, 189, :_reduce_465,
  3, 189, :_reduce_466,
  3, 274, :_reduce_467,
  2, 274, :_reduce_468,
  1, 172, :_reduce_none,
  1, 172, :_reduce_none,
  1, 172, :_reduce_none,
  1, 168, :_reduce_none,
  1, 168, :_reduce_none,
  1, 168, :_reduce_none,
  1, 168, :_reduce_none,
  1, 247, :_reduce_none,
  1, 247, :_reduce_none,
  1, 247, :_reduce_none,
  1, 218, :_reduce_none,
  1, 218, :_reduce_none,
  0, 145, :_reduce_none,
  1, 145, :_reduce_none,
  0, 185, :_reduce_none,
  1, 185, :_reduce_none,
  0, 188, :_reduce_none,
  1, 188, :_reduce_none,
  1, 188, :_reduce_none,
  1, 215, :_reduce_none,
  1, 215, :_reduce_none,
  1, 148, :_reduce_none,
  2, 148, :_reduce_none,
  0, 146, :_reduce_none,
  0, 197, :_reduce_none ]

racc_reduce_n = 494

racc_shift_n = 867

racc_token_table = {
  false => 0,
  :error => 1,
  :CLASS => 2,
  :MODULE => 3,
  :DEF => 4,
  :UNDEF => 5,
  :BEGIN => 6,
  :RESCUE => 7,
  :ENSURE => 8,
  :END => 9,
  :IF => 10,
  :UNLESS => 11,
  :THEN => 12,
  :ELSIF => 13,
  :ELSE => 14,
  :CASE => 15,
  :WHEN => 16,
  :WHILE => 17,
  :UNTIL => 18,
  :FOR => 19,
  :BREAK => 20,
  :NEXT => 21,
  :REDO => 22,
  :RETRY => 23,
  :IN => 24,
  :DO => 25,
  :DO_COND => 26,
  :DO_BLOCK => 27,
  :RETURN => 28,
  :YIELD => 29,
  :SUPER => 30,
  :SELF => 31,
  :NIL => 32,
  :TRUE => 33,
  :FALSE => 34,
  :AND => 35,
  :OR => 36,
  :NOT => 37,
  :IF_MOD => 38,
  :UNLESS_MOD => 39,
  :WHILE_MOD => 40,
  :UNTIL_MOD => 41,
  :RESCUE_MOD => 42,
  :ALIAS => 43,
  :DEFINED => 44,
  :klBEGIN => 45,
  :klEND => 46,
  :LINE => 47,
  :FILE => 48,
  :IDENTIFIER => 49,
  :FID => 50,
  :GVAR => 51,
  :IVAR => 52,
  :CONSTANT => 53,
  :CVAR => 54,
  :NTH_REF => 55,
  :BACK_REF => 56,
  :STRING_CONTENT => 57,
  :INTEGER => 58,
  :FLOAT => 59,
  :REGEXP_END => 60,
  "+@" => 61,
  "-@" => 62,
  "-@NUM" => 63,
  "**" => 64,
  "<=>" => 65,
  "==" => 66,
  "===" => 67,
  "!=" => 68,
  ">=" => 69,
  "<=" => 70,
  "&&" => 71,
  "||" => 72,
  "=~" => 73,
  "!~" => 74,
  "." => 75,
  ".." => 76,
  "..." => 77,
  "[]" => 78,
  "[]=" => 79,
  "<<" => 80,
  ">>" => 81,
  "::" => 82,
  "::@" => 83,
  :OP_ASGN => 84,
  "=>" => 85,
  :PAREN_BEG => 86,
  "(" => 87,
  ")" => 88,
  :tLPAREN_ARG => 89,
  :ARRAY_BEG => 90,
  "]" => 91,
  :tLBRACE => 92,
  :tLBRACE_ARG => 93,
  :SPLAT => 94,
  "*" => 95,
  "&@" => 96,
  "&" => 97,
  "~" => 98,
  "%" => 99,
  "/" => 100,
  "+" => 101,
  "-" => 102,
  "<" => 103,
  ">" => 104,
  "|" => 105,
  "!" => 106,
  "^" => 107,
  :LCURLY => 108,
  "}" => 109,
  :BACK_REF2 => 110,
  :SYMBOL_BEG => 111,
  :STRING_BEG => 112,
  :XSTRING_BEG => 113,
  :REGEXP_BEG => 114,
  :WORDS_BEG => 115,
  :AWORDS_BEG => 116,
  :STRING_DBEG => 117,
  :STRING_DVAR => 118,
  :STRING_END => 119,
  :STRING => 120,
  :SYMBOL => 121,
  "\\n" => 122,
  "?" => 123,
  ":" => 124,
  "," => 125,
  :SPACE => 126,
  ";" => 127,
  :LABEL => 128,
  :LAMBDA => 129,
  :LAMBEG => 130,
  :DO_LAMBDA => 131,
  "=" => 132,
  :LOWEST => 133,
  "[@" => 134,
  "[" => 135,
  "{" => 136 }

racc_nt_base = 137

racc_use_result_var = true

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

Racc_token_to_s_table = [
  "$end",
  "error",
  "CLASS",
  "MODULE",
  "DEF",
  "UNDEF",
  "BEGIN",
  "RESCUE",
  "ENSURE",
  "END",
  "IF",
  "UNLESS",
  "THEN",
  "ELSIF",
  "ELSE",
  "CASE",
  "WHEN",
  "WHILE",
  "UNTIL",
  "FOR",
  "BREAK",
  "NEXT",
  "REDO",
  "RETRY",
  "IN",
  "DO",
  "DO_COND",
  "DO_BLOCK",
  "RETURN",
  "YIELD",
  "SUPER",
  "SELF",
  "NIL",
  "TRUE",
  "FALSE",
  "AND",
  "OR",
  "NOT",
  "IF_MOD",
  "UNLESS_MOD",
  "WHILE_MOD",
  "UNTIL_MOD",
  "RESCUE_MOD",
  "ALIAS",
  "DEFINED",
  "klBEGIN",
  "klEND",
  "LINE",
  "FILE",
  "IDENTIFIER",
  "FID",
  "GVAR",
  "IVAR",
  "CONSTANT",
  "CVAR",
  "NTH_REF",
  "BACK_REF",
  "STRING_CONTENT",
  "INTEGER",
  "FLOAT",
  "REGEXP_END",
  "\"+@\"",
  "\"-@\"",
  "\"-@NUM\"",
  "\"**\"",
  "\"<=>\"",
  "\"==\"",
  "\"===\"",
  "\"!=\"",
  "\">=\"",
  "\"<=\"",
  "\"&&\"",
  "\"||\"",
  "\"=~\"",
  "\"!~\"",
  "\".\"",
  "\"..\"",
  "\"...\"",
  "\"[]\"",
  "\"[]=\"",
  "\"<<\"",
  "\">>\"",
  "\"::\"",
  "\"::@\"",
  "OP_ASGN",
  "\"=>\"",
  "PAREN_BEG",
  "\"(\"",
  "\")\"",
  "tLPAREN_ARG",
  "ARRAY_BEG",
  "\"]\"",
  "tLBRACE",
  "tLBRACE_ARG",
  "SPLAT",
  "\"*\"",
  "\"&@\"",
  "\"&\"",
  "\"~\"",
  "\"%\"",
  "\"/\"",
  "\"+\"",
  "\"-\"",
  "\"<\"",
  "\">\"",
  "\"|\"",
  "\"!\"",
  "\"^\"",
  "LCURLY",
  "\"}\"",
  "BACK_REF2",
  "SYMBOL_BEG",
  "STRING_BEG",
  "XSTRING_BEG",
  "REGEXP_BEG",
  "WORDS_BEG",
  "AWORDS_BEG",
  "STRING_DBEG",
  "STRING_DVAR",
  "STRING_END",
  "STRING",
  "SYMBOL",
  "\"\\\\n\"",
  "\"?\"",
  "\":\"",
  "\",\"",
  "SPACE",
  "\";\"",
  "LABEL",
  "LAMBDA",
  "LAMBEG",
  "DO_LAMBDA",
  "\"=\"",
  "LOWEST",
  "\"[@\"",
  "\"[\"",
  "\"{\"",
  "$start",
  "target",
  "compstmt",
  "bodystmt",
  "opt_rescue",
  "opt_else",
  "opt_ensure",
  "stmts",
  "opt_terms",
  "none",
  "stmt",
  "terms",
  "fitem",
  "undef_list",
  "expr_value",
  "lhs",
  "command_call",
  "mlhs",
  "var_lhs",
  "primary_value",
  "aref_args",
  "backref",
  "mrhs",
  "arg_value",
  "expr",
  "@1",
  "arg",
  "command",
  "block_command",
  "call_args",
  "block_call",
  "operation2",
  "command_args",
  "cmd_brace_block",
  "opt_block_var",
  "operation",
  "mlhs_basic",
  "mlhs_entry",
  "mlhs_head",
  "mlhs_item",
  "mlhs_node",
  "variable",
  "cname",
  "cpath",
  "fname",
  "op",
  "reswords",
  "symbol",
  "opt_nl",
  "primary",
  "args",
  "trailer",
  "assocs",
  "paren_args",
  "opt_paren_args",
  "opt_block_arg",
  "block_arg",
  "call_args2",
  "open_args",
  "@2",
  "none_block_pass",
  "literal",
  "strings",
  "xstring",
  "regexp",
  "words",
  "awords",
  "var_ref",
  "assoc_list",
  "brace_block",
  "method_call",
  "lambda",
  "then",
  "if_tail",
  "do",
  "case_body",
  "block_var",
  "superclass",
  "term",
  "f_arglist",
  "singleton",
  "dot_or_colon",
  "@3",
  "@4",
  "@5",
  "@6",
  "@7",
  "@8",
  "@9",
  "@10",
  "@11",
  "@12",
  "@13",
  "@14",
  "@15",
  "@16",
  "@17",
  "@18",
  "f_larglist",
  "lambda_body",
  "block_var_args",
  "@19",
  "f_arg",
  "f_block_optarg",
  "f_rest_arg",
  "opt_f_block_arg",
  "f_block_arg",
  "f_block_opt",
  "do_block",
  "@20",
  "operation3",
  "@21",
  "@22",
  "cases",
  "@23",
  "exc_list",
  "exc_var",
  "numeric",
  "dsym",
  "string",
  "string1",
  "string_contents",
  "xstring_contents",
  "word_list",
  "word",
  "string_content",
  "qword_list",
  "string_dvar",
  "@24",
  "@25",
  "sym",
  "f_args",
  "f_optarg",
  "f_norm_arg",
  "f_opt",
  "restarg_mark",
  "blkarg_mark",
  "assoc" ]

Racc_debug_parser = false

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

# reduce 0 omitted

def _reduce_1(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_2(val, _values, result)
      result = new_body val[0], val[1], val[2], val[3]
    
    result
end

def _reduce_3(val, _values, result)
      comp = new_compstmt val[0]
      if comp and comp[0] == :begin and comp.size == 2
        result = comp[1]
        result.line = comp.line
      else
        result = comp
      end
    
    result
end

def _reduce_4(val, _values, result)
      result = new_block
    
    result
end

def _reduce_5(val, _values, result)
      result = new_block val[0]
    
    result
end

def _reduce_6(val, _values, result)
      val[0] << val[2]
      result = val[0]
    
    result
end

def _reduce_7(val, _values, result)
      @lex_state = :expr_fname
    
    result
end

def _reduce_8(val, _values, result)
      result = s(:alias, val[1], val[3])
    
    result
end

def _reduce_9(val, _values, result)
      result = s(:valias, val[1].intern, val[2].intern)
    
    result
end

# reduce 10 omitted

def _reduce_11(val, _values, result)
      result = s(:valias, val[1].intern, val[2].intern)
    
    result
end

def _reduce_12(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_13(val, _values, result)
      result = new_if val[2], val[0], nil
    
    result
end

def _reduce_14(val, _values, result)
      result = new_if val[2], nil, val[0]
    
    result
end

def _reduce_15(val, _values, result)
      result = s(:while, val[2], val[0], true)
    
    result
end

def _reduce_16(val, _values, result)
      result = s(:until, val[2], val[0], true)
    
    result
end

# reduce 17 omitted

# reduce 18 omitted

# reduce 19 omitted

def _reduce_20(val, _values, result)
      result = new_assign val[0], val[2]
    
    result
end

def _reduce_21(val, _values, result)
      result = s(:masgn, val[0], s(:to_ary, val[2]))
    
    result
end

def _reduce_22(val, _values, result)
      result = new_op_asgn val[1].intern, val[0], val[2]
    
    result
end

# reduce 23 omitted

def _reduce_24(val, _values, result)
      result = s(:op_asgn2, val[0], "#{val[2]}=".intern, val[3].intern, val[4])
    
    result
end

# reduce 25 omitted

# reduce 26 omitted

# reduce 27 omitted

def _reduce_28(val, _values, result)
      result = new_assign val[0], s(:svalue, val[2])
    
    result
end

def _reduce_29(val, _values, result)
      result = s(:masgn, val[0], s(:to_ary, val[2]))
    
    result
end

def _reduce_30(val, _values, result)
      result = s(:masgn, val[0], val[2])
    
    result
end

# reduce 31 omitted

# reduce 32 omitted

def _reduce_33(val, _values, result)
      result = s(:and, val[0], val[2])
      result.line = val[0].line
    
    result
end

def _reduce_34(val, _values, result)
      result = s(:or, val[0], val[2])
      result.line = val[0].line
    
    result
end

def _reduce_35(val, _values, result)
      result = s(:not, val[1])
      result.line = val[1].line
    
    result
end

def _reduce_36(val, _values, result)
      result = s(:not, val[1])
    
    result
end

# reduce 37 omitted

# reduce 38 omitted

# reduce 39 omitted

# reduce 40 omitted

def _reduce_41(val, _values, result)
      args = val[1]
      args = args[1] if args.size == 2
      result = s(:return, args)
    
    result
end

def _reduce_42(val, _values, result)
      args = val[1]
      args = args[1] if args.size == 2
      result = s(:break, args)
    
    result
end

def _reduce_43(val, _values, result)
      args = val[1]
      args = args[1] if args.size == 2
      result = s(:next, args)
    
    result
end

# reduce 44 omitted

# reduce 45 omitted

# reduce 46 omitted

# reduce 47 omitted

def _reduce_48(val, _values, result)
      result = new_call nil, val[0].intern, val[1]
    
    result
end

# reduce 49 omitted

def _reduce_50(val, _values, result)
      result = new_call val[0], val[2].intern, val[3]
    
    result
end

# reduce 51 omitted

def _reduce_52(val, _values, result)
      result = "result = ['call', val[0], val[2], val[3]];"
    
    result
end

# reduce 53 omitted

def _reduce_54(val, _values, result)
      result = new_super val[1]
    
    result
end

def _reduce_55(val, _values, result)
      result = new_yield val[1]
    
    result
end

def _reduce_56(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_57(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_58(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_59(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_60(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_61(val, _values, result)
      result = val[0] << val[1]
    
    result
end

def _reduce_62(val, _values, result)
      result = val[0] << s(:splat, val[2])
    
    result
end

def _reduce_63(val, _values, result)
      result = val[0] << s(:splat)
    
    result
end

def _reduce_64(val, _values, result)
      result = s(:array, s(:splat, val[1]))
    
    result
end

def _reduce_65(val, _values, result)
      result = s(:array, s(:splat))
    
    result
end

def _reduce_66(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_67(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_68(val, _values, result)
      result = s(:array, val[0])
    
    result
end

def _reduce_69(val, _values, result)
      result = val[0] << val[1]
    
    result
end

def _reduce_70(val, _values, result)
      result = new_assignable val[0]
    
    result
end

# reduce 71 omitted

# reduce 72 omitted

# reduce 73 omitted

# reduce 74 omitted

# reduce 75 omitted

# reduce 76 omitted

# reduce 77 omitted

def _reduce_78(val, _values, result)
      result = new_assignable val[0]
    
    result
end

def _reduce_79(val, _values, result)
      args = val[2]
      args[0] = :arglist if args[0] == :array
      result = s(:attrasgn, val[0], :[]=, args)
    
    result
end

def _reduce_80(val, _values, result)
      result = s(:attrasgn, val[0], "#{val[2]}=".intern, s(:arglist))
    
    result
end

def _reduce_81(val, _values, result)
      result = s(:attrasgn, val[0], "#{val[2]}=".intern, s(:arglist))
    
    result
end

def _reduce_82(val, _values, result)
      result = s(:attrasgn, val[0], "#{val[2]}=".intern, s(:arglist))
    
    result
end

# reduce 83 omitted

# reduce 84 omitted

# reduce 85 omitted

# reduce 86 omitted

def _reduce_87(val, _values, result)
      result = s(:colon3, val[1].intern)
    
    result
end

def _reduce_88(val, _values, result)
      result = val[0].intern
    
    result
end

def _reduce_89(val, _values, result)
      result = s(:colon2, val[0], val[2].intern)
    
    result
end

# reduce 90 omitted

# reduce 91 omitted

# reduce 92 omitted

def _reduce_93(val, _values, result)
      @lex_state = :expr_end
      result = val[0]
    
    result
end

def _reduce_94(val, _values, result)
      @lex_state = :expr_end
      result = val[0]
    
    result
end

def _reduce_95(val, _values, result)
      result = s(:lit, val[0].intern)
    
    result
end

def _reduce_96(val, _values, result)
      result = s(:lit, val[0])
    
    result
end

def _reduce_97(val, _values, result)
      result = s(:undef, val[0])
    
    result
end

def _reduce_98(val, _values, result)
      result = val[0] << val[2]
    
    result
end

# reduce 99 omitted

# reduce 100 omitted

# reduce 101 omitted

# reduce 102 omitted

# reduce 103 omitted

# reduce 104 omitted

# reduce 105 omitted

# reduce 106 omitted

# reduce 107 omitted

# reduce 108 omitted

# reduce 109 omitted

# reduce 110 omitted

# reduce 111 omitted

# reduce 112 omitted

# reduce 113 omitted

# reduce 114 omitted

# reduce 115 omitted

# reduce 116 omitted

# reduce 117 omitted

# reduce 118 omitted

# reduce 119 omitted

# reduce 120 omitted

# reduce 121 omitted

# reduce 122 omitted

# reduce 123 omitted

# reduce 124 omitted

# reduce 125 omitted

# reduce 126 omitted

# reduce 127 omitted

# reduce 128 omitted

# reduce 129 omitted

# reduce 130 omitted

# reduce 131 omitted

# reduce 132 omitted

# reduce 133 omitted

# reduce 134 omitted

# reduce 135 omitted

# reduce 136 omitted

# reduce 137 omitted

# reduce 138 omitted

# reduce 139 omitted

# reduce 140 omitted

# reduce 141 omitted

# reduce 142 omitted

# reduce 143 omitted

# reduce 144 omitted

# reduce 145 omitted

# reduce 146 omitted

# reduce 147 omitted

# reduce 148 omitted

# reduce 149 omitted

# reduce 150 omitted

# reduce 151 omitted

# reduce 152 omitted

# reduce 153 omitted

# reduce 154 omitted

# reduce 155 omitted

# reduce 156 omitted

# reduce 157 omitted

# reduce 158 omitted

# reduce 159 omitted

# reduce 160 omitted

# reduce 161 omitted

# reduce 162 omitted

# reduce 163 omitted

# reduce 164 omitted

# reduce 165 omitted

# reduce 166 omitted

# reduce 167 omitted

def _reduce_168(val, _values, result)
      result = new_assign val[0], val[2]
    
    result
end

# reduce 169 omitted

def _reduce_170(val, _values, result)
      result = new_op_asgn val[1].intern, val[0], val[2]
    
    result
end

def _reduce_171(val, _values, result)
      args = val[2]
      args[0] = :arglist if args[0] == :array
      result = s(:op_asgn1, val[0], val[2], val[4].intern, val[5])
      result.line = val[0].line
    
    result
end

def _reduce_172(val, _values, result)
      result = s(:op_asgn2, val[0], "#{val[2]}=".intern, val[3].intern, val[4])
    
    result
end

# reduce 173 omitted

# reduce 174 omitted

# reduce 175 omitted

# reduce 176 omitted

# reduce 177 omitted

def _reduce_178(val, _values, result)
      result = s(:dot2, val[0], val[2])
      result.line = val[0].line
    
    result
end

def _reduce_179(val, _values, result)
      result = s(:dot3, val[0], val[2])
      result.line = val[0].line
    
    result
end

def _reduce_180(val, _values, result)
      result = s(:operator, :"+", val[0], val[2])
    
    result
end

def _reduce_181(val, _values, result)
      result = s(:operator, :"-", val[0], val[2])
    
    result
end

def _reduce_182(val, _values, result)
      result = s(:operator, :"*", val[0], val[2])
    
    result
end

def _reduce_183(val, _values, result)
      result = s(:operator, :"/", val[0], val[2])
    
    result
end

def _reduce_184(val, _values, result)
      result = new_call val[0], :"%", s(:arglist, val[2])
    
    result
end

def _reduce_185(val, _values, result)
      result = new_call val[0], :"**", s(:arglist, val[2])
    
    result
end

# reduce 186 omitted

# reduce 187 omitted

def _reduce_188(val, _values, result)
      result = new_call val[1], :"+@", s(:arglist)
      result = val[1] if val[1][0] == :lit and Numeric === val[1][1]
    
    result
end

def _reduce_189(val, _values, result)
      result = new_call val[1], :"-@", s(:arglist)
      if val[1][0] == :lit and Numeric === val[1][1]
        val[1][1] = -val[1][1]
        result = val[1]
      end
    
    result
end

def _reduce_190(val, _values, result)
      result = new_call val[0], :"|", s(:arglist, val[2])
    
    result
end

def _reduce_191(val, _values, result)
      result = new_call val[0], :"^", s(:arglist, val[2])
    
    result
end

def _reduce_192(val, _values, result)
      result = new_call val[0], :"&", s(:arglist, val[2])
    
    result
end

def _reduce_193(val, _values, result)
      result = new_call val[0], :"<=>", s(:arglist, val[2])
    
    result
end

def _reduce_194(val, _values, result)
      result = new_call val[0], :">", s(:arglist, val[2])
    
    result
end

def _reduce_195(val, _values, result)
      result = new_call val[0], :">=", s(:arglist, val[2])
    
    result
end

def _reduce_196(val, _values, result)
      result = new_call val[0], :"<", s(:arglist, val[2])
    
    result
end

def _reduce_197(val, _values, result)
      result = new_call val[0], :"<=", s(:arglist, val[2])
    
    result
end

def _reduce_198(val, _values, result)
      result = new_call val[0], :"==", s(:arglist, val[2])
    
    result
end

def _reduce_199(val, _values, result)
      result = new_call val[0], :"===", s(:arglist, val[2])
    
    result
end

def _reduce_200(val, _values, result)
      result = s(:not, new_call(val[0], :"==", s(:arglist, val[2])))
    
    result
end

def _reduce_201(val, _values, result)
      result = new_call val[0], :"=~", s(:arglist, val[2])
    
    result
end

def _reduce_202(val, _values, result)
      result = s(:not, new_call(val[0], :"=~", s(:arglist, val[2])))
    
    result
end

def _reduce_203(val, _values, result)
      result = s(:not, val[1])
    
    result
end

def _reduce_204(val, _values, result)
      result = new_call val[1], :"~", s(:arglist)
    
    result
end

def _reduce_205(val, _values, result)
      result = new_call val[0], :"<<", s(:arglist, val[2])
    
    result
end

def _reduce_206(val, _values, result)
      result = new_call val[0], :">>", s(:arglist, val[2])
    
    result
end

def _reduce_207(val, _values, result)
      result = s(:and, val[0], val[2])
      result.line = val[0].line
    
    result
end

def _reduce_208(val, _values, result)
      result = s(:or, val[0], val[2])
      result.line = val[0].line
    
    result
end

def _reduce_209(val, _values, result)
      result = s(:defined, val[2])
    
    result
end

def _reduce_210(val, _values, result)
      result = s(:if, val[0], val[2], val[4])
      result.line = val[0].line
    
    result
end

# reduce 211 omitted

# reduce 212 omitted

def _reduce_213(val, _values, result)
      result = nil
    
    result
end

def _reduce_214(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_215(val, _values, result)
      result = s(:array, s(:hash, *val[0]))
    
    result
end

def _reduce_216(val, _values, result)
      result = nil
    
    result
end

def _reduce_217(val, _values, result)
      result = val[1]
    
    result
end

# reduce 218 omitted

# reduce 219 omitted

# reduce 220 omitted

# reduce 221 omitted

def _reduce_222(val, _values, result)
      result = s(:array, val[0])
    
    result
end

def _reduce_223(val, _values, result)
      result = val[0]
      add_block_pass val[0], val[1]
    
    result
end

def _reduce_224(val, _values, result)
      result = s(:arglist, s(:hash, *val[0]))
      add_block_pass result, val[1]
    
    result
end

def _reduce_225(val, _values, result)
      result = val[0]
      result << s(:hash, *val[2])
    
    result
end

def _reduce_226(val, _values, result)
      result = s(:arglist)
      add_block_pass result, val[0]
    
    result
end

# reduce 227 omitted

# reduce 228 omitted

def _reduce_229(val, _values, result)
      cmdarg_push 1
    
    result
end

def _reduce_230(val, _values, result)
      cmdarg_pop
      result = val[1]
    
    result
end

# reduce 231 omitted

def _reduce_232(val, _values, result)
      result = nil
    
    result
end

def _reduce_233(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_234(val, _values, result)
      result = s(:block_pass, val[1])
    
    result
end

def _reduce_235(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_236(val, _values, result)
      result = nil
    
    result
end

def _reduce_237(val, _values, result)
      result = s(:array, val[0])
    
    result
end

def _reduce_238(val, _values, result)
      result = s(:array, s(:splat, val[1]))
    
    result
end

def _reduce_239(val, _values, result)
      result = val[0] << val[2]
    
    result
end

def _reduce_240(val, _values, result)
      result  = val[0] << s(:splat, val[3])
    
    result
end

def _reduce_241(val, _values, result)
      val[0] << val[2]
      result = val[0]
    
    result
end

# reduce 242 omitted

def _reduce_243(val, _values, result)
      result = s(:splat, val[1])
    
    result
end

# reduce 244 omitted

# reduce 245 omitted

# reduce 246 omitted

# reduce 247 omitted

# reduce 248 omitted

# reduce 249 omitted

# reduce 250 omitted

# reduce 251 omitted

# reduce 252 omitted

def _reduce_253(val, _values, result)
      result = @line
    
    result
end

def _reduce_254(val, _values, result)
      result = s(:begin, val[2])
      result.line = val[1]
    
    result
end

def _reduce_255(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_256(val, _values, result)
      result = val[1] || s(:nil)
    
    result
end

def _reduce_257(val, _values, result)
      result = s(:colon2, val[0], val[2].intern)
    
    result
end

def _reduce_258(val, _values, result)
      result = s(:colon3, val[1])
    
    result
end

def _reduce_259(val, _values, result)
      result = new_call val[0], :[], val[2]
    
    result
end

def _reduce_260(val, _values, result)
      result = val[1] || s(:array)
    
    result
end

def _reduce_261(val, _values, result)
      result = s(:hash, *val[1])
    
    result
end

def _reduce_262(val, _values, result)
      result = s(:return)
    
    result
end

def _reduce_263(val, _values, result)
      result = new_yield val[2]
    
    result
end

def _reduce_264(val, _values, result)
      result = s(:yield)
    
    result
end

def _reduce_265(val, _values, result)
      result = s(:yield)
    
    result
end

def _reduce_266(val, _values, result)
      result = s(:defined, val[3])
    
    result
end

def _reduce_267(val, _values, result)
      result = val[1]
      result[1] = new_call(nil, val[0].intern, s(:arglist))
    
    result
end

# reduce 268 omitted

def _reduce_269(val, _values, result)
      result = val[1]
      result[1] = val[0]
    
    result
end

def _reduce_270(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_271(val, _values, result)
      result = new_if val[1], val[3], val[4]
    
    result
end

def _reduce_272(val, _values, result)
      result = new_if val[1], val[4], val[3]
    
    result
end

def _reduce_273(val, _values, result)
      cond_push 1
      result = @line
    
    result
end

def _reduce_274(val, _values, result)
      cond_pop
    
    result
end

def _reduce_275(val, _values, result)
      result = s(:while, val[2], val[5], true)
      result.line = val[1]
    
    result
end

def _reduce_276(val, _values, result)
      cond_push 1
      result = @line
    
    result
end

def _reduce_277(val, _values, result)
      cond_pop
    
    result
end

def _reduce_278(val, _values, result)
      result = s(:until, val[2], val[5], true)
      result.line = val[1]
    
    result
end

def _reduce_279(val, _values, result)
      result = s(:case, val[1], *val[3])
      result.line = val[1].line
    
    result
end

def _reduce_280(val, _values, result)
      result = s(:case, nil, *val[2])
      result.line = val[2].line
    
    result
end

def _reduce_281(val, _values, result)
      result = s(:case, nil, val[3])
      result.line = val[3].line
    
    result
end

def _reduce_282(val, _values, result)
      result = "this.cond_push(1);"
    
    result
end

def _reduce_283(val, _values, result)
      result = "this.cond_pop();"
    
    result
end

# reduce 284 omitted

def _reduce_285(val, _values, result)
      result = @line
    
    result
end

def _reduce_286(val, _values, result)
      # ...
    
    result
end

def _reduce_287(val, _values, result)
      result = new_class val[2], val[3], val[5]
      result.line = val[1]
      result.end_line = @line
    
    result
end

def _reduce_288(val, _values, result)
      result = @line
    
    result
end

def _reduce_289(val, _values, result)
      # ...
    
    result
end

def _reduce_290(val, _values, result)
      result = new_sclass val[3], val[6]
      result.line = val[2]
    
    result
end

def _reduce_291(val, _values, result)
      result = @line
    
    result
end

def _reduce_292(val, _values, result)
      # ...
    
    result
end

def _reduce_293(val, _values, result)
      result = new_module val[2], val[4]
      result.line = val[1]
      result.end_line = @line
    
    result
end

def _reduce_294(val, _values, result)
      result = @scope_line
      push_scope
    
    result
end

def _reduce_295(val, _values, result)
      result = new_defn val[2], val[1], val[3], val[4]
      pop_scope
    
    result
end

def _reduce_296(val, _values, result)
       # ..
    
    result
end

def _reduce_297(val, _values, result)
      result = @scope_line
      push_scope
    
    result
end

def _reduce_298(val, _values, result)
      result = new_defs val[5], val[1], val[4], val[6], val[7]
      pop_scope
    
    result
end

def _reduce_299(val, _values, result)
      result = s(:break)
    
    result
end

def _reduce_300(val, _values, result)
      result = s(:next)
    
    result
end

def _reduce_301(val, _values, result)
      result = s(:redo)
    
    result
end

# reduce 302 omitted

# reduce 303 omitted

# reduce 304 omitted

# reduce 305 omitted

# reduce 306 omitted

# reduce 307 omitted

# reduce 308 omitted

# reduce 309 omitted

# reduce 310 omitted

def _reduce_311(val, _values, result)
      call = new_call nil, :lambda, s(:arglist)
      result = new_iter call, val[0], val[1]
    
    result
end

def _reduce_312(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_313(val, _values, result)
      result = nil
    
    result
end

# reduce 314 omitted

# reduce 315 omitted

def _reduce_316(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_317(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_318(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_319(val, _values, result)
      result = @line
    
    result
end

def _reduce_320(val, _values, result)
      result = s(:if, val[2], val[4], val[5])
      result.line = val[1]
    
    result
end

# reduce 321 omitted

def _reduce_322(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_323(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_324(val, _values, result)
      result = new_block_args val[0], val[2], val[4], val[5]
    
    result
end

def _reduce_325(val, _values, result)
      result = new_block_args val[0], val[2], nil, val[3]
    
    result
end

def _reduce_326(val, _values, result)
      result = new_block_args val[0], nil, val[2], val[3]
    
    result
end

def _reduce_327(val, _values, result)
      result = new_block_args val[0], nil, nil, val[1]
    
    result
end

def _reduce_328(val, _values, result)
      result = new_block_args nil, val[0], val[2], val[3]
    
    result
end

def _reduce_329(val, _values, result)
      result = new_block_args nil, val[0], nil, val[1]
    
    result
end

def _reduce_330(val, _values, result)
      result = new_block_args nil, nil, val[0], val[1]
    
    result
end

def _reduce_331(val, _values, result)
      result = new_block_args nil, nil, nil, val[0]
    
    result
end

def _reduce_332(val, _values, result)
      result = s(:block, val[0])
    
    result
end

def _reduce_333(val, _values, result)
      val[0] << val[2]
      result = val[0]
    
    result
end

def _reduce_334(val, _values, result)
      result = new_assign new_assignable(s(:identifier, val[0].intern)), val[2]
    
    result
end

# reduce 335 omitted

def _reduce_336(val, _values, result)
      result = 0
    
    result
end

def _reduce_337(val, _values, result)
      result = 0
    
    result
end

def _reduce_338(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_339(val, _values, result)
      push_scope :block
      result = @line
    
    result
end

def _reduce_340(val, _values, result)
      result = new_iter nil, val[2], val[3]
      result.line = val[1]
      pop_scope
    
    result
end

def _reduce_341(val, _values, result)
      result = val[1]
      result[1] = val[0]
    
    result
end

# reduce 342 omitted

# reduce 343 omitted

def _reduce_344(val, _values, result)
      result = new_call nil, val[0].intern, val[1]
    
    result
end

def _reduce_345(val, _values, result)
      result = new_call val[0], val[2].intern, val[3]
    
    result
end

def _reduce_346(val, _values, result)
      result = new_call val[0], :call, val[2]
    
    result
end

def _reduce_347(val, _values, result)
      result = new_call val[0], val[2].intern, val[3]
    
    result
end

def _reduce_348(val, _values, result)
      result = new_call val[0], val[2].intern, s(:arglist)
    
    result
end

def _reduce_349(val, _values, result)
      result = new_super val[1]
    
    result
end

def _reduce_350(val, _values, result)
      result = s(:zsuper)
    
    result
end

def _reduce_351(val, _values, result)
      push_scope :block
      result = @line
    
    result
end

def _reduce_352(val, _values, result)
      result = new_iter nil, val[2], val[3]
      result.line = val[1]
      pop_scope
    
    result
end

def _reduce_353(val, _values, result)
      push_scope :block
      result = @line
    
    result
end

def _reduce_354(val, _values, result)
      result = new_iter nil, val[2], val[3]
      result.line = val[1]
      pop_scope
    
    result
end

def _reduce_355(val, _values, result)
      result = @line
    
    result
end

def _reduce_356(val, _values, result)
      part = s(:when, val[2], val[4])
      part.line = val[2].line
      result = [part]
      result.push *val[5] if val[5]
    
    result
end

def _reduce_357(val, _values, result)
      result = [val[0]]
    
    result
end

# reduce 358 omitted

def _reduce_359(val, _values, result)
      exc = val[1] || s(:array)
      exc << new_assign(val[2], s(:gvar, '$!'.intern)) if val[2]
      result = [s(:resbody, exc, val[4])]
      result.push val[5].first if val[5]
    
    result
end

def _reduce_360(val, _values, result)
      result = nil
    
    result
end

def _reduce_361(val, _values, result)
      result = s(:array, val[0])
    
    result
end

# reduce 362 omitted

# reduce 363 omitted

def _reduce_364(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_365(val, _values, result)
      result = nil
    
    result
end

def _reduce_366(val, _values, result)
      result = val[1].nil? ? s(:nil) : val[1]
    
    result
end

# reduce 367 omitted

def _reduce_368(val, _values, result)
      result = s(:lit, val[0])
    
    result
end

def _reduce_369(val, _values, result)
      result = s(:lit, val[0])
    
    result
end

# reduce 370 omitted

def _reduce_371(val, _values, result)
      result = new_str val[0]
    
    result
end

# reduce 372 omitted

# reduce 373 omitted

def _reduce_374(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_375(val, _values, result)
      result = s(:str, val[0])
    
    result
end

def _reduce_376(val, _values, result)
      result = new_xstr val[1]
    
    result
end

def _reduce_377(val, _values, result)
      result = new_regexp val[1], val[2]
    
    result
end

def _reduce_378(val, _values, result)
      result = s(:array)
    
    result
end

def _reduce_379(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_380(val, _values, result)
      result = s(:array)
    
    result
end

def _reduce_381(val, _values, result)
      part = val[1]
      part = s(:dstr, "", val[1]) if part[0] == :evstr
      result = val[0] << part
    
    result
end

def _reduce_382(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_383(val, _values, result)
      result = val[0].concat([val[1]])
    
    result
end

def _reduce_384(val, _values, result)
      result = s(:array)
    
    result
end

def _reduce_385(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_386(val, _values, result)
      result = s(:array)
    
    result
end

def _reduce_387(val, _values, result)
      result = val[0] << s(:str, val[1])
    
    result
end

def _reduce_388(val, _values, result)
      result = nil
    
    result
end

def _reduce_389(val, _values, result)
      result = str_append val[0], val[1]
    
    result
end

def _reduce_390(val, _values, result)
      result = nil
    
    result
end

def _reduce_391(val, _values, result)
      result = str_append val[0], val[1]
    
    result
end

def _reduce_392(val, _values, result)
      result = s(:str, val[0])
    
    result
end

def _reduce_393(val, _values, result)
      result = @string_parse
      @string_parse = nil
    
    result
end

def _reduce_394(val, _values, result)
      @string_parse = val[1]
      result = s(:evstr, val[2])
    
    result
end

def _reduce_395(val, _values, result)
      cond_push 0
      cmdarg_push 0
      result = @string_parse
      @string_parse = nil
      @lex_state = :expr_beg
    
    result
end

def _reduce_396(val, _values, result)
      @string_parse = val[1]
      cond_lexpop
      cmdarg_lexpop
      result = s(:evstr, val[2])
    
    result
end

def _reduce_397(val, _values, result)
      result = s(:gvar, val[0].intern)
    
    result
end

def _reduce_398(val, _values, result)
      result = s(:ivar, val[0].intern)
    
    result
end

def _reduce_399(val, _values, result)
      result = s(:cvar, val[0].intern)
    
    result
end

# reduce 400 omitted

def _reduce_401(val, _values, result)
      result = val[1].intern
      @lex_state = :expr_end
    
    result
end

# reduce 402 omitted

# reduce 403 omitted

# reduce 404 omitted

# reduce 405 omitted

# reduce 406 omitted

def _reduce_407(val, _values, result)
      result = new_dsym val[1]
    
    result
end

# reduce 408 omitted

# reduce 409 omitted

# reduce 410 omitted

# reduce 411 omitted

def _reduce_412(val, _values, result)
      result = s(:identifier, val[0].intern)
    
    result
end

def _reduce_413(val, _values, result)
      result = s(:ivar, val[0].intern)
    
    result
end

def _reduce_414(val, _values, result)
      result = s(:gvar, val[0].intern)
    
    result
end

def _reduce_415(val, _values, result)
      result = s(:const, val[0].intern)
    
    result
end

def _reduce_416(val, _values, result)
      result = s(:cvar, val[0].intern)
    
    result
end

def _reduce_417(val, _values, result)
      result = s(:nil)
    
    result
end

def _reduce_418(val, _values, result)
      result = s(:self)
    
    result
end

def _reduce_419(val, _values, result)
      result = s(:true)
    
    result
end

def _reduce_420(val, _values, result)
      result = s(:false)
    
    result
end

def _reduce_421(val, _values, result)
      result = s(:str, @file)
    
    result
end

def _reduce_422(val, _values, result)
      result = s(:lit, @line)
    
    result
end

def _reduce_423(val, _values, result)
      result = new_var_ref val[0]
    
    result
end

def _reduce_424(val, _values, result)
      result = new_assignable val[0]
    
    result
end

# reduce 425 omitted

# reduce 426 omitted

def _reduce_427(val, _values, result)
      result = nil
    
    result
end

def _reduce_428(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_429(val, _values, result)
      result = nil
    
    result
end

def _reduce_430(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_431(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_432(val, _values, result)
      result = new_args val[0], val[2], val[4], val[5]
    
    result
end

def _reduce_433(val, _values, result)
      result = new_args val[0], val[2], nil, val[3]
    
    result
end

def _reduce_434(val, _values, result)
      result = new_args val[0], nil, val[2], val[3]
    
    result
end

def _reduce_435(val, _values, result)
      result = new_args val[0], nil, nil, val[1]
    
    result
end

def _reduce_436(val, _values, result)
      result = new_args nil, val[0], val[2], val[3]
    
    result
end

def _reduce_437(val, _values, result)
      result = new_args nil, val[0], nil, val[1]
    
    result
end

def _reduce_438(val, _values, result)
      result = new_args nil, nil, val[0], val[1]
    
    result
end

def _reduce_439(val, _values, result)
      result = new_args nil, nil, nil, val[0]
    
    result
end

def _reduce_440(val, _values, result)
      result = s(:args)
    
    result
end

def _reduce_441(val, _values, result)
      raise 'formal argument cannot be a constant'
    
    result
end

def _reduce_442(val, _values, result)
      raise 'formal argument cannot be an instance variable'
    
    result
end

def _reduce_443(val, _values, result)
      raise 'formal argument cannot be a class variable'
    
    result
end

def _reduce_444(val, _values, result)
      raise 'formal argument cannot be a global variable'
    
    result
end

def _reduce_445(val, _values, result)
      result = val[0].intern
      @scope.add_local result
    
    result
end

def _reduce_446(val, _values, result)
      result = [val[0]]
    
    result
end

def _reduce_447(val, _values, result)
      val[0] << val[2]
      result = val[0]
    
    result
end

def _reduce_448(val, _values, result)
      result = new_assign new_assignable(s(:identifier, val[0].intern)), val[2]
    
    result
end

def _reduce_449(val, _values, result)
      result = s(:block, val[0])
    
    result
end

def _reduce_450(val, _values, result)
      result = val[0]
      val[0] << val[2]
    
    result
end

# reduce 451 omitted

# reduce 452 omitted

def _reduce_453(val, _values, result)
      result = "*#{val[1]}".intern
    
    result
end

def _reduce_454(val, _values, result)
      result = :"*"
    
    result
end

# reduce 455 omitted

# reduce 456 omitted

def _reduce_457(val, _values, result)
      result = "&#{val[1]}".intern
    
    result
end

def _reduce_458(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_459(val, _values, result)
      result = nil
    
    result
end

def _reduce_460(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_461(val, _values, result)
      result = val[1]
    
    result
end

def _reduce_462(val, _values, result)
      result = []
    
    result
end

def _reduce_463(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_464(val, _values, result)
      raise "unsupported assoc list type (#@line_number)"
    
    result
end

def _reduce_465(val, _values, result)
      result = val[0]
    
    result
end

def _reduce_466(val, _values, result)
      result = val[0].push *val[2]
    
    result
end

def _reduce_467(val, _values, result)
      result = [val[0], val[2]]
    
    result
end

def _reduce_468(val, _values, result)
      result = [s(:lit, val[0].intern), val[1]]
    
    result
end

# reduce 469 omitted

# reduce 470 omitted

# reduce 471 omitted

# reduce 472 omitted

# reduce 473 omitted

# reduce 474 omitted

# reduce 475 omitted

# reduce 476 omitted

# reduce 477 omitted

# reduce 478 omitted

# reduce 479 omitted

# reduce 480 omitted

# reduce 481 omitted

# reduce 482 omitted

# reduce 483 omitted

# reduce 484 omitted

# reduce 485 omitted

# reduce 486 omitted

# reduce 487 omitted

# reduce 488 omitted

# reduce 489 omitted

# reduce 490 omitted

# reduce 491 omitted

# reduce 492 omitted

# reduce 493 omitted

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

  end   # class Grammar
  end   # module Opal