/******************************************************************************* * 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 GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym { 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,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,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,4,2,4,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,-105,0, -114,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-2,0,0,0, 0,0,0,-351,-312,0,0,-41,-224,0, 0,0,-111,-260,0,-7,0,0,0,0, 0,0,-222,0,-84,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -32,0,0,0,0,-3,-35,-107,0,-58, 0,0,0,-146,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-5,0,0,-120,0,0, 0,0,0,0,0,0,0,0,-10,-11, -253,0,0,0,0,0,0,0,0,0, 0,0,-221,0,0,0,0,0,0,0, 0,-62,0,0,0,0,0,0,0,0, 0,0,0,0,-116,0,0,0,0,0, 0,0,0,0,0,0,0,0,-190,0, 0,0,0,0,0,0,0,-4,0,0, 0,-360,0,0,0,0,0,0,0,-42, 0,0,0,0,0,0,0,0,0,0, 0,0,-12,0,0,0,0,0,0,0, 0,0,-109,-112,0,-209,0,0,0,0, 0,0,0,0,0,-80,0,0,0,0, 0,0,0,0,0,0,-314,0,0,0, -33,0,-13,0,0,0,0,0,0,0, 0,0,0,0,0,-172,0,-295,0,0, 0,0,0,0,0,0,0,0,0,0, -24,0,0,0,0,-25,0,0,0,0, 0,0,-37,-123,0,0,0,0,0,0, 0,0,-36,-108,0,-345,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -38,-274,0,0,0,0,0,0,0,0, 0,-257,0,-81,0,0,0,0,0,0, 0,0,0,-45,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-121,-63, 0,0,0,0,0,0,0,0,0,0, 0,-210,0,-9,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-245, 0,0,-40,-30,-347,0,0,0,0,0, 0,0,0,0,-47,0,0,0,0,0, 0,0,-43,0,0,0,0,0,0,-44, -205,0,0,0,0,0,0,0,0,0, 0,-54,-361,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -56,0,0,0,0,0,0,-239,-64,0, 0,0,0,0,0,0,0,0,0,0, -79,0,0,0,0,0,0,0,0,0, -49,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-310,-65,0,0,0, 0,0,0,0,0,0,-241,0,0,0, 0,0,0,0,0,0,-31,-71,0,0, 0,0,0,0,-73,0,0,0,0,0, 0,0,-50,0,0,-119,0,0,0,0, 0,0,0,0,0,-106,-29,0,0,0, 0,0,0,0,0,0,0,0,0,0, -74,-151,0,0,0,0,0,0,0,0, 0,-51,0,0,0,0,0,0,0,-85, 0,0,0,0,0,0,-182,0,-86,0, 0,0,0,0,0,0,-90,0,0,-141, 0,0,0,0,-72,0,0,0,0,0, 0,-92,-189,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -113,0,0,0,0,0,0,-258,-28,0, 0,0,0,0,0,0,0,0,-333,0, -122,0,0,0,0,0,0,0,-143,0, -87,0,0,0,0,0,0,0,0,0, 0,0,0,-8,-124,0,0,-265,0,0, -117,-125,0,0,0,0,0,0,0,0, 0,-27,0,-126,-89,0,0,-296,0,0, 0,0,0,0,0,0,0,0,0,0, -59,0,-183,0,0,0,0,0,0,0, 0,0,0,0,0,0,-66,0,0,0, 0,0,0,0,0,-217,0,-127,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-128,0,0,0,-75,-256,0, 0,0,0,0,-129,0,0,-188,0,0, 0,0,0,0,-130,0,-191,0,0,0, 0,0,0,0,0,0,0,0,-131,-101, 0,0,0,0,-132,0,0,0,0,0, 0,-91,0,0,0,-192,0,0,0,0, 0,0,0,0,0,-133,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -142,-193,0,0,0,0,0,0,0,0, 0,-153,-246,0,0,0,0,0,0,-136, 0,0,0,0,0,0,0,-194,0,0, 0,0,0,0,0,0,0,0,0,-259, -137,0,0,0,0,-102,0,0,0,0, 0,0,-149,-195,0,0,0,0,0,0, 0,0,0,0,-175,0,-261,0,0,0, 0,-176,0,0,0,0,0,0,0,-196, 0,0,0,0,0,0,0,0,0,0, 0,-343,-227,0,0,0,0,-103,0,0, 0,0,0,0,-138,-197,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-198,0,0,0,0,0,0,0,0, 0,0,0,-348,0,0,0,0,0,-144, 0,0,0,0,0,0,-228,-199,0,0, 0,0,0,0,0,0,0,-135,-160,0, 0,0,0,0,0,-154,0,0,0,0, 0,0,0,-200,0,0,0,0,0,0, 0,0,0,0,-163,-297,0,0,0,0, 0,-156,0,0,0,0,0,0,-326,-201, 0,0,0,0,0,0,0,0,0,0, -225,0,0,0,0,0,0,-164,0,0, 0,0,0,0,0,-266,0,0,0,0, 0,0,0,0,0,0,-244,-145,0,0, 0,0,0,-167,0,0,0,0,0,0, -249,-271,0,0,0,0,0,0,0,0, 0,0,-252,-334,0,0,0,0,0,-168, 0,0,0,0,0,0,-335,-272,0,0, 0,0,0,0,0,0,0,0,-340,-353, -309,0,0,0,0,-169,0,0,0,0, 0,0,0,-303,0,0,0,0,0,0, 0,0,0,0,-273,0,0,0,0,0, 0,-170,0,0,0,0,0,0,-311,0, -324,0,0,0,0,0,0,0,0,0, -367,0,0,0,0,0,-171,0,0,0, 0,0,0,-322,0,-320,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-181,0,0,0,0,0,0,0,-323, 0,0,0,0,0,0,0,0,0,0, 0,-321,-147,0,0,0,0,-185,0,0, 0,0,0,0,0,-336,0,0,0,0, 0,0,0,0,0,0,-363,0,0,0, 0,0,0,-223,0,0,0,0,0,0, -349,0,-148,0,0,0,0,0,0,0, 0,0,-150,-152,0,0,0,0,-240,0, 0,0,0,0,0,-357,0,-155,0,0, 0,0,0,0,0,-344,0,0,-157,0, 0,0,0,-242,0,0,0,0,0,0, -364,0,-166,0,0,0,0,0,0,0, -177,0,0,-178,0,0,0,0,-243,0, 0,0,0,0,0,-370,0,-184,0,0, 0,0,0,0,0,-226,0,0,0,0, 0,0,0,-231,0,0,0,0,0,0, -83,0,0,-67,0,-263,0,0,0,0, 0,0,0,-211,0,-235,0,0,0,0, 0,0,0,0,-236,0,0,0,0,0, 0,-250,-362,-325,0,-251,-267,0,0,0, 0,0,0,0,0,-275,-139,0,0,-220, 0,-276,0,0,0,0,0,0,0,-371, 0,0,-277,0,0,0,0,-278,0,0, 0,0,0,-270,-279,0,0,0,-280,-281, -313,0,-282,-283,0,0,0,0,0,0, 0,0,-180,0,0,-284,-341,-60,0,0, 0,0,0,0,0,0,0,0,0,-23, -374,0,0,0,-22,-285,0,0,0,-286, -298,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-238,0,0, -300,0,-301,0,0,0,-287,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-306,0,0,0,0,0,0, -288,0,0,0,-269,0,0,0,0,0, -317,0,0,0,0,0,-289,-61,0,0, 0,0,0,0,0,-316,-290,0,0,0, 0,-291,-292,0,0,0,0,0,0,-115, -319,0,0,0,0,0,0,0,0,0, 0,-293,0,-134,-294,0,0,0,0,0, 0,0,0,-299,0,0,-337,0,0,0, 0,0,0,0,0,-186,-346,0,-247,-342, 0,0,0,-354,0,0,0,0,0,-350, -365,0,0,0,0,-355,-159,0,0,0, 0,0,0,-308,0,0,-373,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-76,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-161,0,0,0,0,0,0,0, 0,-165,0,0,0,0,0,0,0,0, 0,0,-218,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-254,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-264,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-46,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-356,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-187,0,0,0, 0,0,0,0,0,-68,0,0,0,0, 0,0,0,0,0,0,0,0,-219,0, 0,0,0,0,0,0,0,0,0,0, -248,0,0,0,0,0,-93,0,0,0, 0,0,0,-338,0,0,0,0,0,0, -104,0,0,0,0,0,0,0,-34,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-95,0,0,0,0,0,0,0, 0,0,0,-110,0,0,-82,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-94,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-332,-70,0,0,0,0,0, 0,0,0,0,0,0,0,-234,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-237,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-302,0,0,-48,0,0, 0,-304,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-318,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,-315,-230,0,0, 0,-328,0,0,0,0,0,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,0,0,0,0,0, 0,0,0,0,0,0,0,0,-330,0, 0,0,0,0,0,-331,0,0,0,0, 0,0,-202,0,0,0,0,0,0,0, 0,0,0,0,0,-368,0,0,0,0, 0,0,-372,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-375,0,0,0,0,0,0,-1, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-262,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-207,0,-14,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,-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,-19,0,0, 0,0,0,0,0,-21,0,0,0,0, 0,-26,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-140,0,0,-52,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-212, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,-213,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-214,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,-215,0,0, 0,0,0,0,0,0,0,-232,-174,0, 0,0,0,-216,0,0,0,0,0,0, 0,0,0,-53,0,0,0,0,0,0, 0,0,0,0,0,0,0,-6,0,0, -208,0,-20,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-96,0,0,0,0,0,-39,0, 0,-307,-57,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-97,0, 0,0,0,0,0,0,0,0,0,0, 0,0,-233,0,0,0,0,0,0,0, 0,-55,-98,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-99,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,-100,0,0,0,0,0, 0,-173,0,0,-327,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, -229,0,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,-268,-352,0,0,0,0,0, 0,-255,-204,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-305, 0,0,0,-17,0,0,0,-77,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,-18,-366, 0,0,0,0,0,0,0,0,0,0, 0,0,-69,0,0,0,0,0,0,0, 0,0,0,-88,0,0,-329,-162,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-179,0,0,0,0,0,0,0,-78, 0,0,0,0,0,-339,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-358,0,0,0,-118,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-158,0,0,0,-359,0,0,0,-369, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,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[] = { 121,2,122,49,49,18,18,53,53,26, 26,1,1,3,3,3,3,4,4,4, 5,6,6,6,6,6,6,6,6,88, 88,103,7,7,7,7,7,7,7,7, 7,7,7,8,8,9,9,9,9,14, 14,14,15,15,15,16,16,16,16,16, 17,17,17,19,19,20,20,21,21,22, 22,23,23,24,24,28,28,28,28,28, 28,28,28,28,28,28,28,38,31,25, 123,123,104,104,62,39,39,39,39,39, 39,39,40,40,40,30,30,105,105,77, 77,41,41,42,42,42,71,71,43,43, 43,43,43,44,44,44,44,44,60,60, 29,29,29,29,29,54,54,54,95,95, 90,90,90,90,91,91,91,92,92,92, 93,93,93,94,94,94,89,89,82,82, 83,55,57,57,57,57,57,72,74,74, 74,74,74,74,74,74,74,74,74,74, 81,78,78,124,125,84,84,79,79,79, 96,106,106,107,107,97,97,97,58,126, 126,108,98,98,98,80,80,127,109,109, 110,110,99,99,32,33,33,33,56,52, 52,45,45,45,45,34,34,35,46,46, 47,36,36,100,100,48,129,129,128,128, 59,59,59,59,59,59,59,59,59,111, 63,63,63,63,37,85,85,75,75,75, 76,76,65,65,130,130,64,64,86,86, 86,66,66,66,67,68,68,68,69,69, 69,69,73,73,50,50,51,132,131,131, 131,131,112,133,134,134,135,135,136,136, 121,121,137,137,113,113,113,113,138,138, 114,114,114,70,115,115,10,10,10,27, 27,11,11,139,139,116,116,116,117,117, 140,140,118,118,12,12,141,141,119,119, 119,119,13,61,142,142,143,143,120,120, 120,101,101,101,7,7,7,7,16,16, 24,4,40,144,102,102,102,87,87,29, 60,54,83,83,83,108,108,108,127,124, 125,37,96,135,135,145,146,112,77,329, 1714,247,17,21,18,898,1031,45,1055,371, 316,317,318,1074,1062,1134,1118,403,1155,1145, 1175,1169,1196,75,2102,961,1782,92,734,2014, 1751,136,214,115,1679,20,612,17,21,18, 898,43,44,1871,20,755,17,21,18,898, 43,45,1055,138,135,137,161,1074,1062,1134, 1118,1220,1155,1145,1175,1972,37,339,961,31, 1971,140,2293,167,730,1664,967,144,147,150, 153,314,285,2654,28,1230,364,129,232,499, 2636,2662,2688,2696,1072,1456,180,1865,823,87, 111,2702,349,1711,96,371,316,317,318,651, 712,1542,1263,1744,95,97,98,99,100,371, 316,317,318,1163,211,967,229,136,214,656, 225,233,1871,20,941,17,21,18,898,43, 40,136,214,255,214,1521,180,242,88,138, 135,137,161,347,1953,371,316,317,318,1830, 295,323,1678,143,135,137,161,140,419,167, 1054,25,169,144,147,150,153,136,214,2654, 1440,142,364,167,1386,499,2636,2662,2688,2696, 1072,256,214,800,128,754,617,2702,322,138, 135,137,161,2112,635,967,1871,20,426,17, 21,18,898,43,45,1055,1971,140,1974,167, 1074,1062,1825,144,147,150,153,1926,90,2654, 343,1288,364,851,232,499,2636,2662,2688,2696, 1072,319,316,317,318,1952,1676,2702,1703,20, 1784,17,21,18,898,1031,45,1055,3068,256, 214,1013,1074,1062,1134,1118,1061,1155,1145,1175, 1169,1196,75,443,1610,20,282,17,21,18, 898,43,36,927,961,31,1586,20,1784,17, 21,18,898,1031,45,1055,28,1230,283,1230, 1074,1062,1134,1118,284,1155,1145,1175,1169,1196, 75,364,1610,20,282,17,21,18,898,43, 36,288,2113,247,1643,20,1592,17,21,18, 898,1031,45,1055,500,3114,283,1230,1074,1062, 1134,1118,228,1155,1145,1175,1169,1196,75,1542, 1871,20,282,17,21,18,898,43,39,290, 289,248,1871,20,499,17,21,18,898,43, 45,1055,28,1230,283,1230,1074,1062,1829,1551, 2014,255,214,1337,499,1727,20,24,17,21, 18,898,1031,45,1055,961,188,159,291,1074, 1062,1134,1118,1500,1155,1145,1175,1169,1196,75, 181,1871,20,282,17,21,18,898,43,45, 1055,335,396,1751,20,1796,17,21,18,898, 1031,45,1055,181,549,283,1230,1074,1062,1134, 1118,1082,1155,1145,1175,1169,1196,75,755,1871, 20,282,17,21,18,898,43,38,387,226, 993,435,20,739,17,21,18,898,1031,45, 1055,961,187,283,1230,1074,1062,1134,1118,311, 1155,1145,1175,1169,1196,75,2014,1871,20,488, 17,21,18,898,43,37,292,1967,20,313, 17,21,18,898,1031,45,1055,49,2036,1138, 240,1074,1062,1134,1118,1089,1155,1145,1175,1169, 1196,75,336,1289,977,332,1919,20,2217,17, 21,18,898,1031,45,1055,734,115,1843,205, 1074,1062,1134,1118,960,1155,1145,1175,1169,1196, 75,363,1871,20,1148,17,21,18,898,43, 45,1055,961,189,324,1678,1074,1062,1134,1118, 1500,1155,1145,1175,1169,1196,94,1871,20,1149, 17,21,18,898,1031,45,1055,1522,334,105, 635,1074,1062,1134,1118,1614,1155,1145,1175,1169, 1196,75,418,533,20,92,17,21,18,898, 1031,45,1055,594,1775,330,125,1074,1062,1134, 1118,1339,1155,1145,1175,1169,1196,75,2131,1775, 20,1535,17,21,18,898,367,1914,941,1967, 20,426,17,21,18,898,1031,45,1055,961, 1367,1082,241,1074,1062,1134,1118,346,1155,1145, 1175,1169,1196,75,413,1779,2879,332,1971,342, 2452,419,36,1996,319,316,317,318,28,1230, 985,1711,1521,180,868,49,279,2017,920,337, 967,2279,371,316,317,318,1766,128,673,225, 773,1799,20,823,17,21,18,898,356,219, 457,222,701,88,136,214,621,1871,20,116, 17,21,18,898,43,36,1871,20,416,17, 21,18,898,43,45,1055,139,135,137,161, 1074,1062,1134,1118,798,1897,156,663,537,916, 535,535,22,451,141,325,167,331,823,1419, 145,148,151,154,774,1478,2654,1871,20,365, 17,21,18,898,1031,45,1055,1061,2092,355, 1082,1074,1062,1134,1118,1116,1155,1145,1175,1169, 1196,75,49,897,2083,86,1871,20,361,17, 21,18,898,1031,45,1055,1037,244,308,370, 1074,1062,1134,1118,261,1155,1145,1175,1169,1196, 75,635,1871,20,85,17,21,18,898,1031, 45,1055,419,419,1888,2024,1074,1062,1134,1118, 1524,1155,1145,1175,1169,1196,75,124,1871,20, 84,17,21,18,898,1031,45,1055,128,196, 2149,2035,1074,1062,1134,1118,1082,1155,1145,1175, 1169,1196,75,635,1871,20,83,17,21,18, 898,1031,45,1055,636,804,1960,2152,1074,1062, 1134,1118,1992,1155,1145,1175,1169,1196,75,112, 1871,20,82,17,21,18,898,1031,45,1055, 28,1230,601,635,1074,1062,1134,1118,1082,1155, 1145,1175,1169,1196,75,1547,1871,20,81,17, 21,18,898,1031,45,1055,19,28,1230,127, 1074,1062,1134,1118,276,1155,1145,1175,1169,1196, 75,277,1871,20,80,17,21,18,898,1031, 45,1055,28,1230,961,297,1074,1062,1134,1118, 1251,1155,1145,1175,1169,1196,75,635,1871,20, 79,17,21,18,898,1031,45,1055,49,49, 419,2251,1074,1062,1134,1118,2050,1155,1145,1175, 1169,1196,75,123,1871,20,78,17,21,18, 898,1031,45,1055,1669,1782,635,501,1074,1062, 1134,1118,1112,1155,1145,1175,1169,1196,75,635, 1871,20,77,17,21,18,898,1031,45,1055, 339,49,2975,638,1074,1062,1134,1118,1082,1155, 1145,1175,1169,1196,75,3025,1871,20,76,17, 21,18,898,1031,45,1055,231,49,1271,2882, 1074,1062,1134,1118,1082,1155,1145,1175,1169,1196, 75,1300,1871,20,93,17,21,18,898,1031, 45,1055,712,1878,2014,1831,1074,1062,1134,1118, 1082,1155,1145,1175,1169,1196,75,1364,1871,20, 1576,17,21,18,898,1031,45,1055,1018,2014, 635,1300,1074,1062,1134,1118,1082,1155,1145,1175, 1169,1196,75,195,1871,20,1612,17,21,18, 898,43,45,1055,1250,823,3090,182,1074,1062, 1134,1118,1082,1155,1145,1175,1169,1196,94,1871, 20,1682,17,21,18,898,43,45,1055,876, 424,635,206,1074,1062,1134,1118,1082,1155,1145, 1175,1169,1196,94,1871,20,823,17,21,18, 898,1031,45,1055,243,1277,363,118,1074,1062, 1134,1118,1082,1155,1145,1175,1169,1196,75,1509, 1871,20,360,17,21,18,898,1031,45,1055, 23,213,823,1415,1074,1062,1134,1118,1082,1155, 1145,1175,1169,1196,75,245,1871,20,74,17, 21,18,898,43,45,1055,352,961,299,1686, 1074,1062,1134,1118,2091,1155,1145,1175,1169,1196, 94,1871,20,1543,17,21,18,898,43,45, 1055,246,235,677,1058,1074,1062,1134,1118,1082, 1155,1145,1175,1169,1196,94,1871,20,1646,17, 21,18,898,43,45,1055,2014,321,203,1673, 1074,1062,1134,1118,1082,1155,1145,1175,1169,1196, 94,1871,20,848,17,21,18,898,43,45, 1055,1128,341,1783,789,1074,1062,1134,1118,1082, 1155,1145,1175,1169,1196,94,1871,20,1243,17, 21,18,898,43,45,1055,67,340,204,562, 1074,1062,1134,1118,569,1155,1145,1175,1169,1196, 94,199,1664,389,1871,20,1082,17,21,18, 898,43,35,1810,1871,20,1504,17,21,18, 898,43,45,1055,274,1078,87,111,1074,1830, 1222,96,1639,1172,2070,2010,1396,951,1861,1263, 109,95,97,98,99,100,1030,1,1664,389, 1871,20,1192,17,21,18,898,43,45,1055, 823,110,370,1827,1074,1062,1134,1118,1875,1155, 1947,388,87,111,1082,960,1222,96,107,1122, 168,1542,296,299,1527,1263,109,95,97,98, 99,100,353,264,1664,389,1668,2095,1823,20, 315,17,21,18,898,354,1797,110,370,298, 685,823,2883,255,214,1240,2090,388,87,111, 2097,1082,1222,96,108,319,316,317,318,256, 214,1263,109,95,97,98,99,100,413,2482, 3060,1082,2922,1082,673,225,230,1568,319,316, 317,318,812,110,370,219,457,222,224,2529, 386,2536,831,388,2096,2279,1847,1997,414,294, 107,2101,673,225,773,133,1664,389,2834,775, 384,1082,326,219,457,222,224,1923,1847,20, 621,17,21,18,898,41,1634,2054,1925,280, 87,111,2109,2124,1222,96,319,316,317,318, 784,1082,535,1263,109,95,97,98,99,100, 156,663,2111,2922,1393,1385,535,451,106,1302, 673,225,230,992,1710,110,370,2135,774,1061, 312,220,457,222,224,388,413,1758,2883,940, 1082,535,108,2092,1082,275,319,316,317,318, 2154,1082,270,1282,1275,273,662,778,281,535, 309,370,1561,2279,1670,3392,2883,1082,198,2563, 673,225,230,3392,319,316,317,318,3392,260, 3392,219,457,222,224,2583,198,3392,621,1438, 1703,2264,3392,413,3392,2883,3392,1223,673,225, 230,3392,3392,319,316,317,318,3392,3392,219, 457,222,224,3392,3392,1223,1987,3392,156,663, 2279,3392,3392,1477,1782,451,3392,673,225,230, 3392,3392,2010,3392,3032,3392,194,3392,219,457, 222,224,1644,1871,20,621,17,21,18,898, 43,45,1055,3392,193,3392,3392,1074,1062,1134, 1921,3392,3146,770,1999,3392,673,225,230,1436, 3392,2477,199,3392,3392,157,663,219,457,222, 224,3392,3392,1996,264,535,3392,278,3392,3392, 1497,275,3392,319,316,317,318,3392,268,1282, 1275,273,3392,673,225,230,3392,3392,3392,3392, 2922,3392,2092,1336,219,457,222,224,265,3392, 812,831,210,320,316,317,318,3392,275,2055, 3392,2883,1471,1786,3392,268,1282,1275,273,319, 316,317,318,3392,3392,3392,2618,3392,260,3392, 3392,3392,3392,3392,3392,1756,2264,1542,1931,1703, 3392,3392,262,673,225,230,1895,20,3392,17, 21,18,898,34,219,457,222,224,3392,1871, 20,1987,17,21,18,898,43,45,1055,255, 214,1477,1782,1074,1062,1134,1118,2080,1155,1145, 1937,3392,3392,3392,1670,3392,2883,319,316,317, 318,398,3392,2972,320,316,317,318,3392,413, 3392,2883,3392,3392,2922,3392,3392,3146,3392,320, 316,317,318,657,1405,535,3392,200,673,225, 230,3392,549,3392,49,3392,967,758,3392,219, 457,222,224,673,225,230,1987,319,316,317, 318,3392,2092,3392,219,457,222,224,1472,88, 275,3140,3392,3392,2922,1093,758,268,1282,1275, 273,673,225,1315,992,3392,319,316,317,318, 210,3392,220,457,222,1251,3392,267,260,3392, 1511,1786,3164,2922,758,1459,3392,389,1438,1703, 673,225,230,992,319,316,317,318,844,1664, 967,220,457,222,224,3392,3392,3392,3392,3392, 88,2922,3392,3392,198,1170,1308,3392,673,225, 1315,992,3392,87,111,892,1664,967,96,220, 457,222,224,3392,3392,3392,1263,104,95,97, 98,99,100,2271,3392,1006,1664,967,1384,1256, 87,111,1054,1664,967,96,3392,3392,320,316, 317,318,3392,1263,102,95,97,98,99,100, 87,111,657,3392,535,96,3392,87,111,3392, 3392,3392,96,1263,362,95,97,98,99,100, 1263,103,95,97,98,99,100,2060,49,535, 967,2092,1168,1664,967,3392,3392,319,316,317, 318,1871,20,3392,17,21,18,898,43,45, 1055,3392,3392,88,2922,1802,2092,87,111,1871, 3392,3392,96,3392,812,3392,3392,260,3392,3392, 1263,120,95,97,98,99,100,2000,1703,1216, 1664,967,3392,3392,3392,3392,1264,1664,967,3392, 1946,3392,260,1871,20,3392,17,21,18,898, 43,48,1931,1703,87,111,1312,1664,967,96, 3392,87,111,1360,1664,967,96,1263,115,95, 97,98,99,100,1263,2016,95,97,98,99, 100,87,111,1408,1664,967,96,3392,87,111, 590,3392,485,96,1263,114,95,97,98,99, 100,1263,122,95,97,98,99,100,87,111, 3392,3392,3392,96,3392,3392,306,3392,369,558, 3392,1263,121,95,97,98,99,100,319,316, 317,318,3392,3392,1871,20,1113,17,21,18, 898,43,45,1813,3392,2922,371,316,317,318, 305,370,3392,3392,656,992,3392,3392,3392,3392, 310,3392,1466,3392,319,316,317,318,136,214, 3392,3392,371,316,317,318,3392,275,3392,3392, 3392,2173,3392,3392,270,1282,1275,273,1531,3392, 146,135,137,161,136,214,1991,3392,371,316, 317,318,2001,302,304,3392,371,316,317,318, 3392,407,371,316,317,318,149,135,137,161, 136,214,3392,419,3392,967,1079,2848,136,214, 3392,3392,3392,3392,136,214,320,316,317,318, 3392,3392,152,135,137,161,3392,3392,88,126, 155,135,137,161,1303,3392,366,135,137,161, 1871,20,3392,17,21,18,898,43,45,1055, 3392,3392,3392,3392,1074,1833,1871,20,724,17, 21,18,898,43,45,1055,3392,3392,3392,3392, 1074,1834,1871,20,3392,17,21,18,898,43, 45,1055,3392,3392,3392,3392,1074,1846,1871,20, 3392,17,21,18,898,43,45,1055,49,1432, 967,2143,1074,1866,1871,20,3392,17,21,18, 898,43,45,1055,758,3392,3392,278,1074,1870, 3392,3392,3392,88,319,316,317,318,665,1891, 485,1871,20,917,17,21,18,898,43,45, 1818,2922,3392,319,316,317,318,3392,656,225, 234,992,3392,1459,306,389,3392,558,275,1240, 2726,3392,1102,1240,535,268,1282,1275,273,319, 316,317,318,319,316,317,318,3392,88,1459, 3392,389,198,1170,1308,1756,2922,3392,305,370, 2922,198,3392,49,3392,967,812,3392,310,3392, 812,3392,1533,1459,88,389,3392,3392,198,1170, 1308,2271,320,316,317,318,3392,1464,88,1459, 1223,389,2307,3392,1893,3392,2336,3392,88,952, 3392,3392,198,1170,1308,3392,3392,2271,3392,3392, 3392,303,304,1490,88,1459,3392,389,198,1170, 1308,3392,1240,3392,3392,920,3392,967,3392,193, 913,2271,319,316,317,318,3392,1516,1484,1999, 88,1316,3392,389,198,1170,1308,2271,3392,2922, 88,3392,3392,1542,3392,3392,116,1871,20,812, 17,21,18,898,43,47,88,3392,3392,3392, 1061,3392,116,2271,1459,920,389,967,3392,1567, 3392,3392,1240,1871,20,2618,17,21,18,898, 43,46,319,316,317,318,1510,3392,3392,88, 88,1078,370,198,1170,1308,116,3392,3392,2922, 1240,3392,1406,3392,423,3392,3392,3392,2040,812, 319,316,317,318,319,316,317,318,320,316, 317,318,2271,3392,3392,3392,3392,2922,1961,524, 920,2428,967,3392,3392,1946,2011,812,3392,319, 316,317,318,1895,20,3392,17,21,18,898, 33,3392,3392,3392,2074,88,2428,49,2080,967, 3392,116,3392,2364,319,316,317,318,319,316, 317,318,1943,20,3392,17,21,18,898,1787, 2069,3182,88,3392,3392,2922,2110,3392,2004,3392, 319,316,317,318,3392,1483,319,316,317,318, 785,2027,3392,3392,2126,3392,3392,3168,2085,3392, 3392,3392,3392,3186,319,316,317,318,320,316, 317,318,2100,3392,3392,861,2138,3392,3392,3392, 2143,3190,320,316,317,318,320,316,317,318, 320,316,317,318,3392,3392,3392,3392,3392,3392, 3392,3392,3392,3392,3392,3392,3392,3392,3392,3392, 3392,3392,3392,3392,3392,3392,3392,3392,3392,3392, 3392,3392,3392,3392,3392,3392,3392,3392,3392,1689, 3392,0,1,456,0,1,500,0,1,583, 0,1,623,0,500,130,0,583,130,0, 623,130,0,500,131,0,583,131,0,623, 131,0,500,132,0,583,132,0,623,132, 0,623,186,0,583,186,0,500,186,0, 186,190,0,623,185,0,583,185,0,500, 185,0,185,190,0,500,133,0,583,133, 0,623,133,0,500,134,0,583,134,0, 623,134,0,11,227,0,500,369,0,583, 369,0,623,369,0,224,236,0,3400,1, 0,623,381,0,583,381,0,500,381,0, 593,32,0,2304,32,0,623,254,0,583, 254,0,500,254,0,1,3630,0,224,237, 0,180,20,0,8,10,0,1984,119,0, 1,3619,0,367,356,0,368,357,0,113, 2556,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,0,0,37,38,39, 40,41,42,43,44,45,46,47,0,49, 50,51,52,53,54,55,56,57,58,59, 60,25,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,66,67,37,38,39,40,41,42,43, 44,45,46,47,0,49,50,51,52,53, 54,55,56,57,58,59,60,13,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,0,0,37, 38,39,40,41,42,43,44,45,46,47, 0,49,50,51,52,53,54,55,56,57, 58,59,60,13,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,66,67,37,38,39,40,41, 42,43,44,45,46,47,0,49,50,51, 52,53,54,55,56,57,58,59,60,13, 62,63,64,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,0,0, 37,38,39,40,41,42,43,44,45,46, 47,0,49,50,51,52,53,54,55,56, 57,58,59,60,0,62,63,64,0,1, 2,0,4,5,6,7,8,9,0,11, 12,13,14,15,16,17,18,19,20,21, 22,23,24,25,0,27,28,29,30,31, 32,33,0,0,66,67,3,4,0,1, 7,8,4,35,6,7,8,49,50,51, 52,53,54,55,56,57,58,59,60,26, 62,63,64,0,1,0,3,0,1,6, 3,6,0,35,11,12,82,14,15,16, 48,48,0,1,2,0,4,0,0,7, 8,3,0,6,2,0,4,5,35,7, 8,68,35,36,0,1,2,3,84,5, 6,48,0,9,26,11,12,13,14,15, 16,17,18,19,20,21,22,23,65,66, 67,68,28,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,68,3,80,81,6,0,0, 98,2,11,12,5,14,15,16,10,10, 68,77,0,88,89,90,91,92,93,94, 95,96,97,0,0,2,35,4,5,0, 7,8,0,1,2,3,0,5,6,48, 4,9,0,11,12,13,14,15,16,17, 18,19,20,21,22,23,65,66,67,68, 28,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,4,5,6,7,8,9,0, 0,1,2,3,4,37,6,7,8,77, 10,0,1,24,25,26,27,28,29,30, 31,32,33,34,24,25,26,27,28,29, 30,31,32,33,0,35,36,3,49,50, 51,52,53,54,55,56,57,58,59,60, 0,62,63,64,4,0,0,7,8,4, 26,0,7,8,0,1,2,3,4,5, 6,7,8,9,24,25,0,27,28,29, 30,31,32,33,0,1,2,98,24,25, 26,27,28,29,30,31,32,33,34,49, 50,51,52,53,54,55,56,57,58,59, 60,0,1,49,50,51,52,53,54,55, 56,57,58,59,60,69,62,63,64,0, 1,2,3,0,5,6,3,61,9,10, 11,12,13,14,15,16,17,18,19,20, 21,22,23,0,0,26,2,0,1,2, 99,4,98,34,7,8,37,38,39,40, 41,42,43,44,45,46,47,0,24,2, 3,4,5,0,7,8,9,4,0,1, 2,3,4,10,6,7,8,0,65,0, 1,24,25,0,27,28,29,30,31,32, 33,34,24,25,26,27,28,29,30,31, 32,33,0,35,36,3,49,50,51,52, 53,54,55,56,57,58,59,60,35,62, 63,64,65,0,1,2,3,0,5,6, 0,1,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,0,0,26, 73,74,75,76,0,78,79,34,11,12, 37,38,39,40,41,42,43,44,45,46, 47,0,1,2,3,48,5,6,0,77, 9,10,11,12,13,14,15,16,17,18, 19,20,21,22,23,0,0,26,2,0, 4,5,3,7,8,34,0,1,37,38, 39,40,41,42,43,44,45,46,47,0, 0,2,3,4,5,26,7,8,9,0, 0,1,2,3,4,36,6,7,8,0, 0,35,2,24,25,5,27,28,29,30, 31,32,33,34,24,25,26,27,28,29, 30,31,32,33,69,35,36,0,49,50, 51,52,53,54,55,56,57,58,59,60, 0,62,63,64,65,0,1,2,3,0, 5,6,0,1,9,10,11,12,13,14, 15,16,17,18,19,20,21,22,23,0, 0,26,73,74,75,76,0,78,79,34, 11,12,37,38,39,40,41,42,43,44, 45,46,47,0,1,2,3,0,5,6, 0,1,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,0,0,26, 2,0,4,5,3,7,8,34,0,1, 37,38,39,40,41,42,43,44,45,46, 47,0,0,2,3,4,5,0,7,8, 9,0,0,2,3,0,4,36,61,7, 8,0,86,87,13,24,25,0,27,28, 29,30,31,32,33,34,24,25,61,27, 28,29,30,31,32,33,69,36,0,1, 49,50,51,52,53,54,55,56,57,58, 59,60,0,62,63,64,65,0,1,2, 3,0,5,6,3,48,9,10,11,12, 13,14,15,16,17,18,19,20,21,22, 23,0,0,26,73,74,75,76,83,78, 79,34,11,12,37,38,39,40,41,42, 43,44,45,46,47,0,1,2,3,0, 5,6,3,61,9,10,11,12,13,14, 15,16,17,18,19,20,21,22,23,0, 69,26,0,4,2,26,7,8,77,34, 0,1,37,38,39,40,41,42,43,44, 45,46,47,0,1,2,3,48,5,6, 0,1,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,0,0,26, 2,4,0,5,7,8,0,34,10,0, 37,38,39,40,41,42,43,44,45,46, 47,0,1,2,3,0,5,6,3,4, 9,10,11,12,13,14,15,16,17,18, 19,20,21,22,23,0,0,26,0,4, 2,26,7,8,6,34,10,48,37,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,0,0,26,2,4,0,26, 7,8,0,34,2,0,37,38,39,40, 41,42,43,44,45,46,47,0,1,2, 3,48,5,6,0,1,9,10,11,12, 13,14,15,16,17,18,19,20,21,22, 23,0,1,26,3,0,1,2,3,0, 1,34,3,48,37,38,39,40,41,42, 43,44,45,46,47,0,1,2,0,4, 5,69,7,8,9,0,35,36,10,4, 35,36,7,8,0,36,0,0,2,24, 25,5,27,28,29,30,31,32,33,24, 25,14,27,28,29,30,31,32,33,0, 0,2,3,0,49,50,51,52,53,54, 55,56,57,58,59,60,0,62,63,64, 0,0,2,0,4,5,0,7,8,9, 0,10,0,10,4,36,4,7,8,7, 8,0,0,1,24,25,0,27,28,29, 30,31,32,33,24,25,10,27,28,29, 30,31,32,33,61,24,25,0,27,49, 50,51,52,53,54,55,56,57,58,59, 60,14,62,63,64,0,1,2,3,0, 5,6,66,67,9,10,11,12,13,14, 15,16,17,18,19,20,21,22,23,0, 1,2,3,0,5,6,3,0,9,0, 11,12,13,14,15,16,17,18,19,20, 21,22,23,0,1,2,0,4,0,6, 7,8,0,1,2,0,1,5,6,36, 65,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,0,35,0, 1,2,0,4,61,0,7,8,0,1, 2,0,10,5,6,10,77,9,10,11, 12,13,14,15,16,17,18,19,20,21, 22,23,0,1,2,0,68,5,6,0, 1,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,1,2,48, 61,5,6,66,67,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, 0,1,2,0,0,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,0,9,6,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,1, 2,0,0,5,6,24,25,9,27,11, 12,13,14,15,16,17,18,19,20,21, 22,23,0,1,2,68,0,5,6,0, 0,9,6,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,1,2,71, 72,5,6,24,25,9,27,11,12,13, 14,15,16,17,18,19,20,21,22,23, 0,1,2,0,0,5,6,0,0,9, 6,11,12,13,14,15,16,17,18,19, 20,21,22,23,0,1,2,71,72,5, 6,24,25,9,27,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,1, 2,0,0,5,6,0,0,9,0,11, 12,13,14,15,16,17,18,19,20,21, 22,23,0,1,2,71,72,5,6,24, 25,9,27,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,1,2,0, 0,5,6,3,0,9,0,11,12,13, 14,15,16,17,18,19,20,21,22,23, 0,0,1,0,4,0,0,7,8,4, 0,6,7,8,4,83,36,7,8,0, 1,2,3,0,24,25,3,27,28,29, 30,31,32,33,24,25,35,27,28,29, 30,31,32,33,0,0,1,3,4,0, 0,7,8,4,35,36,7,8,0,0, 15,16,3,0,0,1,2,48,4,0, 26,7,8,4,69,6,7,8,0,0, 35,2,4,0,5,7,8,4,65,0, 7,8,48,4,0,36,7,8,4,0, 0,7,8,3,0,0,0,48,3,0, 0,0,68,4,35,70,7,8,0,0, 0,0,0,4,3,61,7,8,24,25, 85,27,10,0,0,0,36,3,69,4, 0,36,7,8,0,82,35,0,48,70, 10,4,0,48,7,8,4,36,0,7, 8,0,0,0,2,66,67,5,10,0, 0,10,66,67,0,0,0,0,0,61, 10,70,0,0,10,0,0,0,0,0, 80,81,0,0,61,0,0,0,0,65, 0,0,0,0,84,61,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,61,0,0,0,0,0, 61,0,0,0,0,0,61,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,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, 3392,1,5946,1736,3242,5940,1,1,1,1, 926,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,3401,1,1,1, 1,1,1,1,3493,55,345,1458,980,942, 1211,1663,464,1360,1039,1653,2723,1613,1,1, 1,1,1,1,1,1,1,1,1,1, 1,3736,1,1,1,3399,8,3374,3374,3374, 3374,3374,3374,3374,3374,3374,3374,3374,3374,3374, 3374,3374,3374,3374,3374,3374,3374,3374,3374,3374, 3374,3374,3374,3374,3374,3374,3374,3374,3374,3374, 3374,801,2491,3374,3374,3374,3374,3374,3374,3374, 3374,3374,3374,3374,350,3374,3374,3374,3374,3374, 3374,3374,3374,3374,3374,3374,3374,905,3374,3374, 3374,3374,3392,1,5946,1736,3242,5940,1,1, 1,1,926,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,3401,1, 1,1,1,1,1,1,3493,359,287,1458, 980,942,1211,1663,464,1360,1039,1653,2723,1613, 3392,1,1,1,1,1,1,1,1,1, 1,1,1,1041,1,1,1,3399,3392,1, 5946,3402,3242,5940,1,1,1,1,926,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,3401,1,1,1,1,1, 1,1,3493,801,2491,1458,980,942,1211,1663, 464,1360,1039,1653,2723,1613,3392,1,1,1, 1,1,1,1,1,1,1,1,1,905, 1,1,1,3392,1,5946,3402,3242,5940,1, 1,1,1,926,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,3401, 1,1,1,1,1,1,1,3493,358,3392, 1458,980,942,1211,1663,464,1360,1039,1653,2723, 1613,3392,1,1,1,1,1,1,1,1, 1,1,1,1,67,1,1,1,3392,2939, 3403,3392,623,3404,1107,500,583,3132,221,877, 839,3408,1754,3103,2226,1938,3405,3406,3407,740, 522,1848,3607,3609,71,3608,3556,3557,3555,3610, 3558,3554,348,236,801,2491,224,3335,269,2819, 3335,3335,623,851,254,500,583,3561,3566,3565, 3563,3564,3562,3567,3568,3560,3569,3570,3571,224, 2853,3089,3064,1,3404,3392,3404,1,2819,3404, 266,2257,3392,851,3404,3404,1116,3404,3404,3404, 391,224,1,1860,3619,63,3251,3392,1,3245, 3248,3402,186,3118,3290,43,3281,3290,3404,3287, 3284,224,851,266,1,2939,3403,3396,2239,3404, 664,3404,158,1091,3401,877,839,3408,1754,3103, 2226,1938,3405,3406,3407,740,522,1848,3404,3404, 3404,3404,916,3404,3404,3404,3404,3404,3404,3404, 3392,3404,3404,3404,3404,3404,3404,3404,3404,3404, 3404,3404,3404,3404,3404,3404,3404,3404,3404,3404, 3404,1,3403,1420,3403,752,596,3403,3392,3392, 3241,3403,3403,3403,3404,3403,3403,3403,418,1075, 714,3395,3392,1394,1368,1342,1316,1290,1238,1264, 1212,1186,1157,185,3392,3302,3403,3293,3302,3392, 3299,3296,3392,2939,3403,3396,1,3404,702,3403, 3242,1091,3392,877,839,3408,1754,3103,2226,1938, 3405,3406,3407,740,522,1848,3403,3403,3403,3403, 1498,3403,3403,3403,3403,3403,3403,3403,119,3403, 3403,3403,3403,3403,3403,3403,3403,3403,3403,3403, 3403,3403,3403,3403,3403,3403,3403,3403,3403,3392, 1,1,3402,3242,1,1,1,1,1,3392, 357,368,368,3386,368,3377,3386,368,368,3395, 5905,3392,927,1,1,3401,1,1,1,1, 1,1,1,3699,368,368,3386,368,368,368, 368,368,368,368,3392,368,3386,3402,1,1, 1,1,1,1,1,1,1,1,1,1, 130,1,1,1,3260,183,1,3254,3257,623, 3401,113,500,583,3392,1,1,3402,3242,1, 1,1,1,1,3607,3609,3392,3608,3556,3557, 3555,3610,3558,3554,1,1860,3619,301,1,1, 3401,1,1,1,1,1,1,1,3699,3561, 3566,3565,3563,3564,3562,3567,3568,3560,3569,3570, 3571,3392,570,1,1,1,1,1,1,1, 1,1,1,1,1,3651,1,1,1,3392, 1,5946,3402,1,5940,1,3338,2378,1,926, 1,1,1,1,1,1,1,1,1,1, 1,1,1,3392,327,3401,3720,254,1860,3619, 3389,623,300,3493,500,583,1458,980,942,1211, 1663,464,1360,1039,1653,2723,1613,3392,3721,1, 192,1,1,1,1,1,1,3242,20,3371, 180,3371,180,926,3371,180,180,60,3399,3392, 793,1,1,272,1,1,1,1,1,1, 1,3589,180,180,3371,180,180,180,180,180, 180,180,3392,3371,3371,3396,1,1,1,1, 1,1,1,1,1,1,1,1,851,1, 1,1,192,3392,1,5946,3402,257,5940,1, 3392,800,1,926,1,1,1,1,1,1, 1,1,1,1,1,1,1,52,3392,3401, 2824,2808,2792,2776,3392,2760,1764,3493,2851,2634, 1458,980,942,1211,1663,464,1360,1039,1653,2723, 1613,3392,1,5946,3402,1139,5940,1,3392,3395, 1,926,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,207,3401,5941,1, 623,5941,117,500,583,3493,223,606,1458,980, 942,1211,1663,464,1360,1039,1653,2723,1613,3392, 3392,1,191,1,1,117,1,1,1,3392, 356,367,367,3383,367,117,3383,367,367,62, 3392,851,3403,1,1,3404,1,1,1,1, 1,1,1,3589,367,367,3383,367,367,367, 367,367,367,367,3650,367,3383,3392,1,1, 1,1,1,1,1,1,1,1,1,1, 3392,1,1,1,191,3392,1,5946,3402,3392, 5940,1,11,3323,1,926,1,1,1,1, 1,1,1,1,1,1,1,1,1,54, 3392,3401,2824,2808,2792,2776,73,2760,1764,3493, 2851,2634,1458,980,942,1211,1663,464,1360,1039, 1653,2723,1613,3392,1,5946,3402,3392,5940,1, 3392,460,1,926,1,1,1,1,1,1, 1,1,1,1,1,1,1,3392,378,3401, 5945,3392,623,5945,3398,500,583,3493,351,1011, 1458,980,942,1211,1663,464,1360,1039,1653,2723, 1613,3392,3392,1,192,1,1,3392,1,1, 1,3392,131,1719,3398,69,3269,3397,2405,3263, 3266,61,433,513,1694,1,1,89,1,1, 1,1,1,1,1,3589,3607,3609,2432,3608, 3556,3557,3555,3610,3558,3554,1524,3397,338,1412, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,192,3392,1,5946, 3402,3392,5940,1,3396,1446,1,926,1,1, 1,1,1,1,1,1,1,1,1,1, 1,53,3392,3401,2824,2808,2792,2776,1800,2760, 1764,3493,2851,2634,1458,980,942,1211,1663,464, 1360,1039,1653,2723,1613,3392,1,5946,3402,3392, 5940,1,3402,2,1,926,1,1,1,1, 1,1,1,1,1,1,1,1,1,254, 1726,3401,3392,623,1824,3401,500,583,3395,3493, 3392,2991,1458,980,942,1211,1663,464,1360,1039, 1653,2723,1613,3392,1,5946,3402,2053,5940,1, 3392,2478,1,926,1,1,1,1,1,1, 1,1,1,1,1,1,1,160,3392,3401, 3403,623,3392,3404,500,583,3392,3493,1182,30, 1458,980,942,1211,1663,464,1360,1039,1653,2723, 1613,3392,1,5946,3402,1,5940,1,117,3242, 1,926,1,1,1,1,1,1,1,1, 1,1,1,1,1,379,230,3401,3392,623, 1618,117,500,583,1728,3493,233,3421,1458,980, 942,1211,1663,464,1360,1039,1653,2723,1613,3392, 1,5946,3402,3392,5940,1,3402,3392,1,926, 1,1,1,1,1,1,1,1,1,1, 1,1,1,382,3392,3401,3631,623,3392,3401, 500,583,1,3493,3365,208,1458,980,942,1211, 1663,464,1360,1039,1653,2723,1613,3392,1,5946, 3402,2189,5940,1,3392,2818,1,926,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,2819,3401,3398,1,2129,3380,3398,3392, 435,3493,3398,5933,1458,980,942,1211,1663,464, 1360,1039,1653,2723,1613,1,1860,651,1,3251, 3404,3651,3245,3248,1019,132,851,3397,926,3278, 851,3397,3272,3275,3392,3397,209,65,3403,3607, 3609,3404,3608,3556,3557,3555,3610,3558,3554,3607, 3609,2103,3608,3556,3557,3555,3610,3558,3554,3392, 3392,969,3398,3392,3561,3566,3565,3563,3564,3562, 3567,3568,3560,3569,3570,3571,3392,2853,3089,3064, 3392,3392,3403,3392,623,3404,59,500,583,1019, 133,1379,381,1431,3311,3397,3341,3305,3308,3347, 3344,3392,3392,2913,3607,3609,230,3608,3556,3557, 3555,3610,3558,3554,3607,3609,234,3608,3556,3557, 3555,3610,3558,3554,2425,3607,3609,66,3608,3561, 3566,3565,3563,3564,3562,3567,3568,3560,3569,3570, 3571,2103,2853,3089,3064,1,2939,4272,29,3392, 4174,1107,801,2491,1091,5905,877,839,3408,1754, 3103,2226,1938,3405,3406,3407,740,522,1848,3392, 2939,3403,3396,3392,3404,1107,3398,3392,1091,3392, 877,839,3408,1754,3103,2226,1938,3405,3406,3407, 740,522,1848,269,2129,3619,3392,623,212,254, 500,583,3392,2939,3403,325,887,3404,1107,3397, 29,1091,5905,877,839,3408,1754,3103,2226,1938, 3405,3406,3407,740,522,1848,3392,58,851,1, 1860,3619,3392,3251,423,368,3245,3248,3392,2939, 3403,30,1457,3404,1107,5905,3395,1091,5905,877, 839,3408,1754,3103,2226,1938,3405,3406,3407,740, 522,1848,1,2939,4272,3392,1549,4174,1107,3392, 3117,1091,5905,877,839,3408,1754,3103,2226,1938, 3405,3406,3407,740,522,1848,383,2939,3403,676, 1626,3404,1107,801,2491,1091,5905,877,839,3408, 1754,3103,2226,1938,3405,3406,3407,740,522,1848, 3392,2939,3403,3392,3392,3404,1107,3392,3392,1091, 5905,877,839,3408,1754,3103,2226,1938,3405,3406, 3407,740,522,1848,3392,2365,3403,3392,49,3404, 1107,250,3392,1091,3033,877,839,3408,1754,3103, 2226,1938,3405,3406,3407,740,522,1848,3392,2873, 3403,3392,3392,3404,1107,1,1,1091,1,877, 839,3408,1754,3103,2226,1938,3405,3406,3407,740, 522,1848,3392,2899,3403,813,51,3404,1107,249, 3392,1091,3033,877,839,3408,1754,3103,2226,1938, 3405,3406,3407,740,522,1848,3392,2923,3403,3007, 2543,3404,1107,3607,3609,1091,3608,877,839,3408, 1754,3103,2226,1938,3405,3406,3407,740,522,1848, 3392,2939,3403,3392,50,3404,1107,251,3392,1091, 3033,877,839,3408,1754,3103,2226,1938,3405,3406, 3407,740,522,1848,3392,2965,3403,3007,2543,3404, 1107,1,1,1091,1,877,839,3408,1754,3103, 2226,1938,3405,3406,3407,740,522,1848,1,2939, 3403,3392,70,3404,1107,252,3392,1091,3392,877, 839,3408,1754,3103,2226,1938,3405,3406,3407,740, 522,1848,3392,3024,3403,3007,2543,3404,1107,3607, 3609,1091,3608,877,839,3408,1754,3103,2226,1938, 3405,3406,3407,740,522,1848,333,2939,3403,3392, 1,3404,1107,3398,3392,1091,3392,877,839,3408, 1754,3103,2226,1938,3405,3406,3407,740,522,1848, 134,271,1058,3392,3320,1,3392,3314,3317,3251, 369,254,3245,3248,3332,1800,3397,3326,3329,1, 2129,3619,263,3392,3607,3609,3400,3608,3556,3557, 3555,3610,3558,3554,3607,3609,851,3608,3556,3557, 3555,3610,3558,3554,237,32,3350,224,3368,373, 3392,3368,3368,623,851,263,500,583,3392,3392, 3418,3419,3398,68,1,1860,3619,263,3251,1, 224,3245,3248,3251,3651,254,3245,3248,372,3392, 3353,3403,623,184,3404,500,583,623,3399,254, 500,583,224,3356,374,3397,3362,3359,623,57, 3392,500,583,3398,253,3392,56,838,3398,380, 64,293,224,623,1651,674,500,583,3392,201, 72,1,357,623,91,1626,500,583,3607,3609, 458,3608,5905,3392,286,375,3397,1378,3651,623, 355,3397,500,583,202,1116,1701,376,1975,1354, 5905,623,377,1029,500,583,623,91,42,500, 583,3392,208,3392,415,801,2491,415,5905,1, 190,5905,801,2491,382,1,3392,3392,3392,1574, 207,1637,3392,3392,378,3392,3392,3392,3392,3392, 752,596,3392,3392,1600,3392,3392,3392,3392,1378, 3392,3392,3392,3392,2239,1676,3392,3392,3392,3392, 3392,3392,3392,3392,3392,3392,3392,3392,3392,3392, 3392,3392,3392,3392,3777,3392,3392,3392,3392,3392, 3404,3392,3392,3392,3392,3392,3403 }; }; 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, 677,1,416,382,552,677,417,384,675,47, 417,417,417,59,670,59,670,670,59,670, 59,386,384,373,417,59,554,28,419,675, 554,469,187,384,125,124,190,160,386,252, 523,248,327,45,156,670,582,579,582,156, 582,670,384,389,238,249,386,717,28,28, 28,28,28,28,28,28,28,28,28,630, 331,132,391,131,554,384,187,187,284,717, 140,384,524,7,327,424,249,672,473,675, 507,389,238,384,719,630,630,630,630,630, 249,249,249,243,539,523,582,582,310,28, 419,470,711,45,645,554,382,187,397,306, 747,429,288,440,445,443,453,447,456,455, 458,457,459,719,504,675,160,252,523,26, 470,470,582,417,417,13,417,417,470,79, 28,79,382,120,392,326,675,672,473,507, 507,238,238,249,241,120,249,249,249,249, 249,101,386,714,119,118,513,335,28,524, 249,28,306,583,249,384,747,306,287,284, 28,28,28,28,28,28,28,28,28,28, 28,28,28,28,28,28,28,28,28,28, 28,28,28,28,28,28,28,28,28,28, 81,28,120,504,138,520,470,470,537,28, 522,28,28,13,79,585,13,384,7,249, 309,249,249,473,504,71,473,507,509,588, 509,238,747,714,386,719,195,195,195,140, 675,243,249,597,717,28,339,630,523,249, 28,28,306,288,443,443,440,440,447,447, 445,445,445,445,445,445,455,453,457,456, 79,79,458,583,138,26,470,249,417,249, 249,13,28,13,386,120,473,73,509,504, 28,582,747,238,597,241,249,719,249,306, 306,28,28,509,279,470,26,13,28,13, 13,384,309,504,469,28,465,73,466,504, 238,249,199,504,136,193,261,582,28,79, 3,310,470,249,522,73,28,466,466,331, 140,593,582,28,249,310,470,13,466,28, 306,13,249,306,13 }; }; 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, 98,0,68,35,70,0,3,48,36,2, 24,0,39,41,10,45,47,42,37,43, 44,40,38,46,34,26,3,1,18,19, 20,2,5,15,16,14,6,11,12,21, 22,17,23,9,13,0,57,49,54,52, 53,51,50,55,56,58,59,60,35,48, 36,33,30,28,29,32,24,27,25,31, 26,3,6,2,1,4,8,7,61,0, 17,18,19,20,13,2,5,1,15,16, 14,6,11,12,21,22,9,23,61,0, 29,24,30,31,32,27,28,33,25,2, 6,61,26,7,8,4,10,1,35,36, 3,48,0,1,68,26,7,8,4,35, 48,36,3,61,0,3,65,35,70,1, 18,19,20,13,15,16,14,6,11,12, 21,22,17,23,9,2,5,10,0,50, 62,30,51,31,52,53,32,27,54,55, 28,63,33,64,56,57,25,58,59,60, 2,5,9,24,49,29,7,8,4,3, 48,26,68,0,61,69,77,65,32,28, 33,31,30,29,14,11,12,71,72,66, 67,73,74,75,76,80,81,82,83,84, 86,87,68,88,89,90,91,92,93,94, 95,96,97,78,79,10,26,24,27,25, 48,2,6,7,8,4,35,1,36,3, 0,10,3,68,48,26,7,8,4,0, 68,1,18,19,20,13,15,16,14,6, 11,12,21,22,17,23,9,10,2,5, 35,70,0,24,27,25,28,15,16,14, 6,11,12,21,22,17,23,9,1,2, 5,18,19,20,13,77,3,0,48,17, 18,19,20,5,1,15,16,14,6,11, 12,21,22,9,23,13,36,3,2,0, 61,69,77,65,70,85,15,16,35,14, 11,12,71,72,66,67,73,74,75,76, 80,81,82,83,84,86,87,68,88,89, 90,91,92,93,94,95,96,97,48,78, 79,36,29,24,30,31,32,27,28,33, 25,26,3,2,1,7,8,4,6,0, 61,3,48,36,1,0,24,27,15,16, 14,6,11,12,21,22,17,23,9,2, 5,18,19,20,13,25,1,0,3,61, 36,13,0,2,3,36,1,0,68,88, 89,90,91,92,94,93,95,96,97,6, 71,72,11,12,67,66,73,74,75,76, 78,79,80,81,14,82,83,84,69,77, 36,65,86,87,61,7,8,4,48,26, 3,0,29,49,24,50,62,30,51,31, 52,53,32,27,54,55,28,63,33,64, 56,57,25,58,59,60,2,5,9,7, 8,4,34,3,65,0,2,5,3,65, 48,0,3,61,77,36,26,48,0,36, 98,99,65,39,41,10,45,47,42,37, 43,44,40,38,46,34,3,26,18,19, 20,13,15,16,14,11,12,21,22,17, 23,6,1,9,62,63,64,57,49,54, 52,53,51,50,55,56,58,59,60,33, 30,28,29,32,24,27,25,31,7,8, 4,5,2,0,61,69,0,3,48,65, 68,0,77,3,69,0,6,29,49,24, 50,62,30,51,31,52,53,32,27,54, 55,28,63,33,64,56,57,25,58,59, 60,2,5,9,69,4,8,7,0,17, 18,19,20,13,1,15,16,14,6,11, 12,21,22,23,29,49,24,50,62,30, 51,31,52,53,32,27,54,55,28,63, 33,64,56,57,25,58,59,60,9,2, 5,7,8,4,10,0,98,29,49,24, 50,62,30,51,31,52,53,32,27,54, 55,28,63,33,64,56,57,25,58,59, 60,5,1,9,7,8,26,3,34,4, 2,6,0,6,1,35,36,3,29,49, 50,62,30,51,31,52,53,32,54,55, 28,63,33,64,56,57,58,59,60,2, 5,9,7,8,4,69,24,27,25,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, 176,43,21,181,32,189,43,82,65,95, 43,43,43,96,87,96,87,87,96,87, 96,157,144,43,43,96,89,58,74,65, 153,182,87,160,23,23,43,43,157,43, 12,187,67,43,8,163,8,163,8,8, 8,163,167,43,163,187,157,186,58,58, 58,58,58,58,58,58,58,58,58,171, 43,187,43,43,98,143,163,87,70,186, 60,165,104,19,79,43,187,87,153,43, 153,43,87,85,117,171,171,171,171,171, 187,187,187,151,1,12,25,25,52,173, 74,182,43,74,126,35,181,163,57,72, 63,43,71,43,43,43,43,43,43,43, 43,43,43,131,153,43,43,43,113,180, 182,182,8,43,43,27,43,43,182,43, 76,43,181,187,43,187,43,163,139,153, 8,87,153,187,149,43,187,187,187,187, 187,16,157,184,23,23,43,43,58,104, 187,58,72,43,187,143,63,72,71,48, 58,58,58,58,58,58,58,58,58,58, 58,58,58,58,58,58,58,58,58,58, 58,58,58,58,58,58,58,58,58,58, 44,58,187,13,153,43,182,182,193,173, 43,173,173,27,43,43,27,83,19,187, 58,187,187,153,13,181,135,8,102,43, 43,153,63,148,157,117,16,16,16,15, 16,122,187,155,186,58,43,171,113,187, 58,58,72,71,43,43,43,43,43,43, 43,43,43,43,43,43,43,43,43,43, 43,43,43,43,56,195,182,187,43,187, 187,27,58,27,157,187,139,143,102,13, 58,8,63,48,155,120,187,117,187,72, 72,58,58,102,110,182,195,27,173,27, 27,84,58,13,182,58,43,160,87,13, 48,187,16,13,55,43,60,8,58,43, 10,195,182,187,43,143,58,87,163,50, 60,72,8,58,187,195,182,27,163,58, 72,27,187,72,27 }; }; 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, 95,102,93,92,84,91,90,1,0,136, 0,2,53,0,6,51,50,0,117,0, 142,0,59,0,103,0,1,38,2,39, 0,34,2,100,95,102,94,93,92,84, 91,90,0,2,31,122,0,32,0,132, 0,2,123,0,112,51,2,6,0,6, 51,0,85,0,115,0,141,18,0,2, 6,49,0,101,0,6,144,0,18,119, 0,48,2,36,34,46,27,0,84,78, 79,80,81,87,72,54,0,29,2,138, 0,88,0,29,2,1,38,105,0,1, 145,0,38,1,77,53,2,29,0,34, 46,68,67,27,0,2,29,60,30,0, 128,2,29,0,2,58,97,0,107,2, 58,0,27,46,34,2,0,18,34,46, 67,68,2,0,2,29,27,63,0,46, 34,2,10,0,46,48,27,34,36,0, 58,30,2,31,0,137,2,29,0,31, 2,26,0,67,68,2,18,0,2,29, 113,0,29,60,2,71,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, 2,87,89,99,88,9,97,98,95,3, 10,11,86,8,6,7,70,83,84,85, 12,13,96,50,78,94,66,71,46,57, 62,65,74,100,1,92,79,47,48,51, 52,53,59,60,61,67,73,42,49,54, 58,63,64,68,69,76,77,80,81,82, 29,56,72,75,93,16,17,31,30,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,101,55,90 }; }; public final static char terminalIndex[] = TerminalIndex.terminalIndex; public final int terminalIndex(int index) { return terminalIndex[index]; } public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, 106,0,0,0,0,108,112,113,114,190, 0,0,0,115,116,117,118,103,119,120, 121,122,123,0,0,105,191,124,133,129, 107,141,0,164,0,167,0,125,128,0, 0,0,0,0,161,163,0,165,102,111, 0,151,104,140,0,0,0,155,166,132, 0,127,162,110,175,178,179,180,0,0, 0,143,150,0,168,174,131,144,145,146, 147,148,149,152,173,177,198,0,134,135, 136,137,138,139,142,0,154,158,160,169, 195,197,109,126,130,0,153,157,0,159, 172,182,187,0,189,0,192,0,194,0, 0,0,0,0,0,156,0,170,171,176, 181,0,183,184,0,185,186,188,0,0, 193,0,0,196,199,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[] = { 202,258,334,220,314,125,151,157,286,99, 363,385,342,1,108,141,167,187,67,266, 324,35,35,59,63,75,81,113,163,237, 302,75,421,428,432,359,381,394,408,394, 348,15,27,56,8,8,117,120,172,120, 197,120,247,252,255,311,436,50,87,93, 133,241,87,405,415,415,8,133,276,210, 372,210,276,20,20,41,233,41,41,41, 41,41,309,403,20,20,45,146,175,146, 175,175 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; public final int scopePrefix(int index) { return scopePrefix[index]; } public interface ScopeSuffix { public final static char scopeSuffix[] = { 79,79,321,79,321,131,6,6,79,105, 369,391,329,6,39,131,6,39,72,271, 329,39,39,39,39,79,85,39,6,235, 235,79,39,39,6,321,321,321,412,398, 352,18,18,39,6,6,39,123,6,182, 39,200,250,250,250,235,39,53,90,96, 148,244,306,53,418,425,11,136,271,227, 375,213,279,25,33,43,235,292,294,296, 298,300,235,235,22,30,47,148,184,136, 177,192 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; public final int scopeSuffix(int index) { return scopeSuffix[index]; } public interface ScopeLhs { public final static char scopeLhs[] = { 80,78,43,80,43,63,59,59,78,50, 43,42,43,146,69,63,59,36,11,78, 43,87,7,7,116,115,70,69,59,97, 60,30,7,6,6,43,42,42,24,42, 43,108,83,4,136,135,67,86,59,100, 34,52,79,79,79,44,4,40,70,112, 63,97,60,40,8,6,146,63,78,80, 43,80,78,108,83,102,97,94,93,92, 91,90,60,41,108,83,144,63,36,63, 48,36 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; public final int scopeLhs(int index) { return scopeLhs[index]; } public interface ScopeLa { public final static byte scopeLa[] = { 65,65,36,65,36,24,77,77,65,65, 36,99,26,77,36,24,77,36,36,10, 26,36,36,36,36,65,10,36,77,26, 26,65,36,36,77,36,36,36,61,36, 26,7,7,36,77,77,36,1,77,2, 36,2,2,2,2,26,36,61,2,68, 6,2,2,61,36,36,69,6,10,10, 37,2,2,2,2,9,26,2,62,63, 63,57,26,26,2,2,69,6,1,6, 1,1 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; public final int scopeLa(int index) { return scopeLa[index]; } public interface ScopeStateSet { public final static char scopeStateSet[] = { 141,141,38,141,38,208,54,54,141,17, 38,38,38,3,58,208,54,146,164,141, 38,141,65,65,14,138,224,58,54,8, 221,30,65,65,65,38,38,38,101,38, 38,5,159,65,1,3,58,60,54,217, 146,152,141,141,141,38,65,38,224,135, 208,8,221,38,72,65,3,208,141,141, 38,141,141,5,159,142,8,142,142,142, 142,142,221,38,5,159,12,208,146,208, 148,146 }; }; public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet; public final int scopeStateSet(int index) { return scopeStateSet[index]; } public interface ScopeRhs { public final static char scopeRhs[] = {0, 162,69,162,35,0,102,0,162,35,0, 30,127,102,0,198,127,0,191,0,127, 0,158,191,0,158,0,152,127,0,151, 191,0,151,0,164,1,9,0,103,0, 195,0,198,0,162,0,30,127,0,244, 39,0,29,128,0,130,1,0,164,1, 23,0,240,1,217,0,239,1,1,7, 0,103,103,0,205,102,10,0,104,0, 200,102,129,0,189,0,102,129,0,169, 189,0,233,102,0,31,150,0,188,231, 102,10,151,0,104,0,0,175,102,1, 167,0,175,102,1,0,186,1,0,163, 102,0,178,0,102,137,6,137,163,0, 173,0,137,163,0,9,0,0,173,0, 102,137,6,137,0,137,0,9,0,0, 128,28,211,102,35,0,128,211,102,28, 35,0,128,28,35,0,128,211,102,35, 0,128,35,0,134,0,2,0,170,103, 0,167,0,2,103,0,175,102,1,134, 0,2,0,168,103,0,152,1,0,161, 0,188,209,102,10,101,227,62,0,227, 62,0,106,3,0,0,0,104,0,188, 209,102,10,227,62,0,3,0,0,0, 104,0,158,0,105,0,226,102,158,0, 102,158,0,156,105,0,196,62,0,106, 0,196,64,0,196,63,0,206,102,10, 225,101,224,184,0,225,101,224,184,0, 3,0,0,104,0,224,184,0,106,0, 3,0,0,104,0,206,102,10,224,184, 0,147,0,146,0,145,0,144,0,143, 0,189,102,129,0,134,105,0,129,0, 131,46,0,171,126,171,160,1,43,0, 103,128,0,171,160,1,43,0,105,0, 103,128,0,171,126,171,126,171,1,43, 0,171,126,171,1,43,0,171,1,43, 0,105,0,105,0,103,128,0,131,1, 37,0,131,1,37,139,42,0,103,105, 0,139,42,0,79,2,107,103,105,0, 131,1,47,0,139,118,131,1,45,0, 55,128,0,131,1,45,0,103,128,55, 128,0,138,0,162,39,0,131,87,123, 0,29,124,0,164,1,0,103,113,0, 164,1,17,0,103,111,0,223,1,106, 0,131,35,106,0,131,1,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, 414,0,1784,0,2189,2024,0,2882,1999,2017, 0,942,0,838,435,0,813,775,676,1302, 638,1277,424,1250,1018,712,636,714,0,3024, 1960,2965,2939,2923,2899,2873,2365,2583,2563,2556, 2536,2529,2482,2432,2425,1925,2405,2378,1843,464, 1797,1751,0,1282,1275,673,457,1946,2618,2129, 2819,2092,2271,0,3132,3103,2226,1938,1848,1091, 1019,702,424,433,1800,2239,2103,1116,2824,2808, 2792,2776,2760,1764,752,596,2851,2634,2491,801, 3033,3007,2543,664,1754,1107,877,839,740,522, 1726,1701,813,1676,1651,775,1626,1029,1600,1574, 1549,1524,1498,1472,1446,887,1420,1394,1368,1342, 1316,1290,1264,1238,1212,1186,1157,993,967,942, 916,389,714,851,676,638,0,774,754,0, 1072,535,389,485,0,2834,485,2364,1946,2336, 2307,2189,2264,2024,2129,2092,2279,1860,1888,1996, 2053,1054,0,3190,3186,3164,2189,3146,2264,2364, 1946,2024,2618,1888,1996,3118,3182,3168,535,389, 2336,2257,3114,2307,3140,3068,2053,2922,2834,2726, 2428,2173,2279,621,1072,2702,2696,2853,2688,3089, 3064,2662,2654,2636,499,1054,485,2477,3060,2143, 3032,2972,2883,2879,1865,0,1888,1054,485,0, 2991,1960,1138,1925,1843,1797,1751,2848,2590,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,221,4,129,102,237,242,102,200,190, 7,8,4,191,184,192,64,63,193,62, 194,102,1,2,134,202,195,9,1,200, 229,189,152,127,146,134,183,148,102,136, 10,1,1,1,224,127,196,127,196,227, 196,127,163,137,127,152,102,1,9,23, 17,22,21,12,11,6,14,16,15,1, 106,243,13,201,102,48,127,152,35,1, 68,163,102,1,241,2,13,101,10,101, 10,137,6,163,102,1,1,1,1,1, 130,164,131,158,102,10,85,70,1,35, 61,118,1,48,238,102,129,127,28,128, 102,107,6,109,115,114,117,116,120,119, 122,121,123,102,10,151,148,136,205,46, 38,40,44,43,37,42,47,45,138,41, 39,101,129,239,217,1,225,127,102,10, 102,6,137,175,129,176,164,164,164,164, 164,118,102,1,168,167,204,101,9,102, 223,102,131,6,2,102,102,128,211,185, 97,96,95,93,94,92,91,90,89,88, 68,72,71,6,66,67,12,11,81,80, 79,78,76,75,74,73,82,14,84,83, 87,86,228,102,10,3,131,101,1,1, 139,1,1,61,244,162,61,102,48,118, 1,13,2,10,206,158,207,102,209,101, 210,137,102,1,102,48,118,118,118,118, 118,163,186,102,1,48,107,1,205,2, 211,28,128,6,114,114,109,109,116,116, 115,115,115,115,115,115,119,117,121,120, 222,131,122,48,102,160,171,131,37,131, 131,61,69,61,102,240,102,102,209,188, 68,48,102,185,102,163,175,102,164,128, 128,61,61,231,102,171,126,118,1,118, 118,163,48,206,226,61,152,127,198,188, 185,175,118,188,48,233,245,70,35,101, 234,126,171,131,139,48,61,198,127,153, 68,162,70,35,171,126,118,99,127,69, 162,118,171,162,118 }; }; public final static char inSymb[] = InSymb.inSymb; public final int inSymb(int index) { return inSymb[index]; } public interface Name { public final static String name[] = { "", "[", "(", "{", ".", "->", "++", "--", "&", "*", "+", "-", "~", "!", "/", "%", ">>", "<<", "<", ">", "<=", ">=", "==", "!=", "^", "|", "&&", "||", "?", ":", "...", "=", "*=", "/=", "%=", "+=", "-=", ">>=", "<<=", "&=", "^=", "|=", ",", ">?", "<?", "$empty", "auto", "break", "case", "char", "const", "continue", "default", "do", "double", "else", "enum", "extern", "float", "for", "goto", "if", "inline", "int", "long", "register", "restrict", "return", "short", "signed", "sizeof", "static", "struct", "switch", "typedef", "union", "unsigned", "void", "volatile", "while", "_Bool", "_Complex", "_Imaginary", "integer", "floating", "charconst", "stringlit", "identifier", "Completion", "EndOfCompletion", "Invalid", "RightBracket", "RightParen", "RightBrace", "SemiColon", "typeof", "__alignof__", "__attribute__", "__declspec", "asm", "ERROR_TOKEN", "EOF_TOKEN", "]", ")", "}", ";", "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", "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", "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 = 34, SCOPE_UBOUND = 91, SCOPE_SIZE = 92, 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 = 375, NT_OFFSET = 100, LA_STATE_OFFSET = 3780, MAX_LA = 2147483647, NUM_RULES = 388, NUM_NONTERMINALS = 147, NUM_SYMBOLS = 247, SEGMENT_SIZE = 8192, START_STATE = 2590, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 98, EOLT_SYMBOL = 98, ACCEPT_ACTION = 3241, ERROR_ACTION = 3392; 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]; } }