~ubuntu-branches/debian/sid/eclipse-cdt/sid

« back to all changes in this revision

Viewing changes to results/plugins/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParserprs.java

  • Committer: Package Import Robot
  • Author(s): Jakub Adam
  • Date: 2011-10-06 21:15:04 UTC
  • mfrom: (1.1.4)
  • Revision ID: package-import@ubuntu.com-20111006211504-8dutmljjih0zikfv
Tags: 8.0.1-1
* New upstream release.
* Split the JNI packages into a separate architecture dependent
  package and made eclipse-cdt architecture independent.
* Install JNI libraries into multiarch aware location
* Bumped Standards-Version to 3.9.2.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*******************************************************************************
2
 
* Copyright (c) 2006, 2009 IBM Corporation and others.
3
 
* All rights reserved. This program and the accompanying materials
4
 
* are made available under the terms of the Eclipse Public License v1.0
5
 
* which accompanies this distribution, and is available at
6
 
* http://www.eclipse.org/legal/epl-v10.html
7
 
*
8
 
* Contributors:
9
 
*     IBM Corporation - initial API and implementation
10
 
*********************************************************************************/
11
 
 
12
 
// This file was generated by LPG
13
 
 
14
 
package org.eclipse.cdt.internal.core.dom.lrparser.gcc;
15
 
 
16
 
