File Manager
Viewing File: macruby.rb
# -*- encoding:utf-8; warn-indent:false; frozen_string_literal: true -*-
#
# DO NOT MODIFY!!!!
# This file is automatically generated by Racc 1.4.14
# from Racc grammer file "".
#
require 'racc/parser.rb'
require 'parser'
Parser.check_for_encoding_support
module Parser
class MacRuby < Parser::Base
def version
19 # closest released match: v1_9_0_2
end
def default_encoding
Encoding::BINARY
end
##### State transition tables begin ###
clist = [
'-455,5,64,65,66,9,52,-455,-455,-455,58,59,-455,-455,-455,62,-455,60',
'61,63,28,29,67,68,-455,255,-455,-455,-455,27,26,25,91,90,92,93,-455',
'-455,18,-455,-455,-455,-455,-455,8,42,7,10,95,94,96,85,51,87,86,88,556',
'89,97,98,535,83,84,39,40,38,-455,-455,-455,-455,-455,-455,-455,-455',
'-455,-455,-455,-455,-455,-455,99,467,-455,-455,-455,37,-455,-455,31',
'-93,-455,53,54,-455,-455,55,-455,33,-455,577,-455,41,-455,-455,-455',
'-455,-455,-455,-455,19,-455,254,-455,-100,82,74,77,78,206,79,80,111',
'661,755,75,81,-455,-455,-455,-455,-458,-455,57,-455,76,-455,-99,-458',
'-458,-458,-468,202,-458,-458,-458,686,-458,547,535,-87,195,548,535,609',
'-458,207,-458,-458,-458,-95,503,555,576,502,196,-97,-458,-458,686,-458',
'-458,-458,-458,-458,103,535,535,-95,-97,102,-94,103,203,204,-92,-94',
'102,608,103,-93,-100,609,197,102,-85,418,-458,-458,-458,-458,-458,-458',
'-458,-458,-458,-458,-458,-458,-458,-458,203,204,-458,-458,-458,-87,-458',
'-458,-92,198,-458,-96,-89,-458,-458,608,-458,660,-458,245,-458,686,-458',
'-458,-458,-458,-458,-458,-458,-286,-458,-91,-458,298,-100,103,-286,-286',
'-286,609,102,-87,-286,-286,-87,-286,-458,-458,-458,-458,-87,-458,103',
'-458,-87,-458,103,102,103,801,-89,102,103,102,255,-286,-286,102,-286',
'-286,-286,-286,-286,608,299,-86,255,-96,-89,103,103,-95,-97,-98,102',
'102,-95,-97,-529,-94,207,652,207,541,-94,-286,-286,-286,-286,-286,-286',
'-286,-286,-286,-286,-286,-286,-286,-286,203,204,-286,-286,-286,-89,594',
'-468,-89,365,-286,490,103,-286,-89,566,-96,102,-286,250,-286,-96,-286',
'-286,-286,-286,-286,-286,-286,-533,-286,250,-286,-529,203,204,-533,-533',
'-533,-530,669,254,-533,-533,738,-533,-286,-286,609,-90,-85,-286,247',
'254,-533,-98,-93,-526,-399,248,-99,503,203,204,505,-533,-533,-455,-533',
'-533,-533,-533,-533,-88,-455,378,568,567,564,-90,669,677,608,518,517',
'516,522,519,670,566,207,503,417,-95,505,-533,-533,-533,-533,-533,-533',
'-533,-533,-533,-533,-533,-533,-533,-533,-455,-399,-533,-533,-533,419',
'595,-455,-399,420,-533,739,-526,-533,566,207,-455,-399,-533,832,-533',
'206,-533,-533,-533,-533,-533,-533,-533,74,-533,-533,-533,566,-526,-399',
'300,301,75,-527,-533,568,567,569,818,-533,-533,-533,76,-88,792,-533',
'-533,-533,-533,-96,-458,-533,-533,-533,-97,-533,677,-458,518,517,516',
'522,519,226,-533,-533,-533,-533,375,568,567,571,-533,377,376,-533,-533',
'-465,-533,-533,-533,-533,-533,452,-465,-458,-533,-94,568,567,573,566',
'-458,-533,566,223,-464,-527,-529,225,224,-458,-533,-464,463,-533,-533',
'-533,-533,-533,-533,-533,-533,-533,-533,-533,-533,-533,-533,-527,-533',
'-533,-533,-533,-533,740,-533,485,486,-533,490,-533,-533,-533,906,-533',
'-529,-533,465,-533,-533,-533,-533,-533,-533,-533,-533,-533,-80,-533',
'-533,-533,568,567,-66,568,567,578,-533,467,503,718,226,505,589,-533',
'-533,-533,-533,-286,-533,590,-533,-91,-96,726,-286,-286,-286,-99,-65',
'-286,-286,-286,751,-286,518,517,516,522,519,226,203,204,223,-286,-286',
'-286,225,224,221,222,203,204,207,-286,-286,-87,-286,-286,-286,-286,-286',
'-95,-89,-466,796,652,-86,-463,-97,524,-466,223,-94,475,-463,225,224',
'103,528,527,531,530,102,-286,-286,-286,-286,-286,-286,-286,-286,-286',
'-286,-286,-286,-286,-286,476,200,-286,-286,-286,-329,741,-286,201,483',
'-286,259,-329,-286,-286,750,-286,199,-286,207,-286,-329,-286,-286,-286',
'-286,-286,-286,-286,250,-286,487,-286,491,521,-460,518,517,516,522,519',
'492,-460,-461,226,-462,-286,-286,-286,-286,-461,-286,-462,-286,498,-98',
'275,64,65,66,9,52,561,103,499,58,59,506,102,562,62,524,60,61,63,28,29',
'67,68,507,528,527,531,530,27,26,25,91,90,92,93,712,713,18,467,714,97',
'98,583,8,42,541,10,95,94,96,85,51,87,86,88,367,89,97,98,545,83,84,39',
'40,38,226,230,235,236,237,232,234,242,243,238,239,414,219,220,-467,103',
'240,241,415,37,102,-467,277,103,546,53,54,416,102,55,-467,33,223,579',
'229,41,225,224,221,222,233,231,227,19,228,796,652,103,82,74,77,78,102',
'79,80,226,582,481,75,81,585,244,-281,-233,482,-266,57,207,76,-281,-281',
'-281,250,480,-281,-281,-281,521,-281,518,517,516,522,519,599,226,226',
'223,-281,-281,-281,225,224,221,222,226,226,207,-281,-281,207,-281,-281',
'-281,-281,-281,677,207,518,517,516,522,519,-80,524,510,677,634,518,517',
'516,522,519,528,527,531,530,207,-281,-281,-281,-281,-281,-281,-281,-281',
'-281,-281,-281,-281,-281,-281,496,673,-281,-281,-281,-280,645,-281,652',
'207,-281,673,-280,-281,-281,663,-281,665,-281,668,-281,-280,-281,-281',
'-281,-281,-281,-281,-281,493,-281,671,-281,679,543,680,494,682,541,689',
'717,544,720,-267,727,416,-281,-281,-281,-281,542,-281,452,-281,275,64',
'65,66,9,52,452,207,551,58,59,743,465,207,62,550,60,61,63,28,29,67,68',
'762,552,467,645,207,27,26,25,91,90,92,93,250,677,18,518,517,516,522',
'519,8,42,250,10,95,94,96,85,51,87,86,88,645,89,97,98,226,83,84,39,40',
'38,677,226,518,517,516,522,519,677,673,518,517,516,522,519,-287,769',
'-287,676,-266,37,773,-287,31,-287,750,53,54,787,790,55,-287,33,-287',
'669,207,41,677,673,518,517,516,522,519,19,524,652,676,800,82,74,77,78',
'207,79,80,531,530,207,75,81,5,64,65,66,9,52,57,809,76,58,59,-268,820',
'524,62,822,60,61,63,28,29,67,68,825,531,530,826,750,27,26,25,91,90,92',
'93,833,677,18,518,517,516,522,519,8,42,7,10,95,94,96,85,51,87,86,88',
'207,89,97,98,839,83,84,39,40,38,677,840,518,517,516,522,519,677,673',
'518,517,516,522,519,-467,645,-286,863,849,37,850,-467,31,-286,207,53',
'54,852,-530,55,-467,33,-286,855,857,41,677,673,518,517,516,522,519,19',
'524,859,859,207,82,74,77,78,864,79,80,531,530,866,75,81,275,64,65,66',
'9,52,57,868,76,58,59,874,876,524,62,207,60,61,63,28,29,67,68,879,531',
'530,-269,886,27,26,25,91,90,92,93,887,677,18,518,517,516,522,519,8,42',
'890,10,95,94,96,85,51,87,86,88,892,89,97,98,465,83,84,39,40,38,677,895',
'518,517,516,522,519,677,673,518,517,516,522,519,898,900,-286,-280,908',
'37,910,899,31,-286,-280,53,54,911,-530,55,897,33,-286,-280,916,41,677',
'673,518,517,516,522,519,19,524,918,921,923,82,74,77,78,859,79,80,531',
'530,859,75,81,275,64,65,66,9,52,57,928,76,58,59,498,937,524,62,859,60',
'61,63,28,29,67,68,859,531,530,859,941,27,26,25,91,90,92,93,908,830,18',
'518,517,516,465,519,8,42,207,10,95,94,96,85,51,87,86,88,908,89,97,98',
'957,83,84,39,40,38,830,551,518,517,516,958,519,677,927,518,517,516,522',
'519,-287,960,-286,552,859,37,859,-287,31,-286,859,53,54,-530,-530,55',
'-287,33,-286,-529,859,41,677,908,518,517,516,522,519,19,524,859,,,82',
'74,77,78,,79,80,531,530,,75,81,275,64,65,66,9,52,57,,76,58,59,,,524',
'62,,60,61,63,28,29,67,68,,531,530,,,27,26,25,91,90,92,93,,,18,106,107',
'108,109,110,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40',
'38,226,106,107,108,109,110,,677,,518,517,516,522,519,,,240,241,,37,',
',277,,,53,54,,,55,,33,223,,229,41,225,224,221,222,,,,19,524,,,,82,74',
'77,78,,79,80,531,530,,75,81,275,64,65,66,9,52,57,,76,58,59,,,,62,,60',
'61,63,28,29,67,68,106,107,108,109,110,27,26,25,91,90,92,93,,,18,,,,',
'586,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226,230',
'235,236,237,232,234,242,243,238,239,,219,220,,,240,241,,37,,,277,,,53',
'54,,,55,,33,223,,229,41,225,224,221,222,233,231,227,19,228,,,,82,74',
'77,78,,79,80,,,,75,81,,244,-534,,,,57,,76,-534,-534,-534,,,-534,-534',
'-534,521,-534,518,517,516,522,519,,,,-534,-534,-534,-534,106,107,108',
'109,110,,,-534,-534,,-534,-534,-534,-534,-534,,,,,,,,,524,707,,,,,,',
',528,527,531,530,,-534,-534,-534,-534,-534,-534,-534,-534,-534,-534',
'-534,-534,-534,-534,,,-534,-534,-534,,,-534,,,-534,,,-534,-534,,-534',
',-534,,-534,,-534,-534,-534,-534,-534,-534,-534,-535,-534,-534,-534',
',,,-535,-535,-535,,,-535,-535,-535,226,-535,-534,-534,-534,-534,,-534',
',-534,-535,-535,-535,-535,,,240,241,,,,-535,-535,,-535,-535,-535,-535',
'-535,,,,223,,229,,225,224,221,222,,,227,,228,,,,,,,-535,-535,-535,-535',
'-535,-535,-535,-535,-535,-535,-535,-535,-535,-535,,,-535,-535,-535,',
',-535,,,-535,,,-535,-535,,-535,,-535,,-535,,-535,-535,-535,-535,-535',
'-535,-535,,-535,-535,-535,,,,,,,,,,,,,,-535,-535,-535,-535,,-535,,-535',
'275,64,65,66,9,52,,,,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25',
'91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83',
'84,39,40,38,226,230,235,236,237,232,234,242,243,238,239,,-552,-552,',
',240,241,,37,,,31,,,53,54,,,55,,33,223,,229,41,225,224,221,222,233,231',
'227,19,228,,,,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,,76,58',
'59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8',
'42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226,230,235',
'236,237,232,234,242,243,238,239,,-552,-552,,,240,241,,37,,,31,,,53,54',
',,55,,33,223,,229,41,225,224,221,222,233,231,227,19,228,,,,82,74,77',
'78,,79,80,,,,75,81,275,64,65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28',
'29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51',
'87,86,88,,89,97,98,,83,84,39,40,38,226,-552,-552,-552,-552,232,234,',
',-552,-552,,,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,229,41,225,224',
'221,222,233,231,227,19,228,,,,82,74,77,78,,79,80,,,,75,81,275,64,65',
'66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90',
'92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,226,,,,,,,,,,,,,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,229',
'41,225,224,221,222,,,227,19,228,,,,82,74,77,78,,79,80,,,,75,81,275,64',
'65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91',
'90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,226,,,,,,,,,,,,,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,229',
'41,225,224,221,222,,,227,19,228,,,,82,74,77,78,,79,80,,,,75,81,275,64',
'65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91',
'90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,226,,,,,,,,,,,,,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,229',
'41,225,224,221,222,,,227,19,228,,,,82,74,77,78,,79,80,,,,75,81,275,64',
'65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91',
'90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,226,-552,-552,-552,-552,232,234,,,-552,-552,,,,,,240,241,,37',
',,31,,,53,54,,,55,,33,223,,229,41,225,224,221,222,233,231,227,19,228',
',,,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,,76,58,59,,,,62',
',60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42,,10,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226,-552,-552,-552,-552',
'232,234,,,-552,-552,,,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,229',
'41,225,224,221,222,233,231,227,19,228,,,,82,74,77,78,,79,80,,,,75,81',
'275,64,65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26',
'25,91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98',
',83,84,39,40,38,226,-552,-552,-552,-552,232,234,,,-552,-552,,,,,,240',
'241,,37,,,31,,,53,54,,,55,,33,223,,229,41,225,224,221,222,233,231,227',
'19,228,,,,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,,76,58,59',
',,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42',
',10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226,-552,-552',
'-552,-552,232,234,,,-552,-552,,,,,,240,241,,37,,,31,,,53,54,,,55,,33',
'223,,229,41,225,224,221,222,233,231,227,19,228,,,,82,74,77,78,,79,80',
',,,75,81,275,64,65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68',
',,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88',
',89,97,98,,83,84,39,40,38,226,-552,-552,-552,-552,232,234,,,-552,-552',
',,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,229,41,225,224,221,222,233',
'231,227,19,228,,,,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,',
'76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18',
',,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226',
'230,235,236,237,232,234,,,238,239,,,,,,240,241,,37,,,31,,,53,54,,,55',
',33,223,,229,41,225,224,221,222,233,231,227,19,228,,,,82,74,77,78,,79',
'80,,,,75,81,275,64,65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67',
'68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86',
'88,,89,97,98,,83,84,39,40,38,226,230,235,236,237,232,234,242,,238,239',
',,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,229,41,225,224,221,222,233',
'231,227,19,228,,,,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,',
'76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18',
',,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226',
',,,,,,,,,,,,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,229,41,225,224',
'221,222,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,',
'76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18',
',,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226',
',,,,,,,,,,,,,,,240,241,,37,,,31,,,53,54,,,55,,33,223,,,41,225,224,221',
'222,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,,76,58',
'59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8',
'42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,',
',,,,,,,,37,,,31,,,53,54,,,55,,33,,,,41,,,,,,,,19,,,,,82,74,77,78,,79',
'80,,,,75,81,275,64,65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67',
'68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86',
'88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,37,,,31,,,53,54,,,55',
',33,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52',
'57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,',
',18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
',,,,,,,,,,,,,,,,,,,37,,,31,,,53,54,,,55,,33,,,,41,,,,,,,,19,,,,,82,74',
'77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,,76,58,59,,,,62,,60,61,63',
'28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85',
'51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,37,,,31,,,53',
'54,,,55,,33,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,275,64,65',
'66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90',
'92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,37,,,31,,,53,54,,,55,,33,,,,41,,,,,,,,19,,',
',,82,74,77,78,,79,80,,,,75,81,275,64,65,66,9,52,57,,76,58,59,,,,62,',
'60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42,,10,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,37',
',,31,,,53,54,,,55,,33,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81',
'275,64,65,66,9,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26',
'25,91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98',
',83,84,39,40,38,,,,,,,,,,,,,,,,,,,,37,,,31,,,53,54,,,55,,33,,,,41,,',
',,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,9,52,57,,76,58,59',
',,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42',
'7,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,',
',,,,,,37,,,31,,,53,54,,,55,,33,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80',
',,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,',
',27,26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97',
'98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41',
',,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59',
',,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42',
',,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,',
',,,,,,211,,,217,,,53,54,,,55,,268,,266,,41,,,,,,,,216,,,,,82,74,77,78',
',79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67',
'68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88',
'270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,',
'55,,268,,266,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66',
',52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92',
'93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40',
'38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,268,,266,,41,,,,,,,,216',
',,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,289,,,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,,521,295,518,517,516,522,519,',
',,,,,,,,,,,,,285,,,282,,,53,54,,,55,,281,,,,524,,,,,,,,,528,527,531',
'530,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,583,,289',
',,95,94,96,85,51,87,86,88,,89,97,98,,83,84,,,295,226,230,235,236,237',
'232,234,242,243,238,239,,219,220,,,240,241,,285,,,217,,,53,54,,,55,',
',223,,229,,225,224,221,222,233,231,227,,228,,,,82,74,77,78,,79,80,,',
',75,81,,244,,297,,,57,,76,64,65,66,,52,,,,58,59,,,,62,,60,61,63,291',
'292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85',
'51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,',
',53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91',
'90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,',
',,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211',
',,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25',
'91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19',
',,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95',
'94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,',
',211,,,217,,,53,54,,,55,,268,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80',
',,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,',
',,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88',
'270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,',
'55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52',
'57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,',
',18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,',
',,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82,74,77',
'78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29',
'67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86',
'88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,',
'55,,,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57',
',76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18',
',,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226,230',
'235,236,237,232,234,242,243,238,239,,219,220,,,240,241,,211,,-233,217',
',,53,54,,,55,,,223,,229,41,225,224,221,222,233,231,227,19,228,,,,82',
'74,77,78,,79,80,,,,75,81,103,244,,-233,,102,57,,76,64,65,66,,52,,,,58',
'59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218',
',,,,,,289,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,,521,295,518,517',
'516,522,519,,,,,,,,,,,,,,,330,,,31,,,53,54,,,55,,33,,,,524,,,,,,,,,528',
'527,531,530,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,',
',,289,,,95,94,96,335,51,87,86,336,,89,97,98,,83,84,,521,295,518,517',
'516,522,519,,,,,,,,,,,,342,,,337,,,217,,,53,54,,,55,,,,,,524,,,,,,,',
',528,527,531,530,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58',
'59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218',
',,,,,,289,,,95,94,96,335,51,87,86,336,,89,97,98,,83,84,,751,295,518',
'517,516,522,519,,,,,,,,,,,,,,,337,,,217,,,53,54,,,55,,,,,,524,,,,,,',
',,528,527,531,530,82,74,77,78,,79,80,,,,75,81,,64,65,66,9,52,57,,76',
'58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,',
',,8,42,7,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,226,230',
'235,236,237,232,234,242,243,238,239,,219,220,,,240,241,,37,,,31,,,53',
'54,,,55,,33,223,,229,41,225,224,221,222,233,231,227,19,228,,,,82,74',
'77,78,,79,80,,,,75,81,,244,,,,367,57,,76,64,65,66,,52,,,,58,59,,,,62',
',60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94',
'96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,',
',217,,,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25',
'91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19',
',,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96',
'85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217',
',,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90',
'92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40',
'38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82',
'74,77,78,,79,80,,,,75,81,,64,65,66,9,52,57,,76,58,59,,,,62,,60,61,63',
'28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42,,10,95,94,96,85',
'51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,37,,,31,,,53',
'54,,,55,,33,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66',
',52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92',
'93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
',,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,384,,,,41,,,,,,,,216,,,,',
'82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61',
'63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85',
'51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,',
',53,54,,,55,,384,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64',
'65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91',
'90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,',
',,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96',
'85,51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,',
',217,,,53,54,,,55,,268,,266,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,',
',75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27',
'26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98',
',83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,',
',,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59',
',,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,,42',
',,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,',
',,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,',
',,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,',
'27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97',
'98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41',
',,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59',
',,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,,42',
',,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,',
',,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,',
',,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,',
'27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97',
'98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41',
',,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,207,64,65,66,,52,57,,76,58',
'59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218',
',,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,',
',,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78',
',79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67',
'68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86',
'88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,',
'55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52',
'57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92',
'93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
',,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82',
'74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63',
'291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96',
'85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217',
',,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64',
'65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294',
'91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216',
',,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211',
',,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288',
'294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,',
'83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,',
',,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,',
',,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,',
',,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79',
'80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68',
',,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88',
',89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55',
',,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57',
',76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93',
',,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,',
',,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74',
'77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291',
'292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85',
'51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,',
',53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91',
'90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,',
',,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211',
',,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288',
'294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,',
'83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,',
',,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,',
',,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,',
',,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79',
'80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68',
',,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88',
',89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55',
',,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57',
',76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93',
',,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,',
',,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74',
'77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291',
'292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85',
'51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,',
',53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91',
'90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,',
',,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211',
',,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288',
'294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,',
'83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,',
',,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,',
',,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,',
',,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79',
'80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68',
',,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88',
',89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55',
',,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57',
',76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93',
',,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,',
',,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74',
'77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291',
'292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85',
'51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,',
',53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91',
'90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,',
',,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211',
',,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25',
'91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,270,89,97,98,,83',
'84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,268,,266,,41',
',,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59',
',,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42',
',,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,',
',,,,,,211,,,217,,,457,54,,,55,,268,,266,,41,,,,,,,,216,,,,,82,74,77',
'78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29',
'67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86',
'88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54',
',,55,,268,,266,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,207,64',
'65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294',
'91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216',
',,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211',
',,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288',
'294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,',
'83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,',
',,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,9,52,57,,76,58,59',
',,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,8,42',
',10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,',
',,,,,37,,,31,,,53,54,,,55,,33,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80',
',,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,',
',,,287,288,294,91,90,92,93,,,218,,,,,,,289,,,95,94,96,85,51,87,86,88',
',89,97,98,,83,84,,,295,226,230,235,236,237,232,234,242,243,238,239,',
'219,220,,,240,241,,285,,,217,,,53,54,,,55,,,223,,229,,225,224,221,222',
'233,231,227,,228,,,,82,74,77,78,,79,80,,,,75,81,,244,,478,,,57,,76,64',
'65,66,,52,,,,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91',
'90,92,93,,,218,,,,,,,289,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
',751,295,518,517,516,522,519,,,,,,,,,,,,,,,285,,,282,,,53,54,,,55,,',
',,,524,,,,,,,,,528,527,531,530,82,74,77,78,,79,80,,,,75,81,,64,65,66',
',52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90',
'92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40',
'38,,,,,,,,,,,,,,,,,,,,211,,,217,496,,53,54,,,55,,,,,,41,,,,,,,,216,',
',,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96',
'85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217',
',,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90',
'92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40',
'38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82',
'74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63',
'28,29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51',
'87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53',
'54,,,55,,,,,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66',
',52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92',
'93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
',,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19,,,,,82,74',
'77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291',
'292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85',
'51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,',
',53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90',
'92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,268,,266,,41,,,,,,',
',216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62',
',60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42',
',,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,',
',,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80',
',,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,',
',,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88',
',89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55',
',,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57',
',76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93',
',,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,',
',,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74',
'77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28',
'29,67,68,,,,,,27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87',
'86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53',
'54,,,55,,,,266,,41,,,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91',
'90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,270,89,97,98,,83,84',
'39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,629,,266,,41,,,',
',,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,',
',,42,,,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,',
',,,,,,,,,,,211,,,217,,,53,54,,,55,,,,266,,41,,,,,,,,216,,,,,82,74,77',
'78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292',
'67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87',
'86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54',
',,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,9',
'52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93',
',,18,,,,,,8,42,,10,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
'226,230,235,236,237,232,234,242,243,238,239,,219,220,,,240,241,,37,',
',31,,,53,54,,,55,,33,223,,229,41,225,224,221,222,233,231,227,19,228',
',,,82,74,77,78,,79,80,,,,75,81,,244,,,,367,57,,76,64,65,66,,52,,,,58',
'59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218',
',,,,,,289,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,,521,295,518,517',
'516,522,519,,,,,,,,,,,,,,,285,,,282,,,53,54,,,55,,,,,,524,,,,,,,,,528',
'527,531,530,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42',
',,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,',
',,,,,,211,,,217,,,53,54,,,55,,268,,266,,41,,,,,,,,216,,,,,82,74,77,78',
',79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67',
'68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,289,,,95,94,96,85,51,87',
'86,88,,89,97,98,,83,84,,521,295,518,517,516,522,519,,,,,,,,,,,,,,,285',
',,282,,,53,54,,,55,,,,,,524,707,,,,,,,,528,527,531,530,82,74,77,78,',
'79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67',
'68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86',
'88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,',
'55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52',
'57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92',
'93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
',,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82',
'74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63',
'291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96',
'85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217',
',,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64',
'65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91',
'90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19,,',
',,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61',
'63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94',
'96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,',
',217,,,53,54,,,55,,384,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75',
'81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287',
'288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,270,89',
'97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,629',
',,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76',
'58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218',
',,,,,,42,,,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,',
',,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77',
'78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292',
'67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87',
'86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54',
',,55,,268,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66',
',52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92',
'93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40',
'38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,268,,266,,41,,,,,,,,216',
',,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96',
'85,51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,',
',217,,,53,54,,,55,,268,,266,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,',
',75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27',
'26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98',
',83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,',
',,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,',
',,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,',
',,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79',
'80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68',
',,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88',
',89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55',
',724,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52',
'57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92',
'93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
',,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82',
'74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63',
'28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51',
'87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53',
'54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66',
',52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92',
'93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
',,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82',
'74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63',
'28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51',
'87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53',
'54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66',
',52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92',
'93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38',
',,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82',
'74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63',
'291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96',
'85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217',
',,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64',
'65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294',
'91,90,92,93,,,218,,,,,,,289,,,95,94,96,85,51,87,86,88,,89,97,98,,83',
'84,,751,295,518,517,516,522,519,,,,,,,,,,,,,,,285,,,282,,,53,54,,,55',
',,,,,524,,,,,,,,,528,527,531,530,82,74,77,78,,79,80,,,,75,81,,64,65',
'66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91',
'90,92,93,,,218,,,,,,,289,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
',,295,,,,,,,,,,,,,,,,,,,,285,,,282,,,53,54,,,55,,,,,,,,,,,,,,,,,,,82',
'74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63',
'291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96',
'85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217',
',,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64',
'65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91',
'90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39',
'40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,19,,',
',,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61',
'63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94',
'96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,',
',217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,,,27,26,25',
'91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216',
',,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60',
'61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95',
'94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211',
',,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288',
'294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,',
'83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,',
',,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,',
',,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,',
',,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79',
'80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68',
',,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88',
',89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55',
',,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57',
',76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93',
',,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,',
',,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41,,,,,,,,216,,,,,82,74',
'77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291',
'292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85',
'51,87,86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217',
',,53,54,,,55,,268,,266,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81',
',64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288',
'294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,270,89,97,98',
',83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,268,,266',
',41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76',
'58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218',
',,,,,,289,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,,,295,,,,,,,,,',
',,,,,,,,,,846,,,217,,,53,54,,,55,,,,,,,,,,,,,,,,,,,82,74,77,78,,79,80',
',,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,28,29,67,68,,,,',
',27,26,25,91,90,92,93,,,18,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97',
'98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,,,,,41',
',,,,,,,19,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59',
',,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92,93,,,218,,,',
',,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,39,40,38,,,,,,,,,,',
',,,,,,,,,211,,,217,,,53,54,,,55,,629,,,,41,,,,,,,,216,,,,,82,74,77,78',
',79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67',
'68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86',
'88,,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,',
'55,,,,,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52',
'57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294,91,90,92',
'93,,,218,,,,,,,289,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84,,,295',
',,,,,,,,,,,,,,,,,,,889,,,217,,,53,54,,,55,,,,,,,,,,,,,,,,,,,82,74,77',
'78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292',
'67,68,,,,,,287,288,294,91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87',
'86,88,270,89,97,98,,83,84,39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53',
'54,,,55,,629,,266,,41,,,,,,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64',
'65,66,,52,57,,76,58,59,,,,62,,60,61,63,291,292,67,68,,,,,,287,288,294',
'91,90,92,93,,,218,,,,,,,42,,,95,94,96,85,51,87,86,88,,89,97,98,,83,84',
'39,40,38,,,,,,,,,,,,,,,,,,,,211,,,217,,,53,54,,,55,,629,,266,,41,,,',
',,,,216,,,,,82,74,77,78,,79,80,,,,75,81,,64,65,66,,52,57,,76,58,59,',
',,62,,60,61,63,28,29,67,68,,,,,,27,26,25,91,90,92,93,,,218,,,,,,,42',
',,95,94,96,85,51,87,86,88,270,89,97,98,,83,84,39,40,38,226,230,235,236',
'237,232,234,242,243,238,239,,219,220,,,240,241,,211,,,217,,,53,54,,',
'55,,268,223,266,229,41,225,224,221,222,233,231,227,216,228,,,,82,74',
'77,78,,79,80,,,,75,81,207,244,-398,,,,57,,76,-398,-398,-398,,,-398,-398',
'-398,,-398,,,,,,,,,-398,-398,-398,,,,,,,,,-398,-398,,-398,-398,-398',
'-398,-398,,,,,,,,,,,,,,,,,,,,,,,-398,-398,-398,-398,-398,-398,-398,-398',
'-398,-398,-398,-398,-398,-398,,,-398,-398,-398,,,-398,,250,-398,,,-398',
'-398,,-398,,-398,,-398,,-398,-398,-398,-398,-398,-398,-398,-293,-398',
'-398,-398,,,,-293,-293,-293,,,-293,-293,-293,,-293,-398,-398,,-398,',
'-398,,,,-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,,259,-293,,,-293,-293,,-293,',
'-293,,-293,,-293,-293,-293,-293,-293,-293,-293,-239,-293,,-293,,,,-239',
'-239,-239,,,-239,-239,-239,,-239,-293,-293,,-293,,-293,,,-239,-239,-239',
',,,,,,,,-239,-239,,-239,-239,-239,-239,-239,,,,,,,,,,,,,,,,,,,,,,,-239',
'-239,-239,-239,-239,-239,-239,-239,-239,-239,-239,-239,-239,-239,,,-239',
'-239,-239,,,-239,,250,-239,,,-239,-239,,-239,,-239,,-239,,-239,-239',
'-239,-239,-239,-239,-239,-239,-239,-239,-239,,,,-239,-239,-239,,,-239',
'-239,-239,,-239,-239,-239,,-239,,-239,,,,-239,,,,,,,,,,-239,-239,,-239',
'-239,-239,-239,-239,,,,,,,,,,,,-239,,,,,,,-239,-239,-239,,,-239,-239',
'-239,,-239,,,,,,-239,,,,-239,,,-239,,,,,250,-239,-239,-239,,-239,-239',
'-239,-239,-239,,,,,,393,397,,,394,,,,-239,,,,147,148,,144,126,127,128',
'135,132,134,-239,,129,130,,-239,-239,149,150,136,137,,,-239,,,250,,250',
'-239,,,,,141,140,,125,146,143,142,138,139,133,131,123,145,124,,,151',
'-239,,,,,,,,,,,,,,-239,,,,,-239,162,173,163,186,159,179,169,168,189',
'190,184,167,166,161,187,191,192,171,160,174,178,180,172,165,,,,181,188',
'183,182,175,185,170,158,177,176,,,,,,157,164,155,156,152,153,154,114',
'116,113,,115,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130,',
',,149,150,136,137,,,,,,,,,,,,,,141,140,,125,146,143,142,138,139,133',
'131,123,145,124,,,151,82,,,,,,,,,,,81,162,173,163,186,159,179,169,168',
'189,190,184,167,166,161,187,191,192,171,160,174,178,180,172,165,,,,181',
'188,183,182,175,185,170,158,177,176,,,,,,157,164,155,156,152,153,154',
'114,116,,,115,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130',
',,,149,150,136,137,,,,,,,,,,,,,,141,140,,125,146,143,142,138,139,133',
'131,123,145,124,,,151,82,,,,,,,,,,,81,162,173,163,186,159,179,169,168',
'189,190,184,167,166,161,187,191,192,171,160,174,178,180,172,165,,,,181',
'188,183,182,175,185,170,158,177,176,,,,,,157,164,155,156,152,153,154',
'114,116,,,115,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130',
',,,149,150,136,137,,,,,,,,,,,,,,141,140,,125,146,143,142,138,139,133',
'131,123,145,124,,,151,82,,,,,,,,,,,81,162,173,163,186,159,179,169,168',
'189,190,184,167,166,161,187,191,192,171,160,174,178,180,172,165,,,,181',
'188,183,182,175,185,170,158,177,176,,,,,,157,164,155,156,152,153,154',
'114,116,,,115,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130',
',,,149,150,136,137,,,,,,,,,,,,,,141,140,,125,146,143,142,138,139,133',
'131,123,145,124,,,151,82,,,,,,,,,,,81,162,173,163,186,159,179,169,168',
'189,190,184,167,166,161,187,191,192,171,160,174,178,180,172,165,,,,181',
'188,183,352,351,353,350,158,177,176,,,,,,157,164,155,156,347,348,349',
'345,116,87,86,346,,89,,,,,,147,148,,144,126,127,128,135,132,134,,,129',
'130,,,,149,150,136,137,,,,,,357,,,,,,,,141,140,,125,146,143,142,138',
'139,133,131,123,145,124,,,151,162,173,163,186,159,179,169,168,189,190',
'184,167,166,161,187,191,192,171,160,174,178,180,172,165,,,,181,188,183',
'182,175,185,170,158,177,176,,,,,,157,164,155,156,152,153,154,114,116',
',,115,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130,,,,149,150',
'136,137,,,,,,,,,,,,,,141,140,,125,146,143,142,138,139,133,131,123,145',
'124,400,404,151,,399,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129',
'130,,,,149,150,136,137,,,,,,250,,,,,,,,141,140,,125,146,143,142,138',
'139,133,131,123,145,124,449,397,151,,450,,,,,,,,147,148,,144,126,127',
'128,135,132,134,,,129,130,,,,149,150,136,137,,,,,,,,,,,,,,141,140,,125',
'146,143,142,138,139,133,131,123,145,124,449,397,151,,450,,,,,,,,147',
'148,,144,126,127,128,135,132,134,,,129,130,,,,149,150,136,137,,,,,,',
',,,,,,,141,140,,125,146,143,142,138,139,133,131,123,145,124,600,397',
'151,,601,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130,,,,149',
'150,136,137,,,,,,250,,,,,,,,141,140,,125,146,143,142,138,139,133,131',
'123,145,124,602,404,151,,603,,,,,,,,147,148,,144,126,127,128,135,132',
'134,,,129,130,,,,149,150,136,137,,,,,,250,,,,,,,,141,140,,125,146,143',
'142,138,139,133,131,123,145,124,638,397,151,,639,,,,,,,,147,148,,144',
'126,127,128,135,132,134,,,129,130,,,,149,150,136,137,,,,,,250,,,,,,',
',141,140,,125,146,143,142,138,139,133,131,123,145,124,641,404,151,,642',
',,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130,,,,149,150,136',
'137,,,,,,250,,,,,,,,141,140,,125,146,143,142,138,139,133,131,123,145',
'124,600,397,151,,601,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129',
'130,,,,149,150,136,137,,,,,,250,,,,,,,,141,140,,125,146,143,142,138',
'139,133,131,123,145,124,602,404,151,,603,,,,,,,,147,148,,144,126,127',
'128,135,132,134,,,129,130,,,,149,150,136,137,,,,,,250,,,,,,,,141,140',
',125,146,143,142,138,139,133,131,123,145,124,692,397,151,,693,,,,,,',
',147,148,,144,126,127,128,135,132,134,,,129,130,,,,149,150,136,137,',
',,,,250,,,,,,,,141,140,,125,146,143,142,138,139,133,131,123,145,124',
'694,404,151,,695,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130',
',,,149,150,136,137,,,,,,250,,,,,,,,141,140,,125,146,143,142,138,139',
'133,131,123,145,124,697,404,151,,698,,,,,,,,147,148,,144,126,127,128',
'135,132,134,,,129,130,,,,149,150,136,137,,,,,,250,,,,,,,,141,140,,125',
'146,143,142,138,139,133,131,123,145,124,449,397,151,,450,,,,,,,,147',
'148,,144,126,127,128,135,132,134,,,129,130,,,,149,150,136,137,,,,,,250',
',,,,,,,141,140,,125,146,143,142,138,139,133,131,123,145,124,932,397',
'151,,933,,,,,,,,147,148,,144,126,127,128,135,132,134,,,129,130,,,,149',
'150,136,137,,,,,,250,,,,,,,,141,140,,125,146,143,142,138,139,133,131',
'123,145,124,934,404,151,,935,,,,,,,,147,148,,144,126,127,128,135,132',
'134,,,129,130,,,,149,150,136,137,,,,,,250,,,,,,,,141,140,,125,146,143',
'142,138,139,133,131,123,145,124,951,404,151,,950,,,,,,,,147,148,,144',
'126,127,128,135,132,134,,,129,130,,,,149,150,136,137,,,,,,250,,,,,,',
',141,140,,125,146,143,142,138,139,133,131,123,145,124,,,151,226,230',
'235,236,237,232,234,242,243,238,239,,219,220,,,240,241,,,,,,,,,,,,,',
',223,,229,,225,224,221,222,233,231,227,,228,,226,230,235,236,237,232',
'234,242,243,238,239,,219,220,,244,240,241,,,,,,,,,,,,,,,223,,229,,225',
'224,221,222,233,231,227,,228,,226,230,235,236,237,232,234,242,243,238',
'239,,219,220,,244,240,241,,,,,,,,,,,,,,,223,,229,,225,224,221,222,233',
'231,227,,228,,226,230,235,236,237,232,234,242,243,238,239,,219,220,',
'244,240,241,,,,,,,,,,,,,,,223,,229,,225,224,221,222,233,231,227,,228',
',226,230,235,236,237,232,234,242,243,238,239,,219,220,,244,240,241,',
',,,,,,,,,,,,,223,,229,,225,224,221,222,233,231,227,,228,,226,230,235',
'236,237,232,234,242,243,238,239,,219,220,,244,240,241,,,,,,,,,,,,,,',
'223,,229,,225,224,221,222,233,231,227,,228,,226,230,235,236,237,232',
'234,242,243,238,239,,219,220,,244,240,241,,,,,,,,,,,,,,,223,,229,,225',
'224,221,222,233,231,227,,228,,226,230,235,236,237,232,234,242,243,238',
'239,,219,220,,244,240,241,,,,,,,,,,,,,,,223,,229,,225,224,221,222,233',
'231,227,,228,,226,230,235,236,237,232,234,242,243,238,239,,219,220,',
'244,240,241,,,,,,,,,,,,,,,223,,229,,225,224,221,222,233,231,227,,228',
',226,230,235,236,237,232,234,242,243,238,239,,219,220,,244,240,241,',
',,,,,,,,,,,,,223,,229,,225,224,221,222,233,231,227,,228,,,,,,,,,,,,',
',,,,244' ]
racc_action_table = arr = ::Array.new(23457, 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 = [
'85,0,0,0,0,0,0,85,85,85,0,0,85,85,85,0,85,0,0,0,0,0,0,0,85,56,85,85',
'85,0,0,0,0,0,0,0,85,85,0,85,85,85,85,85,0,0,0,0,0,0,0,0,0,0,0,0,341',
'0,0,0,321,0,0,0,0,0,85,85,85,85,85,85,85,85,85,85,85,85,85,85,1,618',
'85,85,85,0,85,85,0,328,85,0,0,85,85,0,85,0,85,363,85,0,85,85,85,85,85',
'85,85,0,85,56,85,331,0,0,0,0,18,0,0,7,509,618,0,0,85,85,85,85,88,85',
'0,85,0,85,545,88,88,88,210,15,88,88,88,537,88,337,322,638,10,337,690',
'447,88,18,88,88,88,692,311,341,363,311,11,693,88,88,538,88,88,88,88',
'88,321,772,867,932,933,321,803,341,557,557,15,953,341,447,3,210,15,458',
'12,3,328,212,88,88,88,88,88,88,88,88,88,88,88,88,88,88,411,411,88,88',
'88,638,88,88,331,13,88,934,639,88,88,458,88,509,88,21,88,804,88,88,88',
'88,88,88,88,399,88,545,88,35,212,537,399,399,399,459,537,638,399,399',
'638,399,88,88,88,88,638,88,322,88,692,88,690,322,538,690,693,690,557',
'538,24,399,399,557,399,399,399,399,399,459,37,803,290,694,639,772,867',
'932,933,695,772,867,932,933,934,953,411,872,42,872,953,399,399,399,399',
'399,399,399,399,399,399,399,399,399,399,563,563,399,399,399,639,399',
'36,639,99,399,417,804,399,639,359,934,804,399,24,399,934,399,399,399',
'399,399,399,399,400,399,290,399,694,649,649,400,400,400,695,521,24,400',
'400,600,400,399,399,615,399,36,399,23,290,400,399,36,335,765,23,417',
'312,16,16,312,400,400,345,400,400,400,400,400,694,345,193,359,359,359',
'695,751,676,615,676,676,676,676,676,521,360,563,315,211,600,315,400',
'400,400,400,400,400,400,400,400,400,400,400,400,400,335,765,400,400',
'400,213,400,335,765,214,400,601,335,400,361,649,335,765,400,751,400',
'218,400,400,400,400,400,400,400,72,400,400,400,362,335,765,38,38,72',
'336,641,360,360,360,742,602,400,400,72,400,676,400,602,602,602,400,346',
'602,602,602,601,602,863,346,863,863,863,863,863,423,602,602,602,602',
'113,361,361,361,697,113,113,602,602,347,602,602,602,602,602,249,347',
'336,641,742,362,362,362,574,336,641,364,423,348,336,641,423,423,336',
'641,348,263,602,602,602,602,602,602,602,602,602,602,602,602,602,602',
'336,641,602,602,602,697,602,602,295,295,602,299,697,602,602,863,602',
'697,602,264,602,697,602,602,602,602,602,602,602,633,602,602,602,574',
'574,633,364,364,364,697,267,658,574,442,658,393,602,602,602,602,603',
'602,394,602,299,602,587,603,603,603,299,276,603,603,603,608,603,608',
'608,608,608,608,424,309,309,442,603,603,603,442,442,442,442,320,320',
'278,603,603,393,603,603,603,603,603,393,394,349,681,681,587,350,394',
'608,349,424,587,279,350,424,424,273,608,608,608,608,273,603,603,603',
'603,603,603,603,603,603,603,603,603,603,603,280,14,603,603,603,43,603',
'603,14,285,603,288,43,603,603,608,603,14,603,289,603,43,603,603,603',
'603,603,603,603,294,603,296,603,300,510,351,510,510,510,510,510,301',
'351,352,304,353,603,603,603,603,352,603,353,603,307,603,31,31,31,31',
'31,31,355,325,308,31,31,313,325,355,31,510,31,31,31,31,31,31,31,314',
'510,510,510,510,31,31,31,31,31,31,31,567,567,31,316,567,567,567,382',
'31,31,326,31,31,31,31,31,31,31,31,31,327,31,31,31,330,31,31,31,31,31',
'382,382,382,382,382,382,382,382,382,382,382,209,382,382,283,556,382',
'382,209,31,556,283,31,702,332,31,31,209,702,31,283,31,382,373,382,31',
'382,382,382,382,382,382,382,31,382,943,943,708,31,31,31,31,708,31,31',
'443,379,284,31,31,385,382,51,382,284,387,31,391,31,51,51,51,401,284',
'51,51,51,319,51,319,319,319,319,319,413,425,426,443,51,51,51,443,443',
'443,443,427,428,454,51,51,460,51,51,51,51,51,792,473,792,792,792,792',
'792,474,319,319,864,477,864,864,864,864,864,319,319,319,319,479,51,51',
'51,51,51,51,51,51,51,51,51,51,51,51,484,792,51,51,51,286,488,51,497',
'500,51,864,286,51,51,512,51,513,51,514,51,286,51,51,51,51,51,51,51,302',
'51,522,51,529,329,532,302,534,539,540,571,329,577,584,588,302,51,51',
'51,51,329,51,591,51,52,52,52,52,52,52,596,604,339,52,52,606,619,621',
'52,339,52,52,52,52,52,52,52,626,339,628,635,637,52,52,52,52,52,52,52',
'640,524,52,524,524,524,524,524,52,52,643,52,52,52,52,52,52,52,52,52',
'644,52,52,52,647,52,52,52,52,52,673,648,673,673,673,673,673,668,524',
'668,668,668,668,668,483,650,548,524,653,52,654,483,52,548,662,52,52',
'669,675,52,483,52,548,677,678,52,825,673,825,825,825,825,825,52,668',
'683,673,688,52,52,52,52,691,52,52,668,668,700,52,52,111,111,111,111',
'111,111,52,705,52,111,111,723,744,825,111,745,111,111,111,111,111,111',
'111,746,825,825,748,749,111,111,111,111,111,111,111,753,790,111,790',
'790,790,790,790,111,111,111,111,111,111,111,111,111,111,111,111,758',
'111,111,111,759,111,111,111,111,111,906,760,906,906,906,906,906,855',
'790,855,855,855,855,855,844,764,642,790,776,111,777,844,111,642,778',
'111,111,779,642,111,844,111,642,780,783,111,857,906,857,857,857,857',
'857,111,855,784,786,789,111,111,111,111,791,111,111,855,855,794,111',
'111,195,195,195,195,195,195,111,797,111,195,195,806,810,857,195,811',
'195,195,195,195,195,195,195,814,857,857,815,827,195,195,195,195,195',
'195,195,828,908,195,908,908,908,908,908,195,195,834,195,195,195,195',
'195,195,195,195,195,835,195,195,195,837,195,195,195,195,195,941,841',
'941,941,941,941,941,859,908,859,859,859,859,859,845,846,698,847,865',
'195,869,845,195,698,847,195,195,870,698,195,845,195,698,847,875,195',
'921,941,921,921,921,921,921,195,859,880,881,882,195,195,195,195,883',
'195,195,859,859,885,195,195,217,217,217,217,217,217,195,889,195,217',
'217,896,901,921,217,902,217,217,217,217,217,217,217,903,921,921,904',
'905,217,217,217,217,217,217,217,907,750,217,750,750,750,929,750,217',
'217,931,217,217,217,217,217,217,217,217,217,942,217,217,217,944,217',
'217,217,217,217,887,888,887,887,887,945,887,923,888,923,923,923,923',
'923,900,946,935,888,947,217,948,900,217,935,949,217,217,950,935,217',
'900,217,935,951,954,217,937,955,937,937,937,937,937,217,923,965,,,217',
'217,217,217,,217,217,923,923,,217,217,277,277,277,277,277,277,217,,217',
'277,277,,,937,277,,277,277,277,277,277,277,277,,937,937,,,277,277,277',
'277,277,277,277,,,277,6,6,6,6,6,277,277,,277,277,277,277,277,277,277',
'277,277,,277,277,277,,277,277,277,277,277,429,274,274,274,274,274,,960',
',960,960,960,960,960,,,429,429,,277,,,277,,,277,277,,,277,,277,429,',
'429,277,429,429,429,429,,,,277,960,,,,277,277,277,277,,277,277,960,960',
',277,277,282,282,282,282,282,282,277,,277,282,282,,,,282,,282,282,282',
'282,282,282,282,472,472,472,472,472,282,282,282,282,282,282,282,,,282',
',,,,390,282,282,,282,282,282,282,282,282,282,282,282,,282,282,282,,282',
'282,282,282,282,390,390,390,390,390,390,390,390,390,390,390,,390,390',
',,390,390,,282,,,282,,,282,282,,,282,,282,390,,390,282,390,390,390,390',
'390,390,390,282,390,,,,282,282,282,282,,282,282,,,,282,282,,390,404',
',,,282,,282,404,404,404,,,404,404,404,559,404,559,559,559,559,559,,',
',404,404,404,404,632,632,632,632,632,,,404,404,,404,404,404,404,404',
',,,,,,,,559,559,,,,,,,,559,559,559,559,,404,404,404,404,404,404,404',
'404,404,404,404,404,404,404,,,404,404,404,,,404,,,404,,,404,404,,404',
',404,,404,,404,404,404,404,404,404,404,405,404,404,404,,,,405,405,405',
',,405,405,405,433,405,404,404,404,404,,404,,404,405,405,405,405,,,433',
'433,,,,405,405,,405,405,405,405,405,,,,433,,433,,433,433,433,433,,,433',
',433,,,,,,,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,533,533',
'533,533,533,533,,,,533,533,,,,533,,533,533,533,533,533,533,533,,,,,',
'533,533,533,533,533,533,533,,,533,,,,,,533,533,,533,533,533,533,533',
'533,533,533,533,,533,533,533,,533,533,533,533,533,421,421,421,421,421',
'421,421,421,421,421,421,,421,421,,,421,421,,533,,,533,,,533,533,,,533',
',533,421,,421,533,421,421,421,421,421,421,421,533,421,,,,533,533,533',
'533,,533,533,,,,533,533,536,536,536,536,536,536,533,,533,536,536,,,',
'536,,536,536,536,536,536,536,536,,,,,,536,536,536,536,536,536,536,,',
'536,,,,,,536,536,,536,536,536,536,536,536,536,536,536,,536,536,536,',
'536,536,536,536,536,422,422,422,422,422,422,422,422,422,422,422,,422',
'422,,,422,422,,536,,,536,,,536,536,,,536,,536,422,,422,536,422,422,422',
'422,422,422,422,536,422,,,,536,536,536,536,,536,536,,,,536,536,558,558',
'558,558,558,558,536,,536,558,558,,,,558,,558,558,558,558,558,558,558',
',,,,,558,558,558,558,558,558,558,,,558,,,,,,558,558,,558,558,558,558',
'558,558,558,558,558,,558,558,558,,558,558,558,558,558,432,432,432,432',
'432,432,432,,,432,432,,,,,,432,432,,558,,,558,,,558,558,,,558,,558,432',
',432,558,432,432,432,432,432,432,432,558,432,,,,558,558,558,558,,558',
'558,,,,558,558,610,610,610,610,610,610,558,,558,610,610,,,,610,,610',
'610,610,610,610,610,610,,,,,,610,610,610,610,610,610,610,,,610,,,,,',
'610,610,,610,610,610,610,610,610,610,610,610,,610,610,610,,610,610,610',
'610,610,434,,,,,,,,,,,,,,,,434,434,,610,,,610,,,610,610,,,610,,610,434',
',434,610,434,434,434,434,,,434,610,434,,,,610,610,610,610,,610,610,',
',,610,610,623,623,623,623,623,623,610,,610,623,623,,,,623,,623,623,623',
'623,623,623,623,,,,,,623,623,623,623,623,623,623,,,623,,,,,,623,623',
',623,623,623,623,623,623,623,623,623,,623,623,623,,623,623,623,623,623',
'435,,,,,,,,,,,,,,,,435,435,,623,,,623,,,623,623,,,623,,623,435,,435',
'623,435,435,435,435,,,435,623,435,,,,623,623,623,623,,623,623,,,,623',
'623,624,624,624,624,624,624,623,,623,624,624,,,,624,,624,624,624,624',
'624,624,624,,,,,,624,624,624,624,624,624,624,,,624,,,,,,624,624,,624',
'624,624,624,624,624,624,624,624,,624,624,624,,624,624,624,624,624,436',
',,,,,,,,,,,,,,,436,436,,624,,,624,,,624,624,,,624,,624,436,,436,624',
'436,436,436,436,,,436,624,436,,,,624,624,624,624,,624,624,,,,624,624',
'652,652,652,652,652,652,624,,624,652,652,,,,652,,652,652,652,652,652',
'652,652,,,,,,652,652,652,652,652,652,652,,,652,,,,,,652,652,,652,652',
'652,652,652,652,652,652,652,,652,652,652,,652,652,652,652,652,437,437',
'437,437,437,437,437,,,437,437,,,,,,437,437,,652,,,652,,,652,652,,,652',
',652,437,,437,652,437,437,437,437,437,437,437,652,437,,,,652,652,652',
'652,,652,652,,,,652,652,660,660,660,660,660,660,652,,652,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,438,438,438,438,438,438,438,,,438,438,,,,,,438,438',
',660,,,660,,,660,660,,,660,,660,438,,438,660,438,438,438,438,438,438',
'438,660,438,,,,660,660,660,660,,660,660,,,,660,660,661,661,661,661,661',
'661,660,,660,661,661,,,,661,,661,661,661,661,661,661,661,,,,,,661,661',
'661,661,661,661,661,,,661,,,,,,661,661,,661,661,661,661,661,661,661',
'661,661,,661,661,661,,661,661,661,661,661,439,439,439,439,439,439,439',
',,439,439,,,,,,439,439,,661,,,661,,,661,661,,,661,,661,439,,439,661',
'439,439,439,439,439,439,439,661,439,,,,661,661,661,661,,661,661,,,,661',
'661,701,701,701,701,701,701,661,,661,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,440',
'440,440,440,440,440,440,,,440,440,,,,,,440,440,,701,,,701,,,701,701',
',,701,,701,440,,440,701,440,440,440,440,440,440,440,701,440,,,,701,701',
'701,701,,701,701,,,,701,701,706,706,706,706,706,706,701,,701,706,706',
',,,706,,706,706,706,706,706,706,706,,,,,,706,706,706,706,706,706,706',
',,706,,,,,,706,706,,706,706,706,706,706,706,706,706,706,,706,706,706',
',706,706,706,706,706,441,441,441,441,441,441,441,,,441,441,,,,,,441',
'441,,706,,,706,,,706,706,,,706,,706,441,,441,706,441,441,441,441,441',
'441,441,706,441,,,,706,706,706,706,,706,706,,,,706,706,716,716,716,716',
'716,716,706,,706,716,716,,,,716,,716,716,716,716,716,716,716,,,,,,716',
'716,716,716,716,716,716,,,716,,,,,,716,716,,716,716,716,716,716,716',
'716,716,716,,716,716,716,,716,716,716,716,716,444,444,444,444,444,444',
'444,,,444,444,,,,,,444,444,,716,,,716,,,716,716,,,716,,716,444,,444',
'716,444,444,444,444,444,444,444,716,444,,,,716,716,716,716,,716,716',
',,,716,716,754,754,754,754,754,754,716,,716,754,754,,,,754,,754,754',
'754,754,754,754,754,,,,,,754,754,754,754,754,754,754,,,754,,,,,,754',
'754,,754,754,754,754,754,754,754,754,754,,754,754,754,,754,754,754,754',
'754,445,445,445,445,445,445,445,445,,445,445,,,,,,445,445,,754,,,754',
',,754,754,,,754,,754,445,,445,754,445,445,445,445,445,445,445,754,445',
',,,754,754,754,754,,754,754,,,,754,754,769,769,769,769,769,769,754,',
'754,769,769,,,,769,,769,769,769,769,769,769,769,,,,,,769,769,769,769',
'769,769,769,,,769,,,,,,769,769,,769,769,769,769,769,769,769,769,769',
',769,769,769,,769,769,769,769,769,430,,,,,,,,,,,,,,,,430,430,,769,,',
'769,,,769,769,,,769,,769,430,,430,769,430,430,430,430,,,,769,,,,,769',
'769,769,769,,769,769,,,,769,769,798,798,798,798,798,798,769,,769,798',
'798,,,,798,,798,798,798,798,798,798,798,,,,,,798,798,798,798,798,798',
'798,,,798,,,,,,798,798,,798,798,798,798,798,798,798,798,798,,798,798',
'798,,798,798,798,798,798,431,,,,,,,,,,,,,,,,431,431,,798,,,798,,,798',
'798,,,798,,798,431,,,798,431,431,431,431,,,,798,,,,,798,798,798,798',
',798,798,,,,798,798,799,799,799,799,799,799,798,,798,799,799,,,,799',
',799,799,799,799,799,799,799,,,,,,799,799,799,799,799,799,799,,,799',
',,,,,799,799,,799,799,799,799,799,799,799,799,799,,799,799,799,,799',
'799,799,799,799,,,,,,,,,,,,,,,,,,,,799,,,799,,,799,799,,,799,,799,,',
',799,,,,,,,,799,,,,,799,799,799,799,,799,799,,,,799,799,802,802,802',
'802,802,802,799,,799,802,802,,,,802,,802,802,802,802,802,802,802,,,',
',,802,802,802,802,802,802,802,,,802,,,,,,802,802,,802,802,802,802,802',
'802,802,802,802,,802,802,802,,802,802,802,802,802,,,,,,,,,,,,,,,,,,',
',802,,,802,,,802,802,,,802,,802,,,,802,,,,,,,,802,,,,,802,802,802,802',
',802,802,,,,802,802,808,808,808,808,808,808,802,,802,808,808,,,,808',
',808,808,808,808,808,808,808,,,,,,808,808,808,808,808,808,808,,,808',
',,,,,808,808,,808,808,808,808,808,808,808,808,808,,808,808,808,,808',
'808,808,808,808,,,,,,,,,,,,,,,,,,,,808,,,808,,,808,808,,,808,,808,,',
',808,,,,,,,,808,,,,,808,808,808,808,,808,808,,,,808,808,843,843,843',
'843,843,843,808,,808,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,843,843,843,843,,,,,,,,,,,,,,,,,,',
',843,,,843,,,843,843,,,843,,843,,,,843,,,,,,,,843,,,,,843,843,843,843',
',843,843,,,,843,843,909,909,909,909,909,909,843,,843,909,909,,,,909',
',909,909,909,909,909,909,909,,,,,,909,909,909,909,909,909,909,,,909',
',,,,,909,909,,909,909,909,909,909,909,909,909,909,,909,909,909,,909',
'909,909,909,909,,,,,,,,,,,,,,,,,,,,909,,,909,,,909,909,,,909,,909,,',
',909,,,,,,,,909,,,,,909,909,909,909,,909,909,,,,909,909,915,915,915',
'915,915,915,909,,909,915,915,,,,915,,915,915,915,915,915,915,915,,,',
',,915,915,915,915,915,915,915,,,915,,,,,,915,915,,915,915,915,915,915',
'915,915,915,915,,915,915,915,,915,915,915,915,915,,,,,,,,,,,,,,,,,,',
',915,,,915,,,915,915,,,915,,915,,,,915,,,,,,,,915,,,,,915,915,915,915',
',915,915,,,,915,915,917,917,917,917,917,917,915,,915,917,917,,,,917',
',917,917,917,917,917,917,917,,,,,,917,917,917,917,917,917,917,,,917',
',,,,,917,917,,917,917,917,917,917,917,917,917,917,,917,917,917,,917',
'917,917,917,917,,,,,,,,,,,,,,,,,,,,917,,,917,,,917,917,,,917,,917,,',
',917,,,,,,,,917,,,,,917,917,917,917,,917,917,,,,917,917,,5,5,5,5,5,917',
',917,5,5,,,,5,,5,5,5,5,5,5,5,,,,,,5,5,5,5,5,5,5,,,5,,,,,,5,5,5,5,5,5',
'5,5,5,5,5,5,,5,5,5,,5,5,5,5,5,,,,,,,,,,,,,,,,,,,,5,,,5,,,5,5,,,5,,5',
',,,5,,,,,,,,5,,,,,5,5,5,5,,5,5,,,,5,5,,19,19,19,,19,5,,5,19,19,,,,19',
',19,19,19,19,19,19,19,,,,,,19,19,19,19,19,19,19,,,19,,,,,,,19,,,19,19',
'19,19,19,19,19,19,,19,19,19,,19,19,19,19,19,,,,,,,,,,,,,,,,,,,,19,,',
'19,,,19,19,,,19,,,,,,19,,,,,,,,19,,,,,19,19,19,19,,19,19,,,,19,19,,27',
'27,27,,27,19,,19,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',
'27,27,27,,,,,,,,,,,,,,,,,,,,27,,,27,,,27,27,,,27,,27,,27,,27,,,,,,,',
'27,,,,,27,27,27,27,,27,27,,,,27,27,,28,28,28,,28,27,,27,28,28,,,,28',
',28,28,28,28,28,28,28,,,,,,28,28,28,28,28,28,28,,,28,,,,,,,28,,,28,28',
'28,28,28,28,28,28,28,28,28,28,,28,28,28,28,28,,,,,,,,,,,,,,,,,,,,28',
',,28,,,28,28,,,28,,28,,28,,28,,,,,,,,28,,,,,28,28,28,28,,28,28,,,,28',
'28,,29,29,29,,29,28,,28,29,29,,,,29,,29,29,29,29,29,29,29,,,,,,29,29',
'29,29,29,29,29,,,29,,,,,,,29,,,29,29,29,29,29,29,29,29,29,29,29,29,',
'29,29,29,29,29,,,,,,,,,,,,,,,,,,,,29,,,29,,,29,29,,,29,,29,,29,,29,',
',,,,,,29,,,,,29,29,29,29,,29,29,,,,29,29,,32,32,32,,32,29,,29,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,32,,32,32,,663,32,663,663,663,663,663',
',,,,,,,,,,,,,,32,,,32,,,32,32,,,32,,32,,,,663,,,,,,,,,663,663,663,663',
'32,32,32,32,,32,32,,,,32,32,,33,33,33,,33,32,,32,33,33,,,,33,,33,33',
'33,33,33,33,33,,,,,,33,33,33,33,33,33,33,,,33,,,,,605,,33,,,33,33,33',
'33,33,33,33,33,,33,33,33,,33,33,,,33,605,605,605,605,605,605,605,605',
'605,605,605,,605,605,,,605,605,,33,,,33,,,33,33,,,33,,,605,,605,,605',
'605,605,605,605,605,605,,605,,,,33,33,33,33,,33,33,,,,33,33,,605,,33',
',,33,,33,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,,39,39,39,,39',
'39,39,39,39,,,,,,,,,,,,,,,,,,,,39,,,39,,,39,39,,,39,,,,,,39,,,,,,,,39',
',,,,39,39,39,39,,39,39,,,,39,39,,40,40,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,40,40,40,40,,,,,,,,,,,,,,,,,,,,40,,,40',
',,40,40,,,40,,,,,,40,,,,,,,,40,,,,,40,40,40,40,,40,40,,,,40,40,,41,41',
'41,,41,40,,40,41,41,,,,41,,41,41,41,41,41,41,41,,,,,,41,41,41,41,41',
'41,41,,,41,,,,,,,41,,,41,41,41,41,41,41,41,41,,41,41,41,,41,41,41,41',
'41,,,,,,,,,,,,,,,,,,,,41,,,41,,,41,41,,,41,,,,,,41,,,,,,,,41,,,,,41',
'41,41,41,,41,41,,,,41,41,,53,53,53,,53,41,,41,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,53,53,53,53,,,,,,,,,,,,,,,,,,,,53,,,53,,,53,53',
',,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,54,,,,54,54,,55,55,55,,55,54,,54,55,55,,,,55,,55,55,55,55',
'55,55,55,,,,,,55,55,55,55,55,55,55,,,55,,,,,,,55,,,55,55,55,55,55,55',
'55,55,55,55,55,55,,55,55,55,55,55,,,,,,,,,,,,,,,,,,,,55,,,55,,,55,55',
',,55,,,,,,55,,,,,,,,55,,,,,55,55,55,55,,55,55,,,,55,55,,58,58,58,,58',
'55,,55,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',
'58,,58,58,,,,58,58,,59,59,59,,59,58,,58,59,59,,,,59,,59,59,59,59,59',
'59,59,,,,,,59,59,59,59,59,59,59,,,59,,,,,,,59,,,59,59,59,59,59,59,59',
'59,,59,59,59,,59,59,59,59,59,,,,,,,,,,,,,,,,,,,,59,,,59,,,59,59,,,59',
',,,,,59,,,,,,,,59,,,,,59,59,59,59,,59,59,,,,59,59,,62,62,62,,62,59,',
'59,62,62,,,,62,,62,62,62,62,62,62,62,,,,,,62,62,62,62,62,62,62,,,62',
',,,,,,62,,,62,62,62,62,62,62,62,62,,62,62,62,,62,62,62,62,62,617,617',
'617,617,617,617,617,617,617,617,617,,617,617,,,617,617,,62,,617,62,',
',62,62,,,62,,,617,,617,62,617,617,617,617,617,617,617,62,617,,,,62,62',
'62,62,,62,62,,,,62,62,62,617,,617,,62,62,,62,63,63,63,,63,,,,63,63,',
',,63,,63,63,63,63,63,63,63,,,,,,63,63,63,63,63,63,63,,,63,,,,,,,63,',
',63,63,63,63,63,63,63,63,,63,63,63,,63,63,,665,63,665,665,665,665,665',
',,,,,,,,,,,,,,63,,,63,,,63,63,,,63,,63,,,,665,,,,,,,,,665,665,665,665',
'63,63,63,63,,63,63,,,,63,63,,64,64,64,,64,63,,63,64,64,,,,64,,64,64',
'64,64,64,64,64,,,,,,64,64,64,64,64,64,64,,,64,,,,,,,64,,,64,64,64,64',
'64,64,64,64,,64,64,64,,64,64,,707,64,707,707,707,707,707,,,,,,,,,,,',
'64,,,64,,,64,,,64,64,,,64,,,,,,707,,,,,,,,,707,707,707,707,64,64,64',
'64,,64,64,,,,64,64,,65,65,65,,65,64,,64,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,,820,65,820,820,820,820,820,,,,,,,,,,,,,,,65,,,65',
',,65,65,,,65,,,,,,820,,,,,,,,,820,820,820,820,65,65,65,65,,65,65,,,',
'65,65,,101,101,101,101,101,65,,65,101,101,,,,101,,101,101,101,101,101',
'101,101,,,,,,101,101,101,101,101,101,101,,,101,,,,,,101,101,101,101',
'101,101,101,101,101,101,101,101,,101,101,101,,101,101,101,101,101,20',
'20,20,20,20,20,20,20,20,20,20,,20,20,,,20,20,,101,,,101,,,101,101,,',
'101,,101,20,,20,101,20,20,20,20,20,20,20,101,20,,,,101,101,101,101,',
'101,101,,,,101,101,,20,,,,101,101,,101,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,106,,106,106,,,,106,106,,107,107,107,,107',
'106,,106,107,107,,,,107,,107,107,107,107,107,107,107,,,,,,107,107,107',
'107,107,107,107,,,107,,,,,,,107,,,107,107,107,107,107,107,107,107,,107',
'107,107,,107,107,107,107,107,,,,,,,,,,,,,,,,,,,,107,,,107,,,107,107',
',,107,,,,,,107,,,,,,,,107,,,,,107,107,107,107,,107,107,,,,107,107,,108',
'108,108,,108,107,,107,108,108,,,,108,,108,108,108,108,108,108,108,,',
',,,108,108,108,108,108,108,108,,,108,,,,,,,108,,,108,108,108,108,108',
'108,108,108,,108,108,108,,108,108,108,108,108,,,,,,,,,,,,,,,,,,,,108',
',,108,,,108,108,,,108,,,,,,108,,,,,,,,108,,,,,108,108,108,108,,108,108',
',,,108,108,,109,109,109,,109,108,,108,109,109,,,,109,,109,109,109,109',
'109,109,109,,,,,,109,109,109,109,109,109,109,,,109,,,,,,,109,,,109,109',
'109,109,109,109,109,109,,109,109,109,,109,109,109,109,109,,,,,,,,,,',
',,,,,,,,,109,,,109,,,109,109,,,109,,,,,,109,,,,,,,,109,,,,,109,109,109',
'109,,109,109,,,,109,109,,110,110,110,110,110,109,,109,110,110,,,,110',
',110,110,110,110,110,110,110,,,,,,110,110,110,110,110,110,110,,,110',
',,,,,110,110,,110,110,110,110,110,110,110,110,110,,110,110,110,,110',
'110,110,110,110,,,,,,,,,,,,,,,,,,,,110,,,110,,,110,110,,,110,,110,,',
',110,,,,,,,,110,,,,,110,110,110,110,,110,110,,,,110,110,,196,196,196',
',196,110,,110,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,196,,196,196,,,,196',
'196,,197,197,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,197,197',
',197,197,,,,197,197,,198,198,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,198,,198,198,,,,198,198,,199,199,199,,199,198,,198,199',
'199,,,,199,,199,199,199,199,199,199,199,,,,,,199,199,199,199,199,199',
'199,,,199,,,,,,,199,,,199,199,199,199,199,199,199,199,199,199,199,199',
',199,199,199,199,199,,,,,,,,,,,,,,,,,,,,199,,,199,,,199,199,,,199,,199',
',199,,199,,,,,,,,199,,,,,199,199,199,199,,199,199,,,,199,199,,202,202',
'202,,202,199,,199,202,202,,,,202,,202,202,202,202,202,202,202,,,,,,202',
'202,202,202,202,202,202,,,202,,,,,,,202,,,202,202,202,202,202,202,202',
'202,,202,202,202,,202,202,202,202,202,,,,,,,,,,,,,,,,,,,,202,,,202,',
',202,202,,,202,,,,,,202,,,,,,,,202,,,,,202,202,202,202,,202,202,,,,202',
'202,,203,203,203,,203,202,,202,203,203,,,,203,,203,203,203,203,203,203',
'203,,,,,,203,203,203,203,203,203,203,,,203,,,,,,,203,,,203,203,203,203',
'203,203,203,203,,203,203,203,,203,203,203,203,203,,,,,,,,,,,,,,,,,,',
',203,,,203,,,203,203,,,203,,,,,,203,,,,,,,,203,,,,,203,203,203,203,',
'203,203,,,,203,203,,204,204,204,,204,203,,203,204,204,,,,204,,204,204',
'204,204,204,204,204,,,,,,204,204,204,204,204,204,204,,,204,,,,,,,204',
',,204,204,204,204,204,204,204,204,,204,204,204,,204,204,204,204,204',
',,,,,,,,,,,,,,,,,,,204,,,204,,,204,204,,,204,,,,,,204,,,,,,,,204,,,',
',204,204,204,204,,204,204,,,,204,204,,205,205,205,,205,204,,204,205',
'205,,,,205,,205,205,205,205,205,205,205,,,,,,205,205,205,205,205,205',
'205,,,205,,,,,,,205,,,205,205,205,205,205,205,205,205,,205,205,205,',
'205,205,205,205,205,,,,,,,,,,,,,,,,,,,,205,,,205,,,205,205,,,205,,,',
',,205,,,,,,,,205,,,,,205,205,205,205,,205,205,,,,205,205,,206,206,206',
',206,205,,205,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,206',
'206,216,216,216,,216,206,,206,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,216,216,',
'216,216,,,,216,216,,219,219,219,,219,216,,216,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,219,219,,219,219,,,,219,219,,220,220,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,220,220,,220,220,,,,220,220,,221,221,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,221,221,,221,221,,,,221,221',
',222,222,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,222,222,,222,222',
',,,222,222,,223,223,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,223',
'223,,223,223,,,,223,223,,224,224,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,224,224,,224,224,,,,224,224,,225,225,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,225,225,,225,225,,,,225,225,,226,226,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,226,226,,226,226,,,,226,226',
',227,227,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,227,227,,227,227',
',,,227,227,,228,228,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,228',
'228,,228,228,,,,228,228,,229,229,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,229,229,,229,229,,,,229,229,,230,230,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,230,230,,230,230,,,,230,230,,231,231,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,231,231,,231,231,,,,231,231',
',232,232,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,232,232,,232,232',
',,,232,232,,233,233,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,233',
'233,,233,233,,,,233,233,,234,234,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,234,234,,234,234,,,,234,234,,235,235,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,235,235,,235,235,,,,235,235,,236,236,236',
',236,235,,235,236,236,,,,236,,236,236,236,236,236,236,236,,,,,,236,236',
'236,236,236,236,236,,,236,,,,,,,236,,,236,236,236,236,236,236,236,236',
',236,236,236,,236,236,236,236,236,,,,,,,,,,,,,,,,,,,,236,,,236,,,236',
'236,,,236,,,,,,236,,,,,,,,236,,,,,236,236,236,236,,236,236,,,,236,236',
',237,237,237,,237,236,,236,237,237,,,,237,,237,237,237,237,237,237,237',
',,,,,237,237,237,237,237,237,237,,,237,,,,,,,237,,,237,237,237,237,237',
'237,237,237,,237,237,237,,237,237,237,237,237,,,,,,,,,,,,,,,,,,,,237',
',,237,,,237,237,,,237,,,,,,237,,,,,,,,237,,,,,237,237,237,237,,237,237',
',,,237,237,,238,238,238,,238,237,,237,238,238,,,,238,,238,238,238,238',
'238,238,238,,,,,,238,238,238,238,238,238,238,,,238,,,,,,,238,,,238,238',
'238,238,238,238,238,238,,238,238,238,,238,238,238,238,238,,,,,,,,,,',
',,,,,,,,,238,,,238,,,238,238,,,238,,,,,,238,,,,,,,,238,,,,,238,238,238',
'238,,238,238,,,,238,238,,239,239,239,,239,238,,238,239,239,,,,239,,239',
'239,239,239,239,239,239,,,,,,239,239,239,239,239,239,239,,,239,,,,,',
',239,,,239,239,239,239,239,239,239,239,,239,239,239,,239,239,239,239',
'239,,,,,,,,,,,,,,,,,,,,239,,,239,,,239,239,,,239,,,,,,239,,,,,,,,239',
',,,,239,239,239,239,,239,239,,,,239,239,,240,240,240,,240,239,,239,240',
'240,,,,240,,240,240,240,240,240,240,240,,,,,,240,240,240,240,240,240',
'240,,,240,,,,,,,240,,,240,240,240,240,240,240,240,240,,240,240,240,',
'240,240,240,240,240,,,,,,,,,,,,,,,,,,,,240,,,240,,,240,240,,,240,,,',
',,240,,,,,,,,240,,,,,240,240,240,240,,240,240,,,,240,240,,241,241,241',
',241,240,,240,241,241,,,,241,,241,241,241,241,241,241,241,,,,,,241,241',
'241,241,241,241,241,,,241,,,,,,,241,,,241,241,241,241,241,241,241,241',
',241,241,241,,241,241,241,241,241,,,,,,,,,,,,,,,,,,,,241,,,241,,,241',
'241,,,241,,,,,,241,,,,,,,,241,,,,,241,241,241,241,,241,241,,,,241,241',
',242,242,242,,242,241,,241,242,242,,,,242,,242,242,242,242,242,242,242',
',,,,,242,242,242,242,242,242,242,,,242,,,,,,,242,,,242,242,242,242,242',
'242,242,242,,242,242,242,,242,242,242,242,242,,,,,,,,,,,,,,,,,,,,242',
',,242,,,242,242,,,242,,,,,,242,,,,,,,,242,,,,,242,242,242,242,,242,242',
',,,242,242,,243,243,243,,243,242,,242,243,243,,,,243,,243,243,243,243',
'243,243,243,,,,,,243,243,243,243,243,243,243,,,243,,,,,,,243,,,243,243',
'243,243,243,243,243,243,,243,243,243,,243,243,243,243,243,,,,,,,,,,',
',,,,,,,,,243,,,243,,,243,243,,,243,,,,,,243,,,,,,,,243,,,,,243,243,243',
'243,,243,243,,,,243,243,,244,244,244,,244,243,,243,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,244,244,,244,244,,,,244,244,,250,250,250,,250,244,,244,250',
'250,,,,250,,250,250,250,250,250,250,250,,,,,,250,250,250,250,250,250',
'250,,,250,,,,,,,250,,,250,250,250,250,250,250,250,250,250,250,250,250',
',250,250,250,250,250,,,,,,,,,,,,,,,,,,,,250,,,250,,,250,250,,,250,,250',
',250,,250,,,,,,,,250,,,,,250,250,250,250,,250,250,,,,250,250,,251,251',
'251,,251,250,,250,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,,,,,,,,251,,,,,251,251,251,251,,251,251',
',,,251,251,,259,259,259,,259,251,,251,259,259,,,,259,,259,259,259,259',
'259,259,259,,,,,,259,259,259,259,259,259,259,,,259,,,,,,,259,,,259,259',
'259,259,259,259,259,259,259,259,259,259,,259,259,259,259,259,,,,,,,',
',,,,,,,,,,,,259,,,259,,,259,259,,,259,,259,,259,,259,,,,,,,,259,,,,',
'259,259,259,259,,259,259,,,,259,259,259,266,266,266,,266,259,,259,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,266,,,,266,266,,268,268,268',
',268,266,,266,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',
',270,270,270,,270,268,,268,270,270,,,,270,,270,270,270,270,270,270,270',
',,,,,270,270,270,270,270,270,270,,,270,,,,,,,270,,,270,270,270,270,270',
'270,270,270,,270,270,270,,270,270,270,270,270,,,,,,,,,,,,,,,,,,,,270',
',,270,,,270,270,,,270,,,,,,270,,,,,,,,270,,,,,270,270,270,270,,270,270',
',,,270,270,,275,275,275,275,275,270,,270,275,275,,,,275,,275,275,275',
'275,275,275,275,,,,,,275,275,275,275,275,275,275,,,275,,,,,,275,275',
',275,275,275,275,275,275,275,275,275,,275,275,275,,275,275,275,275,275',
',,,,,,,,,,,,,,,,,,,275,,,275,,,275,275,,,275,,275,,,,275,,,,,,,,275',
',,,,275,275,275,275,,275,275,,,,275,275,,281,281,281,,281,275,,275,281',
'281,,,,281,,281,281,281,281,281,281,281,,,,,,281,281,281,281,281,281',
'281,,,281,,,,,,,281,,,281,281,281,281,281,281,281,281,,281,281,281,',
'281,281,,,281,261,261,261,261,261,261,261,261,261,261,261,,261,261,',
',261,261,,281,,,281,,,281,281,,,281,,,261,,261,,261,261,261,261,261',
'261,261,,261,,,,281,281,281,281,,281,281,,,,281,281,,261,,281,,,281',
',281,297,297,297,,297,,,,297,297,,,,297,,297,297,297,297,297,297,297',
',,,,,297,297,297,297,297,297,297,,,297,,,,,,,297,,,297,297,297,297,297',
'297,297,297,,297,297,297,,297,297,,822,297,822,822,822,822,822,,,,,',
',,,,,,,,,297,,,297,,,297,297,,,297,,,,,,822,,,,,,,,,822,822,822,822',
'297,297,297,297,,297,297,,,,297,297,,306,306,306,,306,297,,297,306,306',
',,,306,,306,306,306,306,306,306,306,,,,,,306,306,306,306,306,306,306',
',,306,,,,,,,306,,,306,306,306,306,306,306,306,306,,306,306,306,,306',
'306,306,306,306,,,,,,,,,,,,,,,,,,,,306,,,306,306,,306,306,,,306,,,,',
',306,,,,,,,,306,,,,,306,306,306,306,,306,306,,,,306,306,,323,323,323',
',323,306,,306,323,323,,,,323,,323,323,323,323,323,323,323,,,,,,323,323',
'323,323,323,323,323,,,323,,,,,,,323,,,323,323,323,323,323,323,323,323',
',323,323,323,,323,323,323,323,323,,,,,,,,,,,,,,,,,,,,323,,,323,,,323',
'323,,,323,,,,,,323,,,,,,,,323,,,,,323,323,323,323,,323,323,,,,323,323',
',324,324,324,,324,323,,323,324,324,,,,324,,324,324,324,324,324,324,324',
',,,,,324,324,324,324,324,324,324,,,324,,,,,,,324,,,324,324,324,324,324',
'324,324,324,,324,324,324,,324,324,324,324,324,,,,,,,,,,,,,,,,,,,,324',
',,324,,,324,324,,,324,,,,,,324,,,,,,,,324,,,,,324,324,324,324,,324,324',
',,,324,324,,342,342,342,,342,324,,324,342,342,,,,342,,342,342,342,342',
'342,342,342,,,,,,342,342,342,342,342,342,342,,,342,,,,,,,342,,,342,342',
'342,342,342,342,342,342,,342,342,342,,342,342,342,342,342,,,,,,,,,,',
',,,,,,,,,342,,,342,,,342,342,,,342,,,,,,342,,,,,,,,342,,,,,342,342,342',
'342,,342,342,,,,342,342,,357,357,357,,357,342,,342,357,357,,,,357,,357',
'357,357,357,357,357,357,,,,,,357,357,357,357,357,357,357,,,357,,,,,',
',357,,,357,357,357,357,357,357,357,357,,357,357,357,,357,357,357,357',
'357,,,,,,,,,,,,,,,,,,,,357,,,357,,,357,357,,,357,,,,,,357,,,,,,,,357',
',,,,357,357,357,357,,357,357,,,,357,357,,384,384,384,,384,357,,357,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,,416,416,416',
',416,384,,384,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,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,,418,418,418,,418,416,,416,418,418,,,,418,,418,418,418,418',
'418,418,418,,,,,,418,418,418,418,418,418,418,,,418,,,,,,,418,,,418,418',
'418,418,418,418,418,418,,418,418,418,,418,418,418,418,418,,,,,,,,,,',
',,,,,,,,,418,,,418,,,418,418,,,418,,,,,,418,,,,,,,,418,,,,,418,418,418',
'418,,418,418,,,,418,418,,419,419,419,,419,418,,418,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,419,419,,419,419,,,,419,419,,420,420,420,,420,419,,419,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,,420,420,,,,420,420,,457,457,457',
',457,420,,420,457,457,,,,457,,457,457,457,457,457,457,457,,,,,,457,457',
'457,457,457,457,457,,,457,,,,,,,457,,,457,457,457,457,457,457,457,457',
'457,457,457,457,,457,457,457,457,457,,,,,,,,,,,,,,,,,,,,457,,,457,,',
'457,457,,,457,,,,457,,457,,,,,,,,457,,,,,457,457,457,457,,457,457,,',
',457,457,,463,463,463,,463,457,,457,463,463,,,,463,,463,463,463,463',
'463,463,463,,,,,,463,463,463,463,463,463,463,,,463,,,,,,,463,,,463,463',
'463,463,463,463,463,463,463,463,463,463,,463,463,463,463,463,,,,,,,',
',,,,,,,,,,,,463,,,463,,,463,463,,,463,,463,,463,,463,,,,,,,,463,,,,',
'463,463,463,463,,463,463,,,,463,463,,465,465,465,,465,463,,463,465,465',
',,,465,,465,465,465,465,465,465,465,,,,,,465,465,465,465,465,465,465',
',,465,,,,,,,465,,,465,465,465,465,465,465,465,465,465,465,465,465,,465',
'465,465,465,465,,,,,,,,,,,,,,,,,,,,465,,,465,,,465,465,,,465,,,,465',
',465,,,,,,,,465,,,,,465,465,465,465,,465,465,,,,465,465,,467,467,467',
',467,465,,465,467,467,,,,467,,467,467,467,467,467,467,467,,,,,,467,467',
'467,467,467,467,467,,,467,,,,,,,467,,,467,467,467,467,467,467,467,467',
',467,467,467,,467,467,467,467,467,,,,,,,,,,,,,,,,,,,,467,,,467,,,467',
'467,,,467,,,,,,467,,,,,,,,467,,,,,467,467,467,467,,467,467,,,,467,467',
',471,471,471,471,471,467,,467,471,471,,,,471,,471,471,471,471,471,471',
'471,,,,,,471,471,471,471,471,471,471,,,471,,,,,,471,471,,471,471,471',
'471,471,471,471,471,471,,471,471,471,,471,471,471,471,471,407,407,407',
'407,407,407,407,407,407,407,407,,407,407,,,407,407,,471,,,471,,,471',
'471,,,471,,471,407,,407,471,407,407,407,407,407,407,407,471,407,,,,471',
'471,471,471,,471,471,,,,471,471,,407,,,,471,471,,471,478,478,478,,478',
',,,478,478,,,,478,,478,478,478,478,478,478,478,,,,,,478,478,478,478',
'478,478,478,,,478,,,,,,,478,,,478,478,478,478,478,478,478,478,,478,478',
'478,,478,478,,852,478,852,852,852,852,852,,,,,,,,,,,,,,,478,,,478,,',
'478,478,,,478,,,,,,852,,,,,,,,,852,852,852,852,478,478,478,478,,478',
'478,,,,478,478,,480,480,480,,480,478,,478,480,480,,,,480,,480,480,480',
'480,480,480,480,,,,,,480,480,480,480,480,480,480,,,480,,,,,,,480,,,480',
'480,480,480,480,480,480,480,480,480,480,480,,480,480,480,480,480,,,',
',,,,,,,,,,,,,,,,480,,,480,,,480,480,,,480,,480,,480,,480,,,,,,,,480',
',,,,480,480,480,480,,480,480,,,,480,480,,487,487,487,,487,480,,480,487',
'487,,,,487,,487,487,487,487,487,487,487,,,,,,487,487,487,487,487,487',
'487,,,487,,,,,,,487,,,487,487,487,487,487,487,487,487,,487,487,487,',
'487,487,,878,487,878,878,878,878,878,,,,,,,,,,,,,,,487,,,487,,,487,487',
',,487,,,,,,878,878,,,,,,,,878,878,878,878,487,487,487,487,,487,487,',
',,487,487,,490,490,490,,490,487,,487,490,490,,,,490,,490,490,490,490',
'490,490,490,,,,,,490,490,490,490,490,490,490,,,490,,,,,,,490,,,490,490',
'490,490,490,490,490,490,,490,490,490,,490,490,490,490,490,,,,,,,,,,',
',,,,,,,,,490,,,490,,,490,490,,,490,,,,,,490,,,,,,,,490,,,,,490,490,490',
'490,,490,490,,,,490,490,,491,491,491,,491,490,,490,491,491,,,,491,,491',
'491,491,491,491,491,491,,,,,,491,491,491,491,491,491,491,,,491,,,,,',
',491,,,491,491,491,491,491,491,491,491,,491,491,491,,491,491,491,491',
'491,,,,,,,,,,,,,,,,,,,,491,,,491,,,491,491,,,491,,,,,,491,,,,,,,,491',
',,,,491,491,491,491,,491,491,,,,491,491,,492,492,492,,492,491,,491,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,,,,,,,,,,,,,,,,,,,,492,,,492,,,492,492,,,492,,,',
',,492,,,,,,,,492,,,,,492,492,492,492,,492,492,,,,492,492,,496,496,496',
',496,492,,492,496,496,,,,496,,496,496,496,496,496,496,496,,,,,,496,496',
'496,496,496,496,496,,,496,,,,,,,496,,,496,496,496,496,496,496,496,496',
',496,496,496,,496,496,496,496,496,,,,,,,,,,,,,,,,,,,,496,,,496,,,496',
'496,,,496,,,,,,496,,,,,,,,496,,,,,496,496,496,496,,496,496,,,,496,496',
',498,498,498,,498,496,,496,498,498,,,,498,,498,498,498,498,498,498,498',
',,,,,498,498,498,498,498,498,498,,,498,,,,,,,498,,,498,498,498,498,498',
'498,498,498,,498,498,498,,498,498,498,498,498,,,,,,,,,,,,,,,,,,,,498',
',,498,,,498,498,,,498,,498,,,,498,,,,,,,,498,,,,,498,498,498,498,,498',
'498,,,,498,498,,502,502,502,,502,498,,498,502,502,,,,502,,502,502,502',
'502,502,502,502,,,,,,502,502,502,502,502,502,502,,,502,,,,,,,502,,,502',
'502,502,502,502,502,502,502,502,502,502,502,,502,502,502,502,502,,,',
',,,,,,,,,,,,,,,,502,,,502,,,502,502,,,502,,502,,,,502,,,,,,,,502,,,',
',502,502,502,502,,502,502,,,,502,502,,505,505,505,,505,502,,502,505',
'505,,,,505,,505,505,505,505,505,505,505,,,,,,505,505,505,505,505,505',
'505,,,505,,,,,,,505,,,505,505,505,505,505,505,505,505,505,505,505,505',
',505,505,505,505,505,,,,,,,,,,,,,,,,,,,,505,,,505,,,505,505,,,505,,',
',,,505,,,,,,,,505,,,,,505,505,505,505,,505,505,,,,505,505,,541,541,541',
',541,505,,505,541,541,,,,541,,541,541,541,541,541,541,541,,,,,,541,541',
'541,541,541,541,541,,,541,,,,,,,541,,,541,541,541,541,541,541,541,541',
',541,541,541,,541,541,541,541,541,,,,,,,,,,,,,,,,,,,,541,,,541,,,541',
'541,,,541,,541,,,,541,,,,,,,,541,,,,,541,541,541,541,,541,541,,,,541',
'541,,542,542,542,,542,541,,541,542,542,,,,542,,542,542,542,542,542,542',
'542,,,,,,542,542,542,542,542,542,542,,,542,,,,,,,542,,,542,542,542,542',
'542,542,542,542,542,542,542,542,,542,542,542,542,542,,,,,,,,,,,,,,,',
',,,,542,,,542,,,542,542,,,542,,542,,542,,542,,,,,,,,542,,,,,542,542',
'542,542,,542,542,,,,542,542,,552,552,552,,552,542,,542,552,552,,,,552',
',552,552,552,552,552,552,552,,,,,,552,552,552,552,552,552,552,,,552',
',,,,,,552,,,552,552,552,552,552,552,552,552,552,552,552,552,,552,552',
'552,552,552,,,,,,,,,,,,,,,,,,,,552,,,552,,,552,552,,,552,,552,,552,',
'552,,,,,,,,552,,,,,552,552,552,552,,552,552,,,,552,552,,555,555,555',
',555,552,,552,555,555,,,,555,,555,555,555,555,555,555,555,,,,,,555,555',
'555,555,555,555,555,,,555,,,,,,,555,,,555,555,555,555,555,555,555,555',
',555,555,555,,555,555,555,555,555,,,,,,,,,,,,,,,,,,,,555,,,555,,,555',
'555,,,555,,,,,,555,,,,,,,,555,,,,,555,555,555,555,,555,555,,,,555,555',
',583,583,583,,583,555,,555,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,,585,585,585,,585,583,,583,585,585,,,,585,,585,585,585,585',
'585,585,585,,,,,,585,585,585,585,585,585,585,,,585,,,,,,,585,,,585,585',
'585,585,585,585,585,585,,585,585,585,,585,585,585,585,585,,,,,,,,,,',
',,,,,,,,,585,,,585,,,585,585,,,585,,585,,,,585,,,,,,,,585,,,,,585,585',
'585,585,,585,585,,,,585,585,,586,586,586,,586,585,,585,586,586,,,,586',
',586,586,586,586,586,586,586,,,,,,586,586,586,586,586,586,586,,,586',
',,,,,,586,,,586,586,586,586,586,586,586,586,,586,586,586,,586,586,586',
'586,586,,,,,,,,,,,,,,,,,,,,586,,,586,,,586,586,,,586,,,,,,586,,,,,,',
',586,,,,,586,586,586,586,,586,586,,,,586,586,,589,589,589,,589,586,',
'586,589,589,,,,589,,589,589,589,589,589,589,589,,,,,,589,589,589,589',
'589,589,589,,,589,,,,,,,589,,,589,589,589,589,589,589,589,589,,589,589',
'589,,589,589,589,589,589,,,,,,,,,,,,,,,,,,,,589,,,589,,,589,589,,,589',
',,,,,589,,,,,,,,589,,,,,589,589,589,589,,589,589,,,,589,589,,590,590',
'590,,590,589,,589,590,590,,,,590,,590,590,590,590,590,590,590,,,,,,590',
'590,590,590,590,590,590,,,590,,,,,,,590,,,590,590,590,590,590,590,590',
'590,,590,590,590,,590,590,590,590,590,,,,,,,,,,,,,,,,,,,,590,,,590,',
',590,590,,,590,,,,,,590,,,,,,,,590,,,,,590,590,590,590,,590,590,,,,590',
'590,,594,594,594,,594,590,,590,594,594,,,,594,,594,594,594,594,594,594',
'594,,,,,,594,594,594,594,594,594,594,,,594,,,,,,,594,,,594,594,594,594',
'594,594,594,594,,594,594,594,,594,594,594,594,594,,,,,,,,,,,,,,,,,,',
',594,,,594,,,594,594,,,594,,,,,,594,,,,,,,,594,,,,,594,594,594,594,',
'594,594,,,,594,594,,595,595,595,,595,594,,594,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,595,595,,595,595,,,,595,595,,629,629,629,,629,595,,595,629',
'629,,,,629,,629,629,629,629,629,629,629,,,,,,629,629,629,629,629,629',
'629,,,629,,,,,,,629,,,629,629,629,629,629,629,629,629,,629,629,629,',
'629,629,629,629,629,,,,,,,,,,,,,,,,,,,,629,,,629,,,629,629,,,629,,,',
',,629,,,,,,,,629,,,,,629,629,629,629,,629,629,,,,629,629,,634,634,634',
',634,629,,629,634,634,,,,634,,634,634,634,634,634,634,634,,,,,,634,634',
'634,634,634,634,634,,,634,,,,,,,634,,,634,634,634,634,634,634,634,634',
',634,634,634,,634,634,,918,634,918,918,918,918,918,,,,,,,,,,,,,,,634',
',,634,,,634,634,,,634,,,,,,918,,,,,,,,,918,918,918,918,634,634,634,634',
',634,634,,,,634,634,,645,645,645,,645,634,,634,645,645,,,,645,,645,645',
'645,645,645,645,645,,,,,,645,645,645,645,645,645,645,,,645,,,,,,,645',
',,645,645,645,645,645,645,645,645,,645,645,645,,645,645,,,645,,,,,,',
',,,,,,,,,,,,,645,,,645,,,645,645,,,645,,,,,,,,,,,,,,,,,,,645,645,645',
'645,,645,645,,,,645,645,,670,670,670,,670,645,,645,670,670,,,,670,,670',
'670,670,670,670,670,670,,,,,,670,670,670,670,670,670,670,,,670,,,,,',
',670,,,670,670,670,670,670,670,670,670,,670,670,670,,670,670,670,670',
'670,,,,,,,,,,,,,,,,,,,,670,,,670,,,670,670,,,670,,,,,,670,,,,,,,,670',
',,,,670,670,670,670,,670,670,,,,670,670,,696,696,696,,696,670,,670,696',
'696,,,,696,,696,696,696,696,696,696,696,,,,,,696,696,696,696,696,696',
'696,,,696,,,,,,,696,,,696,696,696,696,696,696,696,696,,696,696,696,',
'696,696,696,696,696,,,,,,,,,,,,,,,,,,,,696,,,696,,,696,696,,,696,,,',
',,696,,,,,,,,696,,,,,696,696,696,696,,696,696,,,,696,696,,724,724,724',
',724,696,,696,724,724,,,,724,,724,724,724,724,724,724,724,,,,,,724,724',
'724,724,724,724,724,,,724,,,,,,,724,,,724,724,724,724,724,724,724,724',
',724,724,724,,724,724,724,724,724,,,,,,,,,,,,,,,,,,,,724,,,724,,,724',
'724,,,724,,,,,,724,,,,,,,,724,,,,,724,724,724,724,,724,724,,,,724,724',
',726,726,726,,726,724,,724,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,726,,738,738,738,,738,726,,726,738,738,,,,738,,738,738,738,738',
'738,738,738,,,,,,738,738,738,738,738,738,738,,,738,,,,,,,738,,,738,738',
'738,738,738,738,738,738,,738,738,738,,738,738,738,738,738,,,,,,,,,,',
',,,,,,,,,738,,,738,,,738,738,,,738,,,,,,738,,,,,,,,738,,,,,738,738,738',
'738,,738,738,,,,738,738,,739,739,739,,739,738,,738,739,739,,,,739,,739',
'739,739,739,739,739,739,,,,,,739,739,739,739,739,739,739,,,739,,,,,',
',739,,,739,739,739,739,739,739,739,739,,739,739,739,,739,739,739,739',
'739,,,,,,,,,,,,,,,,,,,,739,,,739,,,739,739,,,739,,,,,,739,,,,,,,,739',
',,,,739,739,739,739,,739,739,,,,739,739,,740,740,740,,740,739,,739,740',
'740,,,,740,,740,740,740,740,740,740,740,,,,,,740,740,740,740,740,740',
'740,,,740,,,,,,,740,,,740,740,740,740,740,740,740,740,,740,740,740,',
'740,740,740,740,740,,,,,,,,,,,,,,,,,,,,740,,,740,,,740,740,,,740,,,',
',,740,,,,,,,,740,,,,,740,740,740,740,,740,740,,,,740,740,,741,741,741',
',741,740,,740,741,741,,,,741,,741,741,741,741,741,741,741,,,,,,741,741',
'741,741,741,741,741,,,741,,,,,,,741,,,741,741,741,741,741,741,741,741',
',741,741,741,,741,741,741,741,741,,,,,,,,,,,,,,,,,,,,741,,,741,,,741',
'741,,,741,,,,,,741,,,,,,,,741,,,,,741,741,741,741,,741,741,,,,741,741',
',743,743,743,,743,741,,741,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,743,,755,755,755,,755,743,,743,755,755,,,,755,,755,755,755,755',
'755,755,755,,,,,,755,755,755,755,755,755,755,,,755,,,,,,,755,,,755,755',
'755,755,755,755,755,755,755,755,755,755,,755,755,755,755,755,,,,,,,',
',,,,,,,,,,,,755,,,755,,,755,755,,,755,,755,,755,,755,,,,,,,,755,,,,',
'755,755,755,755,,755,755,,,,755,755,,762,762,762,,762,755,,755,762,762',
',,,762,,762,762,762,762,762,762,762,,,,,,762,762,762,762,762,762,762',
',,762,,,,,,,762,,,762,762,762,762,762,762,762,762,762,762,762,762,,762',
'762,762,762,762,,,,,,,,,,,,,,,,,,,,762,,,762,,,762,762,,,762,,762,,762',
',762,,,,,,,,762,,,,,762,762,762,762,,762,762,,,,762,762,,773,773,773',
',773,762,,762,773,773,,,,773,,773,773,773,773,773,773,773,,,,,,773,773',
'773,773,773,773,773,,,773,,,,,,,773,,,773,773,773,773,773,773,773,773',
',773,773,773,,773,773,,,773,,,,,,,,,,,,,,,,,,,,773,,,773,,,773,773,',
',773,,,,,,,,,,,,,,,,,,,773,773,773,773,,773,773,,,,773,773,,796,796',
'796,,796,773,,773,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,796,,796,796,,,,796',
'796,,801,801,801,,801,796,,796,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,,818,818,818,,818,801,,801,818,818,,,,818,,818,818',
'818,818,818,818,818,,,,,,818,818,818,818,818,818,818,,,818,,,,,,,818',
',,818,818,818,818,818,818,818,818,,818,818,818,,818,818,818,818,818',
',,,,,,,,,,,,,,,,,,,818,,,818,,,818,818,,,818,,,,,,818,,,,,,,,818,,,',
',818,818,818,818,,818,818,,,,818,818,,832,832,832,,832,818,,818,832',
'832,,,,832,,832,832,832,832,832,832,832,,,,,,832,832,832,832,832,832',
'832,,,832,,,,,,,832,,,832,832,832,832,832,832,832,832,,832,832,832,',
'832,832,,,832,,,,,,,,,,,,,,,,,,,,832,,,832,,,832,832,,,832,,,,,,,,,',
',,,,,,,,,832,832,832,832,,832,832,,,,832,832,,892,892,892,,892,832,',
'832,892,892,,,,892,,892,892,892,892,892,892,892,,,,,,892,892,892,892',
'892,892,892,,,892,,,,,,,892,,,892,892,892,892,892,892,892,892,892,892',
'892,892,,892,892,892,892,892,,,,,,,,,,,,,,,,,,,,892,,,892,,,892,892',
',,892,,892,,892,,892,,,,,,,,892,,,,,892,892,892,892,,892,892,,,,892',
'892,,895,895,895,,895,892,,892,895,895,,,,895,,895,895,895,895,895,895',
'895,,,,,,895,895,895,895,895,895,895,,,895,,,,,,,895,,,895,895,895,895',
'895,895,895,895,,895,895,895,,895,895,895,895,895,,,,,,,,,,,,,,,,,,',
',895,,,895,,,895,895,,,895,,895,,895,,895,,,,,,,,895,,,,,895,895,895',
'895,,895,895,,,,895,895,,897,897,897,,897,895,,895,897,897,,,,897,,897',
'897,897,897,897,897,897,,,,,,897,897,897,897,897,897,897,,,897,,,,,',
',897,,,897,897,897,897,897,897,897,897,897,897,897,897,,897,897,897',
'897,897,446,446,446,446,446,446,446,446,446,446,446,,446,446,,,446,446',
',897,,,897,,,897,897,,,897,,897,446,897,446,897,446,446,446,446,446',
'446,446,897,446,,,,897,897,897,897,,897,897,,,,897,897,446,446,25,,',
',897,,897,25,25,25,,,25,25,25,,25,,,,,,,,,25,25,25,,,,,,,,,25,25,,25',
'25,25,25,25,,,,,,,,,,,,,,,,,,,,,,,25,25,25,25,25,25,25,25,25,25,25,25',
'25,25,,,25,25,25,,,25,,25,25,,,25,25,,25,,25,,25,,25,25,25,25,25,25',
'25,26,25,25,25,,,,26,26,26,,,26,26,26,,26,25,25,,25,,25,,,,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,,26,26,,,26,26,,26,,26,,26,,26',
'26,26,26,26,26,26,395,26,,26,,,,395,395,395,,,395,395,395,,395,26,26',
',26,,26,,,395,395,395,,,,,,,,,395,395,,395,395,395,395,395,,,,,,,,,',
',,,,,,,,,,,,,395,395,395,395,395,395,395,395,395,395,395,395,395,395',
',,395,395,395,,,395,,395,395,,,395,395,,395,,395,,395,,395,395,395,395',
'395,395,395,448,395,395,395,,,,448,448,448,,,448,448,448,,448,395,395',
',395,,395,,,,448,,,,,,,,,,448,448,,448,448,448,448,448,,,,,,,,,,,,451',
',,,,,,451,451,451,,,451,451,451,,451,,,,,,448,,,,451,,,448,,,,,448,448',
'451,451,,451,451,451,451,451,,,,,,200,200,,,200,,,,448,,,,200,200,,200',
'200,200,200,200,200,200,448,,200,200,,448,451,200,200,200,200,,,451',
',,200,,451,451,,,,,200,200,,200,200,200,200,200,200,200,200,200,200',
'200,,,200,451,,,,,,,,,,,,,,451,,,,,451,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8',
'8,8,8,8,8,8,8,8,8,,,,8,8,8,8,8,8,8,8,8,8,,,,,,8,8,8,8,8,8,8,8,8,8,,8',
',,,,,,,8,8,,8,8,8,8,8,8,8,,,8,8,,,,8,8,8,8,,,,,,,,,,,,,,8,8,,8,8,8,8',
'8,8,8,8,8,8,8,,,8,8,,,,,,,,,,,8,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9,9',
'9,9,9,9,9,9,,,,9,9,9,9,9,9,9,9,9,9,,,,,,9,9,9,9,9,9,9,9,9,,,9,,,,,,',
',9,9,,9,9,9,9,9,9,9,,,9,9,,,,9,9,9,9,,,,,,,,,,,,,,9,9,,9,9,9,9,9,9,9',
'9,9,9,9,,,9,9,,,,,,,,,,,9,374,374,374,374,374,374,374,374,374,374,374',
'374,374,374,374,374,374,374,374,374,374,374,374,374,,,,374,374,374,374',
'374,374,374,374,374,374,,,,,,374,374,374,374,374,374,374,374,374,,,374',
',,,,,,,374,374,,374,374,374,374,374,374,374,,,374,374,,,,374,374,374',
'374,,,,,,,,,,,,,,374,374,,374,374,374,374,374,374,374,374,374,374,374',
',,374,374,,,,,,,,,,,374,581,581,581,581,581,581,581,581,581,581,581',
'581,581,581,581,581,581,581,581,581,581,581,581,581,,,,581,581,581,581',
'581,581,581,581,581,581,,,,,,581,581,581,581,581,581,581,581,581,,,581',
',,,,,,,581,581,,581,581,581,581,581,581,581,,,581,581,,,,581,581,581',
'581,,,,,,,,,,,,,,581,581,,581,581,581,581,581,581,581,581,581,581,581',
',,581,581,,,,,,,,,,,581,66,66,66,66,66,66,66,66,66,66,66,66,66,66,66',
'66,66,66,66,66,66,66,66,66,,,,66,66,66,66,66,66,66,66,66,66,,,,,,66',
'66,66,66,66,66,66,66,66,66,66,66,,66,,,,,,66,66,,66,66,66,66,66,66,66',
',,66,66,,,,66,66,66,66,,,,,,66,,,,,,,,66,66,,66,66,66,66,66,66,66,66',
'66,66,66,,,66,709,709,709,709,709,709,709,709,709,709,709,709,709,709',
'709,709,709,709,709,709,709,709,709,709,,,,709,709,709,709,709,709,709',
'709,709,709,,,,,,709,709,709,709,709,709,709,709,709,,,709,,,,,,,,709',
'709,,709,709,709,709,709,709,709,,,709,709,,,,709,709,709,709,,,,,,',
',,,,,,,709,709,,709,709,709,709,709,709,709,709,709,709,709,201,201',
'709,,201,,,,,,,,201,201,,201,201,201,201,201,201,201,,,201,201,,,,201',
'201,201,201,,,,,,201,,,,,,,,201,201,,201,201,201,201,201,201,201,201',
'201,201,201,247,247,201,,247,,,,,,,,247,247,,247,247,247,247,247,247',
'247,,,247,247,,,,247,247,247,247,,,,,,,,,,,,,,247,247,,247,247,247,247',
'247,247,247,247,247,247,247,248,248,247,,248,,,,,,,,248,248,,248,248',
'248,248,248,248,248,,,248,248,,,,248,248,248,248,,,,,,,,,,,,,,248,248',
',248,248,248,248,248,248,248,248,248,248,248,414,414,248,,414,,,,,,',
',414,414,,414,414,414,414,414,414,414,,,414,414,,,,414,414,414,414,',
',,,,414,,,,,,,,414,414,,414,414,414,414,414,414,414,414,414,414,414',
'415,415,414,,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,415,481,481,415,,481,,,,,,,,481,481,,481,481,481,481',
'481,481,481,,,481,481,,,,481,481,481,481,,,,,,481,,,,,,,,481,481,,481',
'481,481,481,481,481,481,481,481,481,481,482,482,481,,482,,,,,,,,482',
'482,,482,482,482,482,482,482,482,,,482,482,,,,482,482,482,482,,,,,,482',
',,,,,,,482,482,,482,482,482,482,482,482,482,482,482,482,482,493,493',
'482,,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,493,493,494,494,493,,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,494,494,494,543,543,494,,543,,,,,,,,543,543,,543',
'543,543,543,543,543,543,,,543,543,,,,543,543,543,543,,,,,,543,,,,,,',
',543,543,,543,543,543,543,543,543,543,543,543,543,543,544,544,543,,544',
',,,,,,,544,544,,544,544,544,544,544,544,544,,,544,544,,,,544,544,544',
'544,,,,,,544,,,,,,,,544,544,,544,544,544,544,544,544,544,544,544,544',
'544,550,550,544,,550,,,,,,,,550,550,,550,550,550,550,550,550,550,,,550',
'550,,,,550,550,550,550,,,,,,550,,,,,,,,550,550,,550,550,550,550,550',
'550,550,550,550,550,550,551,551,550,,551,,,,,,,,551,551,,551,551,551',
'551,551,551,551,,,551,551,,,,551,551,551,551,,,,,,551,,,,,,,,551,551',
',551,551,551,551,551,551,551,551,551,551,551,898,898,551,,898,,,,,,',
',898,898,,898,898,898,898,898,898,898,,,898,898,,,,898,898,898,898,',
',,,,898,,,,,,,,898,898,,898,898,898,898,898,898,898,898,898,898,898',
'899,899,898,,899,,,,,,,,899,899,,899,899,899,899,899,899,899,,,899,899',
',,,899,899,899,899,,,,,,899,,,,,,,,899,899,,899,899,899,899,899,899',
'899,899,899,899,899,927,927,899,,927,,,,,,,,927,927,,927,927,927,927',
'927,927,927,,,927,927,,,,927,927,927,927,,,,,,927,,,,,,,,927,927,,927',
'927,927,927,927,927,927,927,927,927,927,,,927,495,495,495,495,495,495',
'495,495,495,495,495,,495,495,,,495,495,,,,,,,,,,,,,,,495,,495,,495,495',
'495,495,495,495,495,,495,,646,646,646,646,646,646,646,646,646,646,646',
',646,646,,495,646,646,,,,,,,,,,,,,,,646,,646,,646,646,646,646,646,646',
'646,,646,,722,722,722,722,722,722,722,722,722,722,722,,722,722,,646',
'722,722,,,,,,,,,,,,,,,722,,722,,722,722,722,722,722,722,722,,722,,725',
'725,725,725,725,725,725,725,725,725,725,,725,725,,722,725,725,,,,,,',
',,,,,,,,725,,725,,725,725,725,725,725,725,725,,725,,729,729,729,729',
'729,729,729,729,729,729,729,,729,729,,725,729,729,,,,,,,,,,,,,,,729',
',729,,729,729,729,729,729,729,729,,729,,731,731,731,731,731,731,731',
'731,731,731,731,,731,731,,729,731,731,,,,,,,,,,,,,,,731,,731,,731,731',
'731,731,731,731,731,,731,,734,734,734,734,734,734,734,734,734,734,734',
',734,734,,731,734,734,,,,,,,,,,,,,,,734,,734,,734,734,734,734,734,734',
'734,,734,,736,736,736,736,736,736,736,736,736,736,736,,736,736,,734',
'736,736,,,,,,,,,,,,,,,736,,736,,736,736,736,736,736,736,736,,736,,817',
'817,817,817,817,817,817,817,817,817,817,,817,817,,736,817,817,,,,,,',
',,,,,,,,817,,817,,817,817,817,817,817,817,817,,817,,819,819,819,819',
'819,819,819,819,819,819,819,,819,819,,817,819,819,,,,,,,,,,,,,,,819',
',819,,819,819,819,819,819,819,819,,819,,,,,,,,,,,,,,,,,819' ]
racc_action_check = arr = ::Array.new(23457, 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 = [
0, 80, nil, 62, nil, 4744, 1499, 10, 21299, 21423,
39, 29, 57, 133, 607, 55, 345, nil, 29, 4869,
7135, 202, nil, 294, 249, 20787, 20896, 4994, 5119, 5244,
nil, 738, 5369, 5494, nil, 114, 240, 229, 403, 5627,
5752, 5877, 176, 611, nil, nil, nil, nil, nil, nil,
nil, 866, 999, 6002, 6127, 6252, 0, nil, 6377, 6502,
nil, nil, 6627, 6760, 6885, 7010, 21795, nil, nil, nil,
nil, nil, 342, nil, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, 0, nil, nil, 130, nil,
nil, nil, nil, nil, nil, nil, nil, nil, nil, 328,
nil, 7135, nil, nil, nil, nil, 7268, 7393, 7518, 7643,
7768, 1124, nil, 449, 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,
nil, nil, nil, 265, nil, 1249, 7893, 8018, 8143, 8268,
21167, 21967, 8393, 8518, 8643, 8768, 8893, nil, nil, 738,
54, 356, 109, 298, 351, nil, 9018, 1374, 360, 9143,
9268, 9393, 9518, 9643, 9768, 9893, 10018, 10143, 10268, 10393,
10518, 10643, 10768, 10893, 11018, 11143, 11268, 11393, 11518, 11643,
11768, 11893, 12018, 12143, 12268, nil, nil, 22027, 22087, 421,
12393, 12518, nil, nil, nil, nil, nil, nil, nil, 12643,
nil, 13268, nil, 409, 443, nil, 12768, 506, 12893, nil,
13018, nil, nil, 537, 1527, 13143, 479, 1499, 512, 569,
554, 13268, 1624, 741, 784, 637, 874, nil, 605, 576,
261, nil, nil, nil, 623, 500, 585, 13401, nil, 478,
650, 658, 898, nil, 661, nil, 13526, 730, 738, 590,
nil, 34, 254, 656, 650, 284, 690, nil, nil, 830,
600, 48, 136, 13651, 13776, 620, 768, 663, 65, 903,
743, 89, 804, nil, nil, 351, 442, 96, nil, 931,
nil, 55, 13901, nil, nil, 309, 407, 434, 453, 572,
576, 641, 649, 651, nil, 668, nil, 14026, nil, 274,
348, 382, 401, 39, 468, nil, nil, nil, nil, nil,
nil, nil, nil, 725, 21547, nil, nil, nil, nil, 748,
nil, nil, 738, nil, 14151, 735, nil, 740, nil, nil,
1624, 745, nil, 512, 519, 21005, nil, nil, nil, 239,
348, 787, nil, nil, 1752, 1861, nil, 15276, nil, nil,
nil, 174, nil, 798, 22147, 22207, 14276, 244, 14401, 14526,
14651, 1994, 2119, 431, 559, 823, 824, 833, 834, 1499,
3619, 3744, 2244, 1810, 2369, 2494, 2619, 2744, 2869, 2994,
3119, 3244, 530, 793, 3369, 3494, 20659, 79, 21114, nil,
nil, 21169, nil, nil, 775, nil, nil, 14776, 117, 175,
778, nil, nil, 14901, nil, 15026, nil, 15151, nil, nil,
nil, 15276, 1609, 785, 788, nil, nil, 792, 15409, 805,
15534, 22267, 22327, 1002, 857, nil, nil, 15659, 823, nil,
15784, 15909, 16034, 22387, 22447, 22915, 16159, 940, 16284, nil,
829, nil, 16409, nil, nil, 16534, nil, nil, nil, 94,
666, nil, 832, 834, 836, nil, nil, nil, nil, nil,
nil, 272, 926, nil, 985, nil, nil, nil, nil, 928,
nil, nil, 930, 1994, 971, nil, 2119, 119, 142, 968,
976, 16659, 16784, 22507, 22567, 112, nil, nil, 1004, nil,
22627, 22687, 16909, nil, nil, 17034, 693, 146, 2244, 1716,
nil, nil, nil, 283, nil, nil, nil, 721, nil, nil,
nil, 868, nil, nil, 465, nil, nil, 858, nil, nil,
nil, 21671, nil, 17159, 860, 17284, 17409, 523, 896, 17534,
17659, 902, nil, nil, 17784, 17909, 910, nil, nil, nil,
277, 353, 473, 603, 881, 5494, 883, nil, 567, nil,
2369, nil, nil, nil, nil, 293, nil, 6627, -6, 883,
nil, 887, nil, 2494, 2619, nil, 894, nil, 938, 18034,
nil, nil, 1742, 453, 18159, 897, nil, 901, 125, 198,
946, 443, 1129, 956, 926, 18284, 22961, 993, 1000, 317,
1072, nil, 2744, 954, 998, nil, nil, nil, 468, nil,
2869, 2994, 958, 5382, nil, 6773, nil, nil, 1021, 1041,
18409, nil, nil, 1014, nil, 964, 349, 1011, 973, nil,
nil, 637, nil, 1096, nil, nil, nil, nil, 1103, nil,
140, 991, 135, 141, 263, 269, 18534, 481, 1254, nil,
996, 3119, 701, nil, nil, 1123, 3244, 6898, 725, 21907,
nil, nil, nil, nil, nil, nil, 3369, nil, nil, nil,
nil, nil, 23007, 1007, 18659, 23053, 18784, nil, nil, 23099,
nil, 23145, nil, nil, 23191, nil, 23237, nil, 18909, 19034,
19159, 19284, 386, 19409, 1008, 1011, 1019, nil, 1043, 1021,
1360, 312, nil, 1151, 3494, 19534, nil, nil, 1054, 1072,
1182, nil, 19659, nil, 1076, 352, nil, nil, nil, 3619,
nil, nil, 163, 19784, nil, nil, 1096, 1201, 1088, 1088,
1094, nil, nil, 1095, 1106, nil, 1107, nil, nil, 1111,
1110, 1113, 859, nil, 1238, nil, 19909, 1248, 3744, 3869,
nil, 20034, 3994, 156, 205, nil, 1252, nil, 4119, nil,
1253, 1139, nil, nil, 1161, 1147, nil, 23283, 20159, 23329,
7023, nil, 13414, nil, nil, 1050, nil, 1169, 1156, nil,
nil, nil, 20284, nil, 1183, 1176, nil, 1180, nil, nil,
nil, 1187, nil, 4244, 1127, 1252, 1275, 1255, nil, nil,
nil, nil, 15422, nil, nil, 1146, nil, 1175, nil, 1271,
nil, nil, nil, 439, 869, 1204, nil, 164, nil, 1326,
1333, nil, 287, nil, nil, 1340, nil, nil, 15672, nil,
1231, 1232, 1233, 1238, nil, 1243, nil, 1389, 1364, 1327,
nil, nil, 20409, nil, nil, 20534, 1379, 20659, 22747, 22807,
1377, 1258, 1261, 1269, 1272, 1273, 1139, 1281, 1235, 4369,
nil, nil, nil, nil, nil, 4494, nil, 4619, 18172, nil,
nil, 1300, nil, 1396, nil, nil, nil, 22867, nil, 1287,
nil, 1294, 165, 166, 209, 1379, nil, 1425, nil, nil,
nil, 1264, 1301, 836, 1425, 1436, 1326, 1329, 1331, 1335,
1378, 1384, nil, 173, 1345, 1348, nil, nil, nil, nil,
1521, nil, nil, nil, nil, 1356, nil ]
racc_action_default = [
-3, -552, -1, -538, -4, -552, -7, -552, -552, -552,
-552, -552, -552, -552, -552, -280, -39, -40, -540, -552,
-45, -47, -48, -49, -255, -255, -255, -290, -325, -326,
-65, -11, -69, -77, -79, -552, -467, -552, -552, -552,
-552, -552, -540, -232, -273, -274, -275, -276, -277, -278,
-279, -528, -11, -552, -551, -520, -298, -380, -552, -552,
-303, -306, -538, -552, -552, -552, -552, -327, -328, -416,
-417, -418, -419, -420, -435, -423, -424, -437, -439, -428,
-433, -449, -437, -451, -452, -526, -456, -457, -527, -459,
-460, -461, -462, -463, -464, -465, -466, -469, -470, -552,
-2, -539, -547, -548, -549, -6, -552, -552, -552, -552,
-552, -3, -15, -552, -106, -107, -108, -109, -110, -111,
-112, -113, -114, -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, -168, -169, -170, -171, -172, -173, -174,
-175, -176, -177, -178, -179, -180, -181, -182, -183, -184,
-185, -186, -187, -20, -115, -11, -552, -552, -552, -241,
-552, -552, -552, -552, -552, -552, -540, -541, -44, -552,
-467, -552, -280, -552, -552, -224, -552, -11, -552, -552,
-552, -552, -552, -552, -552, -552, -552, -552, -552, -552,
-552, -552, -552, -552, -552, -552, -552, -552, -552, -552,
-552, -552, -552, -552, -552, -386, -388, -552, -552, -54,
-241, -552, -297, -391, -400, -402, -60, -397, -61, -540,
-62, -233, -243, -265, -265, -248, -552, -266, -552, -522,
-552, -63, -64, -538, -12, -552, -67, -11, -540, -552,
-70, -73, -11, -85, -552, -552, -92, -290, -293, -540,
-552, -325, -326, -329, -398, -552, -75, -552, -81, -287,
-453, -454, -552, -209, -210, -225, -552, -408, -552, -283,
-234, -544, -544, -552, -552, -544, -552, -299, -300, -490,
-46, -552, -552, -552, -552, -538, -552, -539, -467, -552,
-552, -280, -552, -339, -340, -101, -102, -552, -104, -552,
-280, -552, -552, -467, -318, -106, -107, -147, -148, -149,
-165, -170, -177, -180, -320, -552, -518, -552, -421, -552,
-552, -552, -552, -552, -552, 967, -5, -550, -21, -22,
-23, -24, -25, -552, -552, -17, -18, -19, -116, -552,
-27, -36, -188, -266, -552, -552, -28, -37, -38, -29,
-190, -540, -242, -529, -530, -255, -395, -531, -532, -530,
-529, -255, -394, -396, -531, -532, -35, -198, -41, -42,
-43, -540, -296, -552, -552, -552, -241, -287, -552, -552,
-552, -199, -200, -201, -202, -203, -204, -205, -206, -211,
-212, -213, -214, -215, -216, -217, -218, -219, -220, -221,
-222, -223, -226, -227, -228, -229, -540, -369, -255, -529,
-530, -255, -52, -55, -540, -256, -257, -258, -369, -369,
-540, -292, -244, -264, -245, -264, -262, -552, -267, -525,
-10, -539, -14, -540, -66, -285, -82, -71, -552, -540,
-241, -552, -552, -91, -552, -453, -454, -552, -78, -83,
-552, -552, -552, -552, -552, -230, -552, -551, -551, -282,
-540, -235, -546, -545, -237, -546, -288, -289, -521, -552,
-490, -383, -517, -517, -517, -489, -491, -492, -493, -494,
-495, -496, -552, -499, -552, -501, -507, -509, -510, -512,
-513, -514, -552, -11, -330, -331, -11, -552, -552, -552,
-552, -552, -241, -552, -552, -287, -311, -101, -102, -103,
-552, -552, -241, -314, -471, -552, -552, -552, -11, -490,
-322, -536, -537, -540, -422, -436, -441, -552, -443, -425,
-438, -552, -440, -427, -552, -430, -432, -552, -450, -8,
-16, -552, -26, -552, -272, -552, -552, -399, -552, -552,
-552, -56, -240, -392, -552, -552, -58, -393, -295, -542,
-529, -530, -529, -530, -540, -188, -552, -370, -374, -372,
-11, -50, -389, -51, -390, -369, -238, -45, -552, -265,
-254, -540, -260, -11, -11, -291, -265, -263, -268, -552,
-523, -524, -13, -68, -552, -74, -80, -540, -529, -530,
-239, -88, -90, -552, -76, -552, -197, -207, -208, -540,
-551, -337, -11, -409, -551, -410, -411, -284, -544, -381,
-11, -11, -374, -552, -482, -552, -485, -487, -552, -552,
-552, -498, -341, -552, -343, -345, -352, -496, -540, -511,
-515, -551, -332, -551, -304, -333, -334, -307, -552, -310,
-552, -540, -529, -530, -533, -286, -552, -101, -102, -105,
-540, -11, -552, -473, -316, -552, -11, -490, -552, -552,
-519, -442, -445, -446, -447, -448, -11, -426, -429, -431,
-434, -117, -189, -270, -552, -191, -552, -543, -31, -193,
-32, -194, -57, -33, -196, -34, -195, -59, -552, -552,
-552, -552, -399, -552, -517, -517, -517, -368, -552, -374,
-552, -496, -505, -552, -11, -552, -251, -259, -540, -552,
-552, -246, -264, -269, -72, -86, -84, -294, -9, -11,
-415, -338, -552, -552, -413, -236, -552, -552, -540, -517,
-517, -502, -516, -517, -517, -508, -517, -497, -503, -540,
-552, -350, -552, -500, -552, -335, -552, -552, -11, -11,
-309, -552, -11, -399, -552, -399, -552, -472, -11, -319,
-552, -540, -475, -323, -552, -271, -30, -192, -552, -231,
-359, -361, -552, -364, -366, -552, -371, -552, -375, -376,
-378, -379, -552, -387, -552, -265, -250, -265, -261, -401,
-403, -265, -414, -11, -93, -552, -552, -100, -412, -384,
-385, -382, -552, -478, -480, -552, -483, -552, -486, -552,
-488, -342, -344, -348, -552, -353, -301, -552, -302, -552,
-552, -268, -551, -312, -315, -552, -321, -474, -490, -444,
-517, -517, -517, -517, -506, -517, -373, -552, -504, -552,
-53, -249, -264, -252, -247, -264, -408, -241, -552, -552,
-99, -517, -517, -517, -517, -346, -552, -351, -552, -11,
-305, -308, -404, -405, -406, -11, -317, -11, -552, -356,
-358, -552, -362, -552, -365, -367, -377, -552, -287, -265,
-407, -540, -529, -530, -533, -98, -476, -552, -479, -481,
-484, -552, -349, -551, -552, -552, -517, -517, -517, -517,
-286, -533, -253, -399, -517, -347, -336, -313, -324, -354,
-552, -357, -360, -363, -477, -517, -355 ]
clist = [
'117,117,205,497,308,11,311,354,540,650,11,515,262,262,262,391,310,13',
'312,315,208,706,13,488,112,194,306,104,533,536,453,630,253,257,101,511',
'11,587,309,381,388,293,293,320,320,120,120,320,13,100,794,321,322,122',
'122,325,549,11,117,276,6,781,745,395,401,6,454,279,333,13,678,630,293',
'293,293,278,249,256,258,501,504,684,687,508,296,785,104,748,829,462',
'464,320,320,320,320,2,865,280,862,368,369,370,371,831,1,105,11,360,326',
'884,448,451,364,610,612,11,11,614,13,746,768,260,271,272,623,624,193',
'13,13,334,620,374,565,615,572,575,627,581,627,341,344,778,313,622,455',
'621,758,356,385,385,314,317,318,332,553,355,560,500,323,798,324,6,799',
'696,915,701,808,558,907,559,372,6,709,878,780,749,783,828,509,659,319',
'246,447,458,262,459,912,654,408,409,410,411,772,405,358,797,359,380',
'386,389,11,366,515,406,635,884,373,361,396,362,942,574,13,644,363,711',
'862,716,781,789,779,688,11,,,926,662,,827,,,379,604,,13,262,262,,,,831',
',,,262,955,,,,,742,515,,279,,,,781,,,,,,,,,,,,699,,,785,484,880,,,395',
'401,,11,754,11,765,,,,11,,,293,,13,,13,,637,104,253,13,747,,257,,471',
'276,293,,320,320,276,,956,279,,,537,538,279,470,,473,,,,,479,557,630',
',,881,477,882,,472,,803,,,917,655,563,,640,456,805,719,873,104,,,,460',
',,640,,691,,764,,489,901,,554,117,,700,,,539,732,,,588,,737,,,,,,,913',
',,,,,580,,,,,,,802,,515,,262,,592,,14,640,405,,597,14,120,,,640,,,,',
'122,,619,396,811,209,,775,626,836,946,606,,209,209,209,627,14,284,284',
',,,309,,,756,,591,,,385,,761,596,,,592,14,209,592,656,,,209,209,262',
'658,209,329,339,339,,,,405,,11,,,843,,649,,,,,405,293,13,396,672,,,690',
',,293,,,,611,396,,613,,,14,,,,705,209,209,209,209,14,14,,,,,,,,,,,262',
',,,632,,,,,405,262,11,,320,11,405,489,,,,,702,,13,396,489,13,914,,,',
',396,412,685,685,11,,627,,,627,681,515,,683,117,909,13,,953,,,703,704',
',,,,,,588,,728,730,930,,,733,735,721,,,14,209,209,209,209,,,209,209',
'209,209,209,770,461,,11,774,,120,,,588,14,,,,122,13,11,11,,,474,,,,',
',,672,13,13,791,293,,,753,,592,,813,597,,806,293,209,209,11,810,759',
'760,891,,893,209,11,11,894,,13,,,,,,588,,13,13,,14,320,14,,588,,284',
'14,771,804,,,,,,,776,777,,489,,117,284,,,,11,835,,,766,11,,931,841,',
',,13,837,,11,,13,,,807,816,209,209,,,812,13,,,,,,,,,,,,,,209,,,,,814',
',,952,672,,672,11,875,640,209,,,598,,,,,,13,,,11,,,,848,15,,320,293',
',15,,13,,,867,834,,,,,,,,,,,,,11,11,842,,11,616,,15,286,286,11,625,13',
'13,,,13,,209,,,,13,,633,685,905,672,15,,636,869,870,,,872,,,293,331',
'340,340,,,,11,,,,,,657,,929,,,,13,,209,,,,,,,945,,,672,,672,,14,,,896',
'15,,262,284,,209,,,,15,15,405,284,,,,,,,,,209,744,,,,396,672,,,,,,,11',
'588,,710,,405,11,,11,,,,13,,,,,,13,,13,,,,14,,,14,,,,943,,209,,,,944',
',,,,,209,,784,209,,786,14,,,,,,,,,,,15,757,,,,,,,316,,,24,,,,,24,,,',
'209,209,15,,,209,209,,,767,24,,,,,,,,24,24,24,14,24,,,,,,,,,,,,14,14',
',,793,,,,,24,24,284,,,,24,24,,,24,,,284,,,,15,,15,14,,,286,15,,,,14',
'14,,,,,,,,,,286,,,,,,,,,,24,,,,,24,24,24,24,24,24,,,,,209,,,,,14,,,',
',14,838,,,,883,,,885,,14,,383,387,,,,,,,209,851,,,,,,,,,,,861,,,902',
',,903,,904,,,,,,,,14,,,,,,877,,,,,,,,,14,,,,845,,24,24,24,24,24,,,24',
'24,24,24,24,,466,,468,,469,,,,209,24,14,14,,,14,,,,,947,14,,948,,949',
',,,,,,,,,,,,,954,,,,24,24,888,,,,,,,24,,,,14,,15,,,36,965,,,286,36,',
'24,,24,,,,286,24,,,,,,,,,,,,,,,,,36,283,283,,,,,,,,,,,,,,,,209,,,36',
',,24,24,,584,15,,14,15,328,343,343,343,14,,14,,,,,24,,,,,,,,,,15,,,',
',24,,,,715,,,,,,,,36,,,,,,,,,36,36,,,,,,,,,,,,,,,,,,,,618,,,,,15,628',
',316,,631,,,,,,,24,15,15,,,664,666,667,,,,,286,,,,,,,,,,,286,653,,,',
'628,,15,316,,,,,,,15,15,,24,,,,,,36,,,,,,,,24,,,,,,,,,24,,,383,,36,',
',,,,,,,,15,24,,,,15,,,,,,,,,,15,,,,,,,,,,,,,,,,,723,,,,,,24,,,24,,,',
',,24,36,,36,,,15,283,36,,24,,,24,,,24,,,,,15,,283,,847,,,,763,,,,,,',
',,,,,,,,,,,24,24,,15,15,24,24,15,,,,,,15,,,,,,,,24,,788,,,,,,,,,,,24',
'24,,340,,,,,,,,,,,15,,,,,,,,,,,,,,,24,821,823,824,,,,,24,24,,,,,815',
',,,,,,,,,,,,,,,,,,,,,853,854,,,856,858,,860,24,,,,,24,,15,,,24,,,15',
',15,,,,,24,,,,,,,,,,24,,,,,,,,,,,,,36,,,,871,,,283,,,,,,,,24,283,,,',
',,,,,,,,,,24,,,,,,,,,,,,,,,,,,,,919,920,922,924,,925,,24,,24,24,,36',
'24,,36,,,,24,,936,938,939,940,,,,,,,,,,,,,36,,,,,,,,628,,,871,,,,,,24',
',,,,,,,,,,,959,961,962,963,,,,,964,,,,,,,,,,,966,,,,36,,,,,,,,,,,,,36',
'36,,,,,24,,,,,283,,,,,,,24,,,,283,,24,215,24,,,36,,,,261,261,261,,36',
'36,,,,,,,303,304,305,,,,,,,,,,,,,261,261,,,,,,,,,,,,,,,,,36,,,,,36,',
',,,,,,,,36,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,36,,,,,,,,,,,,,,,36',
',,,844,,,,,,,,,,,,,,,,,,,,,,,,,36,36,,,36,,,,,,36,,,,,,,,,,,,,,,,,382',
'261,390,261,,,407,343,,,,,,,,,,,36,,215,,,421,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,,,,,,261,261,,,,,,,,261,,,,,,,261,,261,,261,,,,,,,,,,36,,,,',
',36,,36,,,,,,,,,,,,,,,,,,495,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,',
',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,261,,,,,,,,,,,,,,,,,,,,,,,,,,',
',,,,,261,,407,605,390,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,617,,,,,,261',
',261,,261,,,,,,,,,,,,,261,,,,,,,,,,646,647,648,,,,,,261,,,,261,,,261',
',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,261,261,,,,,,,,,,261,,,,,,,,,,,,',
',,,,,,,,,,,,,,,,,,722,,261,725,,,729,731,,,,734,736,,,,,,,,,,,,,,,,',
',,,,,,,,,,,,,,,,,261,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,261,,,',
',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,261,,817,,,,,,,,,',
',,729,731,736,734,,819,,,,,,,,,,,,261,,,,,,,261,,,,,,,,,,,,,,,,,,,,',
',,,,,,,,,,,,,,,,,,261,,,,,,,,,,,,,,,,,817,,,,,,,,,,,,,,,,,,,,,,,,,,',
',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,261,,,261,,261' ]
racc_goto_table = arr = ::Array.new(2780, 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 = [
'52,52,29,10,8,17,61,51,87,11,17,116,31,31,31,22,60,20,63,63,18,91,20',
'47,14,14,29,90,84,84,36,152,64,64,6,125,17,23,27,25,25,58,58,27,27,55',
'55,27,20,4,85,16,16,56,56,16,49,17,52,41,7,147,113,34,34,7,22,9,17,20',
'109,152,58,58,58,42,35,35,35,62,62,86,86,62,46,148,90,118,120,66,66',
'27,27,27,27,2,110,45,107,16,16,16,16,121,1,5,17,138,4,149,34,34,138',
'37,65,17,17,65,20,114,12,40,40,40,37,37,15,20,20,19,67,28,142,38,142',
'142,67,57,67,50,50,118,59,68,69,71,72,79,61,61,80,81,83,88,89,92,93',
'94,95,96,97,7,98,99,100,101,102,103,110,104,7,7,105,106,114,111,114',
'119,122,123,124,126,127,129,31,130,131,132,27,27,27,27,133,52,136,11',
'137,18,18,18,17,5,116,18,47,149,2,139,64,140,110,141,20,47,143,144,107',
'145,147,109,146,87,17,,,120,125,,118,,,9,22,,20,31,31,,,,121,,,,31,110',
',,,,23,116,,9,,,,147,,,,,,,,,,,,49,,,148,29,113,,,34,34,,17,37,17,23',
',,,17,,,58,,20,,20,,22,90,64,20,116,,64,,6,41,58,,27,27,41,,85,9,,,16',
'16,9,4,,42,,,,,42,27,152,,,114,46,114,,7,,23,,,91,25,27,,34,40,23,142',
'86,90,,,,40,,,34,,22,,47,,45,114,,90,52,,22,,,4,36,,,29,,36,,,,,,,11',
',,,,,14,,,,,,,84,,116,,31,,64,,21,34,52,,64,21,55,,,34,,,,,56,,63,64',
'125,21,,62,63,67,114,29,,21,21,21,67,21,21,21,,,,27,,,66,,35,,,61,,66',
'35,,,64,21,21,64,60,,,21,21,31,63,21,21,21,21,,,,52,,17,,,84,,27,,,',
',52,58,20,64,108,,,61,,,58,,,,35,64,,35,,,21,,,,8,21,21,21,21,21,21',
',,,,,,,,,,31,,,,7,,,,,52,31,17,,27,17,52,45,,,,,16,,20,64,45,20,87,',
',,,64,43,90,90,17,,67,,,67,9,116,,9,52,84,20,,23,,,90,90,,,,,,,29,,18',
'18,10,,,18,18,14,,,21,21,21,21,21,,,21,21,21,21,21,60,43,,17,60,,55',
',,29,21,,,,56,20,17,17,,,43,,,,,,,108,20,20,108,58,,,9,,64,,51,64,,8',
'58,21,21,17,8,9,9,66,,66,21,17,17,66,,20,,,,,,29,,20,20,,21,27,21,,29',
',21,21,9,16,,,,,,,9,9,,45,,52,21,,,,17,61,,,45,17,,22,61,,,,20,63,,17',
',20,,,90,18,21,21,,,90,20,,,,,,,,,,,,,,21,,,,,9,,,66,108,,108,17,8,34',
'21,,,43,,,,,,20,,,17,,,,17,24,,27,58,,24,,20,,,16,9,,,,,,,,,,,,,17,17',
'9,,17,43,,24,24,24,17,43,20,20,,,20,,21,,,,20,,43,90,108,108,24,,43',
'9,9,,,9,,,58,24,24,24,,,,17,,,,,,43,,63,,,,20,,21,,,,,,,8,,,108,,108',
',21,,,9,24,,31,21,,21,,,,24,24,52,21,,,,,,,,,21,112,,,,64,108,,,,,,',
'17,29,,43,,52,17,,17,,,,20,,,,,,20,,20,,,,21,,,21,,,,9,,21,,,,9,,,,',
',21,,112,21,,112,21,,,,,,,,,,,24,43,,,,,,,26,,,39,,,,,39,,,,21,21,24',
',,21,21,,,43,39,,,,,,,,39,39,39,21,39,,,,,,,,,,,,21,21,,,43,,,,,39,39',
'21,,,,39,39,,,39,,,21,,,,24,,24,21,,,24,24,,,,21,21,,,,,,,,,,24,,,,',
',,,,,39,,,,,39,39,39,39,39,39,,,,,21,,,,,21,,,,,21,43,,,,112,,,112,',
'21,,26,26,,,,,,,21,43,,,,,,,,,,,43,,,112,,,112,,112,,,,,,,,21,,,,,,43',
',,,,,,,,21,,,,21,,39,39,39,39,39,,,39,39,39,39,39,,26,,26,,26,,,,21',
'39,21,21,,,21,,,,,112,21,,112,,112,,,,,,,,,,,,,,112,,,,39,39,21,,,,',
',,39,,,,21,,24,,,48,112,,,24,48,,39,,39,,,,24,39,,,,,,,,,,,,,,,,,48',
'48,48,,,,,,,,,,,,,,,,21,,,48,,,39,39,,26,24,,21,24,48,48,48,48,21,,21',
',,,,39,,,,,,,,,,24,,,,,39,,,,24,,,,,,,,48,,,,,,,,,48,48,,,,,,,,,,,,',
',,,,,,,26,,,,,24,26,,26,,26,,,,,,,39,24,24,,,115,115,115,,,,,24,,,,',
',,,,,,24,26,,,,26,,24,26,,,,,,,24,24,,39,,,,,,48,,,,,,,,39,,,,,,,,,39',
',,26,,48,,,,,,,,,,24,39,,,,24,,,,,,,,,,24,,,,,,,,,,,,,,,,,26,,,,,,39',
',,39,,,,,,39,48,,48,,,24,48,48,,39,,,39,,,39,,,,,24,,48,,24,,,,26,,',
',,,,,,,,,,,,,,,39,39,,24,24,39,39,24,,,,,,24,,,,,,,,39,,26,,,,,,,,,',
',39,39,,24,,,,,,,,,,,24,,,,,,,,,,,,,,,39,115,115,115,,,,,39,39,,,,,26',
',,,,,,,,,,,,,,,,,,,,,115,115,,,115,115,,115,39,,,,,39,,24,,,39,,,24',
',24,,,,,39,,,,,,,,,,39,,,,,,,,,,,,,48,,,,26,,,48,,,,,,,,39,48,,,,,,',
',,,,,,,39,,,,,,,,,,,,,,,,,,,,115,115,115,115,,115,,39,,39,39,,48,39',
',48,,,,39,,115,115,115,115,,,,,,,,,,,,,48,,,,,,,,26,,,26,,,,,,39,,,',
',,,,,,,,115,115,115,115,,,,,115,,,,,,,,,,,115,,,,48,,,,,,,,,,,,,48,48',
',,,,39,,,,,48,,,,,,,39,,,,48,,39,30,39,,,48,,,,30,30,30,,48,48,,,,,',
',30,30,30,,,,,,,,,,,,,30,30,,,,,,,,,,,,,,,,,48,,,,,48,,,,,,,,,,48,,',
',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,48,,,,,,,,,,,,,,,48,,,,48,,,,,,,',
',,,,,,,,,,,,,,,,,48,48,,,48,,,,,,48,,,,,,,,,,,,,,,,,30,30,30,30,,,30',
'48,,,,,,,,,,,48,,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',
',,,,,,,,,48,,,,,,48,,48,,,,,,,,,,,,,,,,,,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,,,,,,,30,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,',
'30,,,,,,,,,,,,,,,,,30,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,',
',,,,,,,,,,,,,,,,,,,,,,,,,,,30,,,30,,30' ]
racc_goto_check = arr = ::Array.new(2780, 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, 104, 95, nil, 46, 100, 31, 60, -48, 36,
-304, -488, -530, nil, 16, 117, -7, 5, 1, 66,
17, 405, -184, -354, 779, -157, 927, -15, 19, -16,
1882, -15, nil, nil, -137, 52, -219, -334, -319, 985,
94, 28, 44, 354, nil, 65, 51, -274, 1253, -281,
75, -59, -8, nil, nil, 37, 45, -241, 9, 88,
-38, -48, -232, -36, 8, -334, -174, -327, -314, -107,
nil, -312, -476, nil, nil, nil, nil, nil, nil, 81,
95, 95, nil, 95, -293, -631, -456, -318, 90, -187,
24, -538, 89, -199, -152, 98, -525, 99, -525, -383,
-709, -388, -538, -177, -185, -388, -640, -692, -34, -454,
-696, -433, 294, -546, -489, 894, -308, nil, -521, -573,
-662, -647, -141, -330, 123, -284, 160, -63, nil, -71,
-70, -686, -311, -462, nil, nil, 122, 122, 30, 129,
130, -151, -227, 134, -352, -351, -443, -602, -580, -713,
nil, nil, -434 ]
racc_goto_default = [
nil, nil, nil, 3, nil, 4, 327, 274, nil, 307,
nil, 795, nil, 273, nil, nil, nil, 213, 17, 12,
214, 302, nil, nil, 212, nil, 267, 16, nil, 413,
20, 21, 22, 23, 643, nil, nil, nil, nil, 290,
392, 30, nil, nil, 32, 35, 34, nil, 210, 338,
nil, 119, 398, 118, 121, 70, 71, nil, 43, nil,
651, 263, nil, 264, 403, 593, nil, 265, nil, nil,
251, nil, nil, 44, 45, 46, 47, 48, 49, 50,
nil, 252, 56, nil, nil, nil, nil, nil, nil, nil,
534, nil, nil, nil, nil, nil, nil, nil, nil, nil,
nil, nil, nil, nil, nil, nil, nil, 674, 523, nil,
675, nil, 512, nil, 514, nil, 782, 607, nil, nil,
nil, 520, nil, nil, nil, 708, nil, nil, 402, nil,
nil, nil, nil, nil, 69, 72, 73, nil, nil, nil,
nil, nil, 570, nil, nil, nil, 513, 525, 526, 752,
529, 532, 269 ]
racc_reduce_table = [
0, 0, :racc_error,
1, 138, :_reduce_none,
2, 139, :_reduce_2,
0, 140, :_reduce_3,
1, 140, :_reduce_4,
3, 140, :_reduce_5,
2, 140, :_reduce_6,
1, 142, :_reduce_none,
4, 142, :_reduce_8,
4, 145, :_reduce_9,
2, 146, :_reduce_10,
0, 150, :_reduce_11,
1, 150, :_reduce_12,
3, 150, :_reduce_13,
2, 150, :_reduce_14,
0, 165, :_reduce_15,
4, 144, :_reduce_16,
3, 144, :_reduce_17,
3, 144, :_reduce_18,
3, 144, :_reduce_19,
2, 144, :_reduce_20,
3, 144, :_reduce_21,
3, 144, :_reduce_22,
3, 144, :_reduce_23,
3, 144, :_reduce_24,
3, 144, :_reduce_25,
4, 144, :_reduce_26,
3, 144, :_reduce_27,
3, 144, :_reduce_28,
3, 144, :_reduce_29,
6, 144, :_reduce_30,
5, 144, :_reduce_31,
5, 144, :_reduce_32,
5, 144, :_reduce_33,
5, 144, :_reduce_34,
3, 144, :_reduce_35,
3, 144, :_reduce_36,
3, 144, :_reduce_37,
3, 144, :_reduce_38,
1, 144, :_reduce_none,
1, 164, :_reduce_none,
3, 164, :_reduce_41,
3, 164, :_reduce_42,
3, 164, :_reduce_43,
2, 164, :_reduce_44,
1, 164, :_reduce_none,
1, 153, :_reduce_none,
1, 155, :_reduce_none,
1, 155, :_reduce_none,
1, 169, :_reduce_none,
4, 169, :_reduce_50,
4, 169, :_reduce_51,
0, 175, :_reduce_52,
5, 173, :_reduce_53,
2, 168, :_reduce_54,
3, 168, :_reduce_55,
4, 168, :_reduce_56,
5, 168, :_reduce_57,
4, 168, :_reduce_58,
5, 168, :_reduce_59,
2, 168, :_reduce_60,
2, 168, :_reduce_61,
2, 168, :_reduce_62,
2, 168, :_reduce_63,
2, 168, :_reduce_64,
1, 156, :_reduce_65,
3, 156, :_reduce_66,
1, 179, :_reduce_67,
3, 179, :_reduce_68,
1, 178, :_reduce_none,
2, 178, :_reduce_70,
3, 178, :_reduce_71,
5, 178, :_reduce_72,
2, 178, :_reduce_73,
4, 178, :_reduce_74,
2, 178, :_reduce_75,
4, 178, :_reduce_76,
1, 178, :_reduce_77,
3, 178, :_reduce_78,
1, 182, :_reduce_none,
3, 182, :_reduce_80,
2, 181, :_reduce_81,
3, 181, :_reduce_82,
1, 184, :_reduce_83,
3, 184, :_reduce_84,
1, 183, :_reduce_85,
4, 183, :_reduce_86,
3, 183, :_reduce_87,
3, 183, :_reduce_88,
3, 183, :_reduce_89,
3, 183, :_reduce_90,
2, 183, :_reduce_91,
1, 183, :_reduce_92,
1, 154, :_reduce_93,
4, 154, :_reduce_94,
3, 154, :_reduce_95,
3, 154, :_reduce_96,
3, 154, :_reduce_97,
3, 154, :_reduce_98,
2, 154, :_reduce_99,
1, 154, :_reduce_100,
1, 186, :_reduce_101,
1, 186, :_reduce_none,
2, 187, :_reduce_103,
1, 187, :_reduce_104,
3, 187, :_reduce_105,
1, 188, :_reduce_none,
1, 188, :_reduce_none,
1, 188, :_reduce_none,
1, 188, :_reduce_none,
1, 188, :_reduce_none,
1, 191, :_reduce_111,
1, 191, :_reduce_none,
1, 151, :_reduce_none,
1, 151, :_reduce_none,
1, 152, :_reduce_115,
0, 194, :_reduce_116,
4, 152, :_reduce_117,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 189, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
1, 190, :_reduce_none,
3, 167, :_reduce_188,
5, 167, :_reduce_189,
3, 167, :_reduce_190,
5, 167, :_reduce_191,
6, 167, :_reduce_192,
5, 167, :_reduce_193,
5, 167, :_reduce_194,
5, 167, :_reduce_195,
5, 167, :_reduce_196,
4, 167, :_reduce_197,
3, 167, :_reduce_198,
3, 167, :_reduce_199,
3, 167, :_reduce_200,
3, 167, :_reduce_201,
3, 167, :_reduce_202,
3, 167, :_reduce_203,
3, 167, :_reduce_204,
3, 167, :_reduce_205,
3, 167, :_reduce_206,
4, 167, :_reduce_207,
4, 167, :_reduce_208,
2, 167, :_reduce_209,
2, 167, :_reduce_210,
3, 167, :_reduce_211,
3, 167, :_reduce_212,
3, 167, :_reduce_213,
3, 167, :_reduce_214,
3, 167, :_reduce_215,
3, 167, :_reduce_216,
3, 167, :_reduce_217,
3, 167, :_reduce_218,
3, 167, :_reduce_219,
3, 167, :_reduce_220,
3, 167, :_reduce_221,
3, 167, :_reduce_222,
3, 167, :_reduce_223,
2, 167, :_reduce_224,
2, 167, :_reduce_225,
3, 167, :_reduce_226,
3, 167, :_reduce_227,
3, 167, :_reduce_228,
3, 167, :_reduce_229,
3, 167, :_reduce_230,
6, 167, :_reduce_231,
1, 167, :_reduce_none,
1, 163, :_reduce_none,
1, 196, :_reduce_none,
2, 196, :_reduce_none,
4, 196, :_reduce_236,
2, 196, :_reduce_237,
3, 201, :_reduce_238,
0, 202, :_reduce_239,
1, 202, :_reduce_none,
0, 159, :_reduce_241,
1, 159, :_reduce_none,
1, 177, :_reduce_243,
2, 177, :_reduce_244,
2, 177, :_reduce_245,
4, 177, :_reduce_246,
6, 177, :_reduce_247,
1, 177, :_reduce_248,
4, 205, :_reduce_249,
3, 205, :_reduce_250,
2, 205, :_reduce_251,
4, 205, :_reduce_252,
6, 205, :_reduce_253,
1, 205, :_reduce_254,
0, 207, :_reduce_255,
2, 172, :_reduce_256,
1, 206, :_reduce_257,
0, 208, :_reduce_258,
3, 206, :_reduce_259,
0, 209, :_reduce_260,
4, 206, :_reduce_261,
2, 204, :_reduce_262,
2, 203, :_reduce_263,
1, 203, :_reduce_264,
0, 203, :_reduce_265,
1, 198, :_reduce_266,
2, 198, :_reduce_267,
3, 198, :_reduce_268,
4, 198, :_reduce_269,
3, 162, :_reduce_270,
4, 162, :_reduce_271,
2, 162, :_reduce_272,
1, 195, :_reduce_none,
1, 195, :_reduce_none,
1, 195, :_reduce_none,
1, 195, :_reduce_none,
1, 195, :_reduce_none,
1, 195, :_reduce_none,
1, 195, :_reduce_none,
1, 195, :_reduce_none,
1, 195, :_reduce_281,
3, 195, :_reduce_282,
0, 231, :_reduce_283,
4, 195, :_reduce_284,
3, 195, :_reduce_285,
3, 195, :_reduce_286,
2, 195, :_reduce_287,
3, 195, :_reduce_288,
3, 195, :_reduce_289,
1, 195, :_reduce_290,
4, 195, :_reduce_291,
3, 195, :_reduce_292,
1, 195, :_reduce_293,
5, 195, :_reduce_294,
4, 195, :_reduce_295,
3, 195, :_reduce_296,
2, 195, :_reduce_297,
1, 195, :_reduce_none,
2, 195, :_reduce_299,
2, 195, :_reduce_300,
6, 195, :_reduce_301,
6, 195, :_reduce_302,
0, 232, :_reduce_303,
0, 233, :_reduce_304,
7, 195, :_reduce_305,
0, 234, :_reduce_306,
0, 235, :_reduce_307,
7, 195, :_reduce_308,
5, 195, :_reduce_309,
4, 195, :_reduce_310,
0, 236, :_reduce_311,
0, 237, :_reduce_312,
9, 195, :_reduce_313,
0, 238, :_reduce_314,
6, 195, :_reduce_315,
0, 239, :_reduce_316,
7, 195, :_reduce_317,
0, 240, :_reduce_318,
5, 195, :_reduce_319,
0, 241, :_reduce_320,
6, 195, :_reduce_321,
0, 242, :_reduce_322,
0, 243, :_reduce_323,
9, 195, :_reduce_324,
1, 195, :_reduce_325,
1, 195, :_reduce_326,
1, 195, :_reduce_327,
1, 195, :_reduce_328,
1, 158, :_reduce_none,
1, 221, :_reduce_none,
1, 221, :_reduce_none,
2, 221, :_reduce_332,
1, 223, :_reduce_none,
1, 223, :_reduce_none,
1, 222, :_reduce_none,
5, 222, :_reduce_336,
1, 148, :_reduce_none,
2, 148, :_reduce_338,
1, 225, :_reduce_none,
1, 225, :_reduce_none,
1, 244, :_reduce_none,
3, 244, :_reduce_342,
1, 247, :_reduce_343,
3, 247, :_reduce_344,
1, 246, :_reduce_none,
4, 246, :_reduce_346,
6, 246, :_reduce_347,
3, 246, :_reduce_348,
5, 246, :_reduce_349,
2, 246, :_reduce_350,
4, 246, :_reduce_351,
1, 246, :_reduce_352,
3, 246, :_reduce_353,
6, 248, :_reduce_354,
8, 248, :_reduce_355,
4, 248, :_reduce_356,
6, 248, :_reduce_357,
4, 248, :_reduce_358,
2, 248, :_reduce_none,
6, 248, :_reduce_360,
2, 248, :_reduce_361,
4, 248, :_reduce_362,
6, 248, :_reduce_363,
2, 248, :_reduce_364,
4, 248, :_reduce_365,
2, 248, :_reduce_366,
4, 248, :_reduce_367,
1, 248, :_reduce_368,
0, 174, :_reduce_369,
1, 174, :_reduce_370,
3, 254, :_reduce_371,
1, 254, :_reduce_372,
4, 254, :_reduce_373,
0, 255, :_reduce_374,
2, 255, :_reduce_375,
1, 256, :_reduce_376,
3, 256, :_reduce_377,
1, 257, :_reduce_378,
1, 257, :_reduce_none,
0, 261, :_reduce_380,
3, 220, :_reduce_381,
4, 259, :_reduce_382,
1, 259, :_reduce_383,
3, 260, :_reduce_384,
3, 260, :_reduce_385,
0, 264, :_reduce_386,
5, 263, :_reduce_387,
2, 170, :_reduce_388,
4, 170, :_reduce_389,
4, 170, :_reduce_390,
2, 219, :_reduce_391,
4, 219, :_reduce_392,
4, 219, :_reduce_393,
3, 219, :_reduce_394,
3, 219, :_reduce_395,
3, 219, :_reduce_396,
2, 219, :_reduce_397,
1, 219, :_reduce_398,
4, 219, :_reduce_399,
0, 266, :_reduce_400,
5, 218, :_reduce_401,
0, 267, :_reduce_402,
5, 218, :_reduce_403,
5, 224, :_reduce_404,
1, 268, :_reduce_405,
1, 268, :_reduce_none,
6, 147, :_reduce_407,
0, 147, :_reduce_408,
1, 269, :_reduce_409,
1, 269, :_reduce_none,
1, 269, :_reduce_none,
2, 270, :_reduce_412,
1, 270, :_reduce_none,
2, 149, :_reduce_414,
1, 149, :_reduce_none,
1, 210, :_reduce_none,
1, 210, :_reduce_none,
1, 210, :_reduce_none,
1, 211, :_reduce_419,
1, 272, :_reduce_420,
2, 272, :_reduce_421,
3, 273, :_reduce_422,
1, 273, :_reduce_423,
1, 273, :_reduce_424,
3, 212, :_reduce_425,
4, 213, :_reduce_426,
3, 214, :_reduce_427,
0, 277, :_reduce_428,
3, 277, :_reduce_429,
1, 278, :_reduce_430,
2, 278, :_reduce_431,
3, 215, :_reduce_432,
0, 280, :_reduce_433,
3, 280, :_reduce_434,
0, 274, :_reduce_435,
2, 274, :_reduce_436,
0, 275, :_reduce_437,
2, 275, :_reduce_438,
0, 276, :_reduce_439,
2, 276, :_reduce_440,
1, 279, :_reduce_441,
2, 279, :_reduce_442,
0, 282, :_reduce_443,
4, 279, :_reduce_444,
1, 281, :_reduce_445,
1, 281, :_reduce_446,
1, 281, :_reduce_447,
1, 281, :_reduce_none,
1, 192, :_reduce_449,
3, 193, :_reduce_450,
1, 271, :_reduce_451,
1, 271, :_reduce_452,
2, 271, :_reduce_453,
2, 271, :_reduce_454,
1, 185, :_reduce_455,
1, 185, :_reduce_456,
1, 185, :_reduce_457,
1, 185, :_reduce_458,
1, 185, :_reduce_459,
1, 185, :_reduce_460,
1, 185, :_reduce_461,
1, 185, :_reduce_462,
1, 185, :_reduce_463,
1, 185, :_reduce_464,
1, 185, :_reduce_465,
1, 185, :_reduce_466,
1, 216, :_reduce_467,
1, 157, :_reduce_468,
1, 161, :_reduce_469,
1, 161, :_reduce_470,
1, 226, :_reduce_471,
3, 226, :_reduce_472,
2, 226, :_reduce_473,
3, 228, :_reduce_474,
2, 228, :_reduce_475,
6, 262, :_reduce_476,
8, 262, :_reduce_477,
4, 262, :_reduce_478,
6, 262, :_reduce_479,
4, 262, :_reduce_480,
6, 262, :_reduce_481,
2, 262, :_reduce_482,
4, 262, :_reduce_483,
6, 262, :_reduce_484,
2, 262, :_reduce_485,
4, 262, :_reduce_486,
2, 262, :_reduce_487,
4, 262, :_reduce_488,
1, 262, :_reduce_489,
0, 262, :_reduce_490,
1, 258, :_reduce_491,
1, 258, :_reduce_492,
1, 258, :_reduce_493,
1, 258, :_reduce_494,
1, 245, :_reduce_none,
1, 245, :_reduce_496,
3, 245, :_reduce_497,
2, 245, :_reduce_498,
1, 284, :_reduce_none,
3, 284, :_reduce_500,
1, 249, :_reduce_501,
3, 249, :_reduce_502,
3, 285, :_reduce_503,
3, 286, :_reduce_504,
1, 250, :_reduce_505,
3, 250, :_reduce_506,
1, 283, :_reduce_507,
3, 283, :_reduce_508,
1, 287, :_reduce_none,
1, 287, :_reduce_none,
2, 251, :_reduce_511,
1, 251, :_reduce_512,
1, 288, :_reduce_none,
1, 288, :_reduce_none,
2, 253, :_reduce_515,
2, 252, :_reduce_516,
0, 252, :_reduce_517,
1, 229, :_reduce_none,
3, 229, :_reduce_519,
0, 217, :_reduce_520,
2, 217, :_reduce_none,
1, 200, :_reduce_522,
3, 200, :_reduce_523,
3, 289, :_reduce_524,
2, 289, :_reduce_525,
1, 176, :_reduce_none,
1, 176, :_reduce_none,
1, 176, :_reduce_none,
1, 171, :_reduce_none,
1, 171, :_reduce_none,
1, 171, :_reduce_none,
1, 171, :_reduce_none,
1, 265, :_reduce_none,
1, 265, :_reduce_none,
1, 265, :_reduce_none,
1, 230, :_reduce_none,
1, 230, :_reduce_none,
0, 141, :_reduce_none,
1, 141, :_reduce_none,
0, 166, :_reduce_none,
1, 166, :_reduce_none,
2, 180, :_reduce_542,
2, 160, :_reduce_543,
0, 199, :_reduce_none,
1, 199, :_reduce_none,
1, 199, :_reduce_none,
1, 227, :_reduce_547,
1, 227, :_reduce_none,
1, 143, :_reduce_none,
2, 143, :_reduce_none,
0, 197, :_reduce_551 ]
racc_reduce_n = 552
racc_shift_n = 967
racc_token_table = {
false => 0,
:error => 1,
:kCLASS => 2,
:kMODULE => 3,
:kDEF => 4,
:kUNDEF => 5,
:kBEGIN => 6,
:kRESCUE => 7,
:kENSURE => 8,
:kEND => 9,
:kIF => 10,
:kUNLESS => 11,
:kTHEN => 12,
:kELSIF => 13,
:kELSE => 14,
:kCASE => 15,
:kWHEN => 16,
:kWHILE => 17,
:kUNTIL => 18,
:kFOR => 19,
:kBREAK => 20,
:kNEXT => 21,
:kREDO => 22,
:kRETRY => 23,
:kIN => 24,
:kDO => 25,
:kDO_COND => 26,
:kDO_BLOCK => 27,
:kDO_LAMBDA => 28,
:kRETURN => 29,
:kYIELD => 30,
:kSUPER => 31,
:kSELF => 32,
:kNIL => 33,
:kTRUE => 34,
:kFALSE => 35,
:kAND => 36,
:kOR => 37,
:kNOT => 38,
:kIF_MOD => 39,
:kUNLESS_MOD => 40,
:kWHILE_MOD => 41,
:kUNTIL_MOD => 42,
:kRESCUE_MOD => 43,
:kALIAS => 44,
:kDEFINED => 45,
:klBEGIN => 46,
:klEND => 47,
:k__LINE__ => 48,
:k__FILE__ => 49,
:k__ENCODING__ => 50,
:tIDENTIFIER => 51,
:tFID => 52,
:tGVAR => 53,
:tIVAR => 54,
:tCONSTANT => 55,
:tLABEL => 56,
:tCVAR => 57,
:tNTH_REF => 58,
:tBACK_REF => 59,
:tSTRING_CONTENT => 60,
:tINTEGER => 61,
:tFLOAT => 62,
:tUPLUS => 63,
:tUMINUS => 64,
:tUMINUS_NUM => 65,
:tPOW => 66,
:tCMP => 67,
:tEQ => 68,
:tEQQ => 69,
:tNEQ => 70,
:tGEQ => 71,
:tLEQ => 72,
:tANDOP => 73,
:tOROP => 74,
:tMATCH => 75,
:tNMATCH => 76,
:tDOT => 77,
:tDOT2 => 78,
:tDOT3 => 79,
:tAREF => 80,
:tASET => 81,
:tLSHFT => 82,
:tRSHFT => 83,
:tCOLON2 => 84,
:tCOLON3 => 85,
:tOP_ASGN => 86,
:tASSOC => 87,
:tLPAREN => 88,
:tLPAREN2 => 89,
:tRPAREN => 90,
:tLPAREN_ARG => 91,
:tLBRACK => 92,
:tLBRACK2 => 93,
:tRBRACK => 94,
:tLBRACE => 95,
:tLBRACE_ARG => 96,
:tSTAR => 97,
:tSTAR2 => 98,
:tAMPER => 99,
:tAMPER2 => 100,
:tTILDE => 101,
:tPERCENT => 102,
:tDIVIDE => 103,
:tPLUS => 104,
:tMINUS => 105,
:tLT => 106,
:tGT => 107,
:tPIPE => 108,
:tBANG => 109,
:tCARET => 110,
:tLCURLY => 111,
:tRCURLY => 112,
:tBACK_REF2 => 113,
:tSYMBEG => 114,
:tSTRING_BEG => 115,
:tXSTRING_BEG => 116,
:tREGEXP_BEG => 117,
:tREGEXP_OPT => 118,
:tWORDS_BEG => 119,
:tQWORDS_BEG => 120,
:tSTRING_DBEG => 121,
:tSTRING_DVAR => 122,
:tSTRING_END => 123,
:tSTRING => 124,
:tSYMBOL => 125,
:tNL => 126,
:tEH => 127,
:tCOLON => 128,
:tCOMMA => 129,
:tSPACE => 130,
:tSEMI => 131,
:tLAMBDA => 132,
:tLAMBEG => 133,
:tCHARACTER => 134,
:tEQL => 135,
:tLOWEST => 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",
"kCLASS",
"kMODULE",
"kDEF",
"kUNDEF",
"kBEGIN",
"kRESCUE",
"kENSURE",
"kEND",
"kIF",
"kUNLESS",
"kTHEN",
"kELSIF",
"kELSE",
"kCASE",
"kWHEN",
"kWHILE",
"kUNTIL",
"kFOR",
"kBREAK",
"kNEXT",
"kREDO",
"kRETRY",
"kIN",
"kDO",
"kDO_COND",
"kDO_BLOCK",
"kDO_LAMBDA",
"kRETURN",
"kYIELD",
"kSUPER",
"kSELF",
"kNIL",
"kTRUE",
"kFALSE",
"kAND",
"kOR",
"kNOT",
"kIF_MOD",
"kUNLESS_MOD",
"kWHILE_MOD",
"kUNTIL_MOD",
"kRESCUE_MOD",
"kALIAS",
"kDEFINED",
"klBEGIN",
"klEND",
"k__LINE__",
"k__FILE__",
"k__ENCODING__",
"tIDENTIFIER",
"tFID",
"tGVAR",
"tIVAR",
"tCONSTANT",
"tLABEL",
"tCVAR",
"tNTH_REF",
"tBACK_REF",
"tSTRING_CONTENT",
"tINTEGER",
"tFLOAT",
"tUPLUS",
"tUMINUS",
"tUMINUS_NUM",
"tPOW",
"tCMP",
"tEQ",
"tEQQ",
"tNEQ",
"tGEQ",
"tLEQ",
"tANDOP",
"tOROP",
"tMATCH",
"tNMATCH",
"tDOT",
"tDOT2",
"tDOT3",
"tAREF",
"tASET",
"tLSHFT",
"tRSHFT",
"tCOLON2",
"tCOLON3",
"tOP_ASGN",
"tASSOC",
"tLPAREN",
"tLPAREN2",
"tRPAREN",
"tLPAREN_ARG",
"tLBRACK",
"tLBRACK2",
"tRBRACK",
"tLBRACE",
"tLBRACE_ARG",
"tSTAR",
"tSTAR2",
"tAMPER",
"tAMPER2",
"tTILDE",
"tPERCENT",
"tDIVIDE",
"tPLUS",
"tMINUS",
"tLT",
"tGT",
"tPIPE",
"tBANG",
"tCARET",
"tLCURLY",
"tRCURLY",
"tBACK_REF2",
"tSYMBEG",
"tSTRING_BEG",
"tXSTRING_BEG",
"tREGEXP_BEG",
"tREGEXP_OPT",
"tWORDS_BEG",
"tQWORDS_BEG",
"tSTRING_DBEG",
"tSTRING_DVAR",
"tSTRING_END",
"tSTRING",
"tSYMBOL",
"tNL",
"tEH",
"tCOLON",
"tCOMMA",
"tSPACE",
"tSEMI",
"tLAMBDA",
"tLAMBEG",
"tCHARACTER",
"tEQL",
"tLOWEST",
"$start",
"program",
"top_compstmt",
"top_stmts",
"opt_terms",
"top_stmt",
"terms",
"stmt",
"bodystmt",
"compstmt",
"opt_rescue",
"opt_else",
"opt_ensure",
"stmts",
"fitem",
"undef_list",
"expr_value",
"lhs",
"command_call",
"mlhs",
"var_lhs",
"primary_value",
"opt_call_args",
"rbracket",
"backref",
"mrhs",
"arg_value",
"expr",
"@1",
"opt_nl",
"arg",
"command",
"block_command",
"block_call",
"operation2",
"command_args",
"cmd_brace_block",
"opt_block_param",
"@2",
"operation",
"call_args",
"mlhs_basic",
"mlhs_inner",
"rparen",
"mlhs_head",
"mlhs_item",
"mlhs_node",
"mlhs_post",
"variable",
"cname",
"cpath",
"fname",
"op",
"reswords",
"fsym",
"symbol",
"dsym",
"@3",
"primary",
"aref_args",
"none",
"args",
"trailer",
"assocs",
"paren_args",
"opt_paren_args",
"opt_block_arg",
"block_arg",
"call_args2",
"open_args",
"@4",
"@5",
"@6",
"literal",
"strings",
"xstring",
"regexp",
"words",
"qwords",
"var_ref",
"assoc_list",
"brace_block",
"method_call",
"lambda",
"then",
"if_tail",
"do",
"case_body",
"for_var",
"superclass",
"term",
"f_arglist",
"singleton",
"dot_or_colon",
"@7",
"@8",
"@9",
"@10",
"@11",
"@12",
"@13",
"@14",
"@15",
"@16",
"@17",
"@18",
"@19",
"f_marg",
"f_norm_arg",
"f_margs",
"f_marg_list",
"block_param",
"f_arg",
"f_block_optarg",
"f_rest_arg",
"opt_f_block_arg",
"f_block_arg",
"block_param_def",
"opt_bv_decl",
"bv_decls",
"bvar",
"f_bad_arg",
"f_larglist",
"lambda_body",
"@20",
"f_args",
"do_block",
"@21",
"operation3",
"@22",
"@23",
"cases",
"exc_list",
"exc_var",
"numeric",
"string",
"string1",
"string_contents",
"xstring_contents",
"regexp_contents",
"word_list",
"word",
"string_content",
"qword_list",
"string_dvar",
"@24",
"f_optarg",
"f_arg_item",
"f_opt",
"f_block_opt",
"restarg_mark",
"blkarg_mark",
"assoc" ]
Racc_debug_parser = false
##### State transition tables end #####
# reduce 0 omitted
# reduce 1 omitted
def _reduce_2(val, _values, result)
result = @builder.compstmt(val[0])
result
end
def _reduce_3(val, _values, result)
result = []
result
end
def _reduce_4(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_5(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_6(val, _values, result)
result = [ val[1] ]
result
end
# reduce 7 omitted
def _reduce_8(val, _values, result)
result = @builder.preexe(val[0], val[1], val[2], val[3])
result
end
def _reduce_9(val, _values, result)
rescue_bodies = val[1]
else_t, else_ = val[2]
ensure_t, ensure_ = val[3]
if rescue_bodies.empty? && !else_.nil?
diagnostic :warning, :useless_else, nil, else_t
end
result = @builder.begin_body(val[0],
rescue_bodies,
else_t, else_,
ensure_t, ensure_)
result
end
def _reduce_10(val, _values, result)
result = @builder.compstmt(val[0])
result
end
def _reduce_11(val, _values, result)
result = []
result
end
def _reduce_12(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_13(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_14(val, _values, result)
result = [ val[1] ]
result
end
def _reduce_15(val, _values, result)
@lexer.state = :expr_fname
result
end
def _reduce_16(val, _values, result)
result = @builder.alias(val[0], val[1], val[3])
result
end
def _reduce_17(val, _values, result)
result = @builder.alias(val[0],
@builder.gvar(val[1]),
@builder.gvar(val[2]))
result
end
def _reduce_18(val, _values, result)
result = @builder.alias(val[0],
@builder.gvar(val[1]),
@builder.back_ref(val[2]))
result
end
def _reduce_19(val, _values, result)
diagnostic :error, :nth_ref_alias, nil, val[2]
result
end
def _reduce_20(val, _values, result)
result = @builder.undef_method(val[0], val[1])
result
end
def _reduce_21(val, _values, result)
result = @builder.condition_mod(val[0], nil,
val[1], val[2])
result
end
def _reduce_22(val, _values, result)
result = @builder.condition_mod(nil, val[0],
val[1], val[2])
result
end
def _reduce_23(val, _values, result)
result = @builder.loop_mod(:while, val[0], val[1], val[2])
result
end
def _reduce_24(val, _values, result)
result = @builder.loop_mod(:until, val[0], val[1], val[2])
result
end
def _reduce_25(val, _values, result)
rescue_body = @builder.rescue_body(val[1],
nil, nil, nil,
nil, val[2])
result = @builder.begin_body(val[0], [ rescue_body ])
result
end
def _reduce_26(val, _values, result)
result = @builder.postexe(val[0], val[1], val[2], val[3])
result
end
def _reduce_27(val, _values, result)
result = @builder.assign(val[0], val[1], val[2])
result
end
def _reduce_28(val, _values, result)
result = @builder.multi_assign(val[0], val[1], val[2])
result
end
def _reduce_29(val, _values, result)
result = @builder.op_assign(val[0], val[1], val[2])
result
end
def _reduce_30(val, _values, result)
result = @builder.op_assign(
@builder.index(
val[0], val[1], val[2], val[3]),
val[4], val[5])
result
end
def _reduce_31(val, _values, result)
result = @builder.op_assign(
@builder.call_method(
val[0], val[1], val[2]),
val[3], val[4])
result
end
def _reduce_32(val, _values, result)
result = @builder.op_assign(
@builder.call_method(
val[0], val[1], val[2]),
val[3], val[4])
result
end
def _reduce_33(val, _values, result)
diagnostic :error, :const_reassignment, nil, val[3]
result
end
def _reduce_34(val, _values, result)
result = @builder.op_assign(
@builder.call_method(
val[0], val[1], val[2]),
val[3], val[4])
result
end
def _reduce_35(val, _values, result)
@builder.op_assign(val[0], val[1], val[2])
result
end
def _reduce_36(val, _values, result)
result = @builder.assign(val[0], val[1],
@builder.array(nil, val[2], nil))
result
end
def _reduce_37(val, _values, result)
result = @builder.multi_assign(val[0], val[1], val[2])
result
end
def _reduce_38(val, _values, result)
result = @builder.multi_assign(val[0], val[1],
@builder.array(nil, val[2], nil))
result
end
# reduce 39 omitted
# reduce 40 omitted
def _reduce_41(val, _values, result)
result = @builder.logical_op(:and, val[0], val[1], val[2])
result
end
def _reduce_42(val, _values, result)
result = @builder.logical_op(:or, val[0], val[1], val[2])
result
end
def _reduce_43(val, _values, result)
result = @builder.not_op(val[0], nil, val[2], nil)
result
end
def _reduce_44(val, _values, result)
result = @builder.not_op(val[0], nil, val[1], nil)
result
end
# reduce 45 omitted
# reduce 46 omitted
# reduce 47 omitted
# reduce 48 omitted
# reduce 49 omitted
def _reduce_50(val, _values, result)
result = @builder.call_method(val[0], val[1], val[2],
*val[3])
result
end
def _reduce_51(val, _values, result)
result = @builder.call_method(val[0], val[1], val[2],
*val[3])
result
end
def _reduce_52(val, _values, result)
@static_env.extend_dynamic
result
end
def _reduce_53(val, _values, result)
result = [ val[0], val[2], val[3], val[4] ]
@static_env.unextend
result
end
def _reduce_54(val, _values, result)
result = @builder.call_method(nil, nil, val[0],
*val[1])
result
end
def _reduce_55(val, _values, result)
method_call = @builder.call_method(nil, nil, val[0],
*val[1])
begin_t, args, body, end_t = val[2]
result = @builder.block(method_call,
begin_t, args, body, end_t)
result
end
def _reduce_56(val, _values, result)
result = @builder.call_method(val[0], val[1], val[2],
*val[3])
result
end
def _reduce_57(val, _values, result)
method_call = @builder.call_method(val[0], val[1], val[2],
*val[3])
begin_t, args, body, end_t = val[4]
result = @builder.block(method_call,
begin_t, args, body, end_t)
result
end
def _reduce_58(val, _values, result)
result = @builder.call_method(val[0], val[1], val[2],
*val[3])
result
end
def _reduce_59(val, _values, result)
method_call = @builder.call_method(val[0], val[1], val[2],
*val[3])
begin_t, args, body, end_t = val[4]
result = @builder.block(method_call,
begin_t, args, body, end_t)
result
end
def _reduce_60(val, _values, result)
result = @builder.keyword_cmd(:super, val[0],
*val[1])
result
end
def _reduce_61(val, _values, result)
result = @builder.keyword_cmd(:yield, val[0],
*val[1])
result
end
def _reduce_62(val, _values, result)
result = @builder.keyword_cmd(:return, val[0],
nil, val[1], nil)
result
end
def _reduce_63(val, _values, result)
result = @builder.keyword_cmd(:break, val[0],
nil, val[1], nil)
result
end
def _reduce_64(val, _values, result)
result = @builder.keyword_cmd(:next, val[0],
nil, val[1], nil)
result
end
def _reduce_65(val, _values, result)
result = @builder.multi_lhs(nil, val[0], nil)
result
end
def _reduce_66(val, _values, result)
result = @builder.begin(val[0], val[1], val[2])
result
end
def _reduce_67(val, _values, result)
result = @builder.multi_lhs(nil, val[0], nil)
result
end
def _reduce_68(val, _values, result)
result = @builder.multi_lhs(val[0], val[1], val[2])
result
end
# reduce 69 omitted
def _reduce_70(val, _values, result)
result = val[0].
push(val[1])
result
end
def _reduce_71(val, _values, result)
result = val[0].
push(@builder.splat(val[1], val[2]))
result
end
def _reduce_72(val, _values, result)
result = val[0].
push(@builder.splat(val[1], val[2])).
concat(val[4])
result
end
def _reduce_73(val, _values, result)
result = val[0].
push(@builder.splat(val[1]))
result
end
def _reduce_74(val, _values, result)
result = val[0].
push(@builder.splat(val[1])).
concat(val[3])
result
end
def _reduce_75(val, _values, result)
result = [ @builder.splat(val[0], val[1]) ]
result
end
def _reduce_76(val, _values, result)
result = [ @builder.splat(val[0], val[1]),
*val[3] ]
result
end
def _reduce_77(val, _values, result)
result = [ @builder.splat(val[0]) ]
result
end
def _reduce_78(val, _values, result)
result = [ @builder.splat(val[0]),
*val[2] ]
result
end
# reduce 79 omitted
def _reduce_80(val, _values, result)
result = @builder.begin(val[0], val[1], val[2])
result
end
def _reduce_81(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_82(val, _values, result)
result = val[0] << val[1]
result
end
def _reduce_83(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_84(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_85(val, _values, result)
result = @builder.assignable(val[0])
result
end
def _reduce_86(val, _values, result)
result = @builder.index_asgn(val[0], val[1], val[2], val[3])
result
end
def _reduce_87(val, _values, result)
result = @builder.attr_asgn(val[0], val[1], val[2])
result
end
def _reduce_88(val, _values, result)
result = @builder.attr_asgn(val[0], val[1], val[2])
result
end
def _reduce_89(val, _values, result)
result = @builder.attr_asgn(val[0], val[1], val[2])
result
end
def _reduce_90(val, _values, result)
result = @builder.assignable(
@builder.const_fetch(val[0], val[1], val[2]))
result
end
def _reduce_91(val, _values, result)
result = @builder.assignable(
@builder.const_global(val[0], val[1]))
result
end
def _reduce_92(val, _values, result)
result = @builder.assignable(val[0])
result
end
def _reduce_93(val, _values, result)
result = @builder.assignable(val[0])
result
end
def _reduce_94(val, _values, result)
result = @builder.index_asgn(val[0], val[1], val[2], val[3])
result
end
def _reduce_95(val, _values, result)
result = @builder.attr_asgn(val[0], val[1], val[2])
result
end
def _reduce_96(val, _values, result)
result = @builder.attr_asgn(val[0], val[1], val[2])
result
end
def _reduce_97(val, _values, result)
result = @builder.attr_asgn(val[0], val[1], val[2])
result
end
def _reduce_98(val, _values, result)
result = @builder.assignable(
@builder.const_fetch(val[0], val[1], val[2]))
result
end
def _reduce_99(val, _values, result)
result = @builder.assignable(
@builder.const_global(val[0], val[1]))
result
end
def _reduce_100(val, _values, result)
result = @builder.assignable(val[0])
result
end
def _reduce_101(val, _values, result)
diagnostic :error, :module_name_const, nil, val[0]
result
end
# reduce 102 omitted
def _reduce_103(val, _values, result)
result = @builder.const_global(val[0], val[1])
result
end
def _reduce_104(val, _values, result)
result = @builder.const(val[0])
result
end
def _reduce_105(val, _values, result)
result = @builder.const_fetch(val[0], val[1], val[2])
result
end
# reduce 106 omitted
# reduce 107 omitted
# reduce 108 omitted
# reduce 109 omitted
# reduce 110 omitted
def _reduce_111(val, _values, result)
result = @builder.symbol(val[0])
result
end
# reduce 112 omitted
# reduce 113 omitted
# reduce 114 omitted
def _reduce_115(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_116(val, _values, result)
@lexer.state = :expr_fname
result
end
def _reduce_117(val, _values, result)
result = val[0] << val[3]
result
end
# 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
# reduce 168 omitted
# reduce 169 omitted
# reduce 170 omitted
# reduce 171 omitted
# reduce 172 omitted
# reduce 173 omitted
# reduce 174 omitted
# reduce 175 omitted
# reduce 176 omitted
# reduce 177 omitted
# reduce 178 omitted
# reduce 179 omitted
# reduce 180 omitted
# reduce 181 omitted
# reduce 182 omitted
# reduce 183 omitted
# reduce 184 omitted
# reduce 185 omitted
# reduce 186 omitted
# reduce 187 omitted
def _reduce_188(val, _values, result)
result = @builder.assign(val[0], val[1], val[2])
result
end
def _reduce_189(val, _values, result)
rescue_body = @builder.rescue_body(val[3],
nil, nil, nil,
nil, val[4])
rescue_ = @builder.begin_body(val[2], [ rescue_body ])
result = @builder.assign(val[0], val[1], rescue_)
result
end
def _reduce_190(val, _values, result)
result = @builder.op_assign(val[0], val[1], val[2])
result
end
def _reduce_191(val, _values, result)
rescue_body = @builder.rescue_body(val[3],
nil, nil, nil,
nil, val[4])
rescue_ = @builder.begin_body(val[2], [ rescue_body ])
result = @builder.op_assign(val[0], val[1], rescue_)
result
end
def _reduce_192(val, _values, result)
result = @builder.op_assign(
@builder.index(
val[0], val[1], val[2], val[3]),
val[4], val[5])
result
end
def _reduce_193(val, _values, result)
result = @builder.op_assign(
@builder.call_method(
val[0], val[1], val[2]),
val[3], val[4])
result
end
def _reduce_194(val, _values, result)
result = @builder.op_assign(
@builder.call_method(
val[0], val[1], val[2]),
val[3], val[4])
result
end
def _reduce_195(val, _values, result)
result = @builder.op_assign(
@builder.call_method(
val[0], val[1], val[2]),
val[3], val[4])
result
end
def _reduce_196(val, _values, result)
diagnostic :error, :dynamic_const, nil, val[2], [ val[3] ]
result
end
def _reduce_197(val, _values, result)
diagnostic :error, :dynamic_const, nil, val[1], [ val[2] ]
result
end
def _reduce_198(val, _values, result)
result = @builder.op_assign(val[0], val[1], val[2])
result
end
def _reduce_199(val, _values, result)
result = @builder.range_inclusive(val[0], val[1], val[2])
result
end
def _reduce_200(val, _values, result)
result = @builder.range_exclusive(val[0], val[1], val[2])
result
end
def _reduce_201(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_202(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_203(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_204(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_205(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_206(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_207(val, _values, result)
result = @builder.unary_op(val[0],
@builder.binary_op(
@builder.integer(val[1]),
val[2], val[3]))
result
end
def _reduce_208(val, _values, result)
result = @builder.unary_op(val[0],
@builder.binary_op(
@builder.float(val[1]),
val[2], val[3]))
result
end
def _reduce_209(val, _values, result)
result = @builder.unary_op(val[0], val[1])
result
end
def _reduce_210(val, _values, result)
result = @builder.unary_op(val[0], val[1])
result
end
def _reduce_211(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_212(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_213(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_214(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_215(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_216(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_217(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_218(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_219(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_220(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_221(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_222(val, _values, result)
result = @builder.match_op(val[0], val[1], val[2])
result
end
def _reduce_223(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_224(val, _values, result)
result = @builder.not_op(val[0], nil, val[1], nil)
result
end
def _reduce_225(val, _values, result)
result = @builder.unary_op(val[0], val[1])
result
end
def _reduce_226(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_227(val, _values, result)
result = @builder.binary_op(val[0], val[1], val[2])
result
end
def _reduce_228(val, _values, result)
result = @builder.logical_op(:and, val[0], val[1], val[2])
result
end
def _reduce_229(val, _values, result)
result = @builder.logical_op(:or, val[0], val[1], val[2])
result
end
def _reduce_230(val, _values, result)
result = @builder.keyword_cmd(:defined?, val[0], nil, [ val[2] ], nil)
result
end
def _reduce_231(val, _values, result)
result = @builder.ternary(val[0], val[1],
val[2], val[4], val[5])
result
end
# reduce 232 omitted
# reduce 233 omitted
# reduce 234 omitted
# reduce 235 omitted
def _reduce_236(val, _values, result)
result = val[0] << @builder.associate(nil, val[2], nil)
result
end
def _reduce_237(val, _values, result)
result = [ @builder.associate(nil, val[0], nil) ]
result
end
def _reduce_238(val, _values, result)
result = val
result
end
def _reduce_239(val, _values, result)
result = [ nil, [], nil ]
result
end
# reduce 240 omitted
def _reduce_241(val, _values, result)
result = []
result
end
# reduce 242 omitted
def _reduce_243(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_244(val, _values, result)
result = val[0].concat(val[1])
result
end
def _reduce_245(val, _values, result)
result = [ @builder.associate(nil, val[0], nil) ]
result.concat(val[1])
result
end
def _reduce_246(val, _values, result)
assocs = @builder.associate(nil, val[2], nil)
result = val[0] << assocs
result.concat(val[3])
result
end
def _reduce_247(val, _values, result)
val[2][-1] = @builder.objc_varargs(val[2][-1], val[4])
assocs = @builder.associate(nil, val[2], nil)
result = val[0] << assocs
result.concat(val[5])
result
end
def _reduce_248(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_249(val, _values, result)
result = [ val[0], *val[2].concat(val[3]) ]
result
end
def _reduce_250(val, _values, result)
result = [ val[0], val[2] ]
result
end
def _reduce_251(val, _values, result)
result = [ @builder.associate(nil, val[0], nil),
*val[1] ]
result
end
def _reduce_252(val, _values, result)
result = [ val[0],
@builder.associate(nil, val[2], nil),
*val[3] ]
result
end
def _reduce_253(val, _values, result)
result = [ val[0],
*val[2].
push(@builder.associate(nil, val[4], nil)).
concat(val[5]) ]
result
end
def _reduce_254(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_255(val, _values, result)
result = @lexer.cmdarg.dup
@lexer.cmdarg.push(true)
result
end
def _reduce_256(val, _values, result)
@lexer.cmdarg = val[0]
result = val[1]
result
end
def _reduce_257(val, _values, result)
result = [ nil, val[0], nil ]
result
end
def _reduce_258(val, _values, result)
@lexer.state = :expr_endarg
result
end
def _reduce_259(val, _values, result)
result = [ val[0], [], val[2] ]
result
end
def _reduce_260(val, _values, result)
@lexer.state = :expr_endarg
result
end
def _reduce_261(val, _values, result)
result = [ val[0], val[1], val[3] ]
result
end
def _reduce_262(val, _values, result)
result = @builder.block_pass(val[0], val[1])
result
end
def _reduce_263(val, _values, result)
result = [ val[1] ]
result
end
def _reduce_264(val, _values, result)
result = []
result
end
def _reduce_265(val, _values, result)
result = []
result
end
def _reduce_266(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_267(val, _values, result)
result = [ @builder.splat(val[0], val[1]) ]
result
end
def _reduce_268(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_269(val, _values, result)
result = val[0] << @builder.splat(val[2], val[3])
result
end
def _reduce_270(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_271(val, _values, result)
result = val[0] << @builder.splat(val[2], val[3])
result
end
def _reduce_272(val, _values, result)
result = [ @builder.splat(val[0], val[1]) ]
result
end
# reduce 273 omitted
# reduce 274 omitted
# reduce 275 omitted
# reduce 276 omitted
# reduce 277 omitted
# reduce 278 omitted
# reduce 279 omitted
# reduce 280 omitted
def _reduce_281(val, _values, result)
result = @builder.call_method(nil, nil, val[0])
result
end
def _reduce_282(val, _values, result)
result = @builder.begin_keyword(val[0], val[1], val[2])
result
end
def _reduce_283(val, _values, result)
@lexer.state = :expr_endarg
result
end
def _reduce_284(val, _values, result)
result = @builder.begin(val[0], val[1], val[3])
result
end
def _reduce_285(val, _values, result)
result = @builder.begin(val[0], val[1], val[2])
result
end
def _reduce_286(val, _values, result)
result = @builder.const_fetch(val[0], val[1], val[2])
result
end
def _reduce_287(val, _values, result)
result = @builder.const_global(val[0], val[1])
result
end
def _reduce_288(val, _values, result)
result = @builder.array(val[0], val[1], val[2])
result
end
def _reduce_289(val, _values, result)
result = @builder.associate(val[0], val[1], val[2])
result
end
def _reduce_290(val, _values, result)
result = @builder.keyword_cmd(:return, val[0])
result
end
def _reduce_291(val, _values, result)
result = @builder.keyword_cmd(:yield, val[0], val[1], val[2], val[3])
result
end
def _reduce_292(val, _values, result)
result = @builder.keyword_cmd(:yield, val[0], val[1], [], val[2])
result
end
def _reduce_293(val, _values, result)
result = @builder.keyword_cmd(:yield, val[0])
result
end
def _reduce_294(val, _values, result)
result = @builder.keyword_cmd(:defined?, val[0],
val[2], [ val[3] ], val[4])
result
end
def _reduce_295(val, _values, result)
result = @builder.not_op(val[0], val[1], val[2], val[3])
result
end
def _reduce_296(val, _values, result)
result = @builder.not_op(val[0], val[1], nil, val[2])
result
end
def _reduce_297(val, _values, result)
method_call = @builder.call_method(nil, nil, val[0])
begin_t, args, body, end_t = val[1]
result = @builder.block(method_call,
begin_t, args, body, end_t)
result
end
# reduce 298 omitted
def _reduce_299(val, _values, result)
begin_t, args, body, end_t = val[1]
result = @builder.block(val[0],
begin_t, args, body, end_t)
result
end
def _reduce_300(val, _values, result)
lambda_call = @builder.call_lambda(val[0])
args, (begin_t, body, end_t) = val[1]
result = @builder.block(lambda_call,
begin_t, args, body, end_t)
result
end
def _reduce_301(val, _values, result)
else_t, else_ = val[4]
result = @builder.condition(val[0], val[1], val[2],
val[3], else_t,
else_, val[5])
result
end
def _reduce_302(val, _values, result)
else_t, else_ = val[4]
result = @builder.condition(val[0], val[1], val[2],
else_, else_t,
val[3], val[5])
result
end
def _reduce_303(val, _values, result)
@lexer.cond.push(true)
result
end
def _reduce_304(val, _values, result)
@lexer.cond.pop
result
end
def _reduce_305(val, _values, result)
result = @builder.loop(:while, val[0], val[2], val[3],
val[5], val[6])
result
end
def _reduce_306(val, _values, result)
@lexer.cond.push(true)
result
end
def _reduce_307(val, _values, result)
@lexer.cond.pop
result
end
def _reduce_308(val, _values, result)
result = @builder.loop(:until, val[0], val[2], val[3],
val[5], val[6])
result
end
def _reduce_309(val, _values, result)
*when_bodies, (else_t, else_body) = *val[3]
result = @builder.case(val[0], val[1],
when_bodies, else_t, else_body,
val[4])
result
end
def _reduce_310(val, _values, result)
*when_bodies, (else_t, else_body) = *val[2]
result = @builder.case(val[0], nil,
when_bodies, else_t, else_body,
val[3])
result
end
def _reduce_311(val, _values, result)
@lexer.cond.push(true)
result
end
def _reduce_312(val, _values, result)
@lexer.cond.pop
result
end
def _reduce_313(val, _values, result)
result = @builder.for(val[0], val[1],
val[2], val[4],
val[5], val[7], val[8])
result
end
def _reduce_314(val, _values, result)
@static_env.extend_static
@lexer.push_cmdarg
result
end
def _reduce_315(val, _values, result)
if in_def?
diagnostic :error, :class_in_def, nil, val[0]
end
lt_t, superclass = val[2]
result = @builder.def_class(val[0], val[1],
lt_t, superclass,
val[4], val[5])
@lexer.pop_cmdarg
@static_env.unextend
result
end
def _reduce_316(val, _values, result)
result = @def_level
@def_level = 0
@static_env.extend_static
@lexer.push_cmdarg
result
end
def _reduce_317(val, _values, result)
result = @builder.def_sclass(val[0], val[1], val[2],
val[5], val[6])
@lexer.pop_cmdarg
@static_env.unextend
@def_level = val[4]
result
end
def _reduce_318(val, _values, result)
@static_env.extend_static
@lexer.push_cmdarg
result
end
def _reduce_319(val, _values, result)
if in_def?
diagnostic :error, :module_in_def, nil, val[0]
end
result = @builder.def_module(val[0], val[1],
val[3], val[4])
@lexer.pop_cmdarg
@static_env.unextend
result
end
def _reduce_320(val, _values, result)
@def_level += 1
@static_env.extend_static
@lexer.push_cmdarg
result
end
def _reduce_321(val, _values, result)
result = @builder.def_method(val[0], val[1],
val[3], val[4], val[5])
@lexer.pop_cmdarg
@static_env.unextend
@def_level -= 1
result
end
def _reduce_322(val, _values, result)
@lexer.state = :expr_fname
result
end
def _reduce_323(val, _values, result)
@def_level += 1
@static_env.extend_static
@lexer.push_cmdarg
result
end
def _reduce_324(val, _values, result)
result = @builder.def_singleton(val[0], val[1], val[2],
val[4], val[6], val[7], val[8])
@lexer.pop_cmdarg
@static_env.unextend
@def_level -= 1
result
end
def _reduce_325(val, _values, result)
result = @builder.keyword_cmd(:break, val[0])
result
end
def _reduce_326(val, _values, result)
result = @builder.keyword_cmd(:next, val[0])
result
end
def _reduce_327(val, _values, result)
result = @builder.keyword_cmd(:redo, val[0])
result
end
def _reduce_328(val, _values, result)
result = @builder.keyword_cmd(:retry, val[0])
result
end
# reduce 329 omitted
# reduce 330 omitted
# reduce 331 omitted
def _reduce_332(val, _values, result)
result = val[1]
result
end
# reduce 333 omitted
# reduce 334 omitted
# reduce 335 omitted
def _reduce_336(val, _values, result)
else_t, else_ = val[4]
result = [ val[0],
@builder.condition(val[0], val[1], val[2],
val[3], else_t,
else_, nil),
]
result
end
# reduce 337 omitted
def _reduce_338(val, _values, result)
result = val
result
end
# reduce 339 omitted
# reduce 340 omitted
# reduce 341 omitted
def _reduce_342(val, _values, result)
result = @builder.multi_lhs(val[0], val[1], val[2])
result
end
def _reduce_343(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_344(val, _values, result)
result = val[0] << val[2]
result
end
# reduce 345 omitted
def _reduce_346(val, _values, result)
result = val[0].
push(@builder.objc_restarg(val[2], val[3]))
result
end
def _reduce_347(val, _values, result)
result = val[0].
push(@builder.objc_restarg(val[2], val[3])).
concat(val[5])
result
end
def _reduce_348(val, _values, result)
result = val[0].
push(@builder.objc_restarg(val[2]))
result
end
def _reduce_349(val, _values, result)
result = val[0].
push(@builder.objc_restarg(val[2])).
concat(val[4])
result
end
def _reduce_350(val, _values, result)
result = [ @builder.objc_restarg(val[0], val[1]) ]
result
end
def _reduce_351(val, _values, result)
result = [ @builder.objc_restarg(val[0], val[1]),
*val[3] ]
result
end
def _reduce_352(val, _values, result)
result = [ @builder.objc_restarg(val[0]) ]
result
end
def _reduce_353(val, _values, result)
result = [ @builder.objc_restarg(val[0]),
*val[2] ]
result
end
def _reduce_354(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[5])
result
end
def _reduce_355(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[6]).
concat(val[7])
result
end
def _reduce_356(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_357(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[5])
result
end
def _reduce_358(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
# reduce 359 omitted
def _reduce_360(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[5])
result
end
def _reduce_361(val, _values, result)
if val[1].empty? && val[0].size == 1
result = [@builder.procarg0(val[0][0])]
else
result = val[0].concat(val[1])
end
result
end
def _reduce_362(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_363(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[5])
result
end
def _reduce_364(val, _values, result)
result = val[0].
concat(val[1])
result
end
def _reduce_365(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_366(val, _values, result)
result = val[0].
concat(val[1])
result
end
def _reduce_367(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_368(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_369(val, _values, result)
result = @builder.args(nil, [], nil)
result
end
def _reduce_370(val, _values, result)
@lexer.state = :expr_value
result
end
def _reduce_371(val, _values, result)
result = @builder.args(val[0], val[1], val[2])
result
end
def _reduce_372(val, _values, result)
result = @builder.args(val[0], [], val[0])
result
end
def _reduce_373(val, _values, result)
result = @builder.args(val[0], val[1].concat(val[2]), val[3])
result
end
def _reduce_374(val, _values, result)
result = []
result
end
def _reduce_375(val, _values, result)
result = val[1]
result
end
def _reduce_376(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_377(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_378(val, _values, result)
@static_env.declare val[0][0]
result = @builder.shadowarg(val[0])
result
end
# reduce 379 omitted
def _reduce_380(val, _values, result)
@static_env.extend_dynamic
result
end
def _reduce_381(val, _values, result)
result = [ val[1], val[2] ]
@static_env.unextend
result
end
def _reduce_382(val, _values, result)
result = @builder.args(val[0], val[1].concat(val[2]), val[3])
result
end
def _reduce_383(val, _values, result)
result = @builder.args(nil, val[0], nil)
result
end
def _reduce_384(val, _values, result)
result = [ val[0], val[1], val[2] ]
result
end
def _reduce_385(val, _values, result)
result = [ val[0], val[1], val[2] ]
result
end
def _reduce_386(val, _values, result)
@static_env.extend_dynamic
result
end
def _reduce_387(val, _values, result)
result = [ val[0], val[2], val[3], val[4] ]
@static_env.unextend
result
end
def _reduce_388(val, _values, result)
begin_t, block_args, body, end_t = val[1]
result = @builder.block(val[0],
begin_t, block_args, body, end_t)
result
end
def _reduce_389(val, _values, result)
lparen_t, args, rparen_t = val[3]
result = @builder.call_method(val[0], val[1], val[2],
lparen_t, args, rparen_t)
result
end
def _reduce_390(val, _values, result)
lparen_t, args, rparen_t = val[3]
result = @builder.call_method(val[0], val[1], val[2],
lparen_t, args, rparen_t)
result
end
def _reduce_391(val, _values, result)
lparen_t, args, rparen_t = val[1]
result = @builder.call_method(nil, nil, val[0],
lparen_t, args, rparen_t)
result
end
def _reduce_392(val, _values, result)
lparen_t, args, rparen_t = val[3]
result = @builder.call_method(val[0], val[1], val[2],
lparen_t, args, rparen_t)
result
end
def _reduce_393(val, _values, result)
lparen_t, args, rparen_t = val[3]
result = @builder.call_method(val[0], val[1], val[2],
lparen_t, args, rparen_t)
result
end
def _reduce_394(val, _values, result)
result = @builder.call_method(val[0], val[1], val[2])
result
end
def _reduce_395(val, _values, result)
lparen_t, args, rparen_t = val[2]
result = @builder.call_method(val[0], val[1], nil,
lparen_t, args, rparen_t)
result
end
def _reduce_396(val, _values, result)
lparen_t, args, rparen_t = val[2]
result = @builder.call_method(val[0], val[1], nil,
lparen_t, args, rparen_t)
result
end
def _reduce_397(val, _values, result)
lparen_t, args, rparen_t = val[1]
result = @builder.keyword_cmd(:super, val[0],
lparen_t, args, rparen_t)
result
end
def _reduce_398(val, _values, result)
result = @builder.keyword_cmd(:zsuper, val[0])
result
end
def _reduce_399(val, _values, result)
result = @builder.index(val[0], val[1], val[2], val[3])
result
end
def _reduce_400(val, _values, result)
@static_env.extend_dynamic
result
end
def _reduce_401(val, _values, result)
result = [ val[0], val[2], val[3], val[4] ]
@static_env.unextend
result
end
def _reduce_402(val, _values, result)
@static_env.extend_dynamic
result
end
def _reduce_403(val, _values, result)
result = [ val[0], val[2], val[3], val[4] ]
@static_env.unextend
result
end
def _reduce_404(val, _values, result)
result = [ @builder.when(val[0], val[1], val[2], val[3]),
*val[4] ]
result
end
def _reduce_405(val, _values, result)
result = [ val[0] ]
result
end
# reduce 406 omitted
def _reduce_407(val, _values, result)
assoc_t, exc_var = val[2]
if val[1]
exc_list = @builder.array(nil, val[1], nil)
end
result = [ @builder.rescue_body(val[0],
exc_list, assoc_t, exc_var,
val[3], val[4]),
*val[5] ]
result
end
def _reduce_408(val, _values, result)
result = []
result
end
def _reduce_409(val, _values, result)
result = [ val[0] ]
result
end
# reduce 410 omitted
# reduce 411 omitted
def _reduce_412(val, _values, result)
result = [ val[0], val[1] ]
result
end
# reduce 413 omitted
def _reduce_414(val, _values, result)
result = [ val[0], val[1] ]
result
end
# reduce 415 omitted
# reduce 416 omitted
# reduce 417 omitted
# reduce 418 omitted
def _reduce_419(val, _values, result)
result = @builder.string_compose(nil, val[0], nil)
result
end
def _reduce_420(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_421(val, _values, result)
result = val[0] << val[1]
result
end
def _reduce_422(val, _values, result)
result = @builder.string_compose(val[0], val[1], val[2])
result
end
def _reduce_423(val, _values, result)
result = @builder.string(val[0])
result
end
def _reduce_424(val, _values, result)
result = @builder.character(val[0])
result
end
def _reduce_425(val, _values, result)
result = @builder.xstring_compose(val[0], val[1], val[2])
result
end
def _reduce_426(val, _values, result)
opts = @builder.regexp_options(val[3])
result = @builder.regexp_compose(val[0], val[1], val[2], opts)
result
end
def _reduce_427(val, _values, result)
result = @builder.words_compose(val[0], val[1], val[2])
result
end
def _reduce_428(val, _values, result)
result = []
result
end
def _reduce_429(val, _values, result)
result = val[0] << @builder.word(val[1])
result
end
def _reduce_430(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_431(val, _values, result)
result = val[0] << val[1]
result
end
def _reduce_432(val, _values, result)
result = @builder.words_compose(val[0], val[1], val[2])
result
end
def _reduce_433(val, _values, result)
result = []
result
end
def _reduce_434(val, _values, result)
result = val[0] << @builder.string_internal(val[1])
result
end
def _reduce_435(val, _values, result)
result = []
result
end
def _reduce_436(val, _values, result)
result = val[0] << val[1]
result
end
def _reduce_437(val, _values, result)
result = []
result
end
def _reduce_438(val, _values, result)
result = val[0] << val[1]
result
end
def _reduce_439(val, _values, result)
result = []
result
end
def _reduce_440(val, _values, result)
result = val[0] << val[1]
result
end
def _reduce_441(val, _values, result)
result = @builder.string_internal(val[0])
result
end
def _reduce_442(val, _values, result)
result = val[1]
result
end
def _reduce_443(val, _values, result)
@lexer.cond.push(false)
@lexer.cmdarg.push(false)
result
end
def _reduce_444(val, _values, result)
@lexer.cond.lexpop
@lexer.cmdarg.lexpop
result = @builder.begin(val[0], val[2], val[3])
result
end
def _reduce_445(val, _values, result)
result = @builder.gvar(val[0])
result
end
def _reduce_446(val, _values, result)
result = @builder.ivar(val[0])
result
end
def _reduce_447(val, _values, result)
result = @builder.cvar(val[0])
result
end
# reduce 448 omitted
def _reduce_449(val, _values, result)
result = @builder.symbol(val[0])
result
end
def _reduce_450(val, _values, result)
result = @builder.symbol_compose(val[0], val[1], val[2])
result
end
def _reduce_451(val, _values, result)
result = @builder.integer(val[0])
result
end
def _reduce_452(val, _values, result)
result = @builder.float(val[0])
result
end
def _reduce_453(val, _values, result)
result = @builder.negate(val[0],
@builder.integer(val[1]))
result
end
def _reduce_454(val, _values, result)
result = @builder.negate(val[0],
@builder.float(val[1]))
result
end
def _reduce_455(val, _values, result)
result = @builder.ident(val[0])
result
end
def _reduce_456(val, _values, result)
result = @builder.ivar(val[0])
result
end
def _reduce_457(val, _values, result)
result = @builder.gvar(val[0])
result
end
def _reduce_458(val, _values, result)
result = @builder.const(val[0])
result
end
def _reduce_459(val, _values, result)
result = @builder.cvar(val[0])
result
end
def _reduce_460(val, _values, result)
result = @builder.nil(val[0])
result
end
def _reduce_461(val, _values, result)
result = @builder.self(val[0])
result
end
def _reduce_462(val, _values, result)
result = @builder.true(val[0])
result
end
def _reduce_463(val, _values, result)
result = @builder.false(val[0])
result
end
def _reduce_464(val, _values, result)
result = @builder.__FILE__(val[0])
result
end
def _reduce_465(val, _values, result)
result = @builder.__LINE__(val[0])
result
end
def _reduce_466(val, _values, result)
result = @builder.__ENCODING__(val[0])
result
end
def _reduce_467(val, _values, result)
result = @builder.accessible(val[0])
result
end
def _reduce_468(val, _values, result)
result = @builder.assignable(val[0])
result
end
def _reduce_469(val, _values, result)
result = @builder.nth_ref(val[0])
result
end
def _reduce_470(val, _values, result)
result = @builder.back_ref(val[0])
result
end
def _reduce_471(val, _values, result)
result = nil
result
end
def _reduce_472(val, _values, result)
result = [ val[0], val[1] ]
result
end
def _reduce_473(val, _values, result)
yyerrok
result = nil
result
end
def _reduce_474(val, _values, result)
result = @builder.args(val[0], val[1], val[2])
@lexer.state = :expr_value
result
end
def _reduce_475(val, _values, result)
result = @builder.args(nil, val[0], nil)
result
end
def _reduce_476(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[5])
result
end
def _reduce_477(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[6]).
concat(val[7])
result
end
def _reduce_478(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_479(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[5])
result
end
def _reduce_480(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_481(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[5])
result
end
def _reduce_482(val, _values, result)
result = val[0].
concat(val[1])
result
end
def _reduce_483(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_484(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[4]).
concat(val[5])
result
end
def _reduce_485(val, _values, result)
result = val[0].
concat(val[1])
result
end
def _reduce_486(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_487(val, _values, result)
result = val[0].
concat(val[1])
result
end
def _reduce_488(val, _values, result)
result = val[0].
concat(val[2]).
concat(val[3])
result
end
def _reduce_489(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_490(val, _values, result)
result = []
result
end
def _reduce_491(val, _values, result)
diagnostic :error, :argument_const, nil, val[0]
result
end
def _reduce_492(val, _values, result)
diagnostic :error, :argument_ivar, nil, val[0]
result
end
def _reduce_493(val, _values, result)
diagnostic :error, :argument_gvar, nil, val[0]
result
end
def _reduce_494(val, _values, result)
diagnostic :error, :argument_cvar, nil, val[0]
result
end
# reduce 495 omitted
def _reduce_496(val, _values, result)
@static_env.declare val[0][0]
result = @builder.arg(val[0])
result
end
def _reduce_497(val, _values, result)
@static_env.declare val[2][0]
result = @builder.objc_kwarg(val[0], val[1], val[2])
result
end
def _reduce_498(val, _values, result)
@static_env.declare val[1][0]
result = @builder.objc_kwarg(val[0], nil, val[1])
result
end
# reduce 499 omitted
def _reduce_500(val, _values, result)
result = @builder.multi_lhs(val[0], val[1], val[2])
result
end
def _reduce_501(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_502(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_503(val, _values, result)
@static_env.declare val[0][0]
result = @builder.optarg(val[0], val[1], val[2])
result
end
def _reduce_504(val, _values, result)
@static_env.declare val[0][0]
result = @builder.optarg(val[0], val[1], val[2])
result
end
def _reduce_505(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_506(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_507(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_508(val, _values, result)
result = val[0] << val[2]
result
end
# reduce 509 omitted
# reduce 510 omitted
def _reduce_511(val, _values, result)
@static_env.declare val[1][0]
result = [ @builder.restarg(val[0], val[1]) ]
result
end
def _reduce_512(val, _values, result)
result = [ @builder.restarg(val[0]) ]
result
end
# reduce 513 omitted
# reduce 514 omitted
def _reduce_515(val, _values, result)
@static_env.declare val[1][0]
result = @builder.blockarg(val[0], val[1])
result
end
def _reduce_516(val, _values, result)
result = [ val[1] ]
result
end
def _reduce_517(val, _values, result)
result = []
result
end
# reduce 518 omitted
def _reduce_519(val, _values, result)
result = val[1]
result
end
def _reduce_520(val, _values, result)
result = []
result
end
# reduce 521 omitted
def _reduce_522(val, _values, result)
result = [ val[0] ]
result
end
def _reduce_523(val, _values, result)
result = val[0] << val[2]
result
end
def _reduce_524(val, _values, result)
result = @builder.pair(val[0], val[1], val[2])
result
end
def _reduce_525(val, _values, result)
result = @builder.pair_keyword(val[0], val[1])
result
end
# reduce 526 omitted
# reduce 527 omitted
# reduce 528 omitted
# reduce 529 omitted
# reduce 530 omitted
# reduce 531 omitted
# reduce 532 omitted
# reduce 533 omitted
# reduce 534 omitted
# reduce 535 omitted
# reduce 536 omitted
# reduce 537 omitted
# reduce 538 omitted
# reduce 539 omitted
# reduce 540 omitted
# reduce 541 omitted
def _reduce_542(val, _values, result)
result = val[1]
result
end
def _reduce_543(val, _values, result)
result = val[1]
result
end
# reduce 544 omitted
# reduce 545 omitted
# reduce 546 omitted
def _reduce_547(val, _values, result)
yyerrok
result
end
# reduce 548 omitted
# reduce 549 omitted
# reduce 550 omitted
def _reduce_551(val, _values, result)
result = nil
result
end
def _reduce_none(val, _values, result)
val[0]
end
end # class MacRuby
end # module Parser