blob: 7bb82ea0b447ce5f867e4401b484992a9f383a08 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* IBM Corporation - initial API and implementation
*********************************************************************************/
// This file was generated by LPG
package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public class CPPTemplateTypeParameterParserprs implements lpg.lpgjavaruntime.ParseTable, CPPTemplateTypeParameterParsersym {
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,
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,1,1,
1,1,1,3,1,1,1,1,1,1,
1,1,2,2,1,1,0,1,0,4,
2,3,2,3,2,2,1,0,1,1,
4,4,4,8,8,3,3,4,4,3,
3,2,2,7,7,7,7,4,4,5,
6,3,2,2,1,1,1,2,2,2,
2,2,2,2,2,2,4,7,9,3,
0,1,2,2,1,2,3,4,1,0,
3,1,0,3,5,1,4,1,3,3,
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,5,3,3,1,3,3,1,3,
1,3,1,3,1,3,1,3,1,5,
1,1,3,3,3,3,3,3,3,3,
3,3,3,1,2,1,1,3,3,3,
3,3,3,3,3,3,3,3,1,2,
1,3,1,0,1,0,1,1,0,1,
1,1,1,1,1,1,1,1,3,4,
3,2,1,4,2,1,2,5,7,5,
1,4,1,0,5,7,2,8,1,1,
2,2,3,2,3,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,2,1,0,4,4,2,2,2,2,
2,1,0,1,1,1,1,1,1,2,
1,2,2,2,1,1,2,2,1,2,
2,1,2,2,1,2,2,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,3,
4,4,5,2,5,6,5,0,1,0,
7,8,0,1,3,1,0,1,3,1,
7,6,0,7,6,1,0,6,5,6,
4,1,3,1,0,1,1,2,1,1,
3,1,3,1,1,1,1,3,9,2,
2,3,2,5,3,7,0,1,2,2,
1,0,1,1,1,3,1,2,1,1,
2,3,1,1,1,3,2,1,2,2,
9,8,2,1,3,1,3,1,0,1,
0,2,1,1,3,1,3,2,1,5,
8,1,2,3,1,1,7,6,3,0,
0,1,3,1,1,5,6,6,7,7,
0,0,1,0,1,1,1,2,4,2,
2,1,5,1,1,1,1,1,1,1,
2,1,0,1,3,1,1,2,3,2,
1,2,2,1,0,1,3,3,5,5,
4,1,1,1,1,0,1,5,2,2,
1,2,2,1,0,1,3,4,3,1,
1,5,2,1,1,3,3,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,2,2,7,1,0,1,3,
1,1,2,4,2,4,7,9,5,1,
3,1,0,1,1,3,2,3,2,2,
1,0,1,1,4,5,2,1,2,2,
2,2,2,2,2,1,1,2,1,1,
2,4,4,2,1,2,5,5,3,3,
1,4,3,1,0,1,3,1,1,-126,
0,0,0,0,-2,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-39,-3,0,-7,
0,0,0,0,0,0,-398,0,-215,0,
0,-273,-8,0,-15,0,-519,0,0,0,
0,-12,-22,-474,0,0,0,0,0,0,
0,0,0,0,0,0,0,-16,0,0,
0,-246,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-448,0,0,-368,0,0,-37,0,0,0,
0,0,0,0,-109,0,0,-58,0,0,
0,0,-461,0,0,0,0,0,-532,0,
0,0,0,0,0,0,0,0,0,-283,
0,0,0,0,0,0,0,0,0,0,
-6,0,-36,0,-19,0,0,-4,0,0,
0,0,0,0,0,-170,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-128,0,0,0,0,-32,0,
0,0,-23,0,0,0,0,0,0,0,
0,0,0,-26,0,0,0,0,0,0,
0,0,0,0,0,-20,0,0,0,0,
0,0,-412,0,-171,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-182,0,0,-132,0,0,0,0,
-337,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-83,0,
-24,0,0,0,0,0,0,0,0,0,
-25,-187,-440,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-5,0,
0,0,-107,0,0,0,-175,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-41,0,0,-49,0,0,-85,
0,0,0,0,0,0,0,-270,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-191,0,0,0,0,0,0,
0,0,-546,0,0,-335,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-196,0,0,0,
0,-27,0,0,0,0,0,0,0,0,
0,0,0,0,-597,-45,0,0,0,0,
0,-28,0,0,0,0,0,0,0,0,
0,-217,0,0,0,0,-30,0,0,0,
0,0,0,0,0,-1,0,0,0,-167,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-91,-44,0,0,
0,0,0,0,0,0,-55,0,-50,0,
0,0,0,0,0,-576,0,0,0,0,
-266,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-86,0,0,-92,0,0,0,0,
0,0,-51,0,-173,0,0,0,-291,0,
0,0,-598,0,0,0,0,-52,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-10,
0,0,-53,0,0,0,0,0,0,-268,
0,0,0,0,0,-211,0,0,0,0,
0,-515,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-108,0,0,0,0,-433,0,0,-186,0,
0,0,0,0,0,0,-18,0,0,0,
0,-54,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-421,-174,0,-498,0,-89,0,
0,0,0,0,0,-466,0,0,0,0,
0,0,0,-154,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-35,-311,0,0,0,0,0,0,0,0,
-90,-298,-96,0,0,0,0,0,0,0,
0,-81,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,-34,
0,0,0,0,0,0,0,0,-56,0,
0,0,0,-195,0,0,0,0,0,0,
0,0,0,-82,0,0,0,0,-446,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-106,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-68,0,0,0,
-205,0,0,0,0,-129,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-408,0,
-213,0,0,0,0,0,0,0,0,-69,
0,0,-284,0,0,0,0,0,-21,0,
0,0,0,-425,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-38,-194,0,0,0,
0,0,0,0,0,0,0,-443,0,0,
-260,0,0,0,-79,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-403,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-290,0,0,0,
0,0,0,0,0,0,0,-177,0,0,
0,0,0,0,0,0,0,0,-155,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-110,0,-183,0,
0,0,0,0,0,-465,0,-221,0,0,
-489,0,0,0,0,-156,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-342,0,-184,0,0,0,0,
0,0,0,0,-70,0,0,-507,0,0,
0,0,-157,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-71,0,-464,0,-338,0,0,0,0,0,
0,0,0,0,-509,0,0,0,0,-158,
0,0,0,0,-410,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-192,0,0,0,0,0,0,0,0,
0,-539,0,0,0,0,-159,0,0,0,
0,-457,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-261,0,
0,0,0,0,0,0,0,0,-540,0,
0,0,0,-160,0,0,0,0,-470,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-492,0,-72,0,-473,0,0,0,0,
0,0,0,0,0,-354,0,0,0,0,
-161,0,0,0,0,-494,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-73,0,
-74,0,-265,0,0,0,0,0,0,0,
0,0,-366,0,0,0,0,-162,0,0,
0,0,-542,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-278,0,0,-75,0,0,
0,0,0,0,-76,0,0,0,0,-371,
0,0,0,0,-163,0,0,0,0,-77,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-279,-78,0,-80,0,0,0,0,0,
0,-84,0,0,0,0,-372,0,0,0,
0,-164,0,0,0,0,-563,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-281,-87,
0,-88,0,0,0,0,0,0,-94,0,
-548,0,0,-419,0,0,0,0,-165,0,
0,0,0,-588,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-297,-95,0,-98,0,
0,0,0,0,0,-105,0,0,0,0,
-468,0,0,0,0,-292,0,0,0,0,
-113,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-352,-116,0,-131,0,-303,0,0,
0,0,0,0,0,0,0,-97,0,0,
0,0,-302,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,-203,0,-188,0,0,0,0,-276,
0,-277,0,0,-112,0,0,0,0,-322,
0,0,0,0,-179,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-180,0,-189,
-516,0,0,0,0,0,0,0,0,0,
0,0,0,-29,0,-305,0,-263,0,-442,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-323,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-304,-514,0,0,0,0,0,-199,
0,0,0,0,0,-200,0,0,0,-455,
0,0,0,0,0,0,0,-447,0,0,
0,0,0,-480,0,-201,0,0,0,0,
0,-324,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-467,0,
0,-391,0,0,0,0,0,0,0,0,
0,0,0,0,0,-11,0,-345,0,-587,
0,0,-202,0,0,-207,0,-257,-208,0,
0,0,0,0,0,0,0,-325,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-209,0,0,-348,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-40,0,-506,0,0,-210,0,
0,0,0,-341,0,0,0,-537,0,0,
0,0,0,-326,0,0,0,0,-93,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-100,0,0,-222,0,0,-223,0,0,0,
0,0,0,0,-353,0,0,-224,0,0,
0,0,0,0,0,-589,0,0,0,0,
0,-536,0,0,0,0,0,0,0,-327,
0,0,0,0,-225,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-490,0,0,-226,
-569,0,0,0,0,0,0,0,0,0,
0,0,0,-485,0,-42,0,0,-365,0,
0,0,0,-346,0,-227,-602,-409,0,-406,
0,0,0,0,0,-328,0,0,0,0,
-400,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-176,-228,0,-101,0,0,0,0,
0,0,0,0,0,-229,-481,0,0,0,
0,0,0,-454,0,0,0,0,0,0,
0,-230,-407,0,-231,0,0,0,0,0,
0,-329,0,0,0,0,-435,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-124,
0,-232,-133,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-233,0,-280,
0,0,0,0,0,0,0,0,0,0,
-339,-520,0,0,0,0,0,-330,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-219,0,0,
0,0,0,0,0,0,0,0,0,0,
-234,0,0,-235,0,0,0,0,0,-393,
0,-236,0,-373,0,-374,-575,-237,0,0,
0,0,0,-331,0,0,0,0,-238,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-294,0,0,-445,0,0,0,0,0,0,
0,0,0,0,0,-301,0,-118,0,-239,
0,-240,0,-430,0,0,0,-350,0,0,
-389,0,0,-243,0,0,0,0,0,-332,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-247,-125,0,0,
0,0,0,0,-351,0,0,-248,-47,0,
-249,0,0,-119,0,-306,0,-340,0,-250,
0,-434,0,0,0,-369,0,0,0,0,
0,0,0,0,0,-432,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-336,0,0,0,0,0,-388,
-390,0,0,-392,0,0,0,-172,0,0,
0,0,0,-477,0,0,0,0,0,0,
0,-487,0,0,-479,0,0,0,0,0,
0,-592,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-488,0,0,-251,0,0,-178,0,-401,0,
0,0,0,-545,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-252,-590,0,
-253,0,0,0,0,0,0,-197,0,0,
-411,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-395,0,0,0,0,0,0,-397,
0,0,-420,-428,0,-429,-245,0,0,-501,
0,0,-254,0,0,-497,-255,-450,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-437,-282,0,-256,0,0,
0,0,0,0,0,0,-258,0,0,-451,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-259,-264,-269,
0,-496,0,0,0,0,0,0,-504,0,
0,-271,-272,0,-286,0,0,0,0,-355,
0,-287,-288,-198,-204,0,-463,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-289,-312,0,-517,0,
0,0,0,-343,0,-344,0,0,-523,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-349,0,-357,0,
-544,0,0,0,0,0,0,-562,0,0,
-307,-564,0,-572,-579,-358,0,-363,0,0,
-308,-525,-364,0,0,-534,-104,0,0,0,
0,-334,0,0,0,0,-216,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-370,-377,0,-378,0,-379,-380,0,
0,0,0,-309,-381,-382,0,-383,0,0,
0,0,-384,-535,0,-385,0,0,0,0,
0,0,0,0,-321,0,0,0,0,-220,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-262,0,-405,0,-386,0,0,-387,0,
-402,-404,-422,-426,-427,-438,-441,-453,-460,0,
-547,0,0,0,0,-469,-475,0,0,0,
-152,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-559,0,
-560,0,-476,0,0,0,-319,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-478,-482,-484,-499,0,-522,0,
-566,0,-524,-526,0,0,-527,-528,-529,-531,
-565,0,-583,0,-549,-550,-552,-557,-561,0,
-241,0,-153,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-242,0,0,-320,0,0,
0,0,-299,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-573,-581,-593,-603,0,
0,0,0,-595,0,-601,0,0,0,0,
0,0,0,-367,0,-149,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-413,0,-316,
0,0,0,0,-414,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-150,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-415,-416,0,-151,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-317,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-13,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,0,0,-33,0,
0,0,0,0,0,0,0,0,0,0,
0,-399,0,0,0,0,0,0,0,0,
0,0,0,0,-533,-431,-458,0,0,0,
0,0,0,0,-459,0,0,0,0,-491,
-135,0,0,-500,-512,0,0,0,-111,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-538,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-143,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-144,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-145,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-146,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-313,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-314,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-315,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-347,0,0,0,
0,0,0,0,0,0,0,0,0,-376,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-543,-166,-31,
0,0,0,0,-14,0,0,0,0,0,
0,-594,0,0,0,0,0,0,0,-122,
0,0,0,-568,0,0,0,0,0,0,
0,0,-556,0,0,0,0,0,-570,0,
-574,0,0,0,-333,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-147,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-267,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-584,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-577,0,0,0,0,0,0,
0,0,0,0,0,0,0,-449,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-148,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-505,0,0,0,-123,0,0,0,-359,0,
-360,0,0,0,-48,0,0,0,0,0,
-285,0,0,0,-578,-596,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-600,0,0,0,0,0,0,0,0,
0,0,-521,0,0,-214,0,0,0,-361,
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,-362,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-591,0,0,0,0,0,0,0,0,
0,0,0,0,-103,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-424,
0,0,0,0,0,0,0,0,0,0,
0,-138,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-114,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-139,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-530,0,0,0,0,0,0,0,
0,0,0,-9,0,-168,-444,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,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-551,0,0,0,0,0,
0,-423,0,0,0,0,0,-169,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-181,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-553,0,0,0,
0,0,0,0,0,0,0,0,0,-17,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-190,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-567,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-193,0,0,
0,0,0,-417,0,0,0,0,0,-585,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-580,0,0,0,0,0,0,0,-418,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,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,-582,0,0,0,0,0,0,0,
-462,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-218,0,0,0,0,0,-508,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-586,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-396,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-599,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-456,0,0,0,0,
0,0,0,0,0,0,0,-57,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-604,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-140,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,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-142,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,-244,
0,0,0,0,0,0,0,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,0,0,0,0,0,
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,-62,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,-63,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-64,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-65,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-66,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-67,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-127,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,-136,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-137,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,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,-295,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-59,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-436,-483,0,
0,0,0,0,-300,0,0,0,0,0,
-472,0,0,0,0,0,0,0,0,-486,
0,0,0,-513,0,0,0,0,0,0,
0,0,-293,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-43,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-452,0,0,
0,0,0,0,0,0,0,0,0,0,
-274,0,0,0,0,0,0,0,0,0,
0,0,0,-502,0,0,0,0,0,-394,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-439,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-471,-510,0,0,
0,0,0,0,-511,0,0,0,0,0,
0,0,0,0,0,0,0,-375,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,-495,0,0,
0,0,0,0,0,0,0,0,0,0,
-503,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,-185,0,0,0,
0,0,0,0,0,0,0,0,-310,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,-102,0,0,0,0,0,0,-518,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,-275,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-115,0,0,0,0,0,-571,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-117,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
-130,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,-493,0,0,0,0,
0,0,0,0,-120,0,0,0,0,0,
0,0,0,0,-554,0,0,0,0,0,
0,-555,0,0,0,0,0,0,0,0,
0,0,0,-121,0,0,0,0,0,0,
-558,0,0,0,0,0,0,0,0,0,
0,0,-296,0,0,0,0,0,0,-541,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@Override
public final int baseCheck(int index) { return baseCheck[index]; }
public final static short rhs[] = baseCheck;
@Override
public final int rhs(int index) { return rhs[index]; };
public interface BaseAction {
public final static char baseAction[] = {
191,5,154,94,94,30,30,81,81,39,
39,42,42,218,1,1,16,16,16,16,
16,16,16,17,17,17,15,11,11,6,
6,6,6,6,6,2,75,75,4,4,
12,12,44,44,155,155,156,67,67,43,
18,18,18,18,18,18,18,18,18,18,
18,18,18,18,18,18,18,18,18,18,
157,157,157,132,132,19,19,19,19,19,
19,19,19,19,19,19,19,19,20,20,
192,192,193,193,194,160,160,161,161,158,
158,162,159,159,21,21,22,22,23,23,
23,24,24,24,24,25,25,25,26,26,
26,31,31,31,31,31,33,33,33,34,
34,35,35,36,36,38,38,40,40,41,
41,45,45,45,45,45,47,47,47,53,
53,55,55,61,61,62,62,63,63,64,
64,65,65,65,65,65,65,65,65,65,
65,65,65,65,29,29,46,46,46,46,
46,46,46,46,46,46,46,46,46,37,
28,163,163,105,105,195,195,104,219,219,
82,82,82,82,82,82,82,82,82,83,
83,83,79,79,66,66,196,196,84,84,
84,116,116,197,197,85,85,85,85,198,
198,86,86,86,86,86,87,87,95,95,
95,95,95,95,95,95,56,56,56,56,
56,133,133,131,131,57,199,27,27,27,
27,27,50,50,69,69,69,69,69,138,
138,134,134,134,134,134,135,135,135,136,
136,136,137,137,137,165,165,165,70,70,
70,70,70,71,71,71,13,14,14,14,
14,14,14,14,14,14,14,14,106,139,
139,139,139,139,139,111,111,111,166,167,
167,112,112,200,169,169,168,168,140,140,
117,92,92,141,59,49,170,170,60,58,
97,97,171,171,164,164,142,143,143,144,
89,89,172,172,77,77,77,73,73,72,
78,78,80,80,68,68,68,54,98,98,
108,107,107,51,51,74,74,76,76,52,
109,109,109,99,99,99,100,100,101,101,
101,102,102,118,118,118,120,120,119,119,
220,220,103,103,202,202,202,202,202,146,
48,48,174,201,201,147,147,148,148,148,
149,176,203,203,32,32,110,114,114,114,
114,205,122,121,121,113,113,113,177,178,
178,178,178,178,178,178,178,178,178,178,
207,207,204,204,206,206,179,180,180,180,
180,181,208,124,123,123,209,209,182,182,
182,182,115,115,115,210,210,8,8,9,
211,211,212,183,173,173,184,184,185,186,
186,7,7,10,213,213,213,213,213,213,
213,213,213,213,213,213,213,213,213,213,
213,213,213,213,213,213,213,213,213,213,
213,213,213,213,213,213,213,213,213,213,
213,213,213,213,213,213,90,93,93,187,
187,151,151,125,125,125,125,125,125,3,
152,152,150,150,188,221,222,222,223,223,
224,225,225,189,190,190,190,190,214,214,
214,127,127,127,127,127,128,129,129,126,
126,96,91,88,88,175,175,130,130,215,
215,215,153,153,145,145,216,216,191,191,
1119,35,2489,2466,4990,1128,27,30,31,1052,
1067,26,28,2429,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,1939,1346,1484,177,
588,1894,308,1988,1941,2010,1995,2713,2033,69,
2035,176,1986,1394,1471,1331,191,157,35,330,
2939,266,1572,1389,1258,35,1032,32,4804,3474,
27,30,31,1052,1067,375,28,3633,2107,269,
264,265,2856,35,1032,32,718,600,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,2938,379,
189,1642,35,490,2823,5769,309,2505,2136,2928,
276,279,282,627,707,2295,984,3307,2289,35,
1108,425,368,2823,645,388,355,901,357,157,
3529,350,891,390,1351,753,1546,2484,5866,285,
157,35,317,349,380,653,803,385,2730,1451,
49,69,3902,1628,378,1647,4724,1802,71,35,
433,2129,1476,2426,3491,2616,2265,35,1032,32,
718,5370,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,2938,1261,2357,162,342,346,1307,1533,
35,1032,32,1231,266,41,30,31,1052,1067,
2358,2927,2418,2950,157,2082,2080,34,3176,2941,
484,3108,278,264,265,3567,1808,3074,3111,3173,
161,579,923,157,3349,2265,35,1032,32,718,
5370,27,30,31,1052,1067,26,28,1409,296,
25,23,50,1467,106,76,77,108,1510,1751,
1715,2938,1304,155,162,3483,2233,35,1032,32,
5052,1232,27,30,31,1052,1067,57,28,630,
2927,2597,2950,389,3483,483,3565,3566,2941,2389,
3108,1998,550,576,3167,580,3074,3111,3173,161,
579,2711,228,1610,35,1032,32,4230,654,27,
30,31,1052,1067,375,28,2894,3249,3177,71,
35,433,2891,71,35,2270,2225,2265,35,1032,
32,718,5370,27,30,31,1052,1067,26,28,
1409,296,25,23,50,1467,106,76,77,108,
1510,1751,1715,2938,1213,49,162,71,35,433,
69,550,576,3167,580,4726,2129,1269,931,35,
330,360,2927,325,2950,352,3347,357,3000,371,
2941,361,3108,362,2505,3208,4486,3177,3074,3111,
3173,161,579,157,35,330,2475,35,1032,32,
718,5370,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,2938,61,1985,162,2079,1701,35,1032,
32,4441,1752,27,30,31,1052,1067,26,28,
643,2927,548,2950,902,585,1642,35,314,2941,
3939,3108,2895,550,576,3167,580,3074,3111,3173,
161,579,1701,35,1032,32,4441,2897,27,30,
31,1052,1067,59,28,2624,3013,3217,2174,3177,
3279,35,1032,32,718,1704,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,1939,1619,2956,2494,
3581,1894,3008,1988,1941,2010,1995,61,2882,1402,
1657,4250,551,576,3167,580,2613,35,1032,32,
718,2566,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,1939,69,715,177,2389,1894,4788,1988,
1941,2010,1995,2957,2033,2389,2035,176,3351,157,
35,3373,415,2333,35,1032,32,718,2963,27,
30,31,1052,1067,26,28,1409,296,25,23,
50,1467,106,76,77,108,1510,1751,1715,1939,
69,598,177,3015,1894,4235,1988,1941,2010,1995,
2636,2033,426,2035,176,3351,1642,35,314,415,
5803,418,2543,35,1032,32,718,379,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,1939,441,
535,177,645,1894,2627,1988,1941,2010,1995,497,
2033,61,2035,176,3351,4866,2889,605,415,157,
35,2232,2230,422,416,3084,546,2924,35,1032,
32,718,3076,27,30,31,1052,1067,26,28,
1409,296,25,23,50,1467,106,76,77,108,
1510,1751,1715,1939,2882,2389,177,1645,1894,69,
1988,1941,2010,1995,766,2033,2889,2035,176,480,
423,416,3084,409,3279,35,1032,32,718,2104,
27,30,31,1052,1067,26,28,1409,296,25,
23,50,1467,106,76,77,108,1510,1751,1715,
1939,1257,1642,35,567,1894,6068,1988,1941,2010,
2839,69,1886,69,273,296,835,2956,927,413,
416,3084,2924,35,1032,32,718,1103,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,1939,496,
1518,177,266,1894,3377,1988,1941,2010,1995,2147,
2033,392,2035,176,157,35,2080,311,409,594,
274,264,265,408,2924,35,1032,32,718,2713,
27,30,31,1052,1067,26,28,1409,296,25,
23,50,1467,106,76,77,108,1510,1751,1715,
1939,69,1618,177,2136,1894,6147,1988,1941,2010,
1995,391,2033,88,2035,176,102,3645,368,594,
409,2924,35,1032,32,718,1570,27,30,31,
1052,1067,26,28,1409,296,25,23,50,1467,
106,76,77,108,1510,1751,1715,1939,4585,1885,
177,2389,1894,5176,1988,1941,2010,1995,348,2033,
1531,2035,176,157,35,2080,313,191,407,2683,
35,1032,32,718,1087,27,30,31,1052,1067,
26,28,1409,296,25,23,50,1467,106,76,
77,108,1510,1751,1715,1939,1895,2461,35,312,
1894,1618,1988,1941,2010,1995,93,2033,2790,2042,
197,157,35,1108,425,2407,35,1032,32,718,
405,27,30,31,1052,1067,26,28,1409,296,
25,23,50,1467,106,76,77,108,1510,1751,
1715,1939,3136,49,177,5723,1894,266,1988,1941,
2010,1995,2364,2033,46,2035,176,157,35,2080,
3368,175,484,363,2684,281,264,265,1788,35,
1032,32,1513,889,40,30,31,1052,1067,2924,
35,1032,32,718,2426,27,30,31,1052,1067,
26,28,1409,296,25,23,50,1467,106,76,
77,108,1510,1751,1715,1939,70,61,177,155,
1894,4928,1988,1941,2010,1995,1087,2033,2389,2035,
176,157,35,1108,425,188,2924,35,1032,32,
718,466,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,1939,468,332,177,155,1894,3488,1988,
1941,2010,1995,365,2033,1219,2035,176,157,35,
1108,425,187,2924,35,1032,32,718,2418,27,
30,31,1052,1067,26,28,1409,296,25,23,
50,1467,106,76,77,108,1510,1751,1715,1939,
489,1233,177,2389,1894,155,1988,1941,2010,1995,
1943,2033,51,2035,176,157,35,1108,425,186,
2924,35,1032,32,718,2566,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,1939,471,71,177,
458,1894,69,1988,1941,2010,1995,3206,2033,3001,
2035,176,157,35,1108,425,185,2924,35,1032,
32,718,2566,27,30,31,1052,1067,26,28,
1409,296,25,23,50,1467,106,76,77,108,
1510,1751,1715,1939,470,2820,177,97,1894,69,
1988,1941,2010,1995,871,2033,321,2035,176,157,
35,1108,425,184,2924,35,1032,32,718,2566,
27,30,31,1052,1067,26,28,1409,296,25,
23,50,1467,106,76,77,108,1510,1751,1715,
1939,469,2389,177,1398,1894,2573,1988,1941,2010,
1995,6108,2033,322,2035,176,157,35,2080,316,
183,2924,35,1032,32,718,2566,27,30,31,
1052,1067,26,28,1409,296,25,23,50,1467,
106,76,77,108,1510,1751,1715,1939,3252,55,
177,1349,1894,69,1988,1941,2010,1995,2761,2033,
332,2035,176,2102,35,2080,311,182,2924,35,
1032,32,718,2566,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
108,1510,1751,1715,1939,69,98,177,237,1894,
2173,1988,1941,2010,1995,56,2033,331,2035,176,
157,3484,2080,74,181,2924,35,1032,32,718,
147,27,30,31,1052,1067,26,28,1409,296,
25,23,50,1467,106,76,77,108,1510,1751,
1715,1939,69,227,177,1630,1894,2545,1988,1941,
2010,1995,314,2033,340,2035,176,2102,35,2080,
3485,180,2924,35,1032,32,718,2566,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,1939,69,
3077,177,1336,1894,3270,1988,1941,2010,1995,2004,
2033,3191,2035,176,157,35,2080,3489,179,2924,
35,1032,32,718,2567,27,30,31,1052,1067,
26,28,1409,296,25,23,50,1467,106,76,
77,108,1510,1751,1715,1939,69,2328,177,405,
1894,704,1988,1941,2010,1995,1489,2033,419,2035,
176,157,35,2080,566,178,2924,35,1032,32,
718,1338,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,1939,2540,1910,177,1456,1894,69,1988,
1941,2010,1995,2824,2033,1045,2035,176,157,35,
1108,425,192,2924,35,1032,32,718,1724,27,
30,31,1052,1067,26,28,1409,296,25,23,
50,1467,106,76,77,108,1510,1751,1715,1939,
308,586,177,2529,1894,491,1988,1941,2010,1995,
228,2033,3133,2035,176,157,35,1108,425,140,
3045,35,1032,32,718,1374,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,2938,308,762,162,
2600,1243,35,1032,32,4230,3474,27,30,31,
1052,1067,375,28,2738,2927,2737,2950,2361,4235,
931,3533,330,2941,376,3108,427,464,1607,273,
296,3074,3111,3173,161,173,3045,35,1032,32,
718,379,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,2938,69,69,162,1107,266,2826,1471,
1635,310,3249,355,901,357,2326,2032,350,891,
1985,2927,2888,2950,2935,274,264,265,2505,2941,
349,3108,4228,1618,2505,1775,2401,3074,3111,3173,
161,172,3045,35,1032,32,718,1169,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,2938,2889,
2677,162,1788,35,1032,32,2677,1704,2707,30,
31,1052,1067,343,346,1307,69,2927,61,2950,
3250,4235,5114,2437,412,2941,934,3108,1800,2394,
412,2494,3377,3074,3111,3173,161,171,3045,35,
1032,32,718,379,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
108,1510,1751,1715,2938,475,3745,162,645,1243,
35,1032,32,4230,3474,27,30,31,1052,1067,
375,28,2136,2927,1984,2950,1968,35,490,3684,
5769,2941,544,3108,2505,479,369,493,2505,3074,
3111,3173,161,170,3045,35,1032,32,718,1894,
27,30,31,1052,1067,26,28,1409,296,25,
23,50,1467,106,76,77,108,1510,1751,1715,
2938,1894,410,162,2399,266,3004,2433,3259,534,
2677,355,901,357,359,2540,350,891,1982,2927,
586,2950,594,284,264,265,2505,2941,2666,3108,
3071,386,157,3589,3358,3074,3111,3173,161,169,
3045,35,1032,32,718,2071,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,2938,2882,2677,162,
2274,1243,35,1032,32,4230,3474,27,30,31,
1052,1067,375,28,1885,2927,2065,2950,5176,2878,
35,312,588,2941,2673,3108,313,585,1724,637,
2540,3074,3111,3173,161,168,3045,35,1032,32,
718,2396,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,2938,2429,331,162,1894,266,428,464,
487,3565,3566,355,901,357,485,2601,350,891,
439,2927,4421,2950,2059,287,264,265,5790,2941,
3657,3108,587,2540,2094,1342,358,3074,3111,3173,
161,167,3045,35,1032,32,718,2637,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,2938,2684,
1894,162,1877,2243,35,1032,32,5052,1561,27,
30,31,1052,1067,56,28,443,2927,667,2950,
2461,35,315,430,464,2941,89,3108,215,102,
5700,1232,3190,3074,3111,3173,161,166,3045,35,
1032,32,718,1169,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
108,1510,1751,1715,2938,1822,467,162,1710,35,
1032,32,4441,417,27,30,31,1052,1067,58,
28,1913,2891,2927,2952,2950,429,464,42,3248,
2505,2941,233,3108,1232,1906,1232,3190,1791,3074,
3111,3173,161,165,3045,35,1032,32,718,486,
27,30,31,1052,1067,26,28,1409,296,25,
23,50,1467,106,76,77,108,1510,1751,1715,
2938,2597,3205,162,1788,35,1032,32,364,371,
3025,30,31,1052,1067,2891,2319,2891,69,2927,
2432,2950,1001,4235,2953,35,565,2941,69,3108,
60,1232,585,2630,2440,3074,3111,3173,161,164,
3045,35,1032,32,718,379,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,2938,1825,1894,162,
645,3164,371,3166,371,69,1618,2091,589,1518,
2693,1902,2891,3377,69,2927,2154,2950,1570,4235,
753,1618,1232,2941,2340,3108,1518,585,24,2141,
3377,3074,3111,3173,161,163,3105,35,1032,32,
718,379,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,2938,2136,2667,162,645,266,370,371,
69,69,2420,2891,69,1266,2952,368,1518,5768,
2136,2927,3377,2950,61,278,264,265,5964,2941,
2346,3108,61,2402,4600,2637,6048,3074,3111,3173,
161,160,3165,35,1032,32,718,4666,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,1939,366,
371,177,2136,1894,335,1988,1941,2010,1995,1561,
2033,61,2035,176,925,6055,368,1894,222,3279,
35,1032,32,718,2505,27,30,31,1052,1067,
26,28,1409,296,25,23,50,1467,106,76,
77,108,1510,1751,1715,1939,2428,1849,319,2505,
1894,1386,1988,1941,2010,1995,94,2033,1894,2042,
197,3279,35,1032,32,718,3362,27,30,31,
1052,1067,26,28,1409,296,25,23,50,1467,
106,76,77,108,1510,1751,1715,1939,69,44,
3248,2677,1894,69,1988,1941,2010,1995,4727,2033,
69,2042,197,69,69,1429,69,2327,723,1316,
61,2399,2939,1729,6189,587,2637,1106,3279,35,
1032,32,718,460,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
108,1510,1751,1715,1939,69,1017,3349,2508,1894,
5781,1988,1941,2010,1995,255,2033,2539,2042,197,
3279,35,1032,32,718,329,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,1939,388,835,499,
2537,1894,69,1988,1941,2010,1995,5794,2033,69,
2042,197,3084,2740,2762,2568,380,653,803,385,
1017,3349,2606,2638,1894,1894,578,3279,35,1032,
32,718,459,27,30,31,1052,1067,26,28,
1409,296,25,23,50,1467,106,76,77,108,
1510,1751,1715,1939,68,53,2678,3073,1894,2637,
1988,1941,2010,1995,2644,2033,3134,2042,197,3441,
35,1032,32,718,462,27,30,31,1052,1067,
26,28,1409,296,25,23,50,1467,106,76,
77,108,1510,1751,1715,1939,324,2706,339,2607,
1894,69,1988,1941,2010,1995,2057,2033,3247,2042,
197,2787,69,2827,69,3248,2085,1126,2782,4350,
4572,2888,2637,2881,2198,3366,2637,157,35,1108,
425,1892,3387,35,1032,32,718,1894,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,2938,49,
324,212,266,1007,657,232,761,87,829,1365,
2129,863,266,3587,3702,1929,2446,2927,577,2950,
281,264,265,2246,2637,2941,1532,3108,2628,3366,
284,264,265,3074,3479,3333,35,1032,32,718,
1894,27,30,31,1052,1067,26,28,1409,296,
25,23,50,1467,106,76,77,108,1510,1751,
1715,2938,1424,231,1518,266,2705,4235,3377,1896,
52,3043,2252,2886,3135,1814,2605,2947,2502,2978,
2927,2637,2950,570,264,265,2979,2739,2941,3849,
3108,3279,35,1032,32,718,3436,27,30,31,
1052,1067,26,28,1409,296,25,23,50,1467,
106,76,77,108,1510,1751,1715,1939,2136,2637,
338,2637,1894,3194,1988,1941,2822,3333,35,1032,
32,718,368,27,30,31,1052,1067,26,28,
1409,296,25,23,50,1467,106,76,77,108,
1510,1751,1715,2938,2106,2786,3009,3129,235,3103,
233,3101,5938,3195,87,397,4235,3067,3099,3193,
3219,2637,2927,2637,2950,3220,173,3234,2746,3288,
2941,1894,3428,3279,35,1032,32,718,379,27,
30,31,1052,1067,26,28,1409,296,25,23,
50,1467,106,76,77,108,1510,1751,1715,1939,
334,2178,4242,3365,1894,1894,1988,2828,3333,35,
1032,32,718,1894,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
108,1510,1751,1715,2938,2333,3249,3342,2965,2715,
6984,6984,6984,90,2637,6984,2637,6984,6984,6984,
6984,6984,6984,2927,1894,2950,3279,35,1032,32,
718,3433,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,1939,256,3163,226,6984,1894,1894,2748,
3333,35,1032,32,718,1894,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,2938,6984,67,6984,
6984,6984,6984,6984,6984,66,6984,6984,6984,6984,
6984,6984,6984,6984,6984,2927,6984,3419,3279,35,
1032,32,718,6984,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
108,1510,1751,1715,1939,6984,4445,1894,1894,2811,
3279,35,1032,32,718,6984,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,1939,65,64,6984,
6984,2814,3333,35,1032,32,718,6984,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,2938,1743,
35,1032,32,4230,1400,27,30,31,1052,1067,
375,28,3333,35,1032,32,718,3425,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,2938,1820,
35,1032,32,4230,6182,27,30,31,1052,1067,
375,28,1360,35,1032,32,4804,3426,27,30,
31,1052,1067,375,28,2671,2707,1894,6984,387,
1471,355,901,357,6984,1894,350,891,6984,388,
1894,69,6984,6984,1894,2497,1471,6984,826,157,
35,1108,425,189,6984,6984,143,55,380,653,
803,385,3531,6984,234,54,2136,1894,755,189,
101,355,901,357,3309,592,350,891,1668,388,
369,49,6984,6984,355,901,357,6984,2666,353,
891,6984,2129,1547,6984,6984,6984,488,380,653,
803,385,6984,3279,35,1032,32,718,2531,27,
30,31,1052,1067,26,28,1409,296,25,23,
50,1467,106,76,77,108,1510,1751,1715,2626,
3279,35,1032,32,718,6984,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,2664,6984,6984,6984,
6984,402,3279,35,1032,32,718,6984,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,1751,1715,2676,3279,
35,1032,32,718,6984,27,30,31,1052,1067,
26,28,1409,296,25,23,50,1467,106,76,
77,108,1510,1751,1715,2692,3279,35,1032,32,
718,6984,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,1510,
1751,1715,3414,3279,35,1032,32,718,6984,27,
30,31,1052,1067,26,28,1409,296,25,23,
50,1467,106,76,77,108,1510,1751,1715,3416,
3279,35,1032,32,718,6984,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,3418,1221,35,3482,
32,4804,3474,27,30,31,1052,1067,375,28,
3279,35,1032,32,718,6984,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,108,1510,1751,1715,3916,6984,1894,69,
243,35,1108,425,1471,3495,35,1108,425,4742,
6984,2136,3302,6984,6984,6984,6984,1471,271,296,
157,35,1108,425,1894,368,6984,189,414,355,
901,357,49,2671,350,891,2880,308,600,1894,
189,1894,6984,2129,1377,69,1592,6984,6984,195,
1471,6984,49,6984,4961,3902,266,6984,6984,6984,
3364,189,6984,2129,2223,6984,6984,2188,6984,5023,
3372,5085,213,189,269,264,265,3279,35,1032,
32,718,3476,27,30,31,1052,1067,26,28,
1409,296,25,23,50,1467,106,76,77,108,
1510,1751,2695,157,35,1108,425,6984,6984,6984,
6984,309,229,6984,6984,276,279,282,627,707,
2155,35,1032,32,4230,3474,27,30,31,1052,
1067,375,28,6984,1894,49,454,456,3481,1351,
753,1546,2484,5866,285,6984,2129,2948,1466,35,
3482,32,4230,3474,27,30,31,1052,1067,375,
28,6984,6984,2641,2556,3279,35,1032,32,718,
2616,27,30,31,1052,1067,26,28,1409,296,
25,23,50,1467,106,76,77,108,1510,1751,
2732,259,355,901,357,2250,600,350,891,69,
1471,69,6984,6984,1471,2780,1471,4472,6984,349,
6241,157,35,1108,425,1894,1894,6984,262,189,
355,901,357,193,6984,350,891,189,3372,189,
213,6247,230,2677,6984,387,3708,1592,3715,237,
249,903,1894,49,6984,3109,3666,236,246,247,
248,250,6984,1,2129,1476,2436,202,600,6984,
69,4235,342,346,1307,1471,2250,6984,6984,6984,
201,1471,5209,216,200,203,204,205,206,207,
262,189,6984,379,3664,388,6984,6984,189,6984,
3372,3567,213,69,193,2677,6984,3787,1471,6984,
3275,237,249,903,380,653,803,385,1362,236,
246,247,248,250,2531,6984,6984,6984,6984,202,
6984,189,6984,6984,6984,6984,6984,455,456,3481,
3788,6984,201,6984,214,217,200,203,204,205,
206,207,1511,35,1032,32,4230,1400,27,30,
31,1052,1067,375,28,1413,35,1032,32,4804,
6984,27,30,31,1052,1067,375,28,6984,6984,
1974,3450,6984,6984,3377,6984,6984,6984,6984,6984,
6984,6984,3279,35,1032,32,718,4483,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,1510,2534,6984,6984,2136,
6984,6984,6984,6984,355,901,357,6984,6984,350,
891,6984,388,369,2136,6984,6984,355,901,357,
6984,589,351,891,6984,388,2188,6984,4600,6984,
3377,380,653,803,385,6984,6984,6984,6984,2126,
6984,590,6984,6984,382,653,803,385,3279,35,
1032,32,718,6984,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
108,1510,2537,345,6984,6984,6984,6984,600,6984,
2136,6984,6984,6984,2393,6984,1388,2781,6984,4235,
6984,4235,4235,6984,369,6984,6984,6984,6984,6984,
262,189,243,35,1108,425,388,6984,6984,6984,
3372,3849,213,3849,3849,2677,6984,6984,6984,6984,
96,237,249,903,6984,382,653,803,385,236,
246,247,248,250,49,431,6984,6984,6984,202,
600,6984,69,6984,6984,2129,2151,1471,1388,6984,
6984,6984,201,4235,6984,3588,200,203,204,205,
206,207,262,189,243,35,1108,425,6984,2235,
189,6984,3372,6984,213,3849,6984,2677,6984,1753,
6984,6984,6984,237,249,903,6984,542,6984,396,
542,236,246,247,248,250,49,517,6984,6984,
6984,202,600,6984,3591,2245,2268,2129,2288,541,
2393,6984,541,6984,201,4235,6984,211,200,203,
204,205,206,207,262,189,501,35,1108,425,
6984,2188,6984,6984,3372,539,213,3849,539,2677,
6984,6984,6984,6984,6984,237,249,903,6984,6984,
6984,396,6984,236,246,247,248,250,49,603,
6984,6984,6984,202,600,6984,3625,2245,2268,2129,
47,652,6984,6984,3564,6984,201,6984,6984,209,
200,203,204,205,206,207,262,189,243,35,
1108,425,6984,2750,2250,6984,3372,6984,213,1471,
69,2677,6984,6984,6984,1471,6984,237,249,903,
6984,6984,6984,542,6984,236,246,247,248,250,
49,689,193,6984,6984,202,600,6984,189,2250,
6984,2129,47,6984,1471,541,6984,4446,201,6984,
6984,210,200,203,204,205,206,207,262,189,
2292,35,1108,425,6984,740,6984,193,3372,6984,
213,540,6984,2677,6984,6984,6984,6984,6984,237,
249,903,6984,6984,6984,6984,6984,236,246,247,
248,250,49,775,6984,6984,6984,202,600,6984,
6984,2250,6984,2129,2861,6984,1471,6984,6984,3917,
201,6984,6984,220,200,203,204,205,206,207,
262,189,501,35,1108,425,6984,2235,2250,193,
3372,6984,213,1471,6984,2677,6984,6984,6984,6984,
6984,237,249,903,3925,6984,6984,6984,6984,236,
246,247,248,250,49,861,193,6984,6984,202,
600,6984,6984,6984,6984,2129,2876,6984,6984,6984,
6984,6984,201,6984,6984,3658,200,203,204,205,
206,207,262,189,501,35,1108,425,6984,5775,
6984,6984,3372,6984,213,6984,6984,2677,6984,6984,
6984,6984,6984,237,249,903,3930,6984,6984,6984,
6984,236,246,247,248,250,49,947,6984,6984,
6984,202,600,6984,6984,6984,6984,2129,47,6984,
6984,6984,6984,3957,201,6984,6984,225,200,203,
204,205,206,207,262,189,243,35,1108,425,
6984,2864,6984,6984,3372,6984,213,6984,69,2677,
6984,6984,6984,600,6984,237,249,903,6984,6984,
6984,6984,6984,236,246,247,248,250,49,1033,
6984,6984,6984,202,600,379,189,6984,6984,2129,
47,6984,6984,6984,6984,2928,201,6984,6984,219,
200,203,204,205,206,207,262,189,6984,6984,
645,6984,6984,1671,6984,6984,3372,6984,213,6984,
6984,2677,6984,6984,6984,6984,6984,237,249,903,
6984,6984,6984,6984,2730,236,246,247,248,250,
6984,6984,6984,6984,6984,202,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,201,6984,
6984,228,200,203,204,205,206,207,3279,35,
1032,32,718,6984,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
108,2548,3279,35,1032,32,718,6984,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,108,2575,3279,35,1032,32,
718,6984,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,108,2600,
3593,35,554,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,271,296,3279,35,1032,32,718,
6984,27,30,31,1052,1067,26,28,1409,296,
25,23,50,1467,106,76,77,85,6984,6984,
6984,6984,6984,6984,6984,6984,3279,2082,1032,2176,
718,266,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,106,76,77,84,269,
264,265,3279,35,1032,32,718,6984,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,83,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
276,279,282,627,707,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,2286,2946,3361,3371,6159,3279,
35,1032,32,718,6984,27,30,31,1052,1067,
26,28,1409,296,25,23,50,1467,106,76,
77,82,3279,35,1032,32,718,6984,27,30,
31,1052,1067,26,28,1409,296,25,23,50,
1467,106,76,77,81,6984,6984,6984,563,564,
568,3279,35,1032,32,718,6984,27,30,31,
1052,1067,26,28,1409,296,25,23,50,1467,
106,76,77,80,3424,3279,35,1032,32,718,
6984,27,30,31,1052,1067,26,28,1409,296,
25,23,50,1467,106,76,77,79,3279,35,
1032,32,718,6984,27,30,31,1052,1067,26,
28,1409,296,25,23,50,1467,106,76,77,
78,2984,35,1032,32,718,6984,27,30,31,
1052,1067,26,28,1409,296,25,23,50,1467,
106,76,77,104,3279,35,1032,32,718,6984,
27,30,31,1052,1067,26,28,1409,296,25,
23,50,1467,106,76,77,110,3279,35,1032,
32,718,6984,27,30,31,1052,1067,26,28,
1409,296,25,23,50,1467,106,76,77,109,
3279,35,1032,32,718,6984,27,30,31,1052,
1067,26,28,1409,296,25,23,50,1467,106,
76,77,107,3279,35,1032,32,718,6984,27,
30,31,1052,1067,26,28,1409,296,25,23,
50,1467,106,76,77,105,3225,35,1032,32,
718,6984,27,30,31,1052,1067,26,28,1409,
296,25,23,50,1467,86,76,77,1576,243,
35,1108,425,4235,6984,2055,35,1108,425,6984,
6984,1843,6984,6984,6984,6984,4235,6984,6984,6984,
243,35,1108,425,1932,262,6984,6984,6984,4235,
6984,49,6984,157,35,1108,425,308,262,6984,
6984,6984,2129,47,6984,6984,239,249,903,6984,
6984,262,49,6984,238,246,247,248,250,239,
249,903,6984,2129,47,49,1718,238,246,247,
248,250,239,249,903,6984,2129,2619,6984,6984,
238,246,247,248,250,6984,6984,1765,240,242,
244,3263,6984,251,241,243,3544,35,1108,425,
4742,240,242,244,3263,6984,251,241,243,272,
296,3413,6984,6984,240,242,244,3263,6984,251,
241,243,6984,6984,6984,6984,6984,6984,308,1869,
6984,6047,6984,6984,6984,6984,6984,72,6984,6984,
6984,6984,1916,6984,6047,6984,6984,266,6984,6984,
6984,6984,6984,6984,6984,1963,6984,6047,6984,6984,
6984,6984,6984,6984,6984,270,264,265,1360,35,
1032,32,4804,6984,27,30,31,1052,1067,375,
28,2066,35,1032,32,4230,4187,27,30,31,
1052,1067,375,28,2144,35,1108,425,6984,6984,
2021,6984,309,6984,6984,4235,277,280,283,627,
707,6984,6984,6984,6984,6984,1665,6984,6984,6984,
440,4235,2136,6984,6984,6984,49,262,6984,6984,
6984,6984,6984,6984,6984,286,369,2129,47,6984,
355,901,357,262,6984,351,891,6984,239,249,
903,6984,6984,352,3347,357,238,246,247,248,
250,647,6984,6984,239,249,903,6984,6984,6984,
6984,6984,238,246,247,248,250,1754,243,35,
1108,425,4235,6984,6984,243,35,1108,425,6984,
240,242,244,3263,6984,582,241,243,157,35,
1108,425,6984,6984,262,6984,240,242,244,3263,
49,581,241,243,6984,6984,6984,49,6984,6984,
6984,2129,47,6984,6984,239,249,903,2129,47,
49,6984,6984,238,246,247,248,250,2110,6984,
6984,2129,2884,4235,6984,1812,6984,6984,6984,6984,
6984,2199,1859,2624,6984,6984,4235,6984,6984,6984,
6984,6984,6984,6984,6984,262,6984,240,242,244,
3263,6984,252,241,243,6984,6984,1179,262,6984,
6984,4333,4235,6984,6984,6984,239,249,903,3642,
35,554,6984,6984,238,246,247,248,250,239,
249,903,272,296,262,6984,6984,238,246,247,
248,250,1378,6984,6984,6984,3377,4235,6984,2467,
35,1108,425,6984,6984,1210,444,5951,240,242,
244,3263,6984,341,241,243,6984,6984,6984,3849,
266,240,242,244,3263,1296,536,241,243,4333,
4235,49,6984,6984,6984,6984,6984,6984,270,264,
265,6984,2129,47,6984,6984,2136,445,446,447,
3263,1378,262,6984,6984,3377,4235,2826,6984,6984,
368,6984,600,6984,6984,6984,993,6984,6984,6984,
6984,69,3250,1210,444,5951,600,6984,3849,277,
280,283,627,707,379,189,6984,6984,6984,6984,
4585,6984,6984,6984,221,396,6984,6984,379,189,
6984,69,6984,6984,6984,2136,600,6984,3274,2601,
3077,2245,2268,6984,6984,445,446,447,3263,368,
6984,6984,6984,645,6984,6984,6984,6984,379,189,
6984,6984,6984,6984,448,450,2670,6984,2928,6984,
3250,4235,6984,6984,6984,69,6984,3118,6984,4666,
4235,6984,6984,645,396,69,6984,563,564,569,
600,1131,69,379,6215,6984,593,600,6984,3077,
2245,2268,379,223,69,6984,6984,3387,6984,4235,
6984,69,379,189,6984,6984,600,6984,645,379,
189,6984,221,69,6984,6984,6984,645,4235,221,
69,379,448,451,6984,4235,6984,2601,379,189,
6984,6984,596,6984,2601,6984,6984,6984,221,6984,
379,2366,6984,6984,6984,6984,645,379,6984,6984,
6984,6984,6984,2601,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,645,6984,6984,6984,6984,
2423,6984,645,6984,3583,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,3674,
6984,4254,6984,6984,6984,6984,597,6984,4269,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,4271,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,3935,6984,0,758,1,0,919,1,
0,39,1,6999,0,39,1,6998,0,799,
1,0,39,6999,0,39,6998,0,1153,354,
0,1309,29,0,477,1361,0,491,1363,0,
6999,48,0,6998,48,0,38,814,0,38,
6999,0,38,6998,0,6990,1,0,6989,1,
0,318,431,0,318,323,0,7252,275,0,
7251,275,0,7358,275,0,7357,275,0,7279,
275,0,7278,275,0,7277,275,0,7276,275,
0,7275,275,0,7274,275,0,7273,275,0,
7272,275,0,7291,275,0,7290,275,0,7289,
275,0,7288,275,0,7287,275,0,7286,275,
0,7285,275,0,7284,275,0,7283,275,0,
7282,275,0,7281,275,0,39,275,6999,0,
39,275,6998,0,7022,275,0,1309,424,0,
4052,126,0,35,33,0,1,481,0,495,
1165,0,494,1305,0,47,37,0,7022,1,
0,39,1,0,639,91,0,32,34,0,
39,814,0,1,1117,0,1,7291,0,1,
7290,0,1,7289,0,1,7288,0,1,7287,
0,1,7286,0,1,7285,0,1,7284,0,
1,7283,0,1,7282,0,1,7281,0,43,
7020,0,43,37,0,538,3262,0,7022,1,
263,0,39,1,263,0,263,453,0,6999,
37,0,6998,37,0,271,4425,0,425,32,
0,424,29,0,4052,128,0,4052,127,0,
1,5746,0,1,5385,0,1,5442,0,1,
5509,0,1,5532,0,1,5561,0,1,5585,
0,1,5608,0,1,2284,0,1,5416,0,
1,7006,0,1,7005,0,1,7004,0,1,
7003,0,1,7002,0,1,7001,0,1,7000,
0,1,1119,0,1,1163,0,1,1178,0,
1,1203,0,1,1282,0,1,672,0,367,
482,0,6994,442,0,6993,442,0,1,2469,
0,1,814,0,263,452,0,1,92,0,
275,6999,0,275,6998,0,7020,45,0,37,
45,0,1,367,0,2,6999,37,0,2,
6998,37,0,6999,36,0,6998,36,0,538,
5986,0,1,263,0,367,95,0,35,73,
0,263,254,0,313,4934,0,263,253,0,
6996,1,0,6992,1,0,1,263,3573,0,
6993,263,0,3574,263,0,6996,420,0,6995,
420,0,3586,263,0,10,12,0,8,10,
12,0,3656,227,0,218,5147,0,3659,420,
0,8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@Override
public final int baseAction(int index) { return baseAction[index]; }
public final static char lhs[] = baseAction;
@Override
public final int lhs(int index) { return lhs[index]; };
public interface TermCheck {
public final static byte termCheck[] = {0,
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
20,21,22,23,24,25,26,27,28,29,
30,31,32,33,34,35,36,37,38,39,
40,41,42,43,44,45,46,47,48,49,
50,51,52,53,0,0,56,57,58,59,
0,61,62,63,4,65,66,67,0,69,
0,1,2,73,74,75,76,77,78,79,
80,81,82,83,84,85,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,53,
86,87,56,57,58,59,0,61,62,63,
95,65,66,67,0,69,0,1,2,73,
74,75,76,77,78,79,80,81,82,83,
84,85,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,53,0,0,56,57,
58,59,0,61,62,63,0,65,66,67,
94,69,0,1,2,73,74,75,76,77,
78,79,80,81,82,83,84,85,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,53,0,0,56,57,58,59,0,61,
62,63,96,65,66,67,94,69,92,93,
0,0,74,75,76,77,78,79,80,81,
82,83,84,85,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,53,86,87,
56,57,58,59,0,61,62,63,4,65,
66,67,94,69,101,102,86,87,74,75,
76,77,78,79,80,81,82,83,84,85,
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,53,0,0,56,57,58,59,
0,61,62,63,4,65,66,67,0,69,
0,1,2,5,74,75,76,77,78,79,
80,81,82,83,84,85,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,53,
86,87,56,57,58,59,0,61,62,63,
95,65,66,67,0,69,0,0,0,0,
74,75,76,77,78,79,80,81,82,83,
84,85,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,53,0,70,56,57,
58,59,0,61,62,63,0,65,66,67,
94,69,86,87,86,87,74,75,76,77,
78,79,80,81,82,83,84,85,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,53,86,87,56,57,58,59,0,61,
62,63,0,65,66,67,0,69,92,93,
0,0,74,75,76,77,78,79,80,81,
82,83,84,85,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,53,0,68,
56,57,58,59,0,61,62,63,4,65,
66,67,0,69,92,93,86,87,74,75,
76,77,78,79,80,81,82,83,84,85,
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,53,86,87,56,57,58,59,
0,61,62,63,0,65,66,67,0,69,
0,1,2,0,74,75,76,77,78,79,
80,81,82,83,84,85,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,53,
0,68,56,57,58,59,0,61,62,63,
4,65,66,67,0,69,0,1,2,95,
74,75,76,77,78,79,80,81,82,83,
84,85,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,53,0,0,56,57,
58,59,6,61,62,63,96,65,66,67,
0,69,0,1,2,0,74,75,76,77,
78,79,80,81,82,83,84,85,0,1,
2,3,4,5,6,7,8,0,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,55,40,41,
42,43,44,45,46,47,48,49,50,51,
52,53,0,68,56,57,58,59,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,0,1,2,0,4,39,0,41,
0,1,2,3,4,5,6,7,8,0,
0,0,0,55,56,57,58,5,0,61,
62,63,0,1,2,3,4,120,6,71,
8,73,34,35,23,24,0,0,1,2,
3,4,5,6,7,8,88,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
60,71,114,115,116,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,0,
0,99,100,3,39,0,41,0,3,9,
5,0,7,0,9,0,1,2,0,4,
55,56,57,58,0,7,61,62,63,0,
1,2,3,4,0,6,71,8,73,34,
35,36,37,0,39,34,35,0,1,2,
0,4,5,88,7,0,9,0,0,54,
60,3,55,0,64,60,9,0,68,64,
55,0,72,68,3,70,71,72,73,114,
115,116,0,1,2,3,4,5,6,7,
8,86,87,0,89,90,91,92,93,94,
95,96,97,98,99,100,101,102,103,104,
105,106,107,108,109,110,111,112,60,72,
120,54,117,118,119,0,92,93,3,72,
5,64,7,70,9,0,1,2,3,4,
97,6,60,8,97,0,1,2,3,4,
5,96,7,0,97,0,89,90,0,34,
35,36,37,5,39,7,0,22,23,24,
25,26,27,28,29,30,31,32,33,54,
0,1,2,3,4,60,6,0,8,64,
97,4,5,68,7,70,71,72,73,0,
0,0,0,1,2,60,71,54,6,64,
8,86,87,68,89,90,91,92,93,94,
95,96,97,98,99,100,101,102,103,104,
105,106,107,108,109,110,111,112,0,0,
60,0,117,118,119,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,0,
1,2,3,4,39,6,41,8,0,1,
2,91,4,5,55,7,95,0,98,0,
55,56,57,58,0,64,61,62,63,68,
65,0,1,2,0,4,0,3,73,22,
23,24,25,26,27,28,29,30,31,32,
33,0,0,88,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,64,70,
0,1,2,39,4,41,6,0,8,0,
1,2,0,4,70,6,70,8,54,55,
56,57,58,0,0,61,62,63,0,65,
101,102,103,104,105,106,107,108,109,110,
111,112,0,1,2,3,4,5,6,7,
8,0,88,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,0,1,2,
0,68,39,6,41,8,0,7,70,0,
1,2,60,4,5,54,7,0,55,56,
57,58,70,0,61,62,63,4,65,0,
1,2,3,4,0,6,73,8,9,101,
102,103,104,105,106,107,108,109,110,111,
112,88,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,0,70,54,60,
0,39,0,41,0,0,1,2,4,4,
5,72,7,0,0,0,0,55,56,57,
58,0,9,61,62,63,22,65,7,0,
34,35,0,89,90,73,22,23,24,25,
26,27,28,29,30,31,32,33,0,0,
88,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,72,54,0,1,2,
39,4,41,0,1,2,64,4,5,70,
7,0,54,0,0,0,55,56,57,58,
0,96,61,62,63,10,65,0,114,115,
116,89,90,0,73,22,23,24,25,26,
27,28,29,30,31,32,33,89,90,88,
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,0,1,2,60,0,39,
6,41,4,60,0,0,1,2,3,4,
0,6,91,8,9,55,56,57,58,98,
22,61,62,63,0,65,22,23,24,25,
26,27,28,29,30,31,32,33,114,115,
116,0,1,2,39,0,0,0,88,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,0,1,2,0,41,39,3,
41,0,68,0,0,1,2,3,4,0,
6,91,8,9,55,56,57,58,98,64,
61,62,63,68,65,22,23,24,25,26,
27,28,29,30,31,32,33,0,1,2,
3,4,5,39,7,0,0,88,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,0,1,2,0,4,39,6,41,
8,0,0,1,2,0,4,60,6,0,
8,0,7,55,56,57,58,0,9,61,
62,63,0,65,0,1,2,3,4,5,
6,7,8,0,10,11,12,13,14,15,
16,17,18,19,20,21,88,55,0,1,
2,0,1,2,0,1,2,55,34,35,
36,37,38,9,40,54,42,43,44,45,
46,47,48,49,50,51,52,53,0,1,
2,72,71,59,6,0,0,0,64,3,
66,67,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,66,67,0,66,67,3,
0,1,2,69,91,5,34,35,36,37,
38,98,40,55,42,43,44,45,46,47,
48,49,50,51,52,53,60,60,0,64,
64,59,0,0,68,0,3,9,0,0,
0,69,10,5,9,73,0,1,2,3,
4,5,6,7,8,55,10,11,12,13,
14,15,16,17,18,19,20,21,0,1,
2,0,0,41,39,0,0,5,3,0,
34,35,36,37,38,0,40,55,42,43,
44,45,46,47,48,49,50,51,52,53,
0,1,2,68,64,59,0,1,2,0,
1,2,66,67,0,1,2,3,4,5,
6,7,8,55,10,11,12,13,14,15,
16,17,18,19,20,21,0,99,100,54,
64,0,71,64,0,9,118,0,34,35,
36,37,38,9,40,55,42,43,44,45,
46,47,48,49,50,51,52,53,0,1,
2,99,100,59,89,90,0,0,0,0,
66,67,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,68,0,0,0,72,68,
3,64,0,69,9,9,34,35,36,37,
38,9,40,55,42,43,44,45,46,47,
48,49,50,51,52,53,0,1,2,0,
0,59,64,4,0,0,0,71,3,9,
71,69,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,68,0,0,0,73,73,
3,69,38,0,9,9,34,35,36,37,
38,55,40,54,42,43,44,45,46,47,
48,49,50,51,52,53,0,1,2,0,
0,59,0,73,39,39,70,0,9,9,
3,69,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
18,19,20,21,0,0,0,64,3,39,
0,0,0,3,0,9,34,35,36,37,
38,55,40,9,42,43,44,45,46,47,
48,49,50,51,52,53,0,0,0,0,
3,72,5,6,7,0,74,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,25,26,27,28,29,30,31,32,33,
60,34,35,36,37,71,38,40,72,0,
0,0,3,71,3,0,0,73,9,0,
10,54,86,87,55,0,0,60,0,10,
118,64,4,66,67,68,0,70,22,23,
24,25,26,27,28,29,30,31,32,33,
75,41,0,86,87,0,89,90,91,92,
93,94,95,96,9,55,99,100,101,60,
103,104,105,106,107,108,109,110,111,112,
61,72,54,68,117,0,1,2,3,4,
5,6,7,8,39,10,11,12,13,14,
15,16,17,18,19,20,21,0,1,2,
0,0,60,3,3,0,0,0,0,34,
35,36,37,38,0,40,0,42,43,44,
45,46,47,48,49,50,51,52,53,22,
23,24,25,26,27,28,29,30,31,32,
33,66,67,0,1,2,3,4,5,6,
7,8,55,10,11,12,13,14,15,16,
17,18,19,20,21,60,0,59,54,3,
54,0,0,1,2,0,0,34,35,36,
37,38,0,40,0,42,43,44,45,46,
47,48,49,50,51,52,53,0,0,0,
3,3,59,0,1,2,3,4,5,6,
7,8,0,10,11,12,13,14,15,16,
17,18,19,20,21,54,0,55,0,54,
54,3,0,0,0,64,54,34,35,36,
37,38,10,40,0,42,43,44,45,46,
47,48,49,50,51,52,53,0,0,0,
89,90,0,60,0,1,2,3,4,5,
6,7,8,41,10,11,12,13,14,15,
16,17,18,19,20,21,0,55,54,3,
0,0,0,0,62,0,0,4,34,35,
36,37,38,0,40,121,42,43,44,45,
46,47,48,49,50,51,52,53,0,0,
0,3,0,59,0,1,2,3,4,5,
6,7,8,71,10,11,12,13,14,15,
16,17,18,19,20,21,54,54,0,54,
54,0,0,0,0,0,64,54,34,35,
36,37,38,0,40,0,42,43,44,45,
46,47,48,49,50,51,52,53,0,0,
0,89,90,59,0,1,2,3,4,5,
6,7,8,71,10,11,12,13,14,15,
16,17,18,19,20,21,54,54,54,0,
0,0,0,0,0,3,68,97,34,35,
36,37,38,0,40,70,42,43,44,45,
46,47,48,49,50,51,52,53,0,0,
0,3,3,59,0,1,2,3,4,5,
6,7,8,0,10,11,12,13,14,15,
16,17,18,19,20,21,0,0,0,0,
0,3,0,0,0,0,9,54,34,35,
36,37,38,70,40,71,42,43,44,45,
46,47,48,49,50,51,52,53,0,1,
2,3,4,5,6,7,8,0,10,11,
12,13,14,15,16,17,18,19,20,21,
0,0,113,113,71,0,0,0,0,0,
9,0,34,35,36,37,38,0,40,72,
42,43,44,45,46,47,48,49,50,51,
52,53,0,1,2,3,4,5,6,7,
8,0,10,11,12,13,14,15,16,17,
18,19,20,21,0,38,0,70,0,113,
0,0,113,0,0,0,34,35,36,37,
38,0,40,72,42,43,44,45,46,47,
48,49,50,51,52,53,0,1,2,3,
4,5,6,7,8,0,10,11,12,13,
14,15,16,17,18,19,20,21,0,0,
0,70,0,0,0,0,0,0,0,0,
34,35,36,37,38,0,40,0,42,43,
44,45,46,47,48,49,50,51,52,53,
0,1,2,3,4,5,6,7,8,0,
10,11,12,13,14,15,16,17,18,19,
20,21,0,0,0,0,0,0,0,0,
0,0,0,0,34,35,36,37,38,0,
40,0,42,43,44,45,46,47,48,49,
50,51,52,53,0,1,2,0,4,0,
0,0,0,0,10,11,12,13,14,15,
16,17,18,19,20,21,22,23,24,25,
26,27,28,29,30,31,32,33,0,0,
0,0,0,0,0,41,0,0,0,0,
0,0,0,0,1,2,0,4,0,0,
56,57,58,10,11,12,13,14,15,16,
17,18,19,20,21,22,23,24,25,26,
27,28,29,30,31,32,33,0,0,0,
0,0,0,0,41,0,0,0,0,0,
0,0,0,1,2,0,0,0,0,56,
57,58,10,11,12,13,14,15,16,17,
18,19,20,21,22,23,24,25,26,27,
28,29,30,31,32,33,0,0,0,0,
0,0,0,41,0,0,0,0,0,0,
0,0,1,2,0,0,0,3,56,57,
58,10,11,12,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,28,
29,30,31,32,33,0,0,0,0,0,
36,37,41,0,1,2,3,4,5,6,
7,8,9,0,0,0,0,56,57,58,
0,0,0,0,60,22,23,24,25,26,
27,28,29,30,31,32,33,0,0,0,
0,0,39,22,23,24,25,26,27,28,
29,30,31,32,33,0,0,54,0,0,
0,0,0,60,0,1,2,3,4,5,
6,7,8,9,0,72,0,0,0,0,
0,117,0,119,0,0,22,23,24,25,
26,27,28,29,30,31,32,33,0,0,
0,0,0,39,0,0,0,0,0,0,
0,0,0,0,0,0,1,2,3,4,
5,0,7,0,60,0,0,0,0,0,
0,0,0,0,0,0,72,22,23,24,
25,26,27,28,29,30,31,32,33,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,60,0,0,0,64,
0,0,0,68,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@Override
public final int termCheck(int index) { return termCheck[index]; }
public interface TermAction {
public final static char termAction[] = {0,
6984,6946,6922,6922,6922,6922,6922,6922,6922,6962,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,6950,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,121,135,1,1,1,1,
39,2562,7192,1558,7022,3487,1,1,1,6995,
434,6998,6999,6991,2498,3580,3434,3319,3376,3569,
4713,3579,729,3578,3915,3577,10,6965,6965,6965,
6965,6965,6965,6965,6965,6965,6965,6965,6965,6965,
6965,6965,6965,6965,6965,6965,6965,6965,6965,6965,
6965,6965,6965,6965,6965,6965,6965,6965,6965,6965,
6965,6965,6965,6965,6965,6965,6965,6965,6965,6965,
6965,6965,6965,6965,6965,6965,6965,6965,6965,6965,
4307,4395,6965,6965,6965,6965,133,6965,6965,6965,
3501,6965,6965,6965,367,6965,6984,6998,6999,6965,
6965,6965,6965,6965,6965,6965,6965,6965,6965,6965,
6965,6965,8,6968,6968,6968,6968,6968,6968,6968,
6968,6968,6968,6968,6968,6968,6968,6968,6968,6968,
6968,6968,6968,6968,6968,6968,6968,6968,6968,6968,
6968,6968,6968,6968,6968,6968,6968,6968,6968,6968,
6968,6968,6968,6968,6968,6968,6968,6968,6968,6968,
6968,6968,6968,6968,6968,6968,137,432,6968,6968,
6968,6968,134,6968,6968,6968,129,6968,6968,6968,
3593,6968,6984,6583,6580,6968,6968,6968,6968,6968,
6968,6968,6968,6968,6968,6968,6968,6968,6984,6946,
6922,6922,6922,6922,6922,6922,6922,6953,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,6950,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,125,139,1,1,1,1,153,2562,
7192,1558,1324,3487,1,1,3593,6995,3790,3758,
124,333,2498,3580,3434,3319,3376,3569,4713,3579,
729,3578,3915,3577,6984,6946,6922,6922,6922,6922,
6922,6922,6922,6953,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,6950,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,4307,4395,
1,1,1,1,6984,2562,7192,1558,2663,3487,
1,1,3628,6995,1080,4229,4307,4395,2498,3580,
3434,3319,3376,3569,4713,3579,729,3578,3915,3577,
6984,6946,6922,6922,6922,6922,6922,6922,6922,6953,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,6950,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,123,136,1,1,1,1,
432,2562,7192,1558,425,3487,1,1,6984,6995,
48,6583,6580,1755,2498,3580,3434,3319,3376,3569,
4713,3579,729,3578,3915,3577,6984,6946,6922,6922,
6922,6922,6922,6922,6922,6953,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,6950,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
4307,4395,1,1,1,1,154,2562,7192,1558,
3501,3487,1,1,421,6995,122,545,141,6984,
2498,3580,3434,3319,3376,3569,4713,3579,729,3578,
3915,3577,6984,6946,6922,6922,6922,6922,6922,6922,
6922,6953,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,6950,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,145,1200,1,1,
1,1,6984,2562,7192,1558,130,3487,1,1,
3628,6995,4307,4395,4307,4395,2498,3580,3434,3319,
3376,3569,4713,3579,729,3578,3915,3577,6984,6946,
6922,6922,6922,6922,6922,6922,6922,6953,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,6950,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,4307,4395,1,1,1,1,6984,2562,
7192,1558,149,3487,1,1,6984,6995,3790,3758,
144,398,2498,3580,3434,3319,3376,3569,4713,3579,
729,3578,3915,3577,6984,6946,6922,6922,6922,6922,
6922,6922,6922,6953,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,6950,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,142,3472,
1,1,1,1,6984,2562,7192,1558,2994,3487,
1,1,6984,6995,3862,3822,4307,4395,2498,3580,
3434,3319,3376,3569,4713,3579,729,3578,3915,3577,
6984,6946,6922,6922,6922,6922,6922,6922,6922,6953,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,6950,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,4307,4395,1,1,1,1,
6984,2562,7192,1558,155,3487,1,1,6984,6995,
333,6998,6999,190,2498,3580,3434,3319,3376,3569,
4713,3579,729,3578,3915,3577,6984,6946,6922,6922,
6922,6922,6922,6922,6922,6953,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,6950,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
138,2146,1,1,1,1,6984,2562,7192,1558,
1524,3487,1,1,6984,6995,327,6998,6999,3537,
2498,3580,3434,3319,3376,3569,4713,3579,729,3578,
3915,3577,6984,3573,1,1,1,1,1,1,
1,3574,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,6993,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,6984,6984,1,1,
1,1,2000,2562,7192,1558,1324,3487,1,1,
6984,6995,37,6705,6705,552,2498,3580,3434,3319,
3376,3569,4713,3579,729,3578,3915,3577,39,6565,
6562,5188,799,5532,5416,5561,2284,6984,1216,7283,
7281,7290,7289,7285,7286,7284,7287,7288,7291,7282,
7278,7357,7358,7272,7279,7275,7251,7277,7276,7273,
7274,7252,5509,5442,5608,5585,7003,7020,5385,7419,
1163,1282,7005,1178,5746,1203,7006,7004,1119,7000,
7001,7002,6984,996,954,7420,7421,1565,6984,6772,
6772,263,6768,263,263,263,263,6776,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,323,6604,6604,6984,318,263,118,1,
6984,6555,6551,2469,6559,6902,814,6902,2284,6984,
384,372,115,6765,1,1,1,5346,6984,968,
7433,642,1,6555,6551,2469,6559,6544,814,263,
2284,453,4688,4612,7357,7358,257,345,6555,6551,
2469,6559,6902,814,6902,2284,7521,7283,7281,7290,
7289,7285,7286,7284,7287,7288,7291,7282,7278,7357,
7358,7272,7279,7275,7251,7277,7276,7273,7274,7252,
1519,3079,7456,7457,7458,6984,6772,6772,263,6768,
263,263,263,263,6884,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,6984,
1,5322,5298,4435,263,33,1,47,6693,377,
6693,120,6693,6984,6693,431,6601,6601,131,318,
6765,1,1,1,6984,3676,968,7433,642,367,
6565,6562,2469,799,150,814,263,2284,452,6693,
6693,6693,6693,394,6693,4688,4612,1,6711,6711,
6984,6708,367,7521,367,157,399,1,383,6693,
1519,960,1414,543,377,6693,399,126,377,6693,
318,6984,377,6693,6261,6693,6693,6693,6693,7456,
7457,7458,381,6565,6562,3889,799,367,814,367,
2284,6693,6693,1,6693,6693,6693,6693,6693,6693,
6693,6693,6693,6693,6693,6693,6693,6693,6693,6693,
6693,6693,6693,6693,6693,6693,6693,6693,1519,399,
377,4079,6693,6693,6693,6984,3862,3822,6717,399,
6717,6690,6717,2416,6717,1,6555,6551,2469,6559,
7377,814,1519,2284,399,37,6999,6999,6999,6999,
6999,3445,6999,6984,399,6984,4020,3993,6984,6717,
6717,6717,6717,1706,6717,1659,6984,6999,6999,6999,
6999,6999,6999,6999,6999,6999,6999,6999,6999,6717,
1,6555,6551,3889,6559,6717,814,39,2284,6717,
7379,7022,367,6717,367,6717,6717,6717,6717,6984,
111,156,38,6592,6589,6999,3079,751,6586,6999,
2284,6717,6717,6999,6717,6717,6717,6717,6717,6717,
6717,6717,6717,6717,6717,6717,6717,6717,6717,6717,
6717,6717,6717,6717,6717,6717,6717,6717,6984,37,
1519,6984,6717,6717,6717,6984,6922,6922,263,6922,
263,263,263,263,6931,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,10901,1,1,1,1,1,1,1,
6555,6551,6878,6559,263,6881,1,6824,481,1,
1,5654,1,6696,7020,6696,3537,258,5677,139,
6919,1,1,1,6984,668,2290,7229,1558,4850,
3487,6984,6565,6562,347,7022,406,2334,254,7278,
7357,7358,7272,7279,7275,7251,7277,7276,7273,7274,
7252,6984,6984,7521,6984,6922,6922,263,6922,263,
263,263,263,263,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,10901,1,1,1,1,1,1,3265,2099,
6984,6565,6562,263,799,1,814,6984,2284,6984,
6565,6562,6984,799,1222,814,1372,2284,3314,6919,
1,1,1,320,6984,2290,7229,1558,159,3487,
1080,4229,2052,2005,1958,1911,1864,1817,1770,1723,
1676,1629,403,6555,6551,3889,6559,1,814,1,
2284,29,7521,6984,6922,6922,263,6922,263,263,
263,263,6937,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
10901,1,1,1,1,1,1,6984,6998,6999,
132,7303,263,814,1,2284,6984,3676,2900,482,
39,39,1519,7022,6869,6571,6869,404,6919,1,
1,1,1277,6984,2290,7229,1558,1666,3487,1,
6555,6551,3889,6559,146,814,253,2284,6595,3382,
4275,2834,2768,2702,2636,2570,2504,2438,2372,2306,
2240,7521,6984,6922,6922,263,6922,263,263,263,
263,6931,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,10901,
1,1,1,1,1,1,119,1424,4160,1519,
6984,263,6984,1,39,92,1,1,7022,1,
6887,6598,6887,6984,259,158,6984,6919,1,1,
1,151,6990,2290,7229,1558,2350,3487,3710,547,
4688,4612,128,4133,4106,254,7278,7357,7358,7272,
7279,7275,7251,7277,7276,7273,7274,7252,148,6984,
7521,6984,6922,6922,263,6922,263,263,263,263,
6931,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,10901,1,
1,1,1,1,1,6989,4079,6984,6565,6562,
263,7022,1,95,39,39,6794,7022,6925,1027,
6925,114,4160,260,476,337,6919,1,1,1,
6984,3445,2290,7229,1558,7320,3487,356,7456,7457,
7458,4020,3993,495,254,7278,7357,7358,7272,7279,
7275,7251,7277,7276,7273,7274,7252,4133,4106,7521,
6984,6922,6922,263,6922,263,263,263,263,263,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,10901,1,1,
1,1,1,1,6984,6998,6999,1519,39,263,
2000,1,7022,6699,261,1,6555,6551,6878,6559,
113,6881,5654,6824,6994,6919,1,1,1,5677,
3022,2290,7229,1558,326,3487,7278,7357,7358,7272,
7279,7275,7251,7277,7276,7273,7274,7252,7456,7457,
7458,36,6916,6913,6993,6984,6984,6984,7521,6984,
6922,6922,263,6922,263,263,263,263,263,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,10901,1,1,1,
1,1,1,6984,10657,10382,6984,957,263,4425,
1,6984,10053,572,1,6555,6551,2469,6559,6984,
814,5654,2284,345,6919,1,1,1,5677,6121,
2290,7229,1558,4850,3487,7278,7357,7358,7272,7279,
7275,7251,7277,7276,7273,7274,7252,381,39,39,
4435,7022,367,345,367,6984,6984,7521,6984,6922,
6922,263,6922,263,263,263,263,263,1,1,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,10901,1,1,1,1,
1,1,6984,6565,6562,6984,799,263,6720,1,
2284,6984,6984,6565,6562,152,799,1519,6720,1,
2284,29,3710,6919,1,1,1,6984,194,2290,
7229,1558,6984,3487,1,6555,6551,672,799,5532,
5416,5561,2284,112,6723,6750,6756,6729,6732,6744,
6741,6747,6738,6735,6726,6753,7521,1062,6984,6998,
6999,6984,6583,6580,6984,6998,6999,2798,5509,5442,
5608,5585,7003,6996,5385,1309,1163,1282,7005,1178,
5746,1203,7006,7004,1119,7000,7001,7002,37,6705,
6705,194,461,1565,6705,6984,1,494,553,4435,
39,39,39,6565,6562,5188,799,5532,5416,5561,
2284,6978,1117,7283,7281,7290,7289,7285,7286,7284,
7287,7288,7291,7282,5631,794,91,5631,794,6714,
37,6705,6705,6995,5654,367,5509,5442,5608,5585,
7003,5677,5385,2047,1163,1282,7005,1178,5746,1203,
7006,7004,1119,7000,7001,7002,1519,6702,6984,3272,
577,1565,1,271,577,6984,6785,6988,117,6984,
6984,6959,6545,5346,6994,6991,174,6565,6562,5188,
799,5532,5416,5561,2284,7020,1117,7283,7281,7290,
7289,7285,7286,7284,7287,7288,7291,7282,43,6762,
6762,6984,116,6548,6993,1,6984,5346,6383,6984,
5509,5442,5608,5585,7003,147,5385,628,1163,1282,
7005,1178,5746,1203,7006,7004,1119,7000,7001,7002,
6984,6782,6779,4378,3273,1565,6984,10657,10382,326,
833,833,39,39,1,6555,6551,672,799,5532,
5416,5561,2284,6759,6723,6750,6756,6729,6732,6744,
6741,6747,6738,6735,6726,6753,6984,5322,5298,4160,
3306,463,2193,7533,6984,6990,6987,6984,5509,5442,
5608,5585,7003,6996,5385,7020,1163,1282,7005,1178,
5746,1203,7006,7004,1119,7000,7001,7002,6984,10787,
10787,5322,5298,1565,4133,4106,6984,6984,6984,465,
39,39,39,6565,6562,5188,799,5532,5416,5561,
2284,6956,1117,7283,7281,7290,7289,7285,7286,7284,
7287,7288,7291,7282,6390,6984,6984,6984,6989,2614,
4429,7462,1,6995,6992,6992,5509,5442,5608,5585,
7003,6940,5385,7020,1163,1282,7005,1178,5746,1203,
7006,7004,1119,7000,7001,7002,37,6705,6705,433,
1,1565,7476,424,6984,6984,328,7422,4431,6943,
1499,6959,39,6565,6562,5188,799,5532,5416,5561,
2284,6956,1117,7283,7281,7290,7289,7285,7286,7284,
7287,7288,7291,7282,1173,442,6984,6984,6991,6991,
4490,6995,1896,6984,6872,6994,5509,5442,5608,5585,
7003,1953,5385,1309,1163,1282,7005,1178,5746,1203,
7006,7004,1119,7000,7001,7002,45,6899,6899,1,
1,1565,1,6991,6875,6993,3121,6984,6990,6994,
4523,6959,39,6565,6562,5188,799,5532,5416,5561,
2284,6988,1117,7283,7281,7290,7289,7285,7286,7284,
7287,7288,7291,7282,6984,6984,6984,5970,1153,6993,
354,6984,485,6568,8,6990,5509,5442,5608,5585,
7003,6896,5385,6981,1163,1282,7005,1178,5746,1203,
7006,7004,1119,7000,7001,7002,571,1,6984,6984,
2509,6989,7484,7490,7488,227,3160,7283,7281,7290,
7289,7285,7286,7284,7287,7288,7291,7282,7278,7357,
7358,7272,7279,7275,7251,7277,7276,7273,7274,7252,
1519,7482,7483,7513,7514,2966,3934,7491,6989,1,
1,6984,4435,701,4934,486,573,6981,6595,337,
6545,7493,4307,4395,3316,6984,6984,1156,48,7320,
6987,7494,6999,2089,2127,7515,6984,7492,7278,7357,
7358,7272,7279,7275,7251,7277,7276,7273,7274,7252,
6972,6548,100,7504,7503,1,7509,7510,7516,7507,
7508,7487,7489,7511,224,628,7485,7486,7512,1519,
7497,7498,7499,7495,7496,7505,7506,7501,7500,7502,
3014,6598,6999,2486,7517,1,6555,6551,6866,6559,
6812,6827,6815,6824,224,6723,6750,6756,6729,6732,
6744,6741,6747,6738,6735,6726,6753,6984,6909,6905,
6984,103,4782,4969,5031,99,6984,574,595,6809,
6806,6821,6818,6839,477,6803,491,6854,6863,6833,
6857,6800,6860,6830,6836,6851,6848,6845,6842,7278,
7357,7358,7272,7279,7275,7251,7277,7276,7273,7274,
7252,6711,6711,39,6565,6562,5188,799,5532,5416,
5561,2284,7020,1117,7283,7281,7290,7289,7285,7286,
7284,7287,7288,7291,7282,3277,6984,3496,6574,3497,
6577,127,6984,11379,9059,424,6984,5509,5442,5608,
5585,7003,6984,5385,218,1163,1282,7005,1178,5746,
1203,7006,7004,1119,7000,7001,7002,313,6984,6984,
6934,6326,1565,39,6565,6562,5188,799,5532,5416,
5561,2284,6984,1117,7283,7281,7290,7289,7285,7286,
7284,7287,7288,7291,7282,4079,6984,7020,6984,6687,
2878,5058,6984,6984,6984,6797,2944,5509,5442,5608,
5585,7003,758,5385,6984,1163,1282,7005,1178,5746,
1203,7006,7004,1119,7000,7001,7002,6984,6984,6984,
4020,3993,6984,1501,39,6565,6562,672,799,5532,
5416,5561,2284,919,1117,7283,7281,7290,7289,7285,
7286,7284,7287,7288,7291,7282,6984,628,6335,6345,
6984,6984,6984,48,7583,6984,6984,6998,5509,5442,
5608,5585,7003,6984,5385,6975,1163,1282,7005,1178,
5746,1203,7006,7004,1119,7000,7001,7002,6984,6984,
1,6352,6984,1565,39,6565,6562,672,799,5532,
5416,5561,2284,3178,1117,7283,7281,7290,7289,7285,
7286,7284,7287,7288,7291,7282,4160,6998,344,6364,
1309,6984,432,6984,73,457,4200,3314,5509,5442,
5608,5585,7003,6984,5385,6984,1163,1282,7005,1178,
5746,1203,7006,7004,1119,7000,7001,7002,6984,6984,
6984,4133,4106,1565,39,6565,6562,5188,799,5532,
5416,5561,2284,4775,1117,7283,7281,7290,7289,7285,
7286,7284,7287,7288,7291,7282,1309,3153,6928,6984,
411,6984,6984,35,6984,4263,2271,4364,5509,5442,
5608,5585,7003,2,5385,3220,1163,1282,7005,1178,
5746,1203,7006,7004,1119,7000,7001,7002,6984,6984,
6984,6371,3571,1565,39,6565,6562,6291,799,5532,
5416,5561,2284,6984,1117,7283,7281,7290,7289,7285,
7286,7284,7287,7288,7291,7282,584,1,6984,583,
6984,4940,6984,6984,6984,6984,591,37,5509,5442,
5608,5585,7003,3170,5385,4837,1163,1282,7005,1178,
5746,1203,7006,7004,1119,7000,7001,7002,39,6565,
6562,5188,799,5532,5416,5561,2284,6984,1117,7283,
7281,7290,7289,7285,7286,7284,7287,7288,7291,7282,
6984,1,3585,3585,4899,6984,6984,6984,6984,6984,
196,6984,5509,5442,5608,5585,7003,1,5385,591,
1163,1282,7005,1178,5746,1203,7006,7004,1119,7000,
7001,7002,39,6565,6562,672,799,5532,5416,5561,
2284,6984,1117,7283,7281,7290,7289,7285,7286,7284,
7287,7288,7291,7282,6984,3486,6984,3170,6984,1,
6984,6984,3585,6984,6984,6984,5509,5442,5608,5585,
7003,6984,5385,196,1163,1282,7005,1178,5746,1203,
7006,7004,1119,7000,7001,7002,39,6565,6562,672,
799,5532,5416,5561,2284,6984,1117,7283,7281,7290,
7289,7285,7286,7284,7287,7288,7291,7282,6984,6984,
6984,3032,6984,6984,6984,6984,6984,6984,6984,6984,
5509,5442,5608,5585,7003,6984,5385,6984,1163,1282,
7005,1178,5746,1203,7006,7004,1119,7000,7001,7002,
39,6565,6562,5188,799,5532,5416,5561,2284,6984,
1117,7283,7281,7290,7289,7285,7286,7284,7287,7288,
7291,7282,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,5509,5442,5608,5585,7003,6984,
5385,6984,1163,1282,7005,1178,5746,1203,7006,7004,
1119,7000,7001,7002,6984,6565,6562,6984,7022,6984,
6984,6984,6984,6984,1046,7283,7281,7290,7289,7285,
7286,7284,7287,7288,7291,7282,7278,7357,7358,7272,
7279,7275,7251,7277,7276,7273,7274,7252,6984,6984,
6984,6984,6984,6984,6984,7419,6984,6984,6984,6984,
6984,6984,6984,275,6680,6676,6984,6684,6984,6984,
954,7420,7421,1046,6667,6673,6646,6649,6661,6658,
6664,6655,6652,6643,6670,6622,6616,6613,6640,6619,
6631,6610,6625,6628,6637,6634,6607,6984,6984,6984,
6984,6984,6984,6984,7419,6984,6984,6984,6984,6984,
6984,6984,6984,6998,6999,6984,6984,6984,6984,954,
7420,7421,1352,7283,7281,7290,7289,7285,7286,7284,
7287,7288,7291,7282,7278,7357,7358,7272,7279,7275,
7251,7277,7276,7273,7274,7252,6984,6984,6984,6984,
6984,6984,6984,7419,6984,6984,6984,6984,6984,6984,
6984,275,6893,6890,75,6984,6984,4496,954,7420,
7421,1352,6667,6673,6646,6649,6661,6658,6664,6655,
6652,6643,6670,6622,6616,6613,6640,6619,6631,6610,
6625,6628,6637,6634,6607,6984,6984,6984,6984,6984,
7046,7047,7419,29,424,424,6791,424,6791,424,
6791,424,6791,6984,6984,6984,6984,954,7420,7421,
6984,575,6984,6984,3931,424,424,424,424,424,
424,424,424,424,424,424,424,6984,6984,6984,
6984,6984,6791,7278,7357,7358,7272,7279,7275,7251,
7277,7276,7273,7274,7252,6984,6984,6571,6984,6984,
6984,6984,6984,6791,32,425,425,6788,425,6788,
425,6788,425,6788,6984,6791,6984,6984,6984,6984,
6984,866,6984,2733,6984,6984,425,425,425,425,
425,425,425,425,425,425,425,425,6984,6984,
6984,6984,6984,6788,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,37,6998,6998,6998,6998,
6998,6984,6998,6984,6788,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6788,6998,6998,6998,
6998,6998,6998,6998,6998,6998,6998,6998,6998,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6984,6984,6984,6984,6984,
6984,6984,6984,6984,6984,6998,6984,6984,6984,6998,
6984,6984,6984,6998
};
};
public final static char termAction[] = TermAction.termAction;
@Override
public final int termAction(int index) { return termAction[index]; }
public interface Asb {
public final static char asb[] = {0,
58,20,522,32,32,229,376,376,229,135,
135,1037,809,135,9,165,229,471,818,818,
270,22,23,39,39,510,662,662,524,662,
510,101,825,590,962,973,608,973,1,973,
52,973,957,973,592,510,590,827,32,955,
522,522,522,522,592,955,455,103,472,472,
472,472,472,472,472,472,472,665,671,676,
673,680,678,685,683,687,686,688,313,689,
471,471,310,703,831,831,522,662,108,108,
659,310,912,662,662,108,510,594,1092,912,
912,829,809,510,361,213,3,753,4,592,
510,510,1094,9,829,376,455,135,135,135,
135,510,871,912,912,455,915,134,1092,455,
665,751,751,871,471,472,472,472,472,472,
472,472,472,472,472,472,472,472,472,472,
472,472,472,472,471,471,471,471,471,471,
471,471,471,471,471,471,472,831,831,108,
108,590,310,310,108,1091,508,912,28,820,
510,362,657,655,213,510,607,513,518,1094,
608,364,510,1094,510,507,912,912,1038,1038,
1038,1038,1094,912,471,472,611,618,980,980,
592,103,310,134,471,912,507,509,507,912,
310,673,673,671,671,671,678,678,678,678,
676,676,683,680,680,686,685,687,1050,688,
912,912,1038,136,586,455,1015,1013,1020,1018,
1022,1021,1023,1024,1037,1038,659,1038,594,510,
370,770,1091,362,655,367,510,213,1050,4,
522,1096,420,1040,213,607,519,607,607,1094,
364,364,510,510,510,955,955,955,955,510,
510,471,510,1092,472,135,669,167,912,509,
1092,471,370,596,563,574,574,574,574,558,
592,760,472,472,472,472,472,472,472,472,
472,471,471,471,471,471,471,471,471,471,
471,471,471,472,455,1091,370,655,655,1092,
608,608,1038,522,507,606,1042,504,955,607,
607,607,607,510,364,366,765,366,471,471,
471,471,955,955,1094,508,912,669,590,594,
510,508,370,596,510,472,1013,1013,1013,1018,
1015,1015,1021,1020,1022,1050,1023,372,654,655,
508,712,608,382,229,508,607,607,504,708,
472,1050,208,204,590,607,607,262,366,367,
472,510,912,912,912,912,871,871,510,669,
670,669,471,167,425,665,594,372,598,1094,
866,471,372,655,709,712,712,803,1052,353,
955,4,419,229,508,607,608,592,1042,472,
472,504,805,257,263,510,367,912,912,629,
669,871,472,310,425,372,598,510,955,367,
712,712,381,353,803,48,592,1037,709,608,
435,805,510,955,262,510,592,592,510,670,
912,310,832,367,382,712,709,207,708,912,
592,510,382,758,436,592,510,871,510,510,
510,821,712,471,64,504,709,510,510,758,
435,1050,472,1050,709,434,955,955,955,436,
955,510,320,709,709,510,608,912,510,510,
135,367,912,367,608,510,709,427,955,427,
436,1050,436,455,455,453,434,455,709,709,
211,433,367,64,709,770,436,912,504,912,
453,353,955,912,758,64,912,912,642,436,
211,436,709,353,471,436,433,366,608,608,
947,471,434,871,709,912,707,63,436,912,
709,707,707,436
};
};
public final static char asb[] = Asb.asb;
@Override
public final int asb(int index) { return asb[index]; }
public interface Asr {
public final static byte asr[] = {0,
55,4,71,1,2,69,9,0,9,64,
68,72,1,2,7,5,4,3,60,120,
0,3,64,70,68,120,60,9,72,97,
0,64,70,68,120,1,2,0,74,3,
64,71,97,68,72,39,60,9,69,70,
0,4,9,69,1,2,0,41,10,55,
62,0,73,59,36,37,7,5,34,35,
40,46,3,4,51,52,53,38,49,44,
48,12,21,11,17,15,16,18,19,14,
13,20,10,43,47,45,42,50,69,9,
8,6,1,2,67,66,0,42,66,43,
44,67,8,45,46,47,48,59,49,50,
51,52,53,38,36,37,7,5,34,35,
6,40,64,3,4,10,1,2,56,57,
58,12,21,11,17,15,16,18,19,14,
13,20,25,31,32,27,30,29,22,26,
23,24,28,33,41,0,98,91,34,35,
99,100,86,87,64,89,90,92,93,94,
95,96,101,102,97,103,104,105,106,107,
108,109,110,111,112,118,72,73,1,2,
4,7,5,71,60,54,3,9,68,39,
70,0,88,61,8,114,115,116,63,9,
3,7,5,6,71,73,39,62,25,11,
12,41,23,13,56,26,27,14,28,29,
15,16,30,31,17,18,32,57,55,33,
10,58,19,20,24,21,1,2,4,22,
0,22,1,2,4,114,115,116,0,66,
67,3,10,43,47,45,42,50,12,21,
11,17,15,16,18,19,14,13,20,51,
52,53,38,49,44,48,6,8,4,36,
37,7,5,34,35,40,46,1,2,118,
9,0,64,71,97,68,118,72,73,11,
12,42,66,13,43,44,14,15,16,67,
45,17,18,46,47,48,59,49,50,10,
19,20,21,51,52,53,38,36,37,34,
35,40,9,39,6,8,1,2,4,3,
7,5,0,1,2,68,73,9,0,23,
24,59,9,97,72,64,68,120,70,0,
69,41,23,13,56,26,14,28,29,15,
16,30,31,17,18,32,57,33,58,19,
22,20,24,21,12,11,25,9,3,7,
5,39,63,65,88,27,62,55,61,8,
1,2,4,10,6,0,88,114,115,116,
55,71,113,121,73,62,74,63,61,65,
76,78,84,82,75,80,81,83,85,69,
77,79,39,9,25,41,23,56,26,27,
28,29,30,31,32,57,33,58,22,24,
59,66,67,10,43,47,45,42,50,12,
21,11,17,15,16,18,19,14,13,20,
51,52,53,38,49,44,48,36,37,34,
35,40,46,7,5,3,4,8,6,1,
2,0,4,9,71,69,0,4,9,71,
69,54,0,67,66,34,35,99,100,94,
95,6,40,70,54,106,107,103,104,105,
111,110,112,87,86,108,109,92,93,89,
90,96,101,36,37,91,117,10,56,41,
57,58,12,21,11,17,15,16,18,19,
14,13,20,25,31,32,27,30,29,22,
26,23,24,28,33,64,68,3,60,7,
5,1,2,4,0,23,24,59,3,64,
97,70,68,72,39,74,71,69,9,0,
9,71,118,72,39,68,0,11,12,13,
14,15,16,17,18,19,20,21,25,23,
26,27,28,29,30,31,32,33,22,24,
39,9,72,8,1,2,60,3,7,5,
6,4,0,59,23,24,8,6,1,2,
4,74,69,120,119,117,36,37,60,3,
98,91,5,99,100,34,35,87,86,54,
89,90,92,93,7,94,95,96,64,97,
72,70,103,104,105,106,107,108,109,110,
111,112,71,118,101,102,73,68,39,9,
0,65,25,11,12,41,23,13,56,26,
88,27,14,28,29,15,16,30,61,31,
17,18,32,57,33,10,58,19,63,22,
20,24,21,9,3,7,5,73,39,62,
8,6,55,1,2,4,0,113,0,54,
64,89,90,0,9,68,73,70,0,25,
11,12,41,23,13,56,26,27,14,28,
29,15,16,30,31,17,18,32,57,33,
10,58,19,22,20,24,21,1,2,4,
97,0,38,0,9,69,68,0,7,5,
3,8,6,60,4,1,2,64,70,97,
72,9,68,0,6,8,3,60,5,7,
97,25,11,12,41,23,13,56,26,27,
14,28,29,15,16,30,31,17,18,32,
57,33,10,58,19,22,20,24,21,1,
2,4,72,9,0,72,9,87,86,0,
11,12,42,66,13,43,44,14,15,16,
67,8,45,17,18,46,47,48,59,49,
50,10,19,20,21,51,52,53,38,1,
2,3,36,37,7,5,34,35,6,40,
4,72,9,0,66,67,36,37,34,35,
40,46,51,52,53,38,49,44,48,12,
21,11,17,15,16,18,19,14,13,20,
10,43,47,45,42,50,7,5,60,8,
6,4,1,2,3,0,10,56,41,57,
58,12,21,11,17,15,16,18,19,14,
13,20,74,71,97,118,73,69,120,8,
31,32,33,22,24,1,2,30,29,28,
27,26,6,4,23,25,119,98,117,91,
36,37,34,35,99,100,9,60,3,5,
72,39,87,86,54,89,90,92,93,7,
94,95,96,101,102,70,103,104,105,106,
107,108,109,110,111,112,68,64,0,39,
9,3,8,6,7,5,4,1,2,71,
0,41,23,13,56,26,14,28,29,15,
16,30,31,17,18,32,57,33,10,58,
19,22,20,24,21,12,11,25,9,3,
7,39,63,61,65,88,27,62,54,4,
5,8,6,1,2,55,0
};
};
public final static byte asr[] = Asr.asr;
@Override
public final int asr(int index) { return asr[index]; }
public interface Nasb {
public final static char nasb[] = {0,
77,12,12,43,43,32,12,12,293,297,
297,12,158,5,201,12,293,85,12,12,
104,23,23,23,23,242,12,12,122,12,
180,218,157,176,259,260,210,260,13,260,
69,260,253,12,10,180,176,200,43,12,
12,12,12,12,165,12,30,180,85,85,
238,85,85,85,85,85,85,12,12,12,
12,12,12,12,12,12,12,12,85,12,
85,85,109,12,32,32,12,12,32,32,
79,109,302,12,12,32,11,12,146,302,
302,290,212,180,12,32,65,165,40,165,
180,11,12,222,290,12,30,297,297,297,
297,180,197,302,302,1,85,53,146,30,
12,55,55,197,31,85,85,85,85,85,
85,85,85,85,85,85,85,85,85,85,
85,85,85,85,85,85,85,85,85,85,
85,85,85,85,85,31,85,293,293,45,
45,176,109,109,45,148,218,302,12,12,
180,178,178,178,275,66,63,63,12,228,
210,32,228,111,66,217,302,302,12,12,
12,12,145,302,85,85,12,12,12,12,
10,180,109,297,18,302,217,180,217,302,
109,12,12,12,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
302,302,12,231,201,25,12,12,12,12,
12,12,12,12,12,12,224,12,12,11,
32,293,126,12,32,153,180,169,12,72,
12,12,21,262,275,63,63,32,32,111,
32,243,11,66,180,12,12,12,12,66,
11,85,180,146,85,297,32,97,302,250,
146,85,32,32,259,260,260,260,260,282,
10,12,85,85,85,85,85,85,85,85,
85,85,85,85,85,85,85,85,85,85,
85,85,31,85,45,148,61,178,61,146,
210,130,12,12,165,32,171,160,12,32,
32,118,118,66,243,120,12,12,31,31,
31,31,12,12,144,66,302,38,224,12,
242,66,61,61,180,85,12,12,12,12,
12,12,12,12,12,12,12,32,61,32,
218,32,210,270,32,228,32,16,214,169,
85,12,114,12,176,118,118,100,120,153,
85,243,302,302,302,302,197,197,66,32,
93,12,31,224,251,12,12,32,32,111,
302,85,91,61,169,245,32,12,270,263,
12,129,21,293,218,16,134,34,160,85,
85,214,12,165,132,228,153,302,302,12,
38,197,85,109,251,91,91,66,12,153,
270,245,209,171,12,12,165,12,169,134,
152,12,228,12,140,228,165,165,11,93,
302,109,300,153,270,32,169,95,12,302,
165,228,270,32,191,34,11,197,11,228,
228,302,245,18,83,160,169,228,73,155,
205,12,85,12,169,12,12,12,12,206,
12,243,167,169,169,243,137,302,11,11,
297,153,302,32,210,73,169,116,12,12,
206,12,206,304,304,186,12,304,169,169,
12,32,153,32,169,297,206,302,160,302,
296,32,12,302,155,83,302,302,32,206,
12,206,169,160,31,206,116,153,137,137,
158,85,12,183,169,302,75,82,206,302,
169,75,12,206
};
};
public final static char nasb[] = Nasb.nasb;
@Override
public final int nasb(int index) { return nasb[index]; }
public interface Nasr {
public final static char nasr[] = {0,
3,13,10,9,138,137,113,136,135,4,
2,0,166,205,0,173,0,5,28,0,
170,0,80,0,13,2,9,10,4,52,
37,5,0,186,4,185,0,161,0,42,
1,0,121,0,4,10,9,2,13,128,
5,0,192,0,4,2,9,10,157,0,
51,0,122,0,44,2,3,0,166,200,
0,141,117,0,176,0,191,0,5,212,
0,81,149,42,4,10,9,2,13,0,
145,0,159,0,201,0,5,194,0,4,
115,209,0,13,2,9,10,4,94,0,
2,75,0,208,0,130,0,123,0,167,
0,5,52,213,0,75,54,0,1,141,
0,210,0,42,174,0,42,66,0,4,
115,182,0,2,154,75,0,75,156,155,
0,5,81,0,175,0,30,101,100,78,
2,9,10,5,4,0,5,37,39,0,
5,10,9,2,78,4,98,54,0,44,
2,0,5,195,0,37,5,27,198,0,
5,50,42,37,196,0,5,105,0,30,
100,101,5,0,81,37,50,82,5,42,
0,101,100,54,78,68,4,10,9,2,
0,101,100,54,4,68,0,2,67,0,
138,214,137,113,136,135,0,4,10,9,
13,3,1,0,133,5,50,93,0,2,
132,0,2,4,113,110,111,112,13,69,
0,39,4,2,9,10,5,172,0,5,
50,93,95,0,5,50,93,115,48,4,
0,113,69,13,110,111,112,190,0,54,
4,98,5,27,0,197,5,52,0,52,
5,30,0,5,52,116,0
};
};
public final static char nasr[] = Nasr.nasr;
@Override
public final int nasr(int index) { return nasr[index]; }
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
113,114,2,31,10,13,9,79,115,100,
48,52,60,68,74,75,86,87,102,105,
107,104,54,106,47,64,66,70,73,76,
83,89,98,11,12,7,8,112,120,14,
53,55,61,67,84,88,90,94,97,99,
109,110,111,19,93,63,91,101,95,1,
77,122,103,20,46,58,78,44,121,33,
30,118,119,96,108,49,50,56,57,59,
69,71,72,85,92,17,18,65,21,22,
6,23,24,25,26,27,32,4,15,16,
28,29,34,35,36,37,38,39,40,41,
42,43,51,80,81,82,5,117,3,123,
62,116
};
};
public final static char terminalIndex[] = TerminalIndex.terminalIndex;
@Override
public final int terminalIndex(int index) { return terminalIndex[index]; }
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
130,135,136,0,0,134,0,0,237,243,
133,0,143,0,132,0,0,142,148,0,
0,149,158,159,160,161,188,151,0,126,
162,141,163,164,165,166,131,167,128,168,
0,129,138,137,170,169,171,185,0,0,
195,152,172,0,173,0,0,0,0,0,
174,175,176,0,177,180,0,155,194,0,
0,0,212,0,0,145,209,213,0,214,
127,179,0,0,0,0,0,0,183,0,
0,0,0,125,186,0,0,210,216,217,
218,0,220,157,0,146,0,0,215,197,
198,199,201,227,228,182,204,0,0,219,
0,0,0,0,0,248,0,251,0,252,
0,147,187,189,190,191,192,196,200,203,
0,206,0,207,0,222,225,0,0,0,
246,247,0,0,139,140,144,0,0,154,
156,0,178,0,193,0,0,0,202,0,
205,211,0,223,224,0,0,229,232,0,
234,236,0,240,241,242,245,0,0,249,
124,0,150,153,0,181,0,184,0,0,
208,221,226,0,0,230,231,233,235,0,
238,239,244,250,253,254,0,0,0,0,
0,0,0,0,0
};
};
public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@Override
public final int nonterminalIndex(int index) { return nonterminalIndex[index]; }
public interface ScopePrefix {
public final static char scopePrefix[] = {
172,324,608,627,317,332,559,575,586,597,
372,280,294,311,344,55,305,392,430,180,
616,502,20,33,64,84,93,98,103,143,
208,339,350,20,467,157,286,300,530,40,
157,382,20,635,40,230,259,1,14,27,
74,89,119,27,361,365,448,495,524,551,
555,645,649,653,110,7,110,410,426,439,
460,479,543,129,129,245,439,566,582,593,
604,220,513,69,69,169,235,238,69,254,
275,238,238,69,369,492,499,169,69,668,
123,355,414,454,486,472,69,355,401,190,
117,452,657,664,657,664,78,420,150,117,
117,264
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@Override
public final int scopePrefix(int index) { return scopePrefix[index]; }
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
18,148,5,5,148,148,5,5,5,5,
379,148,108,148,25,61,291,398,436,186,
80,508,25,38,38,38,72,72,108,148,
213,31,31,25,5,162,291,114,535,51,
165,387,622,640,45,224,224,5,18,31,
5,72,108,31,108,108,148,257,5,5,
5,5,5,257,666,11,114,379,379,379,
464,483,535,133,138,249,443,570,570,570,
570,224,517,72,72,5,5,241,243,257,
5,278,278,243,108,5,257,5,528,5,
126,358,417,457,489,475,547,538,404,193,
108,108,659,659,661,661,80,422,152,215,
200,266
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@Override
public final int scopeSuffix(int index) { return scopeSuffix[index]; }
public interface ScopeLhs {
public final static char scopeLhs[] = {
48,112,18,18,92,112,18,18,18,18,
85,97,49,92,111,90,59,85,84,48,
18,20,190,3,7,8,182,182,178,110,
48,111,111,139,45,148,60,49,157,125,
148,85,18,18,125,102,72,153,88,190,
185,182,178,139,199,57,66,161,19,18,
18,18,18,18,12,130,178,85,84,84,
64,41,157,114,114,68,84,18,18,18,
18,102,20,186,182,201,100,109,74,80,
73,172,89,139,86,162,161,192,157,17,
178,139,116,83,22,45,157,157,85,48,
178,79,155,44,155,44,185,116,110,48,
48,72
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@Override
public final int scopeLhs(int index) { return scopeLhs[index]; }
public interface ScopeLa {
public final static byte scopeLa[] = {
113,73,72,72,73,73,72,72,72,72,
72,73,39,73,1,64,1,72,121,69,
3,72,1,64,64,64,1,1,39,73,
69,1,1,1,72,73,1,1,4,64,
68,39,1,1,64,72,72,72,113,1,
72,1,39,1,39,39,73,118,72,72,
72,72,72,118,1,72,1,72,72,72,
71,71,4,1,1,5,72,64,64,64,
64,72,3,1,1,72,72,3,1,118,
72,1,1,1,39,72,118,72,6,72,
1,55,70,71,72,64,1,55,75,74,
39,39,4,4,4,4,3,1,69,1,
1,3
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@Override
public final int scopeLa(int index) { return scopeLa[index]; }
public interface ScopeStateSet {
public final static char scopeStateSet[] = {
68,175,267,267,90,175,267,267,267,267,
78,92,68,90,175,90,70,78,78,68,
267,267,62,197,243,243,53,53,65,175,
68,175,175,177,104,354,70,68,129,371,
354,78,267,267,371,362,181,46,78,62,
26,53,65,177,22,70,29,56,267,267,
267,267,267,267,247,6,65,78,78,78,
112,327,129,175,175,134,78,267,267,267,
267,362,267,26,53,24,362,364,181,358,
181,59,186,177,78,50,56,132,129,267,
65,177,1,78,268,104,129,129,78,68,
65,11,101,150,101,150,26,1,175,68,
68,181
};
};
public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet;
@Override
public final int scopeStateSet(int index) { return scopeStateSet[index]; }
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
338,3,59,0,126,0,337,3,113,0,
126,180,0,127,188,74,0,224,0,197,
166,126,10,0,136,0,166,126,10,0,
135,0,272,127,54,124,0,20,0,309,
127,54,55,0,20,53,0,33,132,0,
20,53,0,0,309,127,54,55,215,0,
20,186,0,272,127,54,132,0,189,126,
0,141,0,227,3,308,0,308,0,2,
0,126,0,272,127,54,131,0,189,126,
237,0,189,126,22,237,0,189,126,332,
22,0,128,197,166,126,0,128,0,197,
166,126,0,134,128,0,172,0,328,127,
172,0,127,172,0,230,128,0,166,327,
235,0,136,0,0,0,0,135,0,0,
0,0,326,127,164,236,0,127,0,236,
0,129,0,0,127,0,325,127,164,271,
0,127,0,0,44,127,0,0,150,3,
0,127,296,295,127,74,294,172,0,295,
127,74,294,172,0,223,0,224,0,294,
172,0,96,0,0,223,0,224,0,211,
96,0,0,223,0,224,0,295,127,294,
172,0,223,0,211,0,0,223,0,240,
127,3,0,126,0,0,0,0,0,240,
127,3,222,0,231,3,0,220,127,0,
216,0,146,0,176,166,126,0,10,0,
0,0,0,226,60,0,125,0,240,127,
3,195,0,195,0,2,0,0,126,0,
0,0,0,0,211,3,0,209,0,253,
127,164,38,27,0,189,126,61,63,0,
204,128,0,128,189,126,292,63,0,189,
126,292,63,0,189,126,70,123,61,0,
253,127,164,263,61,0,253,127,164,263,
239,61,0,289,290,127,164,123,322,56,
0,289,290,127,164,322,56,0,189,126,
288,56,0,197,189,126,288,235,0,189,
126,288,235,0,166,126,0,93,136,0,
286,127,149,0,286,127,172,0,159,84,
0,317,161,319,320,3,81,0,126,179,
0,319,320,3,81,0,128,0,126,179,
0,159,3,75,204,80,0,126,128,0,
204,80,0,108,2,131,126,128,0,238,
3,75,0,211,174,0,33,169,0,174,
0,183,33,169,0,238,3,85,0,204,
152,238,3,83,0,62,179,0,238,3,
83,0,126,179,62,179,0,318,127,164,
0,159,0,226,77,0,30,179,0,159,
102,185,0,30,177,0,148,64,167,3,
0,167,3,0,20,161,126,0,159,102,
162,0,30,169,0,198,3,0,126,149,
0,227,3,0,226,60,283,0,159,60,
0,198,3,314,67,126,0,126,0,0,
0,0,314,67,126,0,2,145,126,0,
0,0,0,198,3,46,0,147,0,125,
55,166,126,0,31,147,0,93,136,31,
147,0,228,189,126,0,146,31,147,0,
198,3,50,0,159,3,50,0,159,3,
64,198,54,42,0,198,54,42,0,20,
2,131,126,0,159,3,64,198,54,45,
0,198,54,45,0,159,3,64,198,54,
47,0,198,54,47,0,159,3,64,198,
54,43,0,198,54,43,0,227,3,125,
197,166,126,10,0,125,197,166,126,10,
0,136,2,0,126,0,227,3,124,276,
166,126,10,0,276,166,126,10,0,135,
2,0,126,0,227,3,135,0,227,3,
140,0,159,60,140,0,278,0,31,0,
31,139,0,165,0,134,0,159,3,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@Override
public final int scopeRhs(int index) { return scopeRhs[index]; }
public interface ScopeState {
public final static char scopeState[] = {0,
6247,6371,6352,6345,0,2420,2827,2091,2762,0,
5209,5147,5085,5023,4961,4899,4837,4775,4713,4483,
4421,4263,0,1307,0,2486,701,0,5209,5147,
3109,2556,5085,5023,4961,4899,4837,4775,2498,4713,
4483,4421,2364,2358,0,2399,1316,1266,0,2597,
1304,0,2614,1499,0,723,704,0,903,5951,
0,6159,5370,0,6215,6147,0,6215,6147,5794,
6121,6108,5781,6047,5986,5768,5970,5209,5147,5085,
5023,4961,4899,4837,4775,4713,4483,4421,0,6215,
6147,5794,6121,6108,5781,6047,5986,5768,5970,0,
2994,2663,0,3382,3445,3628,3537,3862,3822,3710,
672,2966,996,2900,2834,2768,2702,2636,2570,2504,
2438,2372,2306,2240,927,835,766,0,2733,866,
0,794,0,654,5938,4600,3474,3902,2956,4187,
2428,3008,6241,4666,4585,6182,2939,1400,0,6189,
6055,6048,5964,5790,5769,5176,5114,6068,5803,4441,
4333,5052,4990,4928,4866,4804,4250,3939,923,3377,
718,4742,4230,0,6159,5370,600,5866,4235,0,
5938,903,3902,5951,4585,4572,4350,2601,2271,654,
4378,2469,4187,3889,3849,0,1859,1812,6189,6055,
6048,1765,1718,5964,1671,5790,5769,2141,5176,2094,
5114,6068,2047,2000,1953,1906,5775,5803,1607,4441,
1513,4333,1561,5052,4990,1414,4928,4866,1269,4804,
4250,2235,3939,923,3377,2188,718,4742,5866,4230,
814,4235,2864,2402,1618,799,4572,4350,2601,2271,
654,5938,4378,903,3902,2469,4187,5951,2798,1062,
1027,2733,866,4585,3889,3849,5746,2966,4200,996,
3382,2900,2834,2768,2702,2636,2570,2504,2438,2372,
2306,2240,3445,3628,3537,3862,3822,3710,4160,4133,
4106,5723,672,5700,927,835,766,1080,1324,3593,
3501,3790,3758,3676,4395,4307,4079,4052,4020,3993,
5346,5322,5298,4688,4612,5677,5654,5631,5608,5585,
5561,5532,5509,5442,5416,5385,3032,3319,3277,3220,
3178,3121,3079,2193,2146,1471,2099,2052,2005,1958,
1911,1864,1817,1770,1723,1676,1629,600,1424,1372,
1565,1519,1277,1173,1126,1222,0,901,891,803,
653,4666,4585,4572,3167,4435,3889,645,3849,0,
4727,4850,4724,1076,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@Override
public final int scopeState(int index) { return scopeState[index]; }
public interface InSymb {
public final static char inSymb[] = {0,
0,313,55,10,41,54,243,243,127,70,
70,309,149,127,174,64,68,70,231,211,
60,222,223,200,195,6,124,131,8,132,
126,4,3,127,256,257,236,258,235,259,
56,287,260,124,10,126,127,3,41,50,
42,45,47,43,10,135,3,126,46,40,
6,35,34,5,7,37,36,140,145,147,
146,153,148,156,155,158,157,160,59,162,
70,70,226,162,3,3,124,123,54,54,
174,60,3,66,67,54,189,165,166,231,
211,127,220,126,176,164,327,288,322,288,
126,189,166,220,127,243,3,54,54,54,
54,126,3,198,159,127,66,67,166,3,
125,117,119,3,60,91,98,35,34,100,
99,5,90,89,64,54,86,87,7,93,
92,95,94,96,112,111,110,109,108,107,
106,105,104,103,70,102,101,127,127,127,
127,127,60,60,127,4,197,240,241,242,
126,166,7,5,127,166,243,125,124,126,
123,164,126,166,55,70,198,159,198,198,
198,198,166,227,127,152,285,135,125,124,
10,126,60,314,3,198,55,126,55,227,
159,146,146,145,145,145,148,148,148,148,
147,147,155,153,153,157,156,158,159,160,
240,240,272,127,250,3,167,148,175,169,
183,177,184,185,274,272,220,272,278,197,
152,68,166,176,176,326,126,170,237,61,
55,215,63,172,329,125,124,244,244,189,
164,127,189,197,126,64,64,64,64,197,
276,68,126,166,216,3,315,174,150,189,
166,71,152,152,256,257,258,259,336,260,
10,167,90,89,54,7,93,92,95,94,
96,112,111,110,109,108,107,106,105,104,
103,70,102,101,68,4,127,5,127,166,
263,239,54,55,292,294,127,3,195,244,
244,127,127,197,127,290,123,291,3,3,
3,3,125,124,166,55,198,127,127,228,
6,55,127,127,126,64,148,148,148,169,
167,167,177,175,183,159,184,229,173,176,
197,164,263,64,54,126,74,127,220,328,
71,303,211,124,127,127,127,71,290,289,
70,68,159,159,159,159,3,3,197,152,
280,283,60,190,4,123,125,229,229,166,
148,71,127,127,128,127,164,27,55,172,
65,61,63,127,189,127,295,71,68,71,
70,220,331,237,22,126,289,227,227,125,
127,3,60,159,4,127,127,197,59,253,
255,127,38,127,3,123,61,309,128,295,
164,307,126,308,68,126,22,332,189,280,
227,226,3,253,127,164,286,266,293,38,
70,126,64,296,127,68,189,3,189,126,
126,338,127,3,70,68,152,126,189,127,
318,79,77,1,159,9,85,83,81,80,
75,82,84,78,76,61,74,227,189,189,
68,253,150,164,271,189,239,297,113,9,
71,226,71,3,3,3,204,3,123,159,
123,188,127,164,239,3,71,238,174,238,
320,149,75,238,127,127,97,337,174,152,
211,152,319,127,3,152,297,325,152,152,
127,70,204,161,286,159,203,68,121,317,
152,203,9,152
};
};
public final static char inSymb[] = InSymb.inSymb;
@Override
public final int inSymb(int index) { return inSymb[index]; }
public interface Name {
public final static String name[] = {
"",
"[",
"(",
".",
".*",
"->",
"->*",
"++",
"--",
"&",
"*",
"+",
"-",
"~",
"!",
"/",
"%",
">>",
"<<",
"<",
">",
"<=",
">=",
"==",
"!=",
"^",
"|",
"&&",
"||",
"?",
":",
"::",
"...",
"=",
"*=",
"/=",
"%=",
"+=",
"-=",
">>=",
"<<=",
"&=",
"^=",
"|=",
",",
"$empty",
"asm",
"auto",
"bool",
"break",
"case",
"catch",
"char",
"class",
"const",
"const_cast",
"continue",
"default",
"delete",
"do",
"double",
"dynamic_cast",
"else",
"enum",
"explicit",
"export",
"extern",
"false",
"float",
"for",
"friend",
"goto",
"if",
"inline",
"int",
"long",
"mutable",
"namespace",
"new",
"operator",
"private",
"protected",
"public",
"register",
"reinterpret_cast",
"return",
"short",
"signed",
"sizeof",
"static",
"static_cast",
"struct",
"switch",
"template",
"this",
"throw",
"try",
"true",
"typedef",
"typeid",
"typename",
"union",
"unsigned",
"using",
"virtual",
"void",
"volatile",
"wchar_t",
"while",
"integer",
"floating",
"charconst",
"stringlit",
"identifier",
"Completion",
"EndOfCompletion",
"Invalid",
"RightBracket",
"RightParen",
"RightBrace",
"SemiColon",
"LeftBrace",
"ERROR_TOKEN",
"EOF_TOKEN",
"type_parameter_start",
"]",
")",
"}",
";",
"{",
"identifier_token",
"expression",
"id_expression",
"qualified_or_unqualified_name",
"unqualified_id_name",
"identifier_name",
"template_id_name",
"nested_name_specifier",
"class_or_namespace_name",
"nested_name_specifier_with_tem" +
"plate",
"class_or_namespace_name_with_t" +
"emplate",
"class_name",
"postfix_expression",
"simple_type_specifier",
"pseudo_destructor_name",
"type_id",
"type_name",
"destructor_type_name",
"unary_expression",
"cast_expression",
"new_type_id",
"expression_list",
"type_specifier_seq",
"new_declarator",
"new_pointer_operators",
"ptr_operator",
"new_array_expressions",
"constant_expression",
"pm_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",
"relational_expression_inTempla" +
"te",
"equality_expression_inTemplate",
"and_expression_inTemplate",
"exclusive_or_expression_inTemp" +
"late",
"inclusive_or_expression_inTemp" +
"late",
"logical_and_expression_inTempl" +
"ate",
"logical_or_expression_inTempla" +
"te",
"assignment_expression_inTempla" +
"te",
"expression_list_actual",
"statement",
"compound_statement",
"statement_seq",
"condition",
"declarator",
"for_init_statement",
"function_definition",
"declaration",
"declaration_seq",
"declaration_specifiers",
"simple_declaration_specifiers",
"class_declaration_specifiers",
"elaborated_declaration_specifi" +
"ers",
"enum_declaration_specifiers",
"type_name_declaration_specifie" +
"rs",
"no_type_declaration_specifier",
"cv_qualifier",
"no_type_declaration_specifiers",
"class_specifier",
"elaborated_type_specifier",
"enum_specifier",
"type_name_specifier",
"class_keyword",
"enumerator_list",
"enumerator_definition",
"namespace_name",
"init_declarator_list",
"init_declarator_complete",
"complete_declarator",
"initializer",
"direct_declarator",
"ptr_operator_seq",
"function_declarator",
"basic_direct_declarator",
"array_direct_declarator",
"array_modifier",
"abstract_declarator",
"direct_abstract_declarator",
"basic_direct_abstract_declarat" +
"or",
"array_direct_abstract_declarat" +
"or",
"parameter_declaration_list",
"parameter_declaration",
"parameter_init_declarator",
"parameter_initializer",
"function_body",
"handler_seq",
"initializer_clause",
"initializer_seq",
"class_head",
"access_specifier_keyword",
"member_declaration",
"member_declarator_list",
"member_declaration_list",
"member_declarator_complete",
"constant_initializer",
"bit_field_declarator",
"base_specifier_list",
"base_specifier",
"conversion_function_id",
"conversion_type_id",
"conversion_declarator",
"mem_initializer_list",
"mem_initializer",
"mem_initializer_name",
"operator_id_name",
"overloadable_operator",
"template_parameter_list",
"template_parameter",
"template_argument_list",
"template_argument",
"type_name_specifier_inTemplate",
"type_name_declaration_specifie" +
"rs_inTemplate",
"type_specifier_seq_inTemplate",
"handler",
"exception_declaration",
"type_id_list"
};
};
public final static String name[] = Name.name;
public final String name(int index) { return name[index]; }
public final static int
ERROR_SYMBOL = 62,
SCOPE_UBOUND = 121,
SCOPE_SIZE = 122,
MAX_NAME_LENGTH = 43;
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 = 604,
NT_OFFSET = 122,
LA_STATE_OFFSET = 7583,
MAX_LA = 2147483647,
NUM_RULES = 599,
NUM_NONTERMINALS = 225,
NUM_SYMBOLS = 347,
SEGMENT_SIZE = 8192,
START_STATE = 1076,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
ACCEPT_ACTION = 6544,
ERROR_ACTION = 6984;
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];
}
}