/******************************************************************************* * Copyright (c) 2006, 2010 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * IBM Corporation - initial API and implementation *********************************************************************************/ // This file was generated by LPG package org.eclipse.cdt.internal.core.dom.lrparser.gcc; public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, GCCSizeofExpressionParsersym { public interface IsKeyword { public final static byte isKeyword[] = {0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0 }; }; public final static byte isKeyword[] = IsKeyword.isKeyword; public final boolean isKeyword(int index) { return isKeyword[index] != 0; } public interface BaseCheck { public final static short baseCheck[] = {0, 0,0,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,3,1, 1,4,4,3,3,2,2,4,1,0, 1,1,2,2,2,2,2,2,2,2, 2,1,4,1,3,3,3,1,3,3, 1,3,3,1,3,3,3,3,1,3, 3,1,3,1,3,1,3,1,3,1, 3,1,5,1,3,3,3,3,3,3, 3,3,3,3,3,1,1,2,1,0, 1,3,1,1,1,1,1,1,1,1, 3,4,3,2,4,1,2,1,1,1, 2,5,7,5,1,0,7,2,5,9, 8,3,2,2,2,3,2,4,2,2, 2,2,2,1,1,1,1,2,1,2, 2,2,1,2,2,1,2,2,1,2, 2,1,2,2,1,3,1,3,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,6, 8,0,0,1,1,3,3,3,0,1, 0,1,2,4,2,1,1,1,3,1, 1,2,3,7,8,0,1,0,1,3, 1,3,1,1,1,1,1,1,3,1, 1,1,1,1,3,1,2,2,1,5, 3,1,3,5,1,3,1,3,2,4, 3,5,4,6,6,3,5,1,3,4, 5,6,0,1,2,1,3,1,1,3, 2,1,1,1,1,2,1,2,3,1, 1,1,3,1,2,2,2,3,4,5, 1,1,7,3,0,0,1,1,3,3, 4,1,1,2,3,2,3,2,1,0, 1,2,1,1,1,1,1,2,1,3, 6,4,2,4,1,1,1,1,2,6, 3,1,3,1,4,0,1,1,1,3, 1,0,4,3,1,2,1,3,4,4, 4,6,1,0,1,3,1,3,0,1, 4,5,2,2,3,3,5,3,4,3, 1,2,2,2,4,2,1,1,2,2, 3,2,2,3,1,1,1,1,1,1, 1,2,5,3,1,1,1,-39,0,0, 0,0,0,0,-35,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-241,0,-2,0,-80,-118,-240,0,0, 0,-31,0,-173,0,-41,0,0,0,0, 0,0,-17,0,0,0,0,0,0,0, 0,0,0,0,-52,0,0,0,0,0, 0,-287,0,0,0,0,0,0,-40,0, 0,0,0,0,-4,0,-170,0,0,0, 0,0,-75,0,0,0,0,0,0,0, 0,-16,0,-18,-1,0,0,0,0,0, 0,0,0,-119,-33,0,0,0,0,0, 0,0,-19,0,0,0,0,0,0,0, 0,0,-125,0,0,0,0,-176,-20,0, -21,0,0,0,0,0,0,-199,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-281,0,0,0,0, 0,0,0,0,0,0,0,-134,0,-260, -289,0,0,0,0,0,0,0,0,-32, 0,-232,0,0,0,-22,0,-250,-278,0, 0,0,0,0,0,0,0,0,0,0, -81,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-61,0,0,0, 0,0,0,0,0,0,0,0,0,0, -136,0,0,0,0,0,0,0,-8,0, 0,0,0,0,0,0,0,0,-130,0, -273,0,0,-220,0,0,0,0,-283,0, 0,0,0,0,0,0,0,0,0,0, -138,0,0,0,0,0,0,0,0,0, 0,0,-297,0,-23,0,-311,0,0,0, 0,0,0,-24,0,0,0,0,0,0, 0,-159,0,0,0,0,0,0,0,0, 0,-310,0,0,0,0,-25,0,-36,-53, 0,0,0,0,0,0,0,0,0,0, -78,0,0,0,0,0,0,0,0,0, 0,0,0,0,-147,0,0,0,0,0, 0,0,0,0,0,-139,0,0,-252,0, 0,0,0,0,0,-305,0,0,0,0, 0,0,-148,0,0,0,0,0,0,0, 0,0,-140,0,-155,0,-3,0,0,0, 0,0,0,-26,0,0,0,0,0,-149, 0,-186,0,0,0,0,0,0,0,0, 0,-284,0,0,-124,0,0,0,0,0, 0,0,0,0,0,0,-27,0,-28,-168, 0,0,0,0,0,0,0,0,0,0, -83,0,-157,0,0,0,0,0,0,-248, 0,0,0,0,-123,-84,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-187,0,-46,0,0,0,0,0, 0,0,0,0,0,0,-169,0,0,0, 0,0,0,0,0,0,0,0,0,-204, 0,-85,0,0,0,0,0,0,0,0, -313,0,-94,0,-318,0,0,0,0,0, 0,-164,0,0,0,0,-99,0,0,-222, 0,0,0,0,0,0,0,0,-163,-243, 0,0,-29,0,0,0,0,0,0,-37, 0,0,0,0,-315,0,-100,-244,0,0, 0,0,0,0,0,0,-101,-288,-102,0, -103,0,0,0,-62,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-233, 0,0,0,0,0,0,0,0,0,0, 0,0,-63,0,0,0,0,0,0,-181, 0,0,0,0,0,0,0,-104,0,0, 0,0,0,0,0,0,-105,0,-263,0, -64,0,0,0,0,0,0,-183,0,0, 0,0,0,-245,0,-299,0,0,0,0, 0,0,0,0,0,-106,-303,0,-65,0, 0,0,0,0,0,-201,0,0,0,0, -312,0,0,-320,0,0,0,0,0,0, 0,0,0,-107,0,0,-66,0,0,0, 0,0,0,-218,0,0,0,0,-334,0, 0,-108,0,0,0,0,0,0,0,0, -109,0,-328,0,-67,0,0,0,0,0, 0,-242,0,0,0,0,-343,-256,0,-110, 0,0,0,0,0,0,0,0,0,0, -111,0,-68,0,0,0,0,0,0,-255, 0,0,0,0,-112,-280,0,-113,0,0, 0,0,0,0,0,0,-114,0,-115,0, -69,0,0,0,0,0,0,0,0,0, 0,0,-116,-295,-117,-120,0,0,0,0, 0,0,0,0,-122,-133,-143,0,-70,0, 0,0,0,0,0,0,0,0,0,0, -150,-319,-151,-153,0,0,0,0,0,0, 0,0,-154,-294,-156,0,-71,0,0,0, 0,0,0,0,0,0,0,0,-158,-165, -174,-178,0,0,0,0,0,0,0,0, -182,-302,-185,0,-72,0,0,0,0,0, 0,0,0,0,0,0,-190,-194,-207,-195, 0,0,0,0,0,0,0,0,-96,0, -197,0,-5,0,0,0,0,0,0,-126, 0,0,0,0,-213,-215,-161,0,0,0, 0,0,0,0,0,0,0,0,-325,-225, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-6,0,0,0,0,0, 0,0,0,0,0,-237,-60,0,0,0, 0,0,0,0,0,0,0,0,-239,-261, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-73,0,0,0,-262,-271,-272, -282,0,-162,0,0,0,0,0,0,-286, 0,0,0,0,-301,-304,-309,0,0,0, 0,0,0,0,0,0,-322,-330,0,0, -202,0,0,0,0,0,0,-335,0,0, 0,0,0,-219,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-203,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-208,0,0,-229,0,0,0, 0,0,0,-74,0,0,0,0,-128,-131, -171,-179,0,0,0,0,0,0,0,0, -285,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-296,0,0, 0,0,0,0,0,0,0,0,0,-132, 0,0,-184,0,0,0,0,0,0,0, 0,-314,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-321,0, 0,0,0,0,0,0,0,0,0,0, -211,-259,0,0,0,0,0,0,0,0, 0,0,-333,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-177,0,0, 0,0,0,0,0,0,0,0,0,-337, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-135,0,0,0,0,0, 0,0,0,0,-98,0,0,0,0,0, 0,0,-127,0,0,0,0,0,0,-160, 0,-145,0,0,0,0,0,-212,0,0, 0,0,0,0,-231,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-137,0,0,0,0,0, 0,0,-214,0,-224,-198,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-141,0,0,0,0,0,0, -249,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-47, 0,0,0,0,0,0,0,0,0,0, 0,-92,0,0,0,0,0,0,0,0, -306,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-332,0,0, -34,-223,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-79,0, 0,-265,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-226,0,0, 0,0,0,0,-258,-293,-189,0,0,0, 0,0,0,0,-227,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-172,0,-257, 0,0,0,0,0,-87,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-274,0,0,0,0,0,-246,0, 0,0,-251,0,0,0,0,0,0,0, 0,0,0,0,0,0,-167,-191,0,0, 0,-206,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-253,0,0,0, -48,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-336,-254,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-270,0,0,0,0,0,0,0, 0,0,0,0,-49,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-291,0,0,-57,0,0, 0,0,0,0,0,0,0,0,0,0, -323,0,0,0,0,0,0,0,0,-300, 0,0,0,0,0,0,0,0,-58,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -279,0,0,0,0,0,0,0,0,-235, 0,0,0,0,0,0,0,-316,0,0, 0,0,0,0,0,0,0,0,0,-50, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-308,0, 0,-76,0,0,0,0,0,0,-317,0, 0,0,0,0,-54,0,0,0,0,0, 0,-82,0,0,0,0,0,-326,-331,0, 0,0,0,0,0,0,0,-341,0,0, 0,0,0,0,0,0,0,0,-210,0, -129,0,0,0,0,0,-216,0,0,0, 0,0,0,0,0,0,-152,0,0,0, 0,0,-342,0,0,0,0,0,0,0, 0,0,-205,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-193,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-86,0,-196,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-228,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-230,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -234,0,0,0,0,0,0,0,0,-247, -266,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-268,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-269,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-329,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-340,0, 0,-192,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-345,0, 0,-221,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-267,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-55, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-56,0,0,0, 0,0,0,-121,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-51, 0,0,0,0,0,0,-88,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-42,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-91,0,0, 0,-93,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-236,0, 0,0,0,0,0,0,-95,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-7,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -9,0,0,0,0,0,0,0,0,0, 0,0,0,-10,0,0,0,0,0,0, 0,0,-11,0,0,0,0,0,0,0, 0,-12,0,0,0,0,0,0,0,0, -13,0,0,0,0,0,0,-30,0,0, -38,0,0,0,0,-275,0,0,-43,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-44, 0,0,0,0,0,0,0,0,-45,0, 0,0,0,0,0,0,0,0,0,-144, 0,0,0,0,-77,0,0,0,-209,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-188,0,0,0,-238,0,0,0,-14, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-277,0, 0,0,0,0,0,0,0,-89,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-15,0,0, 0,0,0,0,0,0,0,0,0,-90, 0,0,0,0,0,0,0,0,0,-217, 0,0,0,0,0,0,0,0,0,0, -97,0,0,0,0,0,0,0,-142,0, 0,0,0,0,0,-166,0,0,0,-180, 0,0,0,0,-200,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-290,0,0,-292,0,-276,0,0,0, -175,0,0,0,0,-59,-324,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-146,-338,0,0, 0,0,0,0,0,0,0,0,-264,0, 0,0,0,0,0,0,0,0,0,0, -298,0,0,0,0,0,0,0,-307,-327, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-339, 0,0,0,0,0,0,0,0,-344,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0 }; }; public final static short baseCheck[] = BaseCheck.baseCheck; public final int baseCheck(int index) { return baseCheck[index]; } public final static short rhs[] = baseCheck; public final int rhs(int index) { return rhs[index]; }; public interface BaseAction { public final static char baseAction[] = { 117,7,118,41,41,24,24,50,50,26, 26,1,1,2,2,2,2,3,3,3, 4,5,5,5,5,5,5,5,5,80, 80,94,6,6,6,6,6,6,6,6, 6,6,8,8,9,9,9,9,10,10, 10,11,11,11,16,16,16,16,16,17, 17,17,18,18,19,19,20,20,21,21, 22,22,23,23,27,27,27,27,27,27, 27,27,27,27,27,27,34,30,25,119, 119,95,95,58,35,35,35,35,35,35, 35,36,36,36,29,29,96,96,71,71, 37,37,38,38,38,67,67,39,39,39, 39,39,40,40,40,40,40,66,66,31, 31,31,31,31,53,53,53,103,103,98, 98,98,98,99,99,99,100,100,100,101, 101,101,102,102,102,97,97,85,85,86, 54,56,56,56,56,56,72,73,73,73, 73,73,73,73,73,73,73,73,73,84, 81,81,120,121,87,87,82,82,82,88, 104,104,105,105,89,89,89,60,122,122, 106,90,90,90,83,83,123,107,107,108, 108,91,91,32,33,33,33,55,51,51, 42,42,42,42,45,45,47,43,43,44, 48,48,124,124,46,143,143,125,125,52, 52,52,52,52,52,52,52,52,109,61, 61,61,61,49,75,75,74,74,74,76, 76,69,69,126,126,79,79,77,77,77, 62,62,62,63,64,64,64,65,65,65, 65,68,68,57,57,59,128,127,127,127, 127,110,129,130,130,131,131,132,132,144, 144,145,145,146,146,146,146,148,148,147, 147,147,78,133,133,12,12,12,28,28, 13,13,134,134,111,111,111,112,112,135, 135,113,113,14,14,136,136,114,114,114, 114,15,70,137,137,138,138,115,115,115, 92,92,92,6,6,16,16,23,3,36, 139,116,116,116,93,93,31,66,53,86, 86,86,106,106,106,123,120,121,49,88, 131,131,140,141,110,71,117,117,331,913, 17,21,18,482,829,560,44,503,484,521, 368,315,316,317,519,685,586,717,694,827, 794,74,1851,1380,443,91,521,901,1429,358, 135,213,672,31,1319,179,1647,20,17,21, 18,482,42,500,44,927,368,315,316,317, 388,137,134,136,160,1647,20,17,21,18, 482,42,1872,44,503,1084,135,213,87,398, 139,166,395,950,197,629,1635,1279,275,143, 146,149,152,645,28,1896,1186,137,134,136, 160,361,1825,465,451,517,2182,2286,2577,2608, 2612,1279,787,2731,249,462,139,166,1156,255, 213,939,787,876,2637,143,146,149,152,104, 87,1896,719,645,22,386,25,361,753,302, 89,37,2182,2286,2577,2608,2612,1279,1551,20, 17,21,18,482,829,412,44,503,484,521, 2637,1371,452,293,519,685,586,717,694,827, 794,74,659,381,241,281,1445,20,17,21, 18,482,829,412,44,503,484,521,908,2920, 1469,1905,519,685,586,717,694,827,794,74, 672,31,1685,281,294,282,38,1186,753,1575, 20,17,21,18,482,829,287,44,503,484, 521,369,414,255,213,519,685,586,717,694, 827,794,74,282,1464,1186,281,1647,20,17, 21,18,482,42,289,44,503,484,521,322, 1295,672,187,519,685,586,717,1185,288,1647, 20,17,21,18,482,42,282,40,1186,1747, 1184,398,1658,276,1661,418,2951,158,1771,1599, 20,17,21,18,482,829,290,44,503,484, 521,672,186,278,24,519,685,586,717,694, 827,794,74,672,1350,444,281,1623,20,17, 21,18,482,829,543,44,503,484,521,323, 1295,313,1428,519,685,586,717,694,827,794, 74,28,301,1186,281,312,282,541,1186,560, 1647,20,17,21,18,482,42,384,44,503, 1102,1397,20,17,21,18,482,829,1290,44, 503,484,521,2162,282,783,1186,519,685,586, 717,694,827,794,74,291,1862,1251,513,1743, 20,17,21,18,482,829,1722,44,503,484, 521,124,239,783,210,519,685,586,717,694, 827,794,74,672,188,783,331,1647,20,17, 21,18,482,829,416,44,503,484,521,123, 672,873,783,519,685,586,717,694,827,794, 74,111,672,296,91,1719,20,17,21,18, 482,829,1937,44,503,484,521,888,126,1727, 645,519,685,586,717,694,827,794,74,1281, 283,554,830,1647,20,17,21,18,482,42, 1747,44,503,484,521,739,999,2942,348,519, 685,586,717,694,827,794,93,319,315,316, 317,243,329,783,231,1647,20,17,21,18, 482,42,465,44,503,484,967,1421,20,17, 21,18,482,829,2045,44,503,484,521,122, 645,1270,1047,519,685,586,717,694,827,794, 74,672,298,1499,900,1743,20,17,21,18, 482,829,249,44,503,484,521,1086,240,528, 783,519,685,586,717,694,827,794,74,456, 1182,242,331,1647,20,17,21,18,482,829, 560,44,503,484,521,1922,2989,1333,645,519, 685,586,717,694,827,794,74,49,1182,169, 92,181,254,213,19,1647,20,17,21,18, 482,829,1268,44,503,484,521,255,213,284, 1787,519,685,586,717,694,827,794,74,244, 254,213,85,1647,20,17,21,18,482,829, 249,44,503,484,521,571,128,2890,630,519, 685,586,717,694,827,794,74,1002,330,783, 84,1647,20,17,21,18,482,829,249,44, 503,484,521,955,645,1414,783,519,685,586, 717,694,827,794,74,3001,1065,783,83,1647, 20,17,21,18,482,829,1330,44,503,484, 521,1920,3010,940,1935,519,685,586,717,694, 827,794,74,342,775,245,82,1647,20,17, 21,18,482,829,249,44,503,484,521,645, 194,1572,911,519,685,586,717,694,827,794, 74,520,295,783,81,1647,20,17,21,18, 482,829,1866,44,503,484,521,645,456,968, 379,519,685,586,717,694,827,794,74,117, 297,474,80,1647,20,17,21,18,482,829, 249,44,503,484,521,751,456,2945,170,519, 685,586,717,694,827,794,74,807,383,969, 79,1647,20,17,21,18,482,829,180,44, 503,484,521,1147,456,836,1308,519,685,586, 717,694,827,794,74,758,334,1513,78,1647, 20,17,21,18,482,829,712,44,503,484, 521,1121,456,1201,1209,519,685,586,717,694, 827,794,74,1346,1469,995,77,1647,20,17, 21,18,482,829,204,44,503,484,521,998, 1331,1248,1494,519,685,586,717,694,827,794, 74,1528,905,67,76,1647,20,17,21,18, 482,829,181,44,503,484,521,1050,1179,1473, 811,519,685,586,717,694,827,794,74,1319, 179,1768,75,1671,20,17,21,18,482,354, 1182,368,315,316,317,1781,1534,1647,20,17, 21,18,482,829,1309,44,503,484,521,456, 1805,135,213,519,685,586,717,694,827,794, 74,228,254,213,357,1671,20,17,21,18, 482,353,138,134,136,160,1510,1647,20,17, 21,18,482,42,1370,44,503,484,521,1709, 1558,140,166,519,685,586,717,694,1183,205, 144,147,150,153,560,467,1896,346,1582,1853, 1602,1757,362,1647,20,17,21,18,482,829, 1212,44,503,484,521,1259,1199,1913,417,519, 685,586,717,694,827,794,74,1230,1097,887, 73,1647,20,17,21,18,482,829,1606,44, 503,484,521,3218,1125,1350,3218,519,685,586, 717,694,827,794,74,3218,3218,3218,958,1647, 20,17,21,18,482,829,3218,44,503,484, 521,3218,3218,3218,3218,519,685,586,717,694, 827,794,74,3218,937,3218,1044,1647,20,17, 21,18,482,42,560,44,503,484,521,560, 1857,560,560,519,685,586,717,694,827,794, 93,1647,20,17,21,18,482,42,23,44, 503,484,521,273,321,279,341,519,685,586, 717,694,827,794,93,209,227,3218,1647,20, 17,21,18,482,42,360,44,503,484,521, 1870,570,1368,560,519,685,586,717,694,827, 794,93,1647,20,17,21,18,482,42,1071, 44,503,484,521,334,3218,3218,654,519,685, 586,717,694,827,794,93,3218,3218,3218,1647, 20,17,21,18,482,42,212,44,503,484, 521,560,1125,1350,3218,519,685,586,717,694, 827,794,93,1647,20,17,21,18,482,42, 1099,44,503,484,521,280,3218,3218,1870,519, 685,586,717,694,827,794,93,3218,3218,3218, 1647,20,17,21,18,482,42,202,44,503, 484,521,333,3218,3218,1111,519,685,586,717, 694,827,794,93,335,199,1239,319,315,316, 317,1127,388,419,20,17,21,18,482,42, 666,36,1,1239,3218,3218,1598,1696,1875,388, 86,110,3218,209,95,905,1650,3218,203,785, 108,94,96,97,98,99,127,86,110,1224, 1368,95,1923,1650,246,1247,785,108,94,96, 97,98,99,1847,3218,560,989,319,315,316, 317,109,105,2816,3218,367,106,3218,318,315, 316,317,336,385,1838,3218,3218,338,109,2371, 3218,366,367,107,2110,3218,319,315,316,317, 385,1652,3218,318,315,316,317,3218,218,1269, 221,1454,223,224,1349,3218,3218,2361,3218,855, 1647,20,17,21,18,482,42,1370,44,503, 484,969,1772,219,1269,221,1454,223,224,229, 1240,265,1239,274,318,315,316,317,388,3218, 345,155,1336,269,601,416,272,3218,133,1239, 1714,249,666,990,3218,388,86,110,787,1832, 95,3218,1650,2013,3218,785,108,94,96,97, 98,99,3218,86,110,3218,87,95,127,1650, 582,473,785,108,94,96,97,98,99,1299, 3218,3218,989,3218,3218,3218,2211,109,314,2839, 3218,367,106,3218,318,315,316,317,560,385, 783,3218,3218,277,109,899,617,249,367,107, 2110,3218,424,2839,787,560,385,1788,318,315, 316,317,2387,3218,218,1269,221,1454,223,224, 229,274,87,2361,2061,756,197,1695,1828,2428, 666,267,601,416,272,2789,667,1856,218,1269, 221,1454,223,224,229,3218,1469,1397,318,315, 316,317,3218,989,3218,1890,195,155,1336,560, 2839,3218,3218,560,1625,318,315,316,317,990, 218,1269,221,1454,223,224,229,1182,249,263, 274,2110,1832,225,193,787,2957,320,3218,2370, 267,601,416,272,3218,218,1269,221,1454,223, 224,229,198,87,2361,264,277,560,1848,254, 213,1647,20,17,21,18,482,42,1074,44, 503,484,971,3218,218,1269,221,1454,223,224, 229,340,3218,1919,274,3218,827,560,156,1336, 3218,3218,3218,2839,267,601,416,272,318,315, 316,317,467,1880,261,3218,568,3218,3218,1469, 3218,339,3218,3218,2061,1647,20,17,21,18, 482,42,3218,44,503,484,1018,1057,218,1269, 221,1454,223,224,229,1896,1401,1397,1647,20, 17,21,18,482,42,3218,44,503,484,521, 3218,617,3218,3218,519,685,586,1155,2839,325, 560,3218,3218,319,315,316,317,3218,3218,1647, 20,17,21,18,482,42,2957,44,503,484, 521,3218,3218,3218,1113,519,685,1158,3218,3218, 3218,1037,199,218,1269,221,1454,223,224,229, 989,3218,1397,318,315,316,317,2839,560,3218, 3218,3218,319,315,316,317,3218,3218,3218,855, 1647,20,17,21,18,482,42,3218,44,503, 484,1027,230,219,1269,221,1454,223,224,1387, 1240,2978,218,1269,221,1454,223,224,229,1037, 3218,2947,1470,20,17,21,18,482,42,1934, 43,318,315,316,317,1647,20,17,21,18, 482,42,1334,44,503,484,521,855,560,560, 3218,519,1111,234,368,315,316,317,560,3218, 3218,219,1269,221,1454,223,224,229,1240,1021, 3218,877,2469,351,135,213,424,1504,424,28, 3218,1186,2489,318,315,316,317,593,1239,319, 315,316,317,560,787,142,134,136,160,855, 1888,3218,1888,419,20,17,21,18,482,42, 3218,36,86,110,141,166,95,352,3218,3218, 1195,785,1267,94,96,97,98,99,641,1239, 3218,3218,2554,3218,3218,787,3218,3218,260,3218, 259,3218,3218,3218,247,1471,748,1241,689,1239, 3218,3218,3218,86,110,787,3218,95,368,315, 316,317,785,103,94,96,97,98,99,803, 1239,3218,3218,86,110,3218,787,95,135,213, 3218,3218,785,101,94,96,97,98,99,851, 1239,3218,3218,3218,86,110,787,3218,95,145, 134,136,160,785,359,94,96,97,98,99, 3218,3218,3218,3218,86,110,3218,3218,95,3218, 3218,1881,3218,785,102,94,96,97,98,99, 1087,965,1239,318,315,316,317,424,787,3218, 3218,3218,318,315,316,317,3218,1013,1239,2736, 3218,3218,3218,3218,787,3218,86,110,855,3218, 95,1888,3218,3218,3218,785,119,94,96,97, 98,99,86,110,3218,3218,95,3218,3218,1195, 3218,785,114,94,96,97,98,99,1061,1239, 3218,1721,3218,3218,3218,787,3218,3218,3218,259, 3218,3218,3218,3218,1471,3218,1241,3218,1175,1239, 3218,3218,3218,86,110,787,3218,95,3218,3218, 3218,3218,785,1385,94,96,97,98,99,1223, 1239,3218,249,86,110,3218,787,95,3218,787, 3218,3218,785,113,94,96,97,98,99,1271, 1239,3218,1879,3218,86,110,787,87,95,787, 3218,3218,1865,785,121,94,96,97,98,99, 3218,3218,249,3218,86,110,3218,87,95,787, 3218,3218,115,785,120,94,96,97,98,99, 1647,20,17,21,18,482,42,87,44,503, 484,521,2070,3218,3218,3218,1130,1647,20,17, 21,18,482,42,713,44,503,484,521,1029, 3218,3218,3218,1141,3218,3218,318,315,316,317, 1647,20,17,21,18,482,42,910,44,503, 484,1056,855,3218,3218,3218,3218,3218,3218,368, 315,316,317,1647,20,17,21,18,482,42, 3218,44,957,1240,3218,3218,274,3218,1120,135, 213,3218,1767,3218,3218,3218,269,601,416,272, 368,315,316,317,368,315,316,317,3218,313, 148,134,136,160,3218,3218,2839,1778,3218,3218, 135,213,3218,3218,135,213,3218,3218,3218,368, 315,316,317,1671,20,17,21,18,482,41, 3218,151,134,136,160,154,134,136,160,135, 213,218,1269,221,1454,223,224,229,3218,3218, 1919,1647,20,17,21,18,482,42,3218,39, 363,134,136,160,1647,20,17,21,18,482, 42,3218,38,1647,20,17,21,18,482,42, 3218,37,1647,20,17,21,18,482,42,3218, 36,1647,20,17,21,18,482,42,500,35, 3218,723,3218,3218,3218,388,1893,3218,2785,1647, 20,17,21,18,482,42,3218,47,319,315, 316,317,3218,87,3218,3218,3218,395,950,197, 1647,20,17,21,18,482,42,3218,46,1647, 20,17,21,18,482,42,3218,45,3218,3218, 500,3218,3218,274,3218,551,3218,388,2731,551, 3218,3218,3218,267,601,416,272,318,315,316, 317,318,315,316,317,87,3218,1364,266,395, 950,197,423,855,3218,3218,551,855,3218,388, 1671,20,17,21,18,482,34,3218,318,315, 316,317,3218,3218,1195,3218,3218,87,1195,551, 2731,3218,115,1792,855,3218,2554,3218,410,3218, 1721,318,315,316,317,3218,3218,3218,3218,1523, 318,315,316,317,3218,1195,3218,855,1671,20, 17,21,18,482,33,3218,1685,2101,2492,930, 508,3218,367,3218,3218,3218,3218,3218,1195,3218, 737,3218,318,315,316,317,3218,424,3218,3218, 2159,1695,20,17,21,18,482,1197,1685,1695, 20,17,21,18,482,364,1249,3218,3218,3218, 1321,197,3218,3218,3218,1249,3218,3218,318,315, 316,317,318,315,316,317,631,318,315,316, 317,3218,1295,3218,855,1109,3218,1911,2217,424, 1890,858,424,855,3218,3218,360,1949,424,318, 315,316,317,787,3218,1066,3218,3218,671,318, 315,316,317,1888,1122,3009,197,666,1951,192, 3218,87,1888,3218,787,3030,1169,3218,3218,1879, 318,315,316,317,1128,1855,787,3218,3218,3218, 3218,1879,87,125,3218,1890,3039,802,787,1932, 1879,259,3218,3218,87,3218,2118,787,1241,115, 259,319,315,316,317,1571,87,1241,3218,3218, 1960,115,3218,3218,192,87,3218,3218,3218,1965, 115,1296,319,315,316,317,3218,3218,3218,1212, 1855,319,315,316,317,3218,1046,3218,3218,3218, 3218,3218,3218,3218,3218,3218,3218,2169,2188,3218, 3218,3218,3218,3218,1167,3218,3218,2198,3218,0, 495,32,0,1791,32,0,3226,1,0,841, 129,0,856,129,0,902,129,0,841,130, 0,856,130,0,902,130,0,841,131,0, 856,131,0,902,131,0,841,185,0,856, 185,0,902,185,0,185,189,0,841,184, 0,856,184,0,902,184,0,184,189,0, 841,132,0,856,132,0,902,132,0,841, 133,0,856,133,0,902,133,0,20,179, 0,841,366,0,856,366,0,902,366,0, 1,702,0,841,378,0,856,378,0,902, 378,0,1,841,0,1,856,0,1,902, 0,354,364,0,841,253,0,856,253,0, 902,253,0,8,10,0,1310,118,0,1, 3444,0,1,3455,0,112,2448,0 }; }; public final static char baseAction[] = BaseAction.baseAction; public final int baseAction(int index) { return baseAction[index]; } public final static char lhs[] = baseAction; public final int lhs(int index) { return lhs[index]; }; public interface TermCheck { public final static byte termCheck[] = {0, 0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29, 30,31,32,33,34,35,0,0,38,39, 40,41,42,43,44,45,46,47,0,12, 50,51,52,53,54,55,56,57,58,59, 60,61,62,63,64,65,0,1,2,3, 4,5,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, 24,25,26,27,28,29,30,31,32,33, 34,35,66,67,38,39,40,41,42,43, 44,45,46,47,66,67,50,51,52,53, 54,55,56,57,58,59,60,61,62,63, 64,65,0,1,2,3,4,5,6,7, 8,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,24,25,26,27, 28,29,30,31,32,33,34,35,0,0, 38,39,40,41,42,43,44,45,46,47, 0,12,50,51,52,53,54,55,56,57, 58,59,60,61,62,63,64,65,0,1, 2,3,4,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,19,20,21, 22,23,24,25,26,27,28,29,30,31, 32,33,34,35,66,67,38,39,40,41, 42,43,44,45,46,47,66,67,0,51, 52,53,54,55,56,57,58,59,60,61, 62,63,64,65,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,32,33,34,35, 0,0,38,39,40,41,42,43,44,45, 46,47,0,1,2,51,52,53,54,55, 56,57,58,59,60,61,62,63,64,65, 0,1,2,0,4,5,6,7,8,9, 10,11,12,13,11,15,16,17,18,19, 20,21,22,23,24,25,26,0,28,0, 30,31,32,33,34,0,1,2,0,4, 2,6,7,8,73,74,75,76,0,78, 79,51,52,53,54,55,56,57,58,59, 60,61,62,63,64,65,0,0,2,3, 3,36,6,0,36,9,10,48,12,0, 1,15,16,4,5,0,7,8,0,1, 2,3,0,5,6,3,4,9,10,11, 12,13,36,15,16,17,18,19,20,21, 22,23,0,0,0,49,50,50,0,27, 0,73,74,75,76,0,78,79,3,9, 10,0,66,67,3,69,70,71,72,73, 74,75,76,0,78,79,80,81,82,83, 84,85,86,87,88,89,90,91,92,93, 94,95,96,97,0,77,2,3,37,0, 6,86,87,9,10,50,12,0,1,15, 16,4,5,14,7,8,0,1,2,0, 0,5,6,80,81,9,10,11,12,13, 36,15,16,17,18,19,20,21,22,23, 0,99,0,49,50,29,73,74,75,76, 0,78,79,0,4,2,36,7,8,0, 66,67,3,69,70,71,72,73,74,75, 76,0,78,79,80,81,82,83,84,85, 86,87,88,89,90,91,92,93,94,95, 96,97,0,1,2,3,37,5,6,80, 81,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,1,2,27, 4,29,82,7,8,83,0,35,0,0, 38,39,40,41,42,43,44,45,46,47, 0,1,2,3,0,5,6,3,0,9, 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,48,0,0,27,3,29, 4,0,1,7,8,35,5,49,38,39, 40,41,42,43,44,45,46,47,0,1, 2,3,27,5,6,66,67,9,10,11, 12,13,14,15,16,17,18,19,20,21, 22,23,0,0,2,27,4,29,6,7, 8,77,0,35,2,3,38,39,40,41, 42,43,44,45,46,47,0,1,0,3, 4,5,4,7,8,7,8,0,36,13, 0,4,0,1,7,8,0,0,36,37, 24,25,26,6,28,29,30,31,32,33, 34,24,25,26,0,28,24,30,31,32, 33,34,0,9,10,3,50,51,52,53, 54,55,56,57,58,59,60,61,62,63, 64,65,0,1,2,3,0,5,6,27, 0,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,1,2,27, 4,29,82,7,8,0,0,35,0,3, 38,39,40,41,42,43,44,45,46,47, 0,1,2,3,48,5,6,0,48,9, 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,48,0,0,27,68,29, 4,6,6,7,8,35,50,0,38,39, 40,41,42,43,44,45,46,47,0,1, 0,3,4,5,0,7,8,0,1,0, 0,13,5,4,14,11,7,8,83,9, 10,14,24,25,26,68,28,29,30,31, 32,33,34,24,25,26,0,28,2,30, 31,32,33,34,68,0,71,72,50,51, 52,53,54,55,56,57,58,59,60,61, 62,63,64,65,0,1,2,3,0,5, 6,84,36,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,1, 2,27,4,29,0,7,8,0,0,35, 2,0,38,39,40,41,42,43,44,45, 46,47,0,1,2,3,48,5,6,0, 0,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,1,2,27, 4,29,48,7,8,48,0,35,2,0, 38,39,40,41,42,43,44,45,46,47, 0,1,2,3,0,5,6,66,67,9, 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,35,0,0,27,68,29, 4,6,6,7,8,35,0,1,38,39, 40,41,42,43,44,45,46,47,0,1, 0,3,4,5,4,7,8,7,8,0, 0,13,2,4,0,1,7,8,0,5, 66,67,24,25,26,0,28,29,30,31, 32,33,34,24,25,26,0,28,0,30, 31,32,33,34,68,0,71,72,50,51, 52,53,54,55,56,57,58,59,60,61, 62,63,64,65,0,1,2,3,0,5, 6,0,0,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,1, 0,27,2,29,6,24,25,26,0,35, 2,0,38,39,40,41,42,43,44,45, 46,47,0,1,2,3,48,5,6,0, 84,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,0,0,27, 4,29,4,7,8,7,8,35,0,48, 38,39,40,41,42,43,44,45,46,47, 0,1,2,3,0,5,6,48,0,9, 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,0,1,49,27,0,29, 2,3,24,25,26,35,0,0,38,39, 40,41,42,43,44,45,46,47,0,1, 0,14,4,5,4,7,8,7,8,0, 0,13,0,0,36,37,6,4,6,0, 7,8,24,25,26,0,28,2,30,31, 32,33,34,24,25,26,98,24,25,26, 0,28,68,30,31,32,33,34,0,51, 52,53,54,55,56,57,58,59,60,61, 62,63,64,65,51,52,53,54,55,56, 57,58,59,60,61,62,0,1,2,3, 0,5,6,71,72,9,10,11,12,13, 0,15,16,17,18,19,20,21,22,23, 0,1,2,3,28,5,6,0,0,9, 10,11,12,13,0,15,16,17,18,19, 20,21,22,23,0,1,2,3,28,5, 6,0,25,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,0, 1,2,0,77,5,6,0,49,9,10, 11,12,13,14,15,16,17,18,19,20, 21,22,23,0,50,2,0,77,0,1, 2,3,4,0,6,7,8,4,36,0, 7,8,0,1,2,3,4,49,6,7, 8,0,24,25,26,27,28,0,30,31, 32,33,34,0,36,37,24,25,26,27, 28,14,30,31,32,33,34,14,36,37, 0,1,2,0,1,5,6,0,5,9, 10,11,12,13,14,15,16,17,18,19, 20,21,22,23,0,1,2,0,69,5, 6,0,0,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,1, 2,0,0,5,6,0,1,9,10,11, 12,13,14,15,16,17,18,19,20,21, 22,23,0,1,2,48,69,5,6,0, 49,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,1,2,0, 49,5,6,0,0,9,10,11,12,13, 0,15,16,17,18,19,20,21,22,23, 0,1,2,0,14,5,6,48,0,9, 10,11,12,13,0,15,16,17,18,19, 20,21,22,23,0,1,2,0,14,5, 6,0,0,9,10,11,12,13,0,15, 16,17,18,19,20,21,22,23,0,1, 2,0,14,5,6,0,0,9,10,11, 12,13,11,15,16,17,18,19,20,21, 22,23,0,1,2,0,0,5,6,3, 0,9,10,11,12,13,0,15,16,17, 18,19,20,21,22,23,0,0,0,2, 4,0,1,7,8,4,5,0,7,8, 0,4,2,37,7,8,0,0,0,3, 24,25,26,0,28,69,30,31,32,33, 34,24,25,26,0,28,2,30,31,32, 33,34,0,27,88,89,90,91,92,93, 94,95,96,97,0,69,2,0,1,2, 3,0,1,2,3,49,0,0,1,15, 16,4,5,0,7,8,0,1,0,3, 0,1,0,0,2,5,0,11,2,3, 36,0,1,36,37,0,5,36,37,0, 1,0,3,0,0,14,49,3,0,0, 0,3,3,37,4,0,36,7,8,24, 25,26,0,37,70,0,4,0,3,7, 8,0,0,0,0,27,37,36,0,85, 0,37,0,0,4,37,37,7,8,0, 70,0,3,49,0,0,14,48,24,25, 26,0,37,0,0,4,3,3,7,8, 0,70,0,0,49,24,25,26,0,0, 0,0,4,0,4,7,8,7,8,0, 0,27,0,4,0,14,7,8,4,0, 37,7,8,0,14,0,0,0,0,0, 0,0,49,49,0,0,0,68,0,0, 0,0,0,0,0,0,77,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0 }; }; public final static byte termCheck[] = TermCheck.termCheck; public final int termCheck(int index) { return termCheck[index]; } public interface TermAction { public final static char termAction[] = {0, 3218,5235,1,1253,3170,5183,1,1,1,1, 1,1,1,1,459,1,1,1,1,1, 1,1,1,1,1,1,1,3227,1,3318, 1,1,1,1,1,1213,54,64,745,843, 773,1225,2227,1211,800,1223,2977,1214,356,2175, 3225,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,8,3203,3203,3203, 3203,3203,3203,3203,3203,3203,3203,3203,3203,3203, 3203,3203,3203,3203,3203,3203,3203,3203,3203,3203, 3203,3203,3203,3203,3203,3203,3203,3203,3203,3203, 3203,3203,445,720,3203,3203,3203,3203,3203,3203, 3203,3203,3203,3203,445,720,3203,3203,3203,3203, 3203,3203,3203,3203,3203,3203,3203,3203,3203,3203, 3203,3203,3218,5235,1,1253,3170,5183,1,1, 1,1,1,1,1,1,459,1,1,1, 1,1,1,1,1,1,1,1,1,3227, 1,3318,1,1,1,1,1,1213,355,65, 745,843,773,1225,2227,1211,800,1223,2977,1214, 58,2175,3225,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,3218,5235, 1,3228,3170,5183,1,1,1,1,1,1, 1,1,459,1,1,1,1,1,1,1, 1,1,1,1,1,3227,1,3318,1,1, 1,1,1,1213,445,720,745,843,773,1225, 2227,1211,800,1223,2977,1214,445,720,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,3218,5235,1,3228,3170,5183, 1,1,1,1,1,1,1,1,459,1, 1,1,1,1,1,1,1,1,1,1, 1,3227,1,3318,1,1,1,1,1,1213, 286,59,745,843,773,1225,2227,1211,800,1223, 2977,1214,1,3444,2629,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 3218,3229,433,3218,902,3230,2712,841,856,2703, 2694,3234,2721,2901,1472,2868,2820,2653,3231,3232, 3233,2681,639,1325,3432,3434,3433,3218,3381,1, 3382,3380,3435,3383,3379,268,3444,1942,270,902, 649,253,841,856,2570,2130,2025,1971,61,1750, 875,3386,3391,3390,3388,3389,3387,3392,3393,3385, 3394,3395,3396,1762,2880,2848,1,1,3230,3230, 3086,731,3230,3218,731,3230,3230,2,3230,185, 3125,3230,3230,3122,3125,72,3116,3119,3218,3229, 433,3222,1,3230,2712,116,3170,2703,2694,3234, 2721,1283,3230,2868,2820,2653,3231,3232,3233,2681, 639,1325,3218,62,3218,3230,3230,3225,3218,116, 51,2570,2130,2025,1971,3218,1750,875,3226,2593, 426,1,3230,3230,90,3230,3230,3230,3230,3230, 3230,3230,3230,60,3230,3230,3230,3230,3230,3230, 3230,3230,3230,3230,3230,3230,3230,3230,3230,3230, 3230,3230,3230,3230,1,3221,3229,3229,90,1, 3229,1337,2956,3229,3229,3225,3229,184,3137,3229, 3229,3134,3137,459,3128,3131,3218,1,1,63, 271,1,1,2547,2530,1,1,1,1,1, 3229,1,1,1,1,1,1,1,1,1, 66,3079,68,3229,3229,3605,2570,2130,2025,1971, 253,1750,875,3218,902,1470,731,841,856,3218, 3229,3229,3224,3229,3229,3229,3229,3229,3229,3229, 3229,3218,3229,3229,3229,3229,3229,3229,3229,3229, 3229,3229,3229,3229,3229,3229,3229,3229,3229,3229, 3229,3229,3218,5235,1,3228,3223,5183,1,2547, 2530,1,1,1,1,1,459,1,1,1, 1,1,1,1,1,1,1,3444,2629,3227, 3188,3318,2079,3182,3185,2048,3218,1213,88,57, 745,843,773,1225,2227,1211,800,1223,2977,1214, 3218,5235,1,3228,3218,5183,1,3222,3218,1, 1,1,1,1,459,1,1,1,1,1, 1,1,1,1,1559,1,182,3227,3228,3318, 902,3218,3229,841,856,1213,3230,943,745,843, 773,1225,2227,1211,800,1223,2977,1214,3218,5235, 1,3228,3227,5183,1,445,720,1,1,1, 1,1,459,1,1,1,1,1,1,1, 1,1,268,3218,1829,3227,902,3318,253,841, 856,3221,1,1213,1829,265,745,843,773,1225, 2227,1211,800,1223,2977,1214,3218,1,378,191, 1,1,3179,1,1,3173,3176,130,731,1, 67,3104,326,3545,3098,3101,3218,3218,731,265, 1,1,1,2916,1,3414,1,1,1,1, 1,3432,3434,3433,53,3381,3546,3382,3380,3435, 3383,3379,3218,2593,426,3228,191,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,3218,5235,1,3228,3218,5183,1,3227, 3218,1,1,1,1,1,459,1,1,1, 1,1,1,1,1,1,1,3444,2629,3227, 3188,3318,2079,3182,3185,69,285,1213,3218,494, 745,843,773,1225,2227,1211,800,1223,2977,1214, 3218,5235,1,3228,1297,5183,1,1,2329,1, 1,1,1,1,459,1,1,1,1,1, 1,1,1,1,1559,48,1,3227,1457,3318, 3188,2769,253,3182,3185,1213,494,70,745,843, 773,1225,2227,1211,800,1223,2977,1214,3218,1, 3218,190,1,1,349,1,1,3218,3229,131, 52,1,3230,3113,4442,1369,3107,3110,2048,2593, 426,1010,1,1,1,3476,1,3414,1,1, 1,1,1,3432,3434,3433,222,3381,850,3382, 3380,3435,3383,3379,3476,3218,2760,2739,190,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,3218,5235,1,3228,3218,5183, 1,617,731,1,1,1,1,1,459,1, 1,1,1,1,1,1,1,1,1,3444, 2629,3227,3188,3318,3218,3182,3185,3218,3218,1213, 1520,56,745,843,773,1225,2227,1211,800,1223, 2977,1214,3218,5235,1,3228,1373,5183,1,3218, 1,1,1,1,1,1,459,1,1,1, 1,1,1,1,1,1,253,3444,2629,3227, 902,3318,2268,841,856,2288,3218,1213,1196,118, 745,843,773,1225,2227,1211,800,1223,2977,1214, 3218,5235,1,3228,55,5183,1,445,720,1, 1,1,1,1,459,1,1,1,1,1, 1,1,1,1,3206,50,1,3227,3475,3318, 3188,2769,253,3182,3185,1213,3218,2233,745,843, 773,1225,2227,1211,800,1223,2977,1214,3218,1, 376,191,1,1,902,1,1,841,856,132, 3218,1,2812,3146,208,3229,3140,3143,3218,3230, 445,720,1,1,1,3218,1,3414,1,1, 1,1,1,3432,3434,3433,71,3381,3218,3382, 3380,3435,3383,3379,3476,3218,2760,2739,191,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,3218,5235,1,3228,3218,5183, 1,3218,3218,1,1,1,1,1,459,1, 1,1,1,1,1,1,1,1,3218,2189, 3218,3227,1857,3318,1398,3432,3434,3433,3218,1213, 1938,3218,745,843,773,1225,2227,1211,800,1223, 2977,1214,3218,5235,1,3228,2309,5183,1,201, 617,1,1,1,1,1,459,1,1,1, 1,1,1,1,1,1,379,256,253,3227, 902,3318,3200,841,856,3194,3197,1213,112,3600, 745,843,773,1225,2227,1211,800,1223,2977,1214, 3218,5235,1,3228,3218,5183,1,1610,248,1, 1,1,1,1,459,1,1,1,1,1, 1,1,1,1,1,3212,2209,3227,1,3318, 1829,3224,3432,3434,3433,1213,3218,3218,745,843, 773,1225,2227,1211,800,1223,2977,1214,3218,3229, 183,922,902,3230,902,841,856,841,856,249, 3218,2909,49,129,731,3223,2925,3095,2769,3218, 3089,3092,3432,3434,3433,3218,3381,2472,3382,3380, 3435,3383,3379,1,1,1,3215,3432,3434,3433, 3218,3381,3476,3382,3380,3435,3383,3379,3218,3386, 3391,3390,3388,3389,3387,3392,3393,3385,3394,3395, 3396,1762,2880,2848,3386,3391,3390,3388,3389,3387, 3392,3393,3385,3394,3395,3396,1,3229,433,3222, 3218,3230,1643,2760,2739,2703,2694,3234,2721,1283, 3218,2868,2820,2653,3231,3232,3233,2681,639,1325, 3218,3229,433,3222,815,3230,2243,344,30,2703, 2694,3234,2721,1283,3218,2868,2820,2653,3231,3232, 3233,2681,639,1325,1,4100,433,29,1429,4002, 2712,3218,3561,2703,2694,3234,2721,1283,4442,2868, 2820,2653,3231,3232,3233,2681,639,1325,30,3218, 3229,433,220,3221,3230,2712,3218,556,2703,2694, 3234,2721,1283,4442,2868,2820,2653,3231,3232,3233, 2681,639,1325,337,29,1693,3218,3221,20,179, 3158,3158,179,377,3158,179,179,902,731,157, 841,856,354,364,364,3191,364,3247,3191,364, 364,3218,179,179,179,3158,179,3218,179,179, 179,179,179,3218,3158,3158,364,364,364,3191, 364,1094,364,364,364,364,364,1150,364,3191, 1,4100,433,207,683,4002,2712,211,683,2703, 2694,3234,2721,1283,4442,2868,2820,2653,3231,3232, 3233,2681,639,1325,3218,3229,433,1,589,3230, 2712,207,3218,2703,2694,3234,2721,1283,4442,2868, 2820,2653,3231,3232,3233,2681,639,1325,380,3229, 433,347,3218,3230,2712,3218,3456,2703,2694,3234, 2721,1283,4442,2868,2820,2653,3231,3232,3233,2681, 639,1325,3218,3229,433,3230,1508,3230,2712,1, 5159,2703,2694,3234,2721,1283,4442,2868,2820,2653, 3231,3232,3233,2681,639,1325,3218,3229,433,3218, 766,3230,2712,3218,3218,2703,2694,3234,2721,1283, 365,2868,2820,2653,3231,3232,3233,2681,639,1325, 3218,3229,2728,3218,4442,3230,2712,3229,3218,2703, 2694,3234,2721,1283,3218,2868,2820,2653,3231,3232, 3233,2681,639,1325,3218,3229,2780,3218,651,3230, 2712,3218,3218,2703,2694,3234,2721,1283,229,2868, 2820,2653,3231,3232,3233,2681,639,1325,1,3229, 433,3218,232,3230,2712,3218,42,2703,2694,3234, 2721,1283,1369,2868,2820,2653,3231,3232,3233,2681, 639,1325,332,3229,433,3218,1,3230,2712,3224, 3218,2703,2694,3234,2721,1283,3218,2868,2820,2653, 3231,3232,3233,2681,639,1325,133,3218,3218,1665, 3155,206,5557,3149,3152,902,5557,366,841,856, 324,3167,759,3223,3161,3164,3218,3218,3218,3228, 3432,3434,3433,3218,3381,1255,3382,3380,3435,3383, 3379,3432,3434,3433,3218,3381,2512,3382,3380,3435, 3383,3379,3218,3227,1227,1199,1171,1143,1115,1059, 1087,1031,1003,975,32,687,3080,1,3444,1942, 262,1,3209,1942,3224,1913,3218,375,5566,3244, 3245,902,5566,3218,841,856,3218,1997,3218,3224, 3218,3229,350,3218,1386,3230,3218,1967,518,3224, 3083,3218,3229,731,262,250,3230,731,3223,3218, 1242,292,3224,3218,3218,1038,262,3224,1,3218, 159,116,3224,3223,902,3218,1481,841,856,1, 1,1,370,3223,580,3218,902,3218,3224,841, 856,3218,3218,3218,251,116,3223,1532,3218,422, 369,3223,229,3218,902,116,3223,841,856,3218, 812,252,3222,588,3218,3218,233,1252,3432,3434, 3433,371,3223,3218,3218,902,3224,3228,841,856, 3218,911,3218,3218,915,3432,3434,3433,200,3218, 372,189,902,3218,902,841,856,841,856,373, 379,3227,3218,902,374,206,841,856,902,3218, 3223,841,856,3218,375,3218,3218,3218,3218,3218, 3218,3218,1408,1996,3218,3218,3218,1583,3218,3218, 3218,3218,3218,3218,3218,3218,3221 }; }; public final static char termAction[] = TermAction.termAction; public final int termAction(int index) { return termAction[index]; } public interface Asb { public final static char asb[] = {0, 123,1,31,54,31,31,31,31,31,31, 31,31,31,31,31,62,3,289,286,293, 291,301,299,303,302,305,304,275,31,3, 430,430,254,31,272,272,272,114,387,371, 31,31,31,31,31,31,31,31,31,31, 31,31,31,31,31,31,31,31,618,31, 31,31,31,31,31,31,31,31,31,31, 31,31,272,272,250,153,118,228,473,174, 173,517,549,549,549,529,510,529,510,510, 529,510,529,67,529,402,31,372,286,286, 291,291,291,291,291,291,289,289,299,293, 293,302,301,200,200,304,303,171,351,171, 114,121,109,28,250,506,232,272,551,476, 365,271,616,169,510,430,427,430,169,430, 510,31,71,3,371,597,317,317,430,549, 549,584,549,549,317,200,31,200,225,542, 31,31,351,151,121,109,506,250,231,228, 272,112,402,452,478,143,271,364,272,440, 320,171,354,272,369,317,317,385,31,370, 31,31,584,200,433,584,549,544,151,109, 109,31,31,250,232,473,457,456,118,478, 272,452,451,270,171,440,320,354,354,179, 597,317,542,272,549,272,272,584,31,584, 468,171,316,460,544,544,463,118,436,356, 220,109,506,250,250,272,551,476,112,143, 272,253,272,272,320,351,541,320,354,356, 445,356,317,597,544,584,31,584,584,58, 450,57,371,544,460,460,118,153,544,351, 149,466,202,430,31,200,50,506,109,478, 452,320,194,356,351,31,430,254,317,272, 370,468,317,47,616,372,460,544,436,62, 153,360,430,31,109,272,452,253,351,316, 31,312,194,313,351,272,254,317,584,431, 272,371,31,250,431,194,31,313,313,584, 272,272,250,313,584 }; }; public final static char asb[] = Asb.asb; public final int asb(int index) { return asb[index]; } public interface Asr { public final static byte asr[] = {0, 99,0,30,51,52,63,31,53,32,54, 55,33,56,57,28,64,34,65,58,59, 60,61,62,7,8,4,14,24,26,25, 2,18,19,20,11,5,15,16,12,9, 10,21,22,17,23,13,1,6,0,69, 36,70,0,77,27,99,49,37,3,48, 0,48,68,77,50,99,70,85,15,16, 33,28,34,32,31,30,12,9,10,71, 72,66,67,73,74,75,76,80,81,82, 83,84,86,87,69,88,89,90,91,92, 93,94,95,96,97,78,79,27,24,26, 25,49,1,3,37,2,36,4,8,7, 6,0,17,18,19,20,11,1,5,2, 15,16,12,6,9,10,21,22,13,23, 29,0,3,49,37,1,24,0,3,50, 36,70,15,16,12,6,9,10,21,22, 17,23,13,2,18,19,20,11,1,5, 14,0,2,3,49,37,36,0,30,24, 31,32,33,26,28,34,25,3,36,49, 37,27,14,6,1,2,4,8,7,48, 0,69,15,16,12,6,9,10,21,22, 17,23,13,2,18,19,20,11,14,1, 5,36,70,0,2,25,0,24,26,25, 28,15,16,12,6,9,10,21,22,17, 23,13,2,1,5,18,19,20,11,77, 3,0,49,17,18,19,20,5,2,15, 16,12,6,9,10,21,22,13,23,11, 1,37,3,0,69,88,89,90,91,92, 94,93,95,96,97,6,71,72,9,10, 67,66,73,74,75,76,78,79,80,81, 12,82,83,84,68,77,37,50,99,86, 87,48,4,8,7,49,27,3,0,30, 51,24,52,63,31,53,32,54,55,33, 26,56,57,28,64,34,65,58,59,25, 60,61,62,1,5,13,7,8,4,29, 3,50,0,1,5,3,50,49,0,77, 3,68,0,1,37,3,2,0,37,98, 50,39,41,14,45,47,42,35,43,44, 40,38,46,29,3,27,2,18,19,20, 11,15,16,12,6,9,10,21,22,17, 23,13,63,64,65,59,51,56,54,55, 53,52,57,58,60,61,62,34,31,28, 30,33,24,26,25,32,4,8,7,5, 1,0,48,68,0,3,69,49,27,14, 4,8,7,0,3,49,50,69,0,48, 2,3,37,49,0,2,48,37,36,4, 8,7,3,49,27,69,0,3,48,37, 11,0,6,2,36,37,3,30,51,52, 63,31,53,32,54,55,33,56,57,28, 64,34,65,58,59,60,61,62,1,5, 13,7,8,4,68,24,26,25,0,1, 5,14,4,8,7,0,59,51,56,54, 55,53,52,57,58,60,61,62,36,49, 37,34,31,28,30,33,24,26,25,32, 48,27,3,6,1,7,8,4,2,0, 6,30,51,24,52,63,31,53,32,54, 55,33,26,56,57,28,64,34,65,58, 59,25,60,61,62,1,5,13,68,4, 8,7,0,39,41,14,45,47,42,35, 43,44,40,38,46,29,17,18,19,20, 1,5,2,15,16,12,6,9,10,21, 22,13,23,27,3,11,0,17,18,19, 20,11,1,5,2,15,16,12,6,9, 10,21,22,13,23,48,0 }; }; public final static byte asr[] = Asr.asr; public final int asr(int index) { return asr[index]; } public interface Nasb { public final static char nasb[] = {0, 40,27,51,27,51,51,51,51,51,51, 51,51,51,51,51,27,28,27,27,27, 27,27,27,27,27,27,27,27,51,28, 17,17,43,30,87,87,87,117,1,35, 51,51,51,51,51,51,51,51,51,51, 51,51,51,51,51,51,51,51,173,51, 51,51,51,51,51,51,51,51,51,51, 51,51,87,87,64,142,148,62,116,13, 13,78,27,27,27,79,114,79,114,114, 79,114,79,27,79,72,51,89,27,27, 27,27,27,27,27,27,27,27,27,27, 27,27,27,27,27,27,27,143,135,27, 156,27,140,66,64,81,63,87,146,55, 87,83,27,8,140,8,140,8,8,8, 140,51,27,28,95,177,179,179,8,27, 27,151,27,27,179,27,69,27,58,178, 51,51,36,135,27,114,81,64,63,38, 87,131,19,27,99,46,86,27,87,114, 135,27,135,87,27,179,179,160,30,27, 30,30,151,27,27,151,27,104,49,114, 135,51,51,64,63,130,13,13,148,99, 87,87,27,87,27,140,165,135,8,143, 162,179,178,87,27,87,87,151,51,151, 102,53,179,114,137,133,27,148,27,15, 10,135,81,64,64,87,146,55,110,46, 87,51,87,87,135,36,178,126,8,15, 27,27,179,162,121,151,30,151,151,87, 27,27,35,121,140,114,148,50,105,36, 48,27,50,8,51,27,33,81,38,169, 87,165,121,15,36,51,8,162,179,87, 27,102,179,27,102,89,140,112,27,60, 50,64,8,51,38,87,87,51,36,179, 51,27,137,114,36,87,162,179,151,27, 87,95,51,64,27,121,51,114,140,151, 87,87,64,140,151 }; }; public final static char nasb[] = Nasb.nasb; public final int nasb(int index) { return nasb[index]; } public interface Nasr { public final static char nasr[] = {0, 103,116,101,100,87,99,98,1,0,1, 140,0,52,0,80,0,94,0,103,116, 102,101,100,87,99,98,0,60,29,7, 30,0,132,0,7,50,0,32,0,7, 117,0,7,119,0,112,0,110,7,59, 5,0,133,0,24,7,0,137,0,128, 0,7,5,41,0,5,7,0,5,139, 0,87,81,82,83,84,93,72,53,0, 75,0,136,24,0,114,24,0,31,7, 1,34,96,0,34,1,50,71,7,31, 0,92,0,7,28,45,43,48,0,64, 63,45,43,28,0,24,63,64,7,0, 7,45,43,28,0,7,60,89,0,24, 64,63,43,45,7,0,43,45,7,12, 0,5,59,57,0,7,31,28,61,0, 1,34,7,35,0,64,63,28,0,31, 66,7,67,0,105,7,60,0,125,7, 31,0,7,30,118,0,30,7,26,0 }; }; public final static char nasr[] = Nasr.nasr; public final int nasr(int index) { return nasr[index]; } public interface TerminalIndex { public final static char terminalIndex[] = {0, 87,2,89,99,88,9,97,98,10,11, 86,8,95,3,6,7,70,83,84,85, 12,13,96,50,78,66,94,71,100,46, 57,62,65,74,79,1,92,47,48,51, 52,53,59,60,61,67,73,29,42,93, 49,54,58,63,64,68,69,76,77,80, 81,82,56,72,75,16,17,30,31,4, 14,15,18,19,20,21,91,43,44,22, 23,24,25,26,5,27,28,32,33,34, 35,36,37,38,39,40,41,55,101,90 }; }; public final static char terminalIndex[] = TerminalIndex.terminalIndex; public final int terminalIndex(int index) { return terminalIndex[index]; } public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, 107,0,0,0,109,113,0,114,115,116, 117,186,0,0,0,118,119,120,121,122, 123,124,0,104,0,106,125,187,130,108, 134,142,0,126,129,0,0,0,0,0, 103,162,164,0,165,0,0,167,0,105, 152,166,141,0,0,0,112,128,0,156, 163,177,178,179,0,133,0,151,174,0, 132,144,0,168,172,173,176,0,111,0, 145,146,147,148,149,150,153,0,155,159, 161,191,194,110,127,131,135,136,137,138, 139,140,143,0,154,158,0,160,171,181, 0,188,0,190,0,193,102,0,0,0, 0,157,0,169,170,175,180,0,182,183, 0,184,185,0,0,189,0,0,192,195, 0,0,0,0,0,0,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; public final int nonterminalIndex(int index) { return nonterminalIndex[index]; } public interface ScopePrefix { public final static char scopePrefix[] = { 198,254,330,216,310,121,147,153,282,95, 359,381,338,1,104,137,163,183,63,262, 320,35,59,71,77,109,159,233,298,71, 420,424,355,377,390,404,390,344,15,27, 56,8,8,113,116,168,116,193,116,243, 248,251,307,428,50,83,89,129,237,83, 401,411,411,8,129,272,206,368,206,272, 20,20,41,229,41,41,41,41,41,305, 399,20,20,45,142,171,142,171,171 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; public final int scopePrefix(int index) { return scopePrefix[index]; } public interface ScopeSuffix { public final static char scopeSuffix[] = { 75,75,317,75,317,127,6,6,75,101, 365,387,325,6,39,127,6,39,68,267, 325,39,39,75,81,39,6,231,231,75, 39,6,317,317,317,408,394,348,18,18, 39,6,6,39,119,6,178,39,196,246, 246,246,231,39,53,86,92,144,240,302, 53,414,417,11,132,267,223,371,209,275, 25,33,43,231,288,290,292,294,296,231, 231,22,30,47,144,180,132,173,188 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; public final int scopeSuffix(int index) { return scopeSuffix[index]; } public interface ScopeLhs { public final static char scopeLhs[] = { 83,81,39,83,39,61,52,52,81,57, 39,38,39,141,65,61,52,48,13,81, 39,93,111,133,78,65,52,89,66,29, 5,5,39,38,38,23,38,39,106,86, 3,132,131,63,77,52,124,45,51,82, 82,82,40,3,36,78,110,61,89,66, 36,8,5,141,61,81,83,39,83,81, 106,86,116,89,102,101,100,99,98,66, 37,106,86,139,61,48,61,46,48 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; public final int scopeLhs(int index) { return scopeLhs[index]; } public interface ScopeLa { public final static byte scopeLa[] = { 50,50,37,50,37,24,77,77,50,50, 37,98,27,77,37,24,77,37,37,14, 27,37,37,50,14,37,77,27,27,50, 37,77,37,37,37,48,37,27,7,7, 37,77,77,37,2,77,1,37,1,1, 1,1,27,37,48,1,69,6,1,1, 48,37,37,68,6,14,14,35,1,1, 1,1,13,27,1,63,64,64,59,27, 27,1,1,68,6,2,6,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; public final int scopeLa(int index) { return scopeLa[index]; } public interface ScopeStateSet { public final static char scopeStateSet[] = { 48,48,113,48,113,92,99,99,48,39, 113,113,113,6,103,92,99,17,52,48, 113,48,14,8,124,103,99,10,33,110, 129,129,113,113,113,165,113,113,1,27, 129,4,6,103,105,99,29,17,20,48, 48,48,113,129,113,124,199,92,10,33, 113,136,129,6,92,48,48,113,48,48, 1,27,49,10,49,49,49,49,49,33, 113,1,27,31,92,17,92,17,17 }; }; public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet; public final int scopeStateSet(int index) { return scopeStateSet[index]; } public interface ScopeRhs { public final static char scopeRhs[] = {0, 158,68,158,36,0,103,0,158,36,0, 30,128,103,0,190,128,0,187,0,128, 0,159,187,0,159,0,151,128,0,152, 187,0,152,0,179,2,13,0,104,0, 203,0,194,0,158,0,30,128,0,239, 39,0,29,129,0,129,2,0,235,2, 212,0,234,2,2,7,0,104,104,0, 196,107,14,0,105,0,224,107,131,0, 185,0,107,131,0,169,185,0,229,107, 0,31,151,0,180,227,107,14,159,0, 105,0,0,174,107,2,163,0,174,107, 2,0,177,2,0,161,107,0,177,0, 107,149,6,149,161,0,172,0,149,161, 0,9,0,0,172,0,107,149,6,149, 0,149,0,9,0,0,127,28,209,107, 36,0,127,209,107,28,36,0,127,28, 36,0,127,209,107,36,0,127,36,0, 145,0,2,0,170,104,0,167,0,2, 104,0,174,107,2,145,0,2,0,168, 104,0,151,2,0,162,0,180,207,107, 14,101,223,63,0,223,63,0,107,3, 0,0,0,105,0,180,207,107,14,223, 63,0,3,0,0,0,105,0,160,0, 106,0,222,107,160,0,107,160,0,157, 106,0,188,63,0,107,0,188,65,0, 188,64,0,204,107,14,221,101,220,187, 0,221,101,220,187,0,3,0,0,105, 0,220,187,0,107,0,3,0,0,105, 0,204,107,14,220,187,0,148,0,147, 0,146,0,145,0,144,0,197,107,131, 0,135,106,0,131,0,130,46,0,167, 126,167,166,2,43,0,104,129,0,167, 166,2,43,0,106,0,104,129,0,167, 126,167,126,167,2,43,0,167,126,167, 2,43,0,167,2,43,0,106,0,106, 0,104,129,0,130,2,35,0,130,2, 35,135,42,0,104,106,0,135,42,0, 79,2,108,104,106,0,130,2,47,0, 135,124,130,2,45,0,55,129,0,130, 2,45,0,104,129,55,129,0,134,0, 158,39,0,130,87,122,0,29,125,0, 179,2,0,104,114,0,104,112,0,219, 2,105,0,130,36,105,0,130,2,0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; public final int scopeRhs(int index) { return scopeRhs[index]; } public interface ScopeState { public final static char scopeState[] = {0, 1996,1856,0,452,0,412,0,582,0,2945, 1855,2890,0,588,518,0,2159,2101,1721,1996, 2061,1856,2629,2110,1942,1888,1913,1832,1696,0, 843,0,1788,1771,2812,1652,1635,0,687,659, 556,589,654,528,417,2162,0,1279,424,388, 0,3039,3030,2978,1996,2957,2061,2159,3009,1856, 2101,2947,2736,1913,1832,1721,2110,2361,2217,2925, 1696,2920,424,2916,1714,1685,1625,855,2554,1279, 2637,2612,1762,2608,2880,2848,2577,1896,2286,2182, 388,2839,2370,2816,2789,2211,2785,0,1454,1269, 601,416,1721,2554,1942,1888,1829,2731,0,2780, 2728,433,2489,2469,2448,2428,2387,2371,2329,2309, 2288,2268,2227,1788,1771,1652,1635,0,2909,2901, 2868,2820,2653,1325,1283,2243,1643,2162,617,1337, 2079,2048,2547,2530,2175,720,445,2570,2130,2025, 1971,1750,875,2769,2760,2739,2593,426,2721,2712, 2703,2694,2681,639,1610,1583,1559,915,1532,687, 1508,1481,659,589,759,1457,1429,1401,887,1373, 1297,843,815,731,1255,1227,1199,1171,1143,1115, 1087,1059,1031,1003,975,388,943,787,556,528, 0 }; }; public final static char scopeState[] = ScopeState.scopeState; public final int scopeState(int index) { return scopeState[index]; } public interface InSymb { public final static char inSymb[] = {0, 0,217,107,195,13,23,17,22,21,10, 9,6,12,16,15,105,2,110,109,116, 111,118,117,120,119,122,121,106,49,2, 85,70,2,36,129,179,130,160,107,14, 10,9,72,71,6,79,78,76,75,74, 73,66,67,12,81,80,83,82,87,86, 84,97,96,95,93,94,92,91,90,89, 88,69,179,219,130,124,107,36,2,164, 163,198,7,8,4,199,187,200,65,64, 201,63,202,101,216,203,13,107,109,109, 111,111,111,111,111,111,110,110,117,116, 116,119,118,218,130,121,120,124,14,159, 161,149,128,28,127,107,6,177,107,2, 2,2,2,220,128,188,128,188,223,188, 128,13,106,2,196,46,38,40,44,43, 35,42,47,45,134,41,39,101,4,131, 48,48,107,14,149,6,107,127,209,175, 174,131,107,176,107,2,236,1,11,101, 14,101,14,179,3,130,101,2,2,135, 2,2,48,239,158,48,237,107,107,6, 149,209,28,127,6,2,143,145,107,49, 174,234,212,2,221,128,107,14,107,124, 166,167,131,130,35,130,130,48,68,48, 2,224,197,151,128,2,186,107,148,227, 107,149,107,127,127,151,107,2,161,49, 124,2,11,1,14,204,160,205,107,207, 101,208,167,126,107,124,2,124,124,238, 11,192,14,49,128,151,107,69,161,180, 49,229,240,70,36,101,230,107,175,107, 235,107,107,207,180,69,49,126,167,130, 135,48,124,2,49,107,128,161,148,150, 69,158,70,36,175,174,225,49,204,222, 48,151,128,190,180,167,126,124,98,6, 1,196,68,158,49,49,48,190,128,124, 167,1,158,128,124 }; }; public final static char inSymb[] = InSymb.inSymb; public final int inSymb(int index) { return inSymb[index]; } public interface Name { public final static String name[] = { "", "[", "(", "{", ".", "->", "++", "--", "&", "*", "+", "-", "~", "!", "/", "%", ">>", "<<", "<", ">", "<=", ">=", "==", "!=", "^", "|", "&&", "||", "?", ":", "...", "=", "*=", "/=", "%=", "+=", "-=", ">>=", "<<=", "&=", "^=", "|=", ",", ">?", "<?", "$empty", "auto", "break", "case", "char", "const", "continue", "default", "do", "double", "else", "enum", "extern", "float", "for", "goto", "if", "inline", "int", "long", "register", "restrict", "return", "short", "signed", "sizeof", "static", "struct", "switch", "typedef", "union", "unsigned", "void", "volatile", "while", "_Bool", "_Complex", "_Imaginary", "integer", "floating", "charconst", "stringlit", "identifier", "Completion", "EndOfCompletion", "Invalid", "RightBracket", "RightParen", "RightBrace", "SemiColon", "typeof", "__alignof__", "__attribute__", "__declspec", "asm", "ERROR_TOKEN", "EOF_TOKEN", "no_sizeof_type_name_start", "]", ")", "}", ";", "identifier_token", "expression", "postfix_expression", "member_name", "type_id", "initializer_list", "unary_expression", "cast_expression", "multiplicative_expression", "additive_expression", "shift_expression", "relational_expression", "equality_expression", "and_expression", "exclusive_or_expression", "inclusive_or_expression", "logical_and_expression", "logical_or_expression", "assignment_expression", "expression_in_statement", "expression_list_actual", "constant_expression", "statement", "compound_statement", "block_item_list", "block_item", "declaration", "declaration_specifiers", "init_declarator_list", "simple_declaration_specifiers", "struct_or_union_declaration_sp" + "ecifiers", "elaborated_declaration_specifi" + "ers", "enum_declaration_specifiers", "typdef_name_declaration_specif" + "iers", "no_type_declaration_specifier", "type_qualifier", "no_type_declaration_specifiers", "simple_type_specifier", "struct_or_union_specifier", "elaborated_specifier", "enum_specifier", "type_name_specifier", "init_declarator", "complete_declarator", "initializer", "declarator", "struct_or_union", "struct_declaration_list", "struct_declaration", "specifier_qualifier_list", "struct_declarator_list", "complete_struct_declarator", "struct_declarator", "enumerator_list", "enumerator", "direct_declarator", "pointer_seq", "array_direct_declarator", "basic_direct_declarator", "array_modifier", "function_direct_declarator", "parameter_type_list", "function_declarator", "identifier_list", "array_modifier_type_qualifiers", "type_qualifier_list", "parameter_list", "parameter_declaration", "complete_parameter_declarator", "abstract_declarator", "direct_abstract_declarator", "basic_direct_abstract_declarat" + "or", "array_direct_abstract_declarat" + "or", "initializer_seq", "designated_initializer", "designation", "designator_list", "designator", "function_body", "attribute_or_decl_specifier", "attribute_or_decl_specifier_se" + "q", "word", "extended_decl_modifier_seq", "extended_decl_modifier", "extended_asm_param", "case_range_expression", "typeof_declaration_specifiers", "typeof_type_specifier", "field_name_designator" }; }; public final static String name[] = Name.name; public final String name(int index) { return name[index]; } public final static int ERROR_SYMBOL = 29, SCOPE_UBOUND = 88, SCOPE_SIZE = 89, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } public final int getScopeUbound() { return SCOPE_UBOUND; } public final int getScopeSize() { return SCOPE_SIZE; } public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int NUM_STATES = 345, NT_OFFSET = 100, LA_STATE_OFFSET = 3605, MAX_LA = 2147483647, NUM_RULES = 387, NUM_NONTERMINALS = 148, NUM_SYMBOLS = 248, SEGMENT_SIZE = 8192, START_STATE = 485, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 99, EOLT_SYMBOL = 99, ACCEPT_ACTION = 3079, ERROR_ACTION = 3218; public final static boolean BACKTRACK = true; public final int getNumStates() { return NUM_STATES; } public final int getNtOffset() { return NT_OFFSET; } public final int getLaStateOffset() { return LA_STATE_OFFSET; } public final int getMaxLa() { return MAX_LA; } public final int getNumRules() { return NUM_RULES; } public final int getNumNonterminals() { return NUM_NONTERMINALS; } public final int getNumSymbols() { return NUM_SYMBOLS; } public final int getSegmentSize() { return SEGMENT_SIZE; } public final int getStartState() { return START_STATE; } public final int getStartSymbol() { return lhs[0]; } public final int getIdentifierSymbol() { return IDENTIFIER_SYMBOL; } public final int getEoftSymbol() { return EOFT_SYMBOL; } public final int getEoltSymbol() { return EOLT_SYMBOL; } public final int getAcceptAction() { return ACCEPT_ACTION; } public final int getErrorAction() { return ERROR_ACTION; } public final boolean isValidForParser() { return isValidForParser; } public final boolean getBacktrack() { return BACKTRACK; } public final int originalState(int state) { return -baseCheck[state]; } public final int asi(int state) { return asb[originalState(state)]; } public final int nasi(int state) { return nasb[originalState(state)]; } public final int inSymbol(int state) { return inSymb[originalState(state)]; } public final int ntAction(int state, int sym) { return baseAction[state + sym]; } public final int tAction(int state, int sym) { int i = baseAction[state], k = i + sym; return termAction[termCheck[k] == sym ? k : i]; } public final int lookAhead(int la_state, int sym) { int k = la_state + sym; return termAction[termCheck[k] == sym ? k : la_state]; } }