public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, GCCSizeofExpressionParsersym {
17
 
 
18
 
    public interface IsKeyword {
19
 
        public final static byte isKeyword[] = {0,
20
 
            0,0,0,0,0,0,0,0,0,0,
21
 
            0,0,0,0,0,0,0,0,0,0,
22
 
            0,0,0,0,0,0,0,0,0,0,
23
 
            0,0,0,0,0,0,0,0,0,0,
24
 
            0,0,0,0,0,0,0,0,0,0,
25
 
            0,0,0,0,0,0,0,0,0,0,
26
 
            0,0,0,0,0,0,0,0,0,0,
27
 
            0,0,0,0,0,0,0,0,0,0,
28
 
            0,0,0,0,0,0,0,0,0,0,
29
 
            0,0,0,0,0,0,0,0,0,0
30
 
        };
31
 
    };
32
 
    public final static byte isKeyword[] = IsKeyword.isKeyword;
33
 
    public final boolean isKeyword(int index) { return isKeyword[index] != 0; }
34
 
 
35
 
    public interface BaseCheck {
36
 
        public final static short baseCheck[] = {0,
37
 
            0,0,1,1,1,1,1,1,1,1,
38
 
            1,1,1,1,1,1,1,1,3,1,
39
 
            1,4,4,3,3,2,2,4,1,0,
40
 
            1,1,2,2,2,2,2,2,2,2,
41
 
            2,1,4,1,3,3,3,1,3,3,
42
 
            1,3,3,1,3,3,3,3,1,3,
43
 
            3,1,3,1,3,1,3,1,3,1,
44
 
            3,1,5,1,3,3,3,3,3,3,
45
 
            3,3,3,3,3,1,1,2,1,0,
46
 
            1,3,1,1,1,1,1,1,1,1,
47
 
            3,4,3,2,4,1,2,1,1,1,
48
 
            2,5,7,5,1,0,7,5,9,8,
49
 
            3,2,2,2,3,2,4,2,2,2,
50
 
            2,2,1,1,1,1,2,1,2,2,
51
 
            2,1,2,2,1,2,2,1,2,2,
52
 
            1,2,2,1,3,1,3,1,1,1,
53
 
            1,1,1,1,1,1,1,1,1,1,
54
 
            1,1,1,1,1,1,1,1,6,8,
55
 
            0,0,1,1,3,3,3,0,1,0,
56
 
            1,2,4,2,1,1,1,3,1,1,
57
 
            2,3,7,8,0,1,0,1,3,1,
58
 
            3,1,1,1,1,1,1,3,1,1,
59
 
            1,1,1,3,1,2,2,1,5,3,
60
 
            1,3,5,1,3,1,3,2,4,3,
61
 
            5,4,6,6,3,5,1,3,4,5,
62
 
            6,0,1,2,1,3,1,1,3,2,
63
 
            1,1,1,1,2,1,2,3,1,1,
64
 
            1,3,1,2,2,2,3,4,5,1,
65
 
            1,7,3,0,0,1,1,3,3,4,
66
 
            1,1,2,3,2,3,2,1,0,1,
67
 
            2,1,1,1,1,1,2,1,3,6,
68
 
            4,2,4,1,1,1,1,2,6,3,
69
 
            1,3,1,4,0,1,1,1,3,1,
70
 
            0,4,3,1,2,1,3,4,4,4,
71
 
            6,1,0,1,3,1,3,0,1,4,
72
 
            5,2,2,3,3,5,3,4,3,1,
73
 
            2,2,2,4,2,1,1,2,2,3,
74
 
            2,2,3,1,1,1,1,1,1,1,
75
 
            2,5,3,1,1,1,-39,0,0,0,
76
 
            0,0,0,-35,0,0,0,0,0,0,
77
 
            0,0,0,0,0,0,0,0,0,0,
78
 
            -241,0,-2,0,-80,-118,-240,0,0,0,
79
 
            -31,0,-173,0,-41,0,0,0,0,0,
80
 
            0,-17,0,0,0,0,0,0,0,0,
81
 
            0,0,0,-52,0,0,0,0,0,0,
82
 
            -287,0,0,0,0,0,0,-40,0,0,
83
 
            0,0,0,-4,0,-170,0,0,0,0,
84
 
            0,-75,0,0,0,0,0,0,0,0,
85
 
            -16,0,-18,-1,0,0,0,0,0,0,
86
 
            0,0,-119,-33,0,0,0,0,0,0,
87
 
            0,-19,0,0,0,0,0,0,0,0,
88
 
            0,-125,0,0,0,0,-176,-20,0,-21,
89
 
            0,0,0,0,0,0,-199,0,0,0,
90
 
            0,0,0,0,0,0,0,0,0,0,
91
 
            0,0,0,0,0,0,0,0,0,0,
92
 
            0,0,0,0,-281,0,0,0,0,0,
93
 
            0,0,0,0,0,0,-134,0,-260,-289,
94
 
            0,0,0,0,0,0,0,0,-32,0,
95
 
            -232,0,0,0,-22,0,-250,-278,0,0,
96
 
            0,0,0,0,0,0,0,0,0,-81,
97
 
            0,0,0,0,0,0,0,0,0,0,
98
 
            0,0,0,0,0,-61,0,0,0,0,
99
 
            0,0,0,0,0,0,0,0,0,-136,
100
 
            0,0,0,0,0,0,0,-8,0,0,
101
 
            0,0,0,0,0,0,0,-130,0,-273,
102
 
            0,0,-220,0,0,0,0,-283,0,0,
103
 
            0,0,0,0,0,0,0,0,0,-138,
104
 
            0,0,0,0,0,0,0,0,0,0,
105
 
            0,-297,0,-23,0,-311,0,0,0,0,
106
 
            0,0,-24,0,0,0,0,0,0,0,
107
 
            -159,0,0,0,0,0,0,0,0,0,
108
 
            -310,0,0,0,0,-25,0,-36,-53,0,
109
 
            0,0,0,0,0,0,0,0,0,-78,
110
 
            0,0,0,0,0,0,0,0,0,0,
111
 
            0,0,0,-147,0,0,0,0,0,0,
112
 
            0,0,0,0,-139,0,0,-252,0,0,
113
 
            0,0,0,0,-305,0,0,0,0,0,
114
 
            0,-148,0,0,0,0,0,0,0,0,
115
 
            0,-140,0,-155,0,-3,0,0,0,0,
116
 
            0,0,-26,0,0,0,0,0,-149,0,
117
 
            -186,0,0,0,0,0,0,0,0,0,
118
 
            -284,0,0,-124,0,0,0,0,0,0,
119
 
            0,0,0,0,0,-27,0,-28,-168,0,
120
 
            0,0,0,0,0,0,0,0,0,-83,
121
 
            0,-157,0,0,0,0,0,0,-248,0,
122
 
            0,0,0,-123,-84,0,0,0,0,0,
123
 
            0,0,0,0,0,0,0,0,0,0,
124
 
            0,-187,0,-46,0,0,0,0,0,0,
125
 
            0,0,0,0,0,-169,0,0,0,0,
126
 
            0,0,0,0,0,0,0,0,-204,0,
127
 
            -85,0,0,0,0,0,0,0,0,-313,
128
 
            0,-94,0,-318,0,0,0,0,0,0,
129
 
            -164,0,0,0,0,-99,0,0,-222,0,
130
 
            0,0,0,0,0,0,0,-163,-243,0,
131
 
            0,-29,0,0,0,0,0,0,-37,0,
132
 
            0,0,0,-315,0,-100,-244,0,0,0,
133
 
            0,0,0,0,0,-101,-288,-102,0,-103,
134
 
            0,0,0,-62,0,0,0,0,0,0,
135
 
            0,0,0,0,0,0,0,0,-233,0,
136
 
            0,0,0,0,0,0,0,0,0,0,
137
 
            0,-63,0,0,0,0,0,0,-181,0,
138
 
            0,0,0,0,0,0,-104,0,0,0,
139
 
            0,0,0,0,0,-105,0,-263,0,-64,
140
 
            0,0,0,0,0,0,-183,0,0,0,
141
 
            0,0,-245,0,-299,0,0,0,0,0,
142
 
            0,0,0,0,-106,-303,0,-65,0,0,
143
 
            0,0,0,0,-201,0,0,0,0,-312,
144
 
            0,0,-320,0,0,0,0,0,0,0,
145
 
            0,0,-107,0,0,-66,0,0,0,0,
146
 
            0,0,-218,0,0,0,0,-334,0,0,
147
 
            -108,0,0,0,0,0,0,0,0,-109,
148
 
            0,-328,0,-67,0,0,0,0,0,0,
149
 
            -242,0,0,0,0,-343,-256,0,-110,0,
150
 
            0,0,0,0,0,0,0,0,0,-111,
151
 
            0,-68,0,0,0,0,0,0,-255,0,
152
 
            0,0,0,-112,-280,0,-113,0,0,0,
153
 
            0,0,0,0,0,-114,0,-115,0,-69,
154
 
            0,0,0,0,0,0,0,0,0,0,
155
 
            0,-116,-295,-117,-120,0,0,0,0,0,
156
 
            0,0,0,-122,-133,-143,0,-70,0,0,
157
 
            0,0,0,0,0,0,0,0,0,-150,
158
 
            -319,-151,-153,0,0,0,0,0,0,0,
159
 
            0,-154,-294,-156,0,-71,0,0,0,0,
160
 
            0,0,0,0,0,0,0,-158,-165,-174,
161
 
            -178,0,0,0,0,0,0,0,0,-182,
162
 
            -302,-185,0,-72,0,0,0,0,0,0,
163
 
            0,0,0,0,0,-190,-194,-207,-195,0,
164
 
            0,0,0,0,0,0,0,-96,0,-197,
165
 
            0,-5,0,0,0,0,0,0,-126,0,
166
 
            0,0,0,-213,-215,-161,0,0,0,0,
167
 
            0,0,0,0,0,0,0,-325,-225,0,
168
 
            0,0,0,0,0,0,0,0,0,0,
169
 
            0,0,0,-6,0,0,0,0,0,0,
170
 
            0,0,0,0,-237,-60,0,0,0,0,
171
 
            0,0,0,0,0,0,0,-239,-261,0,
172
 
            0,0,0,0,0,0,0,0,0,0,
173
 
            0,0,-73,0,0,0,-262,-271,-272,-282,
174
 
            0,-162,0,0,0,0,0,0,-286,0,
175
 
            0,0,0,-301,-304,-309,0,0,0,0,
176
 
            0,0,0,0,0,-322,-330,0,0,-202,
177
 
            0,0,0,0,0,0,-335,0,0,0,
178
 
            0,0,-219,0,0,0,0,0,0,0,
179
 
            0,0,0,0,0,0,0,-203,0,0,
180
 
            0,0,0,0,0,0,0,0,0,0,
181
 
            0,0,0,0,0,0,0,0,0,0,
182
 
            0,0,-208,0,0,-229,0,0,0,0,
183
 
            0,0,-74,0,0,0,0,-128,-131,-171,
184
 
            -179,0,0,0,0,0,0,0,0,-285,
185
 
            0,0,0,0,0,0,0,0,0,0,
186
 
            0,0,0,0,0,0,0,0,0,0,
187
 
            0,0,0,0,0,0,-296,0,0,0,
188
 
            0,0,0,0,0,0,0,0,-132,0,
189
 
            0,-184,0,0,0,0,0,0,0,0,
190
 
            -314,0,0,0,0,0,0,0,0,0,
191
 
            0,0,0,0,0,0,0,0,0,0,
192
 
            0,0,0,0,0,0,0,-321,0,0,
193
 
            0,0,0,0,0,0,0,0,0,-211,
194
 
            -259,0,0,0,0,0,0,0,0,0,
195
 
            0,-333,0,0,0,0,0,0,0,0,
196
 
            0,0,0,0,0,0,-177,0,0,0,
197
 
            0,0,0,0,0,0,0,0,-337,0,
198
 
            0,0,0,0,0,0,0,0,0,0,
199
 
            0,0,0,-135,0,0,0,0,0,0,
200
 
            0,0,0,-98,0,0,0,0,0,0,
201
 
            0,-127,0,0,0,0,0,0,-160,0,
202
 
            -145,0,0,0,0,0,-212,0,0,0,
203
 
            0,0,0,-231,0,0,0,0,0,0,
204
 
            0,0,0,0,0,0,0,0,0,0,
205
 
            0,0,0,-137,0,0,0,0,0,0,
206
 
            0,-214,0,-224,-198,0,0,0,0,0,
207
 
            0,0,0,0,0,0,0,0,0,0,
208
 
            0,0,-141,0,0,0,0,0,0,-249,
209
 
            0,0,0,0,0,0,0,0,0,0,
210
 
            0,0,0,0,0,0,0,0,0,0,
211
 
            0,0,0,0,0,0,0,0,-47,0,
212
 
            0,0,0,0,0,0,0,0,0,0,
213
 
            -92,0,0,0,0,0,0,0,0,-306,
214
 
            0,0,0,0,0,0,0,0,0,0,
215
 
            0,0,0,0,0,0,-332,0,0,-34,
216
 
            -223,0,0,0,0,0,0,0,0,0,
217
 
            0,0,0,0,0,0,0,0,0,0,
218
 
            0,0,0,0,0,0,0,0,0,0,
219
 
            0,0,0,0,0,0,0,-79,0,0,
220
 
            -265,0,0,0,0,0,0,0,0,0,
221
 
            0,0,0,0,0,0,-226,0,0,0,
222
 
            0,0,0,-258,-293,-189,0,0,0,0,
223
 
            0,0,0,-227,0,0,0,0,0,0,
224
 
            0,0,0,0,0,0,0,0,0,0,
225
 
            0,0,0,0,0,0,-172,0,-257,0,
226
 
            0,0,0,0,-87,0,0,0,0,0,
227
 
            0,0,0,0,0,0,0,0,0,0,
228
 
            0,-274,0,0,0,0,0,-246,0,0,
229
 
            0,-251,0,0,0,0,0,0,0,0,
230
 
            0,0,0,0,0,-167,-191,0,0,0,
231
 
            -206,0,0,0,0,0,0,0,0,0,
232
 
            0,0,0,0,0,0,0,0,0,0,
233
 
            0,0,0,0,0,-253,0,0,0,-48,
234
 
            0,0,0,0,0,0,0,0,0,0,
235
 
            0,0,0,0,0,0,0,0,0,0,
236
 
            0,0,0,0,-336,-254,0,0,0,0,
237
 
            0,0,0,0,0,0,0,0,0,0,
238
 
            0,-270,0,0,0,0,0,0,0,0,
239
 
            0,0,0,-49,0,0,0,0,0,0,
240
 
            0,0,0,0,0,0,0,0,0,0,
241
 
            0,0,0,-291,0,0,-57,0,0,0,
242
 
            0,0,0,0,0,0,0,0,0,-323,
243
 
            0,0,0,0,0,0,0,0,-300,0,
244
 
            0,0,0,0,0,0,0,-58,0,0,
245
 
            0,0,0,0,0,0,0,0,0,0,
246
 
            0,0,0,0,0,0,0,0,0,-279,
247
 
            0,0,0,0,0,0,0,0,-235,0,
248
 
            0,0,0,0,0,0,-316,0,0,0,
249
 
            0,0,0,0,0,0,0,0,-50,0,
250
 
            0,0,0,0,0,0,0,0,0,0,
251
 
            0,0,0,0,0,0,0,0,0,0,
252
 
            0,0,0,0,0,0,0,-308,0,0,
253
 
            -76,0,0,0,0,0,0,-317,0,0,
254
 
            0,0,0,-54,0,0,0,0,0,0,
255
 
            -82,0,0,0,0,0,-326,-331,0,0,
256
 
            0,0,0,0,0,0,-341,0,0,0,
257
 
            0,0,0,0,0,0,0,-210,0,-129,
258
 
            0,0,0,0,0,-216,0,0,0,0,
259
 
            0,0,0,0,0,-152,0,0,0,0,
260
 
            0,-342,0,0,0,0,0,0,0,0,
261
 
            0,-205,0,0,0,0,0,0,0,0,
262
 
            0,0,0,0,0,0,0,0,0,0,
263
 
            0,0,0,0,0,0,-193,0,0,0,
264
 
            0,0,0,0,0,0,0,0,0,0,
265
 
            0,0,0,0,-86,0,-196,0,0,0,
266
 
            0,0,0,0,0,0,0,0,0,0,
267
 
            0,0,0,0,0,0,0,-228,0,0,
268
 
            0,0,0,0,0,0,0,0,0,0,
269
 
            0,0,0,0,0,0,0,-230,0,0,
270
 
            0,0,0,0,0,0,0,0,0,0,
271
 
            0,0,0,0,0,0,0,0,0,0,
272
 
            0,0,0,0,0,0,0,0,0,-234,
273
 
            0,0,0,0,0,0,0,0,-247,-266,
274
 
            0,0,0,0,0,0,0,0,0,0,
275
 
            0,0,0,0,0,-268,0,0,0,0,
276
 
            0,0,0,0,0,0,0,0,0,0,
277
 
            0,0,0,0,0,0,0,0,0,0,
278
 
            0,0,0,0,0,0,0,0,0,0,
279
 
            0,0,0,0,0,0,-269,0,0,0,
280
 
            0,0,0,0,0,0,0,0,0,0,
281
 
            0,0,0,0,0,0,-329,0,0,0,
282
 
            0,0,0,0,0,0,0,0,0,0,
283
 
            0,0,0,0,0,0,0,-340,0,0,
284
 
            -192,0,0,0,0,0,0,0,0,0,
285
 
            0,0,0,0,0,0,0,-345,0,0,
286
 
            -221,0,0,0,0,0,0,0,0,0,
287
 
            0,0,0,0,0,0,0,0,0,0,
288
 
            -267,0,0,0,0,0,0,0,0,0,
289
 
            0,0,0,0,0,0,0,0,-55,0,
290
 
            0,0,0,0,0,0,0,0,0,0,
291
 
            0,0,0,0,0,-56,0,0,0,0,
292
 
            0,0,-121,0,0,0,0,0,0,0,
293
 
            0,0,0,0,0,0,0,0,-51,0,
294
 
            0,0,0,0,0,-88,0,0,0,0,
295
 
            0,0,0,0,0,0,0,0,0,0,
296
 
            0,-42,0,0,0,0,0,0,0,0,
297
 
            0,0,0,0,0,0,-91,0,0,0,
298
 
            -93,0,0,0,0,0,0,0,0,0,
299
 
            0,0,0,0,0,0,0,-236,0,0,
300
 
            0,0,0,0,0,-95,0,0,0,0,
301
 
            0,0,0,0,0,0,0,0,0,0,
302
 
            0,-7,0,0,0,0,0,0,0,0,
303
 
            0,0,0,0,0,0,0,0,0,0,
304
 
            0,0,0,0,0,0,0,0,0,-9,
305
 
            0,0,0,0,0,0,0,0,0,0,
306
 
            0,0,-10,0,0,0,0,0,0,0,
307
 
            0,-11,0,0,0,0,0,0,0,0,
308
 
            -12,0,0,0,0,0,0,0,0,-13,
309
 
            0,0,0,0,0,0,-30,0,0,-38,
310
 
            0,0,0,0,-275,0,0,-43,0,0,
311
 
            0,0,0,0,0,0,0,0,0,0,
312
 
            0,0,0,0,0,0,0,0,-44,0,
313
 
            0,0,0,0,0,0,0,-45,0,0,
314
 
            0,0,0,0,0,0,0,0,-144,0,
315
 
            0,0,0,-77,0,0,0,-209,0,0,
316
 
            0,0,0,0,0,0,0,0,0,0,
317
 
            0,0,0,0,0,0,0,0,0,0,
318
 
            -188,0,0,0,-238,0,0,0,-14,0,
319
 
            0,0,0,0,0,0,0,0,0,0,
320
 
            0,0,0,0,0,0,0,-277,0,0,
321
 
            0,0,0,0,0,0,-89,0,0,0,
322
 
            0,0,0,0,0,0,0,0,0,0,
323
 
            0,0,0,0,0,0,-15,0,0,0,
324
 
            0,0,0,0,0,0,0,0,-90,0,
325
 
            0,0,0,0,0,0,0,0,-217,0,
326
 
            0,0,0,0,0,0,0,0,0,-97,
327
 
            0,0,0,0,0,0,0,-142,0,0,
328
 
            0,0,0,0,-166,0,0,0,-180,0,
329
 
            0,0,0,-200,0,0,0,0,0,0,
330
 
            0,0,0,0,0,0,0,0,0,0,
331
 
            -290,0,0,-292,0,-276,0,0,0,-175,
332
 
            0,0,0,0,-59,-324,0,0,0,0,
333
 
            0,0,0,0,0,0,0,0,0,0,
334
 
            0,0,0,0,0,-146,-338,0,0,0,
335
 
            0,0,0,0,0,0,0,-264,0,0,
336
 
            0,0,0,0,0,0,0,0,0,-298,
337
 
            0,0,0,0,0,0,0,-307,-327,0,
338
 
            0,0,0,0,0,0,0,0,0,0,
339
 
            0,0,0,0,0,0,0,0,-339,0,
340
 
            0,0,0,0,0,0,0,-344,0,0,
341
 
            0,0,0,0,0,0,0,0,0,0,
342
 
            0,0,0,0,0,0,0,0,0,0,
343
 
            0,0,0,0,0,0,0,0,0,0,
344
 
            0,0,0,0,0,0,0
345
 
        };
346
 
    };
347
 
    public final static short baseCheck[] = BaseCheck.baseCheck;
348
 
    public final int baseCheck(int index) { return baseCheck[index]; }
349
 
    public final static short rhs[] = baseCheck;
350
 
    public final int rhs(int index) { return rhs[index]; };
351
 
 
352
 
    public interface BaseAction {
353
 
        public final static char baseAction[] = {
354
 
            117,7,118,41,41,24,24,50,50,26,
355
 
            26,1,1,2,2,2,2,3,3,3,
356
 
            4,5,5,5,5,5,5,5,5,80,
357
 
            80,94,6,6,6,6,6,6,6,6,
358
 
            6,6,8,8,9,9,9,9,10,10,
359
 
            10,11,11,11,16,16,16,16,16,17,
360
 
            17,17,18,18,19,19,20,20,21,21,
361
 
            22,22,23,23,27,27,27,27,27,27,
362
 
            27,27,27,27,27,27,34,30,25,119,
363
 
            119,95,95,58,35,35,35,35,35,35,
364
 
            35,36,36,36,29,29,96,96,71,71,
365
 
            37,37,38,38,38,67,67,39,39,39,
366
 
            39,40,40,40,40,40,66,66,31,31,
367
 
            31,31,31,53,53,53,103,103,98,98,
368
 
            98,98,99,99,99,100,100,100,101,101,
369
 
            101,102,102,102,97,97,85,85,86,54,
370
 
            56,56,56,56,56,72,73,73,73,73,
371
 
            73,73,73,73,73,73,73,73,84,81,
372
 
            81,120,121,87,87,82,82,82,88,104,
373
 
            104,105,105,89,89,89,60,122,122,106,
374
 
            90,90,90,83,83,123,107,107,108,108,
375
 
            91,91,32,33,33,33,55,51,51,42,
376
 
            42,42,42,45,45,47,43,43,44,48,
377
 
            48,124,124,46,143,143,125,125,52,52,
378
 
            52,52,52,52,52,52,52,109,61,61,
379
 
            61,61,49,75,75,74,74,74,76,76,
380
 
            69,69,126,126,79,79,77,77,77,62,
381
 
            62,62,63,64,64,64,65,65,65,65,
382
 
            68,68,57,57,59,128,127,127,127,127,
383
 
            110,129,130,130,131,131,132,132,144,144,
384
 
            145,145,146,146,146,146,148,148,147,147,
385
 
            147,78,133,133,12,12,12,28,28,13,
386
 
            13,134,134,111,111,111,112,112,135,135,
387
 
            113,113,14,14,136,136,114,114,114,114,
388
 
            15,70,137,137,138,138,115,115,115,92,
389
 
            92,92,6,6,16,16,23,3,36,139,
390
 
            116,116,116,93,93,31,66,53,86,86,
391
 
            86,106,106,106,123,120,121,49,88,131,
392
 
            131,140,141,110,71,117,117,331,912,17,
393
 
            21,18,481,828,560,44,502,483,520,367,
394
 
            314,315,316,518,684,585,716,693,826,793,
395
 
            74,1851,1379,443,91,521,901,1429,357,134,
396
 
            212,672,31,1319,178,1647,20,17,21,18,
397
 
            481,42,500,44,926,367,314,315,316,387,
398
 
            136,133,135,159,1647,20,17,21,18,481,
399
 
            42,1872,44,502,1083,134,212,87,398,138,
400
 
            165,394,949,196,629,1634,1279,274,142,145,
401
 
            148,151,645,28,1895,1185,136,133,135,159,
402
 
            360,1825,464,451,517,2181,2285,2576,2607,2611,
403
 
            1278,786,2730,249,462,138,165,1155,254,212,
404
 
            938,786,876,2636,142,145,148,151,104,87,
405
 
            1895,718,645,22,385,25,360,753,302,89,
406
 
            37,2181,2285,2576,2607,2611,1278,1551,20,17,
407
 
            21,18,481,828,411,44,502,483,520,2636,
408
 
            1370,451,292,518,684,585,716,693,826,793,
409
 
            74,658,380,240,280,1445,20,17,21,18,
410
 
            481,828,411,44,502,483,520,908,2919,1469,
411
 
            1905,518,684,585,716,693,826,793,74,672,
412
 
            31,1685,280,293,281,38,1185,753,1575,20,
413
 
            17,21,18,481,828,286,44,502,483,520,
414
 
            369,413,254,212,518,684,585,716,693,826,
415
 
            793,74,281,1463,1185,280,1647,20,17,21,
416
 
            18,481,42,288,44,502,483,520,321,1294,
417
 
            672,186,518,684,585,716,1184,287,1647,20,
418
 
            17,21,18,481,42,281,40,1185,1747,1183,
419
 
            398,1657,275,1661,417,2950,157,1770,1599,20,
420
 
            17,21,18,481,828,289,44,502,483,520,
421
 
            672,185,277,24,518,684,585,716,693,826,
422
 
            793,74,672,1349,444,280,1623,20,17,21,
423
 
            18,481,828,543,44,502,483,520,322,1294,
424
 
            312,1428,518,684,585,716,693,826,793,74,
425
 
            28,301,1185,280,311,281,541,1185,560,1647,
426
 
            20,17,21,18,481,42,383,44,502,1101,
427
 
            1397,20,17,21,18,481,828,1289,44,502,
428
 
            483,520,2161,281,783,1185,518,684,585,716,
429
 
            693,826,793,74,290,1862,1250,512,1743,20,
430
 
            17,21,18,481,828,1722,44,502,483,520,
431
 
            123,238,783,209,518,684,585,716,693,826,
432
 
            793,74,672,187,783,330,1647,20,17,21,
433
 
            18,481,828,416,44,502,483,520,122,672,
434
 
            872,783,518,684,585,716,693,826,793,74,
435
 
            111,672,295,91,1719,20,17,21,18,481,
436
 
            828,1936,44,502,483,520,888,125,1727,645,
437
 
            518,684,585,716,693,826,793,74,1280,282,
438
 
            554,829,1647,20,17,21,18,481,42,1747,
439
 
            44,502,483,520,739,999,2941,347,518,684,
440
 
            585,716,693,826,793,93,318,314,315,316,
441
 
            242,328,783,230,1647,20,17,21,18,481,
442
 
            42,464,44,502,483,966,1421,20,17,21,
443
 
            18,481,828,2044,44,502,483,520,121,645,
444
 
            1269,1047,518,684,585,716,693,826,793,74,
445
 
            672,297,1499,899,1743,20,17,21,18,481,
446
 
            828,249,44,502,483,520,1086,239,527,783,
447
 
            518,684,585,716,693,826,793,74,456,1182,
448
 
            241,330,1647,20,17,21,18,481,828,560,
449
 
            44,502,483,520,1922,2988,1333,645,518,684,
450
 
            585,716,693,826,793,74,49,1182,169,92,
451
 
            181,253,212,19,1647,20,17,21,18,481,
452
 
            828,1267,44,502,483,520,254,212,283,1787,
453
 
            518,684,585,716,693,826,793,74,243,253,
454
 
            212,85,1647,20,17,21,18,481,828,249,
455
 
            44,502,483,520,570,127,2889,630,518,684,
456
 
            585,716,693,826,793,74,1002,329,783,84,
457
 
            1647,20,17,21,18,481,828,249,44,502,
458
 
            483,520,954,645,1413,783,518,684,585,716,
459
 
            693,826,793,74,3000,1065,783,83,1647,20,
460
 
            17,21,18,481,828,1330,44,502,483,520,
461
 
            1920,3009,939,1935,518,684,585,716,693,826,
462
 
            793,74,341,775,244,82,1647,20,17,21,
463
 
            18,481,828,249,44,502,483,520,645,193,
464
 
            1571,911,518,684,585,716,693,826,793,74,
465
 
            520,294,783,81,1647,20,17,21,18,481,
466
 
            828,1866,44,502,483,520,645,456,967,379,
467
 
            518,684,585,716,693,826,793,74,117,296,
468
 
            474,80,1647,20,17,21,18,481,828,249,
469
 
            44,502,483,520,751,456,2944,170,518,684,
470
 
            585,716,693,826,793,74,807,382,969,79,
471
 
            1647,20,17,21,18,481,828,179,44,502,
472
 
            483,520,1147,456,836,1308,518,684,585,716,
473
 
            693,826,793,74,758,334,1513,78,1647,20,
474
 
            17,21,18,481,828,711,44,502,483,520,
475
 
            1121,456,1201,1209,518,684,585,716,693,826,
476
 
            793,74,1346,1469,995,77,1647,20,17,21,
477
 
            18,481,828,203,44,502,483,520,998,1331,
478
 
            1248,1494,518,684,585,716,693,826,793,74,
479
 
            1528,905,67,76,1647,20,17,21,18,481,
480
 
            828,180,44,502,483,520,1050,1179,1473,811,
481
 
            518,684,585,716,693,826,793,74,1319,178,
482
 
            1768,75,1671,20,17,21,18,481,353,1182,
483
 
            367,314,315,316,1781,1534,1647,20,17,21,
484
 
            18,481,828,1308,44,502,483,520,456,1805,
485
 
            134,212,518,684,585,716,693,826,793,74,
486
 
            227,253,212,356,1671,20,17,21,18,481,
487
 
            352,137,133,135,159,1510,1647,20,17,21,
488
 
            18,481,42,1369,44,502,483,520,1709,1558,
489
 
            139,165,518,684,585,716,693,1182,204,143,
490
 
            146,149,152,560,466,1895,345,1582,1853,1602,
491
 
            1757,361,1647,20,17,21,18,481,828,1212,
492
 
            44,502,483,520,1259,1199,1913,416,518,684,
493
 
            585,716,693,826,793,74,1230,1097,886,73,
494
 
            1647,20,17,21,18,481,828,1606,44,502,
495
 
            483,520,3214,1125,1349,3214,518,684,585,716,
496
 
            693,826,793,74,3214,3214,3214,957,1647,20,
497
 
            17,21,18,481,828,3214,44,502,483,520,
498
 
            3214,3214,3214,3214,518,684,585,716,693,826,
499
 
            793,74,3214,937,3214,1043,1647,20,17,21,
500
 
            18,481,42,560,44,502,483,520,560,1857,
501
 
            560,560,518,684,585,716,693,826,793,93,
502
 
            1647,20,17,21,18,481,42,23,44,502,
503
 
            483,520,272,320,278,340,518,684,585,716,
504
 
            693,826,793,93,208,226,3214,1647,20,17,
505
 
            21,18,481,42,359,44,502,483,520,1870,
506
 
            569,1367,560,518,684,585,716,693,826,793,
507
 
            93,1647,20,17,21,18,481,42,1070,44,
508
 
            502,483,520,333,3214,3214,653,518,684,585,
509
 
            716,693,826,793,93,3214,3214,3214,1647,20,
510
 
            17,21,18,481,42,211,44,502,483,520,
511
 
            560,1125,1349,3214,518,684,585,716,693,826,
512
 
            793,93,1647,20,17,21,18,481,42,1098,
513
 
            44,502,483,520,279,3214,3214,1870,518,684,
514
 
            585,716,693,826,793,93,3214,3214,3214,1647,
515
 
            20,17,21,18,481,42,201,44,502,483,
516
 
            520,332,3214,3214,1111,518,684,585,716,693,
517
 
            826,793,93,334,199,1238,318,314,315,316,
518
 
            1126,387,419,20,17,21,18,481,42,666,
519
 
            36,1,1238,3214,3214,1597,1695,1875,387,86,
520
 
            110,3214,208,95,905,1649,3214,202,784,108,
521
 
            94,96,97,98,99,126,86,110,1223,1367,
522
 
            95,1922,1649,245,1247,784,108,94,96,97,
523
 
            98,99,1847,3214,560,989,318,314,315,316,
524
 
            109,105,2815,3214,366,106,3214,317,314,315,
525
 
            316,335,384,1838,3214,3214,337,109,2370,3214,
526
 
            366,366,107,2109,3214,318,314,315,316,384,
527
 
            1651,3214,317,314,315,316,3214,217,1268,220,
528
 
            1453,222,223,1348,3214,3214,2360,3214,854,1647,
529
 
            20,17,21,18,481,42,1369,44,502,483,
530
 
            968,1772,218,1268,220,1453,222,223,228,1239,
531
 
            265,1238,273,317,314,315,316,387,3214,344,
532
 
            154,1335,268,600,415,271,3214,133,1238,1713,
533
 
            249,666,989,3214,387,86,110,786,1831,95,
534
 
            3214,1649,2012,3214,784,108,94,96,97,98,
535
 
            99,3214,86,110,3214,87,95,126,1649,581,
536
 
            472,784,108,94,96,97,98,99,1299,3214,
537
 
            3214,989,3214,3214,3214,2210,109,313,2838,3214,
538
 
            366,106,3214,317,314,315,316,560,384,782,
539
 
            3214,3214,276,109,899,617,249,366,107,2109,
540
 
            3214,423,2838,786,560,384,1787,317,314,315,
541
 
            316,2386,3214,217,1268,220,1453,222,223,228,
542
 
            273,87,2360,2060,755,196,1694,1828,2427,666,
543
 
            266,600,415,271,2788,667,1855,217,1268,220,
544
 
            1453,222,223,228,3214,1468,1396,317,314,315,
545
 
            316,3214,989,3214,1889,194,154,1335,560,2838,
546
 
            3214,3214,560,1624,317,314,315,316,989,217,
547
 
            1268,220,1453,222,223,228,1182,249,262,273,
548
 
            2109,1832,224,192,786,2956,319,3214,2369,266,
549
 
            600,415,271,3214,217,1268,220,1453,222,223,
550
 
            228,197,87,2360,263,276,560,1847,253,212,
551
 
            1647,20,17,21,18,481,42,1073,44,502,
552
 
            483,970,3214,217,1268,220,1453,222,223,228,
553
 
            339,3214,1918,273,3214,827,560,155,1335,3214,
554
 
            3214,3214,2838,266,600,415,271,317,314,315,
555
 
            316,466,1880,260,3214,567,3214,3214,1468,3214,
556
 
            338,3214,3214,2060,1647,20,17,21,18,481,
557
 
            42,3214,44,502,483,1017,1056,217,1268,220,
558
 
            1453,222,223,228,1896,1400,1396,1647,20,17,
559
 
            21,18,481,42,3214,44,502,483,520,3214,
560
 
            617,3214,3214,518,684,585,1154,2838,324,560,
561
 
            3214,3214,318,314,315,316,3214,3214,1647,20,
562
 
            17,21,18,481,42,2956,44,502,483,520,
563
 
            3214,3214,3214,1112,518,684,1157,3214,3214,3214,
564
 
            1037,198,217,1268,220,1453,222,223,228,989,
565
 
            3214,1396,317,314,315,316,2838,560,3214,3214,
566
 
            3214,318,314,315,316,3214,3214,3214,854,1647,
567
 
            20,17,21,18,481,42,3214,44,502,483,
568
 
            1026,229,218,1268,220,1453,222,223,1386,1239,
569
 
            2977,217,1268,220,1453,222,223,228,1037,3214,
570
 
            2946,1470,20,17,21,18,481,42,1934,43,
571
 
            317,314,315,316,1647,20,17,21,18,481,
572
 
            42,1334,44,502,483,520,854,560,560,3214,
573
 
            518,1110,233,367,314,315,316,560,3214,3214,
574
 
            218,1268,220,1453,222,223,228,1239,1021,3214,
575
 
            877,2468,350,134,212,423,1504,423,28,3214,
576
 
            1185,2488,317,314,315,316,593,1238,318,314,
577
 
            315,316,560,786,141,133,135,159,854,1887,
578
 
            3214,1887,419,20,17,21,18,481,42,3214,
579
 
            36,86,110,140,165,95,351,3214,3214,1194,
580
 
            784,1266,94,96,97,98,99,641,1238,3214,
581
 
            3214,2553,3214,3214,786,3214,3214,259,3214,258,
582
 
            3214,3214,3214,246,1470,748,1240,689,1238,3214,
583
 
            3214,3214,86,110,786,3214,95,367,314,315,
584
 
            316,784,103,94,96,97,98,99,803,1238,
585
 
            3214,3214,86,110,3214,786,95,134,212,3214,
586
 
            3214,784,101,94,96,97,98,99,851,1238,
587
 
            3214,3214,3214,86,110,786,3214,95,144,133,
588
 
            135,159,784,358,94,96,97,98,99,3214,
589
 
            3214,3214,3214,86,110,3214,3214,95,3214,3214,
590
 
            1881,3214,784,102,94,96,97,98,99,1087,
591
 
            965,1238,317,314,315,316,423,786,3214,3214,
592
 
            3214,317,314,315,316,3214,1013,1238,2735,3214,
593
 
            3214,3214,3214,786,3214,86,110,854,3214,95,
594
 
            1887,3214,3214,3214,784,118,94,96,97,98,
595
 
            99,86,110,3214,3214,95,3214,3214,1194,3214,
596
 
            784,114,94,96,97,98,99,1061,1238,3214,
597
 
            1720,3214,3214,3214,786,3214,3214,3214,258,3214,
598
 
            3214,3214,3214,1470,3214,1240,3214,1175,1238,3214,
599
 
            3214,3214,86,110,786,3214,95,3214,3214,3214,
600
 
            3214,784,1384,94,96,97,98,99,1223,1238,
601
 
            3214,249,86,110,3214,786,95,3214,786,3214,
602
 
            3214,784,113,94,96,97,98,99,1271,1238,
603
 
            3214,1879,3214,86,110,786,87,95,786,3214,
604
 
            3214,1864,784,120,94,96,97,98,99,3214,
605
 
            3214,249,3214,86,110,3214,87,95,786,3214,
606
 
            3214,115,784,119,94,96,97,98,99,1647,
607
 
            20,17,21,18,481,42,87,44,502,483,
608
 
            520,2069,3214,3214,3214,1129,1647,20,17,21,
609
 
            18,481,42,713,44,502,483,520,1028,3214,
610
 
            3214,3214,1140,3214,3214,317,314,315,316,1647,
611
 
            20,17,21,18,481,42,910,44,502,483,
612
 
            1055,854,3214,3214,3214,3214,3214,3214,367,314,
613
 
            315,316,1647,20,17,21,18,481,42,3214,
614
 
            44,956,1239,3214,3214,273,3214,1120,134,212,
615
 
            3214,1767,3214,3214,3214,268,600,415,271,367,
616
 
            314,315,316,367,314,315,316,3214,313,147,
617
 
            133,135,159,3214,3214,2838,1778,3214,3214,134,
618
 
            212,3214,3214,134,212,3214,3214,3214,367,314,
619
 
            315,316,1671,20,17,21,18,481,41,3214,
620
 
            150,133,135,159,153,133,135,159,134,212,
621
 
            217,1268,220,1453,222,223,228,3214,3214,1918,
622
 
            1647,20,17,21,18,481,42,3214,39,362,
623
 
            133,135,159,1647,20,17,21,18,481,42,
624
 
            3214,38,1647,20,17,21,18,481,42,3214,
625
 
            37,1647,20,17,21,18,481,42,3214,36,
626
 
            1647,20,17,21,18,481,42,500,35,3214,
627
 
            723,3214,3214,3214,387,1893,3214,2784,1647,20,
628
 
            17,21,18,481,42,3214,47,318,314,315,
629
 
            316,3214,87,3214,3214,3214,394,949,196,1647,
630
 
            20,17,21,18,481,42,3214,46,1647,20,
631
 
            17,21,18,481,42,3214,45,3214,3214,500,
632
 
            3214,3214,273,3214,551,3214,387,2730,551,3214,
633
 
            3214,3214,266,600,415,271,317,314,315,316,
634
 
            317,314,315,316,87,3214,1363,265,394,949,
635
 
            196,423,854,3214,3214,551,854,3214,387,1671,
636
 
            20,17,21,18,481,34,3214,317,314,315,
637
 
            316,3214,3214,1194,3214,3214,87,1194,551,2730,
638
 
            3214,115,1791,854,3214,2553,3214,410,3214,1720,
639
 
            317,314,315,316,3214,3214,3214,3214,1522,317,
640
 
            314,315,316,3214,1194,3214,854,1671,20,17,
641
 
            21,18,481,33,3214,1684,2100,2491,929,508,
642
 
            3214,366,3214,3214,3214,3214,3214,1194,3214,737,
643
 
            3214,317,314,315,316,3214,423,3214,3214,2158,
644
 
            1695,20,17,21,18,481,1196,1684,1695,20,
645
 
            17,21,18,481,363,1249,3214,3214,3214,1321,
646
 
            196,3214,3214,3214,1249,3214,3214,317,314,315,
647
 
            316,317,314,315,316,630,317,314,315,316,
648
 
            3214,1295,3214,854,1109,3214,1911,2216,423,1889,
649
 
            858,423,854,3214,3214,360,1949,423,317,314,
650
 
            315,316,786,3214,1065,3214,3214,670,317,314,
651
 
            315,316,1887,1121,3008,196,666,1951,191,3214,
652
 
            87,1887,3214,786,3029,1168,3214,3214,1879,317,
653
 
            314,315,316,1127,1854,786,3214,3214,3214,3214,
654
 
            1879,87,124,3214,1889,3038,801,786,1932,1879,
655
 
            258,3214,3214,87,3214,2117,786,1240,115,258,
656
 
            318,314,315,316,1570,87,1240,3214,3214,1960,
657
 
            115,3214,3214,191,87,3214,3214,3214,1965,115,
658
 
            1295,318,314,315,316,3214,3214,3214,1211,1854,
659
 
            318,314,315,316,3214,1045,3214,3214,3214,3214,
660
 
            3214,3214,3214,3214,3214,3214,2168,2187,3214,3214,
661
 
            3214,3214,3214,1166,3214,3214,2197,3214,0,494,
662
 
            32,0,1790,32,0,3222,1,0,840,128,
663
 
            0,855,128,0,901,128,0,840,129,0,
664
 
            855,129,0,901,129,0,840,130,0,855,
665
 
            130,0,901,130,0,840,184,0,855,184,
666
 
            0,901,184,0,184,188,0,840,183,0,
667
 
            855,183,0,901,183,0,183,188,0,840,
668
 
            131,0,855,131,0,901,131,0,840,132,
669
 
            0,855,132,0,901,132,0,20,178,0,
670
 
            840,365,0,855,365,0,901,365,0,1,
671
 
            701,0,840,377,0,855,377,0,901,377,
672
 
            0,1,840,0,1,855,0,1,901,0,
673
 
            353,363,0,840,252,0,855,252,0,901,
674
 
            252,0,8,10,0,1,3439,0,1,3450,
675
 
            0,112,2447,0
676
 
        };
677
 
    };
678
 
    public final static char baseAction[] = BaseAction.baseAction;
679
 
    public final int baseAction(int index) { return baseAction[index]; }
680
 
    public final static char lhs[] = baseAction;
681
 
    public final int lhs(int index) { return lhs[index]; };
682
 
 
683
 
    public interface TermCheck {
684
 
        public final static byte termCheck[] = {0,
685
 
            0,1,2,3,4,5,6,7,8,9,
686
 
            10,11,12,13,14,15,16,17,18,19,
687
 
            20,21,22,23,24,25,26,27,28,29,
688
 
            30,31,32,33,34,35,0,0,38,39,
689
 
            40,41,42,43,44,45,46,47,0,12,
690
 
            50,51,52,53,54,55,56,57,58,59,
691
 
            60,61,62,63,64,65,0,1,2,3,
692
 
            4,5,6,7,8,9,10,11,12,13,
693
 
            14,15,16,17,18,19,20,21,22,23,
694
 
            24,25,26,27,28,29,30,31,32,33,
695
 
            34,35,66,67,38,39,40,41,42,43,
696
 
            44,45,46,47,66,67,50,51,52,53,
697
 
            54,55,56,57,58,59,60,61,62,63,
698
 
            64,65,0,1,2,3,4,5,6,7,
699
 
            8,9,10,11,12,13,14,15,16,17,
700
 
            18,19,20,21,22,23,24,25,26,27,
701
 
            28,29,30,31,32,33,34,35,0,0,
702
 
            38,39,40,41,42,43,44,45,46,47,
703
 
            0,12,50,51,52,53,54,55,56,57,
704
 
            58,59,60,61,62,63,64,65,0,1,
705
 
            2,3,4,5,6,7,8,9,10,11,
706
 
            12,13,14,15,16,17,18,19,20,21,
707
 
            22,23,24,25,26,27,28,29,30,31,
708
 
            32,33,34,35,66,67,38,39,40,41,
709
 
            42,43,44,45,46,47,66,67,0,51,
710
 
            52,53,54,55,56,57,58,59,60,61,
711
 
            62,63,64,65,0,1,2,3,4,5,
712
 
            6,7,8,9,10,11,12,13,14,15,
713
 
            16,17,18,19,20,21,22,23,24,25,
714
 
            26,27,28,29,30,31,32,33,34,35,
715
 
            0,0,38,39,40,41,42,43,44,45,
716
 
            46,47,0,1,2,51,52,53,54,55,
717
 
            56,57,58,59,60,61,62,63,64,65,
718
 
            0,1,2,0,4,5,6,7,8,9,
719
 
            10,11,12,13,11,15,16,17,18,19,
720
 
            20,21,22,23,24,25,26,0,28,0,
721
 
            30,31,32,33,34,0,1,2,0,4,
722
 
            2,6,7,8,73,74,75,76,0,78,
723
 
            79,51,52,53,54,55,56,57,58,59,
724
 
            60,61,62,63,64,65,0,0,2,3,
725
 
            3,36,6,0,36,9,10,48,12,0,
726
 
            1,15,16,4,5,0,7,8,0,1,
727
 
            2,3,0,5,6,3,4,9,10,11,
728
 
            12,13,36,15,16,17,18,19,20,21,
729
 
            22,23,0,0,0,49,50,50,0,27,
730
 
            0,73,74,75,76,0,78,79,3,9,
731
 
            10,0,66,67,3,69,70,71,72,73,
732
 
            74,75,76,0,78,79,80,81,82,83,
733
 
            84,85,86,87,88,89,90,91,92,93,
734
 
            94,95,96,97,0,77,2,3,37,0,
735
 
            6,86,87,9,10,50,12,0,1,15,
736
 
            16,4,5,14,7,8,0,1,2,0,
737
 
            0,5,6,80,81,9,10,11,12,13,
738
 
            36,15,16,17,18,19,20,21,22,23,
739
 
            0,99,0,49,50,29,73,74,75,76,
740
 
            0,78,79,0,4,2,36,7,8,0,
741
 
            66,67,3,69,70,71,72,73,74,75,
742
 
            76,0,78,79,80,81,82,83,84,85,
743
 
            86,87,88,89,90,91,92,93,94,95,
744
 
            96,97,0,1,2,3,37,5,6,80,
745
 
            81,9,10,11,12,13,14,15,16,17,
746
 
            18,19,20,21,22,23,0,1,2,27,
747
 
            4,29,82,7,8,83,0,35,0,0,
748
 
            38,39,40,41,42,43,44,45,46,47,
749
 
            0,1,2,3,0,5,6,3,0,9,
750
 
            10,11,12,13,14,15,16,17,18,19,
751
 
            20,21,22,23,48,0,0,27,3,29,
752
 
            4,0,1,7,8,35,5,49,38,39,
753
 
            40,41,42,43,44,45,46,47,0,1,
754
 
            2,3,27,5,6,66,67,9,10,11,
755
 
            12,13,14,15,16,17,18,19,20,21,
756
 
            22,23,0,0,2,27,4,29,6,7,
757
 
            8,77,0,35,2,3,38,39,40,41,
758
 
            42,43,44,45,46,47,0,1,0,3,
759
 
            4,5,4,7,8,7,8,0,36,13,
760
 
            0,4,0,1,7,8,0,0,36,37,
761
 
            24,25,26,6,28,29,30,31,32,33,
762
 
            34,24,25,26,0,28,24,30,31,32,
763
 
            33,34,0,9,10,3,50,51,52,53,
764
 
            54,55,56,57,58,59,60,61,62,63,
765
 
            64,65,0,1,2,3,0,5,6,27,
766
 
            0,9,10,11,12,13,14,15,16,17,
767
 
            18,19,20,21,22,23,0,1,2,27,
768
 
            4,29,82,7,8,0,0,35,0,3,
769
 
            38,39,40,41,42,43,44,45,46,47,
770
 
            0,1,2,3,48,5,6,0,48,9,
771
 
            10,11,12,13,14,15,16,17,18,19,
772
 
            20,21,22,23,48,0,0,27,68,29,
773
 
            4,6,6,7,8,35,50,0,38,39,
774
 
            40,41,42,43,44,45,46,47,0,1,
775
 
            0,3,4,5,0,7,8,0,1,0,
776
 
            0,13,5,4,14,11,7,8,83,9,
777
 
            10,14,24,25,26,68,28,29,30,31,
778
 
            32,33,34,24,25,26,0,28,2,30,
779
 
            31,32,33,34,68,0,71,72,50,51,
780
 
            52,53,54,55,56,57,58,59,60,61,
781
 
            62,63,64,65,0,1,2,3,0,5,
782
 
            6,84,36,9,10,11,12,13,14,15,
783
 
            16,17,18,19,20,21,22,23,0,1,
784
 
            2,27,4,29,0,7,8,0,0,35,
785
 
            2,0,38,39,40,41,42,43,44,45,
786
 
            46,47,0,1,2,3,48,5,6,0,
787
 
            0,9,10,11,12,13,14,15,16,17,
788
 
            18,19,20,21,22,23,0,1,2,27,
789
 
            4,29,48,7,8,48,0,35,2,0,
790
 
            38,39,40,41,42,43,44,45,46,47,
791
 
            0,1,2,3,0,5,6,66,67,9,
792
 
            10,11,12,13,14,15,16,17,18,19,
793
 
            20,21,22,23,35,0,0,27,68,29,
794
 
            4,6,6,7,8,35,0,1,38,39,
795
 
            40,41,42,43,44,45,46,47,0,1,
796
 
            0,3,4,5,4,7,8,7,8,0,
797
 
            0,13,2,4,0,1,7,8,0,5,
798
 
            66,67,24,25,26,0,28,29,30,31,
799
 
            32,33,34,24,25,26,0,28,0,30,
800
 
            31,32,33,34,68,0,71,72,50,51,
801
 
            52,53,54,55,56,57,58,59,60,61,
802
 
            62,63,64,65,0,1,2,3,0,5,
803
 
            6,0,0,9,10,11,12,13,14,15,
804
 
            16,17,18,19,20,21,22,23,0,1,
805
 
            0,27,2,29,6,24,25,26,0,35,
806
 
            2,0,38,39,40,41,42,43,44,45,
807
 
            46,47,0,1,2,3,48,5,6,0,
808
 
            84,9,10,11,12,13,14,15,16,17,
809
 
            18,19,20,21,22,23,0,0,0,27,
810
 
            4,29,4,7,8,7,8,35,0,48,
811
 
            38,39,40,41,42,43,44,45,46,47,
812
 
            0,1,2,3,0,5,6,48,0,9,
813
 
            10,11,12,13,14,15,16,17,18,19,
814
 
            20,21,22,23,0,1,49,27,0,29,
815
 
            2,3,24,25,26,35,0,0,38,39,
816
 
            40,41,42,43,44,45,46,47,0,1,
817
 
            0,14,4,5,4,7,8,7,8,0,
818
 
            0,13,0,0,36,37,6,4,6,0,
819
 
            7,8,24,25,26,0,28,2,30,31,
820
 
            32,33,34,24,25,26,98,24,25,26,
821
 
            0,28,68,30,31,32,33,34,0,51,
822
 
            52,53,54,55,56,57,58,59,60,61,
823
 
            62,63,64,65,51,52,53,54,55,56,
824
 
            57,58,59,60,61,62,0,1,2,3,
825
 
            0,5,6,71,72,9,10,11,12,13,
826
 
            0,15,16,17,18,19,20,21,22,23,
827
 
            0,1,2,3,28,5,6,0,0,9,
828
 
            10,11,12,13,0,15,16,17,18,19,
829
 
            20,21,22,23,0,1,2,3,28,5,
830
 
            6,0,25,9,10,11,12,13,14,15,
831
 
            16,17,18,19,20,21,22,23,0,0,
832
 
            1,2,0,77,5,6,0,49,9,10,
833
 
            11,12,13,14,15,16,17,18,19,20,
834
 
            21,22,23,0,50,2,0,77,0,1,
835
 
            2,3,4,0,6,7,8,4,36,0,
836
 
            7,8,0,1,2,3,4,49,6,7,
837
 
            8,0,24,25,26,27,28,0,30,31,
838
 
            32,33,34,0,36,37,24,25,26,27,
839
 
            28,14,30,31,32,33,34,14,36,37,
840
 
            0,1,2,0,1,5,6,0,5,9,
841
 
            10,11,12,13,14,15,16,17,18,19,
842
 
            20,21,22,23,0,1,2,0,69,5,
843
 
            6,0,0,9,10,11,12,13,14,15,
844
 
            16,17,18,19,20,21,22,23,0,1,
845
 
            2,0,0,5,6,0,1,9,10,11,
846
 
            12,13,14,15,16,17,18,19,20,21,
847
 
            22,23,0,1,2,48,69,5,6,0,
848
 
            49,9,10,11,12,13,14,15,16,17,
849
 
            18,19,20,21,22,23,0,1,2,0,
850
 
            49,5,6,0,0,9,10,11,12,13,
851
 
            0,15,16,17,18,19,20,21,22,23,
852
 
            0,1,2,0,14,5,6,48,0,9,
853
 
            10,11,12,13,0,15,16,17,18,19,
854
 
            20,21,22,23,0,1,2,0,14,5,
855
 
            6,0,0,9,10,11,12,13,0,15,
856
 
            16,17,18,19,20,21,22,23,0,1,
857
 
            2,0,14,5,6,0,0,9,10,11,
858
 
            12,13,11,15,16,17,18,19,20,21,
859
 
            22,23,0,1,2,0,0,5,6,3,
860
 
            0,9,10,11,12,13,0,15,16,17,
861
 
            18,19,20,21,22,23,0,0,0,2,
862
 
            4,0,1,7,8,4,5,0,7,8,
863
 
            0,4,2,37,7,8,0,0,0,3,
864
 
            24,25,26,0,28,69,30,31,32,33,
865
 
            34,24,25,26,0,28,2,30,31,32,
866
 
            33,34,0,27,88,89,90,91,92,93,
867
 
            94,95,96,97,0,69,2,0,1,2,
868
 
            3,0,1,2,3,49,0,0,1,15,
869
 
            16,4,5,0,7,8,0,1,0,3,
870
 
            0,1,0,0,2,5,0,11,2,3,
871
 
            36,0,1,36,37,0,5,36,37,0,
872
 
            1,0,3,0,0,14,49,3,0,0,
873
 
            0,3,3,37,4,0,36,7,8,24,
874
 
            25,26,0,37,70,0,4,0,3,7,
875
 
            8,0,0,0,0,27,37,36,0,85,
876
 
            0,37,0,0,4,37,37,7,8,0,
877
 
            70,0,3,49,0,0,14,48,24,25,
878
 
            26,0,37,0,0,4,3,3,7,8,
879
 
            0,70,0,0,49,24,25,26,0,0,
880
 
            0,0,4,0,4,7,8,7,8,0,
881
 
            0,27,0,4,0,14,7,8,4,0,
882
 
            37,7,8,0,14,0,0,0,0,0,
883
 
            0,0,49,49,0,0,0,68,0,0,
884
 
            0,0,0,0,0,0,77,0,0,0,
885
 
            0,0,0,0,0,0,0,0,0,0,
886
 
            0,0,0,0,0,0,0,0,0,0,
887
 
            0,0,0,0,0,0,0,0,0,0,
888
 
            0,0,0,0,0,0,0,0,0,0,
889
 
            0,0,0,0,0,0,0,0,0,0,
890
 
            0,0,0,0,0,0,0,0,0,0,
891
 
            0,0,0,0,0
892
 
        };
893
 
    };
894
 
    public final static byte termCheck[] = TermCheck.termCheck;
895
 
    public final int termCheck(int index) { return termCheck[index]; }
896
 
 
897
 
    public interface TermAction {
898
 
        public final static char termAction[] = {0,
899
 
            3214,5230,1,1252,3169,5178,1,1,1,1,
900
 
            1,1,1,1,458,1,1,1,1,1,
901
 
            1,1,1,1,1,1,1,3223,1,3314,
902
 
            1,1,1,1,1,1212,54,64,744,842,
903
 
            772,1224,2226,1210,799,1222,2976,1213,355,2174,
904
 
            3221,1,1,1,1,1,1,1,1,1,
905
 
            1,1,1,1,1,1,8,3202,3202,3202,
906
 
            3202,3202,3202,3202,3202,3202,3202,3202,3202,3202,
907
 
            3202,3202,3202,3202,3202,3202,3202,3202,3202,3202,
908
 
            3202,3202,3202,3202,3202,3202,3202,3202,3202,3202,
909
 
            3202,3202,444,719,3202,3202,3202,3202,3202,3202,
910
 
            3202,3202,3202,3202,444,719,3202,3202,3202,3202,
911
 
            3202,3202,3202,3202,3202,3202,3202,3202,3202,3202,
912
 
            3202,3202,3214,5230,1,1252,3169,5178,1,1,
913
 
            1,1,1,1,1,1,458,1,1,1,
914
 
            1,1,1,1,1,1,1,1,1,3223,
915
 
            1,3314,1,1,1,1,1,1212,354,65,
916
 
            744,842,772,1224,2226,1210,799,1222,2976,1213,
917
 
            58,2174,3221,1,1,1,1,1,1,1,
918
 
            1,1,1,1,1,1,1,1,3214,5230,
919
 
            1,3224,3169,5178,1,1,1,1,1,1,
920
 
            1,1,458,1,1,1,1,1,1,1,
921
 
            1,1,1,1,1,3223,1,3314,1,1,
922
 
            1,1,1,1212,444,719,744,842,772,1224,
923
 
            2226,1210,799,1222,2976,1213,444,719,1,1,
924
 
            1,1,1,1,1,1,1,1,1,1,
925
 
            1,1,1,1,3214,5230,1,3224,3169,5178,
926
 
            1,1,1,1,1,1,1,1,458,1,
927
 
            1,1,1,1,1,1,1,1,1,1,
928
 
            1,3223,1,3314,1,1,1,1,1,1212,
929
 
            285,59,744,842,772,1224,2226,1210,799,1222,
930
 
            2976,1213,1,3439,2628,1,1,1,1,1,
931
 
            1,1,1,1,1,1,1,1,1,1,
932
 
            3214,3225,432,3214,901,3226,2711,840,855,2702,
933
 
            2693,3230,2720,2900,1471,2867,2819,2652,3227,3228,
934
 
            3229,2680,638,1324,3427,3429,3428,3214,3376,1,
935
 
            3377,3375,3430,3378,3374,267,3439,1941,269,901,
936
 
            648,252,840,855,2569,2129,2024,1970,61,1749,
937
 
            874,3381,3386,3385,3383,3384,3382,3387,3388,3380,
938
 
            3389,3390,3391,1761,2879,2847,1,1,3226,3226,
939
 
            3085,730,3226,3214,730,3226,3226,2,3226,184,
940
 
            3124,3226,3226,3121,3124,72,3115,3118,3214,3225,
941
 
            432,3218,1,3226,2711,116,3169,2702,2693,3230,
942
 
            2720,1282,3226,2867,2819,2652,3227,3228,3229,2680,
943
 
            638,1324,3214,62,3214,3226,3226,3221,3214,116,
944
 
            51,2569,2129,2024,1970,3214,1749,874,3222,2592,
945
 
            425,1,3226,3226,90,3226,3226,3226,3226,3226,
946
 
            3226,3226,3226,60,3226,3226,3226,3226,3226,3226,
947
 
            3226,3226,3226,3226,3226,3226,3226,3226,3226,3226,
948
 
            3226,3226,3226,3226,1,3217,3225,3225,90,1,
949
 
            3225,1336,2955,3225,3225,3221,3225,183,3136,3225,
950
 
            3225,3133,3136,458,3127,3130,3214,1,1,63,
951
 
            270,1,1,2546,2529,1,1,1,1,1,
952
 
            3225,1,1,1,1,1,1,1,1,1,
953
 
            66,3078,68,3225,3225,3600,2569,2129,2024,1970,
954
 
            252,1749,874,3214,901,1469,730,840,855,3214,
955
 
            3225,3225,3220,3225,3225,3225,3225,3225,3225,3225,
956
 
            3225,3214,3225,3225,3225,3225,3225,3225,3225,3225,
957
 
            3225,3225,3225,3225,3225,3225,3225,3225,3225,3225,
958
 
            3225,3225,3214,5230,1,3224,3219,5178,1,2546,
959
 
            2529,1,1,1,1,1,458,1,1,1,
960
 
            1,1,1,1,1,1,1,3439,2628,3223,
961
 
            3187,3314,2078,3181,3184,2047,3214,1212,88,57,
962
 
            744,842,772,1224,2226,1210,799,1222,2976,1213,
963
 
            3214,5230,1,3224,3214,5178,1,3218,3214,1,
964
 
            1,1,1,1,458,1,1,1,1,1,
965
 
            1,1,1,1,1558,1,181,3223,3224,3314,
966
 
            901,3214,3225,840,855,1212,3226,942,744,842,
967
 
            772,1224,2226,1210,799,1222,2976,1213,3214,5230,
968
 
            1,3224,3223,5178,1,444,719,1,1,1,
969
 
            1,1,458,1,1,1,1,1,1,1,
970
 
            1,1,267,3214,1828,3223,901,3314,252,840,
971
 
            855,3217,1,1212,1828,264,744,842,772,1224,
972
 
            2226,1210,799,1222,2976,1213,3214,1,377,190,
973
 
            1,1,3178,1,1,3172,3175,129,730,1,
974
 
            67,3103,325,3540,3097,3100,3214,3214,730,264,
975
 
            1,1,1,2915,1,3409,1,1,1,1,
976
 
            1,3427,3429,3428,53,3376,3541,3377,3375,3430,
977
 
            3378,3374,3214,2592,425,3224,190,1,1,1,
978
 
            1,1,1,1,1,1,1,1,1,1,
979
 
            1,1,3214,5230,1,3224,3214,5178,1,3223,
980
 
            3214,1,1,1,1,1,458,1,1,1,
981
 
            1,1,1,1,1,1,1,3439,2628,3223,
982
 
            3187,3314,2078,3181,3184,69,284,1212,3214,493,
983
 
            744,842,772,1224,2226,1210,799,1222,2976,1213,
984
 
            3214,5230,1,3224,1296,5178,1,1,2328,1,
985
 
            1,1,1,1,458,1,1,1,1,1,
986
 
            1,1,1,1,1558,48,1,3223,1456,3314,
987
 
            3187,2768,252,3181,3184,1212,493,70,744,842,
988
 
            772,1224,2226,1210,799,1222,2976,1213,3214,1,
989
 
            3214,189,1,1,348,1,1,3214,3225,130,
990
 
            52,1,3226,3112,4437,1368,3106,3109,2047,2592,
991
 
            425,1009,1,1,1,3471,1,3409,1,1,
992
 
            1,1,1,3427,3429,3428,221,3376,849,3377,
993
 
            3375,3430,3378,3374,3471,3214,2759,2738,189,1,
994
 
            1,1,1,1,1,1,1,1,1,1,
995
 
            1,1,1,1,3214,5230,1,3224,3214,5178,
996
 
            1,616,730,1,1,1,1,1,458,1,
997
 
            1,1,1,1,1,1,1,1,1,3439,
998
 
            2628,3223,3187,3314,3214,3181,3184,3214,3214,1212,
999
 
            1519,56,744,842,772,1224,2226,1210,799,1222,
1000
 
            2976,1213,3214,5230,1,3224,1372,5178,1,3214,
1001
 
            1,1,1,1,1,1,458,1,1,1,
1002
 
            1,1,1,1,1,1,252,3439,2628,3223,
1003
 
            901,3314,2267,840,855,2287,3214,1212,1195,3214,
1004
 
            744,842,772,1224,2226,1210,799,1222,2976,1213,
1005
 
            3214,5230,1,3224,55,5178,1,444,719,1,
1006
 
            1,1,1,1,458,1,1,1,1,1,
1007
 
            1,1,1,1,1309,50,1,3223,3470,3314,
1008
 
            3187,2768,252,3181,3184,1212,3214,2232,744,842,
1009
 
            772,1224,2226,1210,799,1222,2976,1213,3214,1,
1010
 
            375,190,1,1,901,1,1,840,855,131,
1011
 
            3214,1,2811,3145,207,3225,3139,3142,3214,3226,
1012
 
            444,719,1,1,1,3214,1,3409,1,1,
1013
 
            1,1,1,3427,3429,3428,71,3376,3214,3377,
1014
 
            3375,3430,3378,3374,3471,3214,2759,2738,190,1,
1015
 
            1,1,1,1,1,1,1,1,1,1,
1016
 
            1,1,1,1,3214,5230,1,3224,3214,5178,
1017
 
            1,3214,3214,1,1,1,1,1,458,1,
1018
 
            1,1,1,1,1,1,1,1,3214,2188,
1019
 
            3214,3223,1856,3314,1397,3427,3429,3428,3214,1212,
1020
 
            1937,3214,744,842,772,1224,2226,1210,799,1222,
1021
 
            2976,1213,3214,5230,1,3224,2308,5178,1,200,
1022
 
            616,1,1,1,1,1,458,1,1,1,
1023
 
            1,1,1,1,1,1,378,255,252,3223,
1024
 
            901,3314,3199,840,855,3193,3196,1212,112,3595,
1025
 
            744,842,772,1224,2226,1210,799,1222,2976,1213,
1026
 
            3214,5230,1,3224,3214,5178,1,1609,247,1,
1027
 
            1,1,1,1,458,1,1,1,1,1,
1028
 
            1,1,1,1,1,3208,2208,3223,1,3314,
1029
 
            1828,3220,3427,3429,3428,1212,3214,3214,744,842,
1030
 
            772,1224,2226,1210,799,1222,2976,1213,3214,3225,
1031
 
            182,921,901,3226,901,840,855,840,855,248,
1032
 
            3214,2908,49,128,730,3219,2924,3094,2768,3214,
1033
 
            3088,3091,3427,3429,3428,3214,3376,2471,3377,3375,
1034
 
            3430,3378,3374,1,1,1,3211,3427,3429,3428,
1035
 
            3214,3376,3471,3377,3375,3430,3378,3374,3214,3381,
1036
 
            3386,3385,3383,3384,3382,3387,3388,3380,3389,3390,
1037
 
            3391,1761,2879,2847,3381,3386,3385,3383,3384,3382,
1038
 
            3387,3388,3380,3389,3390,3391,1,3225,432,3218,
1039
 
            3214,3226,1642,2759,2738,2702,2693,3230,2720,1282,
1040
 
            3214,2867,2819,2652,3227,3228,3229,2680,638,1324,
1041
 
            3214,3225,432,3218,814,3226,2242,343,30,2702,
1042
 
            2693,3230,2720,1282,3214,2867,2819,2652,3227,3228,
1043
 
            3229,2680,638,1324,1,4095,432,29,1428,3997,
1044
 
            2711,3214,3556,2702,2693,3230,2720,1282,4437,2867,
1045
 
            2819,2652,3227,3228,3229,2680,638,1324,30,3214,
1046
 
            3225,432,219,3217,3226,2711,3214,555,2702,2693,
1047
 
            3230,2720,1282,4437,2867,2819,2652,3227,3228,3229,
1048
 
            2680,638,1324,336,29,1692,3214,3217,20,178,
1049
 
            3157,3157,178,376,3157,178,178,901,730,156,
1050
 
            840,855,353,363,363,3190,363,3243,3190,363,
1051
 
            363,3214,178,178,178,3157,178,3214,178,178,
1052
 
            178,178,178,3214,3157,3157,363,363,363,3190,
1053
 
            363,1093,363,363,363,363,363,1149,363,3190,
1054
 
            1,4095,432,206,682,3997,2711,210,682,2702,
1055
 
            2693,3230,2720,1282,4437,2867,2819,2652,3227,3228,
1056
 
            3229,2680,638,1324,3214,3225,432,1,588,3226,
1057
 
            2711,206,3214,2702,2693,3230,2720,1282,4437,2867,
1058
 
            2819,2652,3227,3228,3229,2680,638,1324,379,3225,
1059
 
            432,346,3214,3226,2711,3214,3451,2702,2693,3230,
1060
 
            2720,1282,4437,2867,2819,2652,3227,3228,3229,2680,
1061
 
            638,1324,3214,3225,432,3226,1507,3226,2711,1,
1062
 
            5154,2702,2693,3230,2720,1282,4437,2867,2819,2652,
1063
 
            3227,3228,3229,2680,638,1324,3214,3225,432,3214,
1064
 
            765,3226,2711,3214,3214,2702,2693,3230,2720,1282,
1065
 
            364,2867,2819,2652,3227,3228,3229,2680,638,1324,
1066
 
            3214,3225,2727,3214,4437,3226,2711,3225,3214,2702,
1067
 
            2693,3230,2720,1282,3214,2867,2819,2652,3227,3228,
1068
 
            3229,2680,638,1324,3214,3225,2779,3214,650,3226,
1069
 
            2711,3214,3214,2702,2693,3230,2720,1282,228,2867,
1070
 
            2819,2652,3227,3228,3229,2680,638,1324,1,3225,
1071
 
            432,3214,231,3226,2711,3214,42,2702,2693,3230,
1072
 
            2720,1282,1368,2867,2819,2652,3227,3228,3229,2680,
1073
 
            638,1324,331,3225,432,3214,1,3226,2711,3220,
1074
 
            3214,2702,2693,3230,2720,1282,3214,2867,2819,2652,
1075
 
            3227,3228,3229,2680,638,1324,132,3214,3214,1664,
1076
 
            3154,205,5552,3148,3151,901,5552,365,840,855,
1077
 
            323,3166,758,3219,3160,3163,3214,3214,3214,3224,
1078
 
            3427,3429,3428,3214,3376,1254,3377,3375,3430,3378,
1079
 
            3374,3427,3429,3428,3214,3376,2511,3377,3375,3430,
1080
 
            3378,3374,3214,3223,1226,1198,1170,1142,1114,1058,
1081
 
            1086,1030,1002,974,32,686,3079,1,3439,1941,
1082
 
            261,1,3205,1941,3220,1912,3214,374,5561,3240,
1083
 
            3241,901,5561,3214,840,855,3214,1996,3214,3220,
1084
 
            3214,3225,349,3214,1385,3226,3214,1966,517,3220,
1085
 
            3082,3214,3225,730,261,249,3226,730,3219,3214,
1086
 
            1241,291,3220,3214,3214,1037,261,3220,1,3214,
1087
 
            158,116,3220,3219,901,3214,1480,840,855,1,
1088
 
            1,1,369,3219,579,3214,901,3214,3220,840,
1089
 
            855,3214,3214,3214,250,116,3219,1531,3214,421,
1090
 
            368,3219,228,3214,901,116,3219,840,855,3214,
1091
 
            811,251,3218,587,3214,3214,232,1251,3427,3429,
1092
 
            3428,370,3219,3214,3214,901,3220,3224,840,855,
1093
 
            3214,910,3214,3214,914,3427,3429,3428,199,3214,
1094
 
            371,188,901,3214,901,840,855,840,855,372,
1095
 
            378,3223,3214,901,373,205,840,855,901,3214,
1096
 
            3219,840,855,3214,374,3214,3214,3214,3214,3214,
1097
 
            3214,3214,1407,1995,3214,3214,3214,1582,3214,3214,
1098
 
            3214,3214,3214,3214,3214,3214,3217
1099
 
        };
1100
 
    };
1101
 
    public final static char termAction[] = TermAction.termAction;
1102
 
    public final int termAction(int index) { return termAction[index]; }
1103
 
 
1104
 
    public interface Asb {
1105
 
        public final static char asb[] = {0,
1106
 
            123,1,31,54,31,31,31,31,31,31,
1107
 
            31,31,31,31,31,62,3,289,286,293,
1108
 
            291,301,299,303,302,305,304,275,31,3,
1109
 
            430,430,254,31,272,272,272,114,387,371,
1110
 
            31,31,31,31,31,31,31,31,31,31,
1111
 
            31,31,31,31,31,31,31,31,620,31,
1112
 
            31,31,31,31,31,31,31,31,31,31,
1113
 
            31,31,272,272,250,153,118,228,475,174,
1114
 
            173,519,551,551,551,531,512,531,512,512,
1115
 
            531,512,531,67,531,402,31,372,286,286,
1116
 
            291,291,291,291,291,291,289,289,299,293,
1117
 
            293,302,301,200,200,304,303,171,351,171,
1118
 
            114,121,109,28,250,508,232,272,553,478,
1119
 
            365,271,618,169,512,430,427,430,169,430,
1120
 
            512,31,71,3,371,599,317,317,430,551,
1121
 
            551,586,551,551,317,200,31,200,225,544,
1122
 
            31,31,351,151,121,109,508,250,231,228,
1123
 
            272,112,402,454,480,143,271,364,272,442,
1124
 
            320,171,354,272,369,317,317,385,31,433,
1125
 
            31,31,586,200,435,586,551,546,151,109,
1126
 
            109,31,31,250,232,475,459,458,118,480,
1127
 
            272,454,453,270,171,442,320,354,354,179,
1128
 
            599,317,544,272,551,272,272,586,31,586,
1129
 
            470,171,316,462,546,546,465,118,438,356,
1130
 
            220,109,508,250,250,272,553,478,112,143,
1131
 
            272,253,272,272,320,351,543,320,354,356,
1132
 
            447,356,317,599,546,586,31,586,586,58,
1133
 
            452,57,371,546,462,462,118,153,546,351,
1134
 
            149,468,202,430,31,200,50,508,109,480,
1135
 
            454,320,194,356,351,31,430,254,317,272,
1136
 
            370,470,317,47,618,372,462,546,438,62,
1137
 
            153,360,430,31,109,272,454,253,351,316,
1138
 
            31,312,194,313,351,272,254,317,586,431,
1139
 
            272,371,31,250,431,194,31,313,313,586,
1140
 
            272,272,250,313,586
1141
 
        };
1142
 
    };
1143
 
    public final static char asb[] = Asb.asb;
1144
 
    public final int asb(int index) { return asb[index]; }
1145
 
 
1146
 
    public interface Asr {
1147
 
        public final static byte asr[] = {0,
1148
 
            99,0,30,51,52,63,31,53,32,54,
1149
 
            55,33,56,57,28,64,34,65,58,59,
1150
 
            60,61,62,7,8,4,14,24,26,25,
1151
 
            2,18,19,20,11,5,15,16,12,9,
1152
 
            10,21,22,17,23,13,1,6,0,69,
1153
 
            36,70,0,77,27,99,49,37,3,48,
1154
 
            0,48,68,77,50,99,70,85,15,16,
1155
 
            33,28,34,32,31,30,12,9,10,71,
1156
 
            72,66,67,73,74,75,76,80,81,82,
1157
 
            83,84,86,87,69,88,89,90,91,92,
1158
 
            93,94,95,96,97,78,79,27,24,26,
1159
 
            25,49,1,3,37,2,36,4,8,7,
1160
 
            6,0,17,18,19,20,11,1,5,2,
1161
 
            15,16,12,6,9,10,21,22,13,23,
1162
 
            29,0,3,49,37,1,24,0,3,50,
1163
 
            36,70,15,16,12,6,9,10,21,22,
1164
 
            17,23,13,2,18,19,20,11,1,5,
1165
 
            14,0,2,3,49,37,36,0,30,24,
1166
 
            31,32,33,26,28,34,25,3,36,49,
1167
 
            37,27,14,6,1,2,4,8,7,48,
1168
 
            0,69,15,16,12,6,9,10,21,22,
1169
 
            17,23,13,2,18,19,20,11,14,1,
1170
 
            5,36,70,0,2,25,0,24,26,25,
1171
 
            28,15,16,12,6,9,10,21,22,17,
1172
 
            23,13,2,1,5,18,19,20,11,77,
1173
 
            3,0,49,17,18,19,20,5,2,15,
1174
 
            16,12,6,9,10,21,22,13,23,11,
1175
 
            1,37,3,0,69,88,89,90,91,92,
1176
 
            94,93,95,96,97,6,71,72,9,10,
1177
 
            67,66,73,74,75,76,78,79,80,81,
1178
 
            12,82,83,84,68,77,37,50,99,86,
1179
 
            87,48,4,8,7,49,27,3,0,30,
1180
 
            51,24,52,63,31,53,32,54,55,33,
1181
 
            26,56,57,28,64,34,65,58,59,25,
1182
 
            60,61,62,1,5,13,7,8,4,29,
1183
 
            3,50,0,1,5,3,50,49,0,77,
1184
 
            3,68,0,1,37,3,2,0,37,98,
1185
 
            50,39,41,14,45,47,42,35,43,44,
1186
 
            40,38,46,29,3,27,2,18,19,20,
1187
 
            11,15,16,12,6,9,10,21,22,17,
1188
 
            23,13,63,64,65,59,51,56,54,55,
1189
 
            53,52,57,58,60,61,62,34,31,28,
1190
 
            30,33,24,26,25,32,4,8,7,5,
1191
 
            1,0,35,0,48,68,0,3,69,49,
1192
 
            27,14,4,8,7,0,3,49,50,69,
1193
 
            0,48,2,3,37,49,0,2,48,37,
1194
 
            36,4,8,7,3,49,27,69,0,3,
1195
 
            48,37,11,0,6,2,36,37,3,30,
1196
 
            51,52,63,31,53,32,54,55,33,56,
1197
 
            57,28,64,34,65,58,59,60,61,62,
1198
 
            1,5,13,7,8,4,68,24,26,25,
1199
 
            0,1,5,14,4,8,7,0,59,51,
1200
 
            56,54,55,53,52,57,58,60,61,62,
1201
 
            36,49,37,34,31,28,30,33,24,26,
1202
 
            25,32,48,27,3,6,1,7,8,4,
1203
 
            2,0,6,30,51,24,52,63,31,53,
1204
 
            32,54,55,33,26,56,57,28,64,34,
1205
 
            65,58,59,25,60,61,62,1,5,13,
1206
 
            68,4,8,7,0,39,41,14,45,47,
1207
 
            42,35,43,44,40,38,46,29,17,18,
1208
 
            19,20,1,5,2,15,16,12,6,9,
1209
 
            10,21,22,13,23,27,3,11,0,17,
1210
 
            18,19,20,11,1,5,2,15,16,12,
1211
 
            6,9,10,21,22,13,23,48,0
1212
 
        };
1213
 
    };
1214
 
    public final static byte asr[] = Asr.asr;
1215
 
    public final int asr(int index) { return asr[index]; }
1216
 
 
1217
 
    public interface Nasb {
1218
 
        public final static char nasb[] = {0,
1219
 
            40,27,51,27,51,51,51,51,51,51,
1220
 
            51,51,51,51,51,27,28,27,27,27,
1221
 
            27,27,27,27,27,27,27,27,51,28,
1222
 
            17,17,43,30,87,87,87,117,1,35,
1223
 
            51,51,51,51,51,51,51,51,51,51,
1224
 
            51,51,51,51,51,51,51,51,173,51,
1225
 
            51,51,51,51,51,51,51,51,51,51,
1226
 
            51,51,87,87,64,142,148,62,116,13,
1227
 
            13,78,27,27,27,79,114,79,114,114,
1228
 
            79,114,79,27,79,72,51,89,27,27,
1229
 
            27,27,27,27,27,27,27,27,27,27,
1230
 
            27,27,27,27,27,27,27,143,135,27,
1231
 
            156,27,140,66,64,81,63,87,146,55,
1232
 
            87,83,27,8,140,8,140,8,8,8,
1233
 
            140,51,27,28,95,177,179,179,8,27,
1234
 
            27,151,27,27,179,27,69,27,58,178,
1235
 
            51,51,36,135,27,114,81,64,63,38,
1236
 
            87,131,19,27,99,46,86,27,87,114,
1237
 
            135,27,135,87,27,179,179,160,30,27,
1238
 
            30,30,151,27,27,151,27,104,49,114,
1239
 
            135,51,51,64,63,130,13,13,148,99,
1240
 
            87,87,27,87,27,140,165,135,8,143,
1241
 
            162,179,178,87,27,87,87,151,51,151,
1242
 
            102,53,179,114,137,133,27,148,27,15,
1243
 
            10,135,81,64,64,87,146,55,110,46,
1244
 
            87,51,87,87,135,36,178,126,8,15,
1245
 
            27,27,179,162,121,151,30,151,151,87,
1246
 
            27,27,35,121,140,114,148,50,105,36,
1247
 
            48,27,50,8,51,27,33,81,38,169,
1248
 
            87,165,121,15,36,51,8,162,179,87,
1249
 
            27,102,179,27,102,89,140,112,27,60,
1250
 
            50,64,8,51,38,87,87,51,36,179,
1251
 
            51,27,137,114,36,87,162,179,151,27,
1252
 
            87,95,51,64,27,121,51,114,140,151,
1253
 
            87,87,64,140,151
1254
 
        };
1255
 
    };
1256
 
    public final static char nasb[] = Nasb.nasb;
1257
 
    public final int nasb(int index) { return nasb[index]; }
1258
 
 
1259
 
    public interface Nasr {
1260
 
        public final static char nasr[] = {0,
1261
 
            103,116,101,100,87,99,98,1,0,1,
1262
 
            140,0,52,0,80,0,94,0,103,116,
1263
 
            102,101,100,87,99,98,0,60,29,7,
1264
 
            30,0,132,0,7,50,0,32,0,7,
1265
 
            117,0,7,119,0,112,0,110,7,59,
1266
 
            5,0,133,0,24,7,0,137,0,128,
1267
 
            0,7,5,41,0,5,7,0,5,139,
1268
 
            0,87,81,82,83,84,93,72,53,0,
1269
 
            75,0,136,24,0,114,24,0,31,7,
1270
 
            1,34,96,0,34,1,50,71,7,31,
1271
 
            0,92,0,7,28,45,43,48,0,64,
1272
 
            63,45,43,28,0,24,63,64,7,0,
1273
 
            7,45,43,28,0,7,60,89,0,24,
1274
 
            64,63,43,45,7,0,43,45,7,12,
1275
 
            0,5,59,57,0,7,31,28,61,0,
1276
 
            1,34,7,35,0,64,63,28,0,31,
1277
 
            66,7,67,0,105,7,60,0,125,7,
1278
 
            31,0,7,30,118,0,30,7,26,0
1279
 
        };
1280
 
    };
1281
 
    public final static char nasr[] = Nasr.nasr;
1282
 
    public final int nasr(int index) { return nasr[index]; }
1283
 
 
1284
 
    public interface TerminalIndex {
1285
 
        public final static char terminalIndex[] = {0,
1286
 
            87,2,89,99,88,9,97,98,10,11,
1287
 
            86,8,95,3,6,7,70,83,84,85,
1288
 
            12,13,96,50,78,66,94,71,100,46,
1289
 
            57,62,65,74,79,1,92,47,48,51,
1290
 
            52,53,59,60,61,67,73,29,42,93,
1291
 
            49,54,58,63,64,68,69,76,77,80,
1292
 
            81,82,56,72,75,16,17,30,31,4,
1293
 
            14,15,18,19,20,21,91,43,44,22,
1294
 
            23,24,25,26,5,27,28,32,33,34,
1295
 
            35,36,37,38,39,40,41,55,101,90
1296
 
        };
1297
 
    };
1298
 
    public final static char terminalIndex[] = TerminalIndex.terminalIndex;
1299
 
    public final int terminalIndex(int index) { return terminalIndex[index]; }
1300
 
 
1301
 
    public interface NonterminalIndex {
1302
 
        public final static char nonterminalIndex[] = {0,
1303
 
            107,0,0,0,109,113,0,114,115,116,
1304
 
            117,186,0,0,0,118,119,120,121,122,
1305
 
            123,124,0,104,0,106,125,187,130,108,
1306
 
            134,142,0,126,129,0,0,0,0,0,
1307
 
            103,162,164,0,165,0,0,167,0,105,
1308
 
            152,166,141,0,0,0,112,128,0,156,
1309
 
            163,177,178,179,0,133,0,151,174,0,
1310
 
            132,144,0,168,172,173,176,0,111,0,
1311
 
            145,146,147,148,149,150,153,0,155,159,
1312
 
            161,191,194,110,127,131,135,136,137,138,
1313
 
            139,140,143,0,154,158,0,160,171,181,
1314
 
            0,188,0,190,0,193,102,0,0,0,
1315
 
            0,157,0,169,170,175,180,0,182,183,
1316
 
            0,184,185,0,0,189,0,0,192,195,
1317
 
            0,0,0,0,0,0,0,0
1318
 
        };
1319
 
    };
1320
 
    public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
1321
 
    public final int nonterminalIndex(int index) { return nonterminalIndex[index]; }
1322
 
 
1323
 
    public interface ScopePrefix {
1324
 
        public final static char scopePrefix[] = {
1325
 
            198,254,330,216,310,121,147,153,282,95,
1326
 
            359,381,338,1,104,137,163,183,63,262,
1327
 
            320,35,59,71,77,109,159,233,298,71,
1328
 
            420,424,355,377,390,404,390,344,15,27,
1329
 
            56,8,8,113,116,168,116,193,116,243,
1330
 
            248,251,307,428,50,83,89,129,237,83,
1331
 
            401,411,411,8,129,272,206,368,206,272,
1332
 
            20,20,41,229,41,41,41,41,41,305,
1333
 
            399,20,20,45,142,171,142,171,171
1334
 
        };
1335
 
    };
1336
 
    public final static char scopePrefix[] = ScopePrefix.scopePrefix;
1337
 
    public final int scopePrefix(int index) { return scopePrefix[index]; }
1338
 
 
1339
 
    public interface ScopeSuffix {
1340
 
        public final static char scopeSuffix[] = {
1341
 
            75,75,317,75,317,127,6,6,75,101,
1342
 
            365,387,325,6,39,127,6,39,68,267,
1343
 
            325,39,39,75,81,39,6,231,231,75,
1344
 
            39,6,317,317,317,408,394,348,18,18,
1345
 
            39,6,6,39,119,6,178,39,196,246,
1346
 
            246,246,231,39,53,86,92,144,240,302,
1347
 
            53,414,417,11,132,267,223,371,209,275,
1348
 
            25,33,43,231,288,290,292,294,296,231,
1349
 
            231,22,30,47,144,180,132,173,188
1350
 
        };
1351
 
    };
1352
 
    public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
1353
 
    public final int scopeSuffix(int index) { return scopeSuffix[index]; }
1354
 
 
1355
 
    public interface ScopeLhs {
1356
 
        public final static char scopeLhs[] = {
1357
 
            83,81,39,83,39,61,52,52,81,57,
1358
 
            39,38,39,141,65,61,52,48,13,81,
1359
 
            39,93,111,133,78,65,52,89,66,29,
1360
 
            5,5,39,38,38,23,38,39,106,86,
1361
 
            3,132,131,63,77,52,124,45,51,82,
1362
 
            82,82,40,3,36,78,110,61,89,66,
1363
 
            36,8,5,141,61,81,83,39,83,81,
1364
 
            106,86,116,89,102,101,100,99,98,66,
1365
 
            37,106,86,139,61,48,61,46,48
1366
 
        };
1367
 
    };
1368
 
    public final static char scopeLhs[] = ScopeLhs.scopeLhs;
1369
 
    public final int scopeLhs(int index) { return scopeLhs[index]; }
1370
 
 
1371
 
    public interface ScopeLa {
1372
 
        public final static byte scopeLa[] = {
1373
 
            50,50,37,50,37,24,77,77,50,50,
1374
 
            37,98,27,77,37,24,77,37,37,14,
1375
 
            27,37,37,50,14,37,77,27,27,50,
1376
 
            37,77,37,37,37,48,37,27,7,7,
1377
 
            37,77,77,37,2,77,1,37,1,1,
1378
 
            1,1,27,37,48,1,69,6,1,1,
1379
 
            48,37,37,68,6,14,14,35,1,1,
1380
 
            1,1,13,27,1,63,64,64,59,27,
1381
 
            27,1,1,68,6,2,6,2,2
1382
 
        };
1383
 
    };
1384
 
    public final static byte scopeLa[] = ScopeLa.scopeLa;
1385
 
    public final int scopeLa(int index) { return scopeLa[index]; }
1386
 
 
1387
 
    public interface ScopeStateSet {
1388
 
        public final static char scopeStateSet[] = {
1389
 
            48,48,113,48,113,92,99,99,48,39,
1390
 
            113,113,113,6,103,92,99,17,52,48,
1391
 
            113,48,14,8,124,103,99,10,33,110,
1392
 
            129,129,113,113,113,165,113,113,1,27,
1393
 
            129,4,6,103,105,99,29,17,20,48,
1394
 
            48,48,113,129,113,124,199,92,10,33,
1395
 
            113,136,129,6,92,48,48,113,48,48,
1396
 
            1,27,49,10,49,49,49,49,49,33,
1397
 
            113,1,27,31,92,17,92,17,17
1398
 
        };
1399
 
    };
1400
 
    public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet;
1401
 
    public final int scopeStateSet(int index) { return scopeStateSet[index]; }
1402
 
 
1403
 
    public interface ScopeRhs {
1404
 
        public final static char scopeRhs[] = {0,
1405
 
            158,68,158,36,0,103,0,158,36,0,
1406
 
            30,128,103,0,190,128,0,187,0,128,
1407
 
            0,159,187,0,159,0,151,128,0,152,
1408
 
            187,0,152,0,179,2,13,0,104,0,
1409
 
            203,0,194,0,158,0,30,128,0,239,
1410
 
            39,0,29,129,0,129,2,0,235,2,
1411
 
            212,0,234,2,2,7,0,104,104,0,
1412
 
            196,107,14,0,105,0,224,107,131,0,
1413
 
            185,0,107,131,0,169,185,0,229,107,
1414
 
            0,31,151,0,180,227,107,14,159,0,
1415
 
            105,0,0,174,107,2,163,0,174,107,
1416
 
            2,0,177,2,0,161,107,0,177,0,
1417
 
            107,149,6,149,161,0,172,0,149,161,
1418
 
            0,9,0,0,172,0,107,149,6,149,
1419
 
            0,149,0,9,0,0,127,28,209,107,
1420
 
            36,0,127,209,107,28,36,0,127,28,
1421
 
            36,0,127,209,107,36,0,127,36,0,
1422
 
            145,0,2,0,170,104,0,167,0,2,
1423
 
            104,0,174,107,2,145,0,2,0,168,
1424
 
            104,0,151,2,0,162,0,180,207,107,
1425
 
            14,101,223,63,0,223,63,0,107,3,
1426
 
            0,0,0,105,0,180,207,107,14,223,
1427
 
            63,0,3,0,0,0,105,0,160,0,
1428
 
            106,0,222,107,160,0,107,160,0,157,
1429
 
            106,0,188,63,0,107,0,188,65,0,
1430
 
            188,64,0,204,107,14,221,101,220,187,
1431
 
            0,221,101,220,187,0,3,0,0,105,
1432
 
            0,220,187,0,107,0,3,0,0,105,
1433
 
            0,204,107,14,220,187,0,148,0,147,
1434
 
            0,146,0,145,0,144,0,197,107,131,
1435
 
            0,135,106,0,131,0,130,46,0,167,
1436
 
            126,167,166,2,43,0,104,129,0,167,
1437
 
            166,2,43,0,106,0,104,129,0,167,
1438
 
            126,167,126,167,2,43,0,167,126,167,
1439
 
            2,43,0,167,2,43,0,106,0,106,
1440
 
            0,104,129,0,130,2,35,0,130,2,
1441
 
            35,135,42,0,104,106,0,135,42,0,
1442
 
            79,2,108,104,106,0,130,2,47,0,
1443
 
            135,124,130,2,45,0,55,129,0,130,
1444
 
            2,45,0,104,129,55,129,0,134,0,
1445
 
            158,39,0,130,87,122,0,29,125,0,
1446
 
            179,2,0,104,114,0,104,112,0,219,
1447
 
            2,105,0,130,36,105,0,130,2,0
1448
 
        };
1449
 
    };
1450
 
    public final static char scopeRhs[] = ScopeRhs.scopeRhs;
1451
 
    public final int scopeRhs(int index) { return scopeRhs[index]; }
1452
 
 
1453
 
    public interface ScopeState {
1454
 
        public final static char scopeState[] = {0,
1455
 
            1995,1855,0,451,0,411,0,581,0,2944,
1456
 
            1854,2889,0,587,517,0,2158,2100,1720,1995,
1457
 
            2060,1855,2628,2109,1941,1887,1912,1831,1695,0,
1458
 
            842,0,1787,1770,2811,1651,1634,0,686,658,
1459
 
            555,588,653,527,416,2161,0,1278,423,387,
1460
 
            0,3038,3029,2977,1995,2956,2060,2158,3008,1855,
1461
 
            2100,2946,2735,1912,1831,1720,2109,2360,2216,2924,
1462
 
            1695,2919,423,2915,1713,1684,1624,854,2553,1278,
1463
 
            2636,2611,1761,2607,2879,2847,2576,1895,2285,2181,
1464
 
            387,2838,2369,2815,2788,2210,2784,0,1453,1268,
1465
 
            600,415,1720,2553,1941,1887,1828,2730,0,2779,
1466
 
            2727,432,2488,2468,2447,2427,2386,2370,2328,2308,
1467
 
            2287,2267,2226,1787,1770,1651,1634,0,2908,2900,
1468
 
            2867,2819,2652,1324,1282,2242,1642,2161,616,1336,
1469
 
            2078,2047,2546,2529,2174,719,444,2569,2129,2024,
1470
 
            1970,1749,874,2768,2759,2738,2592,425,2720,2711,
1471
 
            2702,2693,2680,638,1609,1582,1558,914,1531,686,
1472
 
            1507,1480,658,588,758,1456,1428,1400,886,1372,
1473
 
            1296,842,814,730,1254,1226,1198,1170,1142,1114,
1474
 
            1086,1058,1030,1002,974,387,942,786,555,527,
1475
 
            0
1476
 
        };
1477
 
    };
1478
 
    public final static char scopeState[] = ScopeState.scopeState;
1479
 
    public final int scopeState(int index) { return scopeState[index]; }
1480
 
 
1481
 
    public interface InSymb {
1482
 
        public final static char inSymb[] = {0,
1483
 
            0,217,107,195,13,23,17,22,21,10,
1484
 
            9,6,12,16,15,105,2,110,109,116,
1485
 
            111,118,117,120,119,122,121,106,49,2,
1486
 
            85,70,2,36,129,179,130,160,107,14,
1487
 
            10,9,72,71,6,79,78,76,75,74,
1488
 
            73,66,67,12,81,80,83,82,87,86,
1489
 
            84,97,96,95,93,94,92,91,90,89,
1490
 
            88,69,179,219,130,124,107,36,2,164,
1491
 
            163,198,7,8,4,199,187,200,65,64,
1492
 
            201,63,202,101,216,203,13,107,109,109,
1493
 
            111,111,111,111,111,111,110,110,117,116,
1494
 
            116,119,118,218,130,121,120,124,14,159,
1495
 
            161,149,128,28,127,107,6,177,107,2,
1496
 
            2,2,2,220,128,188,128,188,223,188,
1497
 
            128,13,106,2,196,46,38,40,44,43,
1498
 
            35,42,47,45,134,41,39,101,4,131,
1499
 
            48,48,107,14,149,6,107,127,209,175,
1500
 
            174,131,107,176,107,2,236,1,11,101,
1501
 
            14,101,14,179,3,130,101,2,2,135,
1502
 
            2,2,48,239,158,48,237,107,107,6,
1503
 
            149,209,28,127,6,2,143,145,107,49,
1504
 
            174,234,212,2,221,128,107,14,107,124,
1505
 
            166,167,131,130,35,130,130,48,68,48,
1506
 
            2,224,197,151,128,2,186,107,148,227,
1507
 
            107,149,107,127,127,151,107,2,161,49,
1508
 
            124,2,11,1,14,204,160,205,107,207,
1509
 
            101,208,167,126,107,124,2,124,124,238,
1510
 
            11,192,14,49,128,151,107,69,161,180,
1511
 
            49,229,240,70,36,101,230,107,175,107,
1512
 
            235,107,107,207,180,69,49,126,167,130,
1513
 
            135,48,124,2,49,107,128,161,148,150,
1514
 
            69,158,70,36,175,174,225,49,204,222,
1515
 
            48,151,128,190,180,167,126,124,98,6,
1516
 
            1,196,68,158,49,49,48,190,128,124,
1517
 
            167,1,158,128,124
1518
 
        };
1519
 
    };
1520
 
    public final static char inSymb[] = InSymb.inSymb;
1521
 
    public final int inSymb(int index) { return inSymb[index]; }
1522
 
 
1523
 
    public interface Name {
1524
 
        public final static String name[] = {
1525
 
            "",
1526
 
            "[",
1527
 
            "(",
1528
 
            "{",
1529
 
            ".",
1530
 
            "->",
1531
 
            "++",
1532
 
            "--",
1533
 
            "&",
1534
 
            "*",
1535
 
            "+",
1536
 
            "-",
1537
 
            "~",
1538
 
            "!",
1539
 
            "/",
1540
 
            "%",
1541
 
            ">>",
1542
 
            "<<",
1543
 
            "<",
1544
 
            ">",
1545
 
            "<=",
1546
 
            ">=",
1547
 
            "==",
1548
 
            "!=",
1549
 
            "^",
1550
 
            "|",
1551
 
            "&&",
1552
 
            "||",
1553
 
            "?",
1554
 
            ":",
1555
 
            "...",
1556
 
            "=",
1557
 
            "*=",
1558
 
            "/=",
1559
 
            "%=",
1560
 
            "+=",
1561
 
            "-=",
1562
 
            ">>=",
1563
 
            "<<=",
1564
 
            "&=",
1565
 
            "^=",
1566
 
            "|=",
1567
 
            ",",
1568
 
            ">?",
1569
 
            "<?",
1570
 
            "$empty",
1571
 
            "auto",
1572
 
            "break",
1573
 
            "case",
1574
 
            "char",
1575
 
            "const",
1576
 
            "continue",
1577
 
            "default",
1578
 
            "do",
1579
 
            "double",
1580
 
            "else",
1581
 
            "enum",
1582
 
            "extern",
1583
 
            "float",
1584
 
            "for",
1585
 
            "goto",
1586
 
            "if",
1587
 
            "inline",
1588
 
            "int",
1589
 
            "long",
1590
 
            "register",
1591
 
            "restrict",
1592
 
            "return",
1593
 
            "short",
1594
 
            "signed",
1595
 
            "sizeof",
1596
 
            "static",
1597
 
            "struct",
1598
 
            "switch",
1599
 
            "typedef",
1600
 
            "union",
1601
 
            "unsigned",
1602
 
            "void",
1603
 
            "volatile",
1604
 
            "while",
1605
 
            "_Bool",
1606
 
            "_Complex",
1607
 
            "_Imaginary",
1608
 
            "integer",
1609
 
            "floating",
1610
 
            "charconst",
1611
 
            "stringlit",
1612
 
            "identifier",
1613
 
            "Completion",
1614
 
            "EndOfCompletion",
1615
 
            "Invalid",
1616
 
            "RightBracket",
1617
 
            "RightParen",
1618
 
            "RightBrace",
1619
 
            "SemiColon",
1620
 
            "typeof",
1621
 
            "__alignof__",
1622
 
            "__attribute__",
1623
 
            "__declspec",
1624
 
            "asm",
1625
 
            "ERROR_TOKEN",
1626
 
            "EOF_TOKEN",
1627
 
            "no_sizeof_type_name_start",
1628
 
            "]",
1629
 
            ")",
1630
 
            "}",
1631
 
            ";",
1632
 
            "identifier_token",
1633
 
            "expression",
1634
 
            "postfix_expression",
1635
 
            "member_name",
1636
 
            "type_id",
1637
 
            "initializer_list",
1638
 
            "unary_expression",
1639
 
            "cast_expression",
1640
 
            "multiplicative_expression",
1641
 
            "additive_expression",
1642
 
            "shift_expression",
1643
 
            "relational_expression",
1644
 
            "equality_expression",
1645
 
            "and_expression",
1646
 
            "exclusive_or_expression",
1647
 
            "inclusive_or_expression",
1648
 
            "logical_and_expression",
1649
 
            "logical_or_expression",
1650
 
            "assignment_expression",
1651
 
            "expression_in_statement",
1652
 
            "expression_list_actual",
1653
 
            "constant_expression",
1654
 
            "statement",
1655
 
            "compound_statement",
1656
 
            "block_item_list",
1657
 
            "block_item",
1658
 
            "declaration",
1659
 
            "declaration_specifiers",
1660
 
            "init_declarator_list",
1661
 
            "simple_declaration_specifiers",
1662
 
            "struct_or_union_declaration_sp" +
1663
 
            "ecifiers",
1664
 
            "elaborated_declaration_specifi" +
1665
 
            "ers",
1666
 
            "enum_declaration_specifiers",
1667
 
            "typdef_name_declaration_specif" +
1668
 
            "iers",
1669
 
            "no_type_declaration_specifier",
1670
 
            "type_qualifier",
1671
 
            "no_type_declaration_specifiers",
1672
 
            "simple_type_specifier",
1673
 
            "struct_or_union_specifier",
1674
 
            "elaborated_specifier",
1675
 
            "enum_specifier",
1676
 
            "type_name_specifier",
1677
 
            "init_declarator",
1678
 
            "complete_declarator",
1679
 
            "initializer",
1680
 
            "declarator",
1681
 
            "struct_or_union",
1682
 
            "struct_declaration_list",
1683
 
            "struct_declaration",
1684
 
            "specifier_qualifier_list",
1685
 
            "struct_declarator_list",
1686
 
            "complete_struct_declarator",
1687
 
            "struct_declarator",
1688
 
            "enumerator_list",
1689
 
            "enumerator",
1690
 
            "direct_declarator",
1691
 
            "pointer_seq",
1692
 
            "array_direct_declarator",
1693
 
            "basic_direct_declarator",
1694
 
            "array_modifier",
1695
 
            "function_direct_declarator",
1696
 
            "parameter_type_list",
1697
 
            "function_declarator",
1698
 
            "identifier_list",
1699
 
            "array_modifier_type_qualifiers",
1700
 
            "type_qualifier_list",
1701
 
            "parameter_list",
1702
 
            "parameter_declaration",
1703
 
            "complete_parameter_declarator",
1704
 
            "abstract_declarator",
1705
 
            "direct_abstract_declarator",
1706
 
            "basic_direct_abstract_declarat" +
1707
 
            "or",
1708
 
            "array_direct_abstract_declarat" +
1709
 
            "or",
1710
 
            "initializer_seq",
1711
 
            "designated_initializer",
1712
 
            "designation",
1713
 
            "designator_list",
1714
 
            "designator",
1715
 
            "function_body",
1716
 
            "attribute_or_decl_specifier",
1717
 
            "attribute_or_decl_specifier_se" +
1718
 
            "q",
1719
 
            "word",
1720
 
            "extended_decl_modifier_seq",
1721
 
            "extended_decl_modifier",
1722
 
            "extended_asm_param",
1723
 
            "case_range_expression",
1724
 
            "typeof_declaration_specifiers",
1725
 
            "typeof_type_specifier",
1726
 
            "field_name_designator"
1727
 
        };
1728
 
    };
1729
 
    public final static String name[] = Name.name;
1730
 
    public final String name(int index) { return name[index]; }
1731
 
 
1732
 
    public final static int
1733
 
           ERROR_SYMBOL      = 29,
1734
 
           SCOPE_UBOUND      = 88,
1735
 
           SCOPE_SIZE        = 89,
1736
 
           MAX_NAME_LENGTH   = 38;
1737
 
 
1738
 
    public final int getErrorSymbol() { return ERROR_SYMBOL; }
1739
 
    public final int getScopeUbound() { return SCOPE_UBOUND; }
1740
 
    public final int getScopeSize() { return SCOPE_SIZE; }
1741
 
    public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
1742
 
 
1743
 
    public final static int
1744
 
           NUM_STATES        = 345,
1745
 
           NT_OFFSET         = 100,
1746
 
           LA_STATE_OFFSET   = 3600,
1747
 
           MAX_LA            = 2147483647,
1748
 
           NUM_RULES         = 386,
1749
 
           NUM_NONTERMINALS  = 148,
1750
 
           NUM_SYMBOLS       = 248,
1751
 
           SEGMENT_SIZE      = 8192,
1752
 
           START_STATE       = 484,
1753
 
           IDENTIFIER_SYMBOL = 0,
1754
 
           EOFT_SYMBOL       = 99,
1755
 
           EOLT_SYMBOL       = 99,
1756
 
           ACCEPT_ACTION     = 3078,
1757
 
           ERROR_ACTION      = 3214;
1758
 
 
1759
 
    public final static boolean BACKTRACK = true;
1760
 
 
1761
 
    public final int getNumStates() { return NUM_STATES; }
1762
 
    public final int getNtOffset() { return NT_OFFSET; }
1763
 
    public final int getLaStateOffset() { return LA_STATE_OFFSET; }
1764
 
    public final int getMaxLa() { return MAX_LA; }
1765
 
    public final int getNumRules() { return NUM_RULES; }
1766
 
    public final int getNumNonterminals() { return NUM_NONTERMINALS; }
1767
 
    public final int getNumSymbols() { return NUM_SYMBOLS; }
1768
 
    public final int getSegmentSize() { return SEGMENT_SIZE; }
1769
 
    public final int getStartState() { return START_STATE; }
1770
 
    public final int getStartSymbol() { return lhs[0]; }
1771
 
    public final int getIdentifierSymbol() { return IDENTIFIER_SYMBOL; }
1772
 
    public final int getEoftSymbol() { return EOFT_SYMBOL; }
1773
 
    public final int getEoltSymbol() { return EOLT_SYMBOL; }
1774
 
    public final int getAcceptAction() { return ACCEPT_ACTION; }
1775
 
    public final int getErrorAction() { return ERROR_ACTION; }
1776
 
    public final boolean isValidForParser() { return isValidForParser; }
1777
 
    public final boolean getBacktrack() { return BACKTRACK; }
1778
 
 
1779
 
    public final int originalState(int state) {
1780
 
        return -baseCheck[state];
1781
 
    }
1782
 
    public final int asi(int state) {
1783
 
        return asb[originalState(state)];
1784
 
    }
1785
 
    public final int nasi(int state) {
1786
 
        return nasb[originalState(state)];
1787
 
    }
1788
 
    public final int inSymbol(int state) {
1789
 
        return inSymb[originalState(state)];
1790
 
    }
1791
 
 
1792
 
    public final int ntAction(int state, int sym) {
1793
 
        return baseAction[state + sym];
1794
 
    }
1795
 
 
1796
 
    public final int tAction(int state, int sym) {
1797
 
        int i = baseAction[state],
1798
 
            k = i + sym;
1799
 
        return termAction[termCheck[k] == sym ? k : i];
1800
 
    }
1801
 
    public final int lookAhead(int la_state, int sym) {
1802
 
        int k = la_state + sym;
1803
 
        return termAction[termCheck[k] == sym ? k : la_state];
1804
 
    }
1805
 
}