/******************************************************************************* * 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.c99; public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym { 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 }; }; 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,4,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,-106,0,-161,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-37,0,0,0,-18,0,-61,-10, 0,0,-159,0,-12,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-41, 0,0,0,0,0,0,0,-9,0,0, 0,0,0,-236,0,-4,0,0,0,0, 0,-23,0,0,0,0,0,0,-2,0, 0,-242,0,0,0,0,0,0,0,0, 0,0,-32,0,-65,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-3, -139,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-13,0, 0,0,-33,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -154,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-221,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-39,0,0,0,-120,0,-267, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -20,0,0,0,-21,0,-7,-27,0,0, -271,0,-156,0,-28,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -251,-31,0,0,0,-46,0,-22,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-24,0,0,-148, 0,-30,0,0,0,0,0,0,0,0, 0,0,0,0,-34,0,0,-137,0,-66, 0,0,0,0,0,0,0,0,0,-25, 0,-280,0,-279,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,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-58,0,-102, -50,0,0,0,0,-26,0,-38,0,0, 0,-51,-146,0,0,0,0,0,0,0, 0,0,0,0,0,-157,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-192,-53,0,0,0,0,0,0,-150, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-138,0,0,0,0,0,0, 0,0,-35,0,-36,0,0,0,0,0, 0,0,-60,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-113,0,-119,0,-132,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-188,0,0,0,0,0,-165,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-118, 0,-104,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-121,0,-49,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-93,0,-151,0,-179,0,0, 0,0,0,0,0,0,0,0,-67,0, 0,0,0,0,0,0,0,-122,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-133,0,0,0,-160,0, -123,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-124,0,-189,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -200,0,0,0,0,0,-125,0,-63,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-201,0,-126, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-202,0,0,0, 0,0,-127,0,-224,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-226,0,-128,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-227,0,0,0,0,0,-129,0, -240,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-265, 0,-130,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-274,0, 0,0,0,0,-131,0,-278,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-284,0,-193,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-290,0,0,0,0,0, -194,0,-74,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-75,0,-230,0,-76,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -77,0,0,0,-78,0,-235,0,-54,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-79,0,0,0,-249,0,-80, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-81,0, -147,0,-82,0,0,0,0,0,0,0, -260,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-83,0,0, 0,-270,0,-84,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-87,0, 0,0,-152,0,-89,0,0,0,0,0, 0,0,0,0,-277,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-111,0,0,0,-283,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-90,0,0,0,-72,0,-96,0, 0,0,0,0,-48,0,0,0,-149,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-95,0,-42,0,0,-238,0,-62, -97,0,0,0,0,0,0,0,0,0, -92,-45,0,0,-99,-91,0,0,0,-100, -183,0,0,0,0,0,-114,0,0,-269, 0,0,0,-103,0,-29,0,0,-52,0, 0,0,0,0,0,0,0,0,0,0, 0,-70,0,-105,0,0,0,0,0,0, 0,-40,0,0,0,0,0,0,0,0, 0,0,0,-94,0,-172,0,0,0,-86, -107,0,-47,0,-101,0,0,0,0,0, 0,0,0,-190,-115,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-59,-180,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-163,0,0, 0,0,0,-164,0,0,0,0,-15,0, -8,0,-109,0,0,0,-166,-228,0,0, 0,-169,0,0,0,0,-223,-191,-6,-112, 0,0,-234,0,0,0,0,0,0,0, -162,0,0,0,-174,0,0,0,0,0, 0,0,0,-17,0,-116,-252,0,0,0, 0,0,0,0,0,0,0,0,-176,0, 0,0,0,0,0,0,-195,0,0,0, 0,0,-247,-197,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -248,0,0,0,0,-73,0,0,0,0, 0,0,0,0,0,-177,0,0,0,-184, 0,0,0,0,0,0,-263,0,0,-98, 0,0,-85,-185,0,0,0,0,0,-204, 0,0,0,-282,0,-276,0,0,0,-205, 0,0,0,0,-206,0,0,0,0,0, 0,0,0,0,0,-155,0,-207,0,0, 0,0,0,0,0,0,0,0,0,-173, 0,0,0,0,0,-208,0,0,0,0, 0,-108,-57,0,0,-209,0,0,0,0, 0,-175,0,0,-239,-258,0,0,0,0, 0,0,0,0,0,0,0,-178,0,0, 0,-187,0,-229,0,0,-232,0,0,0, 0,0,0,0,0,0,0,-110,0,0, 0,0,0,-210,0,0,0,0,0,-211, 0,0,0,0,0,0,0,0,0,-254, 0,0,-212,0,0,0,-233,0,0,0, 0,-186,-213,0,-214,-250,0,-215,0,0, 0,-256,0,0,-216,0,0,0,0,0, 0,0,0,0,0,-217,0,-262,0,-218, -68,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-257,0,0, -266,-198,0,0,-196,0,0,0,0,0, 0,0,0,-219,0,0,0,0,0,-287, 0,0,0,-220,0,0,0,0,0,0, 0,0,0,0,-225,-261,0,0,-203,-243, 0,-289,0,0,0,0,-268,0,0,0, 0,0,0,0,0,0,-275,-181,0,0, -244,-281,0,-291,0,0,-43,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-69,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-288,0,0,0, 0,-1,0,0,0,-259,-153,0,0,0, 0,0,0,0,0,0,0,0,0,-19, -273,0,0,-144,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-140,0, 0,0,0,0,-55,0,-71,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-199,-286,0,-145, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -5,0,0,-88,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-134, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -141,0,0,0,0,0,0,0,0,0, -241,0,0,-142,0,0,0,0,0,0, 0,0,0,-231,-246,0,0,-245,0,0, 0,0,-143,0,0,0,0,0,0,0, 0,0,0,0,-11,0,0,0,0,-14, -182,0,0,0,0,0,0,0,-16,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-64,-135,0,0,0,0,0,0,0, -136,0,0,0,-167,0,0,0,0,-117, 0,0,0,0,0,0,0,0,0,0, -56,0,0,0,0,0,0,0,0,0, -264,0,0,0,0,0,-237,0,0,0, 0,0,0,-222,0,0,0,0,0,0, 0,0,0,-253,0,0,0,0,-272,0, 0,0,0,0,0,0,0,0,0,0, 0,-285,0,0,0,0,0,0,0,0, 0,-158,0,0,0,0,0,0,0,0, 0,-168,0,0,0,0,0,0,0,-170, 0,0,0,-171,0,0,0,0,0,0, 0,0,0,0,0,-255,0,0,0,0, 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[] = { 107,2,125,40,40,23,23,45,45,17, 17,1,1,3,3,3,3,4,4,4, 5,6,6,6,6,6,6,6,6,78, 78,90,7,7,7,7,7,7,7,7, 7,7,7,8,8,9,9,9,9,10, 10,10,11,11,11,12,12,12,12,12, 13,13,13,14,14,15,15,16,16,18, 18,19,19,20,20,22,22,22,22,22, 22,22,22,22,22,22,22,29,27,21, 108,108,91,91,56,30,30,30,30,30, 30,30,31,31,31,28,28,92,92,68, 68,32,32,33,33,33,63,63,34,34, 34,34,34,35,35,35,35,35,47,47, 24,24,24,24,24,48,48,48,84,84, 79,79,79,79,80,80,80,81,81,81, 82,82,82,83,83,83,93,93,85,85, 86,49,51,51,51,51,51,64,65,65, 65,65,65,65,65,65,65,65,65,65, 72,69,69,109,110,74,74,70,70,70, 87,94,94,95,95,88,88,88,57,111, 111,96,97,97,97,71,71,112,98,98, 99,99,89,89,25,26,26,26,50,52, 52,41,41,41,41,37,37,38,42,42, 43,39,39,100,100,44,114,114,113,113, 46,46,46,46,46,46,46,46,46,101, 54,54,54,54,36,75,75,66,66,66, 67,67,58,58,115,115,77,77,76,76, 76,59,59,59,60,61,61,61,62,62, 62,62,73,73,53,53,55,117,116,116, 116,116,102,118,119,119,120,120,121,121, 107,107,122,122,103,103,103,103,123,123, 104,104,104,105,106,106,292,1606,998,17, 21,18,1133,949,45,1152,1171,1156,1194,1175, 1219,1200,1248,622,1223,1254,75,331,92,359, 176,136,214,1426,20,505,17,21,18,1133, 43,45,1152,1171,1156,1194,1175,1219,1200,1248, 908,1824,2191,285,138,135,137,161,944,703, 525,225,234,668,587,1610,1051,180,337,242, 140,167,358,232,1355,144,147,150,153,754, 340,333,1115,136,214,1501,368,2105,2110,2119, 1544,136,214,322,835,1407,20,1559,17,21, 18,1133,41,525,225,233,146,135,137,161, 419,1313,1519,789,138,135,137,161,703,666, 225,230,443,220,610,222,224,128,275,541, 140,167,90,587,188,144,147,150,153,403, 340,270,783,926,273,1501,368,2105,2110,2119, 1544,1426,20,211,17,21,18,1133,43,45, 1152,1171,1156,1194,1175,1765,527,1350,20,551, 17,21,18,1133,949,45,1152,1171,1156,1194, 1175,1219,1200,1248,440,1223,1254,75,1124,282, 1265,20,551,17,21,18,1133,949,45,1152, 1171,1156,1194,1175,1219,1200,1248,226,1223,1254, 75,296,282,256,214,314,595,324,402,987, 283,1451,1269,1426,20,442,17,21,18,1133, 43,45,1152,1171,1156,1194,1175,1219,1200,1775, 288,412,833,283,1335,1269,1242,20,324,17, 21,18,1133,949,45,1152,1171,1156,1194,1175, 1219,1200,1248,290,1223,1254,75,892,282,289, 1426,20,501,17,21,18,1133,43,45,1152, 1171,1156,1676,1766,129,587,187,314,587,31, 1426,20,291,17,21,18,1133,43,40,283, 913,1269,1369,20,421,17,21,18,1133,949, 45,1152,1171,1156,1194,1175,1219,1200,1248,159, 1223,1254,75,311,282,1199,20,1360,17,21, 18,1133,949,45,1152,1171,1156,1194,1175,1219, 1200,1248,295,1223,1254,75,229,339,1108,180, 833,358,1436,1682,313,283,1004,1269,829,1857, 531,294,749,1426,20,240,17,21,18,1133, 43,45,1645,136,214,292,1426,20,25,17, 21,18,1133,43,45,1152,1171,1156,1194,1175, 1219,1786,1466,831,658,105,138,135,137,161, 1426,20,228,17,21,18,1133,43,45,1152, 1171,1734,140,167,587,31,1387,144,147,150, 153,284,340,326,672,587,189,1501,368,2105, 2110,2119,1544,1388,20,2180,17,21,18,1133, 949,45,1152,1171,1156,1194,1175,1219,1200,1248, 261,1223,1254,75,440,810,1223,20,440,17, 21,18,1133,949,45,1152,1171,1156,1194,1175, 1219,1200,1248,1285,1223,1254,75,231,1567,1426, 20,1574,17,21,18,1133,949,45,1152,1171, 1156,1194,1175,1219,1200,1248,241,1223,1254,75, 359,92,1426,20,24,17,21,18,1133,43, 45,1152,1171,1156,1194,1175,1219,1200,1248,277, 1223,1254,94,1426,20,418,17,21,18,1133, 949,45,1152,1171,1156,1194,1175,1219,1200,1248, 244,1223,1254,75,986,86,1426,20,998,17, 21,18,1133,43,45,1152,1171,1740,1535,1426, 20,125,17,21,18,1133,43,39,1426,20, 1559,17,21,18,1133,949,45,1152,1171,1156, 1194,1175,1219,1200,1248,440,1223,1254,75,1126, 85,1426,20,181,17,21,18,1133,949,45, 1152,1171,1156,1194,1175,1219,1200,1248,19,1223, 1254,75,235,84,1426,20,1132,17,21,18, 1133,949,45,1152,1171,1156,1194,1175,1219,1200, 1248,440,1223,1254,75,1441,83,1426,20,384, 17,21,18,1133,949,45,1152,1171,1156,1194, 1175,1219,1200,1248,1573,1223,1254,75,440,82, 1426,20,276,17,21,18,1133,949,45,1152, 1171,1156,1194,1175,1219,1200,1248,440,1223,1254, 75,1591,81,1426,20,440,17,21,18,1133, 949,45,1152,1171,1156,1194,1175,1219,1200,1248, 23,1223,1254,75,440,80,1426,20,1750,17, 21,18,1133,949,45,1152,1171,1156,1194,1175, 1219,1200,1248,440,1223,1254,75,1772,79,1426, 20,440,17,21,18,1133,949,45,1152,1171, 1156,1194,1175,1219,1200,1248,1808,1223,1254,75, 440,78,1426,20,274,17,21,18,1133,949, 45,1152,1171,1156,1194,1175,1219,1200,1248,440, 1223,1254,75,280,77,1426,20,440,17,21, 18,1133,949,45,1152,1171,1156,1194,1175,1219, 1200,1248,1988,1223,1254,75,440,76,1426,20, 281,17,21,18,1133,949,45,1152,1171,1156, 1194,1175,1219,1200,1248,440,1223,1254,75,1852, 1850,1426,20,1471,17,21,18,1133,949,45, 1152,1171,1156,1194,1175,1219,1200,1248,1874,1223, 1254,75,1055,1871,1426,20,876,17,21,18, 1133,949,45,1152,1171,1156,1194,1175,1219,1200, 1248,663,1223,1254,75,630,93,1426,20,331, 17,21,18,1133,43,45,1152,1171,1156,1194, 1175,1219,1200,1248,345,1223,1254,94,1426,20, 796,17,21,18,1133,949,45,1152,1171,1156, 1194,1175,1219,1200,1248,1520,1223,1254,75,931, 74,1426,20,288,17,21,18,1133,43,45, 1658,1426,20,213,17,21,18,1133,43,45, 1152,1171,1156,1194,1175,1219,1200,1248,751,1223, 1254,94,1426,20,550,17,21,18,1133,43, 45,1152,1171,1156,1194,1175,1219,1200,1248,1067, 1223,1254,94,1426,20,1064,17,21,18,1133, 43,45,1152,1171,1753,1426,20,203,17,21, 18,1133,43,45,1152,1171,1156,1194,1175,1219, 1200,1248,331,1223,1254,94,1426,20,1872,17, 21,18,1133,43,45,1152,1171,1156,1194,1175, 1219,1200,1248,1069,1223,1254,94,1445,20,589, 17,21,18,1133,34,178,1414,316,1762,1426, 20,204,17,21,18,1133,43,45,1152,1171, 1156,1686,111,587,1507,358,87,658,1295,1472, 890,626,1917,96,1445,109,95,97,98,99, 100,419,908,789,1623,708,1,1414,316,1472, 793,1464,110,256,214,255,214,946,126,1518, 587,297,88,111,54,232,331,87,1494,358, 1472,1728,308,107,96,1445,109,95,97,98, 99,100,1289,20,58,17,21,18,1133,43, 36,315,331,110,666,225,230,1376,219,610, 222,224,668,275,986,498,235,1414,316,264, 358,1104,318,622,108,986,268,783,926,273, 1443,124,247,111,941,1205,2071,87,668,1523, 1472,766,112,265,96,1445,109,95,97,98, 99,100,419,419,1546,1717,1965,278,1683,703, 666,225,1323,110,220,610,222,1275,60,128, 196,666,225,230,986,219,610,222,224,582, 275,1146,262,358,107,2111,494,986,119,1414, 316,127,905,268,783,926,273,986,331,355, 1119,1396,1712,998,123,111,136,214,1508,87, 1041,358,1472,477,2224,172,96,1445,109,95, 97,98,99,100,1108,180,355,986,1422,143, 135,137,161,106,668,110,666,225,582,1261, 219,610,222,535,2229,142,167,359,205,136, 214,160,392,1178,1319,20,108,17,21,18, 1133,43,44,666,225,230,735,219,610,222, 224,1490,139,135,137,161,1445,20,160,17, 21,18,1133,33,156,528,360,243,141,167, 1118,733,577,145,148,151,154,1489,340,558, 480,1414,789,1112,1465,658,28,28,1269,1269, 706,156,528,382,587,299,868,111,1422,577, 745,87,256,214,28,1480,1269,1387,96,1445, 1512,95,97,98,99,100,1426,20,1486,17, 21,18,1133,43,45,1152,1171,1156,1194,1768, 521,1414,789,666,225,230,367,219,610,222, 224,260,874,786,658,658,477,111,1846,764, 1455,87,562,1414,789,908,998,2201,96,1445, 104,95,97,98,99,100,198,1472,358,111, 2084,312,890,87,603,1414,789,868,279,1422, 96,1445,102,95,97,98,99,100,664,1610, 309,111,200,201,1284,87,899,255,214,1473, 1286,182,96,1445,103,95,97,98,99,100, 644,1414,789,1430,666,225,230,1464,219,610, 222,224,1161,1432,2207,1220,1500,111,672,1846, 193,87,685,1414,789,1141,858,1868,96,1445, 120,95,97,98,99,100,1411,1358,998,111, 1000,1426,20,87,17,21,18,1133,43,38, 96,1445,115,95,97,98,99,100,726,1414, 789,998,331,199,201,1289,20,210,17,21, 18,1133,43,36,1467,111,1381,1624,1926,87, 767,1414,789,206,711,1788,96,1445,1867,95, 97,98,99,100,1811,904,1499,111,668,359, 359,87,808,1414,789,248,614,1503,96,1445, 114,95,97,98,99,100,2088,1142,933,111, 658,359,359,87,849,1414,789,355,2340,1422, 96,1445,122,95,97,98,99,100,2340,22, 245,111,198,1426,20,87,17,21,18,1133, 43,37,96,1445,121,95,97,98,99,100, 2340,246,296,2340,666,225,230,359,219,610, 222,224,349,2340,376,1473,1484,1426,20,160, 17,21,18,1133,43,45,1152,1171,1763,306, 355,986,1422,195,1426,20,420,17,21,18, 1133,43,45,1152,1630,2340,194,298,2242,358, 2340,789,157,528,2340,622,2340,1426,20,305, 17,21,18,1133,43,35,2340,666,225,230, 88,219,610,222,224,2340,1849,1005,986,2085, 1426,20,494,17,21,18,1133,43,45,1152, 1640,703,666,225,230,118,220,610,222,224, 278,406,2340,376,1426,20,2340,17,21,18, 1133,43,36,2340,2340,302,304,310,306,389, 1061,2340,1812,275,2340,420,2340,2340,2340,2340, 2340,2340,2340,2340,2011,2340,268,783,926,273, 2340,2340,2340,2340,2340,2340,2340,2340,305,2340, 2340,1426,20,1041,17,21,18,1133,43,48, 2340,950,2340,658,1426,20,275,17,21,18, 1133,43,47,2340,992,950,658,658,1339,268, 783,926,273,1426,20,1387,17,21,18,1133, 43,46,2340,2340,2340,1003,267,668,198,1387, 1062,664,1610,2340,303,304,310,2340,2340,1449, 2340,668,2340,2340,703,392,2340,2340,2340,260, 136,214,2340,2340,275,136,214,1060,1455,2088, 2340,1473,2340,260,136,214,2340,270,783,926, 273,1060,1455,149,135,137,161,2340,152,135, 137,161,358,358,316,316,2340,155,135,137, 161,358,193,316,2340,1479,2340,316,1696,1868, 890,2340,2340,88,88,2340,198,198,2340,895, 895,1084,88,658,2340,198,88,2340,895,1472, 210,1084,116,658,2340,255,214,890,2340,1757, 1624,2340,2340,2340,1479,1387,789,2340,2340,2030, 2030,2340,2214,2340,1479,1387,789,2340,2030,1479, 2340,789,255,214,2340,88,2340,2340,1517,768, 941,116,1479,2340,789,88,2340,2340,968,260, 88,116,358,2340,789,498,116,764,1455,260, 2340,2340,358,88,789,2340,2340,1087,1455,116, 358,2340,789,88,358,2340,789,1547,2340,1790, 2340,1108,1617,88,2340,2340,358,1941,789,995, 2340,88,1106,2340,2340,88,2340,1014,2340,2340, 2340,1033,2340,2340,2340,1125,2340,88,2340,2340, 2340,2340,2340,1079,2340,0,11,227,0,2348, 1,0,1,2578,0,8,10,0,1845,119, 0,180,20,0,1,2567,0,113,1830,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,36,37,38,39, 40,41,42,43,44,45,46,47,48,49, 50,51,52,0,54,55,56,0,58,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,36,37,38,39,40, 41,42,43,44,45,46,47,48,49,50, 51,52,59,54,55,56,59,58,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,36,37,38,39,40,41, 42,43,44,45,46,47,48,49,50,51, 52,0,54,55,56,0,58,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,36,37,38,39,40,41,42, 43,44,45,46,47,48,49,50,51,52, 59,54,55,56,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, 36,37,38,39,40,41,42,43,44,45, 46,47,48,49,50,51,52,0,54,55, 56,0,1,2,3,0,5,2,7,8, 9,10,11,12,13,14,15,16,17,18, 19,20,21,0,23,2,25,26,27,28, 29,0,1,0,3,0,1,6,3,6, 0,6,41,42,43,44,45,46,47,48, 49,50,51,52,0,54,55,56,0,1, 2,3,4,5,0,1,2,0,0,0, 1,2,4,4,5,78,0,19,20,21, 22,23,24,25,26,27,28,29,19,20, 21,22,23,0,25,26,27,28,29,41, 42,43,44,45,46,47,48,49,50,51, 52,0,54,55,56,0,1,2,3,4, 5,0,53,69,70,71,72,0,0,60, 0,73,4,65,19,20,21,22,23,24, 25,26,27,28,29,69,70,71,72,0, 22,0,0,4,61,4,41,42,43,44, 45,46,47,48,49,50,51,52,0,54, 55,56,61,22,53,0,83,84,85,86, 87,88,89,90,91,92,0,66,73,0, 1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,57,60, 0,22,61,24,0,1,6,3,0,30, 31,32,33,34,35,36,37,38,39,40, 0,1,2,3,4,5,6,7,8,9, 10,11,12,13,14,15,16,17,18,0, 0,1,22,3,24,69,70,71,72,0, 30,31,32,33,34,35,36,37,38,39, 40,0,1,2,3,4,5,6,7,8, 9,10,11,12,13,14,15,16,17,18, 0,0,1,22,3,24,0,1,0,3, 2,30,31,32,33,34,35,36,37,38, 39,40,0,1,2,3,4,5,6,7, 8,9,10,11,12,13,14,15,16,17, 18,0,1,2,22,0,24,2,0,0, 81,82,30,31,32,33,34,35,36,37, 38,39,40,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16, 17,18,0,0,1,22,3,24,0,7, 8,0,0,30,31,32,33,34,35,36, 37,38,39,40,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15, 16,17,18,74,75,0,22,0,24,2, 0,1,7,8,30,31,32,33,34,35, 36,37,38,39,40,0,1,2,3,4, 5,6,7,8,9,10,11,12,13,14, 15,16,17,18,0,74,75,22,0,24, 0,7,8,0,6,30,31,32,33,34, 35,36,37,38,39,40,0,1,2,3, 4,5,6,7,8,9,10,11,12,13, 14,15,16,17,18,0,0,1,22,3, 24,6,0,0,2,0,30,31,32,33, 34,35,36,37,38,39,40,0,1,2, 3,4,5,6,7,8,9,10,11,12, 13,14,15,16,17,18,73,77,0,22, 0,24,0,5,0,5,4,30,31,32, 33,34,35,36,37,38,39,40,0,1, 2,3,4,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,0,1,2, 22,76,24,0,1,0,3,4,30,31, 32,33,34,35,36,37,38,39,40,0, 58,0,19,20,21,4,23,24,25,26, 27,28,29,0,0,2,0,0,19,20, 21,4,0,22,41,42,43,44,45,46, 47,48,49,50,51,52,59,54,55,56, 0,58,0,1,30,3,4,62,63,9, 0,1,2,0,4,0,1,2,57,0, 5,19,20,21,5,23,24,25,26,27, 28,29,19,20,21,53,23,60,25,26, 27,28,29,41,42,43,44,45,46,47, 48,49,50,51,52,0,54,55,56,4, 58,0,1,53,3,4,0,0,53,0, 60,4,0,0,0,2,2,22,4,0, 19,20,21,64,23,24,25,26,27,28, 29,19,20,21,0,23,0,25,26,27, 28,29,41,42,43,44,45,46,47,48, 49,50,51,52,0,54,55,56,0,58, 0,1,2,3,0,58,53,53,59,5, 0,0,2,0,60,5,0,4,0,19, 20,21,6,23,6,25,26,27,28,29, 19,20,21,0,23,22,25,26,27,28, 29,41,42,43,44,45,46,47,48,49, 50,51,52,0,54,55,56,0,1,6, 3,0,1,53,0,1,2,0,0,5, 57,67,68,0,61,0,19,20,21,4, 23,0,25,26,27,28,29,19,20,21, 0,0,19,20,21,0,0,64,41,42, 43,44,45,46,47,48,49,50,51,52, 0,54,55,56,19,20,21,53,23,0, 25,26,27,28,29,64,0,0,61,19, 20,21,57,6,53,60,41,42,43,44, 45,46,47,48,49,50,51,52,0,1, 2,3,4,5,0,7,8,9,10,11, 12,13,14,15,16,17,18,77,0,0, 79,23,0,1,2,3,4,5,9,7, 8,9,10,11,12,13,14,15,16,17, 18,0,1,2,3,23,5,6,7,8, 9,10,11,12,13,14,15,16,17,18, 0,57,0,65,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15, 16,17,18,0,0,0,2,65,0,1, 2,3,4,5,0,7,8,9,10,11, 12,13,14,15,16,17,18,0,0,0, 0,0,0,19,20,21,4,57,0,1, 2,3,58,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,53,0,0, 2,0,0,5,0,62,63,62,63,0, 1,2,3,65,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,0,1, 2,3,60,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,0,1,2, 3,53,5,0,7,8,9,10,11,12, 13,14,15,16,17,18,0,1,2,3, 0,5,0,7,8,9,10,11,12,13, 14,15,16,17,18,0,1,2,3,0, 5,0,7,8,9,10,11,12,13,14, 15,16,17,18,0,1,2,3,0,5, 0,7,8,9,10,11,12,13,14,15, 16,17,18,0,0,0,0,19,20,21, 0,23,2,25,26,27,28,29,0,0, 10,11,4,0,5,0,76,4,0,0, 5,62,63,62,63,6,0,0,0,0, 22,4,0,53,0,22,0,19,20,21, 6,0,6,0,0,0,66,6,0,0, 57,57,0,53,0,0,0,0,0,64, 0,0,0,0,0,0,66,0,60,0, 57,0,0,0,78,0,67,68,0,0, 80,0,67,68,0,58,57,59,0,0, 0,0,0,61,0,0,0,0,0,0, 0,0,59,59,0,0,0,0,0,0, 0,0,0,0,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, 2340,4170,1,4169,1488,1,660,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,2349,1,2441,1,1,1,1,1, 1361,854,812,1434,1394,1620,1329,1353,1380,1371, 1375,1,1,1,1,1,1,1,1,1, 1,1,1,2340,1,1,1,2340,2347,8, 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325, 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325, 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325, 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325, 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325, 2325,2325,1670,2325,2325,2325,1692,2325,2340,4170, 1,4169,1488,1,660,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 2349,1,2441,1,1,1,1,1,1361,854, 812,1434,1394,1620,1329,1353,1380,1371,1375,1, 1,1,1,1,1,1,1,1,1,1, 1,2340,1,1,1,183,2347,2340,4170,1, 4169,2350,1,660,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,2349, 1,2441,1,1,1,1,1,1361,854,812, 1434,1394,1620,1329,1353,1380,1371,1375,1,1, 1,1,1,1,1,1,1,1,1,1, 1714,1,1,1,2340,4170,1,4169,2350,1, 660,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,2349,1,2441,1, 1,1,1,1,1361,854,812,1434,1394,1620, 1329,1353,1380,1371,1375,1,1,1,1,1, 1,1,1,1,1,1,1,71,1,1, 1,2340,2351,2162,2352,11,2014,2316,1893,1791, 1967,1596,1327,405,2353,2354,2355,2356,869,600, 2555,2556,2557,2340,2504,360,2505,2503,2558,2506, 2502,2340,2351,2340,2352,2340,2351,661,2352,552, 254,1399,2509,2514,2513,2511,2512,2510,2515,2516, 2508,2517,2518,2519,60,1499,439,345,2340,1, 1,1,2350,1,1,2567,1940,1,2340,20, 180,2331,2344,2331,2331,533,62,1,1,1, 2349,1,2647,1,1,1,1,1,180,180, 180,2331,180,43,180,180,180,180,180,1, 1,1,1,1,1,1,1,1,1,1, 1,158,1,1,1,2340,1,1,1,2350, 1,2340,2331,1927,1273,856,710,184,1,2331, 287,301,2350,2343,1,1,1,2349,1,2647, 1,1,1,1,1,1927,1273,856,710,2340, 2349,236,2340,2346,1085,224,1,1,1,1, 1,1,1,1,1,1,1,1,2340,1, 1,1,556,224,1252,2340,1062,1039,1016,993, 970,924,947,901,878,833,61,1390,300,2340, 4170,1,4169,2350,1,660,1,1,1,1, 1,1,1,1,1,1,1,1,224,2345, 230,2349,224,2441,186,4160,233,4160,2340,1361, 854,812,1434,1394,1620,1329,1353,1380,1371,1375, 2340,4170,1,4169,2350,1,660,1,1,1, 1,1,1,1,1,1,1,1,1,2340, 185,4162,2349,4162,2441,1927,1273,856,710,73, 1361,854,812,1434,1394,1620,1329,1353,1380,1371, 1375,2340,4170,1,4169,2350,1,660,1,1, 1,1,1,1,1,1,1,1,1,1, 2340,207,4167,2349,4167,2441,2340,2351,2340,2352, 2175,1361,854,812,1434,1394,1620,1329,1353,1380, 1371,1375,2340,4170,1,4169,2350,1,660,1, 1,1,1,1,1,1,1,1,1,1, 1,254,2567,1940,2349,2340,2441,2262,2340,63, 343,2252,1361,854,812,1434,1394,1620,1329,1353, 1380,1371,1375,2340,4170,1,4169,2350,1,660, 1,1,1,1,1,1,1,1,1,1, 1,1,52,209,2351,2349,2352,2441,2340,1221, 673,64,2340,1361,854,812,1434,1394,1620,1329, 1353,1380,1371,1375,2340,4170,1,4169,2350,1, 660,1,1,1,1,1,1,1,1,1, 1,1,1,1339,580,54,2349,2340,2441,2270, 2340,2579,1221,673,1361,854,812,1434,1394,1620, 1329,1353,1380,1371,1375,2340,4170,1,4169,2350, 1,660,1,1,1,1,1,1,1,1, 1,1,1,1,53,1339,580,2349,2340,2441, 69,1221,673,2340,1503,1361,854,812,1434,1394, 1620,1329,1353,1380,1371,1375,2340,4170,1,4169, 2350,1,660,1,1,1,1,1,1,1, 1,1,1,1,1,1,208,374,2349,374, 2441,660,2340,2340,2274,67,1361,854,812,1434, 1394,1620,1329,1353,1380,1371,1375,2340,4170,1, 4169,2350,1,660,1,1,1,1,1,1, 1,1,1,1,1,1,2315,686,2340,2349, 2340,2441,1,1179,2340,1302,2319,1361,854,812, 1434,1394,1620,1329,1353,1380,1371,1375,2340,4170, 1,4169,2350,1,660,1,1,1,1,1, 1,1,1,1,1,1,1,1,2567,1940, 2349,461,2441,2340,1,55,1,192,1361,854, 812,1434,1394,1620,1329,1353,1380,1371,1375,2340, 2347,2340,1,1,1,2350,1,2537,1,1, 1,1,1,2340,119,2286,2340,1,2555,2556, 2557,2346,221,2349,1,1,1,1,1,1, 1,1,1,1,1,1,1231,1,1,1, 65,192,2340,1,2328,1,191,1944,1990,1656, 1,2334,1454,131,2346,263,2567,1454,1877,1, 1,1,1,1,254,1,2537,1,1,1, 1,1,2555,2556,2557,635,2504,2345,2505,2503, 2558,2506,2502,1,1,1,1,1,1,1, 1,1,1,1,1,2340,1,1,1,2350, 191,2340,1,635,1,192,2340,2340,635,2340, 2345,2348,132,223,1,1372,1987,2349,2346,2340, 1,1,1,2599,1,2537,1,1,1,1, 1,2555,2556,2557,2340,2504,2340,2505,2503,2558, 2506,2502,1,1,1,1,1,1,1,1, 1,1,1,1,2340,1,1,1,2340,192, 1,521,1940,2352,49,2347,635,635,1198,2093, 266,133,1987,237,2345,1,2340,224,230,2555, 2556,2557,1531,2504,234,2505,2503,2558,2506,2502, 2555,2556,2557,1,2504,224,2505,2503,2558,2506, 2502,2509,2514,2513,2511,2512,2510,2515,2516,2508, 2517,2518,2519,2340,1499,439,345,2340,2351,1708, 2352,1,2322,635,269,2567,1454,212,250,254, 224,2074,2061,249,224,2340,2555,2556,2557,2346, 2504,272,2505,2503,2558,2506,2502,1,1,1, 70,113,2555,2556,2557,130,2340,2599,2509,2514, 2513,2511,2512,2510,2515,2516,2508,2517,2518,2519, 251,1499,439,345,2555,2556,2557,635,2504,2340, 2505,2503,2558,2506,2502,2599,2340,42,1177,1, 1,1,1834,4153,635,2345,2509,2514,2513,2511, 2512,2510,2515,2516,2508,2517,2518,2519,1,2351, 2162,2352,2344,1412,257,1893,1791,1967,1596,1327, 405,2353,2354,2355,2356,869,600,686,2340,66, 2337,743,2340,2351,2162,2352,2344,1815,1656,1893, 1791,1967,1596,1327,405,2353,2354,2355,2356,869, 600,2340,2351,2162,2352,1131,2014,4153,1893,1791, 1967,1596,1327,405,2353,2354,2355,2356,869,600, 89,702,2340,2343,1,2351,2162,2352,29,2014, 4153,1893,1791,1967,1596,1327,405,2353,2354,2355, 2356,869,600,59,271,58,1695,2343,2340,2351, 2162,2352,2344,2014,252,1893,1791,1967,1596,1327, 405,2353,2354,2355,2356,869,600,2340,2340,2340, 2340,2340,1,2555,2556,2557,91,1154,2340,2351, 2162,2352,29,2014,4153,1893,1791,1967,1596,1327, 405,2353,2354,2355,2356,869,600,635,269,2340, 1987,2340,2340,254,2340,1944,1990,1944,1990,1, 2351,2162,2352,2343,2014,4153,1893,1791,1967,1596, 1327,405,2353,2354,2355,2356,869,600,2340,2351, 2162,2352,91,2014,4153,1893,1791,1967,1596,1327, 405,2353,2354,2355,2356,869,600,1,2351,2162, 2352,635,2014,2340,1893,1791,1967,1596,1327,405, 2353,2354,2355,2356,869,600,2340,2351,2163,2352, 68,2014,2340,1893,1791,1967,1596,1327,405,2353, 2354,2355,2356,869,600,2340,2351,2162,2352,57, 2014,56,1893,1791,1967,1596,1327,405,2353,2354, 2355,2356,869,600,2340,2351,2171,2352,134,2014, 293,1893,1791,1967,1596,1327,405,2353,2354,2355, 2356,869,600,30,208,1,72,2555,2556,2557, 32,2504,421,2505,2503,2558,2506,2502,1,51, 2366,2367,117,2340,2093,50,461,2350,253,2340, 2093,1944,1990,1944,1990,4153,2340,286,202,30, 117,1440,2340,1306,190,2349,190,2555,2556,2557, 186,190,185,1,1,2340,1634,207,2340,2340, 2369,3442,2340,1959,2340,2340,2340,2340,2340,2598, 2340,2340,2340,2340,2340,2340,724,2340,117,2340, 1636,2340,2340,2340,533,2340,2074,2061,2340,2340, 598,2340,2074,2061,2340,1440,500,1285,2340,2340, 2340,2340,2340,612,2340,2340,2340,2340,2340,2340, 2340,2340,2352,2351 }; }; 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, 496,1,425,281,496,427,494,310,322,492, 322,492,492,322,492,322,283,466,427,416, 527,494,283,201,133,132,375,48,466,374, 253,492,241,241,492,241,427,466,338,466, 214,283,427,79,214,26,427,254,494,102, 494,205,466,330,427,216,468,283,425,141, 99,306,167,269,451,451,451,451,451,83, 451,451,451,161,178,183,181,189,185,192, 191,194,193,195,216,129,494,451,48,374, 253,449,202,202,241,527,527,436,527,527, 202,253,139,451,139,269,494,102,205,205, 330,330,338,333,337,427,306,99,82,79, 451,451,451,451,451,451,451,451,451,451, 451,338,338,529,269,269,241,241,3,451, 451,451,451,451,451,451,451,451,451,451, 451,451,451,451,451,451,451,451,451,337, 129,24,251,202,451,202,267,451,252,451, 451,254,436,139,436,198,380,102,129,244, 102,205,207,431,207,330,306,335,336,211, 466,216,451,451,99,83,26,466,211,338, 338,338,99,181,181,178,178,185,185,183, 183,183,183,191,189,193,192,139,194,429, 24,449,202,338,527,338,338,253,436,451, 102,246,207,129,451,241,306,330,214,338, 535,333,99,99,529,535,341,494,451,207, 45,202,449,436,451,436,436,129,201,451, 200,129,330,216,338,129,22,378,241,451, 44,3,202,338,252,246,451,338,161,26, 99,241,451,338,3,202,436,99,436,338, 436 }; }; 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, 73,0,4,60,12,13,14,15,16,1, 3,2,10,11,9,5,7,8,17,18, 0,4,58,53,66,2,13,14,15,16, 1,3,10,11,9,5,7,8,17,18, 12,6,0,61,53,66,0,25,41,19, 42,54,26,43,27,44,45,28,20,46, 47,23,55,29,56,48,49,21,50,51, 52,1,3,4,61,57,22,0,19,20, 21,23,10,11,9,5,7,8,17,18, 12,2,1,3,13,14,15,16,65,4, 0,25,41,19,42,54,26,43,27,44, 45,28,20,46,47,23,55,29,56,48, 49,21,50,51,52,1,3,24,4,58, 0,2,4,61,57,60,22,53,59,0, 19,20,21,10,11,9,5,7,8,17, 18,12,2,1,3,13,14,15,16,0, 53,2,66,80,10,11,61,83,84,85, 86,87,89,88,90,91,92,5,67,68, 7,8,63,62,69,70,71,72,74,75, 9,76,77,78,58,81,82,65,60,59, 57,22,4,0,1,3,4,58,57,0, 5,2,53,60,4,25,41,19,42,54, 26,43,27,44,45,28,20,46,47,23, 55,29,56,48,49,21,50,51,52,64, 1,3,0,22,4,5,1,2,59,0, 73,79,58,32,34,6,38,40,35,30, 36,37,33,31,39,24,4,22,12,13, 14,15,16,10,11,9,7,8,17,18, 5,2,1,3,54,55,56,49,41,46, 44,45,43,42,47,48,50,51,52,29, 26,23,25,28,27,19,20,21,0,49, 41,46,44,45,43,42,47,48,50,51, 52,59,22,29,26,23,25,28,27,19, 20,21,5,1,2,53,57,60,4,0, 9,5,7,8,67,68,62,63,69,70, 71,72,74,75,76,77,78,81,82,59, 83,84,85,86,87,88,89,90,91,92, 65,60,58,6,4,57,22,61,0,66, 80,10,11,9,7,8,67,68,62,63, 69,70,71,72,74,75,76,77,78,81, 82,61,83,84,85,86,87,88,89,90, 91,92,57,53,60,25,19,26,27,28, 20,23,29,21,22,4,5,2,1,0, 4,57,58,61,0,32,34,6,38,40, 35,30,36,37,33,31,39,24,22,4, 2,13,14,15,16,1,3,10,11,9, 7,8,17,18,12,5,0,25,41,19, 42,54,26,43,27,44,45,28,20,46, 47,23,55,29,56,48,49,21,50,51, 52,1,3,6,0,73,25,41,19,42, 54,26,43,27,44,45,28,20,46,47, 23,55,29,56,48,49,21,50,51,52, 1,3,5,22,4,24,2,0,4,60, 5,2,53,0,5,25,41,19,42,54, 26,43,27,44,45,28,20,46,47,23, 55,29,56,48,49,21,50,51,52,1, 3,64,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, 150,25,32,15,159,110,45,121,122,13, 122,108,108,122,107,122,116,165,112,25, 25,45,105,33,59,59,25,25,165,25, 51,7,7,7,7,7,9,25,157,165, 156,75,112,63,156,54,94,69,67,105, 25,105,25,30,96,89,141,18,32,42, 65,79,25,168,43,43,43,43,43,64, 43,43,43,25,25,25,25,25,25,25, 25,25,25,25,133,105,25,43,25,25, 85,81,33,33,7,25,25,128,25,25, 33,51,25,43,25,1,25,137,105,7, 30,105,157,101,25,112,79,65,64,38, 43,43,43,43,43,43,43,43,43,43, 43,157,157,103,168,168,57,57,35,82, 43,43,43,43,43,43,43,43,43,43, 43,43,43,43,43,43,43,82,43,157, 52,105,25,33,43,33,172,82,25,82, 82,69,128,25,128,25,25,105,52,32, 146,7,92,25,25,105,79,59,59,100, 165,89,43,43,65,64,124,165,154,157, 157,157,65,25,25,25,25,25,25,25, 25,25,25,25,25,25,25,25,25,25, 41,174,33,157,25,157,157,85,128,43, 137,112,92,52,43,7,79,38,156,157, 163,26,65,65,28,163,125,125,43,92, 49,33,174,128,82,128,128,52,33,43, 25,52,38,89,157,52,40,25,7,43, 47,174,33,157,25,112,43,157,61,54, 65,7,43,157,174,33,128,65,128,157, 128 }; }; 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, 84,82,81,74,80,79,1,0,37,39, 36,0,109,0,37,2,100,84,83,82, 81,74,80,79,0,37,42,61,60,36, 0,2,17,0,2,108,0,25,0,102, 55,2,6,0,106,0,121,0,119,0, 2,45,0,6,55,0,90,0,46,0, 117,0,2,6,40,0,110,0,2,24, 1,29,92,0,24,2,123,0,75,0, 17,2,27,0,29,1,68,45,2,24, 0,78,0,39,44,37,42,36,0,23, 37,42,60,61,2,0,112,87,0,39, 44,42,37,2,0,74,69,70,71,72, 64,48,0,6,55,53,0,1,29,2, 30,0,113,2,24,0,95,2,57,0, 2,24,47,28,0,2,57,88,0,122, 2,24,0,60,61,2,23,0,2,24, 103,0,2,24,36,54,0,2,57,27, 0,24,47,2,63,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, 85,2,86,87,9,3,10,11,8,6, 7,68,81,82,83,84,12,13,48,64, 76,92,69,93,44,55,60,63,72,77, 45,46,49,50,51,57,58,59,65,71, 47,52,56,61,62,66,67,74,75,78, 79,80,1,54,70,73,42,91,29,90, 31,16,17,30,89,4,14,15,18,19, 20,21,94,22,23,24,25,26,53,5, 27,28,32,33,34,35,36,37,38,39, 40,41,88 }; }; 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, 99,0,0,0,0,101,105,106,107,108, 109,110,111,112,113,114,98,115,116,0, 0,117,96,126,134,0,100,122,118,121, 0,0,0,0,0,0,156,0,159,95, 153,155,0,157,97,158,125,133,0,0, 0,144,104,154,0,120,148,167,170,171, 172,0,0,136,0,160,166,124,137,138, 139,140,143,145,165,169,103,0,128,129, 130,131,132,135,141,142,0,147,152,102, 119,123,127,0,146,150,0,0,151,161, 164,174,179,0,0,181,0,0,0,0, 149,0,162,163,168,173,0,175,176,0, 177,178,180,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[] = { 82,113,92,35,41,121,12,136,21,51, 69,28,47,103,145,162,169,173,149,1, 1,32,56,79,177,6,107,156,156,127, 99,59,59,59 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; public final int scopePrefix(int index) { return scopePrefix[index]; } public interface ScopeSuffix { public final static char scopeSuffix[] = { 90,90,90,4,4,90,18,142,26,4, 26,26,4,101,90,26,26,4,153,4, 4,26,4,26,26,9,110,159,166,130, 101,66,61,74 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; public final int scopeSuffix(int index) { return scopeSuffix[index]; } public interface ScopeLhs { public final static char scopeLhs[] = { 71,69,71,46,46,69,53,33,62,46, 39,62,46,88,28,7,6,6,20,121, 120,60,46,37,4,102,88,8,6,34, 88,39,44,39 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; public final int scopeLhs(int index) { return scopeLhs[index]; } public interface ScopeLa { public final static byte scopeLa[] = { 58,58,58,65,65,58,58,79,60,65, 60,60,65,22,58,60,60,65,59,65, 65,60,65,60,60,61,1,60,60,30, 22,2,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; public final int scopeLa(int index) { return scopeLa[index]; } public interface ScopeStateSet { public final static byte scopeStateSet[] = { 119,119,119,94,94,119,25,10,98,94, 105,98,94,5,9,33,33,33,63,1, 3,98,94,105,33,91,5,36,33,10, 5,105,107,105 }; }; public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet; public final int scopeStateSet(int index) { return scopeStateSet[index]; } public interface ScopeRhs { public final static char scopeRhs[] = {0, 149,53,0,95,0,211,95,0,31,143, 0,171,209,95,6,148,0,97,0,0, 159,95,2,153,0,96,0,159,95,2, 0,169,2,0,115,23,194,95,53,0, 115,194,95,23,53,0,115,23,53,0, 115,194,95,53,0,115,53,0,130,0, 2,0,162,96,0,2,96,0,159,95, 2,130,0,2,0,160,96,0,145,2, 0,171,191,95,6,94,205,54,0,97, 0,171,191,95,6,205,54,0,150,0, 98,0,204,95,150,0,95,150,0,149, 98,0,187,95,6,203,94,202,167,0, 187,95,6,202,167,0,123,35,0,77, 2,100,96,98,0,123,116,120,2,38, 0,53,121,0,185,95,6,0,120,82, 112,0,29,117,0,170,2,0,96,106, 0,170,2,12,0,96,104,0,201,2, 99,0,120,53,99,0,120,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, 531,0,551,0,2084,1868,1682,0,1683,1874, 1852,1830,1808,1772,1750,1714,1508,1692,1670,1436, 1620,1376,1335,0,612,500,1591,1573,477,1574, 556,0,1596,1327,405,1574,1815,343,686,533, 1656,461,1927,1273,856,710,1339,580,1221,673, 1990,1944,2093,2074,2061,2014,1967,1412,1893,1791, 869,600,1306,612,1285,1252,1231,1198,1177,1154, 1131,1108,789,1085,1062,1039,1016,993,970,947, 924,901,878,833,766,316,812,743,556,635, 500,477,0,926,783,666,610,2088,392,1987, 1454,2030,1387,0,333,376,1636,392,1717,1454, 1546,1387,1965,1443,1877,1940,1519,0,316,658, 1544,376,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,200,117,95,215,95,193,172,173,167, 174,56,55,175,54,176,177,95,2,1, 130,193,207,186,135,130,179,137,95,132, 6,202,180,180,205,180,147,129,145,95, 2,95,57,53,2,61,147,95,94,6, 94,6,129,5,147,95,216,95,117,23, 115,95,100,2,12,18,17,8,7,5, 9,11,10,99,102,104,103,106,105,108, 107,111,109,112,95,6,148,5,137,132, 185,39,31,33,37,36,30,35,40,38, 122,6,34,32,94,95,203,95,6,95, 5,129,159,117,160,95,95,115,194,168, 92,91,90,88,89,87,86,85,84,83, 61,170,120,150,2,2,80,66,2,53, 68,67,5,62,63,8,7,75,74,72, 71,70,69,76,9,78,77,82,81,206, 95,6,4,120,95,94,2,2,123,2, 2,95,59,149,59,184,94,6,187,150, 188,95,191,94,192,129,95,153,154,2, 95,57,194,23,115,5,116,95,2,170, 170,201,120,103,103,102,102,105,105,104, 104,104,104,107,106,109,108,120,111,57, 95,140,156,120,30,120,120,185,59,57, 95,95,191,171,61,57,95,168,2,169, 95,147,115,115,147,95,116,116,59,209, 95,156,110,116,2,116,116,187,204,59, 145,171,168,95,159,171,57,211,66,53, 212,110,156,120,123,57,59,159,138,61, 149,66,53,156,110,116,79,149,116,156, 116 }; }; 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", "ERROR_TOKEN", "EOF_TOKEN", "]", ")", "}", ";", "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", "enumerator_list", "enumerator", "direct_declarator", "pointer_seq", "array_direct_declarator", "basic_direct_declarator", "knr_direct_declarator", "array_modifier", "function_direct_declarator", "parameter_type_list", "function_declarator", "identifier_list", "knr_function_declarator", "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", "external_declaration_list", "external_declaration", "declaration_list", "function_body" }; }; public final static String name[] = Name.name; public final String name(int index) { return name[index]; } public final static int ERROR_SYMBOL = 24, SCOPE_UBOUND = 33, SCOPE_SIZE = 34, 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 = 291, NT_OFFSET = 93, LA_STATE_OFFSET = 2655, MAX_LA = 2147483647, NUM_RULES = 315, NUM_NONTERMINALS = 125, NUM_SYMBOLS = 218, SEGMENT_SIZE = 8192, START_STATE = 1922, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 73, EOLT_SYMBOL = 73, ACCEPT_ACTION = 2315, ERROR_ACTION = 2340; 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]; } }