blob: 98c8ecfc11d2fafc4db68b4f194b1a7834f3e181 [file] [log] [blame]
/*******************************************************************************
* 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;
@Override
public final int baseCheck(int index) { return baseCheck[index]; }
public final static short rhs[] = baseCheck;
@Override
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;
@Override
public final int baseAction(int index) { return baseAction[index]; }
public final static char lhs[] = baseAction;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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;
@Override
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];
}
}