]> andersk Git - splint.git/blame - src/cgrammar.c.der
Fixed problem with shadow parameters.
[splint.git] / src / cgrammar.c.der
CommitLineData
885824d3 1/*
2** Inserted at beginning of c files generated by bison
3** REMEMBER: Change bison.reset too.
4*/
5
6/*@-allmacros@*/
7/*@+boolint@*/
8/*@+charint@*/
9/*@-macroparams@*/
10/*@-macroundef@*/
11/*@-unreachable@*/
12/*@-macrospec@*/
13/*@-varuse@*/
14/*@+ignorequals@*/
15/*@-macrostmt@*/
16/*@-noeffect@*/
17/*@-shadow@*/
18/*@-exitarg@*/
19/*@-macroredef@*/
20/*@-uniondef@*/
21/*@-compdef@*/
22/*@-matchfields@*/
23/*@-exportlocal@*/
24/*@-evalorderuncon@*/
25/*@-exportheader@*/
26/*@-typeuse@*/
27/*@-redecl@*/
28/*@-redef@*/
29/*@-noparams@*/
30/*@-ansireserved@*/
31/*@-fielduse@*/
32/*@-ifblock@*/
33/*@-elseifcomplete@*/
34/*@-whileblock@*/
35/*@-forblock@*/
36/*@-branchstate@*/
37/*@-readonlytrans@*/
38/*@-namechecks@*/
39/*@-usedef@*/
40/*@-systemunrecog@*/
41/*@-dependenttrans@*/
42/*@-unqualifiedtrans@*/
43/*@-nullassign@*/
2e127cb8 44/*@-nullpass@*/
45/*@-nullptrarith*/
46/*@-usereleased@*/
c05aefaa 47/*@-declundef@*/
885824d3 48
c05aefaa 49/*drl added 11/27/2001*/
bb7c2085 50/*@-bounds@*/
1d91681f 51
52/*drl added 12/11/2002*/
53/*@-type@*/
54
885824d3 55/* < end of bison.head > */
56
d0b80d80 57/* A Bison parser, made from cgrammar.y
58 by GNU bison 1.35. */
59
60#define YYBISON 1 /* Identify Bison output. */
61
62# define BADTOK 257
63# define SKIPTOK 258
64# define CTOK_ELIPSIS 259
65# define CASE 260
66# define DEFAULT 261
67# define CIF 262
68# define CELSE 263
69# define SWITCH 264
70# define WHILE 265
71# define DO 266
72# define CFOR 267
73# define GOTO 268
74# define CONTINUE 269
75# define BREAK 270
76# define RETURN 271
77# define TSEMI 272
78# define TLBRACE 273
79# define TRBRACE 274
80# define TCOMMA 275
81# define TCOLON 276
82# define TASSIGN 277
83# define TLPAREN 278
84# define TRPAREN 279
85# define TLSQBR 280
86# define TRSQBR 281
87# define TDOT 282
88# define TAMPERSAND 283
89# define TEXCL 284
90# define TTILDE 285
91# define TMINUS 286
92# define TPLUS 287
93# define TMULT 288
94# define TDIV 289
95# define TPERCENT 290
96# define TLT 291
97# define TGT 292
98# define TCIRC 293
99# define TBAR 294
100# define TQUEST 295
101# define CSIZEOF 296
102# define CALIGNOF 297
103# define CTYPEOF 298
104# define ARROW_OP 299
105# define CTYPEDEF 300
106# define COFFSETOF 301
107# define INC_OP 302
108# define DEC_OP 303
109# define LEFT_OP 304
110# define RIGHT_OP 305
111# define LE_OP 306
112# define GE_OP 307
113# define EQ_OP 308
114# define NE_OP 309
115# define AND_OP 310
116# define OR_OP 311
117# define MUL_ASSIGN 312
118# define DIV_ASSIGN 313
119# define MOD_ASSIGN 314
120# define ADD_ASSIGN 315
121# define SUB_ASSIGN 316
122# define LEFT_ASSIGN 317
123# define RIGHT_ASSIGN 318
124# define AND_ASSIGN 319
125# define XOR_ASSIGN 320
126# define OR_ASSIGN 321
127# define CSTRUCT 322
128# define CUNION 323
129# define CENUM 324
130# define VA_ARG 325
131# define VA_DCL 326
132# define QWARN 327
133# define QGLOBALS 328
134# define QMODIFIES 329
135# define QNOMODS 330
136# define QCONSTANT 331
137# define QFUNCTION 332
138# define QITER 333
139# define QDEFINES 334
140# define QUSES 335
141# define QALLOCATES 336
142# define QSETS 337
143# define QRELEASES 338
144# define QPRECLAUSE 339
145# define QPOSTCLAUSE 340
146# define QINVARIANT 341
147# define QALT 342
148# define QUNDEF 343
149# define QKILLED 344
150# define QENDMACRO 345
151# define LLMACRO 346
152# define LLMACROITER 347
153# define LLMACROEND 348
154# define TENDMACRO 349
909cf5eb 155# define QDREVEALSTATE 350
156# define QSWITCHBREAK 351
157# define QLOOPBREAK 352
158# define QINNERBREAK 353
159# define QSAFEBREAK 354
160# define QINNERCONTINUE 355
161# define QFALLTHROUGH 356
162# define QLINTNOTREACHED 357
163# define QLINTFALLTHROUGH 358
164# define QLINTFALLTHRU 359
165# define QARGSUSED 360
166# define QPRINTFLIKE 361
167# define QLINTPRINTFLIKE 362
168# define QSCANFLIKE 363
169# define QMESSAGELIKE 364
170# define QNOTREACHED 365
171# define QCONST 366
172# define QRESTRICT 367
173# define QVOLATILE 368
174# define QINLINE 369
175# define QEXTENSION 370
176# define QEXTERN 371
177# define QSTATIC 372
178# define QAUTO 373
179# define QREGISTER 374
180# define QOUT 375
181# define QIN 376
182# define QYIELD 377
183# define QONLY 378
184# define QTEMP 379
185# define QSHARED 380
186# define QREF 381
187# define QUNIQUE 382
188# define QCHECKED 383
189# define QUNCHECKED 384
190# define QCHECKEDSTRICT 385
191# define QCHECKMOD 386
192# define QKEEP 387
193# define QKEPT 388
194# define QPARTIAL 389
195# define QSPECIAL 390
196# define QOWNED 391
197# define QDEPENDENT 392
198# define QRETURNED 393
199# define QEXPOSED 394
200# define QNULL 395
201# define QOBSERVER 396
202# define QISNULL 397
203# define QEXITS 398
204# define QMAYEXIT 399
205# define QNEVEREXIT 400
206# define QTRUEEXIT 401
207# define QFALSEEXIT 402
208# define QLONG 403
209# define QSIGNED 404
210# define QUNSIGNED 405
211# define QSHORT 406
212# define QUNUSED 407
213# define QSEF 408
214# define QNOTNULL 409
215# define QRELNULL 410
216# define QABSTRACT 411
217# define QNUMABSTRACT 412
218# define QCONCRETE 413
219# define QMUTABLE 414
220# define QIMMUTABLE 415
221# define QTRUENULL 416
222# define QFALSENULL 417
223# define QEXTERNAL 418
224# define QREFCOUNTED 419
225# define QREFS 420
226# define QNEWREF 421
227# define QTEMPREF 422
228# define QKILLREF 423
229# define QRELDEF 424
230# define CGCHAR 425
231# define CBOOL 426
232# define CINT 427
233# define CGFLOAT 428
234# define CDOUBLE 429
235# define CVOID 430
236# define QANYTYPE 431
237# define QINTEGRALTYPE 432
238# define QUNSIGNEDINTEGRALTYPE 433
239# define QSIGNEDINTEGRALTYPE 434
240# define QNULLTERMINATED 435
241# define QSETBUFFERSIZE 436
242# define QSETSTRINGLENGTH 437
243# define QMAXSET 438
244# define QMAXREAD 439
245# define QTESTINRANGE 440
246# define TCAND 441
247# define IDENTIFIER 442
248# define NEW_IDENTIFIER 443
249# define TYPE_NAME_OR_ID 444
250# define CANNOTATION 445
251# define CCONSTANT 446
252# define ITER_NAME 447
253# define ITER_ENDNAME 448
254# define TYPE_NAME 449
255# define METASTATE_NAME 450
d0b80d80 256
257
258/*
259**
260** cgrammar.y
261**
262** Yacc/Bison grammar for extended ANSI C used by Splint.
263**
264** original grammar by Nate Osgood ---
265** hacrat@catfish.lcs.mit.edu Mon Jun 14 13:06:32 1993
266**
267** changes for Splint --- handle typedef names correctly
268** fix struct/union parsing bug (empty struct is accepted)
269** add productions to handle macros --- require
270** error correction --- main source of conflicts in grammar.
271** need to process initializations sequentially, L->R
272**
273** production names are cryptic, so more productions fit on one line
274**
275** conflicts: 87 shift/reduce, 18 reduce/reduce
276** most of these are due to handling macros
277** a few are due to handling type expressions
278*/
279
280/*@=allmacros@*/
281
282extern int yylex ();
283extern void yyerror (char *);
284
285# include "splintMacros.nf"
286# include "basic.h"
287# include "cscanner.h"
16c024b5 288# include "cscannerHelp.h"
d0b80d80 289# include "cgrammar.h"
290# include "exprChecks.h"
291
292/*@-allmacros@*/
293/*@-matchfields@*/
294
295# define SHOWCSYM FALSE
296
297/*
298** This is necessary, or else when the bison-generated code #include's malloc.h,
299** there will be a parse error.
300**
301** Unfortunately, it means the error checking on malloc, etc. is lost for allocations
302** in bison-generated files under Win32.
303*/
304
305# ifdef WIN32
306# undef malloc
307# undef calloc
308# undef realloc
309# endif
310
311
312#ifndef cgrammar_YYSTYPE
313typedef union
314{
315 lltok tok;
316 int count;
317 qual typequal;
318 qualList tquallist;
319 ctype ctyp;
320 /*@dependent@*/ sRef sr;
321 /*@only@*/ sRef osr;
322
323 /*@only@*/ functionClauseList funcclauselist;
324 /*@only@*/ functionClause funcclause;
325 /*@only@*/ flagSpec flagspec;
326 /*@only@*/ globalsClause globsclause;
327 /*@only@*/ modifiesClause modsclause;
328 /*@only@*/ warnClause warnclause;
329 /*@only@*/ stateClause stateclause;
330 /*@only@*/ pointers pointers;
331 /*@only@*/ functionConstraint fcnconstraint;
332
333 /*@only@*/ metaStateConstraint msconstraint;
334 /*@only@*/ metaStateSpecifier msspec;
335 /*@only@*/ metaStateExpression msexpr;
336 /*@observer@*/ metaStateInfo msinfo;
337
338 /*@only@*/ sRefList srlist;
339 /*@only@*/ globSet globset;
340 /*@only@*/ qtype qtyp;
341 /*@only@*/ cstring cname;
342 /*@observer@*/ annotationInfo annotation;
343 /*@only@*/ idDecl ntyp;
344 /*@only@*/ idDeclList ntyplist;
345 /*@only@*/ uentryList flist;
346 /*@owned@*/ uentryList entrylist;
347 /*@observer@*/ /*@dependent@*/ uentry entry;
348 /*@only@*/ uentry oentry;
349 /*@only@*/ exprNode expr;
350 /*@only@*/ enumNameList enumnamelist;
351 /*@only@*/ exprNodeList exprlist;
352 /*@only@*/ sRefSet srset;
353 /*@only@*/ cstringList cstringlist;
354
355 /*drl
356 added 1/19/2001
357 */
358 constraint con;
359 constraintList conL;
360 constraintExpr conE;
361 /* drl */
362} yystype;
363# define cgrammar_YYSTYPE yystype
364# define cgrammar_YYSTYPE_IS_TRIVIAL 1
365#endif
366#ifndef YYDEBUG
367# define YYDEBUG 1
368#endif
369
370
371
909cf5eb 372#define YYFINAL 1256
d0b80d80 373#define YYFLAG -32768
909cf5eb 374#define YYNTBASE 197
d0b80d80 375
376/* YYTRANSLATE(YYLEX) -- Bison token number corresponding to YYLEX. */
909cf5eb 377#define YYTRANSLATE(x) ((unsigned)(x) <= 450 ? yytranslate[x] : 468)
d0b80d80 378
379/* YYTRANSLATE[YYLEX] -- Bison token number corresponding to YYLEX. */
380static const short yytranslate[] =
381{
382 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
383 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
384 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
385 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
386 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
387 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
388 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
389 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
390 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
391 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
392 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
393 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
394 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
395 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
396 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
397 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
398 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
399 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
400 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
401 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
402 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
403 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
404 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
405 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
406 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
407 2, 2, 2, 2, 2, 2, 1, 3, 4, 5,
408 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
409 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
410 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
411 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
412 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
413 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
414 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
415 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
416 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
417 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
418 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
419 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
420 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
421 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
422 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
423 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
424 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
425 176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
909cf5eb 426 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
427 196
d0b80d80 428};
429
430#if YYDEBUG
431static const short yyprhs[] =
432{
433 0, 0, 1, 3, 5, 8, 11, 13, 15, 17,
434 19, 21, 23, 25, 34, 46, 47, 53, 55, 59,
435 61, 64, 66, 73, 77, 84, 85, 92, 93, 101,
436 103, 110, 114, 121, 122, 129, 130, 138, 139, 140,
437 151, 155, 159, 163, 166, 168, 172, 173, 178, 179,
438 184, 186, 190, 192, 194, 196, 200, 202, 206, 208,
439 210, 212, 214, 216, 218, 223, 229, 231, 233, 235,
440 237, 241, 246, 249, 253, 257, 261, 263, 265, 267,
441 268, 271, 272, 275, 277, 279, 281, 283, 285, 287,
442 289, 291, 293, 295, 297, 299, 302, 303, 308, 310,
443 313, 314, 318, 320, 324, 326, 328, 329, 332, 336,
444 339, 341, 345, 348, 349, 352, 354, 356, 358, 360,
445 362, 364, 366, 368, 370, 372, 374, 376, 378, 380,
446 382, 384, 388, 389, 393, 394, 395, 400, 403, 406,
2f2892c2 447 408, 410, 412, 414, 418, 423, 426, 430, 434, 438,
448 440, 442, 444, 448, 450, 452, 456, 461, 464, 468,
449 472, 476, 477, 479, 481, 485, 487, 489, 491, 495,
450 497, 499, 500, 505, 507, 512, 516, 521, 528, 534,
451 540, 543, 546, 554, 556, 560, 562, 565, 568, 571,
edad9a7f 452 574, 577, 580, 583, 586, 590, 592, 596, 601, 603,
453 613, 614, 618, 619, 620, 625, 628, 633, 636, 638,
454 643, 645, 649, 653, 657, 659, 663, 667, 669, 673,
455 677, 679, 683, 687, 691, 695, 697, 701, 705, 707,
456 711, 713, 717, 719, 723, 725, 726, 731, 733, 734,
457 739, 741, 742, 743, 751, 753, 757, 761, 765, 769,
458 773, 777, 781, 785, 789, 793, 797, 799, 803, 804,
459 806, 808, 810, 812, 814, 818, 819, 829, 830, 842,
460 844, 846, 849, 850, 857, 858, 867, 872, 877, 878,
461 879, 882, 884, 889, 892, 894, 899, 900, 905, 907,
462 911, 916, 919, 922, 925, 927, 930, 934, 937, 939,
463 943, 945, 947, 949, 951, 953, 956, 957, 964, 967,
464 970, 971, 978, 979, 985, 987, 989, 991, 993, 995,
3dabb077 465 997, 999, 1001, 1003, 1005, 1007, 1009, 1011, 1013, 1015,
466 1017, 1019, 1021, 1023, 1025, 1027, 1029, 1031, 1033, 1035,
467 1037, 1039, 1041, 1043, 1045, 1047, 1049, 1051, 1053, 1055,
468 1057, 1059, 1061, 1063, 1065, 1067, 1069, 1071, 1073, 1075,
edad9a7f 469 1077, 1079, 1081, 1083, 1085, 1087, 1089, 1091, 1094, 1097,
470 1100, 1103, 1106, 1109, 1112, 1115, 1118, 1121, 1124, 1127,
471 1130, 1133, 1136, 1139, 1142, 1145, 1148, 1151, 1154, 1157,
472 1160, 1163, 1166, 1169, 1173, 1175, 1180, 1182, 1186, 1189,
473 1192, 1195, 1196, 1198, 1199, 1200, 1201, 1214, 1215, 1216,
474 1228, 1235, 1242, 1243, 1244, 1255, 1256, 1257, 1268, 1274,
475 1280, 1285, 1290, 1291, 1293, 1295, 1298, 1304, 1308, 1311,
476 1316, 1318, 1322, 1327, 1334, 1335, 1344, 1349, 1351, 1355,
477 1358, 1360, 1365, 1367, 1369, 1372, 1375, 1377, 1380, 1382,
478 1385, 1387, 1389, 1391, 1393, 1396, 1398, 1401, 1404, 1408,
479 1410, 1414, 1416, 1420, 1422, 1424, 1428, 1429, 1432, 1433,
480 1438, 1443, 1445, 1447, 1450, 1452, 1454, 1457, 1458, 1460,
481 1466, 1469, 1473, 1477, 1482, 1486, 1491, 1496, 1502, 1504,
909cf5eb 482 1506, 1508, 1510, 1512, 1514, 1516, 1518, 1520, 1522, 1527,
483 1529, 1531, 1533, 1536, 1539, 1547, 1554, 1557, 1558, 1559,
484 1570, 1571, 1578, 1580, 1582, 1584, 1586, 1589, 1591, 1593,
485 1595, 1597, 1599, 1601, 1603, 1607, 1609, 1610, 1614, 1617,
486 1620, 1622, 1624, 1626, 1628, 1630, 1632, 1634, 1636, 1638,
487 1640, 1644, 1646, 1648, 1650, 1653, 1656, 1657, 1660, 1661,
488 1666, 1667, 1674, 1675, 1679, 1680, 1686, 1690, 1693, 1697,
489 1698, 1699, 1700, 1701, 1702, 1704, 1707, 1710, 1714, 1717,
490 1721, 1725, 1730, 1733, 1736, 1740, 1744, 1749, 1751, 1754,
491 1756, 1759, 1761, 1765, 1767, 1772, 1774, 1777, 1779, 1782,
492 1784, 1787, 1789, 1794, 1797, 1798, 1804, 1805, 1812, 1817,
493 1822, 1823, 1824, 1835, 1837, 1838, 1843, 1845, 1847, 1849,
494 1851, 1853, 1856, 1858, 1862, 1864, 1869, 1873, 1878, 1885,
495 1891, 1897, 1900, 1903, 1905, 1908, 1911, 1914, 1917, 1920,
496 1923, 1926, 1929, 1931, 1933, 1938, 1940, 1944, 1948, 1952,
497 1954, 1958, 1962, 1964, 1968, 1972, 1974, 1978, 1982, 1986,
498 1990, 1992, 1996, 2000, 2002, 2006, 2008, 2012, 2014, 2018,
499 2020, 2024, 2026, 2030, 2032, 2033, 2034, 2042, 2044, 2048,
500 2052, 2056, 2060, 2064, 2068, 2072, 2076, 2080, 2084, 2088,
501 2090, 2091, 2093, 2096, 2104, 2107, 2110, 2118, 2125, 2128,
502 2132, 2135, 2139, 2142, 2146, 2150, 2154, 2158, 2161, 2165,
503 2166, 2168, 2169, 2171, 2173, 2175, 2177, 2179, 2181, 2183,
504 2185, 2187, 2192
d0b80d80 505};
506static const short yyrhs[] =
507{
909cf5eb 508 -1, 198, 0, 199, 0, 198, 199, 0, 260, 463,
509 0, 200, 0, 201, 0, 211, 0, 214, 0, 300,
510 0, 18, 0, 1, 0, 77, 344, 358, 368, 358,
511 463, 309, 91, 0, 77, 344, 358, 368, 358, 23,
512 309, 316, 315, 463, 91, 0, 0, 78, 202, 203,
513 463, 91, 0, 204, 0, 344, 358, 204, 0, 208,
514 0, 372, 208, 0, 466, 0, 309, 24, 358, 368,
515 309, 25, 0, 205, 26, 27, 0, 205, 26, 309,
516 299, 27, 358, 0, 0, 205, 310, 24, 25, 206,
517 232, 0, 0, 205, 310, 24, 369, 25, 207, 232,
518 0, 466, 0, 309, 24, 358, 204, 309, 25, 0,
519 208, 26, 27, 0, 208, 26, 309, 299, 27, 358,
520 0, 0, 208, 310, 24, 25, 209, 233, 0, 0,
521 208, 310, 24, 369, 25, 210, 233, 0, 0, 0,
522 79, 466, 24, 369, 25, 212, 233, 213, 463, 91,
523 0, 92, 400, 95, 0, 93, 386, 95, 0, 94,
524 387, 95, 0, 92, 95, 0, 255, 0, 217, 23,
525 220, 0, 0, 229, 218, 22, 221, 0, 0, 5,
526 219, 22, 221, 0, 217, 0, 217, 40, 220, 0,
527 196, 0, 187, 0, 56, 0, 224, 222, 223, 0,
528 224, 0, 227, 226, 227, 0, 184, 0, 185, 0,
529 53, 0, 52, 0, 54, 0, 228, 0, 230, 24,
530 227, 25, 0, 24, 227, 231, 227, 25, 0, 229,
531 0, 192, 0, 465, 0, 189, 0, 229, 26, 27,
532 0, 229, 26, 192, 27, 0, 34, 229, 0, 24,
533 229, 25, 0, 229, 28, 466, 0, 229, 45, 466,
534 0, 225, 0, 33, 0, 32, 0, 0, 234, 232,
535 0, 0, 235, 233, 0, 236, 0, 240, 0, 239,
536 0, 322, 0, 325, 0, 246, 0, 237, 0, 241,
537 0, 239, 0, 323, 0, 327, 0, 247, 0, 237,
538 91, 0, 0, 74, 238, 248, 463, 0, 76, 0,
539 241, 91, 0, 0, 75, 242, 261, 0, 244, 0,
540 244, 40, 243, 0, 189, 0, 246, 0, 0, 247,
541 91, 0, 73, 243, 439, 0, 73, 243, 0, 249,
542 0, 248, 21, 249, 0, 250, 251, 0, 0, 252,
543 250, 0, 465, 0, 189, 0, 300, 0, 89, 0,
544 90, 0, 121, 0, 122, 0, 135, 0, 80, 0,
d0b80d80 545 81, 0, 82, 0, 83, 0, 84, 0, 85, 0,
909cf5eb 546 86, 0, 368, 0, 344, 358, 368, 0, 0, 19,
547 257, 417, 0, 0, 0, 258, 421, 259, 410, 0,
548 215, 256, 0, 264, 463, 0, 463, 0, 465, 0,
549 189, 0, 190, 0, 262, 26, 27, 0, 262, 26,
550 263, 27, 0, 34, 262, 0, 24, 262, 25, 0,
551 262, 28, 466, 0, 262, 45, 466, 0, 262, 0,
552 439, 0, 262, 0, 264, 21, 262, 0, 465, 0,
553 189, 0, 265, 26, 27, 0, 265, 26, 263, 27,
554 0, 34, 265, 0, 24, 265, 25, 0, 265, 28,
555 466, 0, 265, 45, 466, 0, 0, 267, 0, 265,
556 0, 267, 21, 265, 0, 465, 0, 189, 0, 439,
557 0, 24, 297, 25, 0, 190, 0, 116, 0, 0,
558 24, 269, 410, 25, 0, 268, 0, 270, 26, 297,
559 27, 0, 270, 24, 25, 0, 270, 24, 271, 25,
560 0, 71, 24, 296, 21, 380, 25, 0, 270, 358,
561 28, 466, 309, 0, 270, 358, 45, 466, 309, 0,
562 270, 48, 0, 270, 49, 0, 24, 380, 25, 19,
563 422, 464, 20, 0, 296, 0, 271, 21, 296, 0,
564 270, 0, 48, 272, 0, 49, 272, 0, 29, 280,
565 0, 34, 280, 0, 33, 280, 0, 32, 280, 0,
566 31, 280, 0, 30, 280, 0, 277, 275, 278, 0,
567 274, 0, 273, 28, 466, 0, 273, 26, 297, 27,
568 0, 466, 0, 47, 309, 24, 380, 358, 21, 273,
569 25, 309, 0, 0, 309, 276, 279, 0, 0, 0,
570 42, 24, 380, 25, 0, 42, 272, 0, 43, 24,
571 380, 25, 0, 43, 272, 0, 272, 0, 24, 380,
572 25, 280, 0, 280, 0, 281, 34, 280, 0, 281,
573 35, 280, 0, 281, 36, 280, 0, 281, 0, 282,
574 33, 281, 0, 282, 32, 281, 0, 282, 0, 283,
575 50, 282, 0, 283, 51, 282, 0, 283, 0, 284,
576 37, 283, 0, 284, 38, 283, 0, 284, 52, 283,
577 0, 284, 53, 283, 0, 284, 0, 285, 54, 284,
578 0, 285, 55, 284, 0, 285, 0, 286, 29, 285,
579 0, 286, 0, 287, 39, 286, 0, 287, 0, 288,
580 40, 287, 0, 288, 0, 0, 289, 56, 290, 288,
581 0, 289, 0, 0, 291, 57, 292, 289, 0, 291,
582 0, 0, 0, 291, 41, 294, 297, 22, 295, 293,
583 0, 293, 0, 272, 23, 296, 0, 272, 58, 296,
584 0, 272, 59, 296, 0, 272, 60, 296, 0, 272,
585 61, 296, 0, 272, 62, 296, 0, 272, 63, 296,
586 0, 272, 64, 296, 0, 272, 65, 296, 0, 272,
587 66, 296, 0, 272, 67, 296, 0, 296, 0, 297,
588 21, 296, 0, 0, 297, 0, 293, 0, 301, 0,
589 72, 0, 307, 0, 344, 309, 18, 0, 0, 344,
590 358, 368, 358, 302, 309, 315, 18, 309, 0, 0,
591 344, 358, 368, 358, 23, 303, 309, 316, 315, 18,
592 309, 0, 305, 0, 195, 0, 368, 358, 0, 0,
593 368, 358, 23, 306, 309, 316, 0, 0, 46, 344,
594 308, 358, 313, 309, 245, 18, 0, 46, 344, 309,
595 18, 0, 46, 311, 309, 18, 0, 0, 0, 312,
596 309, 0, 305, 0, 311, 21, 358, 305, 0, 314,
597 309, 0, 304, 0, 313, 21, 358, 304, 0, 0,
598 315, 21, 358, 305, 0, 296, 0, 19, 320, 20,
599 0, 19, 320, 21, 20, 0, 317, 316, 0, 318,
600 23, 0, 466, 22, 0, 319, 0, 318, 319, 0,
601 26, 299, 27, 0, 28, 466, 0, 316, 0, 320,
602 21, 316, 0, 117, 0, 115, 0, 118, 0, 119,
603 0, 120, 0, 323, 91, 0, 0, 253, 358, 324,
604 267, 463, 309, 0, 327, 91, 0, 254, 358, 0,
605 0, 326, 333, 328, 266, 463, 309, 0, 0, 326,
606 329, 330, 463, 309, 0, 223, 0, 216, 0, 144,
607 0, 145, 0, 147, 0, 148, 0, 146, 0, 129,
608 0, 132, 0, 130, 0, 131, 0, 137, 0, 138,
609 0, 123, 0, 125, 0, 124, 0, 133, 0, 134,
610 0, 126, 0, 128, 0, 141, 0, 143, 0, 156,
611 0, 155, 0, 140, 0, 142, 0, 181, 0, 191,
612 0, 139, 0, 154, 0, 153, 0, 164, 0, 162,
613 0, 163, 0, 157, 0, 158, 0, 159, 0, 160,
614 0, 161, 0, 165, 0, 166, 0, 169, 0, 170,
615 0, 167, 0, 168, 0, 152, 0, 149, 0, 150,
616 0, 151, 0, 121, 0, 122, 0, 135, 0, 136,
617 0, 112, 309, 0, 114, 309, 0, 113, 309, 0,
618 340, 309, 0, 333, 309, 0, 331, 309, 0, 334,
619 309, 0, 332, 309, 0, 336, 309, 0, 335, 309,
620 0, 337, 309, 0, 338, 309, 0, 171, 358, 0,
621 173, 358, 0, 172, 358, 0, 174, 358, 0, 175,
622 358, 0, 176, 358, 0, 177, 358, 0, 178, 358,
623 0, 179, 358, 0, 180, 358, 0, 467, 358, 0,
624 349, 358, 0, 363, 358, 0, 339, 358, 0, 309,
625 344, 309, 0, 346, 0, 346, 88, 345, 91, 0,
626 380, 0, 380, 21, 345, 0, 321, 347, 0, 341,
627 347, 0, 342, 347, 0, 0, 344, 0, 0, 0,
628 0, 358, 68, 466, 309, 19, 350, 414, 359, 415,
629 351, 20, 348, 0, 0, 0, 358, 69, 466, 309,
630 19, 352, 414, 359, 415, 353, 20, 0, 358, 68,
631 466, 309, 19, 20, 0, 358, 69, 466, 309, 19,
632 20, 0, 0, 0, 358, 68, 309, 19, 354, 414,
633 359, 415, 355, 20, 0, 0, 0, 358, 69, 309,
634 19, 356, 414, 359, 415, 357, 20, 0, 358, 68,
635 309, 19, 20, 0, 358, 69, 309, 19, 20, 0,
636 358, 68, 466, 358, 0, 358, 69, 466, 358, 0,
637 0, 360, 0, 214, 0, 359, 360, 0, 344, 358,
638 361, 309, 18, 0, 344, 309, 18, 0, 362, 358,
639 0, 361, 21, 362, 358, 0, 368, 0, 22, 309,
640 299, 0, 368, 22, 309, 299, 0, 358, 70, 19,
641 365, 20, 309, 0, 0, 358, 70, 466, 19, 364,
642 365, 20, 309, 0, 358, 70, 466, 309, 0, 366,
643 0, 365, 21, 366, 0, 365, 21, 0, 466, 0,
644 466, 23, 309, 299, 0, 205, 0, 382, 0, 372,
645 195, 0, 372, 367, 0, 205, 0, 372, 205, 0,
646 375, 0, 358, 373, 0, 112, 0, 113, 0, 114,
647 0, 370, 0, 371, 370, 0, 34, 0, 34, 371,
648 0, 34, 372, 0, 34, 371, 372, 0, 374, 0,
649 374, 21, 5, 0, 466, 0, 374, 21, 466, 0,
650 5, 0, 376, 0, 376, 21, 5, 0, 0, 377,
651 379, 0, 0, 376, 21, 378, 379, 0, 309, 344,
652 367, 309, 0, 466, 0, 343, 0, 343, 381, 0,
653 372, 0, 383, 0, 372, 383, 0, 0, 383, 0,
654 309, 24, 358, 381, 25, 0, 26, 27, 0, 26,
655 299, 27, 0, 383, 26, 27, 0, 383, 26, 299,
656 27, 0, 309, 24, 25, 0, 309, 24, 375, 25,
657 0, 383, 309, 24, 25, 0, 383, 309, 24, 375,
658 25, 0, 402, 0, 404, 0, 407, 0, 410, 0,
659 425, 0, 428, 0, 460, 0, 433, 0, 462, 0,
660 385, 0, 96, 24, 297, 25, 0, 388, 0, 386,
661 0, 395, 0, 388, 395, 0, 432, 388, 0, 459,
662 401, 11, 24, 297, 25, 18, 0, 459, 401, 11,
663 24, 297, 25, 0, 390, 395, 0, 0, 0, 13,
664 24, 298, 18, 298, 18, 391, 298, 392, 25, 0,
665 0, 193, 412, 24, 394, 436, 25, 0, 194, 0,
666 402, 0, 404, 0, 407, 0, 398, 421, 0, 398,
667 0, 399, 0, 425, 0, 396, 0, 389, 0, 393,
668 0, 462, 0, 24, 395, 25, 0, 1, 0, 0,
669 427, 397, 395, 0, 412, 19, 0, 416, 20, 0,
670 401, 0, 420, 0, 402, 0, 404, 0, 407, 0,
671 411, 0, 426, 0, 428, 0, 433, 0, 461, 0,
672 24, 401, 25, 0, 462, 0, 385, 0, 1, 0,
673 466, 22, 0, 111, 384, 0, 0, 102, 403, 0,
674 0, 6, 299, 405, 22, 0, 0, 102, 403, 6,
675 299, 406, 22, 0, 0, 7, 408, 22, 0, 0,
676 102, 403, 7, 409, 22, 0, 24, 410, 25, 0,
677 412, 418, 0, 412, 419, 413, 0, 0, 0, 0,
678 0, 0, 20, 0, 111, 20, 0, 424, 20, 0,
679 424, 111, 20, 0, 421, 20, 0, 421, 111, 20,
680 0, 421, 424, 20, 0, 421, 424, 111, 20, 0,
681 19, 417, 0, 19, 20, 0, 19, 420, 20, 0,
682 19, 421, 20, 0, 19, 421, 424, 20, 0, 401,
683 0, 420, 401, 0, 300, 0, 421, 300, 0, 423,
684 0, 422, 21, 423, 0, 296, 0, 19, 422, 464,
685 20, 0, 384, 0, 424, 384, 0, 18, 0, 297,
686 18, 0, 18, 0, 297, 18, 0, 297, 0, 8,
687 24, 297, 25, 0, 427, 384, 0, 0, 427, 384,
688 9, 429, 384, 0, 0, 10, 24, 297, 430, 25,
689 384, 0, 11, 24, 297, 25, 0, 11, 24, 297,
690 25, 0, 0, 0, 193, 434, 412, 24, 435, 436,
691 25, 410, 458, 413, 0, 438, 0, 0, 436, 437,
692 21, 438, 0, 457, 0, 465, 0, 190, 0, 189,
693 0, 192, 0, 439, 192, 0, 439, 0, 24, 297,
694 25, 0, 440, 0, 270, 26, 297, 27, 0, 270,
695 24, 25, 0, 270, 24, 271, 25, 0, 71, 24,
696 296, 21, 380, 25, 0, 270, 358, 28, 466, 309,
697 0, 270, 358, 45, 466, 309, 0, 270, 48, 0,
698 270, 49, 0, 441, 0, 48, 272, 0, 49, 272,
699 0, 29, 280, 0, 34, 280, 0, 33, 280, 0,
700 32, 280, 0, 31, 280, 0, 30, 280, 0, 275,
701 0, 442, 0, 24, 380, 25, 280, 0, 443, 0,
702 281, 34, 280, 0, 281, 35, 280, 0, 281, 36,
703 280, 0, 444, 0, 282, 33, 281, 0, 282, 32,
704 281, 0, 445, 0, 283, 50, 282, 0, 283, 51,
705 282, 0, 446, 0, 284, 37, 283, 0, 284, 38,
706 283, 0, 284, 52, 283, 0, 284, 53, 283, 0,
707 447, 0, 285, 54, 284, 0, 285, 55, 284, 0,
708 448, 0, 286, 29, 285, 0, 449, 0, 287, 39,
709 286, 0, 450, 0, 288, 40, 287, 0, 451, 0,
710 289, 56, 288, 0, 452, 0, 291, 57, 289, 0,
711 453, 0, 0, 0, 291, 41, 455, 297, 22, 456,
712 293, 0, 454, 0, 272, 23, 296, 0, 272, 58,
713 296, 0, 272, 59, 296, 0, 272, 60, 296, 0,
714 272, 61, 296, 0, 272, 62, 296, 0, 272, 63,
715 296, 0, 272, 64, 296, 0, 272, 65, 296, 0,
716 272, 66, 296, 0, 272, 67, 296, 0, 194, 0,
717 0, 12, 0, 431, 384, 0, 459, 384, 11, 24,
718 297, 25, 18, 0, 390, 384, 0, 431, 401, 0,
719 459, 401, 11, 24, 297, 25, 18, 0, 459, 401,
720 11, 24, 297, 25, 0, 390, 401, 0, 14, 466,
721 18, 0, 15, 18, 0, 101, 15, 18, 0, 16,
722 18, 0, 97, 16, 18, 0, 98, 16, 18, 0,
723 99, 16, 18, 0, 100, 16, 18, 0, 17, 18,
724 0, 17, 297, 18, 0, 0, 18, 0, 0, 21,
725 0, 188, 0, 189, 0, 193, 0, 194, 0, 465,
726 0, 190, 0, 195, 0, 190, 0, 44, 24, 297,
727 25, 0, 44, 24, 380, 25, 0
d0b80d80 728};
729
730#endif
731
732#if YYDEBUG
733/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
734static const short yyrline[] =
735{
909cf5eb 736 0, 328, 329, 333, 334, 338, 339, 340, 341, 342,
737 343, 344, 345, 349, 351, 356, 356, 365, 371, 376,
738 377, 382, 383, 385, 387, 404, 404, 435, 435, 465,
739 466, 468, 472, 489, 489, 501, 501, 515, 515, 515,
740 524, 525, 526, 527, 531, 535, 540, 540, 545, 545,
741 553, 554, 558, 564, 565, 569, 570, 574, 580, 581,
742 585, 586, 587, 591, 592, 593, 599, 600, 604, 606,
743 608, 610, 619, 621, 623, 625, 642, 646, 647, 654,
744 655, 664, 666, 671, 672, 673, 674, 675, 676, 680,
745 681, 682, 683, 684, 685, 689, 693, 693, 702, 706,
746 710, 710, 725, 727, 732, 736, 737, 741, 745, 751,
747 756, 757, 761, 765, 766, 770, 771, 772, 776, 777,
748 778, 779, 780, 784, 785, 786, 787, 788, 792, 793,
749 797, 804, 809, 809, 815, 815, 815, 826, 837, 838,
750 842, 843, 844, 845, 846, 847, 848, 849, 850, 854,
751 855, 860, 861, 865, 867, 869, 870, 871, 872, 873,
752 875, 880, 881, 885, 891, 904, 905, 906, 907, 908,
753 909, 910, 910, 916, 917, 918, 919, 920, 921, 922,
754 923, 924, 925, 930, 931, 935, 936, 937, 938, 939,
755 940, 941, 942, 943, 944, 945, 949, 950, 952, 956,
756 962, 962, 966, 969, 973, 974, 975, 976, 982, 983,
757 988, 989, 990, 991, 995, 996, 997, 1001, 1002, 1003,
758 1007, 1008, 1009, 1010, 1011, 1015, 1016, 1017, 1021, 1022,
759 1026, 1027, 1031, 1032, 1036, 1037, 1037, 1049, 1050, 1050,
760 1063, 1064, 1064, 1064, 1070, 1071, 1072, 1073, 1074, 1075,
761 1076, 1077, 1078, 1079, 1080, 1081, 1085, 1086, 1090, 1091,
762 1095, 1101, 1102, 1103, 1107, 1121, 1121, 1132, 1132, 1141,
763 1142, 1146, 1151, 1151, 1156, 1156, 1159, 1160, 1164, 1168,
764 1172, 1176, 1177, 1181, 1185, 1186, 1190, 1191, 1195, 1196,
765 1197, 1198, 1206, 1207, 1212, 1213, 1217, 1218, 1222, 1224,
766 1234, 1235, 1236, 1237, 1238, 1242, 1246, 1246, 1262, 1266,
767 1270, 1270, 1284, 1284, 1316, 1317, 1321, 1322, 1323, 1324,
768 1325, 1329, 1330, 1331, 1332, 1336, 1337, 1338, 1339, 1340,
769 1341, 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350,
770 1351, 1352, 1356, 1357, 1361, 1362, 1366, 1367, 1371, 1372,
771 1373, 1374, 1375, 1379, 1380, 1381, 1382, 1383, 1384, 1388,
772 1389, 1390, 1391, 1395, 1396, 1397, 1398, 1402, 1403, 1404,
773 1405, 1406, 1407, 1408, 1409, 1410, 1411, 1412, 1413, 1421,
774 1422, 1423, 1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431,
775 1432, 1433, 1434, 1438, 1443, 1444, 1449, 1450, 1455, 1456,
776 1457, 1461, 1462, 1466, 1473, 1473, 1473, 1479, 1479, 1479,
777 1484, 1486, 1488, 1488, 1488, 1493, 1493, 1493, 1498, 1500,
778 1502, 1503, 1507, 1511, 1512, 1513, 1517, 1519, 1524, 1526,
779 1531, 1532, 1533, 1538, 1540, 1540, 1542, 1546, 1548, 1550,
780 1554, 1559, 1567, 1568, 1569, 1575, 1580, 1581, 1586, 1587,
781 1591, 1592, 1593, 1597, 1598, 1602, 1603, 1604, 1605, 1609,
782 1610, 1614, 1615, 1619, 1620, 1621, 1625, 1625, 1626, 1626,
783 1631, 1643, 1660, 1661, 1665, 1666, 1667, 1671, 1672, 1676,
784 1678, 1679, 1681, 1682, 1684, 1686, 1688, 1690, 1697, 1698,
785 1699, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1710, 1714,
786 1718, 1722, 1723, 1728, 1730, 1732, 1734, 1739, 1739, 1739,
787 1747, 1747, 1751, 1755, 1756, 1757, 1758, 1759, 1760, 1761,
788 1762, 1763, 1764, 1765, 1766, 1767, 1771, 1771, 1778, 1782,
789 1786, 1787, 1791, 1792, 1793, 1794, 1795, 1796, 1797, 1798,
790 1799, 1800, 1801, 1802, 1806, 1807, 1815, 1816, 1823, 1823,
791 1825, 1825, 1830, 1830, 1832, 1832, 1837, 1838, 1843, 1847,
792 1851, 1855, 1859, 1863, 1867, 1868, 1869, 1870, 1872, 1873,
793 1875, 1877, 1884, 1889, 1891, 1893, 1895, 1900, 1901, 1905,
794 1906, 1910, 1911, 1915, 1916, 1920, 1921, 1925, 1926, 1930,
795 1931, 1932, 1936, 1950, 1955, 1955, 1960, 1960, 1965, 1971,
796 1975, 1975, 1975, 1986, 1987, 1987, 1992, 1993, 1994, 2005,
797 2013, 2014, 2018, 2019, 2023, 2024, 2025, 2026, 2027, 2029,
798 2030, 2031, 2032, 2036, 2037, 2038, 2039, 2040, 2041, 2042,
799 2043, 2044, 2045, 2049, 2050, 2054, 2055, 2056, 2057, 2061,
800 2062, 2063, 2067, 2068, 2069, 2073, 2074, 2075, 2076, 2077,
801 2081, 2082, 2083, 2087, 2088, 2092, 2093, 2097, 2098, 2102,
802 2103, 2107, 2108, 2112, 2113, 2113, 2113, 2119, 2120, 2121,
803 2122, 2123, 2124, 2125, 2126, 2127, 2128, 2129, 2130, 2134,
804 2135, 2139, 2143, 2145, 2147, 2152, 2153, 2155, 2157, 2161,
805 2162, 2163, 2165, 2166, 2167, 2168, 2169, 2170, 2171, 2175,
806 2176, 2180, 2181, 2185, 2189, 2190, 2191, 2192, 2193, 2197,
807 2198, 2199, 2200
d0b80d80 808};
809#endif
810
811
812#if (YYDEBUG) || defined YYERROR_VERBOSE
813
814/* YYTNAME[TOKEN_NUM] -- String name of the token TOKEN_NUM. */
815static const char *const yytname[] =
816{
817 "$", "error", "$undefined.", "BADTOK", "SKIPTOK", "CTOK_ELIPSIS", "CASE",
818 "DEFAULT", "CIF", "CELSE", "SWITCH", "WHILE", "DO", "CFOR", "GOTO",
819 "CONTINUE", "BREAK", "RETURN", "TSEMI", "TLBRACE", "TRBRACE", "TCOMMA",
820 "TCOLON", "TASSIGN", "TLPAREN", "TRPAREN", "TLSQBR", "TRSQBR", "TDOT",
821 "TAMPERSAND", "TEXCL", "TTILDE", "TMINUS", "TPLUS", "TMULT", "TDIV",
822 "TPERCENT", "TLT", "TGT", "TCIRC", "TBAR", "TQUEST", "CSIZEOF",
823 "CALIGNOF", "CTYPEOF", "ARROW_OP", "CTYPEDEF", "COFFSETOF", "INC_OP",
824 "DEC_OP", "LEFT_OP", "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP",
825 "AND_OP", "OR_OP", "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN",
826 "ADD_ASSIGN", "SUB_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN",
827 "XOR_ASSIGN", "OR_ASSIGN", "CSTRUCT", "CUNION", "CENUM", "VA_ARG",
828 "VA_DCL", "QWARN", "QGLOBALS", "QMODIFIES", "QNOMODS", "QCONSTANT",
829 "QFUNCTION", "QITER", "QDEFINES", "QUSES", "QALLOCATES", "QSETS",
830 "QRELEASES", "QPRECLAUSE", "QPOSTCLAUSE", "QINVARIANT", "QALT",
831 "QUNDEF", "QKILLED", "QENDMACRO", "LLMACRO", "LLMACROITER",
909cf5eb 832 "LLMACROEND", "TENDMACRO", "QDREVEALSTATE", "QSWITCHBREAK",
833 "QLOOPBREAK", "QINNERBREAK", "QSAFEBREAK", "QINNERCONTINUE",
834 "QFALLTHROUGH", "QLINTNOTREACHED", "QLINTFALLTHROUGH", "QLINTFALLTHRU",
835 "QARGSUSED", "QPRINTFLIKE", "QLINTPRINTFLIKE", "QSCANFLIKE",
836 "QMESSAGELIKE", "QNOTREACHED", "QCONST", "QRESTRICT", "QVOLATILE",
837 "QINLINE", "QEXTENSION", "QEXTERN", "QSTATIC", "QAUTO", "QREGISTER",
838 "QOUT", "QIN", "QYIELD", "QONLY", "QTEMP", "QSHARED", "QREF", "QUNIQUE",
839 "QCHECKED", "QUNCHECKED", "QCHECKEDSTRICT", "QCHECKMOD", "QKEEP",
840 "QKEPT", "QPARTIAL", "QSPECIAL", "QOWNED", "QDEPENDENT", "QRETURNED",
841 "QEXPOSED", "QNULL", "QOBSERVER", "QISNULL", "QEXITS", "QMAYEXIT",
842 "QNEVEREXIT", "QTRUEEXIT", "QFALSEEXIT", "QLONG", "QSIGNED",
843 "QUNSIGNED", "QSHORT", "QUNUSED", "QSEF", "QNOTNULL", "QRELNULL",
844 "QABSTRACT", "QNUMABSTRACT", "QCONCRETE", "QMUTABLE", "QIMMUTABLE",
845 "QTRUENULL", "QFALSENULL", "QEXTERNAL", "QREFCOUNTED", "QREFS",
846 "QNEWREF", "QTEMPREF", "QKILLREF", "QRELDEF", "CGCHAR", "CBOOL", "CINT",
847 "CGFLOAT", "CDOUBLE", "CVOID", "QANYTYPE", "QINTEGRALTYPE",
848 "QUNSIGNEDINTEGRALTYPE", "QSIGNEDINTEGRALTYPE", "QNULLTERMINATED",
849 "QSETBUFFERSIZE", "QSETSTRINGLENGTH", "QMAXSET", "QMAXREAD",
850 "QTESTINRANGE", "TCAND", "IDENTIFIER", "NEW_IDENTIFIER",
851 "TYPE_NAME_OR_ID", "CANNOTATION", "CCONSTANT", "ITER_NAME",
852 "ITER_ENDNAME", "TYPE_NAME", "METASTATE_NAME", "file", "externalDefs",
853 "externalDef", "constantDecl", "fcnDecl", "@1", "plainFcn",
854 "plainNamedDecl", "namedDeclBase", "@2", "@3", "plainNamedDeclBase",
855 "@4", "@5", "iterDecl", "@6", "@7", "macroDef", "fcnDefHdr",
856 "metaStateConstraint", "metaStateSpecifier", "@8", "@9",
d0b80d80 857 "metaStateExpression", "metaStateName", "constraintSeperator",
858 "BufConstraintList", "BufConstraint", "bufferModifier", "relationalOp",
859 "BufConstraintExpr", "BufConstraintTerm", "BufConstraintSrefExpr",
860 "BufUnaryOp", "BufBinaryOp", "functionClauses", "functionClausesPlain",
861 "functionClause", "functionClausePlain", "globalsClause",
862 "globalsClausePlain", "@10", "nomodsClause", "modifiesClause",
863 "modifiesClausePlain", "@11", "flagSpec", "flagId", "optWarnClause",
864 "warnClause", "warnClausePlain", "globIdList", "globIdListExpr",
865 "optGlobQuals", "globId", "globQual", "stateTag", "conditionTag",
866 "fcnDefHdrAux", "fcnBody", "@12", "@13", "@14", "fcnDef", "locModifies",
867 "modListExpr", "mExpr", "modList", "specClauseListExpr",
868 "optSpecClauseList", "specClauseList", "primaryExpr", "@15",
869 "postfixExpr", "argumentExprList", "unaryExpr", "fieldDesignator",
edad9a7f 870 "offsetofExpr", "sizeofExpr", "@16", "processSizeof",
871 "endprocessSizeof", "sizeofExprAux", "castExpr", "timesExpr",
872 "plusExpr", "shiftExpr", "relationalExpr", "equalityExpr", "bitandExpr",
873 "xorExpr", "bitorExpr", "andExpr", "@17", "orExpr", "@18",
d0b80d80 874 "conditionalExpr", "@19", "@20", "assignExpr", "expr", "optExpr",
875 "constantExpr", "initializer", "instanceDecl", "@21", "@22",
3dabb077 876 "namedInitializerType", "namedInitializer", "@23", "typeDecl", "@24",
877 "IsType", "PushType", "namedInitializerList", "namedInitializerListAux",
878 "namedInitializerTypeList", "namedInitializerTypeListAux",
879 "optDeclarators", "init", "designation", "designatorList", "designator",
880 "initList", "storageSpecifier", "stateClause", "stateClausePlain",
881 "@25", "conditionClause", "startConditionClause",
882 "conditionClausePlain", "@26", "@27", "functionConstraint",
883 "exitsQualifier", "checkQualifier", "stateQualifier", "paramQualifier",
884 "visibilityQualifier", "returnQualifier", "typedefQualifier",
885 "refcountQualifier", "typeModifier", "definedQualifier",
886 "typeQualifier", "typeSpecifier", "completeType",
887 "completeTypeSpecifier", "altType", "completeTypeSpecifierAux",
888 "optCompleteType", "optStructInvariant", "suSpc", "@28", "@29", "@30",
889 "@31", "@32", "@33", "@34", "@35", "NotType", "structDeclList",
890 "structDecl", "structNamedDeclList", "structNamedDecl", "enumSpc",
891 "@36", "enumeratorList", "enumerator", "optNamedDecl", "namedDecl",
892 "genericParamList", "innerMods", "innerModsList", "pointers",
893 "paramIdList", "idList", "paramTypeList", "paramList", "@37", "@38",
894 "paramDecl", "typeExpression", "abstractDecl", "optAbstractDeclBase",
909cf5eb 895 "abstractDeclBase", "stmt", "debugStmt", "iterBody", "endBody",
896 "iterDefStmtList", "iterDefIterationStmt", "forPred", "@39", "@40",
897 "partialIterStmt", "@41", "iterDefStmt", "iterSelectionStmt", "@42",
898 "openScope", "closeScope", "macroBody", "stmtErr", "labeledStmt",
3dabb077 899 "optExtraFallThroughs", "caseStmt", "@43", "@44", "defaultStmt", "@45",
900 "@46", "compoundStmt", "compoundStmtErr", "CreateInnerScope",
901 "DeleteInnerScope", "CreateStructInnerScope", "DeleteStructInnerScope",
902 "DeleteInnerScopeSafe", "compoundStmtRest", "compoundStmtAux",
903 "compoundStmtAuxErr", "stmtListErr", "initializerList",
904 "typeInitializerList", "typeInitializer", "stmtList", "expressionStmt",
905 "expressionStmtErr", "ifPred", "selectionStmt", "@47", "@48",
906 "whilePred", "iterWhilePred", "iterStmt", "@49", "@50", "iterArgList",
907 "@51", "iterArgExpr", "cconstantExpr", "primaryIterExpr",
d0b80d80 908 "postfixIterExpr", "unaryIterExpr", "castIterExpr", "timesIterExpr",
909 "plusIterExpr", "shiftIterExpr", "relationalIterExpr",
910 "equalityIterExpr", "bitandIterExpr", "xorIterExpr", "bitorIterExpr",
911 "andIterExpr", "orIterExpr", "conditionalIterExpr", "@52", "@53",
912 "assignIterExpr", "endIter", "doHeader", "iterationStmt",
913 "iterationStmtErr", "jumpStmt", "optSemi", "optComma", "id", "newId",
914 "typeName", 0
915};
916#endif
917
918/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
919static const short yyr1[] =
920{
909cf5eb 921 0, 197, 197, 198, 198, 199, 199, 199, 199, 199,
922 199, 199, 199, 200, 200, 202, 201, 203, 203, 204,
923 204, 205, 205, 205, 205, 206, 205, 207, 205, 208,
924 208, 208, 208, 209, 208, 210, 208, 212, 213, 211,
925 214, 214, 214, 214, 215, 216, 218, 217, 219, 217,
926 220, 220, 221, 222, 222, 223, 223, 224, 225, 225,
927 226, 226, 226, 227, 227, 227, 228, 228, 229, 229,
928 229, 229, 229, 229, 229, 229, 230, 231, 231, 232,
929 232, 233, 233, 234, 234, 234, 234, 234, 234, 235,
930 235, 235, 235, 235, 235, 236, 238, 237, 239, 240,
931 242, 241, 243, 243, 244, 245, 245, 246, 247, 247,
932 248, 248, 249, 250, 250, 251, 251, 251, 252, 252,
933 252, 252, 252, 253, 253, 253, 253, 253, 254, 254,
934 255, 255, 257, 256, 258, 259, 256, 260, 261, 261,
935 262, 262, 262, 262, 262, 262, 262, 262, 262, 263,
936 263, 264, 264, 265, 265, 265, 265, 265, 265, 265,
937 265, 266, 266, 267, 267, 268, 268, 268, 268, 268,
938 268, 269, 268, 270, 270, 270, 270, 270, 270, 270,
939 270, 270, 270, 271, 271, 272, 272, 272, 272, 272,
940 272, 272, 272, 272, 272, 272, 273, 273, 273, 274,
941 276, 275, 277, 278, 279, 279, 279, 279, 280, 280,
942 281, 281, 281, 281, 282, 282, 282, 283, 283, 283,
943 284, 284, 284, 284, 284, 285, 285, 285, 286, 286,
944 287, 287, 288, 288, 289, 290, 289, 291, 292, 291,
945 293, 294, 295, 293, 296, 296, 296, 296, 296, 296,
946 296, 296, 296, 296, 296, 296, 297, 297, 298, 298,
947 299, 300, 300, 300, 301, 302, 301, 303, 301, 304,
948 304, 305, 306, 305, 308, 307, 307, 307, 309, 310,
949 311, 312, 312, 313, 314, 314, 315, 315, 316, 316,
950 316, 316, 317, 317, 318, 318, 319, 319, 320, 320,
951 321, 321, 321, 321, 321, 322, 324, 323, 325, 326,
952 328, 327, 329, 327, 330, 330, 331, 331, 331, 331,
953 331, 332, 332, 332, 332, 333, 333, 333, 333, 333,
954 333, 333, 333, 333, 333, 333, 333, 333, 333, 333,
955 333, 333, 334, 334, 335, 335, 336, 336, 337, 337,
956 337, 337, 337, 338, 338, 338, 338, 338, 338, 339,
957 339, 339, 339, 340, 340, 340, 340, 341, 341, 341,
958 341, 341, 341, 341, 341, 341, 341, 341, 341, 342,
959 342, 342, 342, 342, 342, 342, 342, 342, 342, 342,
960 342, 342, 342, 343, 344, 344, 345, 345, 346, 346,
961 346, 347, 347, 348, 350, 351, 349, 352, 353, 349,
962 349, 349, 354, 355, 349, 356, 357, 349, 349, 349,
963 349, 349, 358, 359, 359, 359, 360, 360, 361, 361,
964 362, 362, 362, 363, 364, 363, 363, 365, 365, 365,
965 366, 366, 367, 367, 367, 367, 368, 368, 369, 369,
966 370, 370, 370, 371, 371, 372, 372, 372, 372, 373,
967 373, 374, 374, 375, 375, 375, 377, 376, 378, 376,
968 379, 379, 380, 380, 381, 381, 381, 382, 382, 383,
969 383, 383, 383, 383, 383, 383, 383, 383, 384, 384,
970 384, 384, 384, 384, 384, 384, 384, 384, 385, 386,
971 387, 388, 388, 389, 389, 389, 389, 391, 392, 390,
972 394, 393, 393, 395, 395, 395, 395, 395, 395, 395,
973 395, 395, 395, 395, 395, 395, 397, 396, 398, 399,
974 400, 400, 401, 401, 401, 401, 401, 401, 401, 401,
975 401, 401, 401, 401, 402, 402, 403, 403, 405, 404,
976 406, 404, 408, 407, 409, 407, 410, 410, 411, 412,
977 413, 414, 415, 416, 417, 417, 417, 417, 417, 417,
978 417, 417, 418, 419, 419, 419, 419, 420, 420, 421,
979 421, 422, 422, 423, 423, 424, 424, 425, 425, 426,
980 426, 426, 427, 428, 429, 428, 430, 428, 431, 432,
981 434, 435, 433, 436, 437, 436, 438, 438, 438, 438,
982 439, 439, 440, 440, 441, 441, 441, 441, 441, 441,
983 441, 441, 441, 442, 442, 442, 442, 442, 442, 442,
984 442, 442, 442, 443, 443, 444, 444, 444, 444, 445,
985 445, 445, 446, 446, 446, 447, 447, 447, 447, 447,
986 448, 448, 448, 449, 449, 450, 450, 451, 451, 452,
987 452, 453, 453, 454, 455, 456, 454, 457, 457, 457,
988 457, 457, 457, 457, 457, 457, 457, 457, 457, 458,
989 458, 459, 460, 460, 460, 461, 461, 461, 461, 462,
990 462, 462, 462, 462, 462, 462, 462, 462, 462, 463,
991 463, 464, 464, 465, 466, 466, 466, 466, 466, 467,
992 467, 467, 467
d0b80d80 993};
994
995/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
996static const short yyr2[] =
997{
998 0, 0, 1, 1, 2, 2, 1, 1, 1, 1,
999 1, 1, 1, 8, 11, 0, 5, 1, 3, 1,
1000 2, 1, 6, 3, 6, 0, 6, 0, 7, 1,
1001 6, 3, 6, 0, 6, 0, 7, 0, 0, 10,
1002 3, 3, 3, 2, 1, 3, 0, 4, 0, 4,
1003 1, 3, 1, 1, 1, 3, 1, 3, 1, 1,
1004 1, 1, 1, 1, 4, 5, 1, 1, 1, 1,
1005 3, 4, 2, 3, 3, 3, 1, 1, 1, 0,
1006 2, 0, 2, 1, 1, 1, 1, 1, 1, 1,
1007 1, 1, 1, 1, 1, 2, 0, 4, 1, 2,
1008 0, 3, 1, 3, 1, 1, 0, 2, 3, 2,
1009 1, 3, 2, 0, 2, 1, 1, 1, 1, 1,
1010 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1011 1, 3, 0, 3, 0, 0, 4, 2, 2, 1,
2f2892c2 1012 1, 1, 1, 3, 4, 2, 3, 3, 3, 1,
1013 1, 1, 3, 1, 1, 3, 4, 2, 3, 3,
1014 3, 0, 1, 1, 3, 1, 1, 1, 3, 1,
1015 1, 0, 4, 1, 4, 3, 4, 6, 5, 5,
1016 2, 2, 7, 1, 3, 1, 2, 2, 2, 2,
edad9a7f 1017 2, 2, 2, 2, 3, 1, 3, 4, 1, 9,
1018 0, 3, 0, 0, 4, 2, 4, 2, 1, 4,
1019 1, 3, 3, 3, 1, 3, 3, 1, 3, 3,
1020 1, 3, 3, 3, 3, 1, 3, 3, 1, 3,
1021 1, 3, 1, 3, 1, 0, 4, 1, 0, 4,
1022 1, 0, 0, 7, 1, 3, 3, 3, 3, 3,
1023 3, 3, 3, 3, 3, 3, 1, 3, 0, 1,
1024 1, 1, 1, 1, 3, 0, 9, 0, 11, 1,
1025 1, 2, 0, 6, 0, 8, 4, 4, 0, 0,
1026 2, 1, 4, 2, 1, 4, 0, 4, 1, 3,
1027 4, 2, 2, 2, 1, 2, 3, 2, 1, 3,
1028 1, 1, 1, 1, 1, 2, 0, 6, 2, 2,
1029 0, 6, 0, 5, 1, 1, 1, 1, 1, 1,
d0b80d80 1030 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1031 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1032 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1033 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
edad9a7f 1034 1, 1, 1, 1, 1, 1, 1, 2, 2, 2,
d0b80d80 1035 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1036 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
edad9a7f 1037 2, 2, 2, 3, 1, 4, 1, 3, 2, 2,
1038 2, 0, 1, 0, 0, 0, 12, 0, 0, 11,
1039 6, 6, 0, 0, 10, 0, 0, 10, 5, 5,
1040 4, 4, 0, 1, 1, 2, 5, 3, 2, 4,
1041 1, 3, 4, 6, 0, 8, 4, 1, 3, 2,
1042 1, 4, 1, 1, 2, 2, 1, 2, 1, 2,
1043 1, 1, 1, 1, 2, 1, 2, 2, 3, 1,
1044 3, 1, 3, 1, 1, 3, 0, 2, 0, 4,
1045 4, 1, 1, 2, 1, 1, 2, 0, 1, 5,
1046 2, 3, 3, 4, 3, 4, 4, 5, 1, 1,
909cf5eb 1047 1, 1, 1, 1, 1, 1, 1, 1, 4, 1,
1048 1, 1, 2, 2, 7, 6, 2, 0, 0, 10,
1049 0, 6, 1, 1, 1, 1, 2, 1, 1, 1,
1050 1, 1, 1, 1, 3, 1, 0, 3, 2, 2,
edad9a7f 1051 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
909cf5eb 1052 3, 1, 1, 1, 2, 2, 0, 2, 0, 4,
1053 0, 6, 0, 3, 0, 5, 3, 2, 3, 0,
1054 0, 0, 0, 0, 1, 2, 2, 3, 2, 3,
1055 3, 4, 2, 2, 3, 3, 4, 1, 2, 1,
1056 2, 1, 3, 1, 4, 1, 2, 1, 2, 1,
1057 2, 1, 4, 2, 0, 5, 0, 6, 4, 4,
1058 0, 0, 10, 1, 0, 4, 1, 1, 1, 1,
1059 1, 2, 1, 3, 1, 4, 3, 4, 6, 5,
1060 5, 2, 2, 1, 2, 2, 2, 2, 2, 2,
1061 2, 2, 1, 1, 4, 1, 3, 3, 3, 1,
1062 3, 3, 1, 3, 3, 1, 3, 3, 3, 3,
1063 1, 3, 3, 1, 3, 1, 3, 1, 3, 1,
1064 3, 1, 3, 1, 0, 0, 7, 1, 3, 3,
1065 3, 3, 3, 3, 3, 3, 3, 3, 3, 1,
1066 0, 1, 2, 7, 2, 2, 7, 6, 2, 3,
1067 2, 3, 2, 3, 3, 3, 3, 2, 3, 0,
1068 1, 0, 1, 1, 1, 1, 1, 1, 1, 1,
1069 1, 4, 4
d0b80d80 1070};
1071
1072/* YYDEFACT[S] -- default rule to reduce with in state S when YYTABLE
1073 doesn't specify something else to do. Zero means the default is an
1074 error. */
1075static const short yydefact[] =
1076{
edad9a7f 1077 0, 12, 11, 455, 0, 422, 262, 422, 15, 0,
1078 0, 0, 0, 278, 278, 278, 301, 300, 302, 303,
1079 304, 363, 364, 327, 329, 328, 332, 333, 321, 323,
1080 324, 322, 330, 331, 365, 366, 325, 326, 342, 338,
1081 334, 339, 335, 316, 317, 320, 318, 319, 360, 361,
1082 362, 359, 344, 343, 337, 336, 348, 349, 350, 351,
1083 352, 346, 347, 345, 353, 354, 357, 358, 355, 356,
1084 422, 422, 422, 422, 422, 422, 422, 422, 422, 422,
909cf5eb 1085 340, 703, 704, 708, 341, 705, 706, 709, 0, 3,
1086 6, 7, 446, 8, 9, 134, 44, 699, 10, 261,
edad9a7f 1087 263, 0, 401, 278, 278, 278, 278, 278, 278, 278,
1088 278, 422, 278, 401, 401, 422, 394, 422, 0, 422,
909cf5eb 1089 130, 278, 707, 21, 422, 450, 451, 452, 453, 456,
1090 457, 278, 281, 278, 278, 274, 422, 710, 422, 422,
1091 708, 0, 543, 202, 552, 0, 0, 0, 681, 0,
1092 0, 0, 0, 202, 589, 0, 202, 202, 202, 202,
edad9a7f 1093 202, 202, 278, 202, 202, 0, 43, 0, 0, 0,
909cf5eb 1094 0, 0, 0, 546, 202, 170, 166, 169, 610, 600,
1095 173, 185, 208, 195, 278, 210, 214, 217, 220, 225,
1096 228, 230, 232, 234, 237, 240, 244, 256, 591, 542,
1097 0, 0, 577, 532, 533, 534, 535, 0, 0, 536,
1098 202, 537, 0, 538, 167, 0, 539, 541, 165, 0,
1099 525, 0, 587, 0, 559, 512, 0, 0, 0, 521,
1100 0, 522, 501, 520, 517, 518, 513, 514, 515, 0,
1101 0, 519, 526, 0, 0, 523, 500, 0, 367, 369,
1102 368, 379, 381, 380, 382, 383, 384, 385, 386, 387,
1103 388, 4, 278, 0, 132, 137, 422, 700, 5, 422,
1104 402, 398, 372, 374, 371, 373, 376, 375, 377, 378,
1105 392, 370, 399, 400, 0, 278, 278, 390, 278, 278,
1106 0, 391, 447, 389, 454, 458, 278, 166, 169, 0,
1107 422, 472, 0, 165, 422, 0, 280, 422, 0, 271,
1108 278, 699, 17, 19, 0, 422, 278, 29, 466, 208,
1109 260, 548, 0, 202, 202, 202, 202, 0, 690, 692,
1110 697, 0, 559, 0, 0, 0, 188, 193, 192, 191,
1111 190, 189, 0, 278, 186, 187, 202, 202, 0, 0,
1112 0, 0, 0, 546, 0, 278, 545, 497, 202, 488,
1113 489, 490, 491, 0, 492, 493, 202, 495, 202, 494,
1114 496, 559, 202, 202, 180, 181, 0, 202, 202, 202,
1115 202, 202, 202, 202, 202, 202, 202, 202, 203, 200,
edad9a7f 1116 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
909cf5eb 1117 202, 202, 202, 202, 202, 202, 235, 241, 238, 590,
1118 202, 688, 40, 0, 560, 578, 593, 685, 611, 0,
1119 544, 202, 0, 0, 0, 588, 41, 502, 506, 579,
1120 422, 516, 528, 529, 0, 0, 0, 42, 23, 202,
1121 466, 422, 422, 278, 264, 131, 0, 396, 0, 422,
1122 0, 422, 0, 278, 0, 711, 278, 202, 0, 474,
1123 473, 475, 712, 278, 277, 278, 276, 272, 422, 0,
1124 278, 0, 422, 278, 20, 463, 0, 0, 448, 464,
1125 278, 0, 553, 0, 596, 0, 259, 0, 689, 698,
1126 559, 0, 168, 202, 540, 278, 0, 0, 0, 693,
1127 694, 695, 696, 691, 547, 202, 554, 0, 684, 422,
1128 557, 682, 0, 0, 175, 0, 183, 0, 0, 0,
1129 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
1130 255, 194, 0, 211, 212, 213, 216, 215, 218, 219,
1131 221, 222, 223, 224, 226, 227, 229, 231, 233, 202,
1132 202, 202, 257, 573, 710, 577, 0, 422, 558, 594,
1133 0, 0, 524, 510, 278, 580, 527, 0, 0, 25,
1134 0, 564, 202, 585, 133, 422, 202, 559, 278, 265,
1135 395, 278, 412, 0, 420, 415, 0, 421, 0, 437,
1136 440, 434, 436, 393, 480, 0, 466, 476, 202, 0,
1137 282, 270, 284, 269, 278, 278, 278, 699, 16, 31,
1138 202, 466, 278, 18, 449, 459, 461, 37, 468, 422,
1139 467, 471, 549, 592, 0, 598, 202, 172, 202, 209,
1140 422, 0, 278, 498, 550, 0, 556, 572, 0, 601,
1141 202, 176, 174, 278, 278, 202, 202, 201, 236, 0,
1142 239, 574, 575, 202, 202, 202, 599, 202, 422, 202,
1143 422, 79, 27, 565, 568, 202, 202, 566, 202, 586,
1144 136, 0, 267, 278, 397, 418, 561, 404, 419, 561,
1145 407, 278, 439, 278, 0, 481, 484, 278, 0, 482,
1146 0, 466, 422, 106, 283, 202, 278, 278, 0, 33,
1147 0, 278, 0, 81, 465, 278, 477, 202, 0, 202,
1148 583, 701, 581, 0, 0, 0, 555, 202, 202, 184,
1149 178, 179, 278, 205, 278, 207, 242, 576, 595, 0,
1150 278, 202, 202, 202, 202, 202, 202, 202, 202, 0,
1151 166, 169, 185, 208, 632, 214, 217, 220, 225, 228,
1152 230, 232, 234, 237, 0, 604, 603, 167, 614, 623,
1153 633, 635, 639, 642, 645, 650, 653, 655, 657, 659,
1154 661, 663, 667, 606, 165, 0, 24, 0, 96, 100,
1155 98, 123, 124, 125, 126, 127, 128, 129, 26, 79,
1156 83, 0, 85, 84, 0, 88, 0, 422, 422, 86,
1157 0, 87, 312, 0, 79, 569, 570, 202, 567, 22,
1158 278, 286, 422, 410, 561, 422, 411, 561, 433, 438,
1159 202, 0, 0, 485, 483, 486, 0, 278, 0, 105,
1160 202, 202, 0, 288, 273, 202, 0, 294, 0, 202,
1161 0, 422, 81, 35, 0, 460, 462, 38, 81, 89,
1162 91, 90, 94, 92, 93, 469, 442, 0, 278, 477,
1163 443, 478, 597, 507, 701, 202, 0, 0, 177, 551,
1164 0, 604, 0, 0, 202, 687, 0, 0, 188, 193,
1165 192, 191, 190, 189, 186, 187, 202, 202, 202, 180,
1166 181, 0, 202, 202, 202, 202, 202, 202, 202, 202,
edad9a7f 1167 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
1168 202, 202, 202, 202, 202, 202, 202, 202, 202, 202,
909cf5eb 1169 664, 202, 511, 0, 505, 104, 109, 102, 113, 699,
1170 80, 95, 99, 107, 306, 309, 305, 0, 310, 308,
1171 28, 571, 202, 0, 424, 422, 422, 423, 422, 422,
1172 422, 441, 278, 479, 487, 285, 275, 298, 0, 0,
1173 297, 291, 292, 295, 293, 286, 13, 32, 34, 81,
1174 30, 699, 82, 466, 470, 444, 445, 202, 0, 582,
1175 182, 0, 198, 0, 559, 204, 206, 243, 686, 168,
1176 202, 0, 175, 0, 0, 0, 0, 668, 669, 670,
1177 671, 672, 673, 674, 675, 676, 677, 678, 211, 212,
1178 213, 216, 215, 218, 219, 221, 222, 223, 224, 226,
1179 227, 229, 231, 233, 660, 202, 662, 202, 504, 108,
1180 0, 118, 119, 120, 121, 122, 699, 110, 422, 113,
1181 0, 0, 141, 142, 101, 151, 699, 139, 140, 0,
1182 48, 0, 0, 58, 59, 69, 67, 315, 0, 314,
1183 56, 76, 0, 63, 66, 0, 699, 68, 161, 286,
1184 278, 422, 0, 278, 425, 413, 422, 416, 422, 435,
1185 289, 202, 296, 699, 36, 0, 278, 508, 584, 278,
1186 202, 0, 683, 680, 209, 278, 176, 174, 278, 278,
1187 0, 605, 103, 113, 97, 116, 112, 117, 115, 114,
1188 0, 145, 0, 0, 0, 0, 138, 0, 0, 154,
1189 163, 699, 153, 0, 0, 66, 0, 72, 0, 54,
1190 53, 0, 61, 60, 62, 0, 0, 0, 0, 0,
1191 0, 278, 699, 162, 0, 266, 278, 427, 278, 278,
1192 422, 430, 0, 405, 0, 408, 290, 299, 0, 39,
1193 278, 0, 199, 0, 196, 679, 560, 0, 178, 179,
1194 665, 111, 146, 143, 149, 0, 150, 147, 148, 152,
1195 0, 157, 0, 0, 0, 0, 278, 0, 78, 77,
1196 0, 73, 0, 50, 45, 46, 55, 66, 57, 70,
1197 0, 74, 75, 0, 0, 313, 278, 278, 287, 202,
1198 278, 0, 428, 278, 414, 0, 417, 0, 14, 509,
1199 197, 602, 177, 202, 144, 158, 155, 0, 159, 160,
1200 164, 307, 52, 49, 0, 0, 71, 47, 64, 311,
1201 268, 431, 422, 426, 202, 403, 409, 666, 156, 65,
1202 51, 429, 432, 406, 0, 0, 0
d0b80d80 1203};
1204
1205static const short yydefgoto[] =
1206{
909cf5eb 1207 1254, 88, 89, 90, 91, 139, 311, 312, 92, 661,
1208 804, 313, 842, 969, 93, 703, 971, 944, 95, 1057,
1209 1193, 1139, 1123, 1194, 1233, 1131, 1059, 1060, 1061, 1135,
1210 1062, 1063, 1197, 1065, 1190, 788, 847, 789, 848, 790,
1211 849, 928, 850, 793, 851, 929, 926, 927, 828, 795,
1212 796, 1036, 1037, 1038, 1106, 1039, 797, 798, 96, 265,
1213 441, 266, 577, 97, 1044, 1174, 1175, 1046, 1120, 1142,
1214 1121, 180, 332, 181, 515, 182, 981, 183, 744, 532,
1215 184, 531, 647, 185, 186, 187, 188, 189, 190, 191,
1216 192, 193, 194, 549, 195, 551, 196, 550, 874, 197,
1217 226, 487, 321, 429, 99, 673, 810, 602, 603, 606,
1218 100, 307, 101, 263, 133, 134, 604, 605, 943, 834,
1219 835, 836, 837, 958, 102, 799, 853, 1049, 801, 802,
1220 854, 1068, 937, 1066, 103, 104, 105, 106, 107, 108,
1221 109, 110, 111, 112, 113, 114, 301, 430, 446, 116,
1222 271, 1253, 117, 814, 1215, 817, 1217, 676, 1152, 679,
1223 1154, 118, 946, 947, 1149, 1150, 119, 684, 588, 589,
1224 858, 136, 477, 128, 129, 121, 614, 615, 478, 479,
1225 480, 705, 620, 334, 822, 860, 461, 356, 357, 227,
1226 247, 228, 229, 358, 977, 1161, 231, 657, 232, 233,
1227 434, 234, 235, 201, 415, 359, 354, 360, 481, 715,
1228 361, 322, 635, 362, 206, 363, 558, 812, 1075, 240,
1229 574, 510, 414, 208, 575, 711, 712, 576, 364, 209,
1230 210, 365, 654, 624, 366, 243, 367, 371, 718, 755,
1231 923, 756, 214, 758, 759, 760, 761, 762, 763, 764,
1232 765, 766, 767, 768, 769, 770, 771, 772, 1025, 1223,
1233 773, 1166, 368, 369, 216, 370, 268, 866, 303, 219,
1234 124
d0b80d80 1235};
1236
1237static const short yypact[] =
1238{
909cf5eb 1239 2215,-32768,-32768, 314, 31, 5636,-32768, 6865,-32768, 720,
1240 3280, 3919, 3919,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
d0b80d80 1241 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1242 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1243 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1244 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1245 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1246 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
909cf5eb 1247 -32768,-32768,-32768, 587,-32768,-32768,-32768,-32768, 2397,-32768,
1248 -32768,-32768, 374,-32768,-32768, 55,-32768, 102,-32768,-32768,
1249 -32768, 114, 6451,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1250 -32768,-32768,-32768, 6451, 6451, 198, 133,-32768, 956,-32768,
1251 -32768, 720,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 314,
1252 -32768, 5804,-32768, 238,-32768, 198,-32768,-32768,-32768, 5636,
1253 -32768, 243,-32768, 5927,-32768, 281, 310, 330,-32768, 357,
1254 720, 400, 427, 1522,-32768, 2783, 5927, 5927, 5927, 5927,
1255 5927, 5927,-32768, 5956, 5956, 440,-32768, 454, 474, 480,
1256 537, 570, 498, 458, 5093,-32768, 548, 575,-32768, 618,
1257 -32768, 1022, 943,-32768,-32768,-32768, 994, 502, 566, 394,
1258 554, 601, 617, 622, 638, 105,-32768,-32768, 146,-32768,
1259 3707, 579, 627,-32768,-32768,-32768,-32768, 754, 3387,-32768,
1260 5093,-32768, 3707,-32768, 572, 3707,-32768,-32768, 762, 765,
1261 -32768, 777,-32768, 2978, 618, 809, 266, 755, 3813,-32768,
1262 3919,-32768,-32768,-32768, 6175,-32768,-32768,-32768,-32768, 836,
1263 843,-32768,-32768, 3919, 3707,-32768,-32768, 773,-32768,-32768,
d0b80d80 1264 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
909cf5eb 1265 -32768,-32768, 855, 871,-32768,-32768, 6727,-32768,-32768,-32768,
d0b80d80 1266 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
909cf5eb 1267 -32768,-32768,-32768,-32768, 869, 728,-32768,-32768, 720, 720,
1268 46,-32768, 374,-32768,-32768,-32768, 2002,-32768,-32768, 164,
1269 6865, 576, 887,-32768,-32768, 913,-32768,-32768, 923, 897,
1270 728, 102,-32768, 785, 926,-32768, 720,-32768, 261,-32768,
1271 -32768,-32768, 921, 5927, 5927, 5927, 1772, 952,-32768,-32768,
1272 -32768, 470, 967, 385, 972, 975,-32768,-32768,-32768,-32768,
1273 -32768,-32768, 987, 2002,-32768,-32768, 5927, 5927, 1001, 1003,
1274 1014, 1021, 1027, 458, 737, 2110,-32768,-32768, 5093,-32768,
1275 -32768,-32768,-32768, 1028,-32768,-32768, 5093,-32768, 5093,-32768,
1276 -32768,-32768, 5825, 5927,-32768,-32768, 90, 5927, 5927, 5927,
1277 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927,-32768,-32768,
1278 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927,
1279 5927, 5927, 5927, 5927, 5927, 5927,-32768,-32768,-32768,-32768,
1280 5927,-32768,-32768, 2588,-32768,-32768, 1068,-32768,-32768, 1002,
1281 -32768, 5927, 487, 998, 1037,-32768,-32768,-32768,-32768,-32768,
1282 198, 6175,-32768,-32768, 3919, 3493, 1061,-32768,-32768, 5927,
1283 59, 4026, 5177, 728,-32768, 438, 991, 1069, 1082, 1083,
1284 1084, 1083, 720, 1087, 338,-32768,-32768, 5836, 1085, 799,
1285 -32768, 810,-32768, 728,-32768, 681,-32768,-32768,-32768, 1016,
1286 1089, 1095,-32768, 728, 785,-32768, 720, 1086,-32768, 1100,
1287 720, 1098,-32768, 395, 1101, 408, 1101, 1106,-32768,-32768,
1288 967, 1104,-32768, 5528,-32768,-32768, 1105, 1113, 432,-32768,
1289 -32768,-32768,-32768,-32768,-32768, 5927,-32768, 1111,-32768, 4026,
1290 -32768,-32768, 1128, 1118,-32768, 462,-32768, 87, 720, 720,
1291 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1292 -32768,-32768, 802,-32768,-32768,-32768, 994, 994, 502, 502,
1293 566, 566, 566, 566, 394, 394, 554, 601, 617, 5927,
1294 5927, 5927,-32768,-32768, 3173,-32768, 3600, 4216,-32768,-32768,
1295 1121, 489,-32768,-32768, 728,-32768,-32768, 1126, 1124,-32768,
1296 1127,-32768, 4596,-32768,-32768, 4406, 4640, 967,-32768, 1130,
1297 -32768,-32768, 1134, 1136,-32768, 1138, 1140,-32768, 872,-32768,
1298 1139,-32768,-32768,-32768,-32768, 1137, 653, 810, 5868, 1142,
1299 -32768,-32768,-32768,-32768, 1146,-32768,-32768, 142,-32768,-32768,
1300 5927, 156, 728,-32768,-32768, 1155,-32768,-32768, 1176, 6865,
1301 -32768,-32768,-32768,-32768, 1161,-32768, 1772,-32768, 5555,-32768,
1302 -32768, 1169,-32768,-32768,-32768, 1165,-32768,-32768, 1167,-32768,
1303 5927,-32768,-32768,-32768,-32768, 6005, 6035,-32768, 622, 941,
1304 638,-32768,-32768, 4747, 5093, 5927,-32768, 6094,-32768, 5927,
1305 -32768, 1862,-32768,-32768,-32768, 4791, 4898,-32768, 4942,-32768,
1306 -32768, 1164,-32768,-32768,-32768,-32768,-32768, 1172,-32768,-32768,
1307 1173,-32768, 720,-32768, 720,-32768,-32768, 212, 1170,-32768,
1308 1174, 86,-32768, 1132,-32768, 1835,-32768,-32768, 1179,-32768,
1309 1183,-32768, 327, 1862,-32768, 720, 625, 5093, 1191, 5555,
1310 -32768, 1194,-32768, 1195, 1192, 1175,-32768, 5927, 6094,-32768,
1311 -32768,-32768, 2002,-32768, 2002,-32768,-32768,-32768,-32768, 546,
1312 2002, 5927, 5927, 5927, 5927, 5927, 5927, 5956, 5956, 1197,
1313 642, 651, 1099, 1242,-32768, 1019, 951, 986, 608, 1005,
1314 1189, 1180, 1154, 1166, 152, 1199,-32768, 45,-32768,-32768,
1315 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1316 -32768,-32768,-32768,-32768, 660, 667,-32768, 1036,-32768,-32768,
1317 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1862,
1318 -32768, 1135,-32768,-32768, 1141,-32768, 1143,-32768,-32768,-32768,
1319 1151,-32768, 831, 1156, 1862,-32768,-32768, 5049,-32768,-32768,
1320 -32768,-32768, 6589,-32768,-32768, 6589,-32768,-32768,-32768,-32768,
1321 5927, 1045, 1203,-32768,-32768,-32768, 1205, 681, 1213,-32768,
1322 1835, 5927, 720,-32768,-32768, 1835, 551,-32768, 1211, 1835,
1323 1157,-32768, 1862,-32768, 1221,-32768,-32768,-32768, 1862,-32768,
1324 -32768,-32768,-32768,-32768,-32768,-32768, 374, 1226,-32768, 564,
1325 -32768, 810,-32768,-32768, 1194, 5507, 1231, 720,-32768,-32768,
1326 702, 1228, 1229, 1230, 5927, 1238, 716, 1232, 753, 778,
1327 795, 801, 812, 822, 832, 835, 5927, 5857, 5927, 841,
1328 860, 126, 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927,
1329 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927,
1330 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927, 5927,
1331 -32768, 5927,-32768, 1237, 1241,-32768, 1070, 1223, 262, 75,
1332 -32768,-32768,-32768,-32768,-32768,-32768,-32768, 528,-32768,-32768,
1333 -32768,-32768, 1835, 523,-32768, 198, 5339,-32768, 6589, 5339,
1334 6589,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1055, 1234,
1335 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 1862,
1336 -32768, 102,-32768, 313,-32768,-32768,-32768, 5900, 1246,-32768,
1337 -32768, 671,-32768, 1250, 967, 1169, 1169,-32768,-32768, 863,
1338 5528, 1248, 873, 894, 294, 720, 720,-32768,-32768,-32768,
1339 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 902, 919,
1340 927, 911, 954, 507, 796, 79, 98, 176, 339, 827,
1341 852, 47, 366, 138, 622, 5927, 638, 6094,-32768, 572,
1342 1036,-32768,-32768,-32768,-32768,-32768, 585,-32768, 6313, 262,
1343 278, 278,-32768,-32768,-32768, 125, 606,-32768,-32768, 62,
1344 -32768, 544, 109,-32768,-32768,-32768,-32768,-32768, 1247,-32768,
1345 -4,-32768, 1004,-32768, 100, 1253, 102,-32768, 62,-32768,
1346 -32768,-32768, 1254, 134,-32768,-32768, 5339,-32768, 5339,-32768,
1347 -32768, 1311,-32768, 629,-32768, 1187, 745,-32768,-32768,-32768,
1348 5927, 720,-32768, 1077, 928,-32768, 955, 957,-32768,-32768,
1349 1063,-32768,-32768, 262,-32768,-32768,-32768,-32768,-32768,-32768,
1350 449, 125, 558, 720, 720, 278,-32768, 62, 62,-32768,
1351 341, 665,-32768, 1252, 1056, 497, 109, 397, 82,-32768,
1352 -32768, 544,-32768,-32768,-32768, 544, 11, 720, 720, 1257,
1353 544,-32768, 102, 1260, 690,-32768, 728,-32768,-32768, 1262,
1354 -32768, 1263, 1264,-32768, 1266,-32768,-32768,-32768, 1196,-32768,
1355 713, 1265,-32768, 304,-32768,-32768,-32768, 1267, 960, 973,
1356 -32768,-32768,-32768,-32768, 125, 1270, 572,-32768,-32768, 125,
1357 741, 341, 736, 720, 720, 62,-32768, 1093,-32768,-32768,
1358 544,-32768, 497, 1251,-32768, 397,-32768, 397,-32768,-32768,
1359 1271,-32768,-32768, 1093, 1268,-32768,-32768,-32768,-32768, 5927,
1360 134, 1276,-32768,-32768,-32768, 1290,-32768, 1291,-32768,-32768,
1361 -32768,-32768, 995, 5927,-32768,-32768,-32768, 1285,-32768,-32768,
1362 341,-32768,-32768,-32768, 1288, 82,-32768,-32768,-32768,-32768,
1363 -32768,-32768,-32768,-32768, 5927,-32768,-32768,-32768,-32768,-32768,
1364 -32768,-32768,-32768,-32768, 1314, 1315,-32768
d0b80d80 1365};
1366
1367static const short yypgoto[] =
1368{
909cf5eb 1369 -32768,-32768, 1236,-32768,-32768,-32768,-32768, -424, -117,-32768,
1370 -32768, 1000,-32768,-32768,-32768,-32768,-32768, 56,-32768,-32768,
1371 380,-32768,-32768, 83, 116,-32768, 189,-32768,-32768,-32768,
1372 -497,-32768, -915,-32768,-32768, -726, -773,-32768,-32768,-32768,
1373 -585,-32768, -584,-32768, -582,-32768, 292,-32768,-32768, 632,
1374 -656,-32768, 223, 289,-32768,-32768,-32768,-32768,-32768,-32768,
1375 -32768,-32768,-32768,-32768,-32768, -909, 147,-32768, -1005,-32768,
1376 264,-32768,-32768, -615, 446, 1080,-32768,-32768, 1150,-32768,
1377 -32768,-32768,-32768, -99, -357, -363, -317, -388, -385, -356,
1378 -338, -523, -516,-32768, -613,-32768, -140,-32768,-32768, -104,
1379 1168, -595, -432, 6,-32768,-32768,-32768, 509, -3,-32768,
1380 -32768,-32768, 1065, -292,-32768,-32768,-32768,-32768, -922, -785,
1381 -32768,-32768, 510,-32768,-32768,-32768, -544,-32768,-32768,-32768,
1382 -447,-32768,-32768,-32768,-32768,-32768, 536,-32768,-32768,-32768,
1383 -32768,-32768,-32768,-32768,-32768,-32768,-32768, 85, 766,-32768,
1384 980,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
1385 -32768, 300, -717, -477,-32768, 139,-32768,-32768, 664, 668,
1386 493, 1, -417, 1227,-32768, 13,-32768,-32768, -581,-32768,
1387 -32768,-32768, 650, -102, 1062,-32768, -451, 442, 17, 1350,
1388 -32768, 1122,-32768, 1202,-32768,-32768,-32768,-32768, -177,-32768,
1389 -32768,-32768,-32768,-32768, 429, 1375, 1011, 1444,-32768,-32768,
1390 1521,-32768,-32768, -315,-32768, 1052, 201, -638, -822,-32768,
1391 861,-32768,-32768, 959, -195, 666, 504, -460, 113,-32768,
1392 179, 285,-32768,-32768, 343,-32768, 411,-32768,-32768, 655,
1393 -32768, 347, -623,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
d0b80d80 1394 -32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
909cf5eb 1395 -32768,-32768, 1630,-32768,-32768, 1689, -281, 513, 0, 19,
1396 -32768
d0b80d80 1397};
1398
1399
909cf5eb 1400#define YYLAST 7060
d0b80d80 1401
1402
1403static const short yytable[] =
1404{
909cf5eb 1405 122, 120, 132, 320, 292, 122, 98, 568, 597, 122,
1406 218, 218, 218, 544, 545, 688, 130, 491, 546, 123,
1407 1045, 471, 1064, 570, 123, 595, 648, 199, 141, 302,
1408 469, 708, 538, 539, 757, 650, 536, 537, 1199, 431,
1409 507, 815, 742, 1083, 754, 957, 423, 852, 547, 613,
1410 961, 427, 1129, 428, 965, 131, 94, 336, 337, 338,
1411 339, 340, 341, 930, 475, 452, -612, 548, -654, 968,
1412 -612, 442, -654, 634, 264, 972, 791, 792, 940, 794,
1413 540, 541, 542, 543, 569, 115, 1117, 1050, 122, 120,
1414 135, 475, 138, 267, 98, 757, 1118, 653, 949, 1040,
1415 -646, 401, 402, 742, -646, 754, 1126, 123, 410, 1041,
1416 826, 825, 1180, 1181, 642, 666, 1052, 800, 518, -647,
1417 267, 122, -46, -647, 241, 241, 1136, 1077, 1137, 395,
1418 396, 1110, 1111, 1126, 752, 519, 1125, 1127, 269, 122,
1419 123, 753, 295, 1052, 94, 1138, 407, 1144, 395, 396,
1420 122, 1112, 316, 1113, 995, 218, 1148, 1069, 317, -658,
1421 267, 475, 408, -658, 409, 696, 690, 410, 3, 327,
1422 1114, 996, 199, 115, 218, 507, 948, 404, 698, 950,
1423 1230, 699, 471, 1130, 447, 410, 852, 270, 701, 455,
1424 242, 242, 852, 920, 700, 752, 1084, -648, 270, 270,
1425 218, -648, 753, 1200, 791, 792, 1179, 794, 218, 921,
1426 218, 1192, 218, 1195, 803, 218, -278, 199, 557, 791,
1427 792, 286, 794, 218, 315, 199, 395, 396, 218, 199,
1428 218, 1076, 199, 1078, 81, 82, 140, 418, 457, 85,
1429 86, 496, 497, 218, 218, 800, 3, -422, -422, -422,
1430 81, 1119, -422, -422, 1153, 861, 1155, 566, 427, 304,
1431 800, 199, 670, 81, 1042, 1043, 475, 318, 516, 748,
1432 81, 1055, 749, 520, 521, 522, 523, 524, 525, 526,
1433 527, 528, 529, 530, 425, 122, 445, 410, 122, 122,
1434 122, 533, 534, 535, 746, 211, 1157, 81, 1055, 320,
1435 745, 750, 1040, 1029, 123, 323, 552, 449, 451, 453,
1436 122, 468, 1041, 852, 459, 410, 122, 320, 475, 751,
1437 1195, 1097, 81, 82, 140, 410, 697, 85, 86, 123,
1438 748, 1220, 845, 749, 324, 317, 241, -422, 686, -422,
1439 747, 241, 803, 241, -422, -422, -422, -422, 3, -422,
1440 -422, 1031, 1032, 212, 325, 746, 241, 803, 218, 410,
1441 -649, 745, 750, 492, -649, 320, 218, 1182, 218, 1183,
1442 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
1443 751, 326, 1087, 1033, 1034, 456, 1184, -656, 951, 395,
1444 396, -656, 688, 630, 629, 403, 1024, 1035, -279, 959,
1445 262, 747, 242, 409, 757, 1026, 410, 242, 861, 242,
1446 492, 280, 742, 218, 754, 285, 410, 287, 328, 291,
1447 623, 213, 242, 1136, 293, 1137, 125, 126, 127, 410,
1448 199, 397, 398, 625, 218, 218, 309, 565, 310, 202,
1449 211, 218, 1138, 122, 578, 329, 399, 400, 565, -422,
1450 -422, -422, 122, 410, -422, -422, -422, 633, 320, -422,
1451 600, -422, 123, 122, 346, 122, 81, 1042, 1043, 1074,
1452 320, 590, 1074, 122, 1172, 1112, 122, 1113, 347, 447,
1453 122, 376, 123, 640, 123, 211, 316, 641, 489, 1176,
1454 348, 410, 317, 211, 1114, 616, 349, 211, 212, 621,
1455 211, -422, -422, -422, 752, 425, -422, -422, 410, 218,
1456 410, 753, 492, 352, 656, 81, 82, 140, 122, 122,
1457 85, 86, 1191, 1136, 710, 1137, 1019, 1020, -643, 211,
1458 714, 1021, -643, 1050, 393, 394, 719, 643, 644, 393,
1459 394, 1070, 1138, 212, 1071, 1013, 1014, 241, 241, 1011,
1460 1012, 212, 1051, 350, 1124, 212, 218, 218, 212, 1176,
1461 353, 1022, 1052, 565, 122, 658, 213, 410, 1051, 443,
1462 -704, 875, 218, 199, 962, 218, 218, 831, 1052, 832,
1463 1023, 565, 1040, 123, 335, 1173, 351, 212, -278, 856,
1464 457, 833, 1041, 1015, 1016, 1017, 1018, -708, 3, 1074,
1465 -278, 1074, 457, 267, 463, 710, 1103, 465, 401, 402,
1466 3, 213, 122, 242, 242, 473, 395, 396, 476, 213,
1467 872, -710, 873, 213, 267, 316, 213, 1115, 877, 411,
1468 403, 317, 878, 879, 880, 881, 882, 883, 1198, 748,
1469 -705, 417, 749, 1204, 419, 910, 911, 267, 1047, -278,
1470 1071, 457, 416, 218, 218, 213, 404, 774, 475, 3,
1471 912, 913, 405, -609, 746, 218, 218, -609, 218, 1093,
1472 745, 750, -608, 436, 412, -710, -608, -422, 686, -422,
1473 320, -607, 122, 267, 122, -607, 1185, -422, 410, 751,
1474 1085, 320, 924, 1234, 406, 218, 1089, 1090, 211, 1091,
1475 459, 590, 122, 590, 706, 122, 122, 218, 1207, 597,
1476 747, 1071, 1053, 1054, 838, 3, 81, 1055, 774, 859,
1477 1056, 846, -530, 410, 621, 123, 833, 983, 1053, 1054,
1478 564, 833, 81, 1055, 987, 833, 1056, 410, -474, 457,
1479 476, 989, 856, 505, 506, 579, 81, 1042, 1043, 584,
1480 178, 587, 81, 82, 140, 1104, 212, 85, 86, 975,
1481 1040, 710, 3, 1226, 418, 1116, 1225, 1182, 607, 1183,
1482 1041, 457, 612, 413, -626, -710, -710, 1241, -626, 3,
1483 -710, -710, 991, 516, -707, 1141, 1184, 420, 997, 998,
1484 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, -631,
1485 508, 421, 1158, -631, 1008, 1009, 1010, 218, 511, -279,
1486 512, 470, 1252, 81, 82, 140, -630, -644, 85, 86,
1487 -630, -644, -629, -278, 213, 457, -629, 122, 393, 394,
1488 218, -706, 122, -628, -278, 218, 598, -628, 833, 218,
1489 1186, 211, 555, -627, 645, 646, 123, -627, -651, 838,
1490 426, 960, -651, -624, 838, 432, -625, -624, 838, 122,
1491 -625, 1206, -621, 433, 397, 398, -621, 122, 437, 81,
1492 82, 140, 859, -652, 85, 86, 601, -652, 123, 399,
1493 400, -622, 438, 573, -613, -622, 982, 444, -613, 397,
1494 398, 1094, 681, 682, -616, 440, 687, 945, -616, 212,
1495 945, 81, 82, 140, 399, 400, 85, 86, 81, 82,
1496 140, 476, 462, 85, 86, 640, 81, 82, 140, 1096,
1497 467, 85, 86, -636, 81, 1042, 1043, -636, 178, 1048,
1498 713, 464, -641, 81, 82, 140, -641, 1067, 85, 86,
1499 -637, 466, 218, 482, -637, 390, 391, 392, -638, -634,
1500 472, 573, -638, -634, 23, 24, 25, 26, 579, 27,
1501 776, 838, 410, 726, 32, 33, 377, 213, 36, 37,
1502 488, 39, 40, 41, 42, -640, -617, 833, -615, -640,
1503 -617, -619, -615, 906, 907, -619, 54, 55, 390, 391,
1504 392, 490, 827, 1167, -620, 122, 122, 493, -620, 573,
1505 494, 378, 379, 380, 381, 382, 383, 384, 385, 386,
1506 387, 495, 80, 560, 1098, 1099, -618, 573, 669, 499,
1507 -618, 500, 84, 562, 288, 289, 290, 774, 390, 391,
1508 392, 945, 501, 945, 945, 945, 908, 909, 1108, 502,
1509 1048, 1048, 891, 292, 1107, 503, 372, 509, 373, 1122,
1510 -422, 1067, 1067, 903, 904, 905, 1132, 1133, 1134, 914,
1511 915, 563, 207, 239, 239, 952, 682, -422, 1122, 320,
1512 374, 375, 567, 122, 1151, 1080, 1081, 559, 248, 249,
1513 250, 218, 580, 1247, 410, 1170, 122, 578, 1188, 1189,
1514 581, 122, 123, 282, 283, 669, 728, 934, 935, 1160,
1515 838, 582, -278, 585, 320, 123, 591, 608, 669, 596,
1516 1164, 617, 1048, 122, 122, 1048, 609, 1122, 1122, 611,
1517 622, 618, 410, 887, 626, 888, 1067, -422, 1067, 627,
1518 631, 1067, 1177, 1178, 632, 1067, 636, 122, 122, 638,
1519 1067, 967, 639, 1208, -422, 655, 122, 889, 890, 862,
1520 659, 660, 662, 672, 675, 677, 1201, 1202, 678, 680,
1521 122, 945, 683, 945, 685, 123, 691, 692, 272, 273,
1522 274, 275, 276, 277, 278, 279, 702, 281, 198, 123,
1523 284, 704, 1048, 122, 122, 1122, 707, 716, 628, 809,
1524 1067, 717, 813, 816, 918, 823, 300, 869, 305, 306,
1525 308, 824, 1228, 1229, 314, 777, 841, 207, 843, 863,
1526 122, 1151, 200, 230, 230, 865, 867, 868, 916, 917,
1527 300, 886, 919, 319, 922, 925, 931, 342, 953, 123,
1528 954, 956, 932, 964, 933, 1067, 319, 319, 319, 319,
1529 319, 319, 936, 344, 345, 1073, 970, 939, 966, 389,
1530 973, 980, 207, 984, 985, 986, 988, 990, 1027, 1028,
1531 207, 1082, 178, 1030, 207, 892, 1088, 207, 1092, 1095,
1532 1128, 1165, 1147, 1086, 1187, 239, 424, 1140, 1159, 1203,
1533 239, 1185, 239, 1210, 1214, 1213, 1216, 1218, 300, 1232,
1534 1219, 1235, 1222, 1238, 1243, 239, 207, 1224, 1236, 299,
1535 893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
1536 1245, 1246, 1248, 1249, 1255, 1256, 474, 1058, 1250, 1237,
1537 1196, 331, 1102, 333, 261, 829, 1171, 439, 1109, 1227,
1538 830, 1156, 1143, 993, 388, 296, 955, 831, 938, 832,
1539 156, 157, 158, 159, 160, 161, 963, 674, 821, 1242,
1540 819, 300, 976, 448, 450, 855, 294, 200, 162, 163,
1541 164, 300, 246, 460, 504, 435, 458, 1221, 198, 979,
1542 637, 1146, 556, 871, 1101, 864, 198, 978, 0, 0,
1543 198, 314, 165, 198, 0, 203, 236, 236, 0, 0,
1544 0, 422, 0, 0, 0, 0, 0, 0, 0, 0,
1545 0, 0, 200, 0, 0, 0, 0, 0, 300, 0,
1546 200, 0, 198, 0, 200, 0, 0, 200, 0, 0,
1547 300, 0, 0, 513, 0, 230, 0, 175, 0, 0,
1548 230, 0, 230, 0, 0, 0, 0, 0, 0, 0,
1549 0, 0, 0, 0, 0, 230, 200, 0, 0, 0,
1550 1212, 0, 0, 0, 204, 237, 237, 0, 0, 0,
1551 0, 0, 0, 0, 454, 207, 0, 0, 0, 0,
1552 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
1553 319, 319, 319, 319, 319, 319, 239, 239, 0, 0,
1554 0, 483, 484, 485, 486, 284, 0, 0, 0, 81,
1555 176, 177, 0, 178, 85, 86, 0, 0, 0, 0,
1556 0, 454, 0, 0, 583, 498, 586, 0, 592, 319,
1557 0, 593, 0, 454, 458, 0, 599, 0, 0, 0,
1558 203, 205, 238, 238, 0, 610, 0, 319, 314, 0,
1559 330, 517, 1251, 0, 0, 619, 296, 0, 0, 0,
1560 0, 156, 157, 158, 159, 160, 161, 0, 0, 0,
1561 300, 0, 0, 0, 0, 0, 0, 0, 0, 162,
1562 163, 164, 0, 319, 0, 203, 0, 0, 0, 0,
1563 0, 198, 0, 203, 0, 319, 0, 203, 0, 561,
1564 203, 0, 0, 165, 0, 0, 0, 0, 236, 204,
1565 0, 0, 0, 236, 0, 236, 0, 0, 207, 0,
1566 0, 0, 0, 0, 0, 200, 0, 0, 236, 203,
1567 0, 0, 0, 0, 0, 0, 0, 0, 0, 319,
1568 0, 319, 0, 0, 0, 0, 230, 230, 175, 0,
1569 215, 244, 244, 671, 204, 0, 300, 0, 0, 0,
1570 0, 0, 204, 0, 0, 0, 204, 0, 0, 204,
1571 0, 0, 599, 0, 0, 0, 0, 237, 0, 693,
1572 694, 695, 237, 0, 237, 0, 205, 314, 319, 0,
1573 0, 0, 0, 0, 0, 0, 0, 237, 204, 0,
1574 319, 0, 0, 0, 0, 0, 0, 300, 0, 217,
1575 245, 245, 0, 0, 0, 0, 0, 0, 720, 721,
1576 81, 297, 298, 0, 178, 0, 0, 0, 649, 0,
1577 0, 205, 389, 0, 198, 723, 725, 0, 0, 205,
1578 0, 0, 0, 205, 0, 0, 205, 743, 811, 0,
1579 0, 0, 0, 0, 238, 0, 818, 0, 820, 238,
1580 0, 238, 458, 0, 0, 0, 0, 0, 200, 0,
1581 0, 839, 840, 0, 238, 205, 844, 0, 0, 0,
1582 619, 857, 0, 0, 0, 0, 0, 0, 0, 0,
1583 0, 0, 0, 389, 0, 215, 0, 300, 203, 300,
1584 -258, 0, 0, 0, 486, 300, 296, 0, 743, 0,
1585 0, 156, 157, 158, 159, 160, 161, 0, 0, 236,
1586 236, 319, 319, 319, 319, 319, 319, 884, 885, 162,
1587 163, 164, 0, 729, 0, 0, 0, 775, 0, 0,
1588 215, 0, 0, 0, 0, 0, 0, 0, 215, 0,
1589 0, 0, 215, 165, 217, 215, 0, 0, 0, 0,
1590 0, 0, 0, 244, 830, 0, 0, 204, 244, 296,
1591 244, 831, 0, 832, 156, 157, 158, 159, 160, 161,
1592 0, 0, 0, 244, 215, 942, 0, 0, 237, 237,
1593 0, 0, 162, 163, 164, 870, 0, 0, 175, 217,
1594 454, 0, 454, 0, 0, 0, 0, 217, 876, 0,
1595 319, 217, 0, 0, 217, 0, 165, 0, 0, 0,
1596 0, 319, 245, 0, 0, 0, 0, 245, 0, 245,
1597 0, 0, 0, 974, 857, 0, 599, 0, 0, 0,
1598 0, 203, 245, 217, 205, 777, 778, 779, 780, 0,
1599 0, 0, 781, 782, 783, 784, 785, 786, 787, 0,
1600 0, 175, 0, 0, 319, 238, 238, 0, 0, 0,
1601 81, 297, 298, 0, 178, 0, 0, 0, 0, 0,
1602 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1603 0, 0, 0, 319, 319, 319, 319, 319, 319, 319,
1604 319, 319, 319, 319, 319, 319, 319, 319, 319, 319,
1605 204, 319, 0, 0, 0, 0, 0, 0, 0, 0,
1606 1072, 0, 0, 0, 0, 0, 0, 1079, 0, 0,
1607 0, -171, 0, 81, 176, 177, 296, 178, 85, 86,
1608 0, 156, 157, 158, 159, 160, 161, 0, 0, 0,
1609 0, 0, 0, 215, -202, -202, 0, 0, 0, 162,
1610 163, 164, 0, 0, 0, 0, 994, 0, 0, 0,
1611 0, 0, 0, 0, 244, 244, 0, 0, 0, 0,
1612 319, 0, 0, 165, 0, 0, 0, 205, 0, 0,
1613 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1614 0, 0, 389, 0, 0, 0, 0, 0, 0, 0,
1615 0, 0, 217, 0, 0, 0, 0, 743, 0, 0,
1616 0, 0, 0, 0, 0, 0, 0, 0, 175, 0,
1617 0, 0, 0, 245, 245, 0, 0, 0, 0, -171,
1618 0, 0, 0, 0, 355, 1145, 0, 0, 0, 156,
1619 157, 158, 159, 160, 161, 486, 0, 0, 0, 0,
1620 0, 857, -202, -202, 1162, 0, 0, 162, 163, 164,
1621 300, 0, 0, 1168, 1169, 0, 0, 0, 0, 0,
3dabb077 1622 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1623 0, 165, 0, 0, 0, 0, 215, 0, 0, 0,
1624 81, 297, 298, 1100, 178, 0, 0, 0, 0, 0,
1625 0, 0, 0, 0, 0, 0, 1205, 0, 0, 0,
1626 0, 0, 0, 1209, 1211, -1, 1, 0, 0, 0,
1627 0, 0, 0, 0, 0, 857, 175, 0, 0, 0,
1628 0, 0, 0, 2, 0, 0, 0, 0, 0, -278,
1629 0, 0, 0, 0, 0, 217, 0, 0, 0, 3,
1630 0, 1231, 0, 0, 0, 0, 0, 0, 1163, 4,
1631 0, 5, 0, 0, 0, 0, 0, 0, 0, 0,
1632 0, 1239, 1240, 0, 0, 0, 0, 0, 1244, 0,
1633 0, 0, 0, -422, -422, -422, 0, 6, 0, 319,
1634 0, 0, 7, 8, 9, 0, 0, 0, 81, 297,
1635 298, 0, 178, 319, 0, 0, 0, 10, 11, 12,
3dabb077 1636 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1637 0, 0, 0, 0, 319, 0, 0, 13, 14, 15,
1638 16, 0, 17, 18, 19, 20, 21, 22, 23, 24,
1639 25, 26, 0, 27, 28, 29, 30, 31, 32, 33,
1640 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
1641 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
1642 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1643 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1644 74, 75, 76, 77, 78, 79, 80, -2, 1, 0,
1645 0, 0, 0, 81, 82, 83, 84, 0, 85, 86,
1646 87, 0, 0, 0, 0, 2, 0, 0, 0, 0,
1647 0, -278, 0, 0, 0, 0, 0, 0, 0, 0,
1648 0, 3, 0, 0, 0, 0, 0, 0, 0, 0,
1649 0, 4, 0, 5, 0, 0, 0, 0, 0, 0,
1650 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1651 0, 0, 0, 0, 0, -422, -422, -422, 0, 6,
1652 0, 0, 0, 0, 7, 8, 9, 0, 0, 0,
1653 0, 0, 0, 0, 0, 0, 0, 0, 0, 10,
1654 11, 12, 0, 0, 0, 0, 0, 0, 0, 0,
1655 0, 0, 0, 0, 0, 0, 0, 0, 0, 13,
edad9a7f 1656 14, 15, 16, 0, 17, 18, 19, 20, 21, 22,
1657 23, 24, 25, 26, 0, 27, 28, 29, 30, 31,
1658 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
1659 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
1660 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
1661 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1662 72, 73, 74, 75, 76, 77, 78, 79, 80, 0,
909cf5eb 1663 0, 0, 0, 0, 0, 81, 82, 83, 84, 142,
1664 85, 86, 87, 0, 143, 144, 145, 0, 146, 147,
1665 148, 149, 150, 151, 152, 153, 154, -559, 553, 0,
1666 0, 0, 155, 0, 0, 0, 0, 156, 157, 158,
1667 159, 160, 161, 0, 0, 0, 0, 0, 0, 0,
1668 -202, -202, 4, 0, 5, 162, 163, 164, 0, 0,
3dabb077 1669 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1670 0, 0, 0, 0, 0, 0, -422, -422, -422, 165,
1671 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3dabb077 1672 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1673 0, 0, 0, 0, 167, 168, 169, 170, 171, 172,
1674 173, 0, 0, 0, 0, 0, 0, 0, 0, 174,
1675 13, 14, 15, 16, 175, 17, 18, 19, 20, 21,
1676 22, 23, 24, 25, 26, 0, 27, 28, 29, 30,
1677 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1678 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
1679 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
1680 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1681 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
1682 0, 0, 0, 0, 0, 0, 81, 176, 554, 84,
1683 178, 179, 86, 87, 142, 0, 0, 0, 0, 143,
edad9a7f 1684 144, 145, 0, 146, 147, 148, 149, 150, 151, 152,
909cf5eb 1685 153, 154, -171, 0, 0, 0, 0, 155, 0, 0,
edad9a7f 1686 0, 0, 156, 157, 158, 159, 160, 161, 0, 0,
909cf5eb 1687 0, 0, 0, 0, 0, -202, -202, -278, 0, 0,
edad9a7f 1688 162, 163, 164, 0, 0, 0, 0, 0, 0, 0,
e5081f8c 1689 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1690 0, -278, -278, -278, 165, 0, 0, 0, 0, 0,
edad9a7f 1691 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1692 0, 0, 0, 0, 0, 0, 0, 0, 0, 167,
909cf5eb 1693 168, 169, 170, 171, 172, 173, 0, 0, 0, 0,
1694 0, 0, 0, 0, 174, -278, -278, -278, -278, 175,
1695 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
1696 0, -278, -278, -278, -278, -278, -278, -278, -278, -278,
edad9a7f 1697 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
1698 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
1699 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
1700 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
909cf5eb 1701 -278, -278, -278, -278, -278, 0, 0, 0, 0, 0,
1702 0, 81, 176, 177, -278, 178, 179, 86, -278, 220,
1703 0, 0, 0, 0, 143, 144, 145, 0, 0, 221,
1704 148, 149, 150, 151, 152, 153, 222, -171, -563, 0,
1705 0, 0, 223, 0, 0, 0, 0, 156, 157, 158,
1706 159, 160, 161, 0, 0, 0, 0, 0, 0, 0,
1707 -202, -202, -278, 0, 0, 162, 163, 164, 0, 0,
d0b80d80 1708 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1709 0, 0, 0, 0, 0, 0, -278, -278, -278, 165,
1710 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1711 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1712 0, 0, 0, 0, 0, 168, 169, 170, 171, 172,
1713 173, 0, 0, 0, 0, 0, 0, 0, 0, 174,
1714 -278, -278, -278, -278, 175, -278, -278, -278, -278, -278,
1715 -278, -278, -278, -278, -278, 0, -278, -278, -278, -278,
edad9a7f 1716 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
1717 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
1718 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
1719 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
1720 -278, -278, -278, -278, -278, -278, -278, -278, -278, -278,
909cf5eb 1721 0, 0, 0, 0, 0, 0, 81, 176, 177, -278,
1722 178, 224, 225, -278, -169, 0, 0, 0, 0, -169,
1723 -169, -169, 0, -169, -169, -169, -169, -169, -169, -169,
1724 -169, -169, -169, -169, -169, -708, -169, -169, 0, -169,
1725 0, -169, -169, -169, -169, -169, -169, -169, -169, -169,
1726 -169, -169, -169, -169, -169, -169, -169, 0, -169, 0,
edad9a7f 1727 -169, -169, -169, -169, -169, -169, -169, -169, -169, -169,
909cf5eb 1728 -169, -169, -169, -169, -169, -169, -169, -169, -169, -169,
1729 -169, 0, 0, 0, -169, 0, 0, 0, 0, 0,
1730 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1731 0, 0, 0, 0, 0, 0, 0, 0, 0, -169,
1732 -169, -169, -169, -169, -169, -169, 0, 0, 0, 0,
1733 0, 142, 0, 0, -169, 0, 143, 144, 145, -169,
1734 146, 147, 148, 149, 150, 151, 152, 153, 154, -559,
1735 0, 0, 0, 0, 155, 0, 0, 0, 0, 156,
edad9a7f 1736 157, 158, 159, 160, 161, 0, 0, 0, 0, 0,
1737 0, 0, -202, -202, 0, 0, 0, 162, 163, 164,
d0b80d80 1738 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 1739 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1740 0, 165, 0, 0, 0, 0, 0, 0, 0, 0,
1741 0, -169, -169, -169, 0, -169, -169, -169, 0, 0,
1742 0, 0, 0, 0, 0, 166, 167, 168, 169, 170,
1743 171, 172, 173, 0, 0, 0, 0, 0, 142, 0,
1744 0, 174, 0, 143, 144, 145, 175, 146, 147, 148,
1745 149, 150, 151, 152, 153, 154, -559, 0, 0, 0,
1746 0, 155, 0, 0, 0, 0, 156, 157, 158, 159,
1747 160, 161, 0, 0, 0, 0, 0, 0, 0, -202,
1748 -202, 0, 0, 0, 162, 163, 164, 0, 0, 0,
3dabb077 1749 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1750 0, 0, 0, 0, 0, 0, 0, 0, 165, 0,
1751 0, 0, 0, 0, 0, 0, 0, 0, 81, 176,
1752 177, 0, 178, 179, 86, 0, 0, 0, 0, 0,
1753 0, 0, -531, 167, 168, 169, 170, 171, 172, 173,
1754 0, 0, 0, 0, 220, 0, 0, 0, 174, 143,
1755 144, 145, 0, 175, 221, 148, 149, 150, 151, 152,
1756 153, 222, -503, -503, 0, 0, 0, 223, -503, 0,
1757 0, 0, 156, 157, 158, 159, 160, 161, 0, 0,
1758 0, 0, 0, 0, 0, -202, -202, 0, 0, 0,
1759 162, 163, 164, 0, 0, 0, 0, 0, 0, 0,
3dabb077 1760 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1761 0, 0, 0, 0, 165, 0, 0, 0, 0, 0,
1762 0, 0, 0, 0, 0, 81, 176, 177, 0, 178,
1763 179, 86, 0, 0, 0, 0, 0, 0, -503, 0,
1764 168, 169, 170, 171, 172, 173, 0, 0, 0, 0,
1765 0, 142, 0, 0, 174, 0, 143, 144, 145, 175,
1766 146, 147, 148, 149, 150, 151, 152, 153, 154, -559,
1767 651, 0, 0, 0, 155, 0, 0, 0, 0, 156,
1768 157, 158, 159, 160, 161, 0, 0, 0, 0, 0,
1769 0, 0, -202, -202, 0, 0, 0, 162, 163, 164,
1770 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1771 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1772 0, 165, 0, 0, 0, 0, 0, 0, 0, 0,
1773 0, 81, 176, 177, 0, 178, 224, 225, 0, 0,
1774 0, 0, 0, 0, 0, 0, 167, 168, 169, 170,
1775 171, 172, 173, 0, 0, 0, 0, 0, 142, 0,
1776 0, 174, 0, 143, 144, 145, 175, 146, 147, 148,
1777 149, 150, 151, 152, 153, 154, -559, 0, 0, 0,
1778 0, 155, 0, 0, 0, 0, 156, 157, 158, 159,
edad9a7f 1779 160, 161, 0, 0, 0, 0, 0, 0, 0, -202,
1780 -202, 0, 0, 0, 162, 163, 164, 0, 0, 0,
3dabb077 1781 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1782 0, 0, 0, 0, 0, 0, 0, 0, 165, 0,
1783 0, 0, 0, 0, 0, 0, 0, 0, 81, 176,
1784 177, 0, 178, 179, 86, 0, 0, 0, 0, 0,
1785 0, 0, 0, 167, 168, 169, 170, 171, 172, 173,
1786 0, 0, 0, 0, 220, 0, 0, 0, 174, 143,
1787 144, 145, 0, 175, 221, 148, 149, 150, 151, 152,
1788 153, 222, -559, -563, 0, 0, 0, 223, 0, 0,
1789 0, 0, 156, 157, 158, 159, 160, 161, 0, 0,
1790 0, 0, 0, 0, 0, -202, -202, 0, 0, 0,
e5081f8c 1791 162, 163, 164, 0, 0, 0, 0, 0, 0, 0,
3dabb077 1792 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
e5081f8c 1793 0, 0, 0, 0, 165, 0, 0, 0, 0, 0,
909cf5eb 1794 0, 0, 0, 0, 0, 81, 176, 177, 0, 178,
1795 179, 86, 0, 0, 0, 0, 0, 0, -499, 0,
1796 168, 169, 170, 171, 172, 173, 0, 0, 0, 0,
1797 220, 0, 0, 0, 174, 143, 144, 145, 0, 175,
1798 221, 148, 149, 150, 151, 152, 153, 222, -559, -563,
1799 0, 0, 0, 223, 0, 0, 0, 0, 156, 157,
1800 158, 159, 160, 161, 0, 0, 0, 0, 0, 0,
1801 0, -202, -202, 0, 0, 0, 162, 163, 164, 0,
3dabb077 1802 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1803 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1804 165, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1805 0, 81, 176, 177, 0, 178, 224, 225, 0, 0,
1806 0, 0, 0, 0, 0, 0, 168, 169, 170, 171,
1807 172, 173, 0, 0, 0, 0, 0, 0, 0, 0,
1808 174, 0, 143, 144, 145, 175, 146, 147, 148, 149,
1809 150, 151, 152, 153, 222, -559, 571, 0, 0, 0,
1810 355, 0, 0, 0, 0, 156, 157, 158, 159, 160,
1811 161, 0, 0, 0, 0, 0, 0, 0, -202, -202,
1812 4, 0, 5, 162, 163, 164, 0, 0, 0, 0,
3dabb077 1813 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1814 0, 0, 0, 0, 0, 0, 0, 165, 6, 0,
1815 0, 0, 0, 0, 0, 0, 0, 81, 176, 177,
1816 0, 178, 224, 225, 0, 0, 0, 0, 0, 0,
1817 0, 0, 167, 168, 169, 170, 171, 172, 173, 0,
1818 0, 0, 0, 0, 0, 0, 0, 572, 13, 14,
1819 15, 16, 175, 17, 18, 19, 20, 21, 22, 23,
1820 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
1821 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1822 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1823 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1824 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1825 73, 74, 75, 76, 77, 78, 79, 80, 0, 0,
1826 0, 0, 0, 0, 81, 176, 554, 84, 178, 179,
1827 86, 87, 143, 144, 145, 0, 146, 147, 148, 149,
1828 150, 151, 152, 153, 222, -559, 652, 0, 0, 0,
1829 355, 0, 0, 0, 0, 156, 157, 158, 159, 160,
1830 161, 0, 0, 0, 0, 0, 0, 0, -202, -202,
1831 4, 0, 5, 162, 163, 164, 0, 0, 0, 0,
3dabb077 1832 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1833 0, 0, 0, 0, 0, 0, 0, 165, 6, 0,
d0b80d80 1834 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 1835 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1836 0, 0, 167, 168, 169, 170, 171, 172, 173, 0,
1837 0, 0, 0, 0, 0, 0, 0, 174, 13, 14,
1838 15, 16, 175, 17, 18, 19, 20, 21, 22, 23,
1839 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
1840 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1841 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1842 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1843 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1844 73, 74, 75, 76, 77, 78, 79, 80, 0, 0,
1845 0, 0, 0, 0, 81, 176, 554, 84, 178, 179,
1846 86, 87, 143, 144, 145, 0, 146, 147, 148, 149,
1847 150, 151, 152, 153, 222, -559, 664, 0, 0, 0,
1848 355, 0, 0, 0, 0, 156, 157, 158, 159, 160,
1849 161, 0, 0, 0, 0, 0, 0, 0, -202, -202,
1850 4, 0, 5, 162, 163, 164, 0, 0, 0, 0,
d0b80d80 1851 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1852 0, 0, 0, 0, 0, 0, 0, 165, 6, 0,
d0b80d80 1853 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1854 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1855 0, 0, 167, 168, 169, 170, 171, 172, 173, 0,
1856 0, 0, 0, 0, 0, 0, 0, 665, 13, 14,
1857 15, 16, 175, 17, 18, 19, 20, 21, 22, 23,
1858 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
1859 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1860 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1861 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1862 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1863 73, 74, 75, 76, 77, 78, 79, 80, 0, 0,
1864 0, 0, 0, 0, 81, 176, 554, 84, 178, 179,
1865 86, 87, 143, 144, 145, 0, 146, 147, 148, 149,
1866 150, 151, 152, 153, 222, -559, 663, 0, 0, 0,
1867 355, 0, 0, 0, 0, 156, 157, 158, 159, 160,
1868 161, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1869 0, 0, 0, 162, 163, 164, 143, 144, 145, 0,
1870 146, 147, 148, 149, 150, 151, 152, 153, 222, -559,
1871 667, 0, 0, 0, 355, 0, 0, 165, 0, 156,
1872 157, 158, 159, 160, 161, 0, 0, 0, 0, 0,
1873 0, 0, 0, 0, 0, 0, 0, 162, 163, 164,
1874 0, 0, 167, 168, 169, 170, 171, 172, 173, 0,
1875 0, 0, 0, 0, 0, 0, 0, 174, 0, 0,
1876 0, 165, 175, 0, 0, 0, 0, 0, 0, 0,
edad9a7f 1877 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1878 0, 0, 0, 0, 0, 0, 167, 168, 169, 170,
1879 171, 172, 173, 0, 0, 0, 0, 0, 0, 0,
1880 0, 668, 0, 143, 144, 145, 175, 146, 147, 148,
1881 149, 150, 151, 152, 153, 222, -559, 727, 0, 0,
1882 0, 355, 0, 0, 0, 0, 156, 157, 158, 159,
1883 160, 161, 0, 0, 81, 176, 177, 0, 178, 179,
1884 86, 0, 0, 0, 162, 163, 164, 143, 144, 145,
1885 0, 146, 147, 148, 149, 150, 151, 152, 153, 222,
1886 -559, 805, 0, 0, 0, 355, 0, 0, 165, 0,
1887 156, 157, 158, 159, 160, 161, 0, 0, 81, 176,
1888 177, 0, 178, 179, 86, 0, 0, 0, 162, 163,
1889 164, 0, 0, 167, 168, 169, 170, 171, 172, 173,
1890 0, 0, 0, 0, 0, 0, 0, 0, 174, 0,
1891 0, 0, 165, 175, 0, 0, 0, 0, 0, 0,
1892 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1893 0, 0, 0, 0, 0, 0, 0, 167, 168, 169,
1894 170, 171, 172, 173, 0, 0, 0, 0, 0, 0,
1895 0, 0, 174, 0, 143, 144, 145, 175, 146, 147,
1896 148, 149, 150, 151, 152, 153, 222, -559, 806, 0,
1897 0, 0, 355, 0, 0, 0, 0, 156, 157, 158,
1898 159, 160, 161, 0, 0, 81, 176, 177, 0, 178,
1899 179, 86, 0, 0, 0, 162, 163, 164, 143, 144,
edad9a7f 1900 145, 0, 146, 147, 148, 149, 150, 151, 152, 153,
909cf5eb 1901 222, -559, 808, 0, 0, 0, 355, 0, 0, 165,
1902 0, 156, 157, 158, 159, 160, 161, 0, 0, 81,
1903 176, 177, 0, 178, 179, 86, 0, 0, 0, 162,
1904 163, 164, 0, 0, 167, 168, 169, 170, 171, 172,
1905 173, 0, 0, 0, 0, 0, 0, 0, 0, 807,
1906 0, 0, 0, 165, 175, 0, 0, 0, 0, 0,
1907 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1908 0, 0, 0, 0, 0, 0, 0, 0, 167, 168,
1909 169, 170, 171, 172, 173, 0, 0, 0, 0, 0,
1910 0, 0, 0, 174, 0, 143, 144, 145, 175, 146,
1911 147, 148, 149, 150, 151, 152, 153, 222, -559, 941,
1912 0, 0, 0, 355, 0, 0, 0, 0, 156, 157,
1913 158, 159, 160, 161, 0, 0, 81, 176, 177, 0,
1914 178, 179, 86, 0, 0, 0, 162, 163, 164, 143,
edad9a7f 1915 144, 145, 0, 146, 147, 148, 149, 150, 151, 152,
909cf5eb 1916 153, 222, -559, 0, 0, 0, 0, 355, 0, 0,
1917 165, 0, 156, 157, 158, 159, 160, 161, 0, 0,
1918 81, 176, 177, 0, 178, 179, 86, 0, 0, 0,
1919 162, 163, 164, 0, 0, 167, 168, 169, 170, 171,
1920 172, 173, 0, 0, 0, 0, 0, 0, 0, 0,
1921 174, 0, 0, 0, 165, 175, 0, 0, 0, 0,
d0b80d80 1922 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
e5081f8c 1923 0, 0, 0, 0, 0, 0, 0, 0, 0, 167,
909cf5eb 1924 168, 169, 170, 171, 172, 173, -135, 0, 0, 0,
1925 0, -135, 0, 0, 174, 0, 0, 0, 0, 175,
d0b80d80 1926 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1927 0, 4, 0, 5, 0, 0, 0, 0, 0, 0,
1928 0, 0, 0, 0, 0, 0, 0, 81, 176, 177,
1929 0, 178, 179, 86, 0, 0, 0, 0, 0, 6,
edad9a7f 1930 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1931 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
edad9a7f 1932 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1933 0, 81, 176, 177, 0, 178, 179, 86, 0, 13,
edad9a7f 1934 14, 15, 16, 0, 17, 18, 19, 20, 21, 22,
1935 23, 24, 25, 26, 0, 27, 28, 29, 30, 31,
1936 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
1937 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
1938 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
1939 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
909cf5eb 1940 72, 73, 74, 75, 76, 77, 78, 79, 80, -562,
edad9a7f 1941 0, 0, 0, 0, 0, 0, 0, 137, 84, 0,
1942 0, 0, 87, 0, 0, 0, 0, 0, 0, 0,
1943 0, 0, 0, 4, 0, 0, 0, 0, 0, 0,
2f2892c2 1944 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2f2892c2 1945 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2f2892c2 1946 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3dabb077 1947 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3dabb077 1948 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3dabb077 1949 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1950 0, 13, 14, 15, 16, 0, 17, 18, 19, 20,
1951 21, 22, 23, 24, 25, 26, 0, 27, 28, 29,
1952 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
1953 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
1954 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
1955 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1956 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
1957 80, 0, 0, 0, 0, 0, 709, -702, 0, 137,
1958 84, 296, 0, 0, 87, 0, 156, 157, 158, 159,
1959 160, 161, 0, 0, 0, 0, 0, 628, 0, 0,
1960 0, 0, 296, 0, 162, 163, 164, 156, 157, 158,
1961 159, 160, 161, 0, 0, 0, 0, 0, 0, 0,
1962 0, 0, 0, 0, 709, 162, 163, 164, 165, 296,
1963 0, 0, 0, 0, 156, 157, 158, 159, 160, 161,
1964 0, 0, 0, 0, 0, 0, 0, 0, 0, 165,
1965 0, 0, 162, 163, 164, 0, 0, 0, 0, 0,
e5081f8c 1966 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1967 0, 0, 0, 175, 0, 0, 165, 0, 0, 0,
e5081f8c 1968 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1969 0, 0, 0, 0, 175, 0, 0, 0, 0, 0,
e5081f8c 1970 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1971 -278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1972 3, 175, 0, 0, 0, 0, 0, 0, 0, 0,
edad9a7f 1973 4, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 1974 0, 0, 0, 0, 0, 81, 297, 298, 0, 178,
1975 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1976 0, 0, 0, 0, 0, 0, 81, 297, 298, 0,
1977 178, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1978 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1979 0, 0, 0, 81, 297, 298, 0, 178, 13, 14,
1980 15, 16, 0, 17, 18, 19, 20, 21, 22, 23,
1981 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
1982 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1983 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
1984 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1985 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1986 73, 74, 75, 76, 77, 78, 79, 80, 0, 0,
1987 0, 0, 0, 0, 81, 82, 83, 84, 296, 85,
1988 86, 87, 0, 156, 157, 158, 159, 160, 161, 0,
1989 0, 0, 0, 0, 0, 0, -202, -202, 0, 296,
1990 514, 162, 163, 164, 156, 157, 158, 159, 160, 161,
1991 296, 0, 0, 594, 0, 156, 157, 158, 159, 160,
1992 161, 0, 162, 163, 164, 165, 0, 0, 0, 0,
1993 0, 296, 992, 162, 163, 164, 156, 157, 158, 159,
1994 160, 161, 296, 0, 0, 689, 165, 156, 157, 158,
1995 159, 160, 161, 0, 162, 163, 164, 165, 0, 0,
1996 0, 0, 0, 0, 0, 162, 163, 164, 0, 0,
1997 175, 0, 0, 0, 296, -258, 0, 0, 165, 156,
1998 157, 158, 159, 160, 161, 0, 0, 0, 0, 165,
1999 0, 175, 0, 0, 0, 0, 0, 162, 163, 164,
2000 0, 296, 175, 0, 0, 0, 156, 157, 158, 159,
2001 160, 161, 0, 0, 0, 0, 0, 0, 0, 0,
2002 0, 165, 0, 175, 162, 163, 164, 0, 0, 0,
2003 343, 0, 0, 0, 175, 156, 157, 158, 159, 160,
2004 161, 0, 81, 297, 298, 0, 178, 0, 165, 0,
2005 0, 0, 0, 162, 163, 164, 0, 0, 0, 0,
2006 0, 0, 0, 81, 297, 298, 175, 178, 0, 0,
2007 0, 0, 0, 0, 81, 297, 298, 165, 178, 722,
2008 0, 0, 0, 0, 156, 157, 158, 159, 160, 161,
2009 0, 0, 0, 175, 0, 81, 297, 298, 0, 178,
2010 0, 0, 162, 163, 164, 0, 81, 297, 298, 724,
2011 178, 0, 0, 0, 156, 157, 158, 159, 160, 161,
2012 0, 0, 175, 0, 0, 0, 165, 0, 0, 0,
2013 0, 0, 162, 163, 164, 0, 0, 0, 81, 297,
2014 298, 0, 178, 0, 0, 0, 0, 0, 0, 0,
2015 0, 0, 0, 0, 0, 0, 165, 0, 0, 0,
2016 0, 0, 0, 0, 0, 81, 297, 298, 730, 178,
2017 0, 175, 0, 731, 732, 733, 734, 735, 736, 0,
2018 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2019 0, 162, 737, 738, 81, 297, 298, 0, 178, 0,
2020 0, 175, 0, 0, 0, 0, 0, 0, 0, 0,
2021 0, 0, 0, 0, 0, 739, 0, 0, 0, 0,
e5081f8c 2022 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2023 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2024 0, 0, 0, 81, 297, 298, 0, 178, 0, 0,
e5081f8c 2025 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2026 175, 0, 0, 0, 0, 0, 0, 0, 0, 4,
2027 0, 5, 0, 81, 297, 298, 0, 178, 0, 0,
2028 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2029 0, 0, 0, -422, -422, -422, 0, 6, 0, 0,
2030 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2031 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2032 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2033 0, 0, 81, 740, 741, 0, 178, 13, 14, 15,
edad9a7f 2034 16, 0, 17, 18, 19, 20, 21, 22, 23, 24,
2035 25, 26, 0, 27, 28, 29, 30, 31, 32, 33,
2036 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2037 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
2038 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
2039 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
909cf5eb 2040 74, 75, 76, 77, 78, 79, 80, 4, 0, 5,
2041 0, 0, 0, 0, 0, 137, 84, 0, 0, 0,
2042 87, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2043 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
d0b80d80 2044 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 2045 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2046 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2047 0, 0, 0, 0, 0, 13, 14, 15, 16, 0,
2048 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
2049 0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
2050 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2051 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2052 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
2053 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
2054 76, 77, 78, 79, 80, 4, 0, 0, 0, 0,
2055 0, 81, 1105, 137, 84, 0, 0, 0, 87, 0,
2056 0, 0, 0, 0, 0, 0, 0, 0, 0, -422,
2057 -422, -422, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 2058 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2f2892c2 2059 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 2060 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2061 0, 0, 0, 13, 14, 15, 16, 0, 17, 18,
edad9a7f 2062 19, 20, 21, 22, 23, 24, 25, 26, 0, 27,
2063 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2064 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2065 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2066 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
2067 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
909cf5eb 2068 78, 79, 80, 4, 0, 0, 0, 0, 0, 0,
edad9a7f 2069 0, 137, 84, 0, 0, 0, 87, 0, 0, 0,
edad9a7f 2070 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2071 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 2072 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2073 0, 10, 11, 12, 0, 0, 0, 0, 0, 0,
d0b80d80 2074 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2075 0, 13, 14, 15, 16, 0, 17, 18, 19, 20,
2076 21, 22, 23, 24, 25, 26, 0, 27, 28, 29,
2077 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2078 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2079 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2080 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
2081 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
909cf5eb 2082 80, 4, 0, 5, 0, 0, 0, 0, 0, 137,
e5081f8c 2083 84, 0, 0, 0, 87, 0, 0, 0, 0, 0,
909cf5eb 2084 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
edad9a7f 2085 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
e5081f8c 2086 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2087 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2088 0, 0, 0, 0, 0, 0, 0, 0, 0, 13,
2089 14, 15, 16, 0, 17, 18, 19, 20, 21, 22,
2090 23, 24, 25, 26, 0, 27, 28, 29, 30, 31,
2091 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2092 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
2093 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
2094 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
2095 72, 73, 74, 75, 76, 77, 78, 79, 80, 4,
2096 0, 0, 0, 0, 0, 0, 0, 137, 84, 0,
2097 0, 0, 87, 0, 0, 0, 0, 0, 0, 0,
2098 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
e5081f8c 2099 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2100 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2101 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2102 0, 0, 0, 0, 0, 0, 0, 13, 14, 15,
2103 16, 0, 17, 18, 19, 20, 21, 22, 23, 24,
2104 25, 26, 0, 27, 28, 29, 30, 31, 32, 33,
2105 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2106 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
2107 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
2108 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
2109 74, 75, 76, 77, 78, 79, 80, 0, 0, 0,
2110 0, 0, 0, 0, 0, 137, 84, 0, 0, 0,
2111 87
d0b80d80 2112};
2113
2114static const short yycheck[] =
2115{
909cf5eb 2116 0, 0, 5, 143, 121, 5, 0, 439, 459, 9,
2117 10, 11, 12, 401, 402, 596, 3, 332, 403, 0,
2118 929, 313, 937, 440, 5, 457, 549, 10, 9, 131,
2119 311, 626, 395, 396, 657, 551, 393, 394, 27, 234,
2120 355, 679, 657, 965, 657, 830, 223, 703, 404, 473,
2121 835, 228, 56, 230, 839, 24, 0, 156, 157, 158,
2122 159, 160, 161, 789, 5, 19, 21, 405, 21, 842,
2123 25, 266, 25, 505, 19, 848, 661, 661, 804, 661,
2124 397, 398, 399, 400, 25, 0, 24, 5, 88, 88,
2125 5, 5, 7, 18, 88, 718, 34, 557, 815, 24,
2126 21, 54, 55, 718, 25, 718, 24, 88, 21, 34,
2127 691, 25, 1117, 1118, 27, 575, 34, 661, 28, 21,
2128 18, 121, 22, 25, 11, 12, 26, 949, 28, 50,
2129 51, 1040, 1041, 24, 657, 45, 1051, 1052, 24, 139,
2130 121, 657, 129, 34, 88, 45, 41, 1069, 50, 51,
2131 150, 26, 139, 28, 28, 155, 22, 942, 139, 21,
2132 18, 5, 57, 25, 18, 23, 598, 21, 34, 150,
2133 45, 45, 155, 88, 174, 490, 814, 39, 610, 817,
2134 1185, 25, 474, 187, 286, 21, 842, 102, 612, 25,
2135 11, 12, 848, 41, 611, 718, 969, 21, 113, 114,
2136 200, 25, 718, 192, 789, 789, 1115, 789, 208, 57,
2137 210, 1126, 212, 1128, 661, 215, 18, 200, 413, 804,
2138 804, 88, 804, 223, 139, 208, 50, 51, 228, 212,
2139 230, 948, 215, 950, 188, 189, 190, 192, 26, 193,
2140 194, 343, 346, 243, 244, 789, 34, 188, 189, 190,
2141 188, 189, 193, 194, 1076, 706, 1078, 434, 435, 21,
2142 804, 244, 577, 188, 189, 190, 5, 24, 372, 657,
2143 188, 189, 657, 377, 378, 379, 380, 381, 382, 383,
2144 384, 385, 386, 387, 18, 285, 285, 21, 288, 289,
2145 290, 390, 391, 392, 657, 10, 1081, 188, 189, 439,
2146 657, 657, 24, 926, 285, 24, 410, 288, 289, 290,
2147 310, 310, 34, 969, 301, 21, 316, 457, 5, 657,
2148 1235, 27, 188, 189, 190, 21, 607, 193, 194, 310,
2149 718, 27, 5, 718, 24, 316, 223, 24, 25, 26,
2150 657, 228, 789, 230, 188, 189, 190, 34, 34, 193,
2151 194, 89, 90, 10, 24, 718, 243, 804, 358, 21,
2152 21, 718, 718, 25, 25, 505, 366, 26, 368, 28,
2153 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
2154 718, 24, 977, 121, 122, 300, 45, 21, 820, 50,
2155 51, 25, 973, 495, 493, 29, 919, 135, 24, 831,
2156 26, 718, 223, 18, 1027, 921, 21, 228, 859, 230,
2157 25, 111, 1027, 413, 1027, 115, 21, 117, 18, 119,
2158 25, 10, 243, 26, 124, 28, 112, 113, 114, 21,
2159 413, 37, 38, 25, 434, 435, 136, 431, 138, 10,
2160 155, 441, 45, 443, 443, 18, 52, 53, 442, 188,
2161 189, 190, 452, 21, 193, 194, 18, 25, 598, 21,
2162 463, 23, 443, 463, 24, 465, 188, 189, 190, 946,
2163 610, 452, 949, 473, 25, 26, 476, 28, 24, 581,
2164 480, 181, 463, 21, 465, 200, 473, 25, 18, 1112,
2165 16, 21, 473, 208, 45, 476, 16, 212, 155, 480,
2166 215, 188, 189, 190, 1027, 18, 193, 194, 21, 509,
2167 21, 1027, 25, 15, 25, 188, 189, 190, 518, 519,
2168 193, 194, 25, 26, 628, 28, 914, 915, 21, 244,
2169 632, 916, 25, 5, 32, 33, 640, 518, 519, 32,
2170 33, 18, 45, 200, 21, 908, 909, 434, 435, 906,
2171 907, 208, 24, 16, 1051, 212, 556, 557, 215, 1182,
2172 102, 917, 34, 557, 564, 564, 155, 21, 24, 269,
2173 22, 25, 572, 556, 23, 575, 576, 26, 34, 28,
2174 918, 575, 24, 564, 155, 27, 16, 244, 24, 706,
2175 26, 695, 34, 910, 911, 912, 913, 22, 34, 1076,
2176 24, 1078, 26, 18, 304, 709, 21, 307, 54, 55,
2177 34, 200, 612, 434, 435, 315, 50, 51, 318, 208,
2178 722, 34, 724, 212, 18, 612, 215, 21, 730, 200,
2179 29, 612, 731, 732, 733, 734, 735, 736, 1135, 1027,
2180 22, 212, 1027, 1140, 215, 37, 38, 18, 929, 24,
2181 21, 26, 210, 653, 654, 244, 39, 657, 5, 34,
2182 52, 53, 40, 21, 1027, 665, 666, 25, 668, 984,
2183 1027, 1027, 21, 244, 95, 88, 25, 24, 25, 26,
2184 820, 21, 682, 18, 684, 25, 21, 34, 21, 1027,
2185 971, 831, 25, 1190, 56, 695, 25, 26, 413, 28,
2186 687, 682, 702, 684, 619, 705, 706, 707, 18, 1160,
2187 1027, 21, 184, 185, 695, 34, 188, 189, 718, 706,
2188 192, 702, 95, 21, 705, 706, 830, 25, 184, 185,
2189 430, 835, 188, 189, 874, 839, 192, 21, 25, 26,
2190 440, 25, 859, 6, 7, 445, 188, 189, 190, 449,
2191 192, 451, 188, 189, 190, 1036, 413, 193, 194, 195,
2192 24, 865, 34, 27, 192, 1046, 25, 26, 468, 28,
2193 34, 26, 472, 19, 21, 188, 189, 1209, 25, 34,
2194 193, 194, 886, 887, 22, 1066, 45, 22, 892, 893,
2195 894, 895, 896, 897, 898, 899, 900, 901, 902, 21,
2196 358, 24, 1083, 25, 903, 904, 905, 807, 366, 24,
2197 368, 26, 1244, 188, 189, 190, 21, 21, 193, 194,
2198 25, 25, 21, 24, 413, 26, 25, 827, 32, 33,
2199 830, 22, 832, 21, 24, 835, 26, 25, 942, 839,
2200 1121, 556, 413, 21, 42, 43, 827, 25, 21, 830,
2201 95, 832, 25, 21, 835, 19, 21, 25, 839, 859,
2202 25, 1142, 21, 20, 37, 38, 25, 867, 95, 188,
2203 189, 190, 859, 21, 193, 194, 195, 25, 859, 52,
2204 53, 21, 27, 441, 21, 25, 867, 18, 25, 37,
2205 38, 990, 20, 21, 21, 24, 596, 812, 25, 556,
2206 815, 188, 189, 190, 52, 53, 193, 194, 188, 189,
2207 190, 611, 25, 193, 194, 21, 188, 189, 190, 25,
2208 23, 193, 194, 21, 188, 189, 190, 25, 192, 929,
2209 630, 18, 21, 188, 189, 190, 25, 937, 193, 194,
2210 21, 18, 942, 22, 25, 34, 35, 36, 21, 21,
2211 24, 509, 25, 25, 123, 124, 125, 126, 658, 128,
2212 660, 942, 21, 22, 133, 134, 23, 556, 137, 138,
2213 18, 140, 141, 142, 143, 21, 21, 1081, 21, 25,
2214 25, 21, 25, 32, 33, 25, 155, 156, 34, 35,
2215 36, 24, 692, 1095, 21, 995, 996, 25, 25, 557,
2216 25, 58, 59, 60, 61, 62, 63, 64, 65, 66,
2217 67, 24, 181, 11, 995, 996, 21, 575, 576, 18,
2218 25, 18, 191, 25, 68, 69, 70, 1027, 34, 35,
2219 36, 946, 18, 948, 949, 950, 50, 51, 1038, 18,
2220 1040, 1041, 742, 1160, 1038, 18, 24, 19, 26, 1049,
2221 28, 1051, 1052, 34, 35, 36, 52, 53, 54, 54,
2222 55, 24, 10, 11, 12, 20, 21, 45, 1068, 1209,
2223 48, 49, 11, 1073, 1073, 20, 21, 9, 13, 14,
2224 15, 1081, 91, 1223, 21, 22, 1086, 1086, 32, 33,
2225 21, 1091, 1073, 113, 114, 653, 654, 797, 798, 1086,
2226 1081, 19, 19, 19, 1244, 1086, 19, 91, 666, 24,
2227 1091, 25, 1112, 1113, 1114, 1115, 27, 1117, 1118, 24,
2228 22, 21, 21, 24, 18, 26, 1126, 28, 1128, 25,
2229 25, 1131, 1113, 1114, 21, 1135, 25, 1137, 1138, 11,
2230 1140, 841, 24, 1146, 45, 24, 1146, 48, 49, 707,
2231 24, 27, 25, 23, 20, 19, 1137, 1138, 20, 19,
2232 1160, 1076, 23, 1078, 27, 1146, 24, 21, 103, 104,
2233 105, 106, 107, 108, 109, 110, 21, 112, 10, 1160,
2234 115, 5, 1182, 1183, 1184, 1185, 25, 22, 19, 25,
2235 1190, 24, 20, 20, 40, 25, 131, 22, 133, 134,
2236 135, 27, 1183, 1184, 139, 73, 27, 155, 25, 18,
2237 1210, 1210, 10, 11, 12, 21, 21, 25, 29, 39,
2238 155, 24, 56, 143, 25, 189, 91, 162, 25, 1210,
2239 25, 18, 91, 22, 91, 1235, 156, 157, 158, 159,
2240 160, 161, 91, 163, 164, 945, 25, 91, 91, 184,
2241 24, 20, 200, 25, 25, 25, 18, 25, 21, 18,
2242 208, 27, 192, 40, 212, 23, 20, 215, 18, 21,
2243 23, 194, 18, 973, 22, 223, 224, 24, 91, 22,
2244 228, 21, 230, 21, 20, 22, 20, 91, 223, 196,
2245 25, 40, 25, 25, 18, 243, 244, 27, 27, 131,
2246 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
2247 20, 20, 27, 25, 0, 0, 316, 937, 1235, 1203,
2248 1131, 153, 1030, 155, 88, 693, 1103, 262, 1039, 1182,
2249 19, 20, 1068, 887, 184, 24, 827, 26, 802, 28,
2250 29, 30, 31, 32, 33, 34, 836, 581, 684, 1210,
2251 682, 286, 859, 288, 289, 705, 129, 155, 47, 48,
2252 49, 296, 12, 301, 353, 243, 301, 1166, 200, 865,
2253 509, 1071, 413, 718, 1027, 709, 208, 864, -1, -1,
2254 212, 316, 71, 215, -1, 10, 11, 12, -1, -1,
2255 -1, 223, -1, -1, -1, -1, -1, -1, -1, -1,
2256 -1, -1, 200, -1, -1, -1, -1, -1, 343, -1,
2257 208, -1, 244, -1, 212, -1, -1, 215, -1, -1,
2258 355, -1, -1, 371, -1, 223, -1, 116, -1, -1,
2259 228, -1, 230, -1, -1, -1, -1, -1, -1, -1,
2260 -1, -1, -1, -1, -1, 243, 244, -1, -1, -1,
2261 1150, -1, -1, -1, 10, 11, 12, -1, -1, -1,
2262 -1, -1, -1, -1, 296, 413, -1, -1, -1, -1,
2263 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
2264 400, 401, 402, 403, 404, 405, 434, 435, -1, -1,
2265 -1, 323, 324, 325, 326, 430, -1, -1, -1, 188,
2266 189, 190, -1, 192, 193, 194, -1, -1, -1, -1,
2267 -1, 343, -1, -1, 449, 347, 451, -1, 453, 439,
2268 -1, 456, -1, 355, 459, -1, 461, -1, -1, -1,
2269 155, 10, 11, 12, -1, 470, -1, 457, 473, -1,
2270 18, 373, 1242, -1, -1, 480, 24, -1, -1, -1,
2271 -1, 29, 30, 31, 32, 33, 34, -1, -1, -1,
2272 495, -1, -1, -1, -1, -1, -1, -1, -1, 47,
2273 48, 49, -1, 493, -1, 200, -1, -1, -1, -1,
2274 -1, 413, -1, 208, -1, 505, -1, 212, -1, 421,
2275 215, -1, -1, 71, -1, -1, -1, -1, 223, 155,
2276 -1, -1, -1, 228, -1, 230, -1, -1, 556, -1,
2277 -1, -1, -1, -1, -1, 413, -1, -1, 243, 244,
2278 -1, -1, -1, -1, -1, -1, -1, -1, -1, 549,
2279 -1, 551, -1, -1, -1, -1, 434, 435, 116, -1,
2280 10, 11, 12, 578, 200, -1, 581, -1, -1, -1,
2281 -1, -1, 208, -1, -1, -1, 212, -1, -1, 215,
2282 -1, -1, 597, -1, -1, -1, -1, 223, -1, 604,
2283 605, 606, 228, -1, 230, -1, 155, 612, 598, -1,
2284 -1, -1, -1, -1, -1, -1, -1, 243, 244, -1,
2285 610, -1, -1, -1, -1, -1, -1, 632, -1, 10,
2286 11, 12, -1, -1, -1, -1, -1, -1, 643, 644,
2287 188, 189, 190, -1, 192, -1, -1, -1, 550, -1,
2288 -1, 200, 657, -1, 556, 645, 646, -1, -1, 208,
2289 -1, -1, -1, 212, -1, -1, 215, 657, 673, -1,
2290 -1, -1, -1, -1, 223, -1, 681, -1, 683, 228,
2291 -1, 230, 687, -1, -1, -1, -1, -1, 556, -1,
2292 -1, 696, 697, -1, 243, 244, 701, -1, -1, -1,
2293 705, 706, -1, -1, -1, -1, -1, -1, -1, -1,
2294 -1, -1, -1, 718, -1, 155, -1, 722, 413, 724,
2295 18, -1, -1, -1, 626, 730, 24, -1, 718, -1,
2296 -1, 29, 30, 31, 32, 33, 34, -1, -1, 434,
2297 435, 731, 732, 733, 734, 735, 736, 737, 738, 47,
2298 48, 49, -1, 655, -1, -1, -1, 659, -1, -1,
2299 200, -1, -1, -1, -1, -1, -1, -1, 208, -1,
2300 -1, -1, 212, 71, 155, 215, -1, -1, -1, -1,
2301 -1, -1, -1, 223, 19, -1, -1, 413, 228, 24,
2302 230, 26, -1, 28, 29, 30, 31, 32, 33, 34,
2303 -1, -1, -1, 243, 244, 810, -1, -1, 434, 435,
2304 -1, -1, 47, 48, 49, 717, -1, -1, 116, 200,
2305 722, -1, 724, -1, -1, -1, -1, 208, 730, -1,
2306 820, 212, -1, -1, 215, -1, 71, -1, -1, -1,
2307 -1, 831, 223, -1, -1, -1, -1, 228, -1, 230,
2308 -1, -1, -1, 858, 859, -1, 861, -1, -1, -1,
2309 -1, 556, 243, 244, 413, 73, 74, 75, 76, -1,
2310 -1, -1, 80, 81, 82, 83, 84, 85, 86, -1,
2311 -1, 116, -1, -1, 874, 434, 435, -1, -1, -1,
2312 188, 189, 190, -1, 192, -1, -1, -1, -1, -1,
d0b80d80 2313 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2314 -1, -1, -1, 903, 904, 905, 906, 907, 908, 909,
2315 910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
2316 556, 921, -1, -1, -1, -1, -1, -1, -1, -1,
2317 945, -1, -1, -1, -1, -1, -1, 952, -1, -1,
2318 -1, 19, -1, 188, 189, 190, 24, 192, 193, 194,
2319 -1, 29, 30, 31, 32, 33, 34, -1, -1, -1,
2320 -1, -1, -1, 413, 42, 43, -1, -1, -1, 47,
2321 48, 49, -1, -1, -1, -1, 888, -1, -1, -1,
2322 -1, -1, -1, -1, 434, 435, -1, -1, -1, -1,
2323 990, -1, -1, 71, -1, -1, -1, 556, -1, -1,
2324 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2325 -1, -1, 1027, -1, -1, -1, -1, -1, -1, -1,
2326 -1, -1, 413, -1, -1, -1, -1, 1027, -1, -1,
2327 -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
2328 -1, -1, -1, 434, 435, -1, -1, -1, -1, 19,
2329 -1, -1, -1, -1, 24, 1070, -1, -1, -1, 29,
2330 30, 31, 32, 33, 34, 977, -1, -1, -1, -1,
2331 -1, 1086, 42, 43, 1089, -1, -1, 47, 48, 49,
2332 1095, -1, -1, 1098, 1099, -1, -1, -1, -1, -1,
2333 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2334 -1, 71, -1, -1, -1, -1, 556, -1, -1, -1,
2335 188, 189, 190, 1025, 192, -1, -1, -1, -1, -1,
2336 -1, -1, -1, -1, -1, -1, 1141, -1, -1, -1,
2337 -1, -1, -1, 1148, 1149, 0, 1, -1, -1, -1,
2338 -1, -1, -1, -1, -1, 1160, 116, -1, -1, -1,
2339 -1, -1, -1, 18, -1, -1, -1, -1, -1, 24,
2340 -1, -1, -1, -1, -1, 556, -1, -1, -1, 34,
2341 -1, 1186, -1, -1, -1, -1, -1, -1, 1090, 44,
2342 -1, 46, -1, -1, -1, -1, -1, -1, -1, -1,
2343 -1, 1206, 1207, -1, -1, -1, -1, -1, 1213, -1,
2344 -1, -1, -1, 68, 69, 70, -1, 72, -1, 1209,
2345 -1, -1, 77, 78, 79, -1, -1, -1, 188, 189,
2346 190, -1, 192, 1223, -1, -1, -1, 92, 93, 94,
d0b80d80 2347 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2348 -1, -1, -1, -1, 1244, -1, -1, 112, 113, 114,
2349 115, -1, 117, 118, 119, 120, 121, 122, 123, 124,
2350 125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
2351 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
2352 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
2353 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
2354 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
2355 175, 176, 177, 178, 179, 180, 181, 0, 1, -1,
2356 -1, -1, -1, 188, 189, 190, 191, -1, 193, 194,
2357 195, -1, -1, -1, -1, 18, -1, -1, -1, -1,
2358 -1, 24, -1, -1, -1, -1, -1, -1, -1, -1,
2359 -1, 34, -1, -1, -1, -1, -1, -1, -1, -1,
2360 -1, 44, -1, 46, -1, -1, -1, -1, -1, -1,
2361 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2362 -1, -1, -1, -1, -1, 68, 69, 70, -1, 72,
2363 -1, -1, -1, -1, 77, 78, 79, -1, -1, -1,
2364 -1, -1, -1, -1, -1, -1, -1, -1, -1, 92,
2365 93, 94, -1, -1, -1, -1, -1, -1, -1, -1,
2366 -1, -1, -1, -1, -1, -1, -1, -1, -1, 112,
2367 113, 114, 115, -1, 117, 118, 119, 120, 121, 122,
2368 123, 124, 125, 126, -1, 128, 129, 130, 131, 132,
2369 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
2370 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
2371 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
2372 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
2373 173, 174, 175, 176, 177, 178, 179, 180, 181, -1,
2374 -1, -1, -1, -1, -1, 188, 189, 190, 191, 1,
2375 193, 194, 195, -1, 6, 7, 8, -1, 10, 11,
2376 12, 13, 14, 15, 16, 17, 18, 19, 20, -1,
2377 -1, -1, 24, -1, -1, -1, -1, 29, 30, 31,
2378 32, 33, 34, -1, -1, -1, -1, -1, -1, -1,
2379 42, 43, 44, -1, 46, 47, 48, 49, -1, -1,
2380 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2381 -1, -1, -1, -1, -1, -1, 68, 69, 70, 71,
2382 72, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2383 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2384 -1, -1, -1, -1, 96, 97, 98, 99, 100, 101,
2385 102, -1, -1, -1, -1, -1, -1, -1, -1, 111,
2386 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
2387 122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
edad9a7f 2388 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
2389 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
2390 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
2391 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
909cf5eb 2392 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
2393 -1, -1, -1, -1, -1, -1, 188, 189, 190, 191,
2394 192, 193, 194, 195, 1, -1, -1, -1, -1, 6,
edad9a7f 2395 7, 8, -1, 10, 11, 12, 13, 14, 15, 16,
909cf5eb 2396 17, 18, 19, -1, -1, -1, -1, 24, -1, -1,
edad9a7f 2397 -1, -1, 29, 30, 31, 32, 33, 34, -1, -1,
909cf5eb 2398 -1, -1, -1, -1, -1, 42, 43, 44, -1, -1,
edad9a7f 2399 47, 48, 49, -1, -1, -1, -1, -1, -1, -1,
3dabb077 2400 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2401 -1, 68, 69, 70, 71, -1, -1, -1, -1, -1,
edad9a7f 2402 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2403 -1, -1, -1, -1, -1, -1, -1, -1, -1, 96,
909cf5eb 2404 97, 98, 99, 100, 101, 102, -1, -1, -1, -1,
2405 -1, -1, -1, -1, 111, 112, 113, 114, 115, 116,
2406 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
2407 -1, 128, 129, 130, 131, 132, 133, 134, 135, 136,
3dabb077 2408 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
2409 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
2410 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
2411 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
909cf5eb 2412 177, 178, 179, 180, 181, -1, -1, -1, -1, -1,
2413 -1, 188, 189, 190, 191, 192, 193, 194, 195, 1,
2414 -1, -1, -1, -1, 6, 7, 8, -1, -1, 11,
2415 12, 13, 14, 15, 16, 17, 18, 19, 20, -1,
2416 -1, -1, 24, -1, -1, -1, -1, 29, 30, 31,
2417 32, 33, 34, -1, -1, -1, -1, -1, -1, -1,
2418 42, 43, 44, -1, -1, 47, 48, 49, -1, -1,
3dabb077 2419 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2420 -1, -1, -1, -1, -1, -1, 68, 69, 70, 71,
3dabb077 2421 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3dabb077 2422 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2423 -1, -1, -1, -1, -1, 97, 98, 99, 100, 101,
2424 102, -1, -1, -1, -1, -1, -1, -1, -1, 111,
2425 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
2426 122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
2427 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
2428 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
2429 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
2430 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
2431 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
2432 -1, -1, -1, -1, -1, -1, 188, 189, 190, 191,
2433 192, 193, 194, 195, 1, -1, -1, -1, -1, 6,
2434 7, 8, -1, 10, 11, 12, 13, 14, 15, 16,
2435 17, 18, 19, 20, 21, 22, 23, 24, -1, 26,
2436 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2437 37, 38, 39, 40, 41, 42, 43, -1, 45, -1,
2438 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
2439 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
2440 67, -1, -1, -1, 71, -1, -1, -1, -1, -1,
3dabb077 2441 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2442 -1, -1, -1, -1, -1, -1, -1, -1, -1, 96,
2443 97, 98, 99, 100, 101, 102, -1, -1, -1, -1,
2444 -1, 1, -1, -1, 111, -1, 6, 7, 8, 116,
2445 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
2446 -1, -1, -1, -1, 24, -1, -1, -1, -1, 29,
edad9a7f 2447 30, 31, 32, 33, 34, -1, -1, -1, -1, -1,
2448 -1, -1, 42, 43, -1, -1, -1, 47, 48, 49,
3dabb077 2449 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3dabb077 2450 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2451 -1, 71, -1, -1, -1, -1, -1, -1, -1, -1,
2452 -1, 188, 189, 190, -1, 192, 193, 194, -1, -1,
edad9a7f 2453 -1, -1, -1, -1, -1, 95, 96, 97, 98, 99,
909cf5eb 2454 100, 101, 102, -1, -1, -1, -1, -1, 1, -1,
2455 -1, 111, -1, 6, 7, 8, 116, 10, 11, 12,
2456 13, 14, 15, 16, 17, 18, 19, -1, -1, -1,
2457 -1, 24, -1, -1, -1, -1, 29, 30, 31, 32,
edad9a7f 2458 33, 34, -1, -1, -1, -1, -1, -1, -1, 42,
e5081f8c 2459 43, -1, -1, -1, 47, 48, 49, -1, -1, -1,
2460 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2461 -1, -1, -1, -1, -1, -1, -1, -1, 71, -1,
2462 -1, -1, -1, -1, -1, -1, -1, -1, 188, 189,
2463 190, -1, 192, 193, 194, -1, -1, -1, -1, -1,
2464 -1, -1, 95, 96, 97, 98, 99, 100, 101, 102,
2465 -1, -1, -1, -1, 1, -1, -1, -1, 111, 6,
2466 7, 8, -1, 116, 11, 12, 13, 14, 15, 16,
2467 17, 18, 19, 20, -1, -1, -1, 24, 25, -1,
2468 -1, -1, 29, 30, 31, 32, 33, 34, -1, -1,
2469 -1, -1, -1, -1, -1, 42, 43, -1, -1, -1,
e5081f8c 2470 47, 48, 49, -1, -1, -1, -1, -1, -1, -1,
3dabb077 2471 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
e5081f8c 2472 -1, -1, -1, -1, 71, -1, -1, -1, -1, -1,
909cf5eb 2473 -1, -1, -1, -1, -1, 188, 189, 190, -1, 192,
2474 193, 194, -1, -1, -1, -1, -1, -1, 95, -1,
2475 97, 98, 99, 100, 101, 102, -1, -1, -1, -1,
2476 -1, 1, -1, -1, 111, -1, 6, 7, 8, 116,
e5081f8c 2477 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
2478 20, -1, -1, -1, 24, -1, -1, -1, -1, 29,
2479 30, 31, 32, 33, 34, -1, -1, -1, -1, -1,
909cf5eb 2480 -1, -1, 42, 43, -1, -1, -1, 47, 48, 49,
e5081f8c 2481 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2482 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2483 -1, 71, -1, -1, -1, -1, -1, -1, -1, -1,
2484 -1, 188, 189, 190, -1, 192, 193, 194, -1, -1,
e5081f8c 2485 -1, -1, -1, -1, -1, -1, 96, 97, 98, 99,
909cf5eb 2486 100, 101, 102, -1, -1, -1, -1, -1, 1, -1,
2487 -1, 111, -1, 6, 7, 8, 116, 10, 11, 12,
2488 13, 14, 15, 16, 17, 18, 19, -1, -1, -1,
2489 -1, 24, -1, -1, -1, -1, 29, 30, 31, 32,
2490 33, 34, -1, -1, -1, -1, -1, -1, -1, 42,
2491 43, -1, -1, -1, 47, 48, 49, -1, -1, -1,
2492 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2493 -1, -1, -1, -1, -1, -1, -1, -1, 71, -1,
2494 -1, -1, -1, -1, -1, -1, -1, -1, 188, 189,
2495 190, -1, 192, 193, 194, -1, -1, -1, -1, -1,
2496 -1, -1, -1, 96, 97, 98, 99, 100, 101, 102,
2497 -1, -1, -1, -1, 1, -1, -1, -1, 111, 6,
2498 7, 8, -1, 116, 11, 12, 13, 14, 15, 16,
2499 17, 18, 19, 20, -1, -1, -1, 24, -1, -1,
2500 -1, -1, 29, 30, 31, 32, 33, 34, -1, -1,
2501 -1, -1, -1, -1, -1, 42, 43, -1, -1, -1,
2502 47, 48, 49, -1, -1, -1, -1, -1, -1, -1,
2503 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2504 -1, -1, -1, -1, 71, -1, -1, -1, -1, -1,
2505 -1, -1, -1, -1, -1, 188, 189, 190, -1, 192,
2506 193, 194, -1, -1, -1, -1, -1, -1, 95, -1,
2507 97, 98, 99, 100, 101, 102, -1, -1, -1, -1,
2508 1, -1, -1, -1, 111, 6, 7, 8, -1, 116,
d0b80d80 2509 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
3dabb077 2510 -1, -1, -1, 24, -1, -1, -1, -1, 29, 30,
2f2892c2 2511 31, 32, 33, 34, -1, -1, -1, -1, -1, -1,
909cf5eb 2512 -1, 42, 43, -1, -1, -1, 47, 48, 49, -1,
e5081f8c 2513 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2514 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2515 71, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2516 -1, 188, 189, 190, -1, 192, 193, 194, -1, -1,
2517 -1, -1, -1, -1, -1, -1, 97, 98, 99, 100,
2518 101, 102, -1, -1, -1, -1, -1, -1, -1, -1,
2519 111, -1, 6, 7, 8, 116, 10, 11, 12, 13,
2520 14, 15, 16, 17, 18, 19, 20, -1, -1, -1,
2521 24, -1, -1, -1, -1, 29, 30, 31, 32, 33,
2522 34, -1, -1, -1, -1, -1, -1, -1, 42, 43,
2523 44, -1, 46, 47, 48, 49, -1, -1, -1, -1,
e5081f8c 2524 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2525 -1, -1, -1, -1, -1, -1, -1, 71, 72, -1,
2526 -1, -1, -1, -1, -1, -1, -1, 188, 189, 190,
2527 -1, 192, 193, 194, -1, -1, -1, -1, -1, -1,
2528 -1, -1, 96, 97, 98, 99, 100, 101, 102, -1,
2529 -1, -1, -1, -1, -1, -1, -1, 111, 112, 113,
2530 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
2531 124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
2532 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
2533 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
2534 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
2535 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
2536 174, 175, 176, 177, 178, 179, 180, 181, -1, -1,
2537 -1, -1, -1, -1, 188, 189, 190, 191, 192, 193,
2538 194, 195, 6, 7, 8, -1, 10, 11, 12, 13,
2539 14, 15, 16, 17, 18, 19, 20, -1, -1, -1,
2540 24, -1, -1, -1, -1, 29, 30, 31, 32, 33,
2541 34, -1, -1, -1, -1, -1, -1, -1, 42, 43,
2542 44, -1, 46, 47, 48, 49, -1, -1, -1, -1,
edad9a7f 2543 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2544 -1, -1, -1, -1, -1, -1, -1, 71, 72, -1,
edad9a7f 2545 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2546 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2547 -1, -1, 96, 97, 98, 99, 100, 101, 102, -1,
2548 -1, -1, -1, -1, -1, -1, -1, 111, 112, 113,
2549 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
2550 124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
2551 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
2552 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
2553 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
2554 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
2555 174, 175, 176, 177, 178, 179, 180, 181, -1, -1,
2556 -1, -1, -1, -1, 188, 189, 190, 191, 192, 193,
2557 194, 195, 6, 7, 8, -1, 10, 11, 12, 13,
2558 14, 15, 16, 17, 18, 19, 20, -1, -1, -1,
2559 24, -1, -1, -1, -1, 29, 30, 31, 32, 33,
2560 34, -1, -1, -1, -1, -1, -1, -1, 42, 43,
2561 44, -1, 46, 47, 48, 49, -1, -1, -1, -1,
2562 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2563 -1, -1, -1, -1, -1, -1, -1, 71, 72, -1,
2564 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2565 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2566 -1, -1, 96, 97, 98, 99, 100, 101, 102, -1,
2567 -1, -1, -1, -1, -1, -1, -1, 111, 112, 113,
2568 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
2569 124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
2570 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
2571 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
2572 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
2573 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
2574 174, 175, 176, 177, 178, 179, 180, 181, -1, -1,
2575 -1, -1, -1, -1, 188, 189, 190, 191, 192, 193,
2576 194, 195, 6, 7, 8, -1, 10, 11, 12, 13,
2577 14, 15, 16, 17, 18, 19, 20, -1, -1, -1,
2578 24, -1, -1, -1, -1, 29, 30, 31, 32, 33,
2579 34, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2580 -1, -1, -1, 47, 48, 49, 6, 7, 8, -1,
2581 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
2582 20, -1, -1, -1, 24, -1, -1, 71, -1, 29,
2583 30, 31, 32, 33, 34, -1, -1, -1, -1, -1,
2584 -1, -1, -1, -1, -1, -1, -1, 47, 48, 49,
2585 -1, -1, 96, 97, 98, 99, 100, 101, 102, -1,
2586 -1, -1, -1, -1, -1, -1, -1, 111, -1, -1,
2587 -1, 71, 116, -1, -1, -1, -1, -1, -1, -1,
2588 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2589 -1, -1, -1, -1, -1, -1, 96, 97, 98, 99,
2590 100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
2591 -1, 111, -1, 6, 7, 8, 116, 10, 11, 12,
edad9a7f 2592 13, 14, 15, 16, 17, 18, 19, 20, -1, -1,
2593 -1, 24, -1, -1, -1, -1, 29, 30, 31, 32,
909cf5eb 2594 33, 34, -1, -1, 188, 189, 190, -1, 192, 193,
2595 194, -1, -1, -1, 47, 48, 49, 6, 7, 8,
2596 -1, 10, 11, 12, 13, 14, 15, 16, 17, 18,
2597 19, 20, -1, -1, -1, 24, -1, -1, 71, -1,
2598 29, 30, 31, 32, 33, 34, -1, -1, 188, 189,
2599 190, -1, 192, 193, 194, -1, -1, -1, 47, 48,
2600 49, -1, -1, 96, 97, 98, 99, 100, 101, 102,
2601 -1, -1, -1, -1, -1, -1, -1, -1, 111, -1,
2602 -1, -1, 71, 116, -1, -1, -1, -1, -1, -1,
2603 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2604 -1, -1, -1, -1, -1, -1, -1, 96, 97, 98,
2605 99, 100, 101, 102, -1, -1, -1, -1, -1, -1,
2606 -1, -1, 111, -1, 6, 7, 8, 116, 10, 11,
edad9a7f 2607 12, 13, 14, 15, 16, 17, 18, 19, 20, -1,
909cf5eb 2608 -1, -1, 24, -1, -1, -1, -1, 29, 30, 31,
2609 32, 33, 34, -1, -1, 188, 189, 190, -1, 192,
2610 193, 194, -1, -1, -1, 47, 48, 49, 6, 7,
2611 8, -1, 10, 11, 12, 13, 14, 15, 16, 17,
2612 18, 19, 20, -1, -1, -1, 24, -1, -1, 71,
2613 -1, 29, 30, 31, 32, 33, 34, -1, -1, 188,
2614 189, 190, -1, 192, 193, 194, -1, -1, -1, 47,
2615 48, 49, -1, -1, 96, 97, 98, 99, 100, 101,
2616 102, -1, -1, -1, -1, -1, -1, -1, -1, 111,
2617 -1, -1, -1, 71, 116, -1, -1, -1, -1, -1,
e5081f8c 2618 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2619 -1, -1, -1, -1, -1, -1, -1, -1, 96, 97,
2620 98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
2621 -1, -1, -1, 111, -1, 6, 7, 8, 116, 10,
e5081f8c 2622 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
2623 -1, -1, -1, 24, -1, -1, -1, -1, 29, 30,
909cf5eb 2624 31, 32, 33, 34, -1, -1, 188, 189, 190, -1,
2625 192, 193, 194, -1, -1, -1, 47, 48, 49, 6,
2626 7, 8, -1, 10, 11, 12, 13, 14, 15, 16,
2627 17, 18, 19, -1, -1, -1, -1, 24, -1, -1,
2628 71, -1, 29, 30, 31, 32, 33, 34, -1, -1,
2629 188, 189, 190, -1, 192, 193, 194, -1, -1, -1,
2630 47, 48, 49, -1, -1, 96, 97, 98, 99, 100,
2631 101, 102, -1, -1, -1, -1, -1, -1, -1, -1,
2632 111, -1, -1, -1, 71, 116, -1, -1, -1, -1,
3dabb077 2633 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2634 -1, -1, -1, -1, -1, -1, -1, -1, -1, 96,
2635 97, 98, 99, 100, 101, 102, 19, -1, -1, -1,
2636 -1, 24, -1, -1, 111, -1, -1, -1, -1, 116,
d0b80d80 2637 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2638 -1, 44, -1, 46, -1, -1, -1, -1, -1, -1,
2639 -1, -1, -1, -1, -1, -1, -1, 188, 189, 190,
2640 -1, 192, 193, 194, -1, -1, -1, -1, -1, 72,
2f2892c2 2641 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2642 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2643 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2644 -1, 188, 189, 190, -1, 192, 193, 194, -1, 112,
2645 113, 114, 115, -1, 117, 118, 119, 120, 121, 122,
2646 123, 124, 125, 126, -1, 128, 129, 130, 131, 132,
2647 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
2648 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
2649 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
2650 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
2651 173, 174, 175, 176, 177, 178, 179, 180, 181, 20,
2652 -1, -1, -1, -1, -1, -1, -1, 190, 191, -1,
2653 -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2654 -1, -1, -1, 44, -1, -1, -1, -1, -1, -1,
2655 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2656 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 2657 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2658 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 2659 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2660 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2661 -1, 112, 113, 114, 115, -1, 117, 118, 119, 120,
2662 121, 122, 123, 124, 125, 126, -1, 128, 129, 130,
e5081f8c 2663 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
2664 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
2665 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
2666 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
2667 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
909cf5eb 2668 181, -1, -1, -1, -1, -1, 19, 20, -1, 190,
2669 191, 24, -1, -1, 195, -1, 29, 30, 31, 32,
2670 33, 34, -1, -1, -1, -1, -1, 19, -1, -1,
2671 -1, -1, 24, -1, 47, 48, 49, 29, 30, 31,
2672 32, 33, 34, -1, -1, -1, -1, -1, -1, -1,
2673 -1, -1, -1, -1, 19, 47, 48, 49, 71, 24,
2674 -1, -1, -1, -1, 29, 30, 31, 32, 33, 34,
2675 -1, -1, -1, -1, -1, -1, -1, -1, -1, 71,
2676 -1, -1, 47, 48, 49, -1, -1, -1, -1, -1,
d0b80d80 2677 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2678 -1, -1, -1, 116, -1, -1, 71, -1, -1, -1,
2f2892c2 2679 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2680 -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
2f2892c2 2681 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2682 24, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2683 34, 116, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2684 44, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2685 -1, -1, -1, -1, -1, 188, 189, 190, -1, 192,
2f2892c2 2686 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2687 -1, -1, -1, -1, -1, -1, 188, 189, 190, -1,
2688 192, -1, -1, -1, -1, -1, -1, -1, -1, -1,
e5081f8c 2689 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2690 -1, -1, -1, 188, 189, 190, -1, 192, 112, 113,
2691 114, 115, -1, 117, 118, 119, 120, 121, 122, 123,
2692 124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
edad9a7f 2693 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
2694 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
2695 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
2696 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
909cf5eb 2697 174, 175, 176, 177, 178, 179, 180, 181, -1, -1,
2698 -1, -1, -1, -1, 188, 189, 190, 191, 24, 193,
2699 194, 195, -1, 29, 30, 31, 32, 33, 34, -1,
2700 -1, -1, -1, -1, -1, -1, 42, 43, -1, 24,
2701 25, 47, 48, 49, 29, 30, 31, 32, 33, 34,
2702 24, -1, -1, 27, -1, 29, 30, 31, 32, 33,
2703 34, -1, 47, 48, 49, 71, -1, -1, -1, -1,
2704 -1, 24, 25, 47, 48, 49, 29, 30, 31, 32,
2705 33, 34, 24, -1, -1, 27, 71, 29, 30, 31,
2706 32, 33, 34, -1, 47, 48, 49, 71, -1, -1,
2707 -1, -1, -1, -1, -1, 47, 48, 49, -1, -1,
2708 116, -1, -1, -1, 24, 25, -1, -1, 71, 29,
2709 30, 31, 32, 33, 34, -1, -1, -1, -1, 71,
2710 -1, 116, -1, -1, -1, -1, -1, 47, 48, 49,
2711 -1, 24, 116, -1, -1, -1, 29, 30, 31, 32,
2712 33, 34, -1, -1, -1, -1, -1, -1, -1, -1,
2713 -1, 71, -1, 116, 47, 48, 49, -1, -1, -1,
2714 24, -1, -1, -1, 116, 29, 30, 31, 32, 33,
2715 34, -1, 188, 189, 190, -1, 192, -1, 71, -1,
2716 -1, -1, -1, 47, 48, 49, -1, -1, -1, -1,
2717 -1, -1, -1, 188, 189, 190, 116, 192, -1, -1,
2718 -1, -1, -1, -1, 188, 189, 190, 71, 192, 24,
2719 -1, -1, -1, -1, 29, 30, 31, 32, 33, 34,
2720 -1, -1, -1, 116, -1, 188, 189, 190, -1, 192,
2721 -1, -1, 47, 48, 49, -1, 188, 189, 190, 24,
2722 192, -1, -1, -1, 29, 30, 31, 32, 33, 34,
2723 -1, -1, 116, -1, -1, -1, 71, -1, -1, -1,
2724 -1, -1, 47, 48, 49, -1, -1, -1, 188, 189,
2725 190, -1, 192, -1, -1, -1, -1, -1, -1, -1,
2726 -1, -1, -1, -1, -1, -1, 71, -1, -1, -1,
2727 -1, -1, -1, -1, -1, 188, 189, 190, 24, 192,
2728 -1, 116, -1, 29, 30, 31, 32, 33, 34, -1,
d0b80d80 2729 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2730 -1, 47, 48, 49, 188, 189, 190, -1, 192, -1,
2731 -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
2732 -1, -1, -1, -1, -1, 71, -1, -1, -1, -1,
edad9a7f 2733 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 2734 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2735 -1, -1, -1, 188, 189, 190, -1, 192, -1, -1,
3dabb077 2736 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2737 116, -1, -1, -1, -1, -1, -1, -1, -1, 44,
2738 -1, 46, -1, 188, 189, 190, -1, 192, -1, -1,
3dabb077 2739 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2740 -1, -1, -1, 68, 69, 70, -1, 72, -1, -1,
3dabb077 2741 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 2742 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2743 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2744 -1, -1, 188, 189, 190, -1, 192, 112, 113, 114,
2745 115, -1, 117, 118, 119, 120, 121, 122, 123, 124,
2746 125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
2747 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
2748 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
2749 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
2750 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
2751 175, 176, 177, 178, 179, 180, 181, 44, -1, 46,
2752 -1, -1, -1, -1, -1, 190, 191, -1, -1, -1,
2753 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2754 -1, -1, -1, -1, -1, 72, -1, -1, -1, -1,
d0b80d80 2755 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2756 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2757 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2758 -1, -1, -1, -1, -1, 112, 113, 114, 115, -1,
2759 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
2760 -1, 128, 129, 130, 131, 132, 133, 134, 135, 136,
e5081f8c 2761 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
2762 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
2763 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
2764 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
909cf5eb 2765 177, 178, 179, 180, 181, 44, -1, -1, -1, -1,
2766 -1, 188, 189, 190, 191, -1, -1, -1, 195, -1,
2767 -1, -1, -1, -1, -1, -1, -1, -1, -1, 68,
2768 69, 70, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2769 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 2770 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2771 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2772 -1, -1, -1, 112, 113, 114, 115, -1, 117, 118,
2773 119, 120, 121, 122, 123, 124, 125, 126, -1, 128,
2774 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
2775 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
2776 149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
2777 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
2778 169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
2779 179, 180, 181, 44, -1, -1, -1, -1, -1, -1,
2780 -1, 190, 191, -1, -1, -1, 195, -1, -1, -1,
d0b80d80 2781 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2782 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 2783 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2784 -1, 92, 93, 94, -1, -1, -1, -1, -1, -1,
2785 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2786 -1, 112, 113, 114, 115, -1, 117, 118, 119, 120,
2787 121, 122, 123, 124, 125, 126, -1, 128, 129, 130,
2788 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
2789 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
2790 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
2791 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
2792 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
2793 181, 44, -1, 46, -1, -1, -1, -1, -1, 190,
2794 191, -1, -1, -1, 195, -1, -1, -1, -1, -1,
2795 -1, -1, -1, -1, -1, -1, -1, -1, -1, 72,
2796 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 2797 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 2798 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2799 -1, -1, -1, -1, -1, -1, -1, -1, -1, 112,
2800 113, 114, 115, -1, 117, 118, 119, 120, 121, 122,
2801 123, 124, 125, 126, -1, 128, 129, 130, 131, 132,
e5081f8c 2802 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
2803 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
2804 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
2805 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
909cf5eb 2806 173, 174, 175, 176, 177, 178, 179, 180, 181, 44,
2807 -1, -1, -1, -1, -1, -1, -1, 190, 191, -1,
2808 -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
2809 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2810 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2811 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2812 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2813 -1, -1, -1, -1, -1, -1, -1, 112, 113, 114,
2814 115, -1, 117, 118, 119, 120, 121, 122, 123, 124,
2815 125, 126, -1, 128, 129, 130, 131, 132, 133, 134,
2816 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
2817 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
2818 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
2819 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
2820 175, 176, 177, 178, 179, 180, 181, -1, -1, -1,
2821 -1, -1, -1, -1, -1, 190, 191, -1, -1, -1,
2822 195
d0b80d80 2823};
2824/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
2825
2826/* Skeleton output parser for bison,
2827
2828 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002 Free Software
2829 Foundation, Inc.
2830
2831 This program is free software; you can redistribute it and/or modify
2832 it under the terms of the GNU General Public License as published by
2833 the Free Software Foundation; either version 2, or (at your option)
2834 any later version.
2835
2836 This program is distributed in the hope that it will be useful,
2837 but WITHOUT ANY WARRANTY; without even the implied warranty of
2838 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
2839 GNU General Public License for more details.
2840
2841 You should have received a copy of the GNU General Public License
2842 along with this program; if not, write to the Free Software
2843 Foundation, Inc., 59 Temple Place - Suite 330,
2844 Boston, MA 02111-1307, USA. */
2845
2846/* As a special exception, when this file is copied by Bison into a
2847 Bison output file, you may use that output file without restriction.
2848 This special exception was added by the Free Software Foundation
2849 in version 1.24 of Bison. */
2850
2851/* This is the parser code that is written into each bison parser when
2852 the %semantic_parser declaration is not specified in the grammar.
2853 It was written by Richard Stallman by simplifying the hairy parser
2854 used when %semantic_parser is specified. */
2855
2856/* All symbols defined below should begin with yy or YY, to avoid
2857 infringing on user name space. This should be done even for local
2858 variables, as they might otherwise be expanded by user macros.
2859 There are some unavoidable exceptions within include files to
2860 define necessary library symbols; they are noted "INFRINGES ON
2861 USER NAME SPACE" below. */
2862
2863#if ! defined (yyoverflow) || defined (YYERROR_VERBOSE)
2864
2865/* The parser invokes alloca or malloc; define the necessary symbols. */
2866
2867# if YYSTACK_USE_ALLOCA
2868# define YYSTACK_ALLOC alloca
2869# else
2870# ifndef YYSTACK_USE_ALLOCA
2871# if defined (alloca) || defined (_ALLOCA_H)
2872# define YYSTACK_ALLOC alloca
2873# else
2874# ifdef __GNUC__
2875# define YYSTACK_ALLOC __builtin_alloca
2876# endif
2877# endif
2878# endif
2879# endif
2880
2881# ifdef YYSTACK_ALLOC
2882 /* Pacify GCC's `empty if-body' warning. */
2883# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
2884# else
2885# if defined (__STDC__) || defined (__cplusplus)
2886# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
2887# define YYSIZE_T size_t
2888# endif
2889# define YYSTACK_ALLOC malloc
2890# define YYSTACK_FREE free
2891# endif
2892#endif /* ! defined (yyoverflow) || defined (YYERROR_VERBOSE) */
2893
2894
2895#if (! defined (yyoverflow) \
2896 && (! defined (__cplusplus) \
2897 || (YYLTYPE_IS_TRIVIAL && cgrammar_YYSTYPE_IS_TRIVIAL)))
2898
2899/* A type that is properly aligned for any stack member. */
2900union yyalloc
2901{
2902 short yyss;
2903 cgrammar_YYSTYPE yyvs;
2904# if YYLSP_NEEDED
2905 YYLTYPE yyls;
2906# endif
2907};
2908
2909/* The size of the maximum gap between one aligned stack and the next. */
2910# define YYSTACK_GAP_MAX (sizeof (union yyalloc) - 1)
2911
2912/* The size of an array large to enough to hold all stacks, each with
2913 N elements. */
2914# if YYLSP_NEEDED
2915# define YYSTACK_BYTES(N) \
2916 ((N) * (sizeof (short) + sizeof (cgrammar_YYSTYPE) + sizeof (YYLTYPE)) \
2917 + 2 * YYSTACK_GAP_MAX)
2918# else
2919# define YYSTACK_BYTES(N) \
2920 ((N) * (sizeof (short) + sizeof (cgrammar_YYSTYPE)) \
2921 + YYSTACK_GAP_MAX)
2922# endif
2923
2924/* Copy COUNT objects from FROM to TO. The source and destination do
2925 not overlap. */
2926# ifndef YYCOPY
2927# if 1 < __GNUC__
2928# define YYCOPY(To, From, Count) \
2929 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
2930# else
2931# define YYCOPY(To, From, Count) \
2932 do \
2933 { \
2934 register YYSIZE_T yyi; \
2935 for (yyi = 0; yyi < (Count); yyi++) \
2936 (To)[yyi] = (From)[yyi]; \
2937 } \
2938 while (0)
2939# endif
2940# endif
2941
2942/* Relocate STACK from its old location to the new one. The
2943 local variables YYSIZE and YYSTACKSIZE give the old and new number of
2944 elements in the stack, and YYPTR gives the new location of the
2945 stack. Advance YYPTR to a properly aligned location for the next
2946 stack. */
2947# define YYSTACK_RELOCATE(Stack) \
2948 do \
2949 { \
2950 YYSIZE_T yynewbytes; \
2951 YYCOPY (&yyptr->Stack, Stack, yysize); \
2952 Stack = &yyptr->Stack; \
2953 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAX; \
2954 yyptr += yynewbytes / sizeof (*yyptr); \
2955 } \
2956 while (0)
2957
2958#endif
2959
2960
2961#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
2962# define YYSIZE_T __SIZE_TYPE__
2963#endif
2964#if ! defined (YYSIZE_T) && defined (size_t)
2965# define YYSIZE_T size_t
2966#endif
2967#if ! defined (YYSIZE_T)
2968# if defined (__STDC__) || defined (__cplusplus)
2969# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
2970# define YYSIZE_T size_t
2971# endif
2972#endif
2973#if ! defined (YYSIZE_T)
2974# define YYSIZE_T unsigned int
2975#endif
2976
2977#define yyerrok (yyerrstatus = 0)
2978#define yyclearin (yychar = YYEMPTY)
2979#define YYEMPTY -2
2980#define YYEOF 0
2981#define YYACCEPT goto yyacceptlab
2982#define YYABORT goto yyabortlab
2983#define YYERROR goto yyerrlab1
2984/* Like YYERROR except do call yyerror. This remains here temporarily
2985 to ease the transition to the new meaning of YYERROR, for GCC.
2986 Once GCC version 2 has supplanted version 1, this can go. */
2987#define YYFAIL goto yyerrlab
2988#define YYRECOVERING() (!!yyerrstatus)
2989#define YYBACKUP(Token, Value) \
2990do \
2991 if (yychar == YYEMPTY && yylen == 1) \
2992 { \
2993 yychar = (Token); \
2994 yylval = (Value); \
2995 yychar1 = YYTRANSLATE (yychar); \
2996 YYPOPSTACK; \
2997 goto yybackup; \
2998 } \
2999 else \
3000 { \
3001 yyerror ("syntax error: cannot back up"); \
3002 YYERROR; \
3003 } \
3004while (0)
3005
3006#define YYTERROR 1
3007#define YYERRCODE 256
3008
3009
3010/* YYLLOC_DEFAULT -- Compute the default location (before the actions
3011 are run).
3012
3013 When YYLLOC_DEFAULT is run, CURRENT is set the location of the
3014 first token. By default, to implement support for ranges, extend
3015 its range to the last symbol. */
3016
3017#ifndef YYLLOC_DEFAULT
3018# define YYLLOC_DEFAULT(Current, Rhs, N) \
3019 Current.last_line = Rhs[N].last_line; \
3020 Current.last_column = Rhs[N].last_column;
3021#endif
3022
3023
3024/* YYLEX -- calling `yylex' with the right arguments. */
3025
3026#if YYPURE
3027# if YYLSP_NEEDED
3028# ifdef YYLEX_PARAM
3029# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
3030# else
3031# define YYLEX yylex (&yylval, &yylloc)
3032# endif
3033# else /* !YYLSP_NEEDED */
3034# ifdef YYLEX_PARAM
3035# define YYLEX yylex (&yylval, YYLEX_PARAM)
3036# else
3037# define YYLEX yylex (&yylval)
3038# endif
3039# endif /* !YYLSP_NEEDED */
3040#else /* !YYPURE */
3041# define YYLEX yylex ()
3042#endif /* !YYPURE */
3043
3044
3045/* Enable debugging if requested. */
3046#if YYDEBUG
3047
3048# ifndef YYFPRINTF
3049# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3050# define YYFPRINTF fprintf
3051# endif
3052
3053# define YYDPRINTF(Args) \
3054do { \
3055 if (yydebug) \
3056 YYFPRINTF Args; \
3057} while (0)
3058/* Nonzero means print parse trace. It is left uninitialized so that
3059 multiple parsers can coexist. */
3060int yydebug;
3061#else /* !YYDEBUG */
3062# define YYDPRINTF(Args)
3063#endif /* !YYDEBUG */
3064
3065/* YYINITDEPTH -- initial size of the parser's stacks. */
3066#ifndef YYINITDEPTH
3067# define YYINITDEPTH 200
3068#endif
3069
3070/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3071 if the built-in stack extension method is used).
3072
3073 Do not make this value too large; the results are undefined if
3074 SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
3075 evaluated with infinite-precision integer arithmetic. */
3076
3077#if YYMAXDEPTH == 0
3078# undef YYMAXDEPTH
3079#endif
3080
3081#ifndef YYMAXDEPTH
3082# define YYMAXDEPTH 10000
3083#endif
3084\f
3085#ifdef YYERROR_VERBOSE
3086
3087# ifndef yystrlen
3088# if defined (__GLIBC__) && defined (_STRING_H)
3089# define yystrlen strlen
3090# else
3091/* Return the length of YYSTR. */
3092static YYSIZE_T
3093# if defined (__STDC__) || defined (__cplusplus)
3094yystrlen (const char *yystr)
3095# else
3096yystrlen (yystr)
3097 const char *yystr;
3098# endif
3099{
3100 register const char *yys = yystr;
3101
3102 while (*yys++ != '\0')
3103 continue;
3104
3105 return yys - yystr - 1;
3106}
3107# endif
3108# endif
3109
3110# ifndef yystpcpy
3111# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
3112# define yystpcpy stpcpy
3113# else
3114/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3115 YYDEST. */
3116static char *
3117# if defined (__STDC__) || defined (__cplusplus)
3118yystpcpy (char *yydest, const char *yysrc)
3119# else
3120yystpcpy (yydest, yysrc)
3121 char *yydest;
3122 const char *yysrc;
3123# endif
3124{
3125 register char *yyd = yydest;
3126 register const char *yys = yysrc;
3127
3128 while ((*yyd++ = *yys++) != '\0')
3129 continue;
3130
3131 return yyd - 1;
3132}
3133# endif
3134# endif
3135#endif
3136\f
3137
3138
3139/* The user can define YYPARSE_PARAM as the name of an argument to be passed
3140 into yyparse. The argument should have type void *.
3141 It should actually point to an object.
3142 Grammar actions can access the variable by casting it
3143 to the proper pointer type. */
3144
3145#ifdef YYPARSE_PARAM
3146# if defined (__STDC__) || defined (__cplusplus)
3147# define YYPARSE_PARAM_ARG void *YYPARSE_PARAM
3148# define YYPARSE_PARAM_DECL
3149# else
3150# define YYPARSE_PARAM_ARG YYPARSE_PARAM
3151# define YYPARSE_PARAM_DECL void *YYPARSE_PARAM;
3152# endif
3153#else /* !YYPARSE_PARAM */
3154# define YYPARSE_PARAM_ARG
3155# define YYPARSE_PARAM_DECL
3156#endif /* !YYPARSE_PARAM */
3157
3158/* Prevent warning if -Wstrict-prototypes. */
3159#ifdef __GNUC__
3160# ifdef YYPARSE_PARAM
3161int yyparse (void *);
3162# else
3163int yyparse (void);
3164# endif
3165#endif
3166
3167/* YY_DECL_VARIABLES -- depending whether we use a pure parser,
3168 variables are global, or local to YYPARSE. */
3169
3170#define YY_DECL_NON_LSP_VARIABLES \
3171/* The lookahead symbol. */ \
3172int yychar; \
3173 \
3174/* The semantic value of the lookahead symbol. */ \
3175cgrammar_YYSTYPE yylval; \
3176 \
3177/* Number of parse errors so far. */ \
3178int yynerrs;
3179
3180#if YYLSP_NEEDED
3181# define YY_DECL_VARIABLES \
3182YY_DECL_NON_LSP_VARIABLES \
3183 \
3184/* Location data for the lookahead symbol. */ \
3185YYLTYPE yylloc;
3186#else
3187# define YY_DECL_VARIABLES \
3188YY_DECL_NON_LSP_VARIABLES
3189#endif
3190
3191
3192/* If nonreentrant, generate the variables here. */
3193
3194#if !YYPURE
3195YY_DECL_VARIABLES
3196#endif /* !YYPURE */
3197
3198int
3199yyparse (YYPARSE_PARAM_ARG)
3200 YYPARSE_PARAM_DECL
3201{
3202 /* If reentrant, generate the variables here. */
3203#if YYPURE
3204 YY_DECL_VARIABLES
3205#endif /* !YYPURE */
3206
3207 register int yystate;
3208 register int yyn;
3209 int yyresult;
3210 /* Number of tokens to shift before error messages enabled. */
3211 int yyerrstatus;
3212 /* Lookahead token as an internal (translated) token number. */
3213 int yychar1 = 0;
3214
3215 /* Three stacks and their tools:
3216 `yyss': related to states,
3217 `yyvs': related to semantic values,
3218 `yyls': related to locations.
3219
3220 Refer to the stacks thru separate pointers, to allow yyoverflow
3221 to reallocate them elsewhere. */
3222
3223 /* The state stack. */
3224 short yyssa[YYINITDEPTH];
3225 short *yyss = yyssa;
3226 register short *yyssp;
3227
3228 /* The semantic value stack. */
3229 cgrammar_YYSTYPE yyvsa[YYINITDEPTH];
3230 cgrammar_YYSTYPE *yyvs = yyvsa;
3231 register cgrammar_YYSTYPE *yyvsp;
3232
3233#if YYLSP_NEEDED
3234 /* The location stack. */
3235 YYLTYPE yylsa[YYINITDEPTH];
3236 YYLTYPE *yyls = yylsa;
3237 YYLTYPE *yylsp;
3238#endif
3239
3240#if YYLSP_NEEDED
3241# define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)
3242#else
3243# define YYPOPSTACK (yyvsp--, yyssp--)
3244#endif
3245
3246 YYSIZE_T yystacksize = YYINITDEPTH;
3247
3248
3249 /* The variables used to return semantic value and location from the
3250 action routines. */
3251 cgrammar_YYSTYPE yyval;
3252#if YYLSP_NEEDED
3253 YYLTYPE yyloc;
3254#endif
3255
3256 /* When reducing, the number of symbols on the RHS of the reduced
3257 rule. */
3258 int yylen;
3259
3260 YYDPRINTF ((stderr, "Starting parse\n"));
3261
3262 yystate = 0;
3263 yyerrstatus = 0;
3264 yynerrs = 0;
3265 yychar = YYEMPTY; /* Cause a token to be read. */
3266
3267 /* Initialize stack pointers.
3268 Waste one element of value and location stack
3269 so that they stay on the same level as the state stack.
3270 The wasted elements are never initialized. */
3271
3272 yyssp = yyss;
3273 yyvsp = yyvs;
3274#if YYLSP_NEEDED
3275 yylsp = yyls;
3276#endif
3277 goto yysetstate;
3278
3279/*------------------------------------------------------------.
3280| yynewstate -- Push a new state, which is found in yystate. |
3281`------------------------------------------------------------*/
3282 yynewstate:
3283 /* In all cases, when you get here, the value and location stacks
3284 have just been pushed. so pushing a state here evens the stacks.
3285 */
3286 yyssp++;
3287
3288 yysetstate:
3289 *yyssp = yystate;
3290
3291 if (yyssp >= yyss + yystacksize - 1)
3292 {
3293 /* Get the current used size of the three stacks, in elements. */
3294 YYSIZE_T yysize = yyssp - yyss + 1;
3295
3296#ifdef yyoverflow
3297 {
3298 /* Give user a chance to reallocate the stack. Use copies of
3299 these so that the &'s don't force the real ones into
3300 memory. */
3301 cgrammar_YYSTYPE *yyvs1 = yyvs;
3302 short *yyss1 = yyss;
3303
3304 /* Each stack pointer address is followed by the size of the
3305 data in use in that stack, in bytes. */
3306# if YYLSP_NEEDED
3307 YYLTYPE *yyls1 = yyls;
3308 /* This used to be a conditional around just the two extra args,
3309 but that might be undefined if yyoverflow is a macro. */
3310 yyoverflow ("parser stack overflow",
3311 &yyss1, yysize * sizeof (*yyssp),
3312 &yyvs1, yysize * sizeof (*yyvsp),
3313 &yyls1, yysize * sizeof (*yylsp),
3314 &yystacksize);
3315 yyls = yyls1;
3316# else
3317 yyoverflow ("parser stack overflow",
3318 &yyss1, yysize * sizeof (*yyssp),
3319 &yyvs1, yysize * sizeof (*yyvsp),
3320 &yystacksize);
3321# endif
3322 yyss = yyss1;
3323 yyvs = yyvs1;
3324 }
3325#else /* no yyoverflow */
3326# ifndef YYSTACK_RELOCATE
3327 goto yyoverflowlab;
3328# else
3329 /* Extend the stack our own way. */
3330 if (yystacksize >= YYMAXDEPTH)
3331 goto yyoverflowlab;
3332 yystacksize *= 2;
3333 if (yystacksize > YYMAXDEPTH)
3334 yystacksize = YYMAXDEPTH;
3335
3336 {
3337 short *yyss1 = yyss;
3338 union yyalloc *yyptr =
3339 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
3340 if (! yyptr)
3341 goto yyoverflowlab;
3342 YYSTACK_RELOCATE (yyss);
3343 YYSTACK_RELOCATE (yyvs);
3344# if YYLSP_NEEDED
3345 YYSTACK_RELOCATE (yyls);
3346# endif
3347# undef YYSTACK_RELOCATE
3348 if (yyss1 != yyssa)
3349 YYSTACK_FREE (yyss1);
3350 }
3351# endif
3352#endif /* no yyoverflow */
3353
3354 yyssp = yyss + yysize - 1;
3355 yyvsp = yyvs + yysize - 1;
3356#if YYLSP_NEEDED
3357 yylsp = yyls + yysize - 1;
3358#endif
3359
3360 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
3361 (unsigned long int) yystacksize));
3362
3363 if (yyssp >= yyss + yystacksize - 1)
3364 YYABORT;
3365 }
3366
3367 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
3368
3369 goto yybackup;
3370
3371
3372/*-----------.
3373| yybackup. |
3374`-----------*/
3375yybackup:
3376
3377/* Do appropriate processing given the current state. */
3378/* Read a lookahead token if we need one and don't already have one. */
3379/* yyresume: */
3380
3381 /* First try to decide what to do without reference to lookahead token. */
3382
3383 yyn = yypact[yystate];
3384 if (yyn == YYFLAG)
3385 goto yydefault;
3386
3387 /* Not known => get a lookahead token if don't already have one. */
3388
3389 /* yychar is either YYEMPTY or YYEOF
3390 or a valid token in external form. */
3391
3392 if (yychar == YYEMPTY)
3393 {
3394 YYDPRINTF ((stderr, "Reading a token: "));
3395 yychar = YYLEX;
3396 }
3397
3398 /* Convert token to internal form (in yychar1) for indexing tables with */
3399
3400 if (yychar <= 0) /* This means end of input. */
3401 {
3402 yychar1 = 0;
3403 yychar = YYEOF; /* Don't call YYLEX any more */
3404
3405 YYDPRINTF ((stderr, "Now at end of input.\n"));
3406 }
3407 else
3408 {
3409 yychar1 = YYTRANSLATE (yychar);
3410
3411#if YYDEBUG
3412 /* We have to keep this `#if YYDEBUG', since we use variables
3413 which are defined only if `YYDEBUG' is set. */
3414 if (yydebug)
3415 {
3416 YYFPRINTF (stderr, "Next token is %d (%s",
3417 yychar, yytname[yychar1]);
3418 /* Give the individual parser a way to print the precise
3419 meaning of a token, for further debugging info. */
3420# ifdef YYPRINT
3421 YYPRINT (stderr, yychar, yylval);
3422# endif
3423 YYFPRINTF (stderr, ")\n");
3424 }
3425#endif
3426 }
3427
3428 yyn += yychar1;
3429 if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != yychar1)
3430 goto yydefault;
3431
3432 yyn = yytable[yyn];
3433
3434 /* yyn is what to do for this token type in this state.
3435 Negative => reduce, -yyn is rule number.
3436 Positive => shift, yyn is new state.
3437 New state is final state => don't bother to shift,
3438 just return success.
3439 0, or most negative number => error. */
3440
3441 if (yyn < 0)
3442 {
3443 if (yyn == YYFLAG)
3444 goto yyerrlab;
3445 yyn = -yyn;
3446 goto yyreduce;
3447 }
3448 else if (yyn == 0)
3449 goto yyerrlab;
3450
3451 if (yyn == YYFINAL)
3452 YYACCEPT;
3453
3454 /* Shift the lookahead token. */
3455 YYDPRINTF ((stderr, "Shifting token %d (%s), ",
3456 yychar, yytname[yychar1]));
3457
3458 /* Discard the token being shifted unless it is eof. */
3459 if (yychar != YYEOF)
3460 yychar = YYEMPTY;
3461
3462 *++yyvsp = yylval;
3463#if YYLSP_NEEDED
3464 *++yylsp = yylloc;
3465#endif
3466
3467 /* Count tokens shifted since error; after three, turn off error
3468 status. */
3469 if (yyerrstatus)
3470 yyerrstatus--;
3471
3472 yystate = yyn;
3473 goto yynewstate;
3474
3475
3476/*-----------------------------------------------------------.
3477| yydefault -- do the default action for the current state. |
3478`-----------------------------------------------------------*/
3479yydefault:
3480 yyn = yydefact[yystate];
3481 if (yyn == 0)
3482 goto yyerrlab;
3483 goto yyreduce;
3484
3485
3486/*-----------------------------.
3487| yyreduce -- Do a reduction. |
3488`-----------------------------*/
3489yyreduce:
3490 /* yyn is the number of a rule to reduce with. */
3491 yylen = yyr2[yyn];
3492
3493 /* If YYLEN is nonzero, implement the default value of the action:
3494 `$$ = $1'.
3495
3496 Otherwise, the following line sets YYVAL to the semantic value of
3497 the lookahead token. This behavior is undocumented and Bison
3498 users should not rely upon it. Assigning to YYVAL
3499 unconditionally makes the parser a bit smaller, and it avoids a
3500 GCC warning that YYVAL may be used uninitialized. */
3501 yyval = yyvsp[1-yylen];
3502
3503#if YYLSP_NEEDED
3504 /* Similarly for the default location. Let the user run additional
3505 commands if for instance locations are ranges. */
3506 yyloc = yylsp[1-yylen];
3507 YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
3508#endif
3509
3510#if YYDEBUG
3511 /* We have to keep this `#if YYDEBUG', since we use variables which
3512 are defined only if `YYDEBUG' is set. */
3513 if (yydebug)
3514 {
3515 int yyi;
3516
3517 YYFPRINTF (stderr, "Reducing via rule %d (line %d), ",
3518 yyn, yyrline[yyn]);
3519
3520 /* Print the symbols being reduced, and their result. */
3521 for (yyi = yyprhs[yyn]; yyrhs[yyi] > 0; yyi++)
3522 YYFPRINTF (stderr, "%s ", yytname[yyrhs[yyi]]);
3523 YYFPRINTF (stderr, " -> %s\n", yytname[yyr1[yyn]]);
3524 }
3525#endif
3526
3527 switch (yyn) {
3528
3529case 3:
3530{ context_checkGlobalScope (); ;
3531 break;}
3532case 4:
3533{ context_checkGlobalScope (); ;
3534 break;}
3535case 5:
3536{ uentry_clearDecl (); ;
3537 break;}
3538case 6:
3539{ uentry_clearDecl (); ;
3540 break;}
3541case 7:
3542{ uentry_clearDecl (); ;
3543 break;}
3544case 8:
3545{ uentry_clearDecl (); ;
3546 break;}
3547case 9:
3548{ uentry_clearDecl (); ;
3549 break;}
3550case 10:
3551{ uentry_checkDecl (); exprNode_free (yyvsp[0].expr); ;
3552 break;}
3553case 11:
3554{ uentry_clearDecl (); lltok_free (yyvsp[0].tok); /* evans 2002-02-08: okay to have a null statement */ ;
3555 break;}
3556case 12:
3557{ uentry_clearDecl (); ;
3558 break;}
3559case 13:
3560{ checkConstant (yyvsp[-6].qtyp, yyvsp[-4].ntyp); lltok_free2 (yyvsp[-7].tok, yyvsp[0].tok); ;
3561 break;}
3562case 14:
3563{ checkValueConstant (yyvsp[-9].qtyp, yyvsp[-7].ntyp, yyvsp[-3].expr); lltok_free3 (yyvsp[-10].tok, yyvsp[-5].tok, yyvsp[0].tok); ;
3564 break;}
3565case 15:
3566{ context_enterFunctionHeader (); ;
3567 break;}
3568case 16:
3569{
3570 declareStaticFunction (yyvsp[-2].ntyp); context_quietExitFunction ();
3571 context_exitFunctionHeader ();
3572 lltok_free2 (yyvsp[-4].tok, yyvsp[0].tok); /*!*/
3573 ;
3574 break;}
3575case 17:
3576{
3577 qtype qint = qtype_create (ctype_int);
3578 yyval.ntyp = idDecl_fixBase (yyvsp[0].ntyp, qint);
3579 qtype_free (qint);
3580 ;
3581 break;}
3582case 18:
3583{ yyval.ntyp = idDecl_fixBase (yyvsp[0].ntyp, yyvsp[-2].qtyp); ;
3584 break;}
3585case 20:
3586{ yyval.ntyp = yyvsp[0].ntyp; qtype_adjustPointers (yyvsp[-1].pointers, idDecl_getTyp (yyval.ntyp)); ;
3587 break;}
3588case 21:
3589{ yyval.ntyp = idDecl_create (yyvsp[0].cname, qtype_unknown ()); ;
3590 break;}
3591case 22:
3592{ yyval.ntyp = idDecl_expectFunction (yyvsp[-2].ntyp); lltok_free2 (yyvsp[-4].tok, yyvsp[0].tok); ;
3593 break;}
3594case 23:
3595{ yyval.ntyp = idDecl_replaceCtype (yyvsp[-2].ntyp, ctype_makeInnerArray (idDecl_getCtype (yyvsp[-2].ntyp))); lltok_free2 (yyvsp[-1].tok, yyvsp[0].tok); ;
3596 break;}
3597case 24:
3598{
3599 exprNode_findValue (yyvsp[-2].expr);
3600 idDecl_notExpectingFunction (yyvsp[-5].ntyp);
3601
3602 if (exprNode_hasValue (yyvsp[-2].expr))
3603 {
3604 yyval.ntyp = idDecl_replaceCtype (yyvsp[-5].ntyp, ctype_makeInnerFixedArray (idDecl_getCtype (yyvsp[-5].ntyp),
3605 exprNode_getLongValue (yyvsp[-2].expr)));
3606 }
3607 else
3608 {
3609 yyval.ntyp = idDecl_replaceCtype (yyvsp[-5].ntyp, ctype_makeInnerArray (idDecl_getCtype (yyvsp[-5].ntyp)));
3610 }
3611
3612 lltok_free2 (yyvsp[-4].tok, yyvsp[-1].tok);
3613 ;
3614 break;}
3615case 25:
3616{ setCurrentParams (uentryList_missingParams); ;
3617 break;}
3618case 26:
3619{ /* need to support globals and modifies here! */
4287634e 3620 functionClauseList fcl;
d0b80d80 3621 ctype ct = ctype_makeFunction (idDecl_getCtype (yyvsp[-5].ntyp),
3622 uentryList_makeMissingParams ());
3623
3624 yyval.ntyp = idDecl_replaceCtype (yyvsp[-5].ntyp, ct);
3625
3626 /*drl 7/25/01 added*/
6317f163 3627 setImplicitfcnConstraints();
d0b80d80 3628
4287634e 3629 DPRINTF((message("namedDeclBase PushType TLPAREN TRPAREN...:\n adding implict constraints to functionClause List: %s",
3630 functionClauseList_unparse(yyvsp[0].funcclauselist)
3631 )
3632 ));
3633
6317f163 3634 fcl = functionClauseList_setImplicitConstraints(yyvsp[0].funcclauselist);
4287634e 3635
3636 idDecl_addClauses (yyval.ntyp, fcl);
3637
3638 DPRINTF((message("1 added fuctionClause List: %s to the Id",
3639 functionClauseList_unparse(fcl)
3640 )
3641 ));
d0b80d80 3642
4287634e 3643
d0b80d80 3644 context_popLoc ();
3645 lltok_free2 (yyvsp[-3].tok, yyvsp[-2].tok);
3646 ;
3647 break;}
3648case 27:
3649{ setCurrentParams (yyvsp[-1].entrylist); ;
3650 break;}
3651case 28:
3652{
4287634e 3653 functionClauseList fcl;
6317f163 3654 setImplicitfcnConstraints ();
d0b80d80 3655 clearCurrentParams ();
3656 yyval.ntyp = idDecl_replaceCtype (yyvsp[-6].ntyp, ctype_makeFunction (idDecl_getCtype (yyvsp[-6].ntyp), yyvsp[-3].entrylist));
4287634e 3657
3658 DPRINTF((message("namedDeclBase PushType TLPAREN genericParamList TRPAREN...:\n adding implict constraints to functionClause List: %s",
3659 functionClauseList_unparse(yyvsp[0].funcclauselist)
3660 )
3661 )) ;
3662
6317f163 3663 fcl = functionClauseList_setImplicitConstraints(yyvsp[0].funcclauselist);
4287634e 3664
3665 idDecl_addClauses (yyval.ntyp, fcl);
3666
3667 DPRINTF((message("added fuctionClause List: %s to the Id",
3668 functionClauseList_unparse(fcl)
3669 )
3670 ));
3671
3672
d0b80d80 3673 context_popLoc ();
3674 lltok_free2 (yyvsp[-4].tok, yyvsp[-2].tok);
3675 ;
3676 break;}
3677case 29:
3678{ yyval.ntyp = idDecl_create (yyvsp[0].cname, qtype_unknown ()); ;
3679 break;}
3680case 30:
3681{ yyval.ntyp = idDecl_expectFunction (yyvsp[-2].ntyp); lltok_free2 (yyvsp[-4].tok, yyvsp[0].tok); ;
3682 break;}
3683case 31:
3684{ yyval.ntyp = idDecl_replaceCtype (yyvsp[-2].ntyp, ctype_makeInnerArray (idDecl_getCtype (yyvsp[-2].ntyp)));
3685 lltok_free2 (yyvsp[-1].tok, yyvsp[0].tok);
3686 ;
3687 break;}
3688case 32:
3689{
3690 int value;
3691
3692 if (exprNode_hasValue (yyvsp[-2].expr)
3693 && multiVal_isInt (exprNode_getValue (yyvsp[-2].expr)))
3694 {
3695 value = (int) multiVal_forceInt (exprNode_getValue (yyvsp[-2].expr));
3696 }
3697 else
3698 {
3699 value = 0;
3700 }
3701
3702 yyval.ntyp = idDecl_replaceCtype (yyvsp[-5].ntyp, ctype_makeInnerFixedArray (idDecl_getCtype (yyvsp[-5].ntyp), value));
3703 lltok_free2 (yyvsp[-4].tok, yyvsp[-1].tok);
3704 ;
3705 break;}
3706case 33:
3707{ setCurrentParams (uentryList_missingParams); ;
3708 break;}
3709case 34:
3710{
3711 ctype ct = ctype_makeFunction (idDecl_getCtype (yyvsp[-5].ntyp),
3712 uentryList_makeMissingParams ());
3713
3714 yyval.ntyp = idDecl_replaceCtype (yyvsp[-5].ntyp, ct);
3715 idDecl_addClauses (yyval.ntyp, yyvsp[0].funcclauselist);
3716 context_popLoc ();
3717 lltok_free2 (yyvsp[-3].tok, yyvsp[-2].tok);
3718 ;
3719 break;}
3720case 35:
3721{ setCurrentParams (yyvsp[-1].entrylist); ;
3722 break;}
3723case 36:
3724{
3725 clearCurrentParams ();
3726 yyval.ntyp = idDecl_replaceCtype (yyvsp[-6].ntyp, ctype_makeFunction (idDecl_getCtype (yyvsp[-6].ntyp), yyvsp[-3].entrylist));
3727 idDecl_addClauses (yyval.ntyp, yyvsp[0].funcclauselist);
3728 context_popLoc ();
3729 lltok_free (yyvsp[-4].tok);
3730 /*!! lltok_free2 ($3, $5); */
3731 ;
3732 break;}
3733case 37:
3734{ setCurrentParams (yyvsp[-1].entrylist); ;
3735 break;}
3736case 38:
3737{ clearCurrentParams (); ;
3738 break;}
3739case 39:
3740{ declareCIter (yyvsp[-8].cname, yyvsp[-6].entrylist);
3741 lltok_free3 (yyvsp[-9].tok, yyvsp[-7].tok, yyvsp[-5].tok);
3742 ;
3743 break;}
3744case 40:
3745{ exprNode_checkMacroBody (yyvsp[-1].expr); lltok_free2 (yyvsp[-2].tok, yyvsp[0].tok); ;
3746 break;}
3747case 41:
3748{ exprNode_checkIterBody (yyvsp[-1].expr); lltok_free2 (yyvsp[-2].tok, yyvsp[0].tok); ;
3749 break;}
3750case 42:
3751{ exprNode_checkIterEnd (yyvsp[-1].expr); lltok_free2 (yyvsp[-2].tok, yyvsp[0].tok);;
3752 break;}
3753case 43:
3754{ exprChecks_checkEmptyMacroBody (); lltok_free2 (yyvsp[-1].tok, yyvsp[0].tok); ;
3755 break;}
3756case 44:
3757{ clabstract_declareFunction (yyvsp[0].ntyp); ;
3758 break;}
3759case 45:
3760{ yyval.msconstraint = metaStateConstraint_create (yyvsp[-2].msspec, yyvsp[0].msexpr); lltok_free (yyvsp[-1].tok); ;
3761 break;}
3762case 46:
16c024b5 3763{ cscannerHelp_expectingMetaStateName (); ;
d0b80d80 3764 break;}
3765case 47:
16c024b5 3766{ cscannerHelp_clearExpectingMetaStateName ();
d0b80d80 3767 yyval.msspec = metaStateSpecifier_create (yyvsp[-3].sr, yyvsp[0].msinfo);
3768 lltok_free (yyvsp[-1].tok);
3769 ;
3770 break;}
3771case 48:
16c024b5 3772{ cscannerHelp_expectingMetaStateName (); ;
d0b80d80 3773 break;}
3774case 49:
16c024b5 3775{ cscannerHelp_clearExpectingMetaStateName ();
d0b80d80 3776 yyval.msspec = metaStateSpecifier_createElipsis (yyvsp[0].msinfo);
3777 lltok_free2 (yyvsp[-3].tok, yyvsp[-1].tok);
3778 ;
3779 break;}
3780case 50:
3781{ yyval.msexpr = metaStateExpression_create (yyvsp[0].msspec); ;
3782 break;}
3783case 51:
3784{ yyval.msexpr = metaStateExpression_createMerge (yyvsp[-2].msspec, yyvsp[0].msexpr); lltok_free (yyvsp[-1].tok); ;
3785 break;}
3786case 55:
3787{ yyval.conL = constraintList_add (yyvsp[0].conL, yyvsp[-2].con); ;
3788 break;}
3789case 56:
3790{ yyval.conL = constraintList_single (yyvsp[0].con); ;
3791 break;}
3792case 57:
3793{
3794 yyval.con = makeConstraintParse3 (yyvsp[-2].conE, yyvsp[-1].tok, yyvsp[0].conE);
3795 DPRINTF(("Done BufConstraint1\n")); ;
3796 break;}
3797case 64:
3798{yyval.conE = constraintExpr_parseMakeUnaryOp (yyvsp[-3].tok, yyvsp[-1].conE); DPRINTF( ("Got BufConstraintExpr UNary Op ") ); ;
3799 break;}
3800case 65:
3801{
3802 DPRINTF( ("Got BufConstraintExpr BINary Op ") );
3803 yyval.conE = constraintExpr_parseMakeBinaryOp (yyvsp[-3].conE, yyvsp[-2].tok, yyvsp[-1].conE); ;
3804 break;}
3805case 66:
3806{ yyval.conE = constraintExpr_makeTermsRef (yyvsp[0].sr);;
3807 break;}
3808case 67:
3809{ yyval.conE = constraintExpr_makeIntLiteral (exprNode_getLongValue (yyvsp[0].expr)); ;
3810 break;}
3811case 68:
3812{ /*@-onlytrans@*/ yyval.sr = checkbufferConstraintClausesId (yyvsp[0].entry); /*@=onlytrans@*/ /*@i523@*/ ;
3813 break;}
3814case 69:
3815{ yyval.sr = fixStateClausesId (yyvsp[0].cname); ;
3816 break;}
3817case 70:
3818{ yyval.sr = sRef_makeAnyArrayFetch (yyvsp[-2].sr); ;
3819 break;}
3820case 71:
3821{
3822 /*
3823 char *t; int c;
3824 t = cstring_toCharsSafe (exprNode_unparse($3));
3825 c = atoi( t );
3826 */
3827 yyval.sr = sRef_makeArrayFetchKnown (yyvsp[-3].sr, exprNode_getLongValue (yyvsp[-1].expr));
3828 ;
3829 break;}
3830case 72:
3831{ yyval.sr = sRef_constructPointer (yyvsp[0].sr); ;
3832 break;}
3833case 73:
3834{ yyval.sr = yyvsp[-1].sr; ;
3835 break;}
3836case 74:
3837{ cstring_markOwned (yyvsp[0].cname); yyval.sr = sRef_buildField (yyvsp[-2].sr, yyvsp[0].cname); ;
3838 break;}
3839case 75:
3840{ cstring_markOwned (yyvsp[0].cname); yyval.sr = sRef_makeArrow (yyvsp[-2].sr, yyvsp[0].cname); ;
3841 break;}
3842case 79:
3843{ yyval.funcclauselist = functionClauseList_new (); ;
3844 break;}
3845case 80:
3846{ yyval.funcclauselist = functionClauseList_prepend (yyvsp[0].funcclauselist, yyvsp[-1].funcclause); ;
3847 break;}
3848case 81:
3849{ yyval.funcclauselist = functionClauseList_new (); ;
3850 break;}
3851case 82:
3852{ yyval.funcclauselist = functionClauseList_prepend (yyvsp[0].funcclauselist, yyvsp[-1].funcclause); ;
3853 break;}
3854case 83:
3855{ yyval.funcclause = functionClause_createGlobals (yyvsp[0].globsclause); ;
3856 break;}
3857case 84:
3858{ yyval.funcclause = functionClause_createModifies (yyvsp[0].modsclause); ;
3859 break;}
3860case 85:
3861{ yyval.funcclause = functionClause_createModifies (yyvsp[0].modsclause); ;
3862 break;}
3863case 86:
3864{ yyval.funcclause = functionClause_createState (yyvsp[0].stateclause); ;
3865 break;}
3866case 87:
3867{ yyval.funcclause = yyvsp[0].funcclause; ;
3868 break;}
3869case 88:
3870{ yyval.funcclause = functionClause_createWarn (yyvsp[0].warnclause); ;
3871 break;}
3872case 89:
3873{ yyval.funcclause = functionClause_createGlobals (yyvsp[0].globsclause); ;
3874 break;}
3875case 90:
3876{ yyval.funcclause = functionClause_createModifies (yyvsp[0].modsclause); ;
3877 break;}
3878case 91:
3879{ yyval.funcclause = functionClause_createModifies (yyvsp[0].modsclause); ;
3880 break;}
3881case 92:
3882{ yyval.funcclause = functionClause_createState (yyvsp[0].stateclause); ;
3883 break;}
3884case 93:
3885{ yyval.funcclause = yyvsp[0].funcclause; ;
3886 break;}
3887case 94:
3888{ yyval.funcclause = functionClause_createWarn (yyvsp[0].warnclause); ;
3889 break;}
3890case 95:
3891{ yyval.globsclause = yyvsp[-1].globsclause; ;
3892 break;}
3893case 96:
3894{ setProcessingGlobalsList (); ;
3895 break;}
3896case 97:
3897{
3898 unsetProcessingGlobals ();
3899 yyval.globsclause = globalsClause_create (yyvsp[-3].tok, yyvsp[-1].globset);
3900 ;
3901 break;}
3902case 98:
3903{ yyval.modsclause = modifiesClause_createNoMods (yyvsp[0].tok); ;
3904 break;}
3905case 99:
3906{ yyval.modsclause = yyvsp[-1].modsclause; ;
3907 break;}
3908case 100:
3909{
3910 context_setProtectVars (); enterParamsTemp ();
3911 sRef_setGlobalScopeSafe ();
3912 ;
3913 break;}
3914case 101:
3915{
3916 exitParamsTemp ();
3917 sRef_clearGlobalScopeSafe ();
3918 context_releaseVars ();
3919 yyval.modsclause = modifiesClause_create (yyvsp[-2].tok, yyvsp[0].srset);
3920 ;
3921 break;}
3922case 102:
3923{ yyval.flagspec = flagSpec_createPlain (yyvsp[0].cname); ;
3924 break;}
3925case 103:
3926{ yyval.flagspec = flagSpec_createOr (yyvsp[-2].cname, yyvsp[0].flagspec); ;
3927 break;}
3928case 106:
3929{ yyval.warnclause = warnClause_undefined; ;
3930 break;}
3931case 107:
3932{ yyval.warnclause = yyvsp[-1].warnclause; ;
3933 break;}
3934case 108:
3935{
3936 llassert (exprNode_knownStringValue (yyvsp[0].expr));
3937 yyval.warnclause = warnClause_create (yyvsp[-2].tok, yyvsp[-1].flagspec, cstring_copy (multiVal_forceString (exprNode_getValue (yyvsp[0].expr))));
3938 exprNode_free (yyvsp[0].expr);
3939 ;
3940 break;}
3941case 109:
3942{ yyval.warnclause = warnClause_create (yyvsp[-1].tok, yyvsp[0].flagspec, cstring_undefined); ;
3943 break;}
3944case 110:
3945{ yyval.globset = globSet_single (yyvsp[0].sr); ;
3946 break;}
3947case 111:
3948{ yyval.globset = globSet_insert (yyvsp[-2].globset, yyvsp[0].sr); ;
3949 break;}
3950case 112:
3951{ yyval.sr = clabstract_createGlobal (yyvsp[0].sr, yyvsp[-1].tquallist); ;
3952 break;}
3953case 113:
3954{ yyval.tquallist = qualList_undefined; ;
3955 break;}
3956case 114:
3957{ yyval.tquallist = qualList_add (yyvsp[0].tquallist, yyvsp[-1].typequal); ;
3958 break;}
3959case 115:
3960{ yyval.sr = uentry_getSref (yyvsp[0].entry); ;
3961 break;}
3962case 116:
3963{ yyval.sr = clabstract_unrecognizedGlobal (yyvsp[0].cname); ;
3964 break;}
3965case 117:
3966{ yyval.sr = clabstract_checkGlobal (yyvsp[0].expr); ;
3967 break;}
3968case 118:
3969{ yyval.typequal = qual_createUndef (); ;
3970 break;}
3971case 119:
3972{ yyval.typequal = qual_createKilled (); ;
3973 break;}
3974case 120:
3975{ yyval.typequal = qual_createOut (); ;
3976 break;}
3977case 121:
3978{ yyval.typequal = qual_createIn (); ;
3979 break;}
3980case 122:
3981{ yyval.typequal = qual_createPartial (); ;
3982 break;}
3983case 130:
3984{
3985 /**!!! deal with fred; fred (int); declarations! **/
3986 qtype qint = qtype_create (ctype_int);
3987 yyval.ntyp = idDecl_fixBase (yyvsp[0].ntyp, qint);
3988 qtype_free (qint);
3989 ;
3990 break;}
3991case 131:
3992{ yyval.ntyp = idDecl_fixBase (yyvsp[0].ntyp, yyvsp[-2].qtyp); ;
3993 break;}
3994case 132:
3995{ checkDoneParams (); context_enterInnerContext (); ;
3996 break;}
3997case 133:
3998{
3999 exprNode_checkFunctionBody (yyvsp[0].expr); yyval.expr = yyvsp[0].expr;
4000 context_exitInner (yyvsp[0].expr);
4001 ;
4002 break;}
4003case 134:
4004{ context_enterOldStyleScope (); ;
4005 break;}
4006case 135:
4007{ oldStyleDoneParams (); context_enterInnerContext (); ;
4008 break;}
4009case 136:
4010{
4011 exprNode_checkFunctionBody (yyvsp[0].expr);
4012 yyval.expr = yyvsp[0].expr; /* oldstyle */
4013 context_exitInner (yyvsp[0].expr);
4014 ;
4015 break;}
4016case 137:
4017{
4018 context_setFunctionDefined (exprNode_loc (yyvsp[0].expr));
4019 exprNode_checkFunction (context_getHeader (), yyvsp[0].expr);
4020 /* DRL 8 8 2000 */
4021
4022 context_exitFunction ();
4023 ;
4024 break;}
4025case 138:
4026{ yyval.srset = yyvsp[-1].srset; ;
4027 break;}
4028case 139:
4029{ yyval.srset = sRefSet_new (); ;
4030 break;}
4031case 140:
4032{ yyval.sr = uentry_getSref (yyvsp[0].entry); checkModifiesId (yyvsp[0].entry); ;
4033 break;}
4034case 141:
4035{ yyval.sr = fixModifiesId (yyvsp[0].cname); ;
4036 break;}
4037case 142:
2f2892c2 4038{ yyval.sr = fixModifiesId (yyvsp[0].cname); ;
d0b80d80 4039 break;}
4040case 143:
2f2892c2 4041{ yyval.sr = modListArrayFetch (yyvsp[-2].sr, sRef_undefined); ;
d0b80d80 4042 break;}
4043case 144:
2f2892c2 4044{ yyval.sr = modListArrayFetch (yyvsp[-3].sr, yyvsp[-1].sr); ;
d0b80d80 4045 break;}
4046case 145:
2f2892c2 4047{ yyval.sr = modListPointer (yyvsp[0].sr); ;
d0b80d80 4048 break;}
4049case 146:
2f2892c2 4050{ yyval.sr = yyvsp[-1].sr; ;
d0b80d80 4051 break;}
4052case 147:
2f2892c2 4053{ yyval.sr = modListFieldAccess (yyvsp[-2].sr, yyvsp[0].cname); ;
d0b80d80 4054 break;}
4055case 148:
2f2892c2 4056{ yyval.sr = modListArrowAccess (yyvsp[-2].sr, yyvsp[0].cname); ;
d0b80d80 4057 break;}
4058case 149:
2f2892c2 4059{ yyval.sr = yyvsp[0].sr; ;
d0b80d80 4060 break;}
4061case 150:
2f2892c2 4062{ yyval.sr = sRef_makeUnknown (); /* sRef_makeConstant ($1); ? */ ;
d0b80d80 4063 break;}
4064case 151:
2f2892c2 4065{ yyval.srset = sRefSet_single (yyvsp[0].sr); ;
d0b80d80 4066 break;}
4067case 152:
2f2892c2 4068{ yyval.srset = sRefSet_insert (yyvsp[-2].srset, yyvsp[0].sr); ;
d0b80d80 4069 break;}
4070case 153:
2f2892c2 4071{ yyval.sr = checkStateClausesId (yyvsp[0].entry); ;
d0b80d80 4072 break;}
4073case 154:
2f2892c2 4074{ yyval.sr = fixStateClausesId (yyvsp[0].cname); ;
d0b80d80 4075 break;}
4076case 155:
2f2892c2 4077{ yyval.sr = sRef_makeAnyArrayFetch (yyvsp[-2].sr); ;
d0b80d80 4078 break;}
4079case 156:
2f2892c2 4080{ yyval.sr = sRef_makeAnyArrayFetch (yyvsp[-3].sr); ;
d0b80d80 4081 break;}
4082case 157:
2f2892c2 4083{ yyval.sr = sRef_constructPointer (yyvsp[0].sr); ;
d0b80d80 4084 break;}
4085case 158:
2f2892c2 4086{ yyval.sr = yyvsp[-1].sr; ;
4087 break;}
4088case 159:
d0b80d80 4089{ cstring_markOwned (yyvsp[0].cname);
4090 yyval.sr = sRef_buildField (yyvsp[-2].sr, yyvsp[0].cname); ;
4091 break;}
2f2892c2 4092case 160:
d0b80d80 4093{ cstring_markOwned (yyvsp[0].cname);
4094 yyval.sr = sRef_makeArrow (yyvsp[-2].sr, yyvsp[0].cname); ;
4095 break;}
2f2892c2 4096case 161:
a07995d9 4097{ DPRINTF ((message("Empty optSpecClauseList") )); yyval.srset = sRefSet_undefined ;
d0b80d80 4098 break;}
2f2892c2 4099case 163:
d0b80d80 4100{ if (sRef_isValid (yyvsp[0].sr)) { yyval.srset = sRefSet_single (yyvsp[0].sr); }
a07995d9 4101 else {
4102 DPRINTF((message("returning sRefSEt_undefined ") ));
4103 yyval.srset = sRefSet_undefined; }
d0b80d80 4104 ;
4105 break;}
2f2892c2 4106case 164:
d0b80d80 4107{ if (sRef_isValid (yyvsp[0].sr))
4108 {
4109 yyval.srset = sRefSet_insert (yyvsp[-2].srset, yyvsp[0].sr);
4110 }
4111 else
4112 {
4113 yyval.srset = yyvsp[-2].srset;
4114 }
4115 ;
4116 break;}
2f2892c2 4117case 165:
d0b80d80 4118{ yyval.expr = exprNode_fromIdentifier (yyvsp[0].entry); ;
4119 break;}
2f2892c2 4120case 166:
d0b80d80 4121{ yyval.expr = exprNode_fromUIO (yyvsp[0].cname); ;
4122 break;}
2f2892c2 4123case 168:
d0b80d80 4124{ yyval.expr = exprNode_addParens (yyvsp[-2].tok, yyvsp[-1].expr); ;
4125 break;}
2f2892c2 4126case 169:
16c024b5 4127{ yyval.expr = exprNode_fromIdentifier (cscannerHelp_coerceId (yyvsp[0].cname)); ;
d0b80d80 4128 break;}
2f2892c2 4129case 170:
d0b80d80 4130{ yyval.expr = exprNode_makeError (); ;
4131 break;}
2f2892c2 4132case 171:
d0b80d80 4133{ exprChecks_inCompoundStatementExpression (); ;
4134 break;}
2f2892c2 4135case 172:
d0b80d80 4136{ exprChecks_leaveCompoundStatementExpression (); yyval.expr = exprNode_compoundStatementExpression (yyvsp[-3].tok, yyvsp[-1].expr); ;
4137 break;}
d0b80d80 4138case 174:
2f2892c2 4139{ yyval.expr = exprNode_arrayFetch (yyvsp[-3].expr, yyvsp[-1].expr); ;
d0b80d80 4140 break;}
4141case 175:
2f2892c2 4142{ yyval.expr = exprNode_functionCall (yyvsp[-2].expr, exprNodeList_new ()); ;
d0b80d80 4143 break;}
4144case 176:
2f2892c2 4145{ yyval.expr = exprNode_functionCall (yyvsp[-3].expr, yyvsp[-1].exprlist); ;
d0b80d80 4146 break;}
4147case 177:
2f2892c2 4148{ yyval.expr = exprNode_vaArg (yyvsp[-5].tok, yyvsp[-3].expr, yyvsp[-1].qtyp); ;
d0b80d80 4149 break;}
4150case 178:
2f2892c2 4151{ yyval.expr = exprNode_fieldAccess (yyvsp[-4].expr, yyvsp[-2].tok, yyvsp[-1].cname); ;
d0b80d80 4152 break;}
4153case 179:
2f2892c2 4154{ yyval.expr = exprNode_arrowAccess (yyvsp[-4].expr, yyvsp[-2].tok, yyvsp[-1].cname); ;
d0b80d80 4155 break;}
4156case 180:
4157{ yyval.expr = exprNode_postOp (yyvsp[-1].expr, yyvsp[0].tok); ;
4158 break;}
4159case 181:
2f2892c2 4160{ yyval.expr = exprNode_postOp (yyvsp[-1].expr, yyvsp[0].tok); ;
d0b80d80 4161 break;}
4162case 182:
2f2892c2 4163{ /* added for C99 */ yyval.expr = exprNode_undefined; /*@i87 no checking */ ;
d0b80d80 4164 break;}
4165case 183:
2f2892c2 4166{ yyval.exprlist = exprNodeList_singleton (yyvsp[0].expr); ;
d0b80d80 4167 break;}
2f2892c2 4168case 184:
4169{ yyval.exprlist = exprNodeList_push (yyvsp[-2].exprlist, yyvsp[0].expr); ;
d0b80d80 4170 break;}
4171case 186:
4172{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
4173 break;}
4174case 187:
4175{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
4176 break;}
4177case 188:
4178{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
4179 break;}
4180case 189:
4181{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
4182 break;}
4183case 190:
4184{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
4185 break;}
4186case 191:
4187{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
4188 break;}
4189case 192:
4190{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
4191 break;}
4192case 193:
2f2892c2 4193{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 4194 break;}
4195case 194:
edad9a7f 4196{ yyval.expr = yyvsp[-1].expr; ;
d0b80d80 4197 break;}
4198case 195:
2f2892c2 4199{ yyval.expr = yyvsp[0].expr; ;
d0b80d80 4200 break;}
4201case 196:
2f2892c2 4202{ yyval.cstringlist = cstringList_add (yyvsp[-2].cstringlist, yyvsp[0].cname); lltok_free (yyvsp[-1].tok); ;
d0b80d80 4203 break;}
4204case 197:
2f2892c2 4205{ yyval.cstringlist = yyvsp[-3].cstringlist; lltok_free2 (yyvsp[-2].tok, yyvsp[0].tok); ;
d0b80d80 4206 break;}
4207case 198:
2f2892c2 4208{ yyval.cstringlist = cstringList_single (yyvsp[0].cname); ;
4209 break;}
4210case 199:
d0b80d80 4211{ yyval.expr = exprNode_offsetof (yyvsp[-5].qtyp, yyvsp[-2].cstringlist);
4212 lltok_free3 (yyvsp[-8].tok, yyvsp[-6].tok, yyvsp[-3].tok); lltok_free (yyvsp[-1].tok); ;
4213 break;}
2f2892c2 4214case 200:
d0b80d80 4215{ context_setProtectVars (); ;
4216 break;}
2f2892c2 4217case 201:
d0b80d80 4218{ context_sizeofReleaseVars (); yyval.expr = yyvsp[0].expr; ;
4219 break;}
2f2892c2 4220case 202:
edad9a7f 4221{context_enterSizeof();
d0b80d80 4222 break;}
2f2892c2 4223case 203:
edad9a7f 4224{context_leaveSizeof();
d0b80d80 4225 break;}
2f2892c2 4226case 204:
edad9a7f 4227{ yyval.expr = exprNode_sizeofType (yyvsp[-1].qtyp); lltok_free3 (yyvsp[-3].tok, yyvsp[-2].tok, yyvsp[0].tok); ;
d0b80d80 4228 break;}
2f2892c2 4229case 205:
edad9a7f 4230{ yyval.expr = exprNode_sizeofExpr (yyvsp[0].expr); lltok_free (yyvsp[-1].tok); ;
4231 break;}
4232case 206:
4233{ yyval.expr = exprNode_alignofType (yyvsp[-1].qtyp); lltok_free3 (yyvsp[-3].tok, yyvsp[-2].tok, yyvsp[0].tok); ;
d0b80d80 4234 break;}
2f2892c2 4235case 207:
edad9a7f 4236{ yyval.expr = exprNode_alignofExpr (yyvsp[0].expr); lltok_free (yyvsp[-1].tok); ;
d0b80d80 4237 break;}
d0b80d80 4238case 209:
edad9a7f 4239{ yyval.expr = exprNode_cast (yyvsp[-3].tok, yyvsp[0].expr, yyvsp[-2].qtyp); lltok_free (yyvsp[-1].tok); ;
d0b80d80 4240 break;}
edad9a7f 4241case 211:
d0b80d80 4242{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4243 break;}
edad9a7f 4244case 212:
d0b80d80 4245{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4246 break;}
4247case 213:
4248{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4249 break;}
edad9a7f 4250case 215:
d0b80d80 4251{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4252 break;}
4253case 216:
4254{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4255 break;}
edad9a7f 4256case 218:
d0b80d80 4257{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4258 break;}
4259case 219:
d0b80d80 4260{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4261 break;}
4262case 221:
4263{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4264 break;}
2f2892c2 4265case 222:
edad9a7f 4266{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4267 break;}
4268case 223:
d0b80d80 4269{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4270 break;}
4271case 224:
4272{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4273 break;}
edad9a7f 4274case 226:
d0b80d80 4275{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4276 break;}
2f2892c2 4277case 227:
d0b80d80 4278{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4279 break;}
2f2892c2 4280case 229:
d0b80d80 4281{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4282 break;}
2f2892c2 4283case 231:
4284{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4285 break;}
4286case 233:
edad9a7f 4287{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4288 break;}
4289case 235:
d0b80d80 4290{ exprNode_produceGuards (yyvsp[-1].expr);
4291 context_enterAndClause (yyvsp[-1].expr);
4292 ;
4293 break;}
edad9a7f 4294case 236:
d0b80d80 4295{
4296 yyval.expr = exprNode_op (yyvsp[-3].expr, yyvsp[0].expr, yyvsp[-2].tok);
4297 context_exitAndClause (yyval.expr, yyvsp[0].expr);
4298 ;
4299 break;}
edad9a7f 4300case 238:
d0b80d80 4301{
4302 exprNode_produceGuards (yyvsp[-1].expr);
4303 context_enterOrClause (yyvsp[-1].expr);
4304 ;
4305 break;}
edad9a7f 4306case 239:
d0b80d80 4307{
4308 yyval.expr = exprNode_op (yyvsp[-3].expr, yyvsp[0].expr, yyvsp[-2].tok);
4309 context_exitOrClause (yyval.expr, yyvsp[0].expr);
4310 ;
4311 break;}
edad9a7f 4312case 241:
d0b80d80 4313{ exprNode_produceGuards (yyvsp[-1].expr); context_enterTrueClause (yyvsp[-1].expr); ;
4314 break;}
edad9a7f 4315case 242:
d0b80d80 4316{ context_enterFalseClause (yyvsp[-4].expr); ;
4317 break;}
d0b80d80 4318case 243:
edad9a7f 4319{ yyval.expr = exprNode_cond (yyvsp[-6].expr, yyvsp[-3].expr, yyvsp[0].expr); context_exitClause (yyvsp[-6].expr, yyvsp[-3].expr, yyvsp[0].expr); ;
d0b80d80 4320 break;}
4321case 245:
4322{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4323 break;}
4324case 246:
4325{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4326 break;}
4327case 247:
4328{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4329 break;}
4330case 248:
4331{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4332 break;}
4333case 249:
4334{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4335 break;}
4336case 250:
4337{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4338 break;}
4339case 251:
4340{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4341 break;}
4342case 252:
4343{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4344 break;}
2f2892c2 4345case 253:
edad9a7f 4346{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4347 break;}
4348case 254:
2f2892c2 4349{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 4350 break;}
4351case 255:
edad9a7f 4352{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
4353 break;}
4354case 257:
2f2892c2 4355{ yyval.expr = exprNode_comma (yyvsp[-2].expr, yyvsp[0].expr); ;
d0b80d80 4356 break;}
edad9a7f 4357case 258:
2f2892c2 4358{ yyval.expr = exprNode_undefined; ;
d0b80d80 4359 break;}
edad9a7f 4360case 261:
2f2892c2 4361{ yyval.expr = yyvsp[0].expr; ;
d0b80d80 4362 break;}
edad9a7f 4363case 262:
2f2892c2 4364{ doVaDcl (); yyval.expr = exprNode_makeError (); ;
d0b80d80 4365 break;}
edad9a7f 4366case 263:
d0b80d80 4367{ yyval.expr = exprNode_makeError (); ;
4368 break;}
edad9a7f 4369case 264:
2f2892c2 4370{ yyval.expr = exprNode_makeError (); ;
4371 break;}
edad9a7f 4372case 265:
d0b80d80 4373{
4374 setProcessingVars (yyvsp[-3].qtyp);
4375 processNamedDecl (yyvsp[-1].ntyp);
4376 ;
4377 break;}
edad9a7f 4378case 266:
d0b80d80 4379{
4380 unsetProcessingVars ();
4381 yyval.expr = exprNode_makeEmptyInitialization (yyvsp[-6].ntyp);
4382 DPRINTF (("Empty initialization: %s", exprNode_unparse (yyval.expr)));
4383 ;
4384 break;}
edad9a7f 4385case 267:
d0b80d80 4386{ setProcessingVars (yyvsp[-4].qtyp); processNamedDecl (yyvsp[-2].ntyp); ;
4387 break;}
edad9a7f 4388case 268:
d0b80d80 4389{ yyval.expr = exprNode_concat (yyvsp[-2].expr, exprNode_makeInitialization (yyvsp[-8].ntyp, yyvsp[-3].expr));
4390 unsetProcessingVars ();
4391 ;
4392 break;}
edad9a7f 4393case 269:
3dabb077 4394{ yyval.expr = yyvsp[0].expr; ;
4395 break;}
edad9a7f 4396case 270:
3dabb077 4397{ yyval.expr = exprNode_fromIdentifier (usymtab_getTypeEntry (ctype_typeId (yyvsp[0].ctyp))); ;
4398 break;}
edad9a7f 4399case 271:
d0b80d80 4400{
4401 processNamedDecl (yyvsp[-1].ntyp);
4402 yyval.expr = exprNode_makeEmptyInitialization (yyvsp[-1].ntyp);
4403 ;
4404 break;}
edad9a7f 4405case 272:
2f2892c2 4406{ processNamedDecl (yyvsp[-2].ntyp); ;
d0b80d80 4407 break;}
edad9a7f 4408case 273:
2f2892c2 4409{ yyval.expr = exprNode_makeInitialization (yyvsp[-5].ntyp, yyvsp[0].expr); ;
d0b80d80 4410 break;}
edad9a7f 4411case 274:
2f2892c2 4412{ setProcessingTypedef (yyvsp[0].qtyp); ;
d0b80d80 4413 break;}
edad9a7f 4414case 275:
2f2892c2 4415{ clabstract_declareType (yyvsp[-3].exprlist, yyvsp[-1].warnclause); ;
d0b80d80 4416 break;}
edad9a7f 4417case 276:
d0b80d80 4418{ /* in the ANSI grammar, semantics unclear */ ;
4419 break;}
edad9a7f 4420case 277:
2f2892c2 4421{ /* in the ANSI grammar, semantics unclear */ ;
d0b80d80 4422 break;}
edad9a7f 4423case 278:
16c024b5 4424{ cscannerHelp_setExpectingTypeName (); ;
d0b80d80 4425 break;}
edad9a7f 4426case 279:
16c024b5 4427{ cscannerHelp_setExpectingTypeName (); context_pushLoc (); ;
d0b80d80 4428 break;}
edad9a7f 4429case 280:
2f2892c2 4430{ yyval.exprlist = yyvsp[-1].exprlist; ;
d0b80d80 4431 break;}
edad9a7f 4432case 281:
2f2892c2 4433{ yyval.exprlist = exprNodeList_singleton (yyvsp[0].expr); ;
d0b80d80 4434 break;}
edad9a7f 4435case 282:
2f2892c2 4436{ yyval.exprlist = exprNodeList_push (yyvsp[-3].exprlist, yyvsp[0].expr); ;
d0b80d80 4437 break;}
edad9a7f 4438case 283:
3dabb077 4439{ yyval.exprlist = yyvsp[-1].exprlist; ;
4440 break;}
edad9a7f 4441case 284:
3dabb077 4442{ yyval.exprlist = exprNodeList_singleton (yyvsp[0].expr); ;
4443 break;}
edad9a7f 4444case 285:
3dabb077 4445{ yyval.exprlist = exprNodeList_push (yyvsp[-3].exprlist, yyvsp[0].expr); ;
4446 break;}
edad9a7f 4447case 286:
2f2892c2 4448{ yyval.expr = exprNode_makeError (); ;
4449 break;}
edad9a7f 4450case 287:
d0b80d80 4451{ yyval.expr = exprNode_concat (yyvsp[-3].expr, yyvsp[0].expr); ;
4452 break;}
edad9a7f 4453case 289:
d0b80d80 4454{ yyval.expr = exprNode_makeInitBlock (yyvsp[-2].tok, yyvsp[-1].exprlist); lltok_free (yyvsp[0].tok); ;
4455 break;}
edad9a7f 4456case 290:
d0b80d80 4457{ yyval.expr = exprNode_makeInitBlock (yyvsp[-3].tok, yyvsp[-2].exprlist); lltok_free2 (yyvsp[-1].tok, yyvsp[0].tok); ;
4458 break;}
edad9a7f 4459case 291:
d0b80d80 4460{ yyval.expr = exprNode_undefined; ;
4461 break;}
edad9a7f 4462case 292:
d0b80d80 4463{ yyval.expr = yyvsp[-1].expr; ;
4464 break;}
edad9a7f 4465case 293:
d0b80d80 4466{ yyval.expr = exprNode_undefined;
4467 /* gcc extension, obsolete since 2.5 */ ;
4468 break;}
edad9a7f 4469case 294:
d0b80d80 4470{ yyval.expr = exprNode_undefined; ;
4471 break;}
edad9a7f 4472case 295:
d0b80d80 4473{ yyval.expr = exprNode_undefined; ;
4474 break;}
edad9a7f 4475case 296:
d0b80d80 4476{ yyval.expr = exprNode_undefined; ;
4477 break;}
edad9a7f 4478case 297:
2f2892c2 4479{ yyval.expr = exprNode_undefined; ;
d0b80d80 4480 break;}
edad9a7f 4481case 298:
2f2892c2 4482{ yyval.exprlist = exprNodeList_singleton (yyvsp[0].expr); ;
d0b80d80 4483 break;}
edad9a7f 4484case 299:
2f2892c2 4485{ yyval.exprlist = exprNodeList_push (yyvsp[-2].exprlist, yyvsp[0].expr); ;
d0b80d80 4486 break;}
edad9a7f 4487case 300:
2f2892c2 4488{ setStorageClass (SCEXTERN); yyval.typequal = qual_createExtern (); ;
d0b80d80 4489 break;}
edad9a7f 4490case 301:
2f2892c2 4491{ yyval.typequal = qual_createInline (); ;
d0b80d80 4492 break;}
edad9a7f 4493case 302:
2f2892c2 4494{ setStorageClass (SCSTATIC); yyval.typequal = qual_createStatic (); ;
d0b80d80 4495 break;}
edad9a7f 4496case 303:
2f2892c2 4497{ yyval.typequal = qual_createAuto (); ;
d0b80d80 4498 break;}
edad9a7f 4499case 304:
2f2892c2 4500{ yyval.typequal = qual_createRegister (); ;
d0b80d80 4501 break;}
edad9a7f 4502case 305:
2f2892c2 4503{ yyval.stateclause = yyvsp[-1].stateclause; ;
4504 break;}
edad9a7f 4505case 306:
d0b80d80 4506{
4507 context_setProtectVars ();
4508 enterParamsTemp ();
4509 sRef_setGlobalScopeSafe ();
4510 ;
4511 break;}
edad9a7f 4512case 307:
d0b80d80 4513{
4514 exitParamsTemp ();
4515 sRef_clearGlobalScopeSafe ();
4516 context_releaseVars ();
4517 yyval.stateclause = stateClause_createPlain (yyvsp[-5].tok, yyvsp[-2].srset);
4518 ;
4519 break;}
edad9a7f 4520case 308:
d0b80d80 4521{ yyval.funcclause = yyvsp[-1].funcclause; ;
4522 break;}
edad9a7f 4523case 309:
d0b80d80 4524{ yyval.tok = yyvsp[-1].tok; context_enterFunctionHeader (); ;
4525 break;}
edad9a7f 4526case 310:
d0b80d80 4527{
4528 context_exitFunctionHeader ();
4529 context_setProtectVars ();
4530 enterParamsTemp ();
4531 sRef_setGlobalScopeSafe ();
4532 ;
4533 break;}
edad9a7f 4534case 311:
d0b80d80 4535{
4536 exitParamsTemp ();
4537 sRef_clearGlobalScopeSafe ();
4538 context_releaseVars ();
4539 yyval.funcclause = functionClause_createState (stateClause_create (yyvsp[-5].tok, yyvsp[-4].typequal, yyvsp[-2].srset));
4540 ;
4541 break;}
edad9a7f 4542case 312:
d0b80d80 4543{
4544 context_setProtectVars ();
4545 enterParamsTemp ();
4546 sRef_setGlobalScopeSafe ();
4547 ;
4548 break;}
edad9a7f 4549case 313:
d0b80d80 4550{
4551 context_exitFunctionHeader ();
4552 exitParamsTemp ();
4553 sRef_clearGlobalScopeSafe ();
4554 context_releaseVars ();
4555 DPRINTF (("done optGlobBufConstraintsAux\n"));
4556
4557 if (lltok_isEnsures (yyvsp[-4].tok))
4558 {
4559 yyval.funcclause = functionClause_createEnsures (yyvsp[-2].fcnconstraint);
4560 }
4561 else if (lltok_isRequires (yyvsp[-4].tok))
4562 {
4563 yyval.funcclause = functionClause_createRequires (yyvsp[-2].fcnconstraint);
4564 }
4565 else
4566 {
4567 BADBRANCH;
4568 }
4569
4570 DPRINTF (("FunctionclauseS: %s", functionClause_unparse (yyval.funcclause)));
4571 ;
4572 break;}
3dabb077 4573case 314:
edad9a7f 4574{ yyval.fcnconstraint = functionConstraint_createBufferConstraint (yyvsp[0].conL); ;
d0b80d80 4575 break;}
3dabb077 4576case 315:
edad9a7f 4577{ yyval.fcnconstraint = functionConstraint_createMetaStateConstraint (yyvsp[0].msconstraint); DPRINTF (("Made constraint: %s", functionConstraint_unparse (yyval.fcnconstraint))); ;
d0b80d80 4578 break;}
3dabb077 4579case 316:
edad9a7f 4580{ yyval.typequal = qual_createExits (); ;
d0b80d80 4581 break;}
3dabb077 4582case 317:
edad9a7f 4583{ yyval.typequal = qual_createMayExit (); ;
d0b80d80 4584 break;}
3dabb077 4585case 318:
edad9a7f 4586{ yyval.typequal = qual_createTrueExit (); ;
d0b80d80 4587 break;}
3dabb077 4588case 319:
edad9a7f 4589{ yyval.typequal = qual_createFalseExit (); ;
d0b80d80 4590 break;}
3dabb077 4591case 320:
edad9a7f 4592{ yyval.typequal = qual_createNeverExit (); ;
d0b80d80 4593 break;}
3dabb077 4594case 321:
edad9a7f 4595{ yyval.typequal = qual_createChecked (); ;
d0b80d80 4596 break;}
3dabb077 4597case 322:
edad9a7f 4598{ yyval.typequal = qual_createCheckMod (); ;
d0b80d80 4599 break;}
3dabb077 4600case 323:
edad9a7f 4601{ yyval.typequal = qual_createUnchecked (); ;
d0b80d80 4602 break;}
3dabb077 4603case 324:
edad9a7f 4604{ yyval.typequal = qual_createCheckedStrict (); ;
d0b80d80 4605 break;}
3dabb077 4606case 325:
edad9a7f 4607{ yyval.typequal = qual_createOwned (); ;
d0b80d80 4608 break;}
3dabb077 4609case 326:
edad9a7f 4610{ yyval.typequal = qual_createDependent (); ;
d0b80d80 4611 break;}
3dabb077 4612case 327:
edad9a7f 4613{ yyval.typequal = qual_createYield (); ;
d0b80d80 4614 break;}
3dabb077 4615case 328:
edad9a7f 4616{ yyval.typequal = qual_createTemp (); ;
d0b80d80 4617 break;}
3dabb077 4618case 329:
edad9a7f 4619{ yyval.typequal = qual_createOnly (); ;
d0b80d80 4620 break;}
3dabb077 4621case 330:
edad9a7f 4622{ yyval.typequal = qual_createKeep (); ;
d0b80d80 4623 break;}
3dabb077 4624case 331:
edad9a7f 4625{ yyval.typequal = qual_createKept (); ;
d0b80d80 4626 break;}
3dabb077 4627case 332:
edad9a7f 4628{ yyval.typequal = qual_createShared (); ;
d0b80d80 4629 break;}
3dabb077 4630case 333:
edad9a7f 4631{ yyval.typequal = qual_createUnique (); ;
d0b80d80 4632 break;}
3dabb077 4633case 334:
edad9a7f 4634{ yyval.typequal = qual_createNull (); ;
d0b80d80 4635 break;}
3dabb077 4636case 335:
edad9a7f 4637{ yyval.typequal = qual_createIsNull (); ;
d0b80d80 4638 break;}
3dabb077 4639case 336:
edad9a7f 4640{ yyval.typequal = qual_createRelNull (); ;
d0b80d80 4641 break;}
3dabb077 4642case 337:
edad9a7f 4643{ yyval.typequal = qual_createNotNull (); ;
d0b80d80 4644 break;}
3dabb077 4645case 338:
edad9a7f 4646{ yyval.typequal = qual_createExposed (); ;
d0b80d80 4647 break;}
3dabb077 4648case 339:
edad9a7f 4649{ yyval.typequal = qual_createObserver (); ;
d0b80d80 4650 break;}
3dabb077 4651case 340:
edad9a7f 4652{ yyval.typequal = qual_createNullTerminated (); ;
d0b80d80 4653 break;}
3dabb077 4654case 341:
edad9a7f 4655{ yyval.typequal = qual_createMetaState (yyvsp[0].annotation); ;
d0b80d80 4656 break;}
3dabb077 4657case 342:
edad9a7f 4658{ yyval.typequal = qual_createReturned (); ;
d0b80d80 4659 break;}
3dabb077 4660case 343:
edad9a7f 4661{ yyval.typequal = qual_createSef (); ;
d0b80d80 4662 break;}
3dabb077 4663case 344:
edad9a7f 4664{ yyval.typequal = qual_createUnused (); ;
d0b80d80 4665 break;}
3dabb077 4666case 345:
edad9a7f 4667{ yyval.typequal = qual_createExternal (); ;
d0b80d80 4668 break;}
3dabb077 4669case 346:
edad9a7f 4670{ yyval.typequal = qual_createTrueNull (); ;
d0b80d80 4671 break;}
3dabb077 4672case 347:
edad9a7f 4673{ yyval.typequal = qual_createFalseNull (); ;
d0b80d80 4674 break;}
3dabb077 4675case 348:
edad9a7f 4676{ yyval.typequal = qual_createAbstract (); ;
d0b80d80 4677 break;}
3dabb077 4678case 349:
edad9a7f 4679{ yyval.typequal = qual_createNumAbstract (); ;
d0b80d80 4680 break;}
3dabb077 4681case 350:
edad9a7f 4682{ yyval.typequal = qual_createConcrete (); ;
d0b80d80 4683 break;}
3dabb077 4684case 351:
edad9a7f 4685{ yyval.typequal = qual_createMutable (); ;
d0b80d80 4686 break;}
3dabb077 4687case 352:
edad9a7f 4688{ yyval.typequal = qual_createImmutable (); ;
d0b80d80 4689 break;}
3dabb077 4690case 353:
edad9a7f 4691{ yyval.typequal = qual_createRefCounted (); ;
d0b80d80 4692 break;}
3dabb077 4693case 354:
edad9a7f 4694{ yyval.typequal = qual_createRefs (); ;
d0b80d80 4695 break;}
3dabb077 4696case 355:
edad9a7f 4697{ yyval.typequal = qual_createKillRef (); ;
d0b80d80 4698 break;}
3dabb077 4699case 356:
edad9a7f 4700{ yyval.typequal = qual_createRelDef (); ;
d0b80d80 4701 break;}
3dabb077 4702case 357:
edad9a7f 4703{ yyval.typequal = qual_createNewRef (); ;
d0b80d80 4704 break;}
3dabb077 4705case 358:
edad9a7f 4706{ yyval.typequal = qual_createTempRef (); ;
d0b80d80 4707 break;}
3dabb077 4708case 359:
edad9a7f 4709{ yyval.typequal = qual_createShort (); ;
d0b80d80 4710 break;}
3dabb077 4711case 360:
edad9a7f 4712{ yyval.typequal = qual_createLong (); ;
d0b80d80 4713 break;}
3dabb077 4714case 361:
edad9a7f 4715{ yyval.typequal = qual_createSigned (); ;
d0b80d80 4716 break;}
3dabb077 4717case 362:
edad9a7f 4718{ yyval.typequal = qual_createUnsigned (); ;
d0b80d80 4719 break;}
3dabb077 4720case 363:
edad9a7f 4721{ yyval.typequal = qual_createOut (); ;
d0b80d80 4722 break;}
3dabb077 4723case 364:
edad9a7f 4724{ yyval.typequal = qual_createIn (); ;
d0b80d80 4725 break;}
3dabb077 4726case 365:
edad9a7f 4727{ yyval.typequal = qual_createPartial (); ;
d0b80d80 4728 break;}
3dabb077 4729case 366:
edad9a7f 4730{ yyval.typequal = qual_createSpecial (); ;
d0b80d80 4731 break;}
3dabb077 4732case 367:
edad9a7f 4733{ yyval.typequal = qual_createConst (); ;
d0b80d80 4734 break;}
3dabb077 4735case 368:
edad9a7f 4736{ yyval.typequal = qual_createVolatile (); ;
d0b80d80 4737 break;}
3dabb077 4738case 369:
edad9a7f 4739{ yyval.typequal = qual_createRestrict (); ;
d0b80d80 4740 break;}
3dabb077 4741case 370:
d0b80d80 4742{ yyval.typequal = yyvsp[-1].typequal; ;
4743 break;}
3dabb077 4744case 371:
d0b80d80 4745{ yyval.typequal = yyvsp[-1].typequal; ;
4746 break;}
3dabb077 4747case 372:
d0b80d80 4748{ yyval.typequal = yyvsp[-1].typequal; ;
4749 break;}
3dabb077 4750case 373:
d0b80d80 4751{ yyval.typequal = yyvsp[-1].typequal; ;
4752 break;}
3dabb077 4753case 374:
d0b80d80 4754{ yyval.typequal = yyvsp[-1].typequal; ;
4755 break;}
3dabb077 4756case 375:
2f2892c2 4757{ yyval.typequal = yyvsp[-1].typequal; ;
d0b80d80 4758 break;}
e5081f8c 4759case 376:
4760{ yyval.typequal = yyvsp[-1].typequal; ;
d0b80d80 4761 break;}
edad9a7f 4762case 377:
4763{ yyval.typequal = yyvsp[-1].typequal; ;
4764 break;}
4765case 378:
4766{ yyval.typequal = yyvsp[-1].typequal; ;
4767 break;}
4768case 385:
e5081f8c 4769{ yyval.ctyp = ctype_makeAnytype (); ;
d0b80d80 4770 break;}
edad9a7f 4771case 386:
e5081f8c 4772{ yyval.ctyp = ctype_anyintegral; ;
2f2892c2 4773 break;}
edad9a7f 4774case 387:
e5081f8c 4775{ yyval.ctyp = ctype_unsignedintegral; ;
4776 break;}
edad9a7f 4777case 388:
d0b80d80 4778{ yyval.ctyp = ctype_signedintegral; ;
4779 break;}
edad9a7f 4780case 392:
d0b80d80 4781{ yyval.ctyp = ctype_fromQual (yyvsp[-1].typequal); ;
4782 break;}
edad9a7f 4783case 393:
d0b80d80 4784{ yyval.qtyp = qtype_resolve (yyvsp[-1].qtyp); ;
4785 break;}
edad9a7f 4786case 394:
d0b80d80 4787{ yyval.qtyp = yyvsp[0].qtyp; ;
4788 break;}
edad9a7f 4789case 395:
d0b80d80 4790{ yyval.qtyp = qtype_mergeAlt (yyvsp[-3].qtyp, yyvsp[-1].qtyp); ;
4791 break;}
edad9a7f 4792case 397:
e5081f8c 4793{ yyval.qtyp = qtype_mergeAlt (yyvsp[-2].qtyp, yyvsp[0].qtyp); ;
d0b80d80 4794 break;}
edad9a7f 4795case 398:
2f2892c2 4796{ yyval.qtyp = qtype_addQual (yyvsp[0].qtyp, yyvsp[-1].typequal); ;
d0b80d80 4797 break;}
edad9a7f 4798case 399:
e5081f8c 4799{ yyval.qtyp = qtype_addQual (yyvsp[0].qtyp, yyvsp[-1].typequal); ;
d0b80d80 4800 break;}
edad9a7f 4801case 400:
e5081f8c 4802{ yyval.qtyp = qtype_combine (yyvsp[0].qtyp, yyvsp[-1].ctyp); ;
d0b80d80 4803 break;}
edad9a7f 4804case 401:
e5081f8c 4805{ yyval.qtyp = qtype_unknown (); ;
d0b80d80 4806 break;}
edad9a7f 4807case 402:
e5081f8c 4808{ yyval.qtyp = yyvsp[0].qtyp; ;
d0b80d80 4809 break;}
edad9a7f 4810case 403:
e5081f8c 4811{ yyval.conL = constraintList_undefined; ;
d0b80d80 4812 break;}
edad9a7f 4813case 404:
e5081f8c 4814{ sRef_setGlobalScopeSafe (); ;
d0b80d80 4815 break;}
edad9a7f 4816case 405:
e5081f8c 4817{ sRef_clearGlobalScopeSafe (); ;
d0b80d80 4818 break;}
edad9a7f 4819case 406:
6317f163 4820{ ctype ct; ct = declareStruct (yyvsp[-9].cname, yyvsp[-4].flist); /* context_setGlobalStructInfo(ct, $12); */ yyval.ctyp = ct; ;
d0b80d80 4821 break;}
edad9a7f 4822case 407:
e5081f8c 4823{ sRef_setGlobalScopeSafe (); ;
d0b80d80 4824 break;}
edad9a7f 4825case 408:
e5081f8c 4826{ sRef_clearGlobalScopeSafe (); ;
d0b80d80 4827 break;}
edad9a7f 4828case 409:
e5081f8c 4829{ yyval.ctyp = declareUnion (yyvsp[-8].cname, yyvsp[-3].flist); ;
d0b80d80 4830 break;}
edad9a7f 4831case 410:
e5081f8c 4832{ yyval.ctyp = declareStruct (yyvsp[-3].cname, uentryList_new ()); ;
d0b80d80 4833 break;}
edad9a7f 4834case 411:
e5081f8c 4835{ yyval.ctyp = declareUnion (yyvsp[-3].cname, uentryList_new ()); ;
d0b80d80 4836 break;}
edad9a7f 4837case 412:
e5081f8c 4838{ sRef_setGlobalScopeSafe (); ;
d0b80d80 4839 break;}
edad9a7f 4840case 413:
e5081f8c 4841{ sRef_clearGlobalScopeSafe (); ;
d0b80d80 4842 break;}
edad9a7f 4843case 414:
e5081f8c 4844{ yyval.ctyp = declareUnnamedStruct (yyvsp[-3].flist); ;
d0b80d80 4845 break;}
edad9a7f 4846case 415:
e5081f8c 4847{ sRef_setGlobalScopeSafe (); ;
d0b80d80 4848 break;}
edad9a7f 4849case 416:
e5081f8c 4850{ sRef_clearGlobalScopeSafe (); ;
d0b80d80 4851 break;}
edad9a7f 4852case 417:
e5081f8c 4853{ yyval.ctyp = declareUnnamedUnion (yyvsp[-3].flist); ;
d0b80d80 4854 break;}
edad9a7f 4855case 418:
e5081f8c 4856{ yyval.ctyp = ctype_createUnnamedStruct (uentryList_new ()); ;
d0b80d80 4857 break;}
edad9a7f 4858case 419:
e5081f8c 4859{ yyval.ctyp = ctype_createUnnamedUnion (uentryList_new ()); ;
d0b80d80 4860 break;}
edad9a7f 4861case 420:
e5081f8c 4862{ yyval.ctyp = handleStruct (yyvsp[-1].cname); ;
2f2892c2 4863 break;}
edad9a7f 4864case 421:
e5081f8c 4865{ yyval.ctyp = handleUnion (yyvsp[-1].cname); ;
4866 break;}
edad9a7f 4867case 422:
16c024b5 4868{ cscannerHelp_clearExpectingTypeName (); ;
d0b80d80 4869 break;}
edad9a7f 4870case 424:
d0b80d80 4871{ yyval.flist = uentryList_undefined; /* bogus! */ ;
4872 break;}
edad9a7f 4873case 425:
d0b80d80 4874{ yyval.flist = uentryList_mergeFields (yyvsp[-1].flist, yyvsp[0].flist); ;
4875 break;}
edad9a7f 4876case 426:
d0b80d80 4877{ yyval.flist = fixUentryList (yyvsp[-2].ntyplist, yyvsp[-4].qtyp); ;
4878 break;}
edad9a7f 4879case 427:
d0b80d80 4880{ yyval.flist = fixUnnamedDecl (yyvsp[-2].qtyp); ;
4881 break;}
edad9a7f 4882case 428:
d0b80d80 4883{ yyval.ntyplist = idDeclList_singleton (yyvsp[-1].ntyp); ;
4884 break;}
edad9a7f 4885case 429:
d0b80d80 4886{ yyval.ntyplist = idDeclList_add (yyvsp[-3].ntyplist, yyvsp[-1].ntyp); ;
4887 break;}
edad9a7f 4888case 430:
d0b80d80 4889{ yyval.ntyp = yyvsp[0].ntyp; ;
4890 break;}
edad9a7f 4891case 431:
d0b80d80 4892{ yyval.ntyp = idDecl_undefined; ;
4893 break;}
edad9a7f 4894case 432:
d0b80d80 4895{ yyval.ntyp = yyvsp[-3].ntyp; ;
4896 break;}
edad9a7f 4897case 433:
d0b80d80 4898{ yyval.ctyp = declareUnnamedEnum (yyvsp[-2].enumnamelist); ;
4899 break;}
edad9a7f 4900case 434:
d0b80d80 4901{ context_pushLoc (); ;
4902 break;}
edad9a7f 4903case 435:
d0b80d80 4904{ context_popLoc (); yyval.ctyp = declareEnum (yyvsp[-5].cname, yyvsp[-2].enumnamelist); ;
4905 break;}
edad9a7f 4906case 436:
d0b80d80 4907{ yyval.ctyp = handleEnum (yyvsp[-1].cname); ;
4908 break;}
edad9a7f 4909case 437:
d0b80d80 4910{ yyval.enumnamelist = enumNameList_single (yyvsp[0].cname); ;
4911 break;}
edad9a7f 4912case 438:
d0b80d80 4913{ yyval.enumnamelist = enumNameList_push (yyvsp[-2].enumnamelist, yyvsp[0].cname); ;
4914 break;}
edad9a7f 4915case 440:
d0b80d80 4916{ uentry ue = uentry_makeEnumConstant (yyvsp[0].cname, ctype_unknown);
4917 usymtab_supGlobalEntry (ue);
4918 yyval.cname = yyvsp[0].cname;
4919 ;
4920 break;}
edad9a7f 4921case 441:
d0b80d80 4922{ uentry ue = uentry_makeEnumInitializedConstant (yyvsp[-3].cname, ctype_unknown, yyvsp[0].expr);
4923 usymtab_supGlobalEntry (ue);
4924 yyval.cname = yyvsp[-3].cname;
4925 ;
4926 break;}
edad9a7f 4927case 443:
d0b80d80 4928{ yyval.ntyp = idDecl_create (cstring_undefined, qtype_create (yyvsp[0].ctyp)); ;
4929 break;}
edad9a7f 4930case 444:
d0b80d80 4931{
4932 qtype qt = qtype_unknown ();
4933 qtype_adjustPointers (yyvsp[-1].pointers, qt);
16c024b5 4934 yyval.ntyp = idDecl_create (cstring_copy (cscannerHelp_observeLastIdentifier ()), qt);
d0b80d80 4935 ;
4936 break;}
edad9a7f 4937case 445:
d0b80d80 4938{ yyval.ntyp = yyvsp[0].ntyp; qtype_adjustPointers (yyvsp[-1].pointers, idDecl_getTyp (yyval.ntyp)); ;
4939 break;}
edad9a7f 4940case 447:
d0b80d80 4941{ yyval.ntyp = yyvsp[0].ntyp; qtype_adjustPointers (yyvsp[-1].pointers, idDecl_getTyp (yyval.ntyp)); ;
4942 break;}
edad9a7f 4943case 448:
d0b80d80 4944{ yyval.entrylist = handleParamTypeList (yyvsp[0].entrylist); ;
4945 break;}
edad9a7f 4946case 449:
d0b80d80 4947{ yyval.entrylist = handleParamIdList (yyvsp[0].entrylist); ;
4948 break;}
edad9a7f 4949case 450:
d0b80d80 4950{ yyval.typequal = qual_createConst (); ;
4951 break;}
edad9a7f 4952case 451:
d0b80d80 4953{ yyval.typequal = qual_createRestrict (); ;
4954 break;}
edad9a7f 4955case 452:
d0b80d80 4956{ yyval.typequal = qual_createVolatile (); ;
4957 break;}
edad9a7f 4958case 453:
d0b80d80 4959{ yyval.tquallist = qualList_single (yyvsp[0].typequal); ;
4960 break;}
edad9a7f 4961case 454:
d0b80d80 4962{ yyval.tquallist = qualList_add (yyvsp[-1].tquallist, yyvsp[0].typequal); ;
4963 break;}
edad9a7f 4964case 455:
d0b80d80 4965{ yyval.pointers = pointers_create (yyvsp[0].tok); ;
4966 break;}
edad9a7f 4967case 456:
d0b80d80 4968{ yyval.pointers = pointers_createMods (yyvsp[-1].tok, yyvsp[0].tquallist); ;
4969 break;}
edad9a7f 4970case 457:
d0b80d80 4971{ yyval.pointers = pointers_extend (pointers_create (yyvsp[-1].tok), yyvsp[0].pointers); ;
4972 break;}
edad9a7f 4973case 458:
d0b80d80 4974{ yyval.pointers = pointers_extend (pointers_createMods (yyvsp[-2].tok, yyvsp[-1].tquallist), yyvsp[0].pointers); ;
4975 break;}
edad9a7f 4976case 460:
d0b80d80 4977{ yyval.entrylist = uentryList_add (yyvsp[-2].entrylist, uentry_makeElipsisMarker ()); ;
4978 break;}
edad9a7f 4979case 461:
d0b80d80 4980{ yyval.entrylist = uentryList_single (uentry_makeVariableLoc (yyvsp[0].cname, ctype_int)); ;
4981 break;}
edad9a7f 4982case 462:
d0b80d80 4983{ yyval.entrylist = uentryList_add (yyvsp[-2].entrylist, uentry_makeVariableLoc (yyvsp[0].cname, ctype_int)); ;
4984 break;}
edad9a7f 4985case 463:
d0b80d80 4986{ yyval.entrylist = uentryList_single (uentry_makeElipsisMarker ()); ;
4987 break;}
edad9a7f 4988case 465:
d0b80d80 4989{ yyval.entrylist = uentryList_add (yyvsp[-2].entrylist, uentry_makeElipsisMarker ()); ;
4990 break;}
edad9a7f 4991case 466:
d0b80d80 4992{ storeLoc (); ;
4993 break;}
edad9a7f 4994case 467:
d0b80d80 4995{ yyval.entrylist = uentryList_single (yyvsp[0].oentry); ;
4996 break;}
edad9a7f 4997case 468:
d0b80d80 4998{ storeLoc (); ;
4999 break;}
edad9a7f 5000case 469:
d0b80d80 5001{ yyval.entrylist = uentryList_add (yyvsp[-3].entrylist, yyvsp[0].oentry); ;
5002 break;}
edad9a7f 5003case 470:
d0b80d80 5004{
5005 if (isFlipOldStyle ())
5006 {
5007 llparseerror (cstring_makeLiteral ("Inconsistent function parameter syntax (mixing old and new style declaration)"));
5008 }
5009 else
5010 {
5011 setNewStyle ();
5012 }
5013 yyval.oentry = makeCurrentParam (idDecl_fixParamBase (yyvsp[-1].ntyp, yyvsp[-2].qtyp));
5014 ;
5015 break;}
edad9a7f 5016case 471:
d0b80d80 5017{
5018 idDecl tparam = idDecl_create (yyvsp[0].cname, qtype_unknown ());
5019
5020 if (isNewStyle ())
5021 {
5022 llparseerror (message ("Inconsistent function parameter syntax: %q",
5023 idDecl_unparse (tparam)));
5024 }
5025
5026 setFlipOldStyle ();
5027 yyval.oentry = makeCurrentParam (tparam);
5028 idDecl_free (tparam);
5029 ;
5030 break;}
edad9a7f 5031case 473:
d0b80d80 5032{ yyval.qtyp = qtype_newBase (yyvsp[-1].qtyp, yyvsp[0].ctyp); ;
5033 break;}
edad9a7f 5034case 474:
d0b80d80 5035{ yyval.ctyp = ctype_adjustPointers (yyvsp[0].pointers, ctype_unknown); ;
5036 break;}
edad9a7f 5037case 476:
d0b80d80 5038{ yyval.ctyp = ctype_adjustPointers (yyvsp[-1].pointers, yyvsp[0].ctyp); ;
5039 break;}
edad9a7f 5040case 477:
d0b80d80 5041{ yyval.ctyp = ctype_unknown; ;
5042 break;}
edad9a7f 5043case 479:
d0b80d80 5044{ yyval.ctyp = ctype_expectFunction (yyvsp[-1].ctyp); ;
5045 break;}
edad9a7f 5046case 480:
d0b80d80 5047{ yyval.ctyp = ctype_makeArray (ctype_unknown); ;
5048 break;}
edad9a7f 5049case 481:
d0b80d80 5050{ yyval.ctyp = ctype_makeFixedArray (ctype_unknown, exprNode_getLongValue (yyvsp[-1].expr)); ;
5051 break;}
edad9a7f 5052case 482:
d0b80d80 5053{ yyval.ctyp = ctype_makeInnerArray (yyvsp[-2].ctyp); ;
5054 break;}
edad9a7f 5055case 483:
d0b80d80 5056{ yyval.ctyp = ctype_makeInnerFixedArray (yyvsp[-3].ctyp, exprNode_getLongValue (yyvsp[-1].expr)); ;
5057 break;}
edad9a7f 5058case 484:
d0b80d80 5059{ yyval.ctyp = ctype_makeFunction (ctype_unknown, uentryList_makeMissingParams ()); ;
5060 break;}
edad9a7f 5061case 485:
d0b80d80 5062{ yyval.ctyp = ctype_makeParamsFunction (ctype_unknown, yyvsp[-1].entrylist); ;
5063 break;}
edad9a7f 5064case 486:
d0b80d80 5065{ yyval.ctyp = ctype_makeFunction (yyvsp[-3].ctyp, uentryList_makeMissingParams ()); ;
5066 break;}
edad9a7f 5067case 487:
d0b80d80 5068{ yyval.ctyp = ctype_makeParamsFunction (yyvsp[-4].ctyp, yyvsp[-1].entrylist); ;
5069 break;}
909cf5eb 5070case 498:
5071{ exprNode_revealState (yyvsp[-1].expr); yyval.expr = exprNode_undefined; ;
5072 break;}
5073case 499:
d0b80d80 5074{ yyval.expr = yyvsp[0].expr; ;
5075 break;}
909cf5eb 5076case 502:
d0b80d80 5077{ yyval.expr = exprNode_concat (yyvsp[-1].expr, yyvsp[0].expr); ;
5078 break;}
909cf5eb 5079case 503:
d0b80d80 5080{ yyval.expr = exprNode_while (yyvsp[-1].expr, yyvsp[0].expr); ;
5081 break;}
909cf5eb 5082case 504:
d0b80d80 5083{ yyval.expr = exprNode_doWhile (yyvsp[-5].expr, yyvsp[-2].expr); ;
5084 break;}
909cf5eb 5085case 505:
d0b80d80 5086{ yyval.expr = exprNode_doWhile (yyvsp[-4].expr, yyvsp[-1].expr); ;
5087 break;}
909cf5eb 5088case 506:
d0b80d80 5089{ yyval.expr = exprNode_for (yyvsp[-1].expr, yyvsp[0].expr); ;
5090 break;}
909cf5eb 5091case 507:
d0b80d80 5092{ context_setProtectVars (); ;
5093 break;}
909cf5eb 5094case 508:
d0b80d80 5095{ context_sizeofReleaseVars (); ;
5096 break;}
909cf5eb 5097case 509:
d0b80d80 5098{ yyval.expr = exprNode_forPred (yyvsp[-7].expr, yyvsp[-5].expr, yyvsp[-2].expr);
5099 context_enterForClause (yyvsp[-5].expr); ;
5100 break;}
909cf5eb 5101case 510:
d0b80d80 5102{ setProcessingIterVars (yyvsp[-2].entry); ;
5103 break;}
909cf5eb 5104case 511:
d0b80d80 5105{ yyval.expr = exprNode_iterStart (yyvsp[-5].entry, yyvsp[-1].exprlist); ;
5106 break;}
909cf5eb 5107case 512:
d0b80d80 5108{ yyval.expr = exprNode_createId (yyvsp[0].entry); ;
5109 break;}
909cf5eb 5110case 516:
d0b80d80 5111{ yyval.expr = yyvsp[-1].expr; DPRINTF (("def stmt: %s", exprNode_unparse (yyval.expr))); ;
5112 break;}
909cf5eb 5113case 524:
d0b80d80 5114{ yyval.expr = yyvsp[-1].expr; ;
5115 break;}
909cf5eb 5116case 525:
d0b80d80 5117{ yyval.expr = exprNode_makeError (); ;
5118 break;}
909cf5eb 5119case 526:
d0b80d80 5120{ exprNode_checkIfPred (yyvsp[0].expr); ;
5121 break;}
909cf5eb 5122case 527:
d0b80d80 5123{ /* don't: context_exitTrueClause ($1, $2); */
5124 yyval.expr = exprNode_if (yyvsp[-2].expr, yyvsp[0].expr);
5125 ;
5126 break;}
909cf5eb 5127case 528:
d0b80d80 5128{ yyval.expr = exprNode_createTok (yyvsp[0].tok); ;
5129 break;}
909cf5eb 5130case 529:
d0b80d80 5131{ yyval.expr = exprNode_createTok (yyvsp[0].tok); ;
5132 break;}
909cf5eb 5133case 540:
edad9a7f 5134{ yyval.expr = exprNode_addParens (yyvsp[-2].tok, yyvsp[-1].expr); ;
d0b80d80 5135 break;}
909cf5eb 5136case 543:
edad9a7f 5137{ yyval.expr = exprNode_makeError (); ;
d0b80d80 5138 break;}
909cf5eb 5139case 544:
edad9a7f 5140{ yyval.expr = exprNode_labelMarker (yyvsp[-1].cname); ;
d0b80d80 5141 break;}
909cf5eb 5142case 545:
edad9a7f 5143{ yyval.expr = exprNode_notReached (yyvsp[0].expr); ;
d0b80d80 5144 break;}
909cf5eb 5145case 546:
edad9a7f 5146{ ; ;
d0b80d80 5147 break;}
909cf5eb 5148case 547:
edad9a7f 5149{ ; ;
d0b80d80 5150 break;}
909cf5eb 5151case 548:
e5081f8c 5152{ context_enterCaseClause (yyvsp[0].expr); ;
d0b80d80 5153 break;}
909cf5eb 5154case 549:
edad9a7f 5155{ yyval.expr = exprNode_caseMarker (yyvsp[-2].expr, FALSE); ;
d0b80d80 5156 break;}
909cf5eb 5157case 550:
edad9a7f 5158{ context_enterCaseClause (yyvsp[0].expr); ;
d0b80d80 5159 break;}
909cf5eb 5160case 551:
edad9a7f 5161{ yyval.expr = exprNode_caseMarker (yyvsp[-2].expr, TRUE); ;
d0b80d80 5162 break;}
909cf5eb 5163case 552:
e5081f8c 5164{ context_enterCaseClause (exprNode_undefined); ;
d0b80d80 5165 break;}
909cf5eb 5166case 553:
edad9a7f 5167{ yyval.expr = exprNode_defaultMarker (yyvsp[-2].tok, FALSE); ;
d0b80d80 5168 break;}
909cf5eb 5169case 554:
edad9a7f 5170{ context_enterCaseClause (exprNode_undefined); ;
d0b80d80 5171 break;}
909cf5eb 5172case 555:
edad9a7f 5173{ yyval.expr = exprNode_defaultMarker (yyvsp[-2].tok, TRUE); ;
d0b80d80 5174 break;}
909cf5eb 5175case 556:
e5081f8c 5176{ yyval.expr = yyvsp[-1].expr; ;
d0b80d80 5177 break;}
909cf5eb 5178case 557:
edad9a7f 5179{ yyval.expr = yyvsp[0].expr; context_exitInner (yyvsp[0].expr); ;
d0b80d80 5180 break;}
909cf5eb 5181case 558:
edad9a7f 5182{ yyval.expr = yyvsp[-1].expr; ;
d0b80d80 5183 break;}
909cf5eb 5184case 559:
edad9a7f 5185{ context_enterInnerContext (); ;
d0b80d80 5186 break;}
909cf5eb 5187case 560:
edad9a7f 5188{ context_exitInnerPlain (); ;
d0b80d80 5189 break;}
909cf5eb 5190case 561:
edad9a7f 5191{ context_enterStructInnerContext (); ;
d0b80d80 5192 break;}
909cf5eb 5193case 562:
edad9a7f 5194{ context_exitStructInnerContext (); ;
d0b80d80 5195 break;}
909cf5eb 5196case 563:
edad9a7f 5197{ context_exitInnerSafe (); ;
d0b80d80 5198 break;}
909cf5eb 5199case 564:
edad9a7f 5200{ yyval.expr = exprNode_createTok (yyvsp[0].tok); ;
d0b80d80 5201 break;}
909cf5eb 5202case 565:
edad9a7f 5203{ yyval.expr = exprNode_notReached (exprNode_createTok (yyvsp[0].tok)); ;
d0b80d80 5204 break;}
909cf5eb 5205case 566:
e5081f8c 5206{ yyval.expr = exprNode_updateLocation (yyvsp[-1].expr, lltok_getLoc (yyvsp[0].tok)); ;
d0b80d80 5207 break;}
909cf5eb 5208case 567:
e5081f8c 5209{ yyval.expr = exprNode_notReached (exprNode_updateLocation (yyvsp[-2].expr, lltok_getLoc (yyvsp[0].tok))); ;
2f2892c2 5210 break;}
909cf5eb 5211case 568:
edad9a7f 5212{ yyval.expr = exprNode_updateLocation (yyvsp[-1].expr, lltok_getLoc (yyvsp[0].tok)); ;
e5081f8c 5213 break;}
909cf5eb 5214case 569:
edad9a7f 5215{ yyval.expr = exprNode_notReached (exprNode_updateLocation (yyvsp[-2].expr, lltok_getLoc (yyvsp[0].tok))); ;
5216 break;}
909cf5eb 5217case 570:
edad9a7f 5218{ yyval.expr = exprNode_updateLocation (exprNode_concat (yyvsp[-2].expr, yyvsp[-1].expr), lltok_getLoc (yyvsp[0].tok)); ;
5219 break;}
909cf5eb 5220case 571:
d0b80d80 5221{ yyval.expr = exprNode_notReached (exprNode_updateLocation (exprNode_concat (yyvsp[-3].expr, yyvsp[-2].expr),
5222 lltok_getLoc (yyvsp[-1].tok)));
5223 ;
5224 break;}
909cf5eb 5225case 572:
e5081f8c 5226{ yyval.expr = exprNode_makeBlock (yyvsp[0].expr); ;
d0b80d80 5227 break;}
909cf5eb 5228case 573:
e5081f8c 5229{ yyval.expr = exprNode_createTok (yyvsp[0].tok); ;
d0b80d80 5230 break;}
909cf5eb 5231case 574:
2f2892c2 5232{ yyval.expr = exprNode_updateLocation (yyvsp[-1].expr, lltok_getLoc (yyvsp[0].tok)); ;
5233 break;}
909cf5eb 5234case 575:
e5081f8c 5235{ yyval.expr = exprNode_updateLocation (yyvsp[-1].expr, lltok_getLoc (yyvsp[0].tok)); ;
5236 break;}
909cf5eb 5237case 576:
edad9a7f 5238{ yyval.expr = exprNode_updateLocation (exprNode_concat (yyvsp[-2].expr, yyvsp[-1].expr), lltok_getLoc (yyvsp[0].tok)); ;
d0b80d80 5239 break;}
909cf5eb 5240case 578:
d0b80d80 5241{ yyval.expr = exprNode_concat (yyvsp[-1].expr, yyvsp[0].expr); ;
5242 break;}
909cf5eb 5243case 579:
d0b80d80 5244{ yyval.expr = yyvsp[0].expr; ;
5245 break;}
909cf5eb 5246case 580:
edad9a7f 5247{ yyval.expr = exprNode_concat (yyvsp[-1].expr, yyvsp[0].expr); ;
d0b80d80 5248 break;}
909cf5eb 5249case 581:
d0b80d80 5250{ yyval.expr = yyvsp[0].expr; ;
5251 break;}
909cf5eb 5252case 582:
edad9a7f 5253{ yyval.expr = exprNode_concat (yyvsp[-2].expr, yyvsp[0].expr); ;
d0b80d80 5254 break;}
909cf5eb 5255case 583:
d0b80d80 5256{ yyval.expr = yyvsp[0].expr; ;
5257 break;}
909cf5eb 5258case 584:
edad9a7f 5259{ yyval.expr = yyvsp[-2].expr; ;
d0b80d80 5260 break;}
909cf5eb 5261case 585:
edad9a7f 5262{ yyval.expr = yyvsp[0].expr; ;
d0b80d80 5263 break;}
909cf5eb 5264case 586:
edad9a7f 5265{ yyval.expr = exprNode_concat (yyvsp[-1].expr, yyvsp[0].expr); ;
d0b80d80 5266 break;}
909cf5eb 5267case 587:
d0b80d80 5268{ yyval.expr = exprNode_createTok (yyvsp[0].tok); ;
5269 break;}
909cf5eb 5270case 588:
d0b80d80 5271{ yyval.expr = exprNode_statement (yyvsp[-1].expr, yyvsp[0].tok); ;
5272 break;}
909cf5eb 5273case 589:
edad9a7f 5274{ yyval.expr = exprNode_createTok (yyvsp[0].tok); ;
d0b80d80 5275 break;}
909cf5eb 5276case 590:
edad9a7f 5277{ yyval.expr = exprNode_statement (yyvsp[-1].expr, yyvsp[0].tok); ;
5278 break;}
909cf5eb 5279case 591:
edad9a7f 5280{ yyval.expr = exprNode_checkExpr (yyvsp[0].expr); ;
5281 break;}
909cf5eb 5282case 592:
d0b80d80 5283{
5284 exprNode_produceGuards (yyvsp[-1].expr); context_enterTrueClause (yyvsp[-1].expr);
5285 exprNode_checkIfPred (yyvsp[-1].expr);
5286 yyval.expr = yyvsp[-1].expr;
5287 ;
5288 break;}
909cf5eb 5289case 593:
d0b80d80 5290{
5291 context_exitTrueClause (yyvsp[-1].expr, yyvsp[0].expr);
5292 yyval.expr = exprNode_if (yyvsp[-1].expr, yyvsp[0].expr);
5293 ;
5294 break;}
909cf5eb 5295case 594:
d0b80d80 5296{ context_enterFalseClause (yyvsp[-2].expr); ;
5297 break;}
909cf5eb 5298case 595:
d0b80d80 5299{
5300 context_exitClause (yyvsp[-4].expr, yyvsp[-3].expr, yyvsp[0].expr);
5301 yyval.expr = exprNode_ifelse (yyvsp[-4].expr, yyvsp[-3].expr, yyvsp[0].expr);
5302 ;
5303 break;}
909cf5eb 5304case 596:
d0b80d80 5305{ context_enterSwitch (yyvsp[0].expr); ;
5306 break;}
909cf5eb 5307case 597:
d0b80d80 5308{ yyval.expr = exprNode_switch (yyvsp[-3].expr, yyvsp[0].expr); ;
5309 break;}
909cf5eb 5310case 598:
d0b80d80 5311{ yyval.expr = exprNode_whilePred (yyvsp[-1].expr); context_enterWhileClause (yyvsp[-1].expr); ;
5312 break;}
909cf5eb 5313case 599:
d0b80d80 5314{ yyval.expr = exprNode_whilePred(yyvsp[-1].expr); ;
5315 break;}
909cf5eb 5316case 600:
d0b80d80 5317{ context_enterIterClause (); ;
5318 break;}
909cf5eb 5319case 601:
d0b80d80 5320{ setProcessingIterVars (yyvsp[-3].entry); ;
5321 break;}
909cf5eb 5322case 602:
d0b80d80 5323{
5324 yyval.expr = exprNode_iter (yyvsp[-9].entry, yyvsp[-4].exprlist, yyvsp[-2].expr, yyvsp[-1].entry);
5325
5326 ;
5327 break;}
909cf5eb 5328case 603:
d0b80d80 5329{ yyval.exprlist = exprNodeList_singleton (yyvsp[0].expr); ;
5330 break;}
909cf5eb 5331case 604:
d0b80d80 5332{ nextIterParam (); ;
5333 break;}
909cf5eb 5334case 605:
d0b80d80 5335{ yyval.exprlist = exprNodeList_push (yyvsp[-3].exprlist, yyvsp[0].expr); ;
5336 break;}
909cf5eb 5337case 606:
d0b80d80 5338{ yyval.expr = exprNode_iterExpr (yyvsp[0].expr); ;
5339 break;}
909cf5eb 5340case 607:
d0b80d80 5341{ yyval.expr = exprNode_iterId (yyvsp[0].entry); ;
5342 break;}
909cf5eb 5343case 608:
16c024b5 5344{ uentry ue = cscannerHelp_coerceIterId (yyvsp[0].cname);
d0b80d80 5345
5346 if (uentry_isValid (ue))
5347 {
5348 yyval.expr = exprNode_iterId (ue);
5349 }
5350 else
5351 {
16c024b5 5352 yyval.expr = exprNode_iterNewId (cstring_copy (cscannerHelp_observeLastIdentifier ()));
d0b80d80 5353 }
5354 ;
5355 break;}
909cf5eb 5356case 609:
d0b80d80 5357{ yyval.expr = exprNode_iterNewId (yyvsp[0].cname); ;
5358 break;}
909cf5eb 5359case 611:
d0b80d80 5360{ yyval.expr = exprNode_combineLiterals (yyvsp[-1].expr, yyvsp[0].expr); ;
5361 break;}
909cf5eb 5362case 613:
d0b80d80 5363{ yyval.expr = exprNode_addParens (yyvsp[-2].tok, yyvsp[-1].expr); ;
5364 break;}
909cf5eb 5365case 615:
e5081f8c 5366{ yyval.expr = exprNode_arrayFetch (yyvsp[-3].expr, yyvsp[-1].expr); ;
d0b80d80 5367 break;}
909cf5eb 5368case 616:
e5081f8c 5369{ yyval.expr = exprNode_functionCall (yyvsp[-2].expr, exprNodeList_new ()); ;
d0b80d80 5370 break;}
909cf5eb 5371case 617:
e5081f8c 5372{ yyval.expr = exprNode_functionCall (yyvsp[-3].expr, yyvsp[-1].exprlist); ;
d0b80d80 5373 break;}
909cf5eb 5374case 618:
e5081f8c 5375{ yyval.expr = exprNode_vaArg (yyvsp[-5].tok, yyvsp[-3].expr, yyvsp[-1].qtyp); ;
d0b80d80 5376 break;}
909cf5eb 5377case 619:
e5081f8c 5378{ yyval.expr = exprNode_fieldAccess (yyvsp[-4].expr, yyvsp[-2].tok, yyvsp[-1].cname); ;
d0b80d80 5379 break;}
909cf5eb 5380case 620:
e5081f8c 5381{ yyval.expr = exprNode_arrowAccess (yyvsp[-4].expr, yyvsp[-2].tok, yyvsp[-1].cname); ;
d0b80d80 5382 break;}
3dabb077 5383case 621:
909cf5eb 5384{ yyval.expr = exprNode_postOp (yyvsp[-1].expr, yyvsp[0].tok); ;
d0b80d80 5385 break;}
3dabb077 5386case 622:
909cf5eb 5387{ yyval.expr = exprNode_postOp (yyvsp[-1].expr, yyvsp[0].tok); ;
d0b80d80 5388 break;}
3dabb077 5389case 624:
d0b80d80 5390{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
5391 break;}
3dabb077 5392case 625:
2f2892c2 5393{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
5394 break;}
3dabb077 5395case 626:
e5081f8c 5396{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
5397 break;}
5398case 627:
edad9a7f 5399{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
5400 break;}
5401case 628:
5402{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5403 break;}
e5081f8c 5404case 629:
909cf5eb 5405{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
5406 break;}
5407case 630:
5408{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5409 break;}
3dabb077 5410case 631:
909cf5eb 5411{ yyval.expr = exprNode_preOp (yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5412 break;}
909cf5eb 5413case 632:
5414{ yyval.expr = yyvsp[0].expr; ;
d0b80d80 5415 break;}
edad9a7f 5416case 634:
909cf5eb 5417{ yyval.expr = exprNode_cast (yyvsp[-3].tok, yyvsp[0].expr, yyvsp[-2].qtyp); ;
d0b80d80 5418 break;}
909cf5eb 5419case 636:
d0b80d80 5420{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5421 break;}
edad9a7f 5422case 637:
d0b80d80 5423{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5424 break;}
2f2892c2 5425case 638:
d0b80d80 5426{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5427 break;}
edad9a7f 5428case 640:
d0b80d80 5429{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5430 break;}
2f2892c2 5431case 641:
d0b80d80 5432{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5433 break;}
2f2892c2 5434case 643:
d0b80d80 5435{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5436 break;}
e5081f8c 5437case 644:
edad9a7f 5438{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5439 break;}
909cf5eb 5440case 646:
d0b80d80 5441{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5442 break;}
909cf5eb 5443case 647:
d0b80d80 5444{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5445 break;}
edad9a7f 5446case 648:
d0b80d80 5447{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5448 break;}
e5081f8c 5449case 649:
2f2892c2 5450{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5451 break;}
e5081f8c 5452case 651:
3dabb077 5453{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5454 break;}
909cf5eb 5455case 652:
3dabb077 5456{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5457 break;}
909cf5eb 5458case 654:
3dabb077 5459{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5460 break;}
909cf5eb 5461case 656:
e5081f8c 5462{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5463 break;}
909cf5eb 5464case 658:
edad9a7f 5465{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
5466 break;}
909cf5eb 5467case 660:
5468{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5469 break;}
edad9a7f 5470case 662:
909cf5eb 5471{ yyval.expr = exprNode_op (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5472 break;}
909cf5eb 5473case 664:
5474{ context_enterTrueClause (yyvsp[-1].expr); ;
d0b80d80 5475 break;}
5476case 665:
909cf5eb 5477{ context_enterFalseClause (yyvsp[-4].expr); ;
d0b80d80 5478 break;}
5479case 666:
909cf5eb 5480{ yyval.expr = exprNode_cond (yyvsp[-6].expr, yyvsp[-3].expr, yyvsp[0].expr); ;
d0b80d80 5481 break;}
5482case 668:
3dabb077 5483{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5484 break;}
5485case 669:
3dabb077 5486{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5487 break;}
5488case 670:
3dabb077 5489{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5490 break;}
5491case 671:
3dabb077 5492{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5493 break;}
5494case 672:
3dabb077 5495{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5496 break;}
5497case 673:
e5081f8c 5498{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5499 break;}
5500case 674:
edad9a7f 5501{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5502 break;}
5503case 675:
edad9a7f 5504{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5505 break;}
5506case 676:
909cf5eb 5507{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5508 break;}
5509case 677:
909cf5eb 5510{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5511 break;}
5512case 678:
909cf5eb 5513{ yyval.expr = exprNode_assign (yyvsp[-2].expr, yyvsp[0].expr, yyvsp[-1].tok); ;
d0b80d80 5514 break;}
5515case 679:
909cf5eb 5516{ yyval.entry = yyvsp[0].entry; ;
d0b80d80 5517 break;}
5518case 680:
909cf5eb 5519{ yyval.entry = uentry_undefined; ;
d0b80d80 5520 break;}
5521case 681:
909cf5eb 5522{ context_enterDoWhileClause (); yyval.tok = yyvsp[0].tok; ;
d0b80d80 5523 break;}
5524case 682:
edad9a7f 5525{ yyval.expr = exprNode_while (yyvsp[-1].expr, yyvsp[0].expr); context_exitWhileClause (yyvsp[-1].expr, yyvsp[0].expr); ;
d0b80d80 5526 break;}
5527case 683:
edad9a7f 5528{ yyval.expr = exprNode_statement (exprNode_doWhile (yyvsp[-5].expr, yyvsp[-2].expr), yyvsp[0].tok); ;
d0b80d80 5529 break;}
5530case 684:
909cf5eb 5531{ yyval.expr = exprNode_for (yyvsp[-1].expr, yyvsp[0].expr); context_exitForClause (yyvsp[-1].expr, yyvsp[0].expr); ;
d0b80d80 5532 break;}
5533case 685:
909cf5eb 5534{ yyval.expr = exprNode_while (yyvsp[-1].expr, yyvsp[0].expr); context_exitWhileClause (yyvsp[-1].expr, yyvsp[0].expr); ;
d0b80d80 5535 break;}
5536case 686:
909cf5eb 5537{ yyval.expr = exprNode_statement (exprNode_doWhile (yyvsp[-5].expr, yyvsp[-2].expr), yyvsp[0].tok); ;
2f2892c2 5538 break;}
5539case 687:
909cf5eb 5540{ yyval.expr = exprNode_doWhile (yyvsp[-4].expr, yyvsp[-1].expr); ;
3dabb077 5541 break;}
5542case 688:
909cf5eb 5543{ yyval.expr = exprNode_for (yyvsp[-1].expr, yyvsp[0].expr); context_exitForClause (yyvsp[-1].expr, yyvsp[0].expr); ;
d0b80d80 5544 break;}
2f2892c2 5545case 689:
909cf5eb 5546{ yyval.expr = exprNode_goto (yyvsp[-1].cname); ;
3dabb077 5547 break;}
5548case 690:
909cf5eb 5549{ yyval.expr = exprNode_continue (yyvsp[-1].tok, BADTOK); ;
d0b80d80 5550 break;}
2f2892c2 5551case 691:
909cf5eb 5552{ yyval.expr = exprNode_continue (yyvsp[-2].tok, QINNERCONTINUE); ;
3dabb077 5553 break;}
5554case 692:
909cf5eb 5555{ yyval.expr = exprNode_break (yyvsp[-1].tok, BADTOK); ;
e5081f8c 5556 break;}
5557case 693:
909cf5eb 5558{ yyval.expr = exprNode_break (yyvsp[-1].tok, QSWITCHBREAK); ;
edad9a7f 5559 break;}
5560case 694:
909cf5eb 5561{ yyval.expr = exprNode_break (yyvsp[-1].tok, QLOOPBREAK); ;
d0b80d80 5562 break;}
e5081f8c 5563case 695:
909cf5eb 5564{ yyval.expr = exprNode_break (yyvsp[-1].tok, QINNERBREAK); ;
5565 break;}
5566case 696:
5567{ yyval.expr = exprNode_break (yyvsp[-1].tok, QSAFEBREAK); ;
3dabb077 5568 break;}
e5081f8c 5569case 697:
909cf5eb 5570{ yyval.expr = exprNode_nullReturn (yyvsp[-1].tok); ;
5571 break;}
5572case 698:
5573{ yyval.expr = exprNode_return (yyvsp[-1].expr); ;
3dabb077 5574 break;}
909cf5eb 5575case 700:
edad9a7f 5576{ ; ;
5577 break;}
5578case 702:
909cf5eb 5579{ ; ;
5580 break;}
5581case 705:
d0b80d80 5582{ yyval.cname = uentry_getName (yyvsp[0].entry); ;
5583 break;}
909cf5eb 5584case 706:
2f2892c2 5585{ yyval.cname = uentry_getName (yyvsp[0].entry); ;
5586 break;}
909cf5eb 5587case 707:
e5081f8c 5588{ yyval.cname = uentry_getName (yyvsp[0].entry); ;
5589 break;}
909cf5eb 5590case 708:
d0b80d80 5591{ yyval.cname = yyvsp[0].cname; ;
5592 break;}
909cf5eb 5593case 710:
d0b80d80 5594{ yyval.ctyp = ctype_unknown; ;
5595 break;}
909cf5eb 5596case 711:
d0b80d80 5597{ yyval.ctyp = exprNode_getType (yyvsp[-1].expr); exprNode_free (yyvsp[-1].expr); ;
5598 break;}
909cf5eb 5599case 712:
d0b80d80 5600{ yyval.ctyp = qtype_getType (yyvsp[-1].qtyp); ;
5601 break;}
5602}
5603
5604
5605\f
5606 yyvsp -= yylen;
5607 yyssp -= yylen;
5608#if YYLSP_NEEDED
5609 yylsp -= yylen;
5610#endif
5611
5612#if YYDEBUG
5613 if (yydebug)
5614 {
5615 short *yyssp1 = yyss - 1;
5616 YYFPRINTF (stderr, "state stack now");
5617 while (yyssp1 != yyssp)
5618 YYFPRINTF (stderr, " %d", *++yyssp1);
5619 YYFPRINTF (stderr, "\n");
5620 }
5621#endif
5622
5623 *++yyvsp = yyval;
5624#if YYLSP_NEEDED
5625 *++yylsp = yyloc;
5626#endif
5627
5628 /* Now `shift' the result of the reduction. Determine what state
5629 that goes to, based on the state we popped back to and the rule
5630 number reduced by. */
5631
5632 yyn = yyr1[yyn];
5633
5634 yystate = yypgoto[yyn - YYNTBASE] + *yyssp;
5635 if (yystate >= 0 && yystate <= YYLAST && yycheck[yystate] == *yyssp)
5636 yystate = yytable[yystate];
5637 else
5638 yystate = yydefgoto[yyn - YYNTBASE];
5639
5640 goto yynewstate;
5641
5642
5643/*------------------------------------.
5644| yyerrlab -- here on detecting error |
5645`------------------------------------*/
5646yyerrlab:
5647 /* If not already recovering from an error, report this error. */
5648 if (!yyerrstatus)
5649 {
5650 ++yynerrs;
5651
5652#ifdef YYERROR_VERBOSE
5653 yyn = yypact[yystate];
5654
5655 if (yyn > YYFLAG && yyn < YYLAST)
5656 {
5657 YYSIZE_T yysize = 0;
5658 char *yymsg;
5659 int yyx, yycount;
5660
5661 yycount = 0;
5662 /* Start YYX at -YYN if negative to avoid negative indexes in
5663 YYCHECK. */
5664 for (yyx = yyn < 0 ? -yyn : 0;
5665 yyx < (int) (sizeof (yytname) / sizeof (char *)); yyx++)
5666 if (yycheck[yyx + yyn] == yyx)
5667 yysize += yystrlen (yytname[yyx]) + 15, yycount++;
5668 yysize += yystrlen ("parse error, unexpected ") + 1;
5669 yysize += yystrlen (yytname[YYTRANSLATE (yychar)]);
5670 yymsg = (char *) YYSTACK_ALLOC (yysize);
5671 if (yymsg != 0)
5672 {
5673 char *yyp = yystpcpy (yymsg, "parse error, unexpected ");
5674 yyp = yystpcpy (yyp, yytname[YYTRANSLATE (yychar)]);
5675
5676 if (yycount < 5)
5677 {
5678 yycount = 0;
5679 for (yyx = yyn < 0 ? -yyn : 0;
5680 yyx < (int) (sizeof (yytname) / sizeof (char *));
5681 yyx++)
5682 if (yycheck[yyx + yyn] == yyx)
5683 {
5684 const char *yyq = ! yycount ? ", expecting " : " or ";
5685 yyp = yystpcpy (yyp, yyq);
5686 yyp = yystpcpy (yyp, yytname[yyx]);
5687 yycount++;
5688 }
5689 }
5690 yyerror (yymsg);
5691 YYSTACK_FREE (yymsg);
5692 }
5693 else
5694 yyerror ("parse error; also virtual memory exhausted");
5695 }
5696 else
5697#endif /* defined (YYERROR_VERBOSE) */
5698 yyerror ("parse error");
5699 }
5700 goto yyerrlab1;
5701
5702
5703/*--------------------------------------------------.
5704| yyerrlab1 -- error raised explicitly by an action |
5705`--------------------------------------------------*/
5706yyerrlab1:
5707 if (yyerrstatus == 3)
5708 {
5709 /* If just tried and failed to reuse lookahead token after an
5710 error, discard it. */
5711
5712 /* return failure if at end of input */
5713 if (yychar == YYEOF)
5714 YYABORT;
5715 YYDPRINTF ((stderr, "Discarding token %d (%s).\n",
5716 yychar, yytname[yychar1]));
5717 yychar = YYEMPTY;
5718 }
5719
5720 /* Else will try to reuse lookahead token after shifting the error
5721 token. */
5722
5723 yyerrstatus = 3; /* Each real token shifted decrements this */
5724
5725 goto yyerrhandle;
5726
5727
5728/*-------------------------------------------------------------------.
5729| yyerrdefault -- current state does not do anything special for the |
5730| error token. |
5731`-------------------------------------------------------------------*/
5732yyerrdefault:
5733#if 0
5734 /* This is wrong; only states that explicitly want error tokens
5735 should shift them. */
5736
5737 /* If its default is to accept any token, ok. Otherwise pop it. */
5738 yyn = yydefact[yystate];
5739 if (yyn)
5740 goto yydefault;
5741#endif
5742
5743
5744/*---------------------------------------------------------------.
5745| yyerrpop -- pop the current state because it cannot handle the |
5746| error token |
5747`---------------------------------------------------------------*/
5748yyerrpop:
5749 if (yyssp == yyss)
5750 YYABORT;
5751 yyvsp--;
5752 yystate = *--yyssp;
5753#if YYLSP_NEEDED
5754 yylsp--;
5755#endif
5756
5757#if YYDEBUG
5758 if (yydebug)
5759 {
5760 short *yyssp1 = yyss - 1;
5761 YYFPRINTF (stderr, "Error: state stack now");
5762 while (yyssp1 != yyssp)
5763 YYFPRINTF (stderr, " %d", *++yyssp1);
5764 YYFPRINTF (stderr, "\n");
5765 }
5766#endif
5767
5768/*--------------.
5769| yyerrhandle. |
5770`--------------*/
5771yyerrhandle:
5772 yyn = yypact[yystate];
5773 if (yyn == YYFLAG)
5774 goto yyerrdefault;
5775
5776 yyn += YYTERROR;
5777 if (yyn < 0 || yyn > YYLAST || yycheck[yyn] != YYTERROR)
5778 goto yyerrdefault;
5779
5780 yyn = yytable[yyn];
5781 if (yyn < 0)
5782 {
5783 if (yyn == YYFLAG)
5784 goto yyerrpop;
5785 yyn = -yyn;
5786 goto yyreduce;
5787 }
5788 else if (yyn == 0)
5789 goto yyerrpop;
5790
5791 if (yyn == YYFINAL)
5792 YYACCEPT;
5793
5794 YYDPRINTF ((stderr, "Shifting error token, "));
5795
5796 *++yyvsp = yylval;
5797#if YYLSP_NEEDED
5798 *++yylsp = yylloc;
5799#endif
5800
5801 yystate = yyn;
5802 goto yynewstate;
5803
5804
5805/*-------------------------------------.
5806| yyacceptlab -- YYACCEPT comes here. |
5807`-------------------------------------*/
5808yyacceptlab:
5809 yyresult = 0;
5810 goto yyreturn;
5811
5812/*-----------------------------------.
5813| yyabortlab -- YYABORT comes here. |
5814`-----------------------------------*/
5815yyabortlab:
5816 yyresult = 1;
5817 goto yyreturn;
5818
5819/*---------------------------------------------.
5820| yyoverflowab -- parser overflow comes here. |
5821`---------------------------------------------*/
5822yyoverflowlab:
5823 yyerror ("parser stack overflow");
5824 yyresult = 2;
5825 /* Fall through. */
5826
5827yyreturn:
5828#ifndef yyoverflow
5829 if (yyss != yyssa)
5830 YYSTACK_FREE (yyss);
5831#endif
5832 return yyresult;
5833}
5834
5835
5836/*@-redecl@*/ /*@-namechecks@*/
5837extern char *yytext;
5838/*@=redecl@*/ /*@=namechecks@*/
5839
5840# include "bison.reset"
5841
5842void yyerror (/*@unused@*/ char *s)
5843{
5844 static bool givehint = FALSE;
5845
5846 if (context_inIterDef ())
5847 {
5848 llerror (FLG_SYNTAX, message ("Iter syntax not parseable: %s",
5849 context_inFunctionName ()));
5850 }
5851 else if (context_inIterEnd ())
5852 {
5853 llerror (FLG_SYNTAX, message ("Iter finalizer syntax not parseable: %s",
5854 context_inFunctionName ()));
5855 }
5856 else if (context_inMacro ())
5857 {
5858 llerror (FLG_SYNTAX, message ("Macro syntax not parseable: %s",
5859 context_inFunctionName ()));
5860
5861 if (context_inUnknownMacro ())
5862 {
5863 if (!givehint)
5864 {
5865 llhint (cstring_makeLiteral
5866 ("Precede macro definition with /*@notfunction@*/ "
5867 "to suppress checking and force expansion"));
5868 givehint = TRUE;
5869 }
5870 }
5871
16c024b5 5872 cscannerHelp_swallowMacro ();
d0b80d80 5873 context_exitAllClausesQuiet ();
5874 }
5875 else
5876 {
5877 llparseerror (cstring_undefined);
5878 }
5879}
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
c05aefaa 5892/*
5893** Resets all flags in bison.head
5894*/
5895
885824d3 5896
c05aefaa 5897/*@=allmacros@*/
5898/*@=boolint@*/
5899/*@=charint@*/
5900/*@=macroparams@*/
5901/*@=macroundef@*/
5902/*@=unreachable@*/
5903/*@=macrospec@*/
5904/*@=varuse@*/
5905/*@=ignorequals@*/
5906/*@=macrostmt@*/
5907/*@=noeffect@*/
5908/*@=shadow@*/
5909/*@=exitarg@*/
5910/*@=macroredef@*/
5911/*@=uniondef@*/
5912/*@=compdef@*/
5913/*@=matchfields@*/
5914/*@=exportlocal@*/
5915/*@=evalorderuncon@*/
5916/*@=exportheader@*/
5917/*@=typeuse@*/
5918/*@=redecl@*/
5919/*@=redef@*/
5920/*@=noparams@*/
5921/*@=ansireserved@*/
5922/*@=fielduse@*/
5923/*@=ifblock@*/
5924/*@=elseifcomplete@*/
5925/*@=whileblock@*/
5926/*@=forblock@*/
5927/*@=branchstate@*/
5928/*@=readonlytrans@*/
5929/*@=namechecks@*/
5930/*@=usedef@*/
5931/*@=systemunrecog@*/
5932/*@=dependenttrans@*/
5933/*@=unqualifiedtrans@*/
5934/*@=declundef@*/
5935
5936
5937/*drl added 11/27/2001*/
bb7c2085 5938/*@=bounds@*/
1d91681f 5939
5940/*drl added 12/11/2002*/
5941/*@=type@*/
This page took 1.090666 seconds and 5 git commands to generate.