]> andersk Git - splint.git/blame - src/cgrammar.c.der
*** empty log message ***
[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
a9ec3280 55/*@-enummemuse@*/
56
885824d3 57/* < end of bison.head > */
58
08cf8642 59/* A Bison parser, made by GNU Bison 2.3. */
60
61/* Skeleton implementation for Bison's Yacc-like parsers in C
62
63 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
64 Free Software Foundation, Inc.
65
66 This program is free software; you can redistribute it and/or modify
67 it under the terms of the GNU General Public License as published by
68 the Free Software Foundation; either version 2, or (at your option)
69 any later version.
70
71 This program is distributed in the hope that it will be useful,
72 but WITHOUT ANY WARRANTY; without even the implied warranty of
73 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
74 GNU General Public License for more details.
75
76 You should have received a copy of the GNU General Public License
77 along with this program; if not, write to the Free Software
78 Foundation, Inc., 51 Franklin Street, Fifth Floor,
79 Boston, MA 02110-1301, USA. */
80
81/* As a special exception, you may create a larger work that contains
82 part or all of the Bison parser skeleton and distribute that work
83 under terms of your choice, so long as that work isn't itself a
84 parser generator using the skeleton or a modified version thereof
85 as a parser skeleton. Alternatively, if you modify or redistribute
86 the parser skeleton itself, you may (at your option) remove this
87 special exception, which will cause the skeleton and the resulting
88 Bison output files to be licensed under the GNU General Public
89 License without this special exception.
90
91 This special exception was added by the Free Software Foundation in
92 version 2.2 of Bison. */
93
94/* C LALR(1) parser skeleton written by Richard Stallman, by
95 simplifying the original so-called "semantic" parser. */
96
97/* All symbols defined below should begin with yy or YY, to avoid
98 infringing on user name space. This should be done even for local
99 variables, as they might otherwise be expanded by user macros.
100 There are some unavoidable exceptions within include files to
101 define necessary library symbols; they are noted "INFRINGES ON
102 USER NAME SPACE" below. */
103
104/* Identify Bison output. */
105#define YYBISON 1
106
107/* Bison version. */
108#define YYBISON_VERSION "2.3"
109
110/* Skeleton name. */
111#define YYSKELETON_NAME "yacc.c"
112
113/* Pure parsers. */
114#define YYPURE 0
115
116/* Using locations. */
117#define YYLSP_NEEDED 0
118
119
120
121/* Tokens. */
122#ifndef YYTOKENTYPE
123# define YYTOKENTYPE
124 /* Put the tokens into the symbol table, so that GDB and other debuggers
125 know about them. */
126 enum yytokentype {
127 BADTOK = 258,
128 SKIPTOK = 259,
129 CTOK_ELIPSIS = 260,
130 CASE = 261,
131 DEFAULT = 262,
132 CIF = 263,
133 CELSE = 264,
134 SWITCH = 265,
135 WHILE = 266,
136 DO = 267,
137 CFOR = 268,
138 GOTO = 269,
139 CONTINUE = 270,
140 BREAK = 271,
141 RETURN = 272,
142 TSEMI = 273,
143 TLBRACE = 274,
144 TRBRACE = 275,
145 TCOMMA = 276,
146 TCOLON = 277,
147 TASSIGN = 278,
148 TLPAREN = 279,
149 TRPAREN = 280,
150 TLSQBR = 281,
151 TRSQBR = 282,
152 TDOT = 283,
153 TAMPERSAND = 284,
154 TEXCL = 285,
155 TTILDE = 286,
156 TMINUS = 287,
157 TPLUS = 288,
158 TMULT = 289,
159 TDIV = 290,
160 TPERCENT = 291,
161 TLT = 292,
162 TGT = 293,
163 TCIRC = 294,
164 TBAR = 295,
165 TQUEST = 296,
166 CSIZEOF = 297,
167 CALIGNOF = 298,
168 CTYPEOF = 299,
169 ARROW_OP = 300,
170 CTYPEDEF = 301,
171 COFFSETOF = 302,
172 INC_OP = 303,
173 DEC_OP = 304,
174 LEFT_OP = 305,
175 RIGHT_OP = 306,
176 LE_OP = 307,
177 GE_OP = 308,
178 EQ_OP = 309,
179 NE_OP = 310,
180 AND_OP = 311,
181 OR_OP = 312,
182 MUL_ASSIGN = 313,
183 DIV_ASSIGN = 314,
184 MOD_ASSIGN = 315,
185 ADD_ASSIGN = 316,
186 SUB_ASSIGN = 317,
187 LEFT_ASSIGN = 318,
188 RIGHT_ASSIGN = 319,
189 AND_ASSIGN = 320,
190 XOR_ASSIGN = 321,
191 OR_ASSIGN = 322,
192 CSTRUCT = 323,
193 CUNION = 324,
194 CENUM = 325,
195 VA_ARG = 326,
196 VA_DCL = 327,
197 QWARN = 328,
198 QGLOBALS = 329,
199 QMODIFIES = 330,
200 QNOMODS = 331,
201 QCONSTANT = 332,
202 QFUNCTION = 333,
203 QITER = 334,
204 QDEFINES = 335,
205 QUSES = 336,
206 QALLOCATES = 337,
207 QSETS = 338,
208 QRELEASES = 339,
209 QPRECLAUSE = 340,
210 QPOSTCLAUSE = 341,
211 QINVARIANT = 342,
212 QALT = 343,
213 QUNDEF = 344,
214 QKILLED = 345,
215 QENDMACRO = 346,
216 LLMACRO = 347,
217 LLMACROITER = 348,
218 LLMACROEND = 349,
219 TENDMACRO = 350,
220 QDREVEALSTATE = 351,
221 QSWITCHBREAK = 352,
222 QLOOPBREAK = 353,
223 QINNERBREAK = 354,
224 QSAFEBREAK = 355,
225 QINNERCONTINUE = 356,
226 QFALLTHROUGH = 357,
227 QLINTNOTREACHED = 358,
228 QLINTFALLTHROUGH = 359,
229 QLINTFALLTHRU = 360,
230 QARGSUSED = 361,
231 QPRINTFLIKE = 362,
232 QLINTPRINTFLIKE = 363,
233 QSCANFLIKE = 364,
234 QMESSAGELIKE = 365,
235 QNOTREACHED = 366,
236 QCONST = 367,
237 QRESTRICT = 368,
238 QVOLATILE = 369,
239 QINLINE = 370,
240 QEXTENSION = 371,
241 QEXTERN = 372,
242 QSTATIC = 373,
243 QAUTO = 374,
244 QREGISTER = 375,
245 QOUT = 376,
246 QIN = 377,
247 QYIELD = 378,
248 QONLY = 379,
249 QTEMP = 380,
250 QSHARED = 381,
251 QREF = 382,
252 QUNIQUE = 383,
253 QCHECKED = 384,
254 QUNCHECKED = 385,
255 QCHECKEDSTRICT = 386,
256 QCHECKMOD = 387,
257 QKEEP = 388,
258 QKEPT = 389,
259 QPARTIAL = 390,
260 QSPECIAL = 391,
261 QOWNED = 392,
262 QDEPENDENT = 393,
263 QRETURNED = 394,
264 QEXPOSED = 395,
265 QNULL = 396,
266 QOBSERVER = 397,
267 QISNULL = 398,
268 QEXITS = 399,
269 QMAYEXIT = 400,
270 QNEVEREXIT = 401,
271 QTRUEEXIT = 402,
272 QFALSEEXIT = 403,
273 QLONG = 404,
274 QSIGNED = 405,
275 QUNSIGNED = 406,
276 QSHORT = 407,
277 QUNUSED = 408,
278 QSEF = 409,
279 QNOTNULL = 410,
280 QRELNULL = 411,
281 QABSTRACT = 412,
282 QNUMABSTRACT = 413,
283 QCONCRETE = 414,
284 QMUTABLE = 415,
285 QIMMUTABLE = 416,
286 QTRUENULL = 417,
287 QFALSENULL = 418,
288 QEXTERNAL = 419,
289 QREFCOUNTED = 420,
290 QREFS = 421,
291 QNEWREF = 422,
292 QTEMPREF = 423,
293 QKILLREF = 424,
294 QRELDEF = 425,
295 CGCHAR = 426,
296 CBOOL = 427,
297 CINT = 428,
298 CGFLOAT = 429,
299 CDOUBLE = 430,
300 CVOID = 431,
301 QANYTYPE = 432,
302 QINTEGRALTYPE = 433,
303 QUNSIGNEDINTEGRALTYPE = 434,
304 QSIGNEDINTEGRALTYPE = 435,
305 QNULLTERMINATED = 436,
306 QSETBUFFERSIZE = 437,
307 QSETSTRINGLENGTH = 438,
308 QMAXSET = 439,
309 QMAXREAD = 440,
310 QTESTINRANGE = 441,
311 TCAND = 442,
312 IDENTIFIER = 443,
313 NEW_IDENTIFIER = 444,
314 TYPE_NAME_OR_ID = 445,
315 CANNOTATION = 446,
316 CCONSTANT = 447,
317 ITER_NAME = 448,
318 ITER_ENDNAME = 449,
319 TYPE_NAME = 450,
320 METASTATE_NAME = 451
321 };
322#endif
323/* Tokens. */
324#define BADTOK 258
325#define SKIPTOK 259
326#define CTOK_ELIPSIS 260
327#define CASE 261
328#define DEFAULT 262
329#define CIF 263
330#define CELSE 264
331#define SWITCH 265
332#define WHILE 266
333#define DO 267
334#define CFOR 268
335#define GOTO 269
336#define CONTINUE 270
337#define BREAK 271
338#define RETURN 272
339#define TSEMI 273
340#define TLBRACE 274
341#define TRBRACE 275
342#define TCOMMA 276
343#define TCOLON 277
344#define TASSIGN 278
345#define TLPAREN 279
346#define TRPAREN 280
347#define TLSQBR 281
348#define TRSQBR 282
349#define TDOT 283
350#define TAMPERSAND 284
351#define TEXCL 285
352#define TTILDE 286
353#define TMINUS 287
354#define TPLUS 288
355#define TMULT 289
356#define TDIV 290
357#define TPERCENT 291
358#define TLT 292
359#define TGT 293
360#define TCIRC 294
361#define TBAR 295
362#define TQUEST 296
363#define CSIZEOF 297
364#define CALIGNOF 298
365#define CTYPEOF 299
366#define ARROW_OP 300
367#define CTYPEDEF 301
368#define COFFSETOF 302
369#define INC_OP 303
370#define DEC_OP 304
371#define LEFT_OP 305
372#define RIGHT_OP 306
373#define LE_OP 307
374#define GE_OP 308
375#define EQ_OP 309
376#define NE_OP 310
377#define AND_OP 311
378#define OR_OP 312
379#define MUL_ASSIGN 313
380#define DIV_ASSIGN 314
381#define MOD_ASSIGN 315
382#define ADD_ASSIGN 316
383#define SUB_ASSIGN 317
384#define LEFT_ASSIGN 318
385#define RIGHT_ASSIGN 319
386#define AND_ASSIGN 320
387#define XOR_ASSIGN 321
388#define OR_ASSIGN 322
389#define CSTRUCT 323
390#define CUNION 324
391#define CENUM 325
392#define VA_ARG 326
393#define VA_DCL 327
394#define QWARN 328
395#define QGLOBALS 329
396#define QMODIFIES 330
397#define QNOMODS 331
398#define QCONSTANT 332
399#define QFUNCTION 333
400#define QITER 334
401#define QDEFINES 335
402#define QUSES 336
403#define QALLOCATES 337
404#define QSETS 338
405#define QRELEASES 339
406#define QPRECLAUSE 340
407#define QPOSTCLAUSE 341
408#define QINVARIANT 342
409#define QALT 343
410#define QUNDEF 344
411#define QKILLED 345
412#define QENDMACRO 346
413#define LLMACRO 347
414#define LLMACROITER 348
415#define LLMACROEND 349
416#define TENDMACRO 350
417#define QDREVEALSTATE 351
418#define QSWITCHBREAK 352
419#define QLOOPBREAK 353
420#define QINNERBREAK 354
421#define QSAFEBREAK 355
422#define QINNERCONTINUE 356
423#define QFALLTHROUGH 357
424#define QLINTNOTREACHED 358
425#define QLINTFALLTHROUGH 359
426#define QLINTFALLTHRU 360
427#define QARGSUSED 361
428#define QPRINTFLIKE 362
429#define QLINTPRINTFLIKE 363
430#define QSCANFLIKE 364
431#define QMESSAGELIKE 365
432#define QNOTREACHED 366
433#define QCONST 367
434#define QRESTRICT 368
435#define QVOLATILE 369
436#define QINLINE 370
437#define QEXTENSION 371
438#define QEXTERN 372
439#define QSTATIC 373
440#define QAUTO 374
441#define QREGISTER 375
442#define QOUT 376
443#define QIN 377
444#define QYIELD 378
445#define QONLY 379
446#define QTEMP 380
447#define QSHARED 381
448#define QREF 382
449#define QUNIQUE 383
450#define QCHECKED 384
451#define QUNCHECKED 385
452#define QCHECKEDSTRICT 386
453#define QCHECKMOD 387
454#define QKEEP 388
455#define QKEPT 389
456#define QPARTIAL 390
457#define QSPECIAL 391
458#define QOWNED 392
459#define QDEPENDENT 393
460#define QRETURNED 394
461#define QEXPOSED 395
462#define QNULL 396
463#define QOBSERVER 397
464#define QISNULL 398
465#define QEXITS 399
466#define QMAYEXIT 400
467#define QNEVEREXIT 401
468#define QTRUEEXIT 402
469#define QFALSEEXIT 403
470#define QLONG 404
471#define QSIGNED 405
472#define QUNSIGNED 406
473#define QSHORT 407
474#define QUNUSED 408
475#define QSEF 409
476#define QNOTNULL 410
477#define QRELNULL 411
478#define QABSTRACT 412
479#define QNUMABSTRACT 413
480#define QCONCRETE 414
481#define QMUTABLE 415
482#define QIMMUTABLE 416
483#define QTRUENULL 417
484#define QFALSENULL 418
485#define QEXTERNAL 419
486#define QREFCOUNTED 420
487#define QREFS 421
488#define QNEWREF 422
489#define QTEMPREF 423
490#define QKILLREF 424
491#define QRELDEF 425
492#define CGCHAR 426
493#define CBOOL 427
494#define CINT 428
495#define CGFLOAT 429
496#define CDOUBLE 430
497#define CVOID 431
498#define QANYTYPE 432
499#define QINTEGRALTYPE 433
500#define QUNSIGNEDINTEGRALTYPE 434
501#define QSIGNEDINTEGRALTYPE 435
502#define QNULLTERMINATED 436
503#define QSETBUFFERSIZE 437
504#define QSETSTRINGLENGTH 438
505#define QMAXSET 439
506#define QMAXREAD 440
507#define QTESTINRANGE 441
508#define TCAND 442
509#define IDENTIFIER 443
510#define NEW_IDENTIFIER 444
511#define TYPE_NAME_OR_ID 445
512#define CANNOTATION 446
513#define CCONSTANT 447
514#define ITER_NAME 448
515#define ITER_ENDNAME 449
516#define TYPE_NAME 450
517#define METASTATE_NAME 451
518
519
520
521
522/* Copy the first part of user declarations. */
d0b80d80 523
524
525/*
526**
527** cgrammar.y
528**
529** Yacc/Bison grammar for extended ANSI C used by Splint.
530**
531** original grammar by Nate Osgood ---
532** hacrat@catfish.lcs.mit.edu Mon Jun 14 13:06:32 1993
533**
534** changes for Splint --- handle typedef names correctly
535** fix struct/union parsing bug (empty struct is accepted)
536** add productions to handle macros --- require
537** error correction --- main source of conflicts in grammar.
538** need to process initializations sequentially, L->R
539**
540** production names are cryptic, so more productions fit on one line
541**
542** conflicts: 87 shift/reduce, 18 reduce/reduce
543** most of these are due to handling macros
544** a few are due to handling type expressions
545*/
546
547/*@=allmacros@*/
548
549extern int yylex ();
550extern void yyerror (char *);
551
552# include "splintMacros.nf"
553# include "basic.h"
554# include "cscanner.h"
16c024b5 555# include "cscannerHelp.h"
d0b80d80 556# include "cgrammar.h"
557# include "exprChecks.h"
558
559/*@-allmacros@*/
560/*@-matchfields@*/
561
562# define SHOWCSYM FALSE
563
564/*
565** This is necessary, or else when the bison-generated code #include's malloc.h,
566** there will be a parse error.
567**
568** Unfortunately, it means the error checking on malloc, etc. is lost for allocations
569** in bison-generated files under Win32.
570*/
571
572# ifdef WIN32
573# undef malloc
574# undef calloc
575# undef realloc
576# endif
577
578
08cf8642 579
580/* Enabling traces. */
581#ifndef YYDEBUG
582# define YYDEBUG 1
583#endif
584
585/* Enabling verbose error messages. */
586#ifdef YYERROR_VERBOSE
587# undef YYERROR_VERBOSE
588# define YYERROR_VERBOSE 1
589#else
590# define YYERROR_VERBOSE 0
591#endif
592
593/* Enabling the token table. */
594#ifndef YYTOKEN_TABLE
595# define YYTOKEN_TABLE 0
596#endif
597
598#if ! defined cgrammar_YYSTYPE && ! defined cgrammar_YYSTYPE_IS_DECLARED
599typedef union cgrammar_YYSTYPE
600
368f75ae 601{
d0b80d80 602 lltok tok;
603 int count;
604 qual typequal;
605 qualList tquallist;
606 ctype ctyp;
607 /*@dependent@*/ sRef sr;
608 /*@only@*/ sRef osr;
609
610 /*@only@*/ functionClauseList funcclauselist;
611 /*@only@*/ functionClause funcclause;
612 /*@only@*/ flagSpec flagspec;
613 /*@only@*/ globalsClause globsclause;
614 /*@only@*/ modifiesClause modsclause;
615 /*@only@*/ warnClause warnclause;
616 /*@only@*/ stateClause stateclause;
617 /*@only@*/ pointers pointers;
618 /*@only@*/ functionConstraint fcnconstraint;
619
620 /*@only@*/ metaStateConstraint msconstraint;
621 /*@only@*/ metaStateSpecifier msspec;
622 /*@only@*/ metaStateExpression msexpr;
623 /*@observer@*/ metaStateInfo msinfo;
624
625 /*@only@*/ sRefList srlist;
626 /*@only@*/ globSet globset;
627 /*@only@*/ qtype qtyp;
628 /*@only@*/ cstring cname;
629 /*@observer@*/ annotationInfo annotation;
630 /*@only@*/ idDecl ntyp;
631 /*@only@*/ idDeclList ntyplist;
632 /*@only@*/ uentryList flist;
633 /*@owned@*/ uentryList entrylist;
634 /*@observer@*/ /*@dependent@*/ uentry entry;
635 /*@only@*/ uentry oentry;
636 /*@only@*/ exprNode expr;
637 /*@only@*/ enumNameList enumnamelist;
638 /*@only@*/ exprNodeList exprlist;
639 /*@only@*/ sRefSet srset;
640 /*@only@*/ cstringList cstringlist;
641
642 /*drl
643 added 1/19/2001
644 */
645 constraint con;
646 constraintList conL;
647 constraintExpr conE;
648 /* drl */
08cf8642 649}
650/* Line 193 of yacc.c. */
651
652 cgrammar_YYSTYPE;
653# define yystype cgrammar_YYSTYPE /* obsolescent; will be withdrawn */
654# define cgrammar_YYSTYPE_IS_DECLARED 1
d0b80d80 655# define cgrammar_YYSTYPE_IS_TRIVIAL 1
656#endif
08cf8642 657
658
659
660/* Copy the second part of user declarations. */
661
662
663/* Line 216 of yacc.c. */
664
665
666#ifdef short
667# undef short
668#endif
669
670#ifdef YYTYPE_UINT8
671typedef YYTYPE_UINT8 yytype_uint8;
672#else
673typedef unsigned char yytype_uint8;
674#endif
675
676#ifdef YYTYPE_INT8
677typedef YYTYPE_INT8 yytype_int8;
678#elif (defined __STDC__ || defined __C99__FUNC__ \
679 || defined __cplusplus || defined _MSC_VER)
680typedef signed char yytype_int8;
681#else
682typedef short int yytype_int8;
683#endif
684
685#ifdef YYTYPE_UINT16
686typedef YYTYPE_UINT16 yytype_uint16;
687#else
688typedef unsigned short int yytype_uint16;
689#endif
690
691#ifdef YYTYPE_INT16
692typedef YYTYPE_INT16 yytype_int16;
693#else
694typedef short int yytype_int16;
695#endif
696
697#ifndef YYSIZE_T
698# ifdef __SIZE_TYPE__
699# define YYSIZE_T __SIZE_TYPE__
700# elif defined size_t
701# define YYSIZE_T size_t
702# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
703 || defined __cplusplus || defined _MSC_VER)
704# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
705# define YYSIZE_T size_t
706# else
707# define YYSIZE_T unsigned int
708# endif
709#endif
710
711#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
712
713#ifndef YY_
714# if YYENABLE_NLS
715# if ENABLE_NLS
716# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
717# define YY_(msgid) dgettext ("bison-runtime", msgid)
718# endif
719# endif
720# ifndef YY_
721# define YY_(msgid) msgid
722# endif
723#endif
724
725/* Suppress unused-variable warnings by "using" E. */
726#if ! defined lint || defined __GNUC__
727# define YYUSE(e) ((void) (e))
728#else
729# define YYUSE(e) /* empty */
730#endif
731
732/* Identity function, used to suppress warnings about constant conditions. */
733#ifndef lint
734# define YYID(n) (n)
735#else
736#if (defined __STDC__ || defined __C99__FUNC__ \
737 || defined __cplusplus || defined _MSC_VER)
738static int
739YYID (int i)
740#else
741static int
742YYID (i)
743 int i;
744#endif
745{
746 return i;
747}
368f75ae 748#endif
d0b80d80 749
08cf8642 750#if ! defined yyoverflow || YYERROR_VERBOSE
751
752/* The parser invokes alloca or malloc; define the necessary symbols. */
753
754# ifdef YYSTACK_USE_ALLOCA
755# if YYSTACK_USE_ALLOCA
756# ifdef __GNUC__
757# define YYSTACK_ALLOC __builtin_alloca
758# elif defined __BUILTIN_VA_ARG_INCR
759# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
760# elif defined _AIX
761# define YYSTACK_ALLOC __alloca
762# elif defined _MSC_VER
763# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
764# define alloca _alloca
765# else
766# define YYSTACK_ALLOC alloca
767# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
768 || defined __cplusplus || defined _MSC_VER)
769# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
770# ifndef _STDLIB_H
771# define _STDLIB_H 1
772# endif
773# endif
774# endif
775# endif
776# endif
777
778# ifdef YYSTACK_ALLOC
779 /* Pacify GCC's `empty if-body' warning. */
780# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
781# ifndef YYSTACK_ALLOC_MAXIMUM
782 /* The OS might guarantee only one guard page at the bottom of the stack,
783 and a page size can be as small as 4096 bytes. So we cannot safely
784 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
785 to allow for a few compiler-allocated temporary stack slots. */
786# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
787# endif
788# else
789# define YYSTACK_ALLOC YYMALLOC
790# define YYSTACK_FREE YYFREE
791# ifndef YYSTACK_ALLOC_MAXIMUM
792# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
793# endif
794# if (defined __cplusplus && ! defined _STDLIB_H \
795 && ! ((defined YYMALLOC || defined malloc) \
796 && (defined YYFREE || defined free)))
797# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
798# ifndef _STDLIB_H
799# define _STDLIB_H 1
800# endif
801# endif
802# ifndef YYMALLOC
803# define YYMALLOC malloc
804# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
805 || defined __cplusplus || defined _MSC_VER)
806void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
807# endif
808# endif
809# ifndef YYFREE
810# define YYFREE free
811# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
812 || defined __cplusplus || defined _MSC_VER)
813void free (void *); /* INFRINGES ON USER NAME SPACE */
814# endif
815# endif
816# endif
817#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
818
819
820#if (! defined yyoverflow \
821 && (! defined __cplusplus \
822 || (defined cgrammar_YYSTYPE_IS_TRIVIAL && cgrammar_YYSTYPE_IS_TRIVIAL)))
823
824/* A type that is properly aligned for any stack member. */
825union yyalloc
826{
827 yytype_int16 yyss;
828 cgrammar_YYSTYPE yyvs;
829 };
830
831/* The size of the maximum gap between one aligned stack and the next. */
832# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
833
834/* The size of an array large to enough to hold all stacks, each with
835 N elements. */
836# define YYSTACK_BYTES(N) \
837 ((N) * (sizeof (yytype_int16) + sizeof (cgrammar_YYSTYPE)) \
838 + YYSTACK_GAP_MAXIMUM)
d0b80d80 839
08cf8642 840/* Copy COUNT objects from FROM to TO. The source and destination do
841 not overlap. */
842# ifndef YYCOPY
843# if defined __GNUC__ && 1 < __GNUC__
844# define YYCOPY(To, From, Count) \
845 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
846# else
847# define YYCOPY(To, From, Count) \
848 do \
849 { \
850 YYSIZE_T yyi; \
851 for (yyi = 0; yyi < (Count); yyi++) \
852 (To)[yyi] = (From)[yyi]; \
853 } \
854 while (YYID (0))
855# endif
856# endif
d0b80d80 857
08cf8642 858/* Relocate STACK from its old location to the new one. The
859 local variables YYSIZE and YYSTACKSIZE give the old and new number of
860 elements in the stack, and YYPTR gives the new location of the
861 stack. Advance YYPTR to a properly aligned location for the next
862 stack. */
863# define YYSTACK_RELOCATE(Stack) \
864 do \
865 { \
866 YYSIZE_T yynewbytes; \
867 YYCOPY (&yyptr->Stack, Stack, yysize); \
868 Stack = &yyptr->Stack; \
869 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
870 yyptr += yynewbytes / sizeof (*yyptr); \
871 } \
872 while (YYID (0))
d0b80d80 873
08cf8642 874#endif
d0b80d80 875
08cf8642 876/* YYFINAL -- State number of the termination state. */
877#define YYFINAL 262
878/* YYLAST -- Last index in YYTABLE. */
879#define YYLAST 6819
880
881/* YYNTOKENS -- Number of terminals. */
882#define YYNTOKENS 197
883/* YYNNTS -- Number of nonterminals. */
884#define YYNNTS 276
885/* YYNRULES -- Number of rules. */
886#define YYNRULES 719
887/* YYNRULES -- Number of states. */
888#define YYNSTATES 1264
889
890/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
891#define YYUNDEFTOK 2
892#define YYMAXUTOK 451
893
894#define YYTRANSLATE(YYX) \
895 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
896
897/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
898static const yytype_uint8 yytranslate[] =
d0b80d80 899{
900 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
901 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
902 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
903 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
904 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
905 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
906 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
907 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
908 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
909 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
910 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
911 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
912 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
913 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
914 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
915 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
916 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
917 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
918 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
919 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
920 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
921 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
922 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
923 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
924 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
08cf8642 925 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
926 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
927 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
928 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
929 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
930 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
931 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
932 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
933 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
934 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
935 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
936 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
937 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
938 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
939 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
940 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
941 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
942 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
943 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
944 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
945 195, 196
d0b80d80 946};
947
948#if YYDEBUG
08cf8642 949/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
950 YYRHS. */
951static const yytype_uint16 yyprhs[] =
d0b80d80 952{
08cf8642 953 0, 0, 3, 4, 6, 8, 11, 14, 16, 18,
954 20, 22, 24, 26, 28, 37, 49, 50, 56, 58,
955 62, 64, 67, 69, 76, 80, 87, 88, 95, 96,
956 104, 106, 113, 117, 124, 125, 132, 133, 141, 142,
957 143, 154, 158, 162, 166, 169, 171, 175, 176, 181,
958 182, 187, 189, 193, 195, 197, 199, 203, 205, 209,
959 211, 213, 215, 217, 219, 221, 226, 232, 234, 236,
960 238, 240, 244, 249, 252, 256, 260, 264, 266, 268,
961 270, 271, 274, 275, 278, 280, 282, 284, 286, 288,
962 290, 292, 294, 296, 298, 300, 302, 305, 306, 311,
963 313, 316, 317, 321, 323, 327, 329, 331, 332, 335,
964 339, 342, 344, 348, 351, 352, 355, 357, 359, 361,
965 363, 365, 367, 369, 371, 373, 375, 377, 379, 381,
966 383, 385, 387, 391, 392, 396, 397, 398, 403, 406,
967 409, 411, 413, 415, 417, 421, 426, 429, 433, 437,
968 441, 443, 445, 447, 451, 453, 455, 459, 464, 467,
969 471, 475, 479, 480, 482, 484, 488, 490, 492, 494,
970 498, 500, 502, 503, 508, 510, 515, 519, 524, 531,
971 537, 543, 546, 549, 557, 559, 563, 565, 568, 571,
972 574, 577, 580, 583, 586, 589, 593, 595, 599, 604,
973 606, 616, 617, 621, 622, 623, 628, 631, 636, 639,
974 641, 646, 648, 652, 656, 660, 662, 666, 670, 672,
975 676, 680, 682, 686, 690, 694, 698, 700, 704, 708,
976 710, 714, 716, 720, 722, 726, 728, 729, 734, 736,
977 737, 742, 744, 745, 746, 753, 754, 755, 763, 765,
978 769, 773, 777, 781, 785, 789, 793, 797, 801, 805,
979 809, 811, 815, 816, 818, 820, 822, 824, 826, 830,
980 831, 841, 842, 854, 856, 858, 861, 862, 869, 870,
981 879, 884, 889, 890, 891, 894, 896, 901, 904, 906,
982 911, 912, 917, 919, 923, 928, 931, 934, 937, 939,
983 942, 946, 949, 951, 955, 957, 959, 961, 963, 965,
984 968, 969, 976, 979, 982, 983, 990, 991, 997, 999,
985 1001, 1003, 1005, 1007, 1009, 1011, 1013, 1015, 1017, 1019,
986 1021, 1023, 1025, 1027, 1029, 1031, 1033, 1035, 1037, 1039,
987 1041, 1043, 1045, 1047, 1049, 1051, 1053, 1055, 1057, 1059,
988 1061, 1063, 1065, 1067, 1069, 1071, 1073, 1075, 1077, 1079,
989 1081, 1083, 1085, 1087, 1089, 1091, 1093, 1095, 1097, 1099,
990 1101, 1103, 1106, 1109, 1112, 1115, 1118, 1121, 1124, 1127,
edad9a7f 991 1130, 1133, 1136, 1139, 1142, 1145, 1148, 1151, 1154, 1157,
08cf8642 992 1160, 1163, 1166, 1169, 1172, 1175, 1178, 1181, 1185, 1187,
993 1192, 1194, 1198, 1201, 1204, 1207, 1208, 1210, 1211, 1212,
994 1213, 1226, 1227, 1228, 1240, 1247, 1254, 1255, 1256, 1267,
995 1268, 1269, 1280, 1286, 1292, 1297, 1302, 1303, 1305, 1307,
996 1310, 1316, 1320, 1323, 1328, 1330, 1334, 1339, 1346, 1347,
997 1356, 1361, 1363, 1367, 1370, 1372, 1377, 1379, 1381, 1384,
998 1387, 1389, 1392, 1394, 1397, 1399, 1401, 1403, 1405, 1408,
999 1410, 1413, 1416, 1420, 1422, 1426, 1428, 1432, 1434, 1436,
1000 1440, 1441, 1444, 1445, 1450, 1455, 1457, 1459, 1462, 1464,
1001 1466, 1469, 1470, 1472, 1478, 1481, 1485, 1489, 1494, 1498,
1002 1503, 1508, 1514, 1516, 1518, 1520, 1522, 1524, 1526, 1528,
1003 1530, 1532, 1534, 1539, 1541, 1543, 1545, 1548, 1551, 1559,
1004 1566, 1569, 1570, 1571, 1582, 1583, 1590, 1592, 1594, 1596,
1005 1598, 1601, 1603, 1605, 1607, 1609, 1611, 1613, 1615, 1619,
1006 1621, 1622, 1626, 1629, 1632, 1634, 1636, 1638, 1640, 1642,
1007 1644, 1646, 1648, 1650, 1652, 1656, 1658, 1660, 1662, 1665,
1008 1668, 1669, 1672, 1673, 1678, 1679, 1686, 1687, 1691, 1692,
1009 1698, 1702, 1705, 1709, 1710, 1711, 1712, 1713, 1714, 1716,
1010 1719, 1722, 1726, 1729, 1733, 1737, 1742, 1745, 1748, 1752,
1011 1756, 1761, 1763, 1766, 1768, 1771, 1773, 1777, 1779, 1784,
1012 1786, 1789, 1791, 1794, 1796, 1799, 1801, 1806, 1809, 1810,
1013 1816, 1817, 1824, 1829, 1834, 1835, 1836, 1847, 1849, 1850,
1014 1855, 1857, 1859, 1861, 1863, 1865, 1868, 1870, 1874, 1876,
1015 1881, 1885, 1890, 1897, 1903, 1909, 1912, 1915, 1917, 1920,
1016 1923, 1926, 1929, 1932, 1935, 1938, 1941, 1943, 1945, 1950,
1017 1952, 1956, 1960, 1964, 1966, 1970, 1974, 1976, 1980, 1984,
1018 1986, 1990, 1994, 1998, 2002, 2004, 2008, 2012, 2014, 2018,
1019 2020, 2024, 2026, 2030, 2032, 2036, 2038, 2042, 2044, 2045,
1020 2046, 2053, 2054, 2055, 2063, 2065, 2069, 2073, 2077, 2081,
1021 2085, 2089, 2093, 2097, 2101, 2105, 2109, 2111, 2112, 2114,
1022 2117, 2125, 2128, 2131, 2139, 2146, 2149, 2153, 2156, 2160,
1023 2163, 2167, 2171, 2175, 2179, 2182, 2186, 2187, 2189, 2190,
1024 2192, 2194, 2196, 2198, 2200, 2202, 2204, 2206, 2208, 2213
d0b80d80 1025};
08cf8642 1026
1027/* YYRHS -- A `-1'-separated list of the rules' RHS. */
1028static const yytype_int16 yyrhs[] =
d0b80d80 1029{
08cf8642 1030 198, 0, -1, -1, 199, -1, 200, -1, 199, 200,
1031 -1, 261, 468, -1, 201, -1, 202, -1, 212, -1,
1032 215, -1, 303, -1, 18, -1, 1, -1, 77, 347,
1033 361, 371, 361, 468, 312, 91, -1, 77, 347, 361,
1034 371, 361, 23, 312, 319, 318, 468, 91, -1, -1,
1035 78, 203, 204, 468, 91, -1, 205, -1, 347, 361,
1036 205, -1, 209, -1, 375, 209, -1, 471, -1, 312,
1037 24, 361, 371, 312, 25, -1, 206, 26, 27, -1,
1038 206, 26, 312, 302, 27, 361, -1, -1, 206, 313,
1039 24, 25, 207, 233, -1, -1, 206, 313, 24, 372,
1040 25, 208, 233, -1, 471, -1, 312, 24, 361, 205,
1041 312, 25, -1, 209, 26, 27, -1, 209, 26, 312,
1042 302, 27, 361, -1, -1, 209, 313, 24, 25, 210,
1043 234, -1, -1, 209, 313, 24, 372, 25, 211, 234,
1044 -1, -1, -1, 79, 471, 24, 372, 25, 213, 234,
1045 214, 468, 91, -1, 92, 403, 95, -1, 93, 389,
1046 95, -1, 94, 390, 95, -1, 92, 95, -1, 256,
1047 -1, 218, 23, 221, -1, -1, 230, 219, 22, 222,
1048 -1, -1, 5, 220, 22, 222, -1, 218, -1, 218,
1049 40, 221, -1, 196, -1, 187, -1, 56, -1, 225,
1050 223, 224, -1, 225, -1, 228, 227, 228, -1, 184,
1051 -1, 185, -1, 53, -1, 52, -1, 54, -1, 229,
1052 -1, 231, 24, 228, 25, -1, 24, 228, 232, 228,
1053 25, -1, 230, -1, 192, -1, 470, -1, 189, -1,
1054 230, 26, 27, -1, 230, 26, 192, 27, -1, 34,
1055 230, -1, 24, 230, 25, -1, 230, 28, 471, -1,
1056 230, 45, 471, -1, 226, -1, 33, -1, 32, -1,
1057 -1, 235, 233, -1, -1, 236, 234, -1, 237, -1,
1058 241, -1, 240, -1, 325, -1, 328, -1, 247, -1,
1059 238, -1, 242, -1, 240, -1, 326, -1, 330, -1,
1060 248, -1, 238, 91, -1, -1, 74, 239, 249, 468,
1061 -1, 76, -1, 242, 91, -1, -1, 75, 243, 262,
1062 -1, 245, -1, 245, 40, 244, -1, 189, -1, 247,
1063 -1, -1, 248, 91, -1, 73, 244, 442, -1, 73,
1064 244, -1, 250, -1, 249, 21, 250, -1, 251, 252,
1065 -1, -1, 253, 251, -1, 470, -1, 189, -1, 303,
1066 -1, 89, -1, 90, -1, 121, -1, 122, -1, 135,
1067 -1, 80, -1, 81, -1, 82, -1, 83, -1, 84,
1068 -1, 85, -1, 86, -1, 371, -1, 347, 361, 371,
1069 -1, -1, 19, 258, 420, -1, -1, -1, 259, 424,
1070 260, 413, -1, 216, 257, -1, 265, 468, -1, 468,
1071 -1, 470, -1, 189, -1, 190, -1, 263, 26, 27,
1072 -1, 263, 26, 264, 27, -1, 34, 263, -1, 24,
1073 263, 25, -1, 263, 28, 471, -1, 263, 45, 471,
1074 -1, 263, -1, 442, -1, 263, -1, 265, 21, 263,
1075 -1, 470, -1, 189, -1, 266, 26, 27, -1, 266,
1076 26, 264, 27, -1, 34, 266, -1, 24, 266, 25,
1077 -1, 266, 28, 471, -1, 266, 45, 471, -1, -1,
1078 268, -1, 266, -1, 268, 21, 266, -1, 470, -1,
1079 189, -1, 442, -1, 24, 300, 25, -1, 190, -1,
1080 116, -1, -1, 24, 270, 413, 25, -1, 269, -1,
1081 271, 26, 300, 27, -1, 271, 24, 25, -1, 271,
1082 24, 272, 25, -1, 71, 24, 299, 21, 383, 25,
1083 -1, 271, 361, 28, 471, 312, -1, 271, 361, 45,
1084 471, 312, -1, 271, 48, -1, 271, 49, -1, 24,
1085 383, 25, 19, 425, 469, 20, -1, 299, -1, 272,
1086 21, 299, -1, 271, -1, 48, 273, -1, 49, 273,
1087 -1, 29, 281, -1, 34, 281, -1, 33, 281, -1,
1088 32, 281, -1, 31, 281, -1, 30, 281, -1, 278,
1089 276, 279, -1, 275, -1, 274, 28, 471, -1, 274,
1090 26, 300, 27, -1, 471, -1, 47, 312, 24, 383,
1091 361, 21, 274, 25, 312, -1, -1, 312, 277, 280,
1092 -1, -1, -1, 42, 24, 383, 25, -1, 42, 273,
1093 -1, 43, 24, 383, 25, -1, 43, 273, -1, 273,
1094 -1, 24, 383, 25, 281, -1, 281, -1, 282, 34,
1095 281, -1, 282, 35, 281, -1, 282, 36, 281, -1,
1096 282, -1, 283, 33, 282, -1, 283, 32, 282, -1,
1097 283, -1, 284, 50, 283, -1, 284, 51, 283, -1,
1098 284, -1, 285, 37, 284, -1, 285, 38, 284, -1,
1099 285, 52, 284, -1, 285, 53, 284, -1, 285, -1,
1100 286, 54, 285, -1, 286, 55, 285, -1, 286, -1,
1101 287, 29, 286, -1, 287, -1, 288, 39, 287, -1,
1102 288, -1, 289, 40, 288, -1, 289, -1, -1, 290,
1103 56, 291, 289, -1, 290, -1, -1, 292, 57, 293,
1104 290, -1, 292, -1, -1, -1, 292, 41, 295, 22,
1105 296, 294, -1, -1, -1, 292, 41, 297, 300, 22,
1106 298, 294, -1, 294, -1, 273, 23, 299, -1, 273,
1107 58, 299, -1, 273, 59, 299, -1, 273, 60, 299,
1108 -1, 273, 61, 299, -1, 273, 62, 299, -1, 273,
1109 63, 299, -1, 273, 64, 299, -1, 273, 65, 299,
1110 -1, 273, 66, 299, -1, 273, 67, 299, -1, 299,
1111 -1, 300, 21, 299, -1, -1, 300, -1, 294, -1,
1112 304, -1, 72, -1, 310, -1, 347, 312, 18, -1,
1113 -1, 347, 361, 371, 361, 305, 312, 318, 18, 312,
1114 -1, -1, 347, 361, 371, 361, 23, 306, 312, 319,
1115 318, 18, 312, -1, 308, -1, 195, -1, 371, 361,
1116 -1, -1, 371, 361, 23, 309, 312, 319, -1, -1,
1117 46, 347, 311, 361, 316, 312, 246, 18, -1, 46,
1118 347, 312, 18, -1, 46, 314, 312, 18, -1, -1,
1119 -1, 315, 312, -1, 308, -1, 314, 21, 361, 308,
1120 -1, 317, 312, -1, 307, -1, 316, 21, 361, 307,
1121 -1, -1, 318, 21, 361, 308, -1, 299, -1, 19,
1122 323, 20, -1, 19, 323, 21, 20, -1, 320, 319,
1123 -1, 321, 23, -1, 471, 22, -1, 322, -1, 321,
1124 322, -1, 26, 302, 27, -1, 28, 471, -1, 319,
1125 -1, 323, 21, 319, -1, 117, -1, 115, -1, 118,
1126 -1, 119, -1, 120, -1, 326, 91, -1, -1, 254,
1127 361, 327, 268, 468, 312, -1, 330, 91, -1, 255,
1128 361, -1, -1, 329, 336, 331, 267, 468, 312, -1,
1129 -1, 329, 332, 333, 468, 312, -1, 224, -1, 217,
1130 -1, 144, -1, 145, -1, 147, -1, 148, -1, 146,
1131 -1, 129, -1, 132, -1, 130, -1, 131, -1, 137,
1132 -1, 138, -1, 123, -1, 125, -1, 124, -1, 133,
1133 -1, 134, -1, 126, -1, 128, -1, 141, -1, 143,
1134 -1, 156, -1, 155, -1, 140, -1, 142, -1, 181,
1135 -1, 191, -1, 139, -1, 154, -1, 153, -1, 164,
1136 -1, 162, -1, 163, -1, 157, -1, 158, -1, 159,
1137 -1, 160, -1, 161, -1, 165, -1, 166, -1, 169,
1138 -1, 170, -1, 167, -1, 168, -1, 152, -1, 149,
1139 -1, 150, -1, 151, -1, 121, -1, 122, -1, 135,
1140 -1, 136, -1, 112, 312, -1, 114, 312, -1, 113,
1141 312, -1, 343, 312, -1, 336, 312, -1, 334, 312,
1142 -1, 337, 312, -1, 335, 312, -1, 339, 312, -1,
1143 338, 312, -1, 340, 312, -1, 341, 312, -1, 171,
1144 361, -1, 173, 361, -1, 172, 361, -1, 174, 361,
1145 -1, 175, 361, -1, 176, 361, -1, 177, 361, -1,
1146 178, 361, -1, 179, 361, -1, 180, 361, -1, 472,
1147 361, -1, 352, 361, -1, 366, 361, -1, 342, 361,
1148 -1, 312, 347, 312, -1, 349, -1, 349, 88, 348,
1149 91, -1, 383, -1, 383, 21, 348, -1, 324, 350,
1150 -1, 344, 350, -1, 345, 350, -1, -1, 347, -1,
1151 -1, -1, -1, 361, 68, 471, 312, 19, 353, 417,
1152 362, 418, 354, 20, 351, -1, -1, -1, 361, 69,
1153 471, 312, 19, 355, 417, 362, 418, 356, 20, -1,
1154 361, 68, 471, 312, 19, 20, -1, 361, 69, 471,
1155 312, 19, 20, -1, -1, -1, 361, 68, 312, 19,
1156 357, 417, 362, 418, 358, 20, -1, -1, -1, 361,
1157 69, 312, 19, 359, 417, 362, 418, 360, 20, -1,
1158 361, 68, 312, 19, 20, -1, 361, 69, 312, 19,
1159 20, -1, 361, 68, 471, 361, -1, 361, 69, 471,
1160 361, -1, -1, 363, -1, 215, -1, 362, 363, -1,
1161 347, 361, 364, 312, 18, -1, 347, 312, 18, -1,
1162 365, 361, -1, 364, 21, 365, 361, -1, 371, -1,
1163 22, 312, 302, -1, 371, 22, 312, 302, -1, 361,
1164 70, 19, 368, 20, 312, -1, -1, 361, 70, 471,
1165 19, 367, 368, 20, 312, -1, 361, 70, 471, 312,
1166 -1, 369, -1, 368, 21, 369, -1, 368, 21, -1,
1167 471, -1, 471, 23, 312, 302, -1, 206, -1, 385,
1168 -1, 375, 195, -1, 375, 370, -1, 206, -1, 375,
1169 206, -1, 378, -1, 361, 376, -1, 112, -1, 113,
1170 -1, 114, -1, 373, -1, 374, 373, -1, 34, -1,
1171 34, 374, -1, 34, 375, -1, 34, 374, 375, -1,
1172 377, -1, 377, 21, 5, -1, 471, -1, 377, 21,
1173 471, -1, 5, -1, 379, -1, 379, 21, 5, -1,
1174 -1, 380, 382, -1, -1, 379, 21, 381, 382, -1,
1175 312, 347, 370, 312, -1, 471, -1, 346, -1, 346,
1176 384, -1, 375, -1, 386, -1, 375, 386, -1, -1,
1177 386, -1, 312, 24, 361, 384, 25, -1, 26, 27,
1178 -1, 26, 302, 27, -1, 386, 26, 27, -1, 386,
1179 26, 302, 27, -1, 312, 24, 25, -1, 312, 24,
1180 378, 25, -1, 386, 312, 24, 25, -1, 386, 312,
1181 24, 378, 25, -1, 405, -1, 407, -1, 410, -1,
1182 413, -1, 428, -1, 431, -1, 465, -1, 436, -1,
1183 467, -1, 388, -1, 96, 24, 300, 25, -1, 391,
1184 -1, 389, -1, 398, -1, 391, 398, -1, 435, 391,
1185 -1, 464, 404, 11, 24, 300, 25, 18, -1, 464,
1186 404, 11, 24, 300, 25, -1, 393, 398, -1, -1,
1187 -1, 13, 24, 301, 18, 301, 18, 394, 301, 395,
1188 25, -1, -1, 193, 415, 24, 397, 439, 25, -1,
1189 194, -1, 405, -1, 407, -1, 410, -1, 401, 424,
1190 -1, 401, -1, 402, -1, 428, -1, 399, -1, 392,
1191 -1, 396, -1, 467, -1, 24, 398, 25, -1, 1,
1192 -1, -1, 430, 400, 398, -1, 415, 19, -1, 419,
1193 20, -1, 404, -1, 423, -1, 405, -1, 407, -1,
1194 410, -1, 414, -1, 429, -1, 431, -1, 436, -1,
1195 466, -1, 24, 404, 25, -1, 467, -1, 388, -1,
1196 1, -1, 471, 22, -1, 111, 387, -1, -1, 102,
1197 406, -1, -1, 6, 302, 408, 22, -1, -1, 102,
1198 406, 6, 302, 409, 22, -1, -1, 7, 411, 22,
1199 -1, -1, 102, 406, 7, 412, 22, -1, 24, 413,
1200 25, -1, 415, 421, -1, 415, 422, 416, -1, -1,
1201 -1, -1, -1, -1, 20, -1, 111, 20, -1, 427,
1202 20, -1, 427, 111, 20, -1, 424, 20, -1, 424,
1203 111, 20, -1, 424, 427, 20, -1, 424, 427, 111,
1204 20, -1, 19, 420, -1, 19, 20, -1, 19, 423,
1205 20, -1, 19, 424, 20, -1, 19, 424, 427, 20,
1206 -1, 404, -1, 423, 404, -1, 303, -1, 424, 303,
1207 -1, 426, -1, 425, 21, 426, -1, 299, -1, 19,
1208 425, 469, 20, -1, 387, -1, 427, 387, -1, 18,
1209 -1, 300, 18, -1, 18, -1, 300, 18, -1, 300,
1210 -1, 8, 24, 300, 25, -1, 430, 387, -1, -1,
1211 430, 387, 9, 432, 387, -1, -1, 10, 24, 300,
1212 433, 25, 387, -1, 11, 24, 300, 25, -1, 11,
1213 24, 300, 25, -1, -1, -1, 193, 437, 415, 24,
1214 438, 439, 25, 413, 463, 416, -1, 441, -1, -1,
1215 439, 440, 21, 441, -1, 462, -1, 470, -1, 190,
1216 -1, 189, -1, 192, -1, 442, 192, -1, 442, -1,
1217 24, 300, 25, -1, 443, -1, 271, 26, 300, 27,
1218 -1, 271, 24, 25, -1, 271, 24, 272, 25, -1,
1219 71, 24, 299, 21, 383, 25, -1, 271, 361, 28,
1220 471, 312, -1, 271, 361, 45, 471, 312, -1, 271,
1221 48, -1, 271, 49, -1, 444, -1, 48, 273, -1,
1222 49, 273, -1, 29, 281, -1, 34, 281, -1, 33,
1223 281, -1, 32, 281, -1, 31, 281, -1, 30, 281,
1224 -1, 276, -1, 445, -1, 24, 383, 25, 281, -1,
1225 446, -1, 282, 34, 281, -1, 282, 35, 281, -1,
1226 282, 36, 281, -1, 447, -1, 283, 33, 282, -1,
1227 283, 32, 282, -1, 448, -1, 284, 50, 283, -1,
1228 284, 51, 283, -1, 449, -1, 285, 37, 284, -1,
1229 285, 38, 284, -1, 285, 52, 284, -1, 285, 53,
1230 284, -1, 450, -1, 286, 54, 285, -1, 286, 55,
1231 285, -1, 451, -1, 287, 29, 286, -1, 452, -1,
1232 288, 39, 287, -1, 453, -1, 289, 40, 288, -1,
1233 454, -1, 290, 56, 289, -1, 455, -1, 292, 57,
1234 290, -1, 456, -1, -1, -1, 292, 41, 458, 22,
1235 459, 294, -1, -1, -1, 292, 41, 460, 300, 22,
1236 461, 294, -1, 457, -1, 273, 23, 299, -1, 273,
1237 58, 299, -1, 273, 59, 299, -1, 273, 60, 299,
1238 -1, 273, 61, 299, -1, 273, 62, 299, -1, 273,
1239 63, 299, -1, 273, 64, 299, -1, 273, 65, 299,
1240 -1, 273, 66, 299, -1, 273, 67, 299, -1, 194,
1241 -1, -1, 12, -1, 434, 387, -1, 464, 387, 11,
1242 24, 300, 25, 18, -1, 393, 387, -1, 434, 404,
1243 -1, 464, 404, 11, 24, 300, 25, 18, -1, 464,
1244 404, 11, 24, 300, 25, -1, 393, 404, -1, 14,
1245 471, 18, -1, 15, 18, -1, 101, 15, 18, -1,
1246 16, 18, -1, 97, 16, 18, -1, 98, 16, 18,
1247 -1, 99, 16, 18, -1, 100, 16, 18, -1, 17,
1248 18, -1, 17, 300, 18, -1, -1, 18, -1, -1,
1249 21, -1, 188, -1, 189, -1, 193, -1, 194, -1,
1250 470, -1, 190, -1, 195, -1, 190, -1, 44, 24,
1251 300, 25, -1, 44, 24, 383, 25, -1
d0b80d80 1252};
1253
08cf8642 1254/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
1255static const yytype_uint16 yyrline[] =
d0b80d80 1256{
08cf8642 1257 0, 327, 327, 329, 333, 334, 338, 339, 340, 341,
1258 342, 343, 344, 345, 349, 351, 356, 356, 365, 371,
1259 376, 377, 382, 383, 385, 387, 405, 404, 436, 435,
1260 465, 466, 468, 472, 490, 489, 502, 501, 516, 517,
1261 515, 524, 525, 526, 527, 531, 535, 540, 540, 545,
1262 545, 553, 554, 558, 564, 565, 569, 570, 574, 580,
1263 581, 585, 586, 587, 591, 592, 593, 599, 600, 604,
1264 606, 608, 610, 619, 621, 623, 625, 642, 646, 647,
1265 654, 655, 665, 666, 671, 672, 673, 674, 675, 676,
1266 680, 681, 682, 683, 684, 685, 689, 693, 693, 702,
1267 706, 711, 710, 725, 727, 732, 736, 737, 741, 745,
1268 751, 756, 757, 761, 765, 766, 770, 771, 772, 776,
1269 777, 778, 779, 780, 784, 785, 786, 787, 788, 792,
1270 793, 797, 804, 809, 809, 815, 816, 815, 826, 837,
1271 838, 842, 843, 844, 845, 846, 847, 848, 849, 850,
1272 854, 855, 860, 861, 865, 867, 869, 870, 871, 872,
1273 873, 875, 880, 881, 885, 891, 904, 905, 906, 907,
1274 908, 909, 910, 910, 916, 917, 918, 919, 920, 921,
1275 922, 923, 924, 925, 930, 931, 935, 936, 937, 938,
1276 939, 940, 941, 942, 943, 944, 945, 949, 950, 952,
1277 956, 962, 962, 966, 969, 973, 974, 975, 976, 982,
1278 983, 988, 989, 990, 991, 995, 996, 997, 1001, 1002,
1279 1003, 1007, 1008, 1009, 1010, 1011, 1015, 1016, 1017, 1021,
1280 1022, 1026, 1027, 1031, 1032, 1036, 1038, 1037, 1049, 1051,
1281 1050, 1063, 1065, 1067, 1064, 1069, 1070, 1069, 1075, 1076,
1282 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1283 1090, 1091, 1095, 1096, 1100, 1106, 1107, 1108, 1112, 1127,
1284 1126, 1138, 1137, 1146, 1147, 1151, 1156, 1156, 1161, 1161,
1285 1164, 1165, 1169, 1173, 1177, 1181, 1182, 1186, 1190, 1191,
1286 1195, 1196, 1200, 1201, 1202, 1203, 1211, 1212, 1217, 1218,
1287 1222, 1223, 1227, 1229, 1239, 1240, 1241, 1242, 1243, 1247,
1288 1252, 1251, 1267, 1271, 1276, 1275, 1290, 1289, 1321, 1322,
1289 1326, 1327, 1328, 1329, 1330, 1334, 1335, 1336, 1337, 1341,
1290 1342, 1343, 1344, 1345, 1346, 1347, 1348, 1349, 1350, 1351,
1291 1352, 1353, 1354, 1355, 1356, 1357, 1361, 1362, 1366, 1367,
1292 1371, 1372, 1376, 1377, 1378, 1379, 1380, 1384, 1385, 1386,
1293 1387, 1388, 1389, 1393, 1394, 1395, 1396, 1400, 1401, 1402,
1294 1403, 1407, 1408, 1409, 1410, 1411, 1412, 1413, 1414, 1415,
1295 1416, 1417, 1418, 1426, 1427, 1428, 1429, 1430, 1431, 1432,
1296 1433, 1434, 1435, 1436, 1437, 1438, 1439, 1443, 1448, 1449,
1297 1454, 1455, 1460, 1461, 1462, 1466, 1467, 1471, 1478, 1480,
1298 1478, 1484, 1486, 1484, 1489, 1491, 1493, 1495, 1493, 1498,
1299 1500, 1498, 1503, 1505, 1507, 1508, 1512, 1516, 1517, 1518,
1300 1522, 1524, 1529, 1531, 1536, 1537, 1538, 1543, 1545, 1545,
1301 1547, 1551, 1553, 1555, 1559, 1564, 1572, 1573, 1574, 1580,
1302 1585, 1586, 1591, 1592, 1596, 1597, 1598, 1602, 1603, 1607,
1303 1608, 1609, 1610, 1614, 1615, 1619, 1620, 1624, 1625, 1626,
1304 1630, 1630, 1631, 1631, 1636, 1648, 1665, 1666, 1670, 1671,
1305 1672, 1676, 1677, 1681, 1683, 1684, 1686, 1687, 1689, 1691,
1306 1693, 1695, 1702, 1703, 1704, 1705, 1706, 1707, 1708, 1709,
1307 1710, 1711, 1715, 1719, 1723, 1727, 1728, 1733, 1735, 1737,
1308 1739, 1745, 1745, 1744, 1753, 1752, 1756, 1760, 1761, 1762,
1309 1763, 1764, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 1772,
1310 1776, 1776, 1783, 1787, 1791, 1792, 1796, 1797, 1798, 1799,
1311 1800, 1801, 1802, 1803, 1804, 1805, 1806, 1807, 1811, 1812,
1312 1820, 1821, 1828, 1828, 1830, 1830, 1835, 1835, 1837, 1837,
1313 1842, 1843, 1848, 1852, 1856, 1860, 1864, 1868, 1872, 1873,
1314 1874, 1875, 1877, 1878, 1880, 1882, 1889, 1894, 1896, 1898,
1315 1900, 1905, 1906, 1910, 1911, 1915, 1916, 1920, 1921, 1925,
1316 1926, 1930, 1931, 1935, 1936, 1937, 1941, 1955, 1960, 1960,
1317 1965, 1965, 1970, 1976, 1980, 1981, 1980, 1991, 1992, 1992,
1318 1997, 1998, 1999, 2010, 2018, 2019, 2023, 2024, 2028, 2029,
1319 2030, 2031, 2032, 2034, 2035, 2036, 2037, 2041, 2042, 2043,
1320 2044, 2045, 2046, 2047, 2048, 2049, 2050, 2054, 2055, 2059,
1321 2060, 2061, 2062, 2066, 2067, 2068, 2072, 2073, 2074, 2078,
1322 2079, 2080, 2081, 2082, 2086, 2087, 2088, 2092, 2093, 2097,
1323 2098, 2102, 2103, 2107, 2108, 2112, 2113, 2117, 2118, 2119,
1324 2118, 2121, 2122, 2121, 2127, 2128, 2129, 2130, 2131, 2132,
1325 2133, 2134, 2135, 2136, 2137, 2138, 2142, 2143, 2147, 2151,
1326 2153, 2155, 2160, 2161, 2163, 2165, 2169, 2170, 2171, 2173,
1327 2174, 2175, 2176, 2177, 2178, 2179, 2182, 2184, 2187, 2189,
1328 2193, 2197, 2198, 2199, 2200, 2201, 2205, 2206, 2207, 2208
d0b80d80 1329};
1330#endif
1331
08cf8642 1332#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
1333/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
1334 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
d0b80d80 1335static const char *const yytname[] =
1336{
08cf8642 1337 "$end", "error", "$undefined", "BADTOK", "SKIPTOK", "CTOK_ELIPSIS",
1338 "CASE", "DEFAULT", "CIF", "CELSE", "SWITCH", "WHILE", "DO", "CFOR",
1339 "GOTO", "CONTINUE", "BREAK", "RETURN", "TSEMI", "TLBRACE", "TRBRACE",
1340 "TCOMMA", "TCOLON", "TASSIGN", "TLPAREN", "TRPAREN", "TLSQBR", "TRSQBR",
1341 "TDOT", "TAMPERSAND", "TEXCL", "TTILDE", "TMINUS", "TPLUS", "TMULT",
1342 "TDIV", "TPERCENT", "TLT", "TGT", "TCIRC", "TBAR", "TQUEST", "CSIZEOF",
1343 "CALIGNOF", "CTYPEOF", "ARROW_OP", "CTYPEDEF", "COFFSETOF", "INC_OP",
1344 "DEC_OP", "LEFT_OP", "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP",
1345 "AND_OP", "OR_OP", "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN",
1346 "ADD_ASSIGN", "SUB_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN",
1347 "XOR_ASSIGN", "OR_ASSIGN", "CSTRUCT", "CUNION", "CENUM", "VA_ARG",
1348 "VA_DCL", "QWARN", "QGLOBALS", "QMODIFIES", "QNOMODS", "QCONSTANT",
1349 "QFUNCTION", "QITER", "QDEFINES", "QUSES", "QALLOCATES", "QSETS",
1350 "QRELEASES", "QPRECLAUSE", "QPOSTCLAUSE", "QINVARIANT", "QALT", "QUNDEF",
1351 "QKILLED", "QENDMACRO", "LLMACRO", "LLMACROITER", "LLMACROEND",
1352 "TENDMACRO", "QDREVEALSTATE", "QSWITCHBREAK", "QLOOPBREAK",
1353 "QINNERBREAK", "QSAFEBREAK", "QINNERCONTINUE", "QFALLTHROUGH",
1354 "QLINTNOTREACHED", "QLINTFALLTHROUGH", "QLINTFALLTHRU", "QARGSUSED",
1355 "QPRINTFLIKE", "QLINTPRINTFLIKE", "QSCANFLIKE", "QMESSAGELIKE",
1356 "QNOTREACHED", "QCONST", "QRESTRICT", "QVOLATILE", "QINLINE",
1357 "QEXTENSION", "QEXTERN", "QSTATIC", "QAUTO", "QREGISTER", "QOUT", "QIN",
1358 "QYIELD", "QONLY", "QTEMP", "QSHARED", "QREF", "QUNIQUE", "QCHECKED",
1359 "QUNCHECKED", "QCHECKEDSTRICT", "QCHECKMOD", "QKEEP", "QKEPT",
1360 "QPARTIAL", "QSPECIAL", "QOWNED", "QDEPENDENT", "QRETURNED", "QEXPOSED",
1361 "QNULL", "QOBSERVER", "QISNULL", "QEXITS", "QMAYEXIT", "QNEVEREXIT",
1362 "QTRUEEXIT", "QFALSEEXIT", "QLONG", "QSIGNED", "QUNSIGNED", "QSHORT",
1363 "QUNUSED", "QSEF", "QNOTNULL", "QRELNULL", "QABSTRACT", "QNUMABSTRACT",
1364 "QCONCRETE", "QMUTABLE", "QIMMUTABLE", "QTRUENULL", "QFALSENULL",
1365 "QEXTERNAL", "QREFCOUNTED", "QREFS", "QNEWREF", "QTEMPREF", "QKILLREF",
1366 "QRELDEF", "CGCHAR", "CBOOL", "CINT", "CGFLOAT", "CDOUBLE", "CVOID",
1367 "QANYTYPE", "QINTEGRALTYPE", "QUNSIGNEDINTEGRALTYPE",
1368 "QSIGNEDINTEGRALTYPE", "QNULLTERMINATED", "QSETBUFFERSIZE",
1369 "QSETSTRINGLENGTH", "QMAXSET", "QMAXREAD", "QTESTINRANGE", "TCAND",
1370 "IDENTIFIER", "NEW_IDENTIFIER", "TYPE_NAME_OR_ID", "CANNOTATION",
1371 "CCONSTANT", "ITER_NAME", "ITER_ENDNAME", "TYPE_NAME", "METASTATE_NAME",
1372 "$accept", "file", "externalDefs", "externalDef", "constantDecl",
1373 "fcnDecl", "@1", "plainFcn", "plainNamedDecl", "namedDeclBase", "@2",
1374 "@3", "plainNamedDeclBase", "@4", "@5", "iterDecl", "@6", "@7",
1375 "macroDef", "fcnDefHdr", "metaStateConstraint", "metaStateSpecifier",
1376 "@8", "@9", "metaStateExpression", "metaStateName",
1377 "constraintSeperator", "BufConstraintList", "BufConstraint",
1378 "bufferModifier", "relationalOp", "BufConstraintExpr",
1379 "BufConstraintTerm", "BufConstraintSrefExpr", "BufUnaryOp",
1380 "BufBinaryOp", "functionClauses", "functionClausesPlain",
1381 "functionClause", "functionClausePlain", "globalsClause",
1382 "globalsClausePlain", "@10", "nomodsClause", "modifiesClause",
1383 "modifiesClausePlain", "@11", "flagSpec", "flagId", "optWarnClause",
1384 "warnClause", "warnClausePlain", "globIdList", "globIdListExpr",
1385 "optGlobQuals", "globId", "globQual", "stateTag", "conditionTag",
1386 "fcnDefHdrAux", "fcnBody", "@12", "@13", "@14", "fcnDef", "locModifies",
1387 "modListExpr", "mExpr", "modList", "specClauseListExpr",
1388 "optSpecClauseList", "specClauseList", "primaryExpr", "@15",
1389 "postfixExpr", "argumentExprList", "unaryExpr", "fieldDesignator",
1390 "offsetofExpr", "sizeofExpr", "@16", "processSizeof", "endprocessSizeof",
1391 "sizeofExprAux", "castExpr", "timesExpr", "plusExpr", "shiftExpr",
1392 "relationalExpr", "equalityExpr", "bitandExpr", "xorExpr", "bitorExpr",
1393 "andExpr", "@17", "orExpr", "@18", "conditionalExpr", "@19", "@20",
1394 "@21", "@22", "assignExpr", "expr", "optExpr", "constantExpr",
1395 "initializer", "instanceDecl", "@23", "@24", "namedInitializerType",
1396 "namedInitializer", "@25", "typeDecl", "@26", "IsType", "PushType",
1397 "namedInitializerList", "namedInitializerListAux",
1398 "namedInitializerTypeList", "namedInitializerTypeListAux",
1399 "optDeclarators", "init", "designation", "designatorList", "designator",
1400 "initList", "storageSpecifier", "stateClause", "stateClausePlain", "@27",
1401 "conditionClause", "startConditionClause", "conditionClausePlain", "@28",
1402 "@29", "functionConstraint", "exitsQualifier", "checkQualifier",
1403 "stateQualifier", "paramQualifier", "visibilityQualifier",
1404 "returnQualifier", "typedefQualifier", "refcountQualifier",
1405 "typeModifier", "definedQualifier", "typeQualifier", "typeSpecifier",
1406 "completeType", "completeTypeSpecifier", "altType",
1407 "completeTypeSpecifierAux", "optCompleteType", "optStructInvariant",
1408 "suSpc", "@30", "@31", "@32", "@33", "@34", "@35", "@36", "@37",
1409 "NotType", "structDeclList", "structDecl", "structNamedDeclList",
1410 "structNamedDecl", "enumSpc", "@38", "enumeratorList", "enumerator",
1411 "optNamedDecl", "namedDecl", "genericParamList", "innerMods",
1412 "innerModsList", "pointers", "paramIdList", "idList", "paramTypeList",
1413 "paramList", "@39", "@40", "paramDecl", "typeExpression", "abstractDecl",
1414 "optAbstractDeclBase", "abstractDeclBase", "stmt", "debugStmt",
1415 "iterBody", "endBody", "iterDefStmtList", "iterDefIterationStmt",
1416 "forPred", "@41", "@42", "partialIterStmt", "@43", "iterDefStmt",
1417 "iterSelectionStmt", "@44", "openScope", "closeScope", "macroBody",
1418 "stmtErr", "labeledStmt", "optExtraFallThroughs", "caseStmt", "@45",
1419 "@46", "defaultStmt", "@47", "@48", "compoundStmt", "compoundStmtErr",
1420 "CreateInnerScope", "DeleteInnerScope", "CreateStructInnerScope",
1421 "DeleteStructInnerScope", "DeleteInnerScopeSafe", "compoundStmtRest",
1422 "compoundStmtAux", "compoundStmtAuxErr", "stmtListErr",
1423 "initializerList", "typeInitializerList", "typeInitializer", "stmtList",
1424 "expressionStmt", "expressionStmtErr", "ifPred", "selectionStmt", "@49",
1425 "@50", "whilePred", "iterWhilePred", "iterStmt", "@51", "@52",
1426 "iterArgList", "@53", "iterArgExpr", "cconstantExpr", "primaryIterExpr",
1427 "postfixIterExpr", "unaryIterExpr", "castIterExpr", "timesIterExpr",
1428 "plusIterExpr", "shiftIterExpr", "relationalIterExpr",
1429 "equalityIterExpr", "bitandIterExpr", "xorIterExpr", "bitorIterExpr",
1430 "andIterExpr", "orIterExpr", "conditionalIterExpr", "@54", "@55", "@56",
1431 "@57", "assignIterExpr", "endIter", "doHeader", "iterationStmt",
1432 "iterationStmtErr", "jumpStmt", "optSemi", "optComma", "id", "newId",
d0b80d80 1433 "typeName", 0
1434};
1435#endif
1436
08cf8642 1437# ifdef YYPRINT
1438/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
1439 token YYLEX-NUM. */
1440static const yytype_uint16 yytoknum[] =
1441{
1442 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
1443 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
1444 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1445 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
1446 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
1447 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
1448 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
1449 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
1450 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
1451 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
1452 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
1453 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
1454 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
1455 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
1456 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
1457 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
1458 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
1459 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
1460 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
1461 445, 446, 447, 448, 449, 450, 451
1462};
1463# endif
1464
1465/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1466static const yytype_uint16 yyr1[] =
d0b80d80 1467{
08cf8642 1468 0, 197, 198, 198, 199, 199, 200, 200, 200, 200,
1469 200, 200, 200, 200, 201, 201, 203, 202, 204, 204,
1470 205, 205, 206, 206, 206, 206, 207, 206, 208, 206,
1471 209, 209, 209, 209, 210, 209, 211, 209, 213, 214,
1472 212, 215, 215, 215, 215, 216, 217, 219, 218, 220,
1473 218, 221, 221, 222, 223, 223, 224, 224, 225, 226,
1474 226, 227, 227, 227, 228, 228, 228, 229, 229, 230,
1475 230, 230, 230, 230, 230, 230, 230, 231, 232, 232,
1476 233, 233, 234, 234, 235, 235, 235, 235, 235, 235,
1477 236, 236, 236, 236, 236, 236, 237, 239, 238, 240,
1478 241, 243, 242, 244, 244, 245, 246, 246, 247, 248,
1479 248, 249, 249, 250, 251, 251, 252, 252, 252, 253,
1480 253, 253, 253, 253, 254, 254, 254, 254, 254, 255,
1481 255, 256, 256, 258, 257, 259, 260, 257, 261, 262,
1482 262, 263, 263, 263, 263, 263, 263, 263, 263, 263,
1483 264, 264, 265, 265, 266, 266, 266, 266, 266, 266,
1484 266, 266, 267, 267, 268, 268, 269, 269, 269, 269,
1485 269, 269, 270, 269, 271, 271, 271, 271, 271, 271,
1486 271, 271, 271, 271, 272, 272, 273, 273, 273, 273,
1487 273, 273, 273, 273, 273, 273, 273, 274, 274, 274,
1488 275, 277, 276, 278, 279, 280, 280, 280, 280, 281,
1489 281, 282, 282, 282, 282, 283, 283, 283, 284, 284,
1490 284, 285, 285, 285, 285, 285, 286, 286, 286, 287,
1491 287, 288, 288, 289, 289, 290, 291, 290, 292, 293,
1492 292, 294, 295, 296, 294, 297, 298, 294, 299, 299,
1493 299, 299, 299, 299, 299, 299, 299, 299, 299, 299,
1494 300, 300, 301, 301, 302, 303, 303, 303, 304, 305,
1495 304, 306, 304, 307, 307, 308, 309, 308, 311, 310,
1496 310, 310, 312, 313, 314, 315, 315, 316, 317, 317,
1497 318, 318, 319, 319, 319, 319, 320, 320, 321, 321,
1498 322, 322, 323, 323, 324, 324, 324, 324, 324, 325,
1499 327, 326, 328, 329, 331, 330, 332, 330, 333, 333,
1500 334, 334, 334, 334, 334, 335, 335, 335, 335, 336,
1501 336, 336, 336, 336, 336, 336, 336, 336, 336, 336,
1502 336, 336, 336, 336, 336, 336, 337, 337, 338, 338,
1503 339, 339, 340, 340, 340, 340, 340, 341, 341, 341,
1504 341, 341, 341, 342, 342, 342, 342, 343, 343, 343,
1505 343, 344, 344, 344, 344, 344, 344, 344, 344, 344,
1506 344, 344, 344, 345, 345, 345, 345, 345, 345, 345,
1507 345, 345, 345, 345, 345, 345, 345, 346, 347, 347,
1508 348, 348, 349, 349, 349, 350, 350, 351, 353, 354,
1509 352, 355, 356, 352, 352, 352, 357, 358, 352, 359,
1510 360, 352, 352, 352, 352, 352, 361, 362, 362, 362,
1511 363, 363, 364, 364, 365, 365, 365, 366, 367, 366,
1512 366, 368, 368, 368, 369, 369, 370, 370, 370, 370,
1513 371, 371, 372, 372, 373, 373, 373, 374, 374, 375,
1514 375, 375, 375, 376, 376, 377, 377, 378, 378, 378,
1515 380, 379, 381, 379, 382, 382, 383, 383, 384, 384,
1516 384, 385, 385, 386, 386, 386, 386, 386, 386, 386,
1517 386, 386, 387, 387, 387, 387, 387, 387, 387, 387,
1518 387, 387, 388, 389, 390, 391, 391, 392, 392, 392,
1519 392, 394, 395, 393, 397, 396, 396, 398, 398, 398,
1520 398, 398, 398, 398, 398, 398, 398, 398, 398, 398,
1521 400, 399, 401, 402, 403, 403, 404, 404, 404, 404,
1522 404, 404, 404, 404, 404, 404, 404, 404, 405, 405,
1523 406, 406, 408, 407, 409, 407, 411, 410, 412, 410,
1524 413, 413, 414, 415, 416, 417, 418, 419, 420, 420,
1525 420, 420, 420, 420, 420, 420, 421, 422, 422, 422,
1526 422, 423, 423, 424, 424, 425, 425, 426, 426, 427,
1527 427, 428, 428, 429, 429, 429, 430, 431, 432, 431,
1528 433, 431, 434, 435, 437, 438, 436, 439, 440, 439,
1529 441, 441, 441, 441, 442, 442, 443, 443, 444, 444,
1530 444, 444, 444, 444, 444, 444, 444, 445, 445, 445,
1531 445, 445, 445, 445, 445, 445, 445, 446, 446, 447,
1532 447, 447, 447, 448, 448, 448, 449, 449, 449, 450,
1533 450, 450, 450, 450, 451, 451, 451, 452, 452, 453,
1534 453, 454, 454, 455, 455, 456, 456, 457, 458, 459,
1535 457, 460, 461, 457, 462, 462, 462, 462, 462, 462,
1536 462, 462, 462, 462, 462, 462, 463, 463, 464, 465,
1537 465, 465, 466, 466, 466, 466, 467, 467, 467, 467,
1538 467, 467, 467, 467, 467, 467, 468, 468, 469, 469,
1539 470, 471, 471, 471, 471, 471, 472, 472, 472, 472
d0b80d80 1540};
1541
08cf8642 1542/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1543static const yytype_uint8 yyr2[] =
d0b80d80 1544{
08cf8642 1545 0, 2, 0, 1, 1, 2, 2, 1, 1, 1,
1546 1, 1, 1, 1, 8, 11, 0, 5, 1, 3,
1547 1, 2, 1, 6, 3, 6, 0, 6, 0, 7,
1548 1, 6, 3, 6, 0, 6, 0, 7, 0, 0,
1549 10, 3, 3, 3, 2, 1, 3, 0, 4, 0,
1550 4, 1, 3, 1, 1, 1, 3, 1, 3, 1,
1551 1, 1, 1, 1, 1, 4, 5, 1, 1, 1,
1552 1, 3, 4, 2, 3, 3, 3, 1, 1, 1,
1553 0, 2, 0, 2, 1, 1, 1, 1, 1, 1,
1554 1, 1, 1, 1, 1, 1, 2, 0, 4, 1,
1555 2, 0, 3, 1, 3, 1, 1, 0, 2, 3,
1556 2, 1, 3, 2, 0, 2, 1, 1, 1, 1,
368f75ae 1557 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
08cf8642 1558 1, 1, 3, 0, 3, 0, 0, 4, 2, 2,
1559 1, 1, 1, 1, 3, 4, 2, 3, 3, 3,
1560 1, 1, 1, 3, 1, 1, 3, 4, 2, 3,
1561 3, 3, 0, 1, 1, 3, 1, 1, 1, 3,
1562 1, 1, 0, 4, 1, 4, 3, 4, 6, 5,
1563 5, 2, 2, 7, 1, 3, 1, 2, 2, 2,
1564 2, 2, 2, 2, 2, 3, 1, 3, 4, 1,
1565 9, 0, 3, 0, 0, 4, 2, 4, 2, 1,
1566 4, 1, 3, 3, 3, 1, 3, 3, 1, 3,
1567 3, 1, 3, 3, 3, 3, 1, 3, 3, 1,
1568 3, 1, 3, 1, 3, 1, 0, 4, 1, 0,
1569 4, 1, 0, 0, 6, 0, 0, 7, 1, 3,
1570 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1571 1, 3, 0, 1, 1, 1, 1, 1, 3, 0,
1572 9, 0, 11, 1, 1, 2, 0, 6, 0, 8,
1573 4, 4, 0, 0, 2, 1, 4, 2, 1, 4,
1574 0, 4, 1, 3, 4, 2, 2, 2, 1, 2,
1575 3, 2, 1, 3, 1, 1, 1, 1, 1, 2,
1576 0, 6, 2, 2, 0, 6, 0, 5, 1, 1,
d0b80d80 1577 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
d0b80d80 1578 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1579 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1580 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1581 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
08cf8642 1582 1, 2, 2, 2, 2, 2, 2, 2, 2, 2,
d0b80d80 1583 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
08cf8642 1584 2, 2, 2, 2, 2, 2, 2, 3, 1, 4,
1585 1, 3, 2, 2, 2, 0, 1, 0, 0, 0,
1586 12, 0, 0, 11, 6, 6, 0, 0, 10, 0,
1587 0, 10, 5, 5, 4, 4, 0, 1, 1, 2,
1588 5, 3, 2, 4, 1, 3, 4, 6, 0, 8,
1589 4, 1, 3, 2, 1, 4, 1, 1, 2, 2,
1590 1, 2, 1, 2, 1, 1, 1, 1, 2, 1,
1591 2, 2, 3, 1, 3, 1, 3, 1, 1, 3,
1592 0, 2, 0, 4, 4, 1, 1, 2, 1, 1,
1593 2, 0, 1, 5, 2, 3, 3, 4, 3, 4,
1594 4, 5, 1, 1, 1, 1, 1, 1, 1, 1,
1595 1, 1, 4, 1, 1, 1, 2, 2, 7, 6,
1596 2, 0, 0, 10, 0, 6, 1, 1, 1, 1,
1597 2, 1, 1, 1, 1, 1, 1, 1, 3, 1,
1598 0, 3, 2, 2, 1, 1, 1, 1, 1, 1,
1599 1, 1, 1, 1, 3, 1, 1, 1, 2, 2,
1600 0, 2, 0, 4, 0, 6, 0, 3, 0, 5,
1601 3, 2, 3, 0, 0, 0, 0, 0, 1, 2,
1602 2, 3, 2, 3, 3, 4, 2, 2, 3, 3,
1603 4, 1, 2, 1, 2, 1, 3, 1, 4, 1,
1604 2, 1, 2, 1, 2, 1, 4, 2, 0, 5,
1605 0, 6, 4, 4, 0, 0, 10, 1, 0, 4,
1606 1, 1, 1, 1, 1, 2, 1, 3, 1, 4,
1607 3, 4, 6, 5, 5, 2, 2, 1, 2, 2,
1608 2, 2, 2, 2, 2, 2, 1, 1, 4, 1,
1609 3, 3, 3, 1, 3, 3, 1, 3, 3, 1,
1610 3, 3, 3, 3, 1, 3, 3, 1, 3, 1,
1611 3, 1, 3, 1, 3, 1, 3, 1, 0, 0,
1612 6, 0, 0, 7, 1, 3, 3, 3, 3, 3,
1613 3, 3, 3, 3, 3, 3, 1, 0, 1, 2,
1614 7, 2, 2, 7, 6, 2, 3, 2, 3, 2,
1615 3, 3, 3, 3, 2, 3, 0, 1, 0, 1,
1616 1, 1, 1, 1, 1, 1, 1, 1, 4, 4
d0b80d80 1617};
1618
08cf8642 1619/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1620 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1621 means the default is an error. */
1622static const yytype_uint16 yydefact[] =
d0b80d80 1623{
08cf8642 1624 0, 13, 12, 459, 0, 426, 266, 426, 16, 0,
1625 0, 0, 0, 282, 282, 282, 305, 304, 306, 307,
1626 308, 367, 368, 331, 333, 332, 336, 337, 325, 327,
1627 328, 326, 334, 335, 369, 370, 329, 330, 346, 342,
1628 338, 343, 339, 320, 321, 324, 322, 323, 364, 365,
1629 366, 363, 348, 347, 341, 340, 352, 353, 354, 355,
1630 356, 350, 351, 349, 357, 358, 361, 362, 359, 360,
1631 426, 426, 426, 426, 426, 426, 426, 426, 426, 426,
1632 344, 710, 711, 715, 345, 712, 713, 716, 0, 0,
1633 4, 7, 8, 450, 9, 10, 135, 45, 706, 11,
1634 265, 267, 0, 405, 282, 282, 282, 282, 282, 282,
1635 282, 282, 426, 282, 405, 405, 426, 398, 426, 0,
1636 426, 131, 282, 714, 22, 426, 454, 455, 456, 457,
1637 460, 461, 282, 285, 282, 282, 278, 426, 717, 426,
1638 426, 715, 0, 547, 203, 556, 0, 0, 0, 688,
1639 0, 0, 0, 0, 203, 593, 0, 203, 203, 203,
1640 203, 203, 203, 282, 203, 203, 0, 44, 0, 0,
1641 0, 0, 0, 0, 550, 203, 171, 167, 170, 614,
1642 604, 174, 186, 209, 196, 282, 211, 215, 218, 221,
1643 226, 229, 231, 233, 235, 238, 241, 248, 260, 595,
1644 546, 0, 0, 581, 536, 537, 538, 539, 0, 0,
1645 540, 203, 541, 0, 542, 168, 0, 543, 545, 166,
1646 0, 529, 0, 591, 0, 563, 516, 0, 0, 0,
1647 525, 0, 526, 505, 524, 521, 522, 517, 518, 519,
1648 0, 0, 523, 530, 0, 0, 527, 504, 0, 371,
1649 373, 372, 383, 385, 384, 386, 387, 388, 389, 390,
1650 391, 392, 1, 5, 282, 0, 133, 138, 426, 707,
1651 6, 426, 406, 402, 376, 378, 375, 377, 380, 379,
1652 381, 382, 396, 374, 403, 404, 0, 282, 282, 394,
1653 282, 282, 0, 395, 451, 393, 458, 462, 282, 167,
1654 170, 0, 426, 476, 0, 166, 426, 0, 284, 426,
1655 0, 275, 282, 706, 18, 20, 0, 426, 282, 30,
1656 470, 209, 264, 552, 0, 203, 203, 203, 203, 0,
1657 697, 699, 704, 0, 563, 0, 0, 0, 189, 194,
1658 193, 192, 191, 190, 0, 282, 187, 188, 203, 203,
1659 0, 0, 0, 0, 0, 550, 0, 282, 549, 501,
1660 203, 492, 493, 494, 495, 0, 496, 497, 203, 499,
1661 203, 498, 500, 563, 203, 203, 181, 182, 0, 203,
1662 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
1663 204, 201, 203, 203, 203, 203, 203, 203, 203, 203,
1664 203, 203, 203, 203, 203, 203, 203, 203, 236, 245,
1665 239, 594, 203, 695, 41, 0, 564, 582, 597, 692,
1666 615, 0, 548, 203, 0, 0, 0, 592, 42, 506,
1667 510, 583, 426, 520, 532, 533, 0, 0, 0, 43,
1668 24, 203, 470, 426, 426, 282, 268, 132, 0, 400,
1669 0, 426, 0, 426, 0, 282, 0, 718, 282, 203,
1670 0, 478, 477, 479, 719, 282, 281, 282, 280, 276,
1671 426, 0, 282, 0, 426, 282, 21, 467, 0, 0,
1672 452, 468, 282, 0, 557, 0, 600, 0, 263, 0,
1673 696, 705, 563, 0, 169, 203, 544, 282, 0, 0,
1674 0, 700, 701, 702, 703, 698, 551, 203, 558, 0,
1675 691, 426, 561, 689, 0, 0, 176, 0, 184, 0,
1676 0, 0, 249, 250, 251, 252, 253, 254, 255, 256,
1677 257, 258, 259, 195, 0, 212, 213, 214, 217, 216,
1678 219, 220, 222, 223, 224, 225, 227, 228, 230, 232,
1679 234, 203, 0, 203, 203, 261, 577, 717, 581, 0,
1680 426, 562, 598, 0, 0, 528, 514, 282, 584, 531,
1681 0, 0, 26, 0, 568, 203, 589, 134, 426, 203,
1682 563, 282, 269, 399, 282, 416, 0, 424, 419, 0,
1683 425, 0, 441, 444, 438, 440, 397, 484, 0, 470,
1684 480, 203, 0, 286, 274, 288, 273, 282, 282, 282,
1685 706, 17, 32, 203, 470, 282, 19, 453, 463, 465,
1686 38, 472, 426, 471, 475, 553, 596, 0, 602, 203,
1687 173, 203, 210, 426, 0, 282, 502, 554, 0, 560,
1688 576, 0, 605, 203, 177, 175, 282, 282, 203, 203,
1689 202, 237, 243, 0, 240, 578, 579, 203, 203, 203,
1690 603, 203, 426, 203, 426, 80, 28, 569, 572, 203,
1691 203, 570, 203, 590, 137, 0, 271, 282, 401, 422,
1692 565, 408, 423, 565, 411, 282, 443, 282, 0, 485,
1693 488, 282, 0, 486, 0, 470, 426, 107, 287, 203,
1694 282, 282, 0, 34, 0, 282, 0, 82, 469, 282,
1695 481, 203, 0, 203, 587, 708, 585, 0, 0, 0,
1696 559, 203, 203, 185, 179, 180, 282, 206, 282, 208,
1697 203, 246, 580, 599, 0, 282, 203, 203, 203, 203,
1698 203, 203, 203, 203, 0, 167, 170, 186, 209, 636,
1699 215, 218, 221, 226, 229, 231, 233, 235, 238, 0,
1700 608, 607, 168, 618, 627, 637, 639, 643, 646, 649,
1701 654, 657, 659, 661, 663, 665, 667, 674, 610, 166,
1702 0, 25, 0, 97, 101, 99, 124, 125, 126, 127,
1703 128, 129, 130, 27, 80, 84, 0, 86, 85, 0,
1704 89, 0, 426, 426, 87, 0, 88, 316, 0, 80,
1705 573, 574, 203, 571, 23, 282, 290, 426, 414, 565,
1706 426, 415, 565, 437, 442, 203, 0, 0, 489, 487,
1707 490, 0, 282, 0, 106, 203, 203, 0, 292, 277,
1708 203, 0, 298, 0, 203, 0, 426, 82, 36, 0,
1709 464, 466, 39, 82, 90, 92, 91, 95, 93, 94,
1710 473, 446, 0, 282, 481, 447, 482, 601, 511, 708,
1711 203, 0, 0, 178, 555, 0, 608, 0, 0, 244,
1712 203, 694, 0, 0, 189, 194, 193, 192, 191, 190,
1713 187, 188, 203, 203, 203, 181, 182, 0, 203, 203,
1714 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
1715 203, 203, 203, 203, 203, 203, 203, 203, 203, 203,
1716 203, 203, 203, 203, 203, 203, 671, 203, 515, 0,
1717 509, 105, 110, 103, 114, 706, 81, 96, 100, 108,
1718 310, 313, 309, 0, 314, 312, 29, 575, 203, 0,
1719 428, 426, 426, 427, 426, 426, 426, 445, 282, 483,
1720 491, 289, 279, 302, 0, 0, 301, 295, 296, 299,
1721 297, 290, 14, 33, 35, 82, 31, 706, 83, 470,
1722 474, 448, 449, 203, 0, 586, 183, 0, 199, 0,
1723 563, 205, 207, 247, 693, 169, 203, 0, 176, 0,
1724 0, 0, 0, 675, 676, 677, 678, 679, 680, 681,
1725 682, 683, 684, 685, 212, 213, 214, 217, 216, 219,
1726 220, 222, 223, 224, 225, 227, 228, 230, 232, 234,
1727 664, 0, 203, 666, 203, 508, 109, 0, 119, 120,
1728 121, 122, 123, 706, 111, 426, 114, 0, 0, 142,
1729 143, 102, 152, 706, 140, 141, 0, 49, 0, 0,
1730 59, 60, 70, 68, 319, 0, 318, 57, 77, 0,
1731 64, 67, 0, 706, 69, 162, 290, 282, 426, 0,
1732 282, 429, 417, 426, 420, 426, 439, 293, 203, 300,
1733 706, 37, 0, 282, 512, 588, 282, 203, 0, 690,
1734 687, 210, 282, 177, 175, 282, 282, 669, 0, 609,
1735 104, 114, 98, 117, 113, 118, 116, 115, 0, 146,
1736 0, 0, 0, 0, 139, 0, 0, 155, 164, 706,
1737 154, 0, 0, 67, 0, 73, 0, 55, 54, 0,
1738 62, 61, 63, 0, 0, 0, 0, 0, 0, 282,
1739 706, 163, 0, 270, 282, 431, 282, 282, 426, 434,
1740 0, 409, 0, 412, 294, 303, 0, 40, 282, 0,
1741 200, 0, 197, 686, 564, 0, 179, 180, 203, 672,
1742 112, 147, 144, 150, 0, 151, 148, 149, 153, 0,
1743 158, 0, 0, 0, 0, 282, 0, 79, 78, 0,
1744 74, 0, 51, 46, 47, 56, 67, 58, 71, 0,
1745 75, 76, 0, 0, 317, 282, 282, 291, 203, 282,
1746 0, 432, 282, 418, 0, 421, 0, 15, 513, 198,
1747 606, 178, 670, 203, 145, 159, 156, 0, 160, 161,
1748 165, 311, 53, 50, 0, 0, 72, 48, 65, 315,
1749 272, 435, 426, 430, 203, 407, 413, 673, 157, 66,
1750 52, 433, 436, 410
d0b80d80 1751};
1752
08cf8642 1753/* YYDEFGOTO[NTERM-NUM]. */
1754static const yytype_int16 yydefgoto[] =
d0b80d80 1755{
08cf8642 1756 -1, 88, 89, 90, 91, 92, 140, 313, 314, 93,
1757 665, 809, 315, 847, 975, 94, 707, 977, 950, 96,
1758 1064, 1202, 1147, 1131, 1203, 1243, 1139, 1066, 1067, 1068,
1759 1143, 1069, 1070, 1206, 1072, 1199, 793, 852, 794, 853,
1760 795, 854, 934, 855, 798, 856, 935, 932, 933, 833,
1761 800, 801, 1043, 1044, 1045, 1114, 1046, 802, 803, 97,
1762 267, 443, 268, 580, 98, 1051, 1183, 1184, 1053, 1128,
1763 1150, 1129, 181, 334, 182, 517, 183, 987, 184, 749,
1764 534, 185, 533, 650, 186, 187, 188, 189, 190, 191,
1765 192, 193, 194, 195, 551, 196, 554, 197, 552, 730,
1766 553, 880, 198, 227, 489, 323, 431, 100, 677, 815,
1767 605, 606, 609, 101, 309, 102, 265, 134, 135, 607,
1768 608, 949, 839, 840, 841, 842, 964, 103, 804, 858,
1769 1056, 806, 807, 859, 1075, 943, 1073, 104, 105, 106,
1770 107, 108, 109, 110, 111, 112, 113, 114, 115, 303,
1771 432, 448, 117, 273, 1263, 118, 819, 1224, 822, 1226,
1772 680, 1160, 683, 1162, 119, 952, 953, 1157, 1158, 120,
1773 688, 591, 592, 863, 137, 479, 129, 130, 122, 617,
1774 618, 480, 481, 482, 709, 623, 336, 827, 865, 463,
1775 358, 359, 228, 248, 229, 230, 360, 983, 1169, 232,
1776 661, 233, 234, 436, 235, 236, 202, 417, 361, 356,
1777 362, 483, 719, 363, 324, 638, 364, 207, 365, 561,
1778 817, 1082, 241, 577, 512, 416, 209, 578, 715, 716,
1779 579, 366, 210, 211, 367, 658, 627, 368, 244, 369,
1780 373, 722, 760, 929, 761, 215, 763, 764, 765, 766,
1781 767, 768, 769, 770, 771, 772, 773, 774, 775, 776,
1782 777, 1031, 1178, 1032, 1233, 778, 1174, 370, 371, 217,
1783 372, 270, 871, 305, 220, 125
d0b80d80 1784};
1785
08cf8642 1786/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1787 STATE-NUM. */
1788#define YYPACT_NINF -1033
1789static const yytype_int16 yypact[] =
d0b80d80 1790{
08cf8642 1791 2259, -1033, -1033, 357, 60, 5469, -1033, 6624, -1033, 677,
1792 1966, 3655, 3655, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1793 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1794 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1795 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1796 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1797 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1798 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1799 -1033, -1033, -1033, 805, -1033, -1033, -1033, -1033, 118, 2441,
1800 -1033, -1033, -1033, 331, -1033, -1033, 87, -1033, 134, -1033,
1801 -1033, -1033, 101, 6210, -1033, -1033, -1033, -1033, -1033, -1033,
1802 -1033, -1033, -1033, -1033, 6210, 6210, 151, 57, -1033, 666,
1803 -1033, -1033, 677, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1804 357, -1033, 1900, -1033, 185, -1033, 151, -1033, -1033, -1033,
1805 5469, -1033, 210, -1033, 5716, -1033, 219, 230, 293, -1033,
1806 300, 677, 348, 362, 879, -1033, 2827, 5716, 5716, 5716,
1807 5716, 5716, 5716, -1033, 5748, 5748, 388, -1033, 395, 371,
1808 456, 463, 487, 417, 415, 4875, -1033, 500, 532, -1033,
1809 543, -1033, 652, 1193, -1033, -1033, -1033, 668, 145, 254,
1810 678, 474, 571, 569, 585, 579, 50, -1033, -1033, 55,
1811 -1033, 3458, 549, 560, -1033, -1033, -1033, -1033, 649, 3217,
1812 -1033, 4875, -1033, 3458, -1033, 501, 3458, -1033, -1033, 699,
1813 702, -1033, 690, -1033, 3022, 543, 704, 205, 656, 3611,
1814 -1033, 3655, -1033, -1033, -1033, 5934, -1033, -1033, -1033, -1033,
1815 740, 762, -1033, -1033, 3655, 3458, -1033, -1033, 669, -1033,
1816 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1817 -1033, -1033, -1033, -1033, 759, 765, -1033, -1033, 6486, -1033,
1818 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1819 -1033, -1033, -1033, -1033, -1033, -1033, 773, 995, -1033, -1033,
1820 677, 677, 14, -1033, 331, -1033, -1033, -1033, 5310, -1033,
1821 -1033, 94, 6624, 414, 777, -1033, -1033, 787, -1033, -1033,
1822 813, 827, 995, 134, -1033, 548, 798, -1033, 677, -1033,
1823 263, -1033, -1033, -1033, 814, 5716, 5716, 5716, 1299, 842,
1824 -1033, -1033, -1033, 346, 844, 593, 862, 867, -1033, -1033,
1825 -1033, -1033, -1033, -1033, 851, 5310, -1033, -1033, 5716, 5716,
1826 876, 926, 929, 938, 960, 415, 529, 5337, -1033, -1033,
1827 4875, -1033, -1033, -1033, -1033, 883, -1033, -1033, 4875, -1033,
1828 4875, -1033, -1033, -1033, 5641, 5716, -1033, -1033, 85, 5716,
1829 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716,
1830 -1033, -1033, 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716,
1831 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716, -1033, 892,
1832 -1033, -1033, 5716, -1033, -1033, 2632, -1033, -1033, 930, -1033,
1833 -1033, 958, -1033, 5716, 618, 972, 998, -1033, -1033, -1033,
1834 -1033, -1033, 151, 5934, -1033, -1033, 3655, 3261, 999, -1033,
1835 -1033, 5716, 368, 3808, 4959, 995, -1033, 384, 944, 1025,
1836 1030, 1033, 1036, 1033, 677, 1038, 475, -1033, -1033, 5652,
1837 1039, 567, -1033, 659, -1033, 995, -1033, 884, -1033, -1033,
1838 -1033, 973, 1049, 1041, -1033, 995, 548, -1033, 677, 1057,
1839 -1033, 1062, 677, 1064, -1033, 483, 1063, 562, 1063, 1072,
1840 -1033, -1033, 844, 1066, -1033, 5364, -1033, -1033, 1071, 1079,
1841 577, -1033, -1033, -1033, -1033, -1033, -1033, 5716, -1033, 1076,
1842 -1033, 3808, -1033, -1033, 1093, 1081, -1033, 638, -1033, 311,
1843 677, 677, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1844 -1033, -1033, -1033, -1033, 631, -1033, -1033, -1033, 668, 668,
1845 145, 145, 254, 254, 254, 254, 678, 678, 474, 571,
1846 569, 5716, 1086, 5716, 5716, -1033, -1033, 2174, -1033, 3414,
1847 3998, -1033, -1033, 1087, 692, -1033, -1033, 995, -1033, -1033,
1848 1100, 1101, -1033, 1102, -1033, 4378, -1033, -1033, 4188, 4422,
1849 844, -1033, 1106, -1033, -1033, 1110, 1113, -1033, 1115, 1114,
1850 -1033, 741, -1033, 1121, -1033, -1033, -1033, -1033, 1111, 626,
1851 659, 5684, 1123, -1033, -1033, -1033, -1033, 1116, -1033, -1033,
1852 310, -1033, -1033, 5716, 502, 995, -1033, -1033, 1128, -1033,
1853 -1033, 1145, 6624, -1033, -1033, -1033, -1033, 1127, -1033, 1299,
1854 -1033, 5385, -1033, -1033, 1134, -1033, -1033, -1033, 1133, -1033,
1855 -1033, 1136, -1033, 5716, -1033, -1033, -1033, -1033, 5775, 5819,
1856 -1033, 585, -1033, 750, 579, -1033, -1033, 4529, 4875, 5716,
1857 -1033, 5853, -1033, 5716, -1033, 1496, -1033, -1033, -1033, 4573,
1858 4680, -1033, 4724, -1033, -1033, 1131, -1033, -1033, -1033, -1033,
1859 -1033, 1138, -1033, -1033, 1142, -1033, 677, -1033, 677, -1033,
1860 -1033, 132, 1144, -1033, 1150, 98, -1033, 1088, -1033, 3549,
1861 -1033, -1033, 1152, -1033, 1147, -1033, 325, 1496, -1033, 677,
1862 925, 4875, 1164, 5385, -1033, 1165, -1033, 1169, 1173, 1182,
1863 -1033, 5716, 5853, -1033, -1033, -1033, 5310, -1033, 5310, -1033,
1864 5716, -1033, -1033, -1033, 698, 5310, 5716, 5716, 5716, 5716,
1865 5716, 5716, 5748, 5748, 1139, 712, 732, 739, 1489, -1033,
1866 983, 783, 802, 761, 909, 1176, 1167, 1168, 1151, 107,
1867 1185, -1033, 45, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1868 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, 758,
1869 775, -1033, 1037, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1870 -1033, -1033, -1033, -1033, 1496, -1033, 1146, -1033, -1033, 1148,
1871 -1033, 1149, -1033, -1033, -1033, 1153, -1033, 1313, 1155, 1496,
1872 -1033, -1033, 4831, -1033, -1033, -1033, -1033, 6348, -1033, -1033,
1873 6348, -1033, -1033, -1033, -1033, 5716, 966, 1200, -1033, -1033,
1874 -1033, 1202, 884, 1211, -1033, 3549, 5716, 677, -1033, -1033,
1875 3549, 519, -1033, 1225, 3549, 1157, -1033, 1496, -1033, 1208,
1876 -1033, -1033, -1033, 1496, -1033, -1033, -1033, -1033, -1033, -1033,
1877 -1033, 331, 1226, -1033, 1007, -1033, 659, -1033, -1033, 1165,
1878 3701, 1244, 677, -1033, -1033, 782, 1240, 1241, 1242, -1033,
1879 5716, 1250, 803, 1245, 804, 822, 824, 848, 855, 857,
1880 864, 880, 5716, 5673, 5716, 896, 908, 109, 5716, 5716,
1881 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716,
1882 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716, 5716,
1883 5716, 5716, 5716, 5716, 5716, 5716, 1252, 5716, -1033, 1254,
1884 1259, -1033, 1090, 1238, 11, 301, -1033, -1033, -1033, -1033,
1885 -1033, -1033, -1033, 453, -1033, -1033, -1033, -1033, 3549, 376,
1886 -1033, 151, 5121, -1033, 6348, 5121, 6348, -1033, -1033, -1033,
1887 -1033, -1033, -1033, -1033, 993, 1256, -1033, -1033, -1033, -1033,
1888 -1033, -1033, -1033, -1033, -1033, 1496, -1033, 134, -1033, 233,
1889 -1033, -1033, -1033, 5705, 1264, -1033, -1033, 258, -1033, 1267,
1890 844, 1134, 1134, -1033, -1033, 913, 5364, 1258, 915, 921,
1891 358, 677, 677, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1892 -1033, -1033, -1033, -1033, 933, 940, 941, 1188, 1196, 874,
1893 898, 84, 363, 455, 530, 91, 552, 106, 165, 477,
1894 585, 1265, 5716, 579, 5853, -1033, 501, 1037, -1033, -1033,
1895 -1033, -1033, -1033, 399, -1033, 6072, 11, 164, 164, -1033,
1896 -1033, -1033, 317, 442, -1033, -1033, 63, -1033, 982, 90,
1897 -1033, -1033, -1033, -1033, -1033, 1263, -1033, 43, -1033, 1008,
1898 -1033, 76, 1274, 134, -1033, 63, -1033, -1033, -1033, 1270,
1899 133, -1033, -1033, 5121, -1033, 5121, -1033, -1033, 5289, -1033,
1900 467, -1033, 1209, 240, -1033, -1033, -1033, 5716, 677, -1033,
1901 1105, 949, -1033, 951, 959, -1033, -1033, -1033, 1003, -1033,
1902 -1033, 11, -1033, -1033, -1033, -1033, -1033, -1033, 498, 317,
1903 793, 677, 677, 164, -1033, 63, 63, -1033, 416, 491,
1904 -1033, 1279, 1004, 581, 90, 421, 58, -1033, -1033, 982,
1905 -1033, -1033, -1033, 982, 22, 677, 677, 1282, 982, -1033,
1906 134, 1284, 612, -1033, 995, -1033, -1033, 1285, -1033, 1286,
1907 1287, -1033, 1289, -1033, -1033, -1033, 1219, -1033, 587, 1288,
1908 -1033, 447, -1033, -1033, -1033, 1290, 971, 984, 5716, -1033,
1909 -1033, -1033, -1033, 317, 1291, 501, -1033, -1033, 317, 639,
1910 416, 850, 677, 677, 63, -1033, 1118, -1033, -1033, 982,
1911 -1033, 581, 1272, -1033, 421, -1033, 421, -1033, -1033, 1293,
1912 -1033, -1033, 1118, 1297, -1033, -1033, -1033, -1033, 5716, 133,
1913 1298, -1033, -1033, -1033, 1304, -1033, 1306, -1033, -1033, -1033,
1914 -1033, 986, -1033, 5716, -1033, -1033, -1033, 1300, -1033, -1033,
1915 416, -1033, -1033, -1033, 1311, 58, -1033, -1033, -1033, -1033,
1916 -1033, -1033, -1033, -1033, 5716, -1033, -1033, -1033, -1033, -1033,
1917 -1033, -1033, -1033, -1033
d0b80d80 1918};
1919
08cf8642 1920/* YYPGOTO[NTERM-NUM]. */
1921static const yytype_int16 yypgoto[] =
d0b80d80 1922{
08cf8642 1923 -1033, -1033, -1033, 1248, -1033, -1033, -1033, -1033, -403, -118,
1924 -1033, -1033, 1020, -1033, -1033, -1033, -1033, -1033, 64, -1033,
1925 -1033, 397, -1033, -1033, 96, 130, -1033, 206, -1033, -1033,
1926 -1033, -938, -1033, -886, -1033, -1033, -620, -778, -1033, -1033,
1927 -1033, -610, -1033, -594, -1033, -577, -1033, 312, -1033, -1033,
1928 654, -668, -1033, 242, 308, -1033, -1033, -1033, -1033, -1033,
1929 -1033, -1033, -1033, -1033, -1033, -1033, -898, 166, -1033, -1032,
1930 -1033, 280, -1033, -1033, -636, 466, 1132, -1033, -1033, 1178,
1931 -1033, -1033, -1033, -1033, -117, -381, -345, -322, -372, -388,
1932 -347, -353, -535, -551, -1033, -626, -1033, -76, -1033, -1033,
1933 -1033, -1033, 1013, 1218, -602, -433, 6, -1033, -1033, -1033,
1934 533, -3, -1033, -1033, -1033, 634, -254, -1033, -1033, -1033,
1935 -1033, -911, -806, -1033, -1033, 523, -1033, -1033, -1033, -554,
1936 -1033, -1033, -1033, -384, -1033, -1033, -1033, -1033, -1033, 559,
1937 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1938 801, 784, -1033, 889, -1033, -1033, -1033, -1033, -1033, -1033,
1939 -1033, -1033, -1033, -1033, 224, -684, -890, -1033, 148, -1033,
1940 -1033, 683, 687, 511, 1, -395, 1246, -1033, 17, -1033,
1941 -1033, -578, -1033, -1033, -1033, 670, -125, 1074, -1033, -448,
1942 1141, 26, 1366, -1033, 1137, -1033, 744, -1033, -1033, -1033,
1943 -1033, -173, -1033, -1033, -1033, -1033, -1033, 20, 799, 1028,
1944 1251, -1033, -1033, 1261, -1033, -1033, -311, -1033, 617, 211,
1945 -423, -737, -1033, 869, -1033, -1033, 969, -187, 673, 518,
1946 -493, 127, -1033, 180, 40, -1033, -1033, 173, -1033, 337,
1947 -1033, -1033, 667, -1033, 356, -639, -1033, -1033, -1033, -1033,
1948 -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033, -1033,
1949 -1033, -1033, -1033, -1033, -1033, -1033, -1033, 1401, -1033, -1033,
1950 1588, -295, 522, 0, 19, -1033
d0b80d80 1951};
1952
08cf8642 1953/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1954 positive, shift that token. If negative, reduce the rule which
1955 number is the opposite. If zero, do what YYDEFACT says.
1956 If YYTABLE_NINF, syntax error. */
1957#define YYTABLE_NINF -718
1958static const yytype_int16 yytable[] =
d0b80d80 1959{
08cf8642 1960 123, 121, 133, 654, 294, 123, 99, 304, 571, 123,
1961 219, 219, 219, 600, 538, 539, 651, 548, 471, 124,
1962 131, 692, 762, 493, 124, 747, 598, 712, 142, 963,
1963 203, 546, 547, 454, 967, 759, 200, 1052, 971, 857,
1964 338, 339, 340, 341, 342, 343, 509, 573, 433, 1208,
1965 212, 425, 540, 541, 550, 796, 429, 1071, 430, 549,
1966 1090, 473, 1081, 1057, 95, 1081, -616, 657, 322, 974,
1967 -616, 797, 616, 411, 637, 978, 412, 542, 543, 544,
1968 545, 444, 1134, 762, 132, 670, 747, 1125, 799, 123,
1969 121, 409, 1059, 1189, 1190, 99, 759, 1126, -47, 1137,
1970 1038, 1039, 1144, 477, 1145, -650, 266, 410, 124, -650,
1971 758, 805, -655, 520, 1134, 412, -655, 831, 262, 457,
1972 1132, 1146, 123, 830, 1059, 271, 757, -658, 399, 400,
1973 521, -658, 1040, 1041, 397, 398, 955, 1001, 242, 242,
1974 123, 124, 1076, 401, 402, 288, 1042, 297, 926, 1118,
1975 1119, 123, 269, 95, 1002, 1156, 219, 318, 459, 319,
1976 403, 404, 1240, 449, 927, 1152, 3, 3, 694, -282,
1977 329, 758, 1133, 1135, 936, 219, 337, 395, 396, 857,
1978 702, 509, 200, 213, 796, 857, -660, 757, 1047, 946,
1979 -660, 243, 243, 1081, 405, 1081, 212, 1091, 1048, 796,
1980 797, 219, 81, 82, 141, 1207, 306, 85, 86, 219,
1981 1213, 219, 705, 219, 1209, 797, 219, 799, 1084, 704,
1982 498, 413, 473, 427, 219, 1188, 412, 200, 560, 219,
1983 1138, 219, 799, 419, 320, 200, 421, 420, 477, 200,
1984 805, 212, 200, 325, 219, 219, 81, 1062, 1201, 212,
1985 1204, 81, 1127, 212, 326, 805, 212, -426, 690, -426,
1986 820, 1244, 866, 569, 429, 438, 459, -426, 477, 674,
1987 1083, 200, 1085, 754, 3, 535, 536, 537, 81, 1062,
1988 750, 808, 1165, 1096, 1097, 212, 1098, 123, 447, 753,
1989 123, 123, 123, 1036, 252, 253, 254, 255, 256, 257,
1990 258, 259, 260, 261, 397, 398, 124, 857, 756, 451,
1991 453, 455, 123, 470, 755, 701, 751, 327, 123, 269,
1992 461, 81, 82, 141, 328, 1047, 85, 86, 269, 213,
1993 850, 124, 412, 700, 754, 1048, 282, 319, 645, 752,
1994 287, 750, 289, 1120, 293, 1121, 1161, 214, 1163, 295,
1995 753, 242, 81, 1049, 1050, -283, 242, 264, 242, 1204,
1996 219, 311, 1122, 312, 491, 322, 330, 412, 219, 756,
1997 219, 242, 633, 477, 213, 755, 1033, 751, 632, 412,
1998 331, 1094, 213, 322, -651, 1104, 213, 350, -651, 213,
1999 1030, 3, 957, 572, 1077, 762, 954, 1078, 747, 956,
2000 752, 692, -426, 965, 243, -426, 378, -426, 759, 243,
2001 808, 243, 348, 397, 398, 219, 866, 269, 213, 349,
2002 1111, -426, -426, -426, 243, 808, -426, -426, 81, 82,
2003 141, 322, 354, 85, 86, 558, 219, 219, -282, 568,
2004 459, 200, 1191, 219, 1192, 123, 581, 1144, 3, 1145,
2005 568, -426, -426, -426, 123, 212, -426, -426, 1057, 449,
2006 269, 1193, 603, 1123, 124, 123, 1146, 123, 412, 126,
2007 127, 128, 351, 593, 1229, 123, -652, 1058, 123, 352,
2008 -652, 1185, 123, 758, 124, 269, 124, 1059, 1078, 81,
2009 1049, 1050, 318, 214, 319, 445, 412, 619, -662, 757,
2010 494, 624, -662, 353, 412, 397, 398, 477, 626, 269,
2011 718, 219, 1194, 81, 82, 141, 406, 355, 85, 86,
2012 123, 123, -711, 1181, 1120, 322, 1121, 703, 403, 404,
2013 465, 1017, 1018, 467, 1027, 507, 508, 322, 214, 646,
2014 647, 475, 968, 1122, 478, 836, 214, 837, 1025, 1026,
2015 214, -653, 1185, 214, -715, -653, -426, -426, -426, 219,
2016 219, -426, -426, 242, 242, -712, 568, 123, 662, 1019,
2017 1020, 1029, -283, -656, 472, 219, 1028, -656, 219, 219,
2018 397, 398, 214, 412, 568, 200, 124, 628, 213, 399,
2019 400, -282, 861, 459, 1021, 1022, 1023, 1024, 412, 212,
2020 405, 877, 636, 878, 401, 402, 1200, 1144, 406, 1145,
2021 883, 411, -478, 459, 412, 123, 243, 243, 494, 884,
2022 885, 886, 887, 888, 889, 407, 1146, 208, 240, 240,
2023 1216, 477, 318, 1078, 319, 408, 427, 1060, 1061, 412,
2024 1054, 81, 1062, 494, 414, 1063, 754, 249, 250, 251,
2025 -426, 690, -426, 750, 879, -534, 567, 219, 219, 643,
2026 -426, 779, 753, 644, 1235, 1191, 478, 1192, 415, 219,
2027 219, 582, 219, 648, 649, 587, 374, 590, 375, 1100,
2028 -426, 756, 1092, -282, 1193, 601, 123, 755, 123, 751,
2029 -426, -426, -426, 420, 610, -426, -426, -426, 615, 219,
2030 376, 377, 392, 393, 394, 593, 123, 593, 461, 123,
2031 123, 219, 752, 412, 423, 399, 400, 660, 843, 412,
2032 600, -714, 779, 881, 422, 851, -713, 864, 624, 124,
2033 401, 402, 213, -613, 290, 291, 292, -613, 274, 275,
2034 276, 277, 278, 279, 280, 281, 861, 283, 1112, 322,
2035 286, 428, 214, -612, 201, 231, 231, -612, 1124, 434,
2036 322, 685, 686, 893, 439, 894, 302, -426, 307, 308,
2037 310, 412, 731, 208, 316, 81, 82, 141, 1149, -611,
2038 85, 86, 435, -611, -426, 1251, 440, 895, 896, 442,
2039 302, 446, 1014, 1015, 1016, 1166, 412, 344, 916, 917,
2040 930, 116, 464, 412, 993, 466, 136, 989, 139, 204,
2041 237, 237, 219, 918, 919, 912, 913, 1047, 208, 391,
2042 1182, 1262, 474, 691, 412, -630, 208, 1048, 995, -630,
2043 208, 468, 123, 208, 1195, 219, 484, 123, 478, -717,
2044 219, 240, 426, -635, 219, -634, 240, -635, 240, -634,
2045 469, 124, 914, 915, 843, 1215, 966, 717, 302, 843,
2046 490, 240, 208, 843, 123, 81, 82, 141, 492, -633,
2047 85, 86, 123, -633, 1047, 497, -632, 1236, -631, 1101,
2048 -632, 864, -631, 124, 1048, -628, 582, 495, 781, -628,
2049 116, 988, 496, -717, 501, -647, 214, 332, 441, -647,
2050 201, -629, 511, 298, 272, -629, 395, 396, 157, 158,
2051 159, 160, 161, 162, -242, 272, 272, -625, 3, -648,
2052 832, -625, 302, -648, 450, 452, 163, 164, 165, -626,
2053 395, 396, 302, -626, -617, 1055, -620, 460, -617, 562,
2054 -620, 317, 643, 1074, 502, 201, 1103, 503, 219, -282,
2055 166, 459, 316, 201, -640, 204, 504, 201, -640, 3,
2056 201, -641, -642, 920, 921, -641, -642, 843, 231, 563,
2057 -638, 897, -621, 231, -638, 231, -621, 1175, 505, 302,
2058 -619, 81, 1049, 1050, -619, 179, 958, 686, 231, 201,
2059 515, 302, -623, -717, -717, 176, -623, 565, -717, -717,
2060 204, 123, 123, 284, 285, -624, 1058, -622, 204, -624,
2061 570, -622, 204, 1087, 1088, 204, 1059, 909, 910, 911,
2062 1105, 1106, 566, 237, 412, 1179, 940, 941, 237, 3,
2063 237, -282, 208, 459, 779, 583, 1197, 1198, 81, 1049,
2064 1050, 3, 179, 237, 204, 1116, 584, 1055, 1055, 585,
2065 294, 1115, -282, 240, 240, 588, 1130, 594, 1074, 1074,
2066 1140, 1141, 1142, 599, 611, 614, 286, 81, 299, 300,
2067 973, 179, 81, 82, 141, 1130, 612, 85, 86, 604,
2068 123, 1159, 620, 621, 412, 586, 625, 589, 219, 595,
2069 629, 630, 596, 123, 581, 460, 634, 602, 123, 124,
2070 635, 639, 1232, 458, 641, 642, 613, 843, 652, 316,
2071 1168, 659, 124, 81, 82, 141, 622, 1172, 85, 86,
2072 1055, 123, 123, 1055, 663, 1130, 1130, 666, 664, 676,
2073 679, 302, 681, 684, 1074, 682, 1074, 696, 689, 1074,
2074 1186, 1187, 322, 1074, 687, 123, 123, 695, 1074, 706,
2075 708, 1217, 711, 631, 123, 720, 814, 1257, 818, 201,
2076 721, 782, 821, 892, 1210, 1211, 1060, 1061, 123, 828,
2077 81, 1062, 848, 124, 1063, 1080, 208, 829, 322, 846,
2078 231, 231, 868, 81, 82, 141, 870, 124, 85, 86,
2079 872, 1055, 123, 123, 1130, 81, 82, 141, 873, 1074,
2080 85, 86, 981, 1093, 874, 922, 923, 925, 924, -645,
2081 928, 1238, 1239, -645, 204, 675, 379, -644, 302, 123,
2082 1159, -644, 392, 393, 394, 959, 931, 960, 199, 962,
2083 392, 393, 394, 976, 602, 237, 237, 937, 124, 938,
2084 939, 697, 698, 699, 942, 1074, 945, 970, 972, 316,
2085 979, 380, 381, 382, 383, 384, 385, 386, 387, 388,
2086 389, 205, 238, 238, 986, 990, 991, 992, 994, 302,
2087 996, 206, 239, 239, -668, 1034, 321, 1035, 1037, 1102,
2088 724, 725, 179, 1089, 1095, 1099, 1136, 1107, 1155, 321,
2089 321, 321, 321, 321, 321, 391, 346, 347, 1148, 1173,
2090 1167, 1196, 1154, 201, 1212, 1194, 1219, 1223, 1222, 1225,
2091 1227, 816, 1245, 1228, 1242, 1231, 1253, -262, 1234, 823,
2092 1246, 825, 1248, 298, 1255, 460, 1256, 1258, 157, 158,
2093 159, 160, 161, 162, 844, 845, 1259, 263, 476, 849,
2094 1065, 1260, 1247, 622, 862, 1205, 163, 164, 165, 1110,
2095 301, 834, 418, 1180, 1117, 1151, 391, 1237, 204, 999,
2096 302, 499, 302, 390, 969, 961, 944, 1252, 678, 302,
2097 166, 826, 333, 824, 335, 982, 296, 462, 247, 860,
2098 640, 437, 1221, 506, 559, 1230, 869, 518, 985, 876,
2099 1109, 984, 522, 523, 524, 525, 526, 527, 528, 529,
2100 530, 531, 532, 0, 0, 0, 0, 205, 0, 0,
2101 0, 216, 245, 245, 0, 176, 0, 206, 0, 199,
2102 0, 0, 0, 710, 0, 555, 0, 199, 0, 0,
2103 0, 199, 0, 0, 199, 0, 23, 24, 25, 26,
2104 0, 27, 424, 0, 0, 0, 32, 33, 0, 948,
2105 36, 37, 205, 39, 40, 41, 42, 0, 0, 0,
2106 205, 0, 206, 199, 205, 0, 0, 205, 54, 55,
2107 206, 0, 0, 0, 206, 238, 1261, 206, 0, 0,
2108 238, 0, 238, 0, 0, 239, 0, 81, 299, 300,
2109 239, 179, 239, 0, 80, 238, 205, 980, 862, 0,
2110 602, 510, 0, 0, 84, 239, 206, 0, 0, 513,
2111 0, 514, 898, 0, 0, 0, 456, 0, 0, 0,
2112 0, 0, 0, 0, 321, 321, 321, 321, 321, 321,
2113 321, 321, 321, 321, 321, 321, 321, 321, 321, 321,
2114 0, 0, 0, 485, 486, 487, 488, 899, 900, 901,
2115 902, 903, 904, 905, 906, 907, 908, 216, 0, 0,
2116 0, 0, 0, 456, 0, 0, 0, 500, 0, 782,
2117 783, 784, 785, 321, 0, 456, 786, 787, 788, 789,
2118 790, 791, 792, 0, 576, 1079, 0, 0, 0, 0,
2119 0, 321, 1086, 519, 0, 0, 0, 0, 218, 246,
2120 246, 0, 216, 0, 0, 0, 0, 0, 0, 0,
2121 216, 0, 0, 0, 216, 0, 0, 216, 951, 0,
2122 0, 951, 0, 0, 0, 245, 0, 321, 0, 0,
2123 245, 0, 245, 199, 0, 0, 0, 0, 0, 321,
2124 0, 564, 0, 0, 714, 245, 216, 0, 0, 0,
2125 0, 0, 576, 0, 0, 0, 723, 0, 0, 0,
2126 0, 0, 0, 0, 0, 0, 205, 0, 391, 0,
2127 0, 0, 0, 0, 0, 0, 206, 0, 0, 0,
2128 0, 0, 0, 321, 0, 0, 321, 238, 238, 0,
2129 0, 0, 0, 0, 0, 0, 0, 239, 239, 0,
2130 0, 576, 0, 0, 0, 0, 0, 0, 0, 0,
2131 0, 1153, 838, 0, 0, 0, 0, 0, 0, 576,
2132 673, 0, 0, 0, 0, 0, 714, 862, 0, 0,
2133 1170, 0, 0, 321, 0, 0, 302, 0, 0, 1176,
2134 1177, 0, 0, 0, 218, 321, 0, 0, 0, 0,
2135 0, 0, 0, 951, 0, 951, 951, 951, 0, 0,
909cf5eb 2136 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2137 0, 653, 0, 0, 0, 0, 0, 199, 0, 0,
2138 727, 729, 0, 1214, 0, 0, 0, 0, 0, 218,
2139 1218, 1220, 0, 748, 0, 0, 0, 218, 673, 733,
2140 0, 218, 862, 0, 218, 0, 0, 0, 0, 0,
2141 205, 673, 246, 0, 0, 0, 216, 246, 0, 246,
2142 206, 0, 0, 0, 0, 0, 0, 0, 0, 1241,
2143 0, 0, 246, 218, 0, 0, 0, 245, 245, 0,
2144 0, 0, 0, 0, 0, 0, 0, 488, 838, 1249,
2145 1250, 0, 867, 838, 748, 0, 1254, 838, 0, 0,
2146 0, 0, 321, 0, 0, 0, 0, 0, 321, 321,
2147 321, 321, 321, 321, 890, 891, 0, 734, 0, 0,
2148 0, 780, 0, 714, 951, 0, 951, 0, 0, 0,
2149 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2150 0, 0, 0, 0, 0, 997, 518, 0, 0, 0,
2151 0, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
2152 1012, 1013, 0, 0, 298, 0, 0, 0, 0, 157,
2153 158, 159, 160, 161, 162, 0, 0, 0, 0, 875,
2154 0, 0, -203, -203, 456, 0, 456, 163, 164, 165,
2155 0, 0, 0, 882, 0, 0, 0, 321, 0, 0,
2156 216, 838, 0, 0, 0, 0, 0, 143, 321, 0,
2157 0, 166, 144, 145, 146, 0, 147, 148, 149, 150,
2158 151, 152, 153, 154, 155, -563, 0, 0, 0, 0,
2159 156, 0, 0, 0, 0, 157, 158, 159, 160, 161,
2160 162, 0, 0, 218, 0, 0, 0, 0, -203, -203,
2161 0, 0, 321, 163, 164, 165, 176, 0, 0, 0,
2162 0, 0, 0, 0, 246, 246, 0, 0, 0, 0,
2163 0, 0, 0, 0, 0, 0, 0, 166, 0, 0,
2164 0, 321, 321, 321, 321, 321, 321, 321, 321, 321,
2165 321, 321, 321, 321, 321, 321, 321, 321, 0, 321,
2166 0, 167, 168, 169, 170, 171, 172, 173, 174, 0,
2167 0, 0, 0, 0, 0, 0, 0, 175, 0, 0,
2168 0, 0, 176, 0, 0, 0, 0, 0, 81, 299,
2169 300, 0, 179, 0, 0, 0, 0, 0, 0, 0,
2170 0, 838, 0, 0, 0, 0, 0, 0, 0, 0,
2171 0, 0, 1000, 0, 0, 0, 0, 0, 0, 0,
2172 0, 0, 0, 0, 0, 0, 0, 0, 321, 0,
2173 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2174 0, 0, 0, 0, 0, 0, 0, 218, 0, 0,
2175 0, 0, 0, 0, 81, 177, 178, 0, 179, 180,
2176 86, 0, 0, 0, 0, 0, 748, 0, 0, 0,
2177 0, 0, 0, 0, 0, -170, 0, 0, 0, 0,
2178 -170, -170, -170, 0, -170, -170, -170, -170, -170, -170,
2179 -170, -170, -170, -170, -170, -170, -715, -170, -170, 0,
2180 -170, 488, -170, -170, -170, -170, -170, -170, -170, -170,
2181 -170, -170, -170, -170, -170, -170, -170, -170, 0, -170,
2182 0, -170, -170, -170, -170, -170, -170, -170, -170, -170,
2183 -170, -170, -170, -170, -170, -170, -170, -170, -170, -170,
2184 -170, -170, 0, 0, 0, -170, 0, 0, 0, 0,
2185 1108, 0, 0, 0, 0, 0, 0, 0, 0, -2,
368f75ae 2186 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2187 -170, -170, -170, -170, -170, -170, -170, 2, 0, 0,
2188 0, 0, 0, -282, 0, -170, 0, 0, 0, 0,
2189 -170, 0, 0, 3, 0, 0, 0, 0, 0, 0,
8f58355a 2190 0, 0, 0, 4, 0, 5, 0, 0, 0, 0,
08cf8642 2191 321, 0, 0, 0, 0, 1171, 0, 0, 0, 0,
2192 0, 0, 0, 0, 0, 0, 0, -426, -426, -426,
8f58355a 2193 0, 6, 0, 0, 0, 0, 7, 8, 9, 0,
909cf5eb 2194 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2195 321, 10, 11, 12, 0, 0, 0, 0, 0, 0,
2196 0, 0, -170, -170, -170, 321, -170, -170, -170, 0,
8f58355a 2197 0, 13, 14, 15, 16, 0, 17, 18, 19, 20,
08cf8642 2198 21, 22, 23, 24, 25, 26, 321, 27, 28, 29,
8f58355a 2199 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2200 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2201 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2202 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
2203 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
08cf8642 2204 80, -3, 1, 0, 0, 0, 0, 81, 82, 83,
2205 84, 0, 85, 86, 87, 0, 0, 0, 0, 2,
2206 0, 0, 0, 0, 0, -282, 0, 0, 0, 0,
2207 0, 0, 0, 0, 0, 3, 0, 0, 0, 0,
2208 0, 0, 0, 0, 0, 4, 0, 5, 0, 0,
d0b80d80 2209 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2210 0, 0, 0, 0, 0, 0, 0, 0, 0, -426,
2211 -426, -426, 0, 6, 0, 0, 0, 0, 7, 8,
2212 9, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2213 0, 0, 0, 10, 11, 12, 0, 0, 0, 0,
d0b80d80 2214 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2215 0, 0, 0, 13, 14, 15, 16, 0, 17, 18,
2216 19, 20, 21, 22, 23, 24, 25, 26, 0, 27,
2217 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2218 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2219 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2220 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
2221 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
2222 78, 79, 80, 0, 0, 0, 0, 0, 0, 81,
2223 82, 83, 84, 143, 85, 86, 87, 0, 144, 145,
2224 146, 0, 147, 148, 149, 150, 151, 152, 153, 154,
2225 155, -563, 556, 0, 0, 0, 156, 0, 0, 0,
2226 0, 157, 158, 159, 160, 161, 162, 0, 0, 0,
2227 0, 0, 0, 0, -203, -203, 4, 0, 5, 163,
2228 164, 165, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 2229 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2230 -426, -426, -426, 166, 6, 0, 0, 0, 0, 0,
edad9a7f 2231 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2232 0, 0, 0, 0, 0, 0, 0, 0, 168, 169,
2233 170, 171, 172, 173, 174, 0, 0, 0, 0, 0,
2234 0, 0, 0, 175, 13, 14, 15, 16, 176, 17,
2235 18, 19, 20, 21, 22, 23, 24, 25, 26, 0,
2236 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2237 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2238 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
2239 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
2240 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
2241 77, 78, 79, 80, 0, 0, 0, 0, 0, 0,
2242 81, 177, 557, 84, 179, 180, 86, 87, 143, 0,
2243 0, 0, 0, 144, 145, 146, 0, 147, 148, 149,
2244 150, 151, 152, 153, 154, 155, -172, 0, 0, 0,
2245 0, 156, 0, 0, 0, 0, 157, 158, 159, 160,
2246 161, 162, 0, 0, 0, 0, 0, 0, 0, -203,
2247 -203, -282, 0, 0, 163, 164, 165, 0, 0, 0,
909cf5eb 2248 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2249 0, 0, 0, 0, 0, -282, -282, -282, 166, 0,
d0b80d80 2250 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
edad9a7f 2251 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2252 0, 0, 0, 168, 169, 170, 171, 172, 173, 174,
2253 0, 0, 0, 0, 0, 0, 0, 0, 175, -282,
2254 -282, -282, -282, 176, -282, -282, -282, -282, -282, -282,
2255 -282, -282, -282, -282, 0, -282, -282, -282, -282, -282,
2256 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2257 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2258 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2259 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2260 -282, -282, -282, -282, -282, -282, -282, -282, -282, 0,
2261 0, 0, 0, 0, 0, 81, 177, 178, -282, 179,
2262 180, 86, -282, 221, 0, 0, 0, 0, 144, 145,
2263 146, 0, 0, 222, 149, 150, 151, 152, 153, 154,
2264 223, -172, -567, 0, 0, 0, 224, 0, 0, 0,
2265 0, 157, 158, 159, 160, 161, 162, 0, 0, 0,
2266 0, 0, 0, 0, -203, -203, -282, 0, 0, 163,
2267 164, 165, 0, 0, 0, 0, 0, 0, 0, 0,
edad9a7f 2268 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2269 -282, -282, -282, 166, 0, 0, 0, 0, 0, 0,
edad9a7f 2270 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2271 0, 0, 0, 0, 0, 0, 0, 0, 0, 169,
2272 170, 171, 172, 173, 174, 0, 0, 0, 0, 0,
2273 0, 0, 0, 175, -282, -282, -282, -282, 176, -282,
2274 -282, -282, -282, -282, -282, -282, -282, -282, -282, 0,
2275 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2276 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2277 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2278 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2279 -282, -282, -282, -282, -282, -282, -282, -282, -282, -282,
2280 -282, -282, -282, -282, 0, 0, 0, 0, 0, 0,
2281 81, 177, 178, -282, 179, 225, 226, -282, 143, 0,
2282 0, 0, 0, 144, 145, 146, 0, 147, 148, 149,
2283 150, 151, 152, 153, 154, 155, -563, 0, 0, 0,
2284 0, 156, 0, 0, 0, 0, 157, 158, 159, 160,
2285 161, 162, 0, 0, 0, 0, 0, 0, 0, -203,
2286 -203, 0, 221, 0, 163, 164, 165, 144, 145, 146,
2287 0, 0, 222, 149, 150, 151, 152, 153, 154, 223,
2288 -507, -507, 0, 0, 0, 224, -507, 0, 166, 0,
2289 157, 158, 159, 160, 161, 162, 0, 0, 0, 0,
2290 0, 0, 0, -203, -203, 0, 0, 0, 163, 164,
2291 165, 0, -535, 168, 169, 170, 171, 172, 173, 174,
2292 0, 0, 0, 0, 0, 0, 0, 0, 175, 0,
2293 0, 0, 166, 176, 0, 0, 0, 0, 0, 0,
2f2892c2 2294 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2295 0, 0, 0, 0, 0, 0, -507, 0, 169, 170,
2296 171, 172, 173, 174, 0, 0, 0, 0, 0, 0,
2297 0, 0, 175, 0, 0, 0, 0, 176, 0, 0,
2f2892c2 2298 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3dabb077 2299 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2300 0, 0, 0, 0, 0, 81, 177, 178, 0, 179,
2301 180, 86, 0, 0, 0, 143, 0, 0, 0, 0,
2302 144, 145, 146, 0, 147, 148, 149, 150, 151, 152,
2303 153, 154, 155, -563, 655, 0, 0, 0, 156, 0,
2304 0, 0, 0, 157, 158, 159, 160, 161, 162, 81,
2305 177, 178, 0, 179, 225, 226, -203, -203, 0, 143,
2306 0, 163, 164, 165, 144, 145, 146, 0, 147, 148,
2307 149, 150, 151, 152, 153, 154, 155, -563, 0, 0,
2308 0, 0, 156, 0, 0, 166, 0, 157, 158, 159,
2309 160, 161, 162, 0, 0, 0, 0, 0, 0, 0,
2310 -203, -203, 0, 0, 0, 163, 164, 165, 0, 0,
2311 168, 169, 170, 171, 172, 173, 174, 0, 0, 0,
2312 0, 0, 0, 0, 0, 175, 0, 0, 0, 166,
2313 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3dabb077 2314 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2315 0, 0, 0, 0, 168, 169, 170, 171, 172, 173,
2316 174, 0, 0, 0, 0, 0, 0, 0, 835, 175,
2317 0, 0, 0, 298, 176, 836, 0, 837, 157, 158,
2318 159, 160, 161, 162, 0, 0, 0, 0, 0, 0,
2319 0, 0, 0, 0, 0, 0, 163, 164, 165, 0,
2320 0, 0, 81, 177, 178, 0, 179, 180, 86, 0,
2321 0, 0, 221, 0, 0, 0, 0, 144, 145, 146,
2322 166, 0, 222, 149, 150, 151, 152, 153, 154, 223,
2323 -563, -567, 0, 0, 0, 224, 0, 0, 0, 0,
2324 157, 158, 159, 160, 161, 162, 81, 177, 178, 0,
2325 179, 180, 86, -203, -203, 0, 221, 0, 163, 164,
2326 165, 144, 145, 146, 0, 176, 222, 149, 150, 151,
2327 152, 153, 154, 223, -563, -567, 0, 0, 0, 224,
2328 0, 0, 166, 0, 157, 158, 159, 160, 161, 162,
2329 0, 0, 0, 0, 0, 0, 0, -203, -203, 0,
2330 0, 0, 163, 164, 165, 0, -503, 0, 169, 170,
2331 171, 172, 173, 174, 0, 0, 0, 0, 0, 0,
2332 713, -709, 175, 0, 0, 298, 166, 176, 0, 0,
2333 157, 158, 159, 160, 161, 162, 0, 81, 177, 178,
2334 0, 179, 85, 86, 0, 0, 0, 0, 163, 164,
2335 165, 0, 169, 170, 171, 172, 173, 174, 0, 0,
2336 0, 0, 0, 0, 0, 0, 175, 0, 0, 0,
2337 0, 176, 166, 0, 0, 0, 0, 0, 0, 0,
3dabb077 2338 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2339 0, 0, 0, 0, 0, 0, 0, 0, 0, 81,
2340 177, 178, 0, 179, 225, 226, 0, 0, 0, 0,
2341 0, 0, 0, 0, 144, 145, 146, 176, 147, 148,
2342 149, 150, 151, 152, 153, 154, 223, -563, 574, 0,
2343 0, 0, 357, 0, 0, 0, 0, 157, 158, 159,
2344 160, 161, 162, 81, 177, 178, 0, 179, 225, 226,
2345 -203, -203, 4, 0, 5, 163, 164, 165, 0, 0,
e5081f8c 2346 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2347 0, 0, 0, 0, 0, 0, 0, 0, 0, 166,
368f75ae 2348 6, 0, 0, 0, 0, 0, 0, 0, 0, 81,
08cf8642 2349 299, 300, 0, 179, 0, 0, 0, 0, 0, 0,
2350 0, 0, 0, 0, 168, 169, 170, 171, 172, 173,
2351 174, 0, 0, 0, 0, 0, 0, 0, 0, 575,
2352 13, 14, 15, 16, 176, 17, 18, 19, 20, 21,
368f75ae 2353 22, 23, 24, 25, 26, 0, 27, 28, 29, 30,
2354 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2355 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2356 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
2357 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
2358 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
08cf8642 2359 0, 0, 0, 0, 0, 0, 81, 177, 557, 84,
2360 179, 180, 86, 87, 144, 145, 146, 0, 147, 148,
2361 149, 150, 151, 152, 153, 154, 223, -563, 656, 0,
2362 0, 0, 357, 0, 0, 0, 0, 157, 158, 159,
2363 160, 161, 162, 0, 0, 0, 0, 0, 0, 0,
2364 -203, -203, 4, 0, 5, 163, 164, 165, 0, 0,
e5081f8c 2365 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2366 0, 0, 0, 0, 0, 0, 0, 0, 0, 166,
368f75ae 2367 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
e5081f8c 2368 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2369 0, 0, 0, 0, 168, 169, 170, 171, 172, 173,
2370 174, 0, 0, 0, 0, 0, 0, 0, 0, 175,
2371 13, 14, 15, 16, 176, 17, 18, 19, 20, 21,
368f75ae 2372 22, 23, 24, 25, 26, 0, 27, 28, 29, 30,
2373 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2374 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2375 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
2376 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
2377 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
08cf8642 2378 0, 0, 0, 0, 0, 0, 81, 177, 557, 84,
2379 179, 180, 86, 87, 144, 145, 146, 0, 147, 148,
2380 149, 150, 151, 152, 153, 154, 223, -563, 668, 0,
2381 0, 0, 357, 0, 0, 0, 0, 157, 158, 159,
2382 160, 161, 162, 0, 0, 0, 0, 0, 0, 0,
2383 -203, -203, 4, 0, 5, 163, 164, 165, 0, 0,
909cf5eb 2384 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2385 0, 0, 0, 0, 0, 0, 0, 0, 0, 166,
368f75ae 2386 6, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2387 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2388 0, 0, 0, 0, 168, 169, 170, 171, 172, 173,
2389 174, 0, 0, 0, 0, 0, 0, 0, 0, 669,
2390 13, 14, 15, 16, 176, 17, 18, 19, 20, 21,
368f75ae 2391 22, 23, 24, 25, 26, 0, 27, 28, 29, 30,
2392 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2393 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2394 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
2395 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
2396 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
08cf8642 2397 0, 0, 0, 0, 0, 0, 81, 177, 557, 84,
2398 179, 180, 86, 87, 144, 145, 146, 0, 147, 148,
2399 149, 150, 151, 152, 153, 154, 223, -563, 667, 0,
2400 0, 0, 357, 0, 0, 0, 0, 157, 158, 159,
2401 160, 161, 162, 0, 0, 0, 0, 0, 0, 0,
2402 0, 0, 0, 0, 0, 163, 164, 165, 144, 145,
2403 146, 0, 147, 148, 149, 150, 151, 152, 153, 154,
2404 223, -563, 671, 0, 0, 0, 357, 0, 0, 166,
2405 0, 157, 158, 159, 160, 161, 162, 0, 0, 0,
2406 0, 0, 0, 0, 0, 0, 0, 0, 0, 163,
2407 164, 165, 0, 0, 168, 169, 170, 171, 172, 173,
2408 174, 0, 0, 0, 0, 0, 0, 0, 0, 175,
2409 0, 0, 0, 166, 176, 0, 0, 0, 0, 0,
909cf5eb 2410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2411 0, 0, 0, 0, 0, 0, 0, 0, 168, 169,
2412 170, 171, 172, 173, 174, 0, 0, 0, 0, 0,
2413 0, 0, 0, 672, 0, 144, 145, 146, 176, 147,
2414 148, 149, 150, 151, 152, 153, 154, 223, -563, 732,
2415 0, 0, 0, 357, 0, 0, 0, 0, 157, 158,
2416 159, 160, 161, 162, 0, 0, 81, 177, 178, 0,
2417 179, 180, 86, 0, 0, 0, 163, 164, 165, 144,
2418 145, 146, 0, 147, 148, 149, 150, 151, 152, 153,
2419 154, 223, -563, 810, 0, 0, 0, 357, 0, 0,
2420 166, 0, 157, 158, 159, 160, 161, 162, 0, 0,
2421 81, 177, 178, 0, 179, 180, 86, 0, 0, 0,
2422 163, 164, 165, 0, 0, 168, 169, 170, 171, 172,
2423 173, 174, 0, 0, 0, 0, 0, 0, 0, 0,
2424 175, 0, 0, 0, 166, 176, 0, 0, 0, 0,
e5081f8c 2425 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2426 0, 0, 0, 0, 0, 0, 0, 0, 0, 168,
2427 169, 170, 171, 172, 173, 174, 0, 0, 0, 0,
2428 0, 0, 0, 0, 175, 0, 144, 145, 146, 176,
2429 147, 148, 149, 150, 151, 152, 153, 154, 223, -563,
2430 811, 0, 0, 0, 357, 0, 0, 0, 0, 157,
2431 158, 159, 160, 161, 162, 0, 0, 81, 177, 178,
2432 0, 179, 180, 86, 0, 0, 0, 163, 164, 165,
2433 144, 145, 146, 0, 147, 148, 149, 150, 151, 152,
2434 153, 154, 223, -563, 813, 0, 0, 0, 357, 0,
2435 0, 166, 0, 157, 158, 159, 160, 161, 162, 0,
2436 0, 81, 177, 178, 0, 179, 180, 86, 0, 0,
2437 0, 163, 164, 165, 0, 0, 168, 169, 170, 171,
2438 172, 173, 174, 0, 0, 0, 0, 0, 0, 0,
2439 0, 812, 0, 0, 0, 166, 176, 0, 0, 0,
e5081f8c 2440 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2441 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2442 168, 169, 170, 171, 172, 173, 174, 0, 0, 0,
2443 0, 0, 0, 0, 0, 175, 0, 144, 145, 146,
2444 176, 147, 148, 149, 150, 151, 152, 153, 154, 223,
2445 -563, 947, 0, 0, 0, 357, 0, 0, 0, 0,
2446 157, 158, 159, 160, 161, 162, 0, 0, 81, 177,
2447 178, 0, 179, 180, 86, 0, 0, 0, 163, 164,
2448 165, 144, 145, 146, 0, 147, 148, 149, 150, 151,
2449 152, 153, 154, 223, -563, 0, 0, 0, 0, 357,
2450 0, 0, 166, 0, 157, 158, 159, 160, 161, 162,
2451 0, 0, 81, 177, 178, 0, 179, 180, 86, 0,
2452 0, 0, 163, 164, 165, 0, 0, 168, 169, 170,
2453 171, 172, 173, 174, 0, 0, 0, 0, 0, 0,
2454 0, 0, 175, 0, 0, 0, 166, 176, 0, 0,
909cf5eb 2455 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2456 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2457 0, 168, 169, 170, 171, 172, 173, 174, -136, 0,
2458 0, 0, 0, -136, 0, 0, 175, 0, 0, 0,
2459 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
368f75ae 2460 0, 0, 0, 4, 0, 5, 0, 0, 0, 0,
2461 0, 0, 0, 0, 0, 0, 0, 0, 0, 81,
08cf8642 2462 177, 178, 0, 179, 180, 86, 0, 0, 0, 0,
368f75ae 2463 0, 6, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2464 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2465 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2466 0, 0, 0, 81, 177, 178, 0, 179, 180, 86,
368f75ae 2467 0, 13, 14, 15, 16, 0, 17, 18, 19, 20,
2468 21, 22, 23, 24, 25, 26, 0, 27, 28, 29,
2469 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2470 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2471 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2472 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
2473 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
08cf8642 2474 80, -566, 0, 0, 0, 0, 0, 0, 0, 138,
368f75ae 2475 84, 0, 0, 0, 87, 0, 0, 0, 0, 0,
2476 0, 0, 0, 0, 0, 4, 0, 0, 0, 0,
d0b80d80 2477 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 2478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2479 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2480 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2f2892c2 2481 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
d0b80d80 2482 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
368f75ae 2483 0, 0, 0, 13, 14, 15, 16, 0, 17, 18,
edad9a7f 2484 19, 20, 21, 22, 23, 24, 25, 26, 0, 27,
2485 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2486 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2487 48, 49, 50, 51, 52, 53, 54, 55, 56, 57,
2488 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
2489 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
08cf8642 2490 78, 79, 80, 0, 0, 0, 0, 0, 835, 1164,
2491 0, 138, 84, 298, 0, 836, 87, 837, 157, 158,
2492 159, 160, 161, 162, 0, 0, 0, 0, 0, -172,
2493 0, 0, 0, 0, 298, 0, 163, 164, 165, 157,
2494 158, 159, 160, 161, 162, 0, 0, 0, 0, 0,
2495 0, 0, -203, -203, 0, 0, -172, 163, 164, 165,
2496 166, 357, 0, 0, 0, 0, 157, 158, 159, 160,
2497 161, 162, 0, 0, 0, 0, 0, 0, 0, -203,
2498 -203, 166, 0, 631, 163, 164, 165, 0, 298, 0,
2499 0, 0, 0, 157, 158, 159, 160, 161, 162, 0,
2500 0, 0, 0, 0, 713, 176, 0, 0, 166, 298,
2501 0, 163, 164, 165, 157, 158, 159, 160, 161, 162,
2502 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
2503 0, 0, 163, 164, 165, 166, 0, 0, 0, 0,
edad9a7f 2504 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2505 0, 0, 0, 176, 0, 0, 166, 0, 0, 0,
d0b80d80 2506 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2507 0, 0, 0, 0, 0, 0, 0, 81, 177, 178,
2508 176, 179, 85, 86, 0, 0, 0, 0, 0, 0,
2509 0, 0, 0, -282, 0, 0, 0, 0, 81, 299,
2510 300, 176, 179, 3, 0, 0, 0, 0, 0, 0,
2511 0, 0, 0, 4, 0, 0, 0, 0, 0, 0,
2512 0, 0, 0, 0, 0, 81, 299, 300, 0, 179,
e5081f8c 2513 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8f58355a 2514 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2515 0, 0, 81, 299, 300, 0, 179, 0, 0, 0,
8f58355a 2516 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2517 0, 0, 0, 81, 299, 300, 0, 179, 0, 0,
2518 0, 13, 14, 15, 16, 0, 17, 18, 19, 20,
2519 21, 22, 23, 24, 25, 26, 0, 27, 28, 29,
2520 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2521 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2522 50, 51, 52, 53, 54, 55, 56, 57, 58, 59,
2523 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
2524 70, 71, 72, 73, 74, 75, 76, 77, 78, 79,
2525 80, 0, 0, 0, 0, 0, 0, 81, 82, 83,
2526 84, 0, 85, 86, 87, 298, 516, 0, 0, 0,
2527 157, 158, 159, 160, 161, 162, 298, 0, 0, 597,
2528 0, 157, 158, 159, 160, 161, 162, 0, 163, 164,
2529 165, 0, 0, 0, 0, 0, 0, 298, 998, 163,
2530 164, 165, 157, 158, 159, 160, 161, 162, 298, 0,
2531 0, 693, 166, 157, 158, 159, 160, 161, 162, 0,
2532 163, 164, 165, 166, 0, 0, 0, 0, 0, 298,
2533 -262, 163, 164, 165, 157, 158, 159, 160, 161, 162,
2534 298, 0, 0, 0, 166, 157, 158, 159, 160, 161,
2535 162, 0, 163, 164, 165, 166, 0, 176, 0, 0,
2536 0, 0, 0, 163, 164, 165, 0, 0, 176, 0,
2537 0, 0, 345, 0, 0, 0, 166, 157, 158, 159,
2538 160, 161, 162, 0, 0, 0, 0, 166, 0, 176,
2539 0, 0, 0, 0, 0, 163, 164, 165, 0, 726,
2540 176, 0, 0, 0, 157, 158, 159, 160, 161, 162,
2541 0, 0, 0, 0, 0, 0, 0, 0, 0, 166,
2542 0, 176, 163, 164, 165, 0, 0, 0, 0, 81,
2543 299, 300, 176, 179, 0, 0, 0, 0, 0, 0,
2544 81, 299, 300, 728, 179, 0, 166, 0, 157, 158,
2545 159, 160, 161, 162, 0, 0, 0, 0, 0, 0,
2546 0, 81, 299, 300, 176, 179, 163, 164, 165, 0,
2547 0, 0, 81, 299, 300, 0, 179, 735, 0, 0,
2548 0, 0, 736, 737, 738, 739, 740, 741, 0, 0,
2549 166, 176, 0, 81, 299, 300, 0, 179, 0, 0,
2550 163, 742, 743, 0, 81, 299, 300, 0, 179, 0,
8f58355a 2551 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2552 0, 0, 0, 0, 744, 0, 0, 0, 0, 0,
2553 0, 0, 0, 0, 0, 176, 81, 299, 300, 0,
2554 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8f58355a 2555 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2556 0, 0, 0, 81, 299, 300, 0, 179, 0, 176,
2557 0, 0, 0, 0, 0, 0, 0, 0, 4, 0,
2558 5, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8f58355a 2559 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2560 0, 0, -426, -426, -426, 0, 6, 81, 299, 300,
2561 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
8f58355a 2562 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2563 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2564 0, 81, 745, 746, 0, 179, 13, 14, 15, 16,
2565 0, 17, 18, 19, 20, 21, 22, 23, 24, 25,
2566 26, 0, 27, 28, 29, 30, 31, 32, 33, 34,
2567 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2568 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
2569 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
2570 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
2571 75, 76, 77, 78, 79, 80, 4, 0, 5, 0,
2572 0, 0, 0, 0, 138, 84, 0, 0, 0, 87,
8f58355a 2573 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2574 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
8f58355a 2575 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8f58355a 2576 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2577 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2578 0, 0, 0, 0, 13, 14, 15, 16, 0, 17,
2579 18, 19, 20, 21, 22, 23, 24, 25, 26, 0,
2580 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2581 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2582 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
2583 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
2584 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
2585 77, 78, 79, 80, 4, 0, 0, 0, 0, 0,
2586 81, 1113, 138, 84, 0, 0, 0, 87, 0, 0,
2587 0, 0, 0, 0, 0, 0, 0, 0, -426, -426,
2588 -426, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8f58355a 2589 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
909cf5eb 2590 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
e5081f8c 2591 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2592 0, 0, 13, 14, 15, 16, 0, 17, 18, 19,
2593 20, 21, 22, 23, 24, 25, 26, 0, 27, 28,
2594 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2595 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2596 49, 50, 51, 52, 53, 54, 55, 56, 57, 58,
2597 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
2598 69, 70, 71, 72, 73, 74, 75, 76, 77, 78,
2599 79, 80, 4, 0, 0, 0, 0, 0, 0, 0,
2600 138, 84, 0, 0, 0, 87, 0, 0, 0, 0,
909cf5eb 2601 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2602 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
8f58355a 2603 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2604 10, 11, 12, 0, 0, 0, 0, 0, 0, 0,
368f75ae 2605 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2606 13, 14, 15, 16, 0, 17, 18, 19, 20, 21,
2607 22, 23, 24, 25, 26, 0, 27, 28, 29, 30,
2608 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2609 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2610 51, 52, 53, 54, 55, 56, 57, 58, 59, 60,
2611 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
2612 71, 72, 73, 74, 75, 76, 77, 78, 79, 80,
2613 4, 0, 5, 0, 0, 0, 0, 0, 138, 84,
2614 0, 0, 0, 87, 0, 0, 0, 0, 0, 0,
2615 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,
368f75ae 2616 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
368f75ae 2617 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
368f75ae 2618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2619 0, 0, 0, 0, 0, 0, 0, 0, 13, 14,
2620 15, 16, 0, 17, 18, 19, 20, 21, 22, 23,
2621 24, 25, 26, 0, 27, 28, 29, 30, 31, 32,
2622 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
2623 43, 44, 45, 46, 47, 48, 49, 50, 51, 52,
2624 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
2625 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
2626 73, 74, 75, 76, 77, 78, 79, 80, 4, 0,
2627 0, 0, 0, 0, 0, 0, 138, 84, 0, 0,
2628 0, 87, 0, 0, 0, 0, 0, 0, 0, 0,
368f75ae 2629 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2630 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2631 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2632 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
08cf8642 2633 0, 0, 0, 0, 0, 0, 13, 14, 15, 16,
2634 0, 17, 18, 19, 20, 21, 22, 23, 24, 25,
2635 26, 0, 27, 28, 29, 30, 31, 32, 33, 34,
2636 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2637 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
2638 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
2639 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
2640 75, 76, 77, 78, 79, 80, 0, 0, 0, 0,
2641 0, 0, 0, 0, 138, 84, 0, 0, 0, 87
d0b80d80 2642};
2643
08cf8642 2644static const yytype_int16 yycheck[] =
d0b80d80 2645{
08cf8642 2646 0, 0, 5, 554, 122, 5, 0, 132, 441, 9,
2647 10, 11, 12, 461, 395, 396, 551, 405, 313, 0,
2648 3, 599, 661, 334, 5, 661, 459, 629, 9, 835,
2649 10, 403, 404, 19, 840, 661, 10, 935, 844, 707,
2650 157, 158, 159, 160, 161, 162, 357, 442, 235, 27,
2651 10, 224, 397, 398, 407, 665, 229, 943, 231, 406,
2652 971, 315, 952, 5, 0, 955, 21, 560, 144, 847,
2653 25, 665, 475, 18, 507, 853, 21, 399, 400, 401,
2654 402, 268, 24, 722, 24, 578, 722, 24, 665, 89,
2655 89, 41, 34, 1125, 1126, 89, 722, 34, 22, 56,
2656 89, 90, 26, 5, 28, 21, 19, 57, 89, 25,
2657 661, 665, 21, 28, 24, 21, 25, 695, 0, 25,
2658 1058, 45, 122, 25, 34, 24, 661, 21, 37, 38,
2659 45, 25, 121, 122, 50, 51, 820, 28, 11, 12,
2660 140, 122, 948, 52, 53, 88, 135, 130, 41, 1047,
2661 1048, 151, 18, 89, 45, 22, 156, 140, 26, 140,
2662 54, 55, 1194, 288, 57, 1076, 34, 34, 601, 18,
2663 151, 722, 1058, 1059, 794, 175, 156, 32, 33, 847,
2664 613, 492, 156, 10, 794, 853, 21, 722, 24, 809,
2665 25, 11, 12, 1083, 29, 1085, 156, 975, 34, 809,
2666 794, 201, 188, 189, 190, 1143, 21, 193, 194, 209,
2667 1148, 211, 615, 213, 192, 809, 216, 794, 955, 614,
2668 345, 201, 476, 18, 224, 1123, 21, 201, 415, 229,
2669 187, 231, 809, 213, 24, 209, 216, 192, 5, 213,
2670 794, 201, 216, 24, 244, 245, 188, 189, 1134, 209,
2671 1136, 188, 189, 213, 24, 809, 216, 24, 25, 26,
2672 683, 1199, 710, 436, 437, 245, 26, 34, 5, 580,
2673 954, 245, 956, 661, 34, 392, 393, 394, 188, 189,
2674 661, 665, 1088, 25, 26, 245, 28, 287, 287, 661,
2675 290, 291, 292, 932, 70, 71, 72, 73, 74, 75,
2676 76, 77, 78, 79, 50, 51, 287, 975, 661, 290,
2677 291, 292, 312, 312, 661, 610, 661, 24, 318, 18,
2678 303, 188, 189, 190, 24, 24, 193, 194, 18, 156,
2679 5, 312, 21, 23, 722, 34, 112, 318, 27, 661,
2680 116, 722, 118, 26, 120, 28, 1083, 10, 1085, 125,
2681 722, 224, 188, 189, 190, 24, 229, 26, 231, 1245,
2682 360, 137, 45, 139, 18, 441, 18, 21, 368, 722,
2683 370, 244, 497, 5, 201, 722, 927, 722, 495, 21,
2684 18, 983, 209, 459, 21, 27, 213, 16, 25, 216,
2685 925, 34, 825, 25, 18, 1034, 819, 21, 1034, 822,
2686 722, 979, 18, 836, 224, 21, 182, 23, 1034, 229,
2687 794, 231, 24, 50, 51, 415, 864, 18, 245, 24,
2688 21, 188, 189, 190, 244, 809, 193, 194, 188, 189,
2689 190, 507, 15, 193, 194, 415, 436, 437, 24, 433,
2690 26, 415, 26, 443, 28, 445, 445, 26, 34, 28,
2691 444, 188, 189, 190, 454, 415, 193, 194, 5, 584,
2692 18, 45, 465, 21, 445, 465, 45, 467, 21, 112,
2693 113, 114, 16, 454, 27, 475, 21, 24, 478, 16,
2694 25, 1120, 482, 1034, 465, 18, 467, 34, 21, 188,
2695 189, 190, 475, 156, 475, 271, 21, 478, 21, 1034,
2696 25, 482, 25, 16, 21, 50, 51, 5, 25, 18,
2697 635, 511, 21, 188, 189, 190, 39, 102, 193, 194,
2698 520, 521, 22, 25, 26, 601, 28, 25, 54, 55,
2699 306, 912, 913, 309, 922, 6, 7, 613, 201, 520,
2700 521, 317, 23, 45, 320, 26, 209, 28, 920, 921,
2701 213, 21, 1191, 216, 22, 25, 188, 189, 190, 559,
2702 560, 193, 194, 436, 437, 22, 560, 567, 567, 914,
2703 915, 924, 24, 21, 26, 575, 923, 25, 578, 579,
2704 50, 51, 245, 21, 578, 559, 567, 25, 415, 37,
2705 38, 24, 710, 26, 916, 917, 918, 919, 21, 559,
2706 29, 726, 25, 728, 52, 53, 25, 26, 39, 28,
2707 735, 18, 25, 26, 21, 615, 436, 437, 25, 736,
2708 737, 738, 739, 740, 741, 40, 45, 10, 11, 12,
2709 18, 5, 615, 21, 615, 56, 18, 184, 185, 21,
2710 935, 188, 189, 25, 95, 192, 1034, 13, 14, 15,
2711 24, 25, 26, 1034, 730, 95, 432, 657, 658, 21,
2712 34, 661, 1034, 25, 25, 26, 442, 28, 19, 669,
2713 670, 447, 672, 42, 43, 451, 24, 453, 26, 990,
2714 28, 1034, 977, 24, 45, 26, 686, 1034, 688, 1034,
2715 188, 189, 190, 192, 470, 193, 194, 45, 474, 699,
2716 48, 49, 34, 35, 36, 686, 706, 688, 691, 709,
2717 710, 711, 1034, 21, 24, 37, 38, 25, 699, 21,
2718 1168, 22, 722, 25, 22, 706, 22, 710, 709, 710,
2719 52, 53, 559, 21, 68, 69, 70, 25, 104, 105,
2720 106, 107, 108, 109, 110, 111, 864, 113, 1043, 825,
2721 116, 95, 415, 21, 10, 11, 12, 25, 1053, 19,
2722 836, 20, 21, 24, 95, 26, 132, 28, 134, 135,
2723 136, 21, 22, 156, 140, 188, 189, 190, 1073, 21,
2724 193, 194, 20, 25, 45, 1218, 27, 48, 49, 24,
2725 156, 18, 909, 910, 911, 1090, 21, 163, 37, 38,
2726 25, 0, 25, 21, 880, 18, 5, 25, 7, 10,
2727 11, 12, 812, 52, 53, 32, 33, 24, 201, 185,
2728 27, 1254, 24, 599, 21, 21, 209, 34, 25, 25,
2729 213, 18, 832, 216, 1129, 835, 22, 837, 614, 34,
2730 840, 224, 225, 21, 844, 21, 229, 25, 231, 25,
2731 23, 832, 50, 51, 835, 1150, 837, 633, 224, 840,
2732 18, 244, 245, 844, 864, 188, 189, 190, 24, 21,
2733 193, 194, 872, 25, 24, 24, 21, 27, 21, 996,
2734 25, 864, 25, 864, 34, 21, 662, 25, 664, 25,
2735 89, 872, 25, 88, 18, 21, 559, 18, 264, 25,
2736 156, 21, 19, 24, 103, 25, 32, 33, 29, 30,
2737 31, 32, 33, 34, 22, 114, 115, 21, 34, 21,
2738 696, 25, 288, 25, 290, 291, 47, 48, 49, 21,
2739 32, 33, 298, 25, 21, 935, 21, 303, 25, 9,
2740 25, 140, 21, 943, 18, 201, 25, 18, 948, 24,
2741 71, 26, 318, 209, 21, 156, 18, 213, 25, 34,
2742 216, 21, 21, 54, 55, 25, 25, 948, 224, 11,
2743 21, 747, 21, 229, 25, 231, 25, 1102, 18, 345,
2744 21, 188, 189, 190, 25, 192, 20, 21, 244, 245,
2745 373, 357, 21, 188, 189, 116, 25, 25, 193, 194,
2746 201, 1001, 1002, 114, 115, 21, 24, 21, 209, 25,
2747 11, 25, 213, 20, 21, 216, 34, 34, 35, 36,
2748 1001, 1002, 24, 224, 21, 22, 802, 803, 229, 34,
2749 231, 24, 415, 26, 1034, 91, 32, 33, 188, 189,
2750 190, 34, 192, 244, 245, 1045, 21, 1047, 1048, 19,
2751 1168, 1045, 19, 436, 437, 19, 1056, 19, 1058, 1059,
2752 52, 53, 54, 24, 91, 24, 432, 188, 189, 190,
2753 846, 192, 188, 189, 190, 1075, 27, 193, 194, 195,
2754 1080, 1080, 25, 21, 21, 451, 22, 453, 1088, 455,
2755 18, 25, 458, 1093, 1093, 461, 25, 463, 1098, 1080,
2756 21, 25, 1178, 302, 11, 24, 472, 1088, 22, 475,
2757 1093, 24, 1093, 188, 189, 190, 482, 1098, 193, 194,
2758 1120, 1121, 1122, 1123, 24, 1125, 1126, 25, 27, 23,
2759 20, 497, 19, 19, 1134, 20, 1136, 21, 27, 1139,
2760 1121, 1122, 1218, 1143, 23, 1145, 1146, 24, 1148, 21,
2761 5, 1154, 25, 19, 1154, 22, 25, 1233, 20, 415,
2762 24, 73, 20, 24, 1145, 1146, 184, 185, 1168, 25,
2763 188, 189, 25, 1154, 192, 951, 559, 27, 1254, 27,
2764 436, 437, 18, 188, 189, 190, 21, 1168, 193, 194,
2765 21, 1191, 1192, 1193, 1194, 188, 189, 190, 25, 1199,
2766 193, 194, 195, 979, 22, 29, 39, 56, 40, 21,
2767 25, 1192, 1193, 25, 415, 581, 23, 21, 584, 1219,
2768 1219, 25, 34, 35, 36, 25, 189, 25, 10, 18,
2769 34, 35, 36, 25, 600, 436, 437, 91, 1219, 91,
2770 91, 607, 608, 609, 91, 1245, 91, 22, 91, 615,
2771 24, 58, 59, 60, 61, 62, 63, 64, 65, 66,
2772 67, 10, 11, 12, 20, 25, 25, 25, 18, 635,
2773 25, 10, 11, 12, 22, 21, 144, 18, 40, 21,
2774 646, 647, 192, 27, 20, 18, 23, 22, 18, 157,
2775 158, 159, 160, 161, 162, 661, 164, 165, 24, 194,
2776 91, 22, 1078, 559, 22, 21, 21, 20, 22, 20,
2777 91, 677, 40, 25, 196, 25, 18, 18, 27, 685,
2778 27, 687, 25, 24, 20, 691, 20, 27, 29, 30,
2779 31, 32, 33, 34, 700, 701, 25, 89, 318, 705,
2780 943, 1245, 1212, 709, 710, 1139, 47, 48, 49, 1037,
2781 132, 697, 211, 1111, 1046, 1075, 722, 1191, 559, 893,
2782 726, 348, 728, 185, 841, 832, 807, 1219, 584, 735,
2783 71, 688, 154, 686, 156, 864, 130, 303, 12, 709,
2784 511, 244, 1158, 355, 415, 1174, 713, 374, 870, 722,
2785 1034, 869, 379, 380, 381, 382, 383, 384, 385, 386,
2786 387, 388, 389, -1, -1, -1, -1, 156, -1, -1,
2787 -1, 10, 11, 12, -1, 116, -1, 156, -1, 201,
2788 -1, -1, -1, 622, -1, 412, -1, 209, -1, -1,
2789 -1, 213, -1, -1, 216, -1, 123, 124, 125, 126,
2790 -1, 128, 224, -1, -1, -1, 133, 134, -1, 815,
2791 137, 138, 201, 140, 141, 142, 143, -1, -1, -1,
2792 209, -1, 201, 245, 213, -1, -1, 216, 155, 156,
2793 209, -1, -1, -1, 213, 224, 1252, 216, -1, -1,
2794 229, -1, 231, -1, -1, 224, -1, 188, 189, 190,
2795 229, 192, 231, -1, 181, 244, 245, 863, 864, -1,
2796 866, 360, -1, -1, 191, 244, 245, -1, -1, 368,
2797 -1, 370, 23, -1, -1, -1, 298, -1, -1, -1,
2798 -1, -1, -1, -1, 392, 393, 394, 395, 396, 397,
2799 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
2800 -1, -1, -1, 325, 326, 327, 328, 58, 59, 60,
2801 61, 62, 63, 64, 65, 66, 67, 156, -1, -1,
2802 -1, -1, -1, 345, -1, -1, -1, 349, -1, 73,
2803 74, 75, 76, 441, -1, 357, 80, 81, 82, 83,
2804 84, 85, 86, -1, 443, 951, -1, -1, -1, -1,
2805 -1, 459, 958, 375, -1, -1, -1, -1, 10, 11,
2806 12, -1, 201, -1, -1, -1, -1, -1, -1, -1,
2807 209, -1, -1, -1, 213, -1, -1, 216, 817, -1,
2808 -1, 820, -1, -1, -1, 224, -1, 495, -1, -1,
2809 229, -1, 231, 415, -1, -1, -1, -1, -1, 507,
2810 -1, 423, -1, -1, 631, 244, 245, -1, -1, -1,
2811 -1, -1, 511, -1, -1, -1, 643, -1, -1, -1,
2812 -1, -1, -1, -1, -1, -1, 415, -1, 1034, -1,
2813 -1, -1, -1, -1, -1, -1, 415, -1, -1, -1,
2814 -1, -1, -1, 551, -1, -1, 554, 436, 437, -1,
2815 -1, -1, -1, -1, -1, -1, -1, 436, 437, -1,
2816 -1, 560, -1, -1, -1, -1, -1, -1, -1, -1,
2817 -1, 1077, 699, -1, -1, -1, -1, -1, -1, 578,
2818 579, -1, -1, -1, -1, -1, 713, 1093, -1, -1,
2819 1096, -1, -1, 601, -1, -1, 1102, -1, -1, 1105,
2820 1106, -1, -1, -1, 156, 613, -1, -1, -1, -1,
2821 -1, -1, -1, 952, -1, 954, 955, 956, -1, -1,
909cf5eb 2822 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2823 -1, 553, -1, -1, -1, -1, -1, 559, -1, -1,
2824 648, 649, -1, 1149, -1, -1, -1, -1, -1, 201,
2825 1156, 1157, -1, 661, -1, -1, -1, 209, 657, 658,
2826 -1, 213, 1168, -1, 216, -1, -1, -1, -1, -1,
2827 559, 670, 224, -1, -1, -1, 415, 229, -1, 231,
2828 559, -1, -1, -1, -1, -1, -1, -1, -1, 1195,
2829 -1, -1, 244, 245, -1, -1, -1, 436, 437, -1,
2830 -1, -1, -1, -1, -1, -1, -1, 629, 835, 1215,
2831 1216, -1, 711, 840, 722, -1, 1222, 844, -1, -1,
2832 -1, -1, 730, -1, -1, -1, -1, -1, 736, 737,
2833 738, 739, 740, 741, 742, 743, -1, 659, -1, -1,
2834 -1, 663, -1, 870, 1083, -1, 1085, -1, -1, -1,
2835 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2836 -1, -1, -1, -1, -1, 892, 893, -1, -1, -1,
2837 -1, 898, 899, 900, 901, 902, 903, 904, 905, 906,
2838 907, 908, -1, -1, 24, -1, -1, -1, -1, 29,
2839 30, 31, 32, 33, 34, -1, -1, -1, -1, 721,
2840 -1, -1, 42, 43, 726, -1, 728, 47, 48, 49,
2841 -1, -1, -1, 735, -1, -1, -1, 825, -1, -1,
2842 559, 948, -1, -1, -1, -1, -1, 1, 836, -1,
2843 -1, 71, 6, 7, 8, -1, 10, 11, 12, 13,
2844 14, 15, 16, 17, 18, 19, -1, -1, -1, -1,
2845 24, -1, -1, -1, -1, 29, 30, 31, 32, 33,
2846 34, -1, -1, 415, -1, -1, -1, -1, 42, 43,
2847 -1, -1, 880, 47, 48, 49, 116, -1, -1, -1,
2848 -1, -1, -1, -1, 436, 437, -1, -1, -1, -1,
2849 -1, -1, -1, -1, -1, -1, -1, 71, -1, -1,
2850 -1, 909, 910, 911, 912, 913, 914, 915, 916, 917,
2851 918, 919, 920, 921, 922, 923, 924, 925, -1, 927,
2852 -1, 95, 96, 97, 98, 99, 100, 101, 102, -1,
2853 -1, -1, -1, -1, -1, -1, -1, 111, -1, -1,
2854 -1, -1, 116, -1, -1, -1, -1, -1, 188, 189,
2855 190, -1, 192, -1, -1, -1, -1, -1, -1, -1,
2856 -1, 1088, -1, -1, -1, -1, -1, -1, -1, -1,
2857 -1, -1, 894, -1, -1, -1, -1, -1, -1, -1,
2858 -1, -1, -1, -1, -1, -1, -1, -1, 996, -1,
2859 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2860 -1, -1, -1, -1, -1, -1, -1, 559, -1, -1,
2861 -1, -1, -1, -1, 188, 189, 190, -1, 192, 193,
2862 194, -1, -1, -1, -1, -1, 1034, -1, -1, -1,
2863 -1, -1, -1, -1, -1, 1, -1, -1, -1, -1,
2864 6, 7, 8, -1, 10, 11, 12, 13, 14, 15,
2865 16, 17, 18, 19, 20, 21, 22, 23, 24, -1,
2866 26, 983, 28, 29, 30, 31, 32, 33, 34, 35,
2867 36, 37, 38, 39, 40, 41, 42, 43, -1, 45,
2868 -1, 47, 48, 49, 50, 51, 52, 53, 54, 55,
2869 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
2870 66, 67, -1, -1, -1, 71, -1, -1, -1, -1,
2871 1032, -1, -1, -1, -1, -1, -1, -1, -1, 0,
368f75ae 2872 1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2873 96, 97, 98, 99, 100, 101, 102, 18, -1, -1,
2874 -1, -1, -1, 24, -1, 111, -1, -1, -1, -1,
2875 116, -1, -1, 34, -1, -1, -1, -1, -1, -1,
8f58355a 2876 -1, -1, -1, 44, -1, 46, -1, -1, -1, -1,
08cf8642 2877 1178, -1, -1, -1, -1, 1097, -1, -1, -1, -1,
8f58355a 2878 -1, -1, -1, -1, -1, -1, -1, 68, 69, 70,
2879 -1, 72, -1, -1, -1, -1, 77, 78, 79, -1,
3dabb077 2880 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2881 1218, 92, 93, 94, -1, -1, -1, -1, -1, -1,
2882 -1, -1, 188, 189, 190, 1233, 192, 193, 194, -1,
8f58355a 2883 -1, 112, 113, 114, 115, -1, 117, 118, 119, 120,
08cf8642 2884 121, 122, 123, 124, 125, 126, 1254, 128, 129, 130,
8f58355a 2885 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
2886 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
2887 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
2888 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
2889 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
08cf8642 2890 181, 0, 1, -1, -1, -1, -1, 188, 189, 190,
2891 191, -1, 193, 194, 195, -1, -1, -1, -1, 18,
2892 -1, -1, -1, -1, -1, 24, -1, -1, -1, -1,
2893 -1, -1, -1, -1, -1, 34, -1, -1, -1, -1,
2894 -1, -1, -1, -1, -1, 44, -1, 46, -1, -1,
e5081f8c 2895 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2896 -1, -1, -1, -1, -1, -1, -1, -1, -1, 68,
2897 69, 70, -1, 72, -1, -1, -1, -1, 77, 78,
2898 79, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2899 -1, -1, -1, 92, 93, 94, -1, -1, -1, -1,
e5081f8c 2900 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2901 -1, -1, -1, 112, 113, 114, 115, -1, 117, 118,
2902 119, 120, 121, 122, 123, 124, 125, 126, -1, 128,
2903 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
2904 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
2905 149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
2906 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
2907 169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
2908 179, 180, 181, -1, -1, -1, -1, -1, -1, 188,
2909 189, 190, 191, 1, 193, 194, 195, -1, 6, 7,
2910 8, -1, 10, 11, 12, 13, 14, 15, 16, 17,
2911 18, 19, 20, -1, -1, -1, 24, -1, -1, -1,
2912 -1, 29, 30, 31, 32, 33, 34, -1, -1, -1,
2913 -1, -1, -1, -1, 42, 43, 44, -1, 46, 47,
8f58355a 2914 48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
e5081f8c 2915 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2916 68, 69, 70, 71, 72, -1, -1, -1, -1, -1,
2917 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2918 -1, -1, -1, -1, -1, -1, -1, -1, 96, 97,
368f75ae 2919 98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
08cf8642 2920 -1, -1, -1, 111, 112, 113, 114, 115, 116, 117,
2921 118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
2922 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
2923 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
2924 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
2925 158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
2926 168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
2927 178, 179, 180, 181, -1, -1, -1, -1, -1, -1,
2928 188, 189, 190, 191, 192, 193, 194, 195, 1, -1,
2929 -1, -1, -1, 6, 7, 8, -1, 10, 11, 12,
2930 13, 14, 15, 16, 17, 18, 19, -1, -1, -1,
2931 -1, 24, -1, -1, -1, -1, 29, 30, 31, 32,
2932 33, 34, -1, -1, -1, -1, -1, -1, -1, 42,
2933 43, 44, -1, -1, 47, 48, 49, -1, -1, -1,
e5081f8c 2934 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2935 -1, -1, -1, -1, -1, 68, 69, 70, 71, -1,
e5081f8c 2936 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2937 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2938 -1, -1, -1, 96, 97, 98, 99, 100, 101, 102,
2939 -1, -1, -1, -1, -1, -1, -1, -1, 111, 112,
2940 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
2941 123, 124, 125, 126, -1, 128, 129, 130, 131, 132,
2942 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
2943 143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
2944 153, 154, 155, 156, 157, 158, 159, 160, 161, 162,
2945 163, 164, 165, 166, 167, 168, 169, 170, 171, 172,
2946 173, 174, 175, 176, 177, 178, 179, 180, 181, -1,
2947 -1, -1, -1, -1, -1, 188, 189, 190, 191, 192,
2948 193, 194, 195, 1, -1, -1, -1, -1, 6, 7,
2949 8, -1, -1, 11, 12, 13, 14, 15, 16, 17,
368f75ae 2950 18, 19, 20, -1, -1, -1, 24, -1, -1, -1,
8f58355a 2951 -1, 29, 30, 31, 32, 33, 34, -1, -1, -1,
08cf8642 2952 -1, -1, -1, -1, 42, 43, 44, -1, -1, 47,
8f58355a 2953 48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 2954 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2955 68, 69, 70, 71, -1, -1, -1, -1, -1, -1,
2956 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2957 -1, -1, -1, -1, -1, -1, -1, -1, -1, 97,
368f75ae 2958 98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
08cf8642 2959 -1, -1, -1, 111, 112, 113, 114, 115, 116, 117,
2960 118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
2961 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
2962 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
2963 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
2964 158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
2965 168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
2966 178, 179, 180, 181, -1, -1, -1, -1, -1, -1,
2967 188, 189, 190, 191, 192, 193, 194, 195, 1, -1,
2968 -1, -1, -1, 6, 7, 8, -1, 10, 11, 12,
2969 13, 14, 15, 16, 17, 18, 19, -1, -1, -1,
2970 -1, 24, -1, -1, -1, -1, 29, 30, 31, 32,
2971 33, 34, -1, -1, -1, -1, -1, -1, -1, 42,
2972 43, -1, 1, -1, 47, 48, 49, 6, 7, 8,
2973 -1, -1, 11, 12, 13, 14, 15, 16, 17, 18,
2974 19, 20, -1, -1, -1, 24, 25, -1, 71, -1,
2975 29, 30, 31, 32, 33, 34, -1, -1, -1, -1,
2976 -1, -1, -1, 42, 43, -1, -1, -1, 47, 48,
2977 49, -1, 95, 96, 97, 98, 99, 100, 101, 102,
2978 -1, -1, -1, -1, -1, -1, -1, -1, 111, -1,
2979 -1, -1, 71, 116, -1, -1, -1, -1, -1, -1,
909cf5eb 2980 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2981 -1, -1, -1, -1, -1, -1, 95, -1, 97, 98,
2982 99, 100, 101, 102, -1, -1, -1, -1, -1, -1,
2983 -1, -1, 111, -1, -1, -1, -1, 116, -1, -1,
909cf5eb 2984 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 2985 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 2986 -1, -1, -1, -1, -1, 188, 189, 190, -1, 192,
2987 193, 194, -1, -1, -1, 1, -1, -1, -1, -1,
2988 6, 7, 8, -1, 10, 11, 12, 13, 14, 15,
2989 16, 17, 18, 19, 20, -1, -1, -1, 24, -1,
2990 -1, -1, -1, 29, 30, 31, 32, 33, 34, 188,
2991 189, 190, -1, 192, 193, 194, 42, 43, -1, 1,
2992 -1, 47, 48, 49, 6, 7, 8, -1, 10, 11,
2993 12, 13, 14, 15, 16, 17, 18, 19, -1, -1,
2994 -1, -1, 24, -1, -1, 71, -1, 29, 30, 31,
2995 32, 33, 34, -1, -1, -1, -1, -1, -1, -1,
2996 42, 43, -1, -1, -1, 47, 48, 49, -1, -1,
2997 96, 97, 98, 99, 100, 101, 102, -1, -1, -1,
2998 -1, -1, -1, -1, -1, 111, -1, -1, -1, 71,
2999 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 3000 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3001 -1, -1, -1, -1, 96, 97, 98, 99, 100, 101,
3002 102, -1, -1, -1, -1, -1, -1, -1, 19, 111,
3003 -1, -1, -1, 24, 116, 26, -1, 28, 29, 30,
3004 31, 32, 33, 34, -1, -1, -1, -1, -1, -1,
3005 -1, -1, -1, -1, -1, -1, 47, 48, 49, -1,
3006 -1, -1, 188, 189, 190, -1, 192, 193, 194, -1,
3007 -1, -1, 1, -1, -1, -1, -1, 6, 7, 8,
3008 71, -1, 11, 12, 13, 14, 15, 16, 17, 18,
3009 19, 20, -1, -1, -1, 24, -1, -1, -1, -1,
3010 29, 30, 31, 32, 33, 34, 188, 189, 190, -1,
3011 192, 193, 194, 42, 43, -1, 1, -1, 47, 48,
3012 49, 6, 7, 8, -1, 116, 11, 12, 13, 14,
3013 15, 16, 17, 18, 19, 20, -1, -1, -1, 24,
3014 -1, -1, 71, -1, 29, 30, 31, 32, 33, 34,
3015 -1, -1, -1, -1, -1, -1, -1, 42, 43, -1,
3016 -1, -1, 47, 48, 49, -1, 95, -1, 97, 98,
8f58355a 3017 99, 100, 101, 102, -1, -1, -1, -1, -1, -1,
08cf8642 3018 19, 20, 111, -1, -1, 24, 71, 116, -1, -1,
3019 29, 30, 31, 32, 33, 34, -1, 188, 189, 190,
3020 -1, 192, 193, 194, -1, -1, -1, -1, 47, 48,
3021 49, -1, 97, 98, 99, 100, 101, 102, -1, -1,
3022 -1, -1, -1, -1, -1, -1, 111, -1, -1, -1,
3023 -1, 116, 71, -1, -1, -1, -1, -1, -1, -1,
3024 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3025 -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
3026 189, 190, -1, 192, 193, 194, -1, -1, -1, -1,
3027 -1, -1, -1, -1, 6, 7, 8, 116, 10, 11,
368f75ae 3028 12, 13, 14, 15, 16, 17, 18, 19, 20, -1,
3029 -1, -1, 24, -1, -1, -1, -1, 29, 30, 31,
08cf8642 3030 32, 33, 34, 188, 189, 190, -1, 192, 193, 194,
368f75ae 3031 42, 43, 44, -1, 46, 47, 48, 49, -1, -1,
8f58355a 3032 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3033 -1, -1, -1, -1, -1, -1, -1, -1, -1, 71,
3034 72, -1, -1, -1, -1, -1, -1, -1, -1, 188,
08cf8642 3035 189, 190, -1, 192, -1, -1, -1, -1, -1, -1,
368f75ae 3036 -1, -1, -1, -1, 96, 97, 98, 99, 100, 101,
3037 102, -1, -1, -1, -1, -1, -1, -1, -1, 111,
3038 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
3039 122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
3040 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
3041 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
3042 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
3043 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
3044 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
3045 -1, -1, -1, -1, -1, -1, 188, 189, 190, 191,
3046 192, 193, 194, 195, 6, 7, 8, -1, 10, 11,
3047 12, 13, 14, 15, 16, 17, 18, 19, 20, -1,
3048 -1, -1, 24, -1, -1, -1, -1, 29, 30, 31,
3049 32, 33, 34, -1, -1, -1, -1, -1, -1, -1,
3050 42, 43, 44, -1, 46, 47, 48, 49, -1, -1,
8f58355a 3051 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3052 -1, -1, -1, -1, -1, -1, -1, -1, -1, 71,
3053 72, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 3054 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3055 -1, -1, -1, -1, 96, 97, 98, 99, 100, 101,
3056 102, -1, -1, -1, -1, -1, -1, -1, -1, 111,
3057 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
3058 122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
3059 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
3060 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
3061 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
3062 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
3063 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
3064 -1, -1, -1, -1, -1, -1, 188, 189, 190, 191,
3065 192, 193, 194, 195, 6, 7, 8, -1, 10, 11,
3066 12, 13, 14, 15, 16, 17, 18, 19, 20, -1,
3067 -1, -1, 24, -1, -1, -1, -1, 29, 30, 31,
3068 32, 33, 34, -1, -1, -1, -1, -1, -1, -1,
3069 42, 43, 44, -1, 46, 47, 48, 49, -1, -1,
8f58355a 3070 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3071 -1, -1, -1, -1, -1, -1, -1, -1, -1, 71,
3072 72, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8f58355a 3073 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3074 -1, -1, -1, -1, 96, 97, 98, 99, 100, 101,
3075 102, -1, -1, -1, -1, -1, -1, -1, -1, 111,
3076 112, 113, 114, 115, 116, 117, 118, 119, 120, 121,
3077 122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
3078 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
3079 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
3080 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
3081 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
3082 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
3083 -1, -1, -1, -1, -1, -1, 188, 189, 190, 191,
3084 192, 193, 194, 195, 6, 7, 8, -1, 10, 11,
3085 12, 13, 14, 15, 16, 17, 18, 19, 20, -1,
3086 -1, -1, 24, -1, -1, -1, -1, 29, 30, 31,
3087 32, 33, 34, -1, -1, -1, -1, -1, -1, -1,
3088 -1, -1, -1, -1, -1, 47, 48, 49, 6, 7,
3089 8, -1, 10, 11, 12, 13, 14, 15, 16, 17,
3090 18, 19, 20, -1, -1, -1, 24, -1, -1, 71,
3091 -1, 29, 30, 31, 32, 33, 34, -1, -1, -1,
3092 -1, -1, -1, -1, -1, -1, -1, -1, -1, 47,
3093 48, 49, -1, -1, 96, 97, 98, 99, 100, 101,
3094 102, -1, -1, -1, -1, -1, -1, -1, -1, 111,
3095 -1, -1, -1, 71, 116, -1, -1, -1, -1, -1,
8f58355a 3096 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3097 -1, -1, -1, -1, -1, -1, -1, -1, 96, 97,
909cf5eb 3098 98, 99, 100, 101, 102, -1, -1, -1, -1, -1,
368f75ae 3099 -1, -1, -1, 111, -1, 6, 7, 8, 116, 10,
3100 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
3101 -1, -1, -1, 24, -1, -1, -1, -1, 29, 30,
3102 31, 32, 33, 34, -1, -1, 188, 189, 190, -1,
3103 192, 193, 194, -1, -1, -1, 47, 48, 49, 6,
3104 7, 8, -1, 10, 11, 12, 13, 14, 15, 16,
8f58355a 3105 17, 18, 19, 20, -1, -1, -1, 24, -1, -1,
368f75ae 3106 71, -1, 29, 30, 31, 32, 33, 34, -1, -1,
8f58355a 3107 188, 189, 190, -1, 192, 193, 194, -1, -1, -1,
368f75ae 3108 47, 48, 49, -1, -1, 96, 97, 98, 99, 100,
3109 101, 102, -1, -1, -1, -1, -1, -1, -1, -1,
3110 111, -1, -1, -1, 71, 116, -1, -1, -1, -1,
2f2892c2 3111 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3112 -1, -1, -1, -1, -1, -1, -1, -1, -1, 96,
3113 97, 98, 99, 100, 101, 102, -1, -1, -1, -1,
3114 -1, -1, -1, -1, 111, -1, 6, 7, 8, 116,
3115 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
3116 20, -1, -1, -1, 24, -1, -1, -1, -1, 29,
3117 30, 31, 32, 33, 34, -1, -1, 188, 189, 190,
3118 -1, 192, 193, 194, -1, -1, -1, 47, 48, 49,
3119 6, 7, 8, -1, 10, 11, 12, 13, 14, 15,
8f58355a 3120 16, 17, 18, 19, 20, -1, -1, -1, 24, -1,
368f75ae 3121 -1, 71, -1, 29, 30, 31, 32, 33, 34, -1,
8f58355a 3122 -1, 188, 189, 190, -1, 192, 193, 194, -1, -1,
368f75ae 3123 -1, 47, 48, 49, -1, -1, 96, 97, 98, 99,
3124 100, 101, 102, -1, -1, -1, -1, -1, -1, -1,
3125 -1, 111, -1, -1, -1, 71, 116, -1, -1, -1,
edad9a7f 3126 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 3127 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3128 96, 97, 98, 99, 100, 101, 102, -1, -1, -1,
3129 -1, -1, -1, -1, -1, 111, -1, 6, 7, 8,
3130 116, 10, 11, 12, 13, 14, 15, 16, 17, 18,
3131 19, 20, -1, -1, -1, 24, -1, -1, -1, -1,
3132 29, 30, 31, 32, 33, 34, -1, -1, 188, 189,
3133 190, -1, 192, 193, 194, -1, -1, -1, 47, 48,
3134 49, 6, 7, 8, -1, 10, 11, 12, 13, 14,
3135 15, 16, 17, 18, 19, -1, -1, -1, -1, 24,
3136 -1, -1, 71, -1, 29, 30, 31, 32, 33, 34,
8f58355a 3137 -1, -1, 188, 189, 190, -1, 192, 193, 194, -1,
368f75ae 3138 -1, -1, 47, 48, 49, -1, -1, 96, 97, 98,
3139 99, 100, 101, 102, -1, -1, -1, -1, -1, -1,
3140 -1, -1, 111, -1, -1, -1, 71, 116, -1, -1,
d0b80d80 3141 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3142 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3143 -1, 96, 97, 98, 99, 100, 101, 102, 19, -1,
3144 -1, -1, -1, 24, -1, -1, 111, -1, -1, -1,
3145 -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
3146 -1, -1, -1, 44, -1, 46, -1, -1, -1, -1,
3147 -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
3148 189, 190, -1, 192, 193, 194, -1, -1, -1, -1,
3149 -1, 72, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 3150 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2f2892c2 3151 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3152 -1, -1, -1, 188, 189, 190, -1, 192, 193, 194,
3153 -1, 112, 113, 114, 115, -1, 117, 118, 119, 120,
3154 121, 122, 123, 124, 125, 126, -1, 128, 129, 130,
3155 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
3156 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
3157 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
3158 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
3159 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
3160 181, 20, -1, -1, -1, -1, -1, -1, -1, 190,
3161 191, -1, -1, -1, 195, -1, -1, -1, -1, -1,
3162 -1, -1, -1, -1, -1, 44, -1, -1, -1, -1,
2f2892c2 3163 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2f2892c2 3164 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
e5081f8c 3165 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 3166 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 3167 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 3168 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3169 -1, -1, -1, 112, 113, 114, 115, -1, 117, 118,
8f58355a 3170 119, 120, 121, 122, 123, 124, 125, 126, -1, 128,
3171 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
3172 139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
3173 149, 150, 151, 152, 153, 154, 155, 156, 157, 158,
3174 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
3175 169, 170, 171, 172, 173, 174, 175, 176, 177, 178,
08cf8642 3176 179, 180, 181, -1, -1, -1, -1, -1, 19, 20,
3177 -1, 190, 191, 24, -1, 26, 195, 28, 29, 30,
368f75ae 3178 31, 32, 33, 34, -1, -1, -1, -1, -1, 19,
08cf8642 3179 -1, -1, -1, -1, 24, -1, 47, 48, 49, 29,
368f75ae 3180 30, 31, 32, 33, 34, -1, -1, -1, -1, -1,
08cf8642 3181 -1, -1, 42, 43, -1, -1, 19, 47, 48, 49,
368f75ae 3182 71, 24, -1, -1, -1, -1, 29, 30, 31, 32,
08cf8642 3183 33, 34, -1, -1, -1, -1, -1, -1, -1, 42,
3184 43, 71, -1, 19, 47, 48, 49, -1, 24, -1,
368f75ae 3185 -1, -1, -1, 29, 30, 31, 32, 33, 34, -1,
08cf8642 3186 -1, -1, -1, -1, 19, 116, -1, -1, 71, 24,
3187 -1, 47, 48, 49, 29, 30, 31, 32, 33, 34,
368f75ae 3188 -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
08cf8642 3189 -1, -1, 47, 48, 49, 71, -1, -1, -1, -1,
3dabb077 3190 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3191 -1, -1, -1, 116, -1, -1, 71, -1, -1, -1,
edad9a7f 3192 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3193 -1, -1, -1, -1, -1, -1, -1, 188, 189, 190,
3194 116, 192, 193, 194, -1, -1, -1, -1, -1, -1,
3195 -1, -1, -1, 24, -1, -1, -1, -1, 188, 189,
3196 190, 116, 192, 34, -1, -1, -1, -1, -1, -1,
3197 -1, -1, -1, 44, -1, -1, -1, -1, -1, -1,
368f75ae 3198 -1, -1, -1, -1, -1, 188, 189, 190, -1, 192,
edad9a7f 3199 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 3200 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3201 -1, -1, 188, 189, 190, -1, 192, -1, -1, -1,
08cf8642 3202 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3203 -1, -1, -1, 188, 189, 190, -1, 192, -1, -1,
3204 -1, 112, 113, 114, 115, -1, 117, 118, 119, 120,
3205 121, 122, 123, 124, 125, 126, -1, 128, 129, 130,
3206 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
3207 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
3208 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
3209 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
3210 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
3211 181, -1, -1, -1, -1, -1, -1, 188, 189, 190,
3212 191, -1, 193, 194, 195, 24, 25, -1, -1, -1,
3213 29, 30, 31, 32, 33, 34, 24, -1, -1, 27,
3214 -1, 29, 30, 31, 32, 33, 34, -1, 47, 48,
3215 49, -1, -1, -1, -1, -1, -1, 24, 25, 47,
3216 48, 49, 29, 30, 31, 32, 33, 34, 24, -1,
3217 -1, 27, 71, 29, 30, 31, 32, 33, 34, -1,
3218 47, 48, 49, 71, -1, -1, -1, -1, -1, 24,
3219 25, 47, 48, 49, 29, 30, 31, 32, 33, 34,
3220 24, -1, -1, -1, 71, 29, 30, 31, 32, 33,
3221 34, -1, 47, 48, 49, 71, -1, 116, -1, -1,
3222 -1, -1, -1, 47, 48, 49, -1, -1, 116, -1,
3223 -1, -1, 24, -1, -1, -1, 71, 29, 30, 31,
3224 32, 33, 34, -1, -1, -1, -1, 71, -1, 116,
3225 -1, -1, -1, -1, -1, 47, 48, 49, -1, 24,
3226 116, -1, -1, -1, 29, 30, 31, 32, 33, 34,
3227 -1, -1, -1, -1, -1, -1, -1, -1, -1, 71,
3228 -1, 116, 47, 48, 49, -1, -1, -1, -1, 188,
3229 189, 190, 116, 192, -1, -1, -1, -1, -1, -1,
3230 188, 189, 190, 24, 192, -1, 71, -1, 29, 30,
368f75ae 3231 31, 32, 33, 34, -1, -1, -1, -1, -1, -1,
08cf8642 3232 -1, 188, 189, 190, 116, 192, 47, 48, 49, -1,
3233 -1, -1, 188, 189, 190, -1, 192, 24, -1, -1,
3234 -1, -1, 29, 30, 31, 32, 33, 34, -1, -1,
3235 71, 116, -1, 188, 189, 190, -1, 192, -1, -1,
3236 47, 48, 49, -1, 188, 189, 190, -1, 192, -1,
d0b80d80 3237 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3238 -1, -1, -1, -1, 71, -1, -1, -1, -1, -1,
3239 -1, -1, -1, -1, -1, 116, 188, 189, 190, -1,
3240 192, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 3241 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3242 -1, -1, -1, 188, 189, 190, -1, 192, -1, 116,
3243 -1, -1, -1, -1, -1, -1, -1, -1, 44, -1,
3244 46, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 3245 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3246 -1, -1, 68, 69, 70, -1, 72, 188, 189, 190,
3247 -1, 192, -1, -1, -1, -1, -1, -1, -1, -1,
edad9a7f 3248 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 3249 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3250 -1, 188, 189, 190, -1, 192, 112, 113, 114, 115,
3251 -1, 117, 118, 119, 120, 121, 122, 123, 124, 125,
3252 126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
3253 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
3254 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
3255 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
3256 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
3257 176, 177, 178, 179, 180, 181, 44, -1, 46, -1,
3258 -1, -1, -1, -1, 190, 191, -1, -1, -1, 195,
909cf5eb 3259 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3260 -1, -1, -1, -1, 72, -1, -1, -1, -1, -1,
909cf5eb 3261 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 3262 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
d0b80d80 3263 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3264 -1, -1, -1, -1, 112, 113, 114, 115, -1, 117,
3265 118, 119, 120, 121, 122, 123, 124, 125, 126, -1,
3266 128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
3267 138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
3268 148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
3269 158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
3270 168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
3271 178, 179, 180, 181, 44, -1, -1, -1, -1, -1,
3272 188, 189, 190, 191, -1, -1, -1, 195, -1, -1,
3273 -1, -1, -1, -1, -1, -1, -1, -1, 68, 69,
3274 70, -1, -1, -1, -1, -1, -1, -1, -1, -1,
909cf5eb 3275 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3276 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3277 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3278 -1, -1, 112, 113, 114, 115, -1, 117, 118, 119,
3279 120, 121, 122, 123, 124, 125, 126, -1, 128, 129,
3280 130, 131, 132, 133, 134, 135, 136, 137, 138, 139,
3281 140, 141, 142, 143, 144, 145, 146, 147, 148, 149,
3282 150, 151, 152, 153, 154, 155, 156, 157, 158, 159,
3283 160, 161, 162, 163, 164, 165, 166, 167, 168, 169,
3284 170, 171, 172, 173, 174, 175, 176, 177, 178, 179,
3285 180, 181, 44, -1, -1, -1, -1, -1, -1, -1,
3286 190, 191, -1, -1, -1, 195, -1, -1, -1, -1,
909cf5eb 3287 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8f58355a 3288 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3289 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3290 92, 93, 94, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3291 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3292 112, 113, 114, 115, -1, 117, 118, 119, 120, 121,
3293 122, 123, 124, 125, 126, -1, 128, 129, 130, 131,
3294 132, 133, 134, 135, 136, 137, 138, 139, 140, 141,
3295 142, 143, 144, 145, 146, 147, 148, 149, 150, 151,
3296 152, 153, 154, 155, 156, 157, 158, 159, 160, 161,
3297 162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
3298 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
3299 44, -1, 46, -1, -1, -1, -1, -1, 190, 191,
3300 -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
3301 -1, -1, -1, -1, -1, -1, -1, -1, 72, -1,
368f75ae 3302 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3303 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3304 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3305 -1, -1, -1, -1, -1, -1, -1, -1, 112, 113,
3306 114, 115, -1, 117, 118, 119, 120, 121, 122, 123,
3307 124, 125, 126, -1, 128, 129, 130, 131, 132, 133,
3308 134, 135, 136, 137, 138, 139, 140, 141, 142, 143,
3309 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
3310 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
3311 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
3312 174, 175, 176, 177, 178, 179, 180, 181, 44, -1,
3313 -1, -1, -1, -1, -1, -1, 190, 191, -1, -1,
3314 -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
368f75ae 3315 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3316 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
08cf8642 3317 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3318 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3319 -1, -1, -1, -1, -1, -1, 112, 113, 114, 115,
3320 -1, 117, 118, 119, 120, 121, 122, 123, 124, 125,
3321 126, -1, 128, 129, 130, 131, 132, 133, 134, 135,
3322 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
3323 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
3324 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
3325 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
3326 176, 177, 178, 179, 180, 181, -1, -1, -1, -1,
3327 -1, -1, -1, -1, 190, 191, -1, -1, -1, 195
3328};
3329
3330/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3331 symbol of state STATE-NUM. */
3332static const yytype_uint16 yystos[] =
3333{
3334 0, 1, 18, 34, 44, 46, 72, 77, 78, 79,
3335 92, 93, 94, 112, 113, 114, 115, 117, 118, 119,
3336 120, 121, 122, 123, 124, 125, 126, 128, 129, 130,
8f58355a 3337 131, 132, 133, 134, 135, 136, 137, 138, 139, 140,
3338 141, 142, 143, 144, 145, 146, 147, 148, 149, 150,
3339 151, 152, 153, 154, 155, 156, 157, 158, 159, 160,
3340 161, 162, 163, 164, 165, 166, 167, 168, 169, 170,
3341 171, 172, 173, 174, 175, 176, 177, 178, 179, 180,
08cf8642 3342 181, 188, 189, 190, 191, 193, 194, 195, 198, 199,
3343 200, 201, 202, 206, 212, 215, 216, 256, 261, 303,
3344 304, 310, 312, 324, 334, 335, 336, 337, 338, 339,
3345 340, 341, 342, 343, 344, 345, 347, 349, 352, 361,
3346 366, 371, 375, 470, 471, 472, 112, 113, 114, 373,
3347 374, 375, 24, 308, 314, 315, 347, 371, 190, 347,
3348 203, 190, 471, 1, 6, 7, 8, 10, 11, 12,
3349 13, 14, 15, 16, 17, 18, 24, 29, 30, 31,
3350 32, 33, 34, 47, 48, 49, 71, 95, 96, 97,
3351 98, 99, 100, 101, 102, 111, 116, 189, 190, 192,
3352 193, 269, 271, 273, 275, 278, 281, 282, 283, 284,
3353 285, 286, 287, 288, 289, 290, 292, 294, 299, 300,
3354 388, 393, 403, 404, 405, 407, 410, 414, 415, 423,
3355 429, 430, 431, 434, 436, 442, 464, 466, 467, 470,
3356 471, 1, 11, 18, 24, 193, 194, 300, 389, 391,
3357 392, 393, 396, 398, 399, 401, 402, 405, 407, 410,
3358 415, 419, 428, 430, 435, 464, 467, 389, 390, 312,
3359 312, 312, 361, 361, 361, 361, 361, 361, 361, 361,
3360 361, 361, 0, 200, 26, 313, 19, 257, 259, 18,
3361 468, 24, 347, 350, 312, 312, 312, 312, 312, 312,
3362 312, 312, 361, 312, 350, 350, 312, 361, 88, 361,
3363 68, 69, 70, 361, 206, 361, 373, 375, 24, 189,
3364 190, 300, 312, 346, 383, 470, 21, 312, 312, 311,
3365 312, 361, 361, 204, 205, 209, 312, 347, 375, 471,
3366 24, 273, 294, 302, 411, 24, 24, 24, 24, 471,
3367 18, 18, 18, 300, 270, 300, 383, 404, 281, 281,
3368 281, 281, 281, 281, 312, 24, 273, 273, 24, 24,
3369 16, 16, 16, 16, 15, 102, 406, 24, 387, 388,
3370 393, 405, 407, 410, 413, 415, 428, 431, 434, 436,
3371 464, 465, 467, 437, 24, 26, 48, 49, 361, 23,
3372 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
3373 276, 312, 34, 35, 36, 32, 33, 50, 51, 37,
3374 38, 52, 53, 54, 55, 29, 39, 40, 56, 41,
3375 57, 18, 21, 404, 95, 19, 422, 404, 387, 404,
3376 192, 404, 22, 24, 300, 398, 415, 18, 95, 398,
3377 398, 303, 347, 424, 19, 20, 400, 391, 404, 95,
3378 27, 312, 24, 258, 424, 361, 18, 371, 348, 383,
3379 312, 471, 312, 471, 19, 471, 300, 25, 347, 26,
3380 312, 375, 384, 386, 25, 361, 18, 361, 18, 23,
3381 371, 468, 26, 313, 24, 361, 209, 5, 361, 372,
3382 378, 379, 380, 408, 22, 300, 300, 300, 300, 301,
3383 18, 18, 24, 413, 25, 25, 25, 24, 383, 299,
3384 300, 18, 18, 18, 18, 18, 406, 6, 7, 413,
3385 387, 19, 421, 387, 387, 415, 25, 272, 299, 300,
3386 28, 45, 299, 299, 299, 299, 299, 299, 299, 299,
3387 299, 299, 299, 279, 277, 281, 281, 281, 282, 282,
3388 283, 283, 284, 284, 284, 284, 285, 285, 286, 287,
3389 288, 291, 295, 297, 293, 299, 20, 190, 404, 423,
3390 424, 416, 9, 11, 300, 25, 24, 361, 303, 398,
3391 11, 302, 25, 372, 20, 111, 387, 420, 424, 427,
3392 260, 371, 361, 91, 21, 19, 312, 361, 19, 312,
3393 361, 368, 369, 471, 19, 312, 312, 27, 302, 24,
3394 386, 26, 312, 308, 195, 307, 308, 316, 317, 309,
3395 361, 91, 27, 312, 24, 361, 205, 376, 377, 471,
3396 25, 21, 312, 382, 471, 22, 25, 433, 25, 18,
3397 25, 19, 281, 383, 25, 21, 25, 302, 412, 25,
3398 420, 11, 24, 21, 25, 27, 471, 471, 42, 43,
3399 280, 289, 22, 300, 290, 20, 20, 427, 432, 24,
3400 25, 397, 371, 24, 27, 207, 25, 20, 20, 111,
3401 427, 20, 111, 387, 413, 312, 23, 305, 348, 20,
3402 357, 19, 20, 359, 19, 20, 21, 23, 367, 27,
3403 25, 361, 378, 27, 302, 24, 21, 312, 312, 312,
3404 23, 468, 302, 25, 372, 205, 21, 213, 5, 381,
3405 347, 25, 301, 19, 299, 425, 426, 361, 383, 409,
3406 22, 24, 438, 299, 312, 312, 24, 273, 24, 273,
3407 296, 22, 20, 387, 300, 24, 29, 30, 31, 32,
3408 33, 34, 48, 49, 71, 189, 190, 271, 273, 276,
3409 282, 283, 284, 285, 286, 287, 288, 289, 290, 292,
3410 439, 441, 442, 443, 444, 445, 446, 447, 448, 449,
3411 450, 451, 452, 453, 454, 455, 456, 457, 462, 470,
3412 300, 361, 73, 74, 75, 76, 80, 81, 82, 83,
3413 84, 85, 86, 233, 235, 237, 238, 240, 241, 242,
3414 247, 248, 254, 255, 325, 326, 328, 329, 330, 208,
3415 20, 20, 111, 20, 25, 306, 312, 417, 20, 353,
3416 417, 20, 355, 312, 369, 312, 368, 384, 25, 27,
3417 25, 378, 361, 246, 247, 19, 26, 28, 299, 319,
3418 320, 321, 322, 471, 312, 312, 27, 210, 25, 312,
3419 5, 471, 234, 236, 238, 240, 242, 248, 326, 330,
3420 382, 206, 312, 370, 375, 385, 386, 387, 18, 425,
3421 21, 469, 21, 25, 22, 300, 439, 383, 383, 294,
3422 298, 25, 300, 383, 281, 281, 281, 281, 281, 281,
3423 273, 273, 24, 24, 26, 48, 49, 361, 23, 58,
3424 59, 60, 61, 62, 63, 64, 65, 66, 67, 34,
3425 35, 36, 32, 33, 50, 51, 37, 38, 52, 53,
3426 54, 55, 29, 39, 40, 56, 41, 57, 25, 440,
3427 25, 189, 244, 245, 239, 243, 233, 91, 91, 91,
3428 361, 361, 91, 332, 336, 91, 233, 20, 312, 318,
3429 215, 347, 362, 363, 417, 362, 417, 302, 20, 25,
3430 25, 307, 18, 319, 323, 302, 471, 319, 23, 322,
3431 22, 319, 91, 361, 234, 211, 25, 214, 234, 24,
3432 312, 195, 370, 394, 469, 426, 20, 274, 471, 25,
3433 25, 25, 25, 294, 18, 25, 25, 299, 25, 272,
3434 300, 28, 45, 299, 299, 299, 299, 299, 299, 299,
3435 299, 299, 299, 299, 281, 281, 281, 282, 282, 283,
3436 283, 284, 284, 284, 284, 285, 285, 286, 287, 288,
3437 289, 458, 460, 290, 21, 18, 442, 40, 89, 90,
3438 121, 122, 135, 249, 250, 251, 253, 24, 34, 189,
3439 190, 262, 263, 265, 468, 470, 327, 5, 24, 34,
3440 184, 185, 189, 192, 217, 218, 224, 225, 226, 228,
3441 229, 230, 231, 333, 470, 331, 319, 18, 21, 312,
3442 361, 363, 418, 362, 418, 362, 312, 20, 21, 27,
3443 318, 234, 468, 361, 301, 20, 25, 26, 28, 18,
3444 413, 281, 21, 25, 27, 471, 471, 22, 300, 441,
3445 244, 21, 468, 189, 252, 303, 470, 251, 263, 263,
3446 26, 28, 45, 21, 468, 24, 34, 189, 266, 268,
3447 470, 220, 228, 230, 24, 230, 23, 56, 187, 223,
3448 52, 53, 54, 227, 26, 28, 45, 219, 24, 468,
3449 267, 268, 318, 312, 361, 18, 22, 364, 365, 371,
3450 358, 418, 360, 418, 20, 319, 468, 91, 375, 395,
3451 312, 300, 471, 194, 463, 383, 312, 312, 459, 22,
3452 250, 25, 27, 263, 264, 442, 471, 471, 263, 266,
3453 266, 26, 28, 45, 21, 468, 22, 32, 33, 232,
3454 25, 230, 218, 221, 230, 224, 230, 228, 27, 192,
3455 471, 471, 22, 228, 312, 468, 18, 308, 312, 21,
3456 312, 361, 22, 20, 354, 20, 356, 91, 25, 27,
3457 416, 25, 294, 461, 27, 25, 27, 264, 471, 471,
3458 266, 312, 196, 222, 228, 40, 27, 222, 25, 312,
3459 312, 302, 365, 18, 312, 20, 20, 294, 27, 25,
3460 221, 361, 302, 351
368f75ae 3461};
368f75ae 3462
08cf8642 3463#define yyerrok (yyerrstatus = 0)
3464#define yyclearin (yychar = YYEMPTY)
3465#define YYEMPTY (-2)
3466#define YYEOF 0
368f75ae 3467
08cf8642 3468#define YYACCEPT goto yyacceptlab
3469#define YYABORT goto yyabortlab
3470#define YYERROR goto yyerrorlab
368f75ae 3471
368f75ae 3472
08cf8642 3473/* Like YYERROR except do call yyerror. This remains here temporarily
3474 to ease the transition to the new meaning of YYERROR, for GCC.
3475 Once GCC version 2 has supplanted version 1, this can go. */
368f75ae 3476
08cf8642 3477#define YYFAIL goto yyerrlab
368f75ae 3478
08cf8642 3479#define YYRECOVERING() (!!yyerrstatus)
368f75ae 3480
08cf8642 3481#define YYBACKUP(Token, Value) \
3482do \
3483 if (yychar == YYEMPTY && yylen == 1) \
3484 { \
3485 yychar = (Token); \
3486 yylval = (Value); \
3487 yytoken = YYTRANSLATE (yychar); \
3488 YYPOPSTACK (1); \
3489 goto yybackup; \
3490 } \
3491 else \
3492 { \
3493 yyerror (YY_("syntax error: cannot back up")); \
3494 YYERROR; \
3495 } \
3496while (YYID (0))
368f75ae 3497
368f75ae 3498
08cf8642 3499#define YYTERROR 1
3500#define YYERRCODE 256
368f75ae 3501
368f75ae 3502
08cf8642 3503/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
3504 If N is 0, then set CURRENT to the empty location which ends
3505 the previous symbol: RHS[0] (always defined). */
368f75ae 3506
08cf8642 3507#define YYRHSLOC(Rhs, K) ((Rhs)[K])
3508#ifndef YYLLOC_DEFAULT
3509# define YYLLOC_DEFAULT(Current, Rhs, N) \
3510 do \
3511 if (YYID (N)) \
3512 { \
3513 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
3514 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
3515 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
3516 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
3517 } \
3518 else \
3519 { \
3520 (Current).first_line = (Current).last_line = \
3521 YYRHSLOC (Rhs, 0).last_line; \
3522 (Current).first_column = (Current).last_column = \
3523 YYRHSLOC (Rhs, 0).last_column; \
3524 } \
3525 while (YYID (0))
3526#endif
368f75ae 3527
d0b80d80 3528
08cf8642 3529/* YY_LOCATION_PRINT -- Print the location on the stream.
3530 This macro was not mandated originally: define only if we know
3531 we won't break user code: when these are the locations we know. */
368f75ae 3532
08cf8642 3533#ifndef YY_LOCATION_PRINT
3534# if YYLTYPE_IS_TRIVIAL
3535# define YY_LOCATION_PRINT(File, Loc) \
3536 fprintf (File, "%d.%d-%d.%d", \
3537 (Loc).first_line, (Loc).first_column, \
3538 (Loc).last_line, (Loc).last_column)
368f75ae 3539# else
08cf8642 3540# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
368f75ae 3541# endif
08cf8642 3542#endif
368f75ae 3543
368f75ae 3544
08cf8642 3545/* YYLEX -- calling `yylex' with the right arguments. */
368f75ae 3546
08cf8642 3547#ifdef YYLEX_PARAM
3548# define YYLEX yylex (YYLEX_PARAM)
3549#else
3550# define YYLEX yylex ()
368f75ae 3551#endif
3552
08cf8642 3553/* Enable debugging if requested. */
3554#if YYDEBUG
368f75ae 3555
08cf8642 3556# ifndef YYFPRINTF
3557# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3558# define YYFPRINTF fprintf
d0b80d80 3559# endif
08cf8642 3560
3561# define YYDPRINTF(Args) \
3562do { \
3563 if (yydebug) \
3564 YYFPRINTF Args; \
3565} while (YYID (0))
3566
3567# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
3568do { \
3569 if (yydebug) \
3570 { \
3571 YYFPRINTF (stderr, "%s ", Title); \
3572 yy_symbol_print (stderr, \
3573 Type, Value); \
3574 YYFPRINTF (stderr, "\n"); \
3575 } \
3576} while (YYID (0))
3577
3578
3579/*--------------------------------.
3580| Print this symbol on YYOUTPUT. |
3581`--------------------------------*/
3582
3583/*ARGSUSED*/
3584#if (defined __STDC__ || defined __C99__FUNC__ \
3585 || defined __cplusplus || defined _MSC_VER)
3586static void
3587yy_symbol_value_print (FILE *yyoutput, int yytype, cgrammar_YYSTYPE const * const yyvaluep)
3588#else
3589static void
3590yy_symbol_value_print (yyoutput, yytype, yyvaluep)
3591 FILE *yyoutput;
3592 int yytype;
3593 cgrammar_YYSTYPE const * const yyvaluep;
d0b80d80 3594#endif
08cf8642 3595{
3596 if (!yyvaluep)
3597 return;
3598# ifdef YYPRINT
3599 if (yytype < YYNTOKENS)
3600 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
3601# else
3602 YYUSE (yyoutput);
3603# endif
3604 switch (yytype)
3605 {
3606 default:
3607 break;
3608 }
3609}
d0b80d80 3610
d0b80d80 3611
08cf8642 3612/*--------------------------------.
3613| Print this symbol on YYOUTPUT. |
3614`--------------------------------*/
d0b80d80 3615
08cf8642 3616#if (defined __STDC__ || defined __C99__FUNC__ \
3617 || defined __cplusplus || defined _MSC_VER)
3618static void
3619yy_symbol_print (FILE *yyoutput, int yytype, cgrammar_YYSTYPE const * const yyvaluep)
3620#else
3621static void
3622yy_symbol_print (yyoutput, yytype, yyvaluep)
3623 FILE *yyoutput;
3624 int yytype;
3625 cgrammar_YYSTYPE const * const yyvaluep;
3626#endif
3627{
3628 if (yytype < YYNTOKENS)
3629 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
3630 else
3631 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
368f75ae 3632
08cf8642 3633 yy_symbol_value_print (yyoutput, yytype, yyvaluep);
3634 YYFPRINTF (yyoutput, ")");
3635}
368f75ae 3636
08cf8642 3637/*------------------------------------------------------------------.
3638| yy_stack_print -- Print the state stack from its BOTTOM up to its |
3639| TOP (included). |
3640`------------------------------------------------------------------*/
d0b80d80 3641
08cf8642 3642#if (defined __STDC__ || defined __C99__FUNC__ \
3643 || defined __cplusplus || defined _MSC_VER)
3644static void
3645yy_stack_print (yytype_int16 *bottom, yytype_int16 *top)
3646#else
3647static void
3648yy_stack_print (bottom, top)
3649 yytype_int16 *bottom;
3650 yytype_int16 *top;
d0b80d80 3651#endif
08cf8642 3652{
3653 YYFPRINTF (stderr, "Stack now");
3654 for (; bottom <= top; ++bottom)
3655 YYFPRINTF (stderr, " %d", *bottom);
3656 YYFPRINTF (stderr, "\n");
3657}
d0b80d80 3658
08cf8642 3659# define YY_STACK_PRINT(Bottom, Top) \
3660do { \
3661 if (yydebug) \
3662 yy_stack_print ((Bottom), (Top)); \
3663} while (YYID (0))
368f75ae 3664
368f75ae 3665
08cf8642 3666/*------------------------------------------------.
3667| Report that the YYRULE is going to be reduced. |
3668`------------------------------------------------*/
d0b80d80 3669
08cf8642 3670#if (defined __STDC__ || defined __C99__FUNC__ \
3671 || defined __cplusplus || defined _MSC_VER)
3672static void
3673yy_reduce_print (cgrammar_YYSTYPE *yyvsp, int yyrule)
3674#else
3675static void
3676yy_reduce_print (yyvsp, yyrule)
3677 cgrammar_YYSTYPE *yyvsp;
3678 int yyrule;
3679#endif
3680{
3681 int yynrhs = yyr2[yyrule];
3682 int yyi;
3683 unsigned long int yylno = yyrline[yyrule];
3684 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
3685 yyrule - 1, yylno);
3686 /* The symbols being reduced. */
3687 for (yyi = 0; yyi < yynrhs; yyi++)
3688 {
3689 fprintf (stderr, " $%d = ", yyi + 1);
3690 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
3691 &(yyvsp[(yyi + 1) - (yynrhs)])
3692 );
3693 fprintf (stderr, "\n");
3694 }
3695}
d0b80d80 3696
08cf8642 3697# define YY_REDUCE_PRINT(Rule) \
3698do { \
3699 if (yydebug) \
3700 yy_reduce_print (yyvsp, Rule); \
3701} while (YYID (0))
d0b80d80 3702
d0b80d80 3703/* Nonzero means print parse trace. It is left uninitialized so that
3704 multiple parsers can coexist. */
3705int yydebug;
3706#else /* !YYDEBUG */
3707# define YYDPRINTF(Args)
08cf8642 3708# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3709# define YY_STACK_PRINT(Bottom, Top)
3710# define YY_REDUCE_PRINT(Rule)
d0b80d80 3711#endif /* !YYDEBUG */
3712
08cf8642 3713
d0b80d80 3714/* YYINITDEPTH -- initial size of the parser's stacks. */
3715#ifndef YYINITDEPTH
3716# define YYINITDEPTH 200
3717#endif
3718
3719/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3720 if the built-in stack extension method is used).
3721
3722 Do not make this value too large; the results are undefined if
08cf8642 3723 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
d0b80d80 3724 evaluated with infinite-precision integer arithmetic. */
3725
d0b80d80 3726#ifndef YYMAXDEPTH
3727# define YYMAXDEPTH 10000
3728#endif
08cf8642 3729
d0b80d80 3730\f
08cf8642 3731
3732#if YYERROR_VERBOSE
d0b80d80 3733
3734# ifndef yystrlen
08cf8642 3735# if defined __GLIBC__ && defined _STRING_H
d0b80d80 3736# define yystrlen strlen
3737# else
3738/* Return the length of YYSTR. */
08cf8642 3739#if (defined __STDC__ || defined __C99__FUNC__ \
3740 || defined __cplusplus || defined _MSC_VER)
d0b80d80 3741static YYSIZE_T
d0b80d80 3742yystrlen (const char *yystr)
08cf8642 3743#else
3744static YYSIZE_T
d0b80d80 3745yystrlen (yystr)
08cf8642 3746 const char *yystr;
3747#endif
d0b80d80 3748{
08cf8642 3749 YYSIZE_T yylen;
3750 for (yylen = 0; yystr[yylen]; yylen++)
d0b80d80 3751 continue;
08cf8642 3752 return yylen;
d0b80d80 3753}
3754# endif
3755# endif
3756
3757# ifndef yystpcpy
08cf8642 3758# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
d0b80d80 3759# define yystpcpy stpcpy
3760# else
3761/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3762 YYDEST. */
08cf8642 3763#if (defined __STDC__ || defined __C99__FUNC__ \
3764 || defined __cplusplus || defined _MSC_VER)
d0b80d80 3765static char *
d0b80d80 3766yystpcpy (char *yydest, const char *yysrc)
08cf8642 3767#else
3768static char *
d0b80d80 3769yystpcpy (yydest, yysrc)
08cf8642 3770 char *yydest;
3771 const char *yysrc;
3772#endif
d0b80d80 3773{
08cf8642 3774 char *yyd = yydest;
3775 const char *yys = yysrc;
d0b80d80 3776
3777 while ((*yyd++ = *yys++) != '\0')
3778 continue;
3779
3780 return yyd - 1;
3781}
3782# endif
3783# endif
8f58355a 3784
08cf8642 3785# ifndef yytnamerr
3786/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3787 quotes and backslashes, so that it's suitable for yyerror. The
3788 heuristic is that double-quoting is unnecessary unless the string
3789 contains an apostrophe, a comma, or backslash (other than
3790 backslash-backslash). YYSTR is taken from yytname. If YYRES is
3791 null, do not copy; instead, return the length of what the result
3792 would have been. */
3793static YYSIZE_T
3794yytnamerr (char *yyres, const char *yystr)
3795{
3796 if (*yystr == '"')
3797 {
3798 YYSIZE_T yyn = 0;
3799 char const *yyp = yystr;
3800
3801 for (;;)
3802 switch (*++yyp)
3803 {
3804 case '\'':
3805 case ',':
3806 goto do_not_strip_quotes;
3807
3808 case '\\':
3809 if (*++yyp != '\\')
3810 goto do_not_strip_quotes;
3811 /* Fall through. */
3812 default:
3813 if (yyres)
3814 yyres[yyn] = *yyp;
3815 yyn++;
3816 break;
3817
3818 case '"':
3819 if (yyres)
3820 yyres[yyn] = '\0';
3821 return yyn;
3822 }
3823 do_not_strip_quotes: ;
3824 }
368f75ae 3825
08cf8642 3826 if (! yyres)
3827 return yystrlen (yystr);
8f58355a 3828
08cf8642 3829 return yystpcpy (yyres, yystr) - yyres;
3830}
8f58355a 3831# endif
08cf8642 3832
3833/* Copy into YYRESULT an error message about the unexpected token
3834 YYCHAR while in state YYSTATE. Return the number of bytes copied,
3835 including the terminating null byte. If YYRESULT is null, do not
3836 copy anything; just return the number of bytes that would be
3837 copied. As a special case, return 0 if an ordinary "syntax error"
3838 message will do. Return YYSIZE_MAXIMUM if overflow occurs during
3839 size calculation. */
3840static YYSIZE_T
3841yysyntax_error (char *yyresult, int yystate, int yychar)
3842{
3843 int yyn = yypact[yystate];
3844
3845 if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
3846 return 0;
3847 else
3848 {
3849 int yytype = YYTRANSLATE (yychar);
3850 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
3851 YYSIZE_T yysize = yysize0;
3852 YYSIZE_T yysize1;
3853 int yysize_overflow = 0;
3854 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3855 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3856 int yyx;
3857
3858# if 0
3859 /* This is so xgettext sees the translatable formats that are
3860 constructed on the fly. */
3861 YY_("syntax error, unexpected %s");
3862 YY_("syntax error, unexpected %s, expecting %s");
3863 YY_("syntax error, unexpected %s, expecting %s or %s");
3864 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
3865 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
368f75ae 3866# endif
08cf8642 3867 char *yyfmt;
3868 char const *yyf;
3869 static char const yyunexpected[] = "syntax error, unexpected %s";
3870 static char const yyexpecting[] = ", expecting %s";
3871 static char const yyor[] = " or %s";
3872 char yyformat[sizeof yyunexpected
3873 + sizeof yyexpecting - 1
3874 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
3875 * (sizeof yyor - 1))];
3876 char const *yyprefix = yyexpecting;
3877
3878 /* Start YYX at -YYN if negative to avoid negative indexes in
3879 YYCHECK. */
3880 int yyxbegin = yyn < 0 ? -yyn : 0;
3881
3882 /* Stay within bounds of both yycheck and yytname. */
3883 int yychecklim = YYLAST - yyn + 1;
3884 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3885 int yycount = 1;
3886
3887 yyarg[0] = yytname[yytype];
3888 yyfmt = yystpcpy (yyformat, yyunexpected);
3889
3890 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3891 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
3892 {
3893 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3894 {
3895 yycount = 1;
3896 yysize = yysize0;
3897 yyformat[sizeof yyunexpected - 1] = '\0';
3898 break;
3899 }
3900 yyarg[yycount++] = yytname[yyx];
3901 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
3902 yysize_overflow |= (yysize1 < yysize);
3903 yysize = yysize1;
3904 yyfmt = yystpcpy (yyfmt, yyprefix);
3905 yyprefix = yyor;
3906 }
3907
3908 yyf = YY_(yyformat);
3909 yysize1 = yysize + yystrlen (yyf);
3910 yysize_overflow |= (yysize1 < yysize);
3911 yysize = yysize1;
3912
3913 if (yysize_overflow)
3914 return YYSIZE_MAXIMUM;
3915
3916 if (yyresult)
3917 {
3918 /* Avoid sprintf, as that infringes on the user's name space.
3919 Don't have undefined behavior even if the translation
3920 produced a string with the wrong number of "%s"s. */
3921 char *yyp = yyresult;
3922 int yyi = 0;
3923 while ((*yyp = *yyf) != '\0')
3924 {
3925 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
3926 {
3927 yyp += yytnamerr (yyp, yyarg[yyi++]);
3928 yyf += 2;
3929 }
3930 else
3931 {
3932 yyp++;
3933 yyf++;
3934 }
3935 }
3936 }
3937 return yysize;
3938 }
3939}
3940#endif /* YYERROR_VERBOSE */
3941\f
3942
3943/*-----------------------------------------------.
3944| Release the memory associated to this symbol. |
3945`-----------------------------------------------*/
3946
3947/*ARGSUSED*/
3948#if (defined __STDC__ || defined __C99__FUNC__ \
3949 || defined __cplusplus || defined _MSC_VER)
3950static void
3951yydestruct (const char *yymsg, int yytype, cgrammar_YYSTYPE *yyvaluep)
3952#else
3953static void
3954yydestruct (yymsg, yytype, yyvaluep)
3955 const char *yymsg;
3956 int yytype;
3957 cgrammar_YYSTYPE *yyvaluep;
8f58355a 3958#endif
08cf8642 3959{
3960 YYUSE (yyvaluep);
8f58355a 3961
08cf8642 3962 if (!yymsg)
3963 yymsg = "Deleting";
3964 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
3965
3966 switch (yytype)
3967 {
8f58355a 3968
08cf8642 3969 default:
3970 break;
3971 }
3972}
3973\f
3974
3975/* Prevent warnings from -Wmissing-prototypes. */
3976
3977#ifdef YYPARSE_PARAM
3978#if defined __STDC__ || defined __cplusplus
3979int yyparse (void *YYPARSE_PARAM);
3980#else
3981int yyparse ();
3982#endif
3983#else /* ! YYPARSE_PARAM */
3984#if defined __STDC__ || defined __cplusplus
3985int yyparse (void);
368f75ae 3986#else
08cf8642 3987int yyparse ();
368f75ae 3988#endif
08cf8642 3989#endif /* ! YYPARSE_PARAM */
3990
3991
3992
3993/* The look-ahead symbol. */
3994int yychar;
8f58355a 3995
08cf8642 3996/* The semantic value of the look-ahead symbol. */
3997cgrammar_YYSTYPE yylval;
3998
3999/* Number of syntax errors so far. */
4000int yynerrs;
8f58355a 4001
8f58355a 4002
8f58355a 4003
08cf8642 4004/*----------.
4005| yyparse. |
4006`----------*/
4007
4008#ifdef YYPARSE_PARAM
4009#if (defined __STDC__ || defined __C99__FUNC__ \
4010 || defined __cplusplus || defined _MSC_VER)
368f75ae 4011int
08cf8642 4012yyparse (void *YYPARSE_PARAM)
4013#else
4014int
4015yyparse (YYPARSE_PARAM)
4016 void *YYPARSE_PARAM;
4017#endif
4018#else /* ! YYPARSE_PARAM */
4019#if (defined __STDC__ || defined __C99__FUNC__ \
4020 || defined __cplusplus || defined _MSC_VER)
4021int
4022yyparse (void)
4023#else
4024int
4025yyparse ()
8f58355a 4026
08cf8642 4027#endif
4028#endif
4029{
4030
4031 int yystate;
4032 int yyn;
d0b80d80 4033 int yyresult;
4034 /* Number of tokens to shift before error messages enabled. */
4035 int yyerrstatus;
08cf8642 4036 /* Look-ahead token as an internal (translated) token number. */
4037 int yytoken = 0;
4038#if YYERROR_VERBOSE
4039 /* Buffer for error messages, and its allocated size. */
4040 char yymsgbuf[128];
4041 char *yymsg = yymsgbuf;
4042 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
4043#endif
d0b80d80 4044
4045 /* Three stacks and their tools:
4046 `yyss': related to states,
4047 `yyvs': related to semantic values,
4048 `yyls': related to locations.
4049
4050 Refer to the stacks thru separate pointers, to allow yyoverflow
4051 to reallocate them elsewhere. */
4052
08cf8642 4053 /* The state stack. */
4054 yytype_int16 yyssa[YYINITDEPTH];
4055 yytype_int16 *yyss = yyssa;
4056 yytype_int16 *yyssp;
d0b80d80 4057
4058 /* The semantic value stack. */
4059 cgrammar_YYSTYPE yyvsa[YYINITDEPTH];
4060 cgrammar_YYSTYPE *yyvs = yyvsa;
08cf8642 4061 cgrammar_YYSTYPE *yyvsp;
d0b80d80 4062
d0b80d80 4063
d0b80d80 4064
08cf8642 4065#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
d0b80d80 4066
08cf8642 4067 YYSIZE_T yystacksize = YYINITDEPTH;
368f75ae 4068
d0b80d80 4069 /* The variables used to return semantic value and location from the
4070 action routines. */
4071 cgrammar_YYSTYPE yyval;
d0b80d80 4072
08cf8642 4073
4074 /* The number of symbols on the RHS of the reduced rule.
4075 Keep to zero when no symbol should be popped. */
4076 int yylen = 0;
d0b80d80 4077
4078 YYDPRINTF ((stderr, "Starting parse\n"));
4079
4080 yystate = 0;
4081 yyerrstatus = 0;
4082 yynerrs = 0;
4083 yychar = YYEMPTY; /* Cause a token to be read. */
4084
4085 /* Initialize stack pointers.
4086 Waste one element of value and location stack
4087 so that they stay on the same level as the state stack.
4088 The wasted elements are never initialized. */
4089
4090 yyssp = yyss;
4091 yyvsp = yyvs;
08cf8642 4092
d0b80d80 4093 goto yysetstate;
4094
4095/*------------------------------------------------------------.
4096| yynewstate -- Push a new state, which is found in yystate. |
4097`------------------------------------------------------------*/
4098 yynewstate:
4099 /* In all cases, when you get here, the value and location stacks
08cf8642 4100 have just been pushed. So pushing a state here evens the stacks. */
d0b80d80 4101 yyssp++;
4102
4103 yysetstate:
4104 *yyssp = yystate;
4105
08cf8642 4106 if (yyss + yystacksize - 1 <= yyssp)
d0b80d80 4107 {
4108 /* Get the current used size of the three stacks, in elements. */
4109 YYSIZE_T yysize = yyssp - yyss + 1;
4110
4111#ifdef yyoverflow
4112 {
08cf8642 4113 /* Give user a chance to reallocate the stack. Use copies of
d0b80d80 4114 these so that the &'s don't force the real ones into
4115 memory. */
4116 cgrammar_YYSTYPE *yyvs1 = yyvs;
08cf8642 4117 yytype_int16 *yyss1 = yyss;
4118
d0b80d80 4119
4120 /* Each stack pointer address is followed by the size of the
08cf8642 4121 data in use in that stack, in bytes. This used to be a
4122 conditional around just the two extra args, but that might
4123 be undefined if yyoverflow is a macro. */
4124 yyoverflow (YY_("memory exhausted"),
368f75ae 4125 &yyss1, yysize * sizeof (*yyssp),
4126 &yyvs1, yysize * sizeof (*yyvsp),
08cf8642 4127
368f75ae 4128 &yystacksize);
08cf8642 4129
d0b80d80 4130 yyss = yyss1;
4131 yyvs = yyvs1;
4132 }
4133#else /* no yyoverflow */
4134# ifndef YYSTACK_RELOCATE
08cf8642 4135 goto yyexhaustedlab;
d0b80d80 4136# else
4137 /* Extend the stack our own way. */
08cf8642 4138 if (YYMAXDEPTH <= yystacksize)
4139 goto yyexhaustedlab;
d0b80d80 4140 yystacksize *= 2;
08cf8642 4141 if (YYMAXDEPTH < yystacksize)
d0b80d80 4142 yystacksize = YYMAXDEPTH;
4143
4144 {
08cf8642 4145 yytype_int16 *yyss1 = yyss;
d0b80d80 4146 union yyalloc *yyptr =
4147 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
4148 if (! yyptr)
08cf8642 4149 goto yyexhaustedlab;
d0b80d80 4150 YYSTACK_RELOCATE (yyss);
4151 YYSTACK_RELOCATE (yyvs);
08cf8642 4152
4153# undef YYSTACK_RELOCATE
d0b80d80 4154 if (yyss1 != yyssa)
4155 YYSTACK_FREE (yyss1);
4156 }
4157# endif
4158#endif /* no yyoverflow */
4159
4160 yyssp = yyss + yysize - 1;
4161 yyvsp = yyvs + yysize - 1;
08cf8642 4162
d0b80d80 4163
4164 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
4165 (unsigned long int) yystacksize));
4166
08cf8642 4167 if (yyss + yystacksize - 1 <= yyssp)
d0b80d80 4168 YYABORT;
4169 }
4170
4171 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
4172
4173 goto yybackup;
4174
d0b80d80 4175/*-----------.
4176| yybackup. |
4177`-----------*/
4178yybackup:
4179
08cf8642 4180 /* Do appropriate processing given the current state. Read a
4181 look-ahead token if we need one and don't already have one. */
d0b80d80 4182
08cf8642 4183 /* First try to decide what to do without reference to look-ahead token. */
d0b80d80 4184 yyn = yypact[yystate];
08cf8642 4185 if (yyn == YYPACT_NINF)
d0b80d80 4186 goto yydefault;
4187
08cf8642 4188 /* Not known => get a look-ahead token if don't already have one. */
368f75ae 4189
08cf8642 4190 /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
d0b80d80 4191 if (yychar == YYEMPTY)
4192 {
4193 YYDPRINTF ((stderr, "Reading a token: "));
4194 yychar = YYLEX;
4195 }
4196
08cf8642 4197 if (yychar <= YYEOF)
d0b80d80 4198 {
08cf8642 4199 yychar = yytoken = YYEOF;
d0b80d80 4200 YYDPRINTF ((stderr, "Now at end of input.\n"));
4201 }
4202 else
4203 {
08cf8642 4204 yytoken = YYTRANSLATE (yychar);
4205 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
d0b80d80 4206 }
4207
08cf8642 4208 /* If the proper action on seeing token YYTOKEN is to reduce or to
4209 detect an error, take that action. */
4210 yyn += yytoken;
4211 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
d0b80d80 4212 goto yydefault;
d0b80d80 4213 yyn = yytable[yyn];
08cf8642 4214 if (yyn <= 0)
d0b80d80 4215 {
08cf8642 4216 if (yyn == 0 || yyn == YYTABLE_NINF)
d0b80d80 4217 goto yyerrlab;
4218 yyn = -yyn;
4219 goto yyreduce;
4220 }
d0b80d80 4221
4222 if (yyn == YYFINAL)
4223 YYACCEPT;
4224
d0b80d80 4225 /* Count tokens shifted since error; after three, turn off error
4226 status. */
4227 if (yyerrstatus)
4228 yyerrstatus--;
4229
08cf8642 4230 /* Shift the look-ahead token. */
4231 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
4232
4233 /* Discard the shifted token unless it is eof. */
4234 if (yychar != YYEOF)
4235 yychar = YYEMPTY;
4236
d0b80d80 4237 yystate = yyn;
08cf8642 4238 *++yyvsp = yylval;
4239
d0b80d80 4240 goto yynewstate;
4241
4242
4243/*-----------------------------------------------------------.
4244| yydefault -- do the default action for the current state. |
4245`-----------------------------------------------------------*/
4246yydefault:
4247 yyn = yydefact[yystate];
4248 if (yyn == 0)
4249 goto yyerrlab;
4250 goto yyreduce;
4251
4252
4253/*-----------------------------.
4254| yyreduce -- Do a reduction. |
4255`-----------------------------*/
4256yyreduce:
4257 /* yyn is the number of a rule to reduce with. */
4258 yylen = yyr2[yyn];
4259
4260 /* If YYLEN is nonzero, implement the default value of the action:
4261 `$$ = $1'.
4262
08cf8642 4263 Otherwise, the following line sets YYVAL to garbage.
4264 This behavior is undocumented and Bison
d0b80d80 4265 users should not rely upon it. Assigning to YYVAL
4266 unconditionally makes the parser a bit smaller, and it avoids a
4267 GCC warning that YYVAL may be used uninitialized. */
4268 yyval = yyvsp[1-yylen];
4269
d0b80d80 4270
08cf8642 4271 YY_REDUCE_PRINT (yyn);
4272 switch (yyn)
d0b80d80 4273 {
08cf8642 4274 case 4:
8f58355a 4275
08cf8642 4276 { context_checkGlobalScope (); ;}
4277 break;
8f58355a 4278
08cf8642 4279 case 5:
4280
4281 { context_checkGlobalScope (); ;}
4282 break;
4283
4284 case 6:
4285
4286 { uentry_clearDecl (); ;}
4287 break;
4288
4289 case 7:
4290
4291 { uentry_clearDecl (); ;}
4292 break;
4293
4294 case 8:
4295
4296 { uentry_clearDecl (); ;}
4297 break;
4298
4299 case 9:
4300
4301 { uentry_clearDecl (); ;}
4302 break;
4303
4304 case 10:
4305
4306 { uentry_clearDecl (); ;}
4307 break;
4308
4309 case 11:
4310
4311 { uentry_checkDecl (); exprNode_free ((yyvsp[(1) - (1)].expr)); ;}
4312 break;
4313
4314 case 12:
4315
4316 { uentry_clearDecl (); lltok_free ((yyvsp[(1) - (1)].tok)); /* evans 2002-02-08: okay to have a null statement */ ;}
4317 break;
4318
4319 case 13:
4320
4321 { uentry_clearDecl (); ;}
4322 break;
4323
4324 case 14:
4325
4326 { checkConstant ((yyvsp[(2) - (8)].qtyp), (yyvsp[(4) - (8)].ntyp)); lltok_free2 ((yyvsp[(1) - (8)].tok), (yyvsp[(8) - (8)].tok)); ;}
4327 break;
4328
4329 case 15:
4330
4331 { checkValueConstant ((yyvsp[(2) - (11)].qtyp), (yyvsp[(4) - (11)].ntyp), (yyvsp[(8) - (11)].expr)); lltok_free3 ((yyvsp[(1) - (11)].tok), (yyvsp[(6) - (11)].tok), (yyvsp[(11) - (11)].tok)); ;}
4332 break;
4333
4334 case 16:
4335
4336 { context_enterFunctionHeader (); ;}
4337 break;
4338
4339 case 17:
4340
4341 {
4342 declareStaticFunction ((yyvsp[(3) - (5)].ntyp)); context_quietExitFunction ();
4343 context_exitFunctionHeader ();
4344 lltok_free2 ((yyvsp[(1) - (5)].tok), (yyvsp[(5) - (5)].tok)); /*!*/
4345 ;}
4346 break;
4347
4348 case 18:
4349
4350 {
4351 qtype qint = qtype_create (ctype_int);
4352 (yyval.ntyp) = idDecl_fixBase ((yyvsp[(1) - (1)].ntyp), qint);
4353 qtype_free (qint);
4354 ;}
4355 break;
4356
4357 case 19:
4358
4359 { (yyval.ntyp) = idDecl_fixBase ((yyvsp[(3) - (3)].ntyp), (yyvsp[(1) - (3)].qtyp)); ;}
4360 break;
4361
4362 case 21:
4363
4364 { (yyval.ntyp) = (yyvsp[(2) - (2)].ntyp); qtype_adjustPointers ((yyvsp[(1) - (2)].pointers), idDecl_getTyp ((yyval.ntyp))); ;}
4365 break;
4366
4367 case 22:
4368
4369 { (yyval.ntyp) = idDecl_create ((yyvsp[(1) - (1)].cname), qtype_unknown ()); ;}
4370 break;
4371
4372 case 23:
4373
4374 { (yyval.ntyp) = idDecl_expectFunction ((yyvsp[(4) - (6)].ntyp)); lltok_free2 ((yyvsp[(2) - (6)].tok), (yyvsp[(6) - (6)].tok)); ;}
4375 break;
4376
4377 case 24:
4378
4379 { (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (3)].ntyp), ctype_makeInnerArray (idDecl_getCtype ((yyvsp[(1) - (3)].ntyp)))); lltok_free2 ((yyvsp[(2) - (3)].tok), (yyvsp[(3) - (3)].tok)); ;}
4380 break;
4381
4382 case 25:
4383
4384 {
4385 exprNode_findValue ((yyvsp[(4) - (6)].expr));
4386 idDecl_notExpectingFunction ((yyvsp[(1) - (6)].ntyp));
4387
4388 if (exprNode_hasValue ((yyvsp[(4) - (6)].expr)))
4389 {
4390 (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (6)].ntyp), ctype_makeInnerFixedArray (idDecl_getCtype ((yyvsp[(1) - (6)].ntyp)),
4391 exprNode_getLongValue ((yyvsp[(4) - (6)].expr))));
4392 }
4393 else
4394 {
4395 (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (6)].ntyp), ctype_makeInnerArray (idDecl_getCtype ((yyvsp[(1) - (6)].ntyp))));
4396 }
4397
4398 lltok_free2 ((yyvsp[(2) - (6)].tok), (yyvsp[(5) - (6)].tok));
4399 ;}
4400 break;
4401
4402 case 26:
4403
4404 { setCurrentParams (uentryList_missingParams); ;}
4405 break;
4406
4407 case 27:
4408
4409 { /* need to support globals and modifies here! */
4410 functionClauseList fcl;
4411 ctype ct = ctype_makeFunction (idDecl_getCtype ((yyvsp[(1) - (6)].ntyp)),
4412 uentryList_makeMissingParams ());
4413
4414 (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (6)].ntyp), ct);
4415
4416 /*drl 7/25/01 added*/
4417 setImplicitfcnConstraints();
4418
4419 DPRINTF((message("namedDeclBase PushType TLPAREN TRPAREN...:\n adding implict constraints to functionClause List: %s",
4420 functionClauseList_unparse((yyvsp[(6) - (6)].funcclauselist))
4421 )
4422 ));
4423
4424 fcl = functionClauseList_setImplicitConstraints((yyvsp[(6) - (6)].funcclauselist));
4425
4426 idDecl_addClauses ((yyval.ntyp), fcl);
4427
4428 DPRINTF((message("1 added fuctionClause List: %s to the Id",
4429 functionClauseList_unparse(fcl)
4430 )
4431 ));
4432
4433
4434 context_popLoc ();
4435 lltok_free2 ((yyvsp[(3) - (6)].tok), (yyvsp[(4) - (6)].tok));
4436 ;}
4437 break;
4438
4439 case 28:
4440
4441 { setCurrentParams ((yyvsp[(4) - (5)].entrylist)); ;}
4442 break;
4443
4444 case 29:
4445
4446 {
4447 functionClauseList fcl;
4448 setImplicitfcnConstraints ();
4449 clearCurrentParams ();
4450 (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (7)].ntyp), ctype_makeFunction (idDecl_getCtype ((yyvsp[(1) - (7)].ntyp)), (yyvsp[(4) - (7)].entrylist)));
4451
4452 DPRINTF((message("namedDeclBase PushType TLPAREN genericParamList TRPAREN...:\n adding implict constraints to functionClause List: %s",
4453 functionClauseList_unparse((yyvsp[(7) - (7)].funcclauselist))
4454 )
4455 )) ;
4456
4457 fcl = functionClauseList_setImplicitConstraints((yyvsp[(7) - (7)].funcclauselist));
4458
4459 idDecl_addClauses ((yyval.ntyp), fcl);
4460
4461 DPRINTF((message("added fuctionClause List: %s to the Id",
4462 functionClauseList_unparse(fcl)
4463 )
4464 ));
4465
4466
4467 context_popLoc ();
4468 lltok_free2 ((yyvsp[(3) - (7)].tok), (yyvsp[(5) - (7)].tok));
4469 ;}
4470 break;
4471
4472 case 30:
4473
4474 { (yyval.ntyp) = idDecl_create ((yyvsp[(1) - (1)].cname), qtype_unknown ()); ;}
4475 break;
4476
4477 case 31:
4478
4479 { (yyval.ntyp) = idDecl_expectFunction ((yyvsp[(4) - (6)].ntyp)); lltok_free2 ((yyvsp[(2) - (6)].tok), (yyvsp[(6) - (6)].tok)); ;}
4480 break;
4481
4482 case 32:
4483
4484 { (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (3)].ntyp), ctype_makeInnerArray (idDecl_getCtype ((yyvsp[(1) - (3)].ntyp))));
4485 lltok_free2 ((yyvsp[(2) - (3)].tok), (yyvsp[(3) - (3)].tok));
4486 ;}
4487 break;
4488
4489 case 33:
4490
4491 {
4492 int value;
4493
4494 if (exprNode_hasValue ((yyvsp[(4) - (6)].expr))
4495 && multiVal_isInt (exprNode_getValue ((yyvsp[(4) - (6)].expr))))
4496 {
4497 value = (int) multiVal_forceInt (exprNode_getValue ((yyvsp[(4) - (6)].expr)));
4498 }
4499 else
4500 {
4501 value = 0;
4502 }
4503
4504 (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (6)].ntyp), ctype_makeInnerFixedArray (idDecl_getCtype ((yyvsp[(1) - (6)].ntyp)), value));
4505 lltok_free2 ((yyvsp[(2) - (6)].tok), (yyvsp[(5) - (6)].tok));
4506 ;}
4507 break;
4508
4509 case 34:
4510
4511 { setCurrentParams (uentryList_missingParams); ;}
4512 break;
4513
4514 case 35:
4515
4516 {
4517 ctype ct = ctype_makeFunction (idDecl_getCtype ((yyvsp[(1) - (6)].ntyp)),
4518 uentryList_makeMissingParams ());
4519
4520 (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (6)].ntyp), ct);
4521 idDecl_addClauses ((yyval.ntyp), (yyvsp[(6) - (6)].funcclauselist));
4522 context_popLoc ();
4523 lltok_free2 ((yyvsp[(3) - (6)].tok), (yyvsp[(4) - (6)].tok));
4524 ;}
4525 break;
4526
4527 case 36:
4528
4529 { setCurrentParams ((yyvsp[(4) - (5)].entrylist)); ;}
4530 break;
4531
4532 case 37:
4533
4534 {
4535 clearCurrentParams ();
4536 (yyval.ntyp) = idDecl_replaceCtype ((yyvsp[(1) - (7)].ntyp), ctype_makeFunction (idDecl_getCtype ((yyvsp[(1) - (7)].ntyp)), (yyvsp[(4) - (7)].entrylist)));
4537 idDecl_addClauses ((yyval.ntyp), (yyvsp[(7) - (7)].funcclauselist));
4538 context_popLoc ();
4539 lltok_free ((yyvsp[(3) - (7)].tok));
4540 /*!! lltok_free2 ($3, $5); */
4541 ;}
4542 break;
4543
4544 case 38:
4545
4546 { setCurrentParams ((yyvsp[(4) - (5)].entrylist)); ;}
4547 break;
4548
4549 case 39:
4550
4551 { clearCurrentParams (); ;}
4552 break;
4553
4554 case 40:
4555
4556 { declareCIter ((yyvsp[(2) - (10)].cname), (yyvsp[(4) - (10)].entrylist));
4557 lltok_free3 ((yyvsp[(1) - (10)].tok), (yyvsp[(3) - (10)].tok), (yyvsp[(5) - (10)].tok));
4558 ;}
4559 break;
4560
4561 case 41:
4562
4563 { exprNode_checkMacroBody ((yyvsp[(2) - (3)].expr)); lltok_free2 ((yyvsp[(1) - (3)].tok), (yyvsp[(3) - (3)].tok)); ;}
4564 break;
4565
4566 case 42:
4567
4568 { exprNode_checkIterBody ((yyvsp[(2) - (3)].expr)); lltok_free2 ((yyvsp[(1) - (3)].tok), (yyvsp[(3) - (3)].tok)); ;}
4569 break;
4570
4571 case 43:
4572
4573 { exprNode_checkIterEnd ((yyvsp[(2) - (3)].expr)); lltok_free2 ((yyvsp[(1) - (3)].tok), (yyvsp[(3) - (3)].tok));;}
4574 break;
4575
4576 case 44:
4577
4578 { exprChecks_checkEmptyMacroBody (); lltok_free2 ((yyvsp[(1) - (2)].tok), (yyvsp[(2) - (2)].tok)); ;}
4579 break;
4580
4581 case 45:
4582
4583 { clabstract_declareFunction ((yyvsp[(1) - (1)].ntyp)); ;}
4584 break;
4585
4586 case 46:
4587
4588 { (yyval.msconstraint) = metaStateConstraint_create ((yyvsp[(1) - (3)].msspec), (yyvsp[(3) - (3)].msexpr)); lltok_free ((yyvsp[(2) - (3)].tok)); ;}
4589 break;
4590
4591 case 47:
4592
4593 { cscannerHelp_expectingMetaStateName (); ;}
4594 break;
4595
4596 case 48:
4597
4598 { cscannerHelp_clearExpectingMetaStateName ();
4599 (yyval.msspec) = metaStateSpecifier_create ((yyvsp[(1) - (4)].sr), (yyvsp[(4) - (4)].msinfo));
4600 lltok_free ((yyvsp[(3) - (4)].tok));
4601 ;}
4602 break;
4603
4604 case 49:
4605
4606 { cscannerHelp_expectingMetaStateName (); ;}
4607 break;
4608
4609 case 50:
4610
4611 { cscannerHelp_clearExpectingMetaStateName ();
4612 (yyval.msspec) = metaStateSpecifier_createElipsis ((yyvsp[(4) - (4)].msinfo));
4613 lltok_free2 ((yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].tok));
4614 ;}
4615 break;
4616
4617 case 51:
4618
4619 { (yyval.msexpr) = metaStateExpression_create ((yyvsp[(1) - (1)].msspec)); ;}
4620 break;
4621
4622 case 52:
4623
4624 { (yyval.msexpr) = metaStateExpression_createMerge ((yyvsp[(1) - (3)].msspec), (yyvsp[(3) - (3)].msexpr)); lltok_free ((yyvsp[(2) - (3)].tok)); ;}
4625 break;
4626
4627 case 56:
4628
4629 { (yyval.conL) = constraintList_add ((yyvsp[(3) - (3)].conL), (yyvsp[(1) - (3)].con)); ;}
4630 break;
4631
4632 case 57:
4633
4634 { (yyval.conL) = constraintList_single ((yyvsp[(1) - (1)].con)); ;}
4635 break;
4636
4637 case 58:
4638
4639 {
4640 (yyval.con) = makeConstraintParse3 ((yyvsp[(1) - (3)].conE), (yyvsp[(2) - (3)].tok), (yyvsp[(3) - (3)].conE));
4641 DPRINTF(("Done BufConstraint1\n")); ;}
4642 break;
4643
4644 case 65:
4645
4646 {(yyval.conE) = constraintExpr_parseMakeUnaryOp ((yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].conE)); DPRINTF( ("Got BufConstraintExpr UNary Op ") ); ;}
4647 break;
4648
4649 case 66:
4650
4651 {
4652 DPRINTF( ("Got BufConstraintExpr BINary Op ") );
4653 (yyval.conE) = constraintExpr_parseMakeBinaryOp ((yyvsp[(2) - (5)].conE), (yyvsp[(3) - (5)].tok), (yyvsp[(4) - (5)].conE)); ;}
4654 break;
4655
4656 case 67:
4657
4658 { (yyval.conE) = constraintExpr_makeTermsRef ((yyvsp[(1) - (1)].sr));;}
4659 break;
4660
4661 case 68:
4662
4663 { (yyval.conE) = constraintExpr_makeIntLiteral (exprNode_getLongValue ((yyvsp[(1) - (1)].expr))); ;}
4664 break;
4665
4666 case 69:
4667
4668 { /*@-onlytrans@*/ (yyval.sr) = checkbufferConstraintClausesId ((yyvsp[(1) - (1)].entry)); /*@=onlytrans@*/ /*@i523@*/ ;}
4669 break;
4670
4671 case 70:
4672
4673 { (yyval.sr) = fixStateClausesId ((yyvsp[(1) - (1)].cname)); ;}
4674 break;
4675
4676 case 71:
4677
4678 { (yyval.sr) = sRef_makeAnyArrayFetch ((yyvsp[(1) - (3)].sr)); ;}
4679 break;
4680
4681 case 72:
4682
4683 {
4684 /*
4685 char *t; int c;
4686 t = cstring_toCharsSafe (exprNode_unparse($3));
4687 c = atoi( t );
4688 */
4689 (yyval.sr) = sRef_makeArrayFetchKnown ((yyvsp[(1) - (4)].sr), exprNode_getLongValue ((yyvsp[(3) - (4)].expr)));
4690 ;}
4691 break;
4692
4693 case 73:
4694
4695 { (yyval.sr) = sRef_constructPointer ((yyvsp[(2) - (2)].sr)); ;}
4696 break;
4697
4698 case 74:
4699
4700 { (yyval.sr) = (yyvsp[(2) - (3)].sr); ;}
4701 break;
4702
4703 case 75:
4704
4705 { cstring_markOwned ((yyvsp[(3) - (3)].cname)); (yyval.sr) = sRef_buildField ((yyvsp[(1) - (3)].sr), (yyvsp[(3) - (3)].cname)); ;}
4706 break;
4707
4708 case 76:
4709
4710 { cstring_markOwned ((yyvsp[(3) - (3)].cname)); (yyval.sr) = sRef_makeArrow ((yyvsp[(1) - (3)].sr), (yyvsp[(3) - (3)].cname)); ;}
4711 break;
4712
4713 case 80:
4714
4715 { (yyval.funcclauselist) = functionClauseList_new (); ;}
4716 break;
4717
4718 case 81:
4719
4720 { (yyval.funcclauselist) = functionClauseList_prepend ((yyvsp[(2) - (2)].funcclauselist), (yyvsp[(1) - (2)].funcclause)); ;}
4721 break;
4722
4723 case 82:
4724
4725 { (yyval.funcclauselist) = functionClauseList_new (); ;}
4726 break;
4727
4728 case 83:
4729
4730 { (yyval.funcclauselist) = functionClauseList_prepend ((yyvsp[(2) - (2)].funcclauselist), (yyvsp[(1) - (2)].funcclause)); ;}
4731 break;
4732
4733 case 84:
4734
4735 { (yyval.funcclause) = functionClause_createGlobals ((yyvsp[(1) - (1)].globsclause)); ;}
4736 break;
4737
4738 case 85:
4739
4740 { (yyval.funcclause) = functionClause_createModifies ((yyvsp[(1) - (1)].modsclause)); ;}
4741 break;
4742
4743 case 86:
4744
4745 { (yyval.funcclause) = functionClause_createModifies ((yyvsp[(1) - (1)].modsclause)); ;}
4746 break;
4747
4748 case 87:
4749
4750 { (yyval.funcclause) = functionClause_createState ((yyvsp[(1) - (1)].stateclause)); ;}
4751 break;
4752
4753 case 88:
4754
4755 { (yyval.funcclause) = (yyvsp[(1) - (1)].funcclause); ;}
4756 break;
4757
4758 case 89:
4759
4760 { (yyval.funcclause) = functionClause_createWarn ((yyvsp[(1) - (1)].warnclause)); ;}
4761 break;
4762
4763 case 90:
4764
4765 { (yyval.funcclause) = functionClause_createGlobals ((yyvsp[(1) - (1)].globsclause)); ;}
4766 break;
4767
4768 case 91:
4769
4770 { (yyval.funcclause) = functionClause_createModifies ((yyvsp[(1) - (1)].modsclause)); ;}
4771 break;
4772
4773 case 92:
4774
4775 { (yyval.funcclause) = functionClause_createModifies ((yyvsp[(1) - (1)].modsclause)); ;}
4776 break;
4777
4778 case 93:
4779
4780 { (yyval.funcclause) = functionClause_createState ((yyvsp[(1) - (1)].stateclause)); ;}
4781 break;
4782
4783 case 94:
4784
4785 { (yyval.funcclause) = (yyvsp[(1) - (1)].funcclause); ;}
4786 break;
4787
4788 case 95:
4789
4790 { (yyval.funcclause) = functionClause_createWarn ((yyvsp[(1) - (1)].warnclause)); ;}
4791 break;
4792
4793 case 96:
4794
4795 { (yyval.globsclause) = (yyvsp[(1) - (2)].globsclause); ;}
4796 break;
4797
4798 case 97:
4799
4800 { setProcessingGlobalsList (); ;}
4801 break;
4802
4803 case 98:
4804
4805 {
4806 unsetProcessingGlobals ();
4807 (yyval.globsclause) = globalsClause_create ((yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].globset));
4808 ;}
4809 break;
4810
4811 case 99:
4812
4813 { (yyval.modsclause) = modifiesClause_createNoMods ((yyvsp[(1) - (1)].tok)); ;}
4814 break;
4815
4816 case 100:
4817
4818 { (yyval.modsclause) = (yyvsp[(1) - (2)].modsclause); ;}
4819 break;
4820
4821 case 101:
4822
4823 {
4824 context_setProtectVars (); enterParamsTemp ();
4825 sRef_setGlobalScopeSafe ();
4826 ;}
4827 break;
4828
4829 case 102:
4830
4831 {
4832 exitParamsTemp ();
4833 sRef_clearGlobalScopeSafe ();
4834 context_releaseVars ();
4835 (yyval.modsclause) = modifiesClause_create ((yyvsp[(1) - (3)].tok), (yyvsp[(3) - (3)].srset));
4836 ;}
4837 break;
4838
4839 case 103:
4840
4841 { (yyval.flagspec) = flagSpec_createPlain ((yyvsp[(1) - (1)].cname)); ;}
4842 break;
4843
4844 case 104:
4845
4846 { (yyval.flagspec) = flagSpec_createOr ((yyvsp[(1) - (3)].cname), (yyvsp[(3) - (3)].flagspec)); ;}
4847 break;
4848
4849 case 107:
4850
4851 { (yyval.warnclause) = warnClause_undefined; ;}
4852 break;
4853
4854 case 108:
4855
4856 { (yyval.warnclause) = (yyvsp[(1) - (2)].warnclause); ;}
4857 break;
4858
4859 case 109:
4860
4861 {
4862 llassert (exprNode_knownStringValue ((yyvsp[(3) - (3)].expr)));
4863 (yyval.warnclause) = warnClause_create ((yyvsp[(1) - (3)].tok), (yyvsp[(2) - (3)].flagspec), cstring_copy (multiVal_forceString (exprNode_getValue ((yyvsp[(3) - (3)].expr)))));
4864 exprNode_free ((yyvsp[(3) - (3)].expr));
4865 ;}
4866 break;
4867
4868 case 110:
4869
4870 { (yyval.warnclause) = warnClause_create ((yyvsp[(1) - (2)].tok), (yyvsp[(2) - (2)].flagspec), cstring_undefined); ;}
4871 break;
4872
4873 case 111:
4874
4875 { (yyval.globset) = globSet_single ((yyvsp[(1) - (1)].sr)); ;}
4876 break;
4877
4878 case 112:
4879
4880 { (yyval.globset) = globSet_insert ((yyvsp[(1) - (3)].globset), (yyvsp[(3) - (3)].sr)); ;}
4881 break;
4882
4883 case 113:
4884
4885 { (yyval.sr) = clabstract_createGlobal ((yyvsp[(2) - (2)].sr), (yyvsp[(1) - (2)].tquallist)); ;}
4886 break;
4887
4888 case 114:
4889
4890 { (yyval.tquallist) = qualList_undefined; ;}
4891 break;
4892
4893 case 115:
4894
4895 { (yyval.tquallist) = qualList_add ((yyvsp[(2) - (2)].tquallist), (yyvsp[(1) - (2)].typequal)); ;}
4896 break;
4897
4898 case 116:
4899
4900 { (yyval.sr) = uentry_getSref ((yyvsp[(1) - (1)].entry)); ;}
4901 break;
4902
4903 case 117:
4904
4905 { (yyval.sr) = clabstract_unrecognizedGlobal ((yyvsp[(1) - (1)].cname)); ;}
4906 break;
4907
4908 case 118:
4909
4910 { (yyval.sr) = clabstract_checkGlobal ((yyvsp[(1) - (1)].expr)); ;}
4911 break;
4912
4913 case 119:
4914
4915 { (yyval.typequal) = qual_createUndef (); ;}
4916 break;
4917
4918 case 120:
4919
4920 { (yyval.typequal) = qual_createKilled (); ;}
4921 break;
4922
4923 case 121:
4924
4925 { (yyval.typequal) = qual_createOut (); ;}
4926 break;
4927
4928 case 122:
4929
4930 { (yyval.typequal) = qual_createIn (); ;}
4931 break;
4932
4933 case 123:
4934
4935 { (yyval.typequal) = qual_createPartial (); ;}
4936 break;
4937
4938 case 131:
4939
4940 {
4941 /**!!! deal with fred; fred (int); declarations! **/
4942 qtype qint = qtype_create (ctype_int);
4943 (yyval.ntyp) = idDecl_fixBase ((yyvsp[(1) - (1)].ntyp), qint);
4944 qtype_free (qint);
4945 ;}
4946 break;
4947
4948 case 132:
4949
4950 { (yyval.ntyp) = idDecl_fixBase ((yyvsp[(3) - (3)].ntyp), (yyvsp[(1) - (3)].qtyp)); ;}
4951 break;
4952
4953 case 133:
4954
4955 { checkDoneParams (); context_enterInnerContext (); ;}
4956 break;
4957
4958 case 134:
4959
4960 {
4961 exprNode_checkFunctionBody ((yyvsp[(3) - (3)].expr)); (yyval.expr) = (yyvsp[(3) - (3)].expr);
4962 context_exitInner ((yyvsp[(3) - (3)].expr));
4963 ;}
4964 break;
4965
4966 case 135:
4967
4968 { context_enterOldStyleScope (); ;}
4969 break;
4970
4971 case 136:
4972
4973 { oldStyleDoneParams (); context_enterInnerContext (); ;}
4974 break;
4975
4976 case 137:
4977
4978 {
4979 exprNode_checkFunctionBody ((yyvsp[(4) - (4)].expr));
4980 (yyval.expr) = (yyvsp[(4) - (4)].expr); /* oldstyle */
4981 context_exitInner ((yyvsp[(4) - (4)].expr));
4982 ;}
4983 break;
4984
4985 case 138:
4986
4987 {
4988 context_setFunctionDefined (exprNode_loc ((yyvsp[(2) - (2)].expr)));
4989 exprNode_checkFunction (context_getHeader (), (yyvsp[(2) - (2)].expr));
4990 /* DRL 8 8 2000 */
4991
4992 context_exitFunction ();
4993 ;}
4994 break;
4995
4996 case 139:
4997
4998 { (yyval.srset) = (yyvsp[(1) - (2)].srset); ;}
4999 break;
5000
5001 case 140:
5002
5003 { (yyval.srset) = sRefSet_new (); ;}
5004 break;
5005
5006 case 141:
5007
5008 { (yyval.sr) = uentry_getSref ((yyvsp[(1) - (1)].entry)); checkModifiesId ((yyvsp[(1) - (1)].entry)); ;}
5009 break;
5010
5011 case 142:
5012
5013 { (yyval.sr) = fixModifiesId ((yyvsp[(1) - (1)].cname)); ;}
5014 break;
5015
5016 case 143:
5017
5018 { (yyval.sr) = fixModifiesId ((yyvsp[(1) - (1)].cname)); ;}
5019 break;
5020
5021 case 144:
5022
5023 { (yyval.sr) = modListArrayFetch ((yyvsp[(1) - (3)].sr), sRef_undefined); ;}
5024 break;
5025
5026 case 145:
5027
5028 { (yyval.sr) = modListArrayFetch ((yyvsp[(1) - (4)].sr), (yyvsp[(3) - (4)].sr)); ;}
5029 break;
5030
5031 case 146:
5032
5033 { (yyval.sr) = modListPointer ((yyvsp[(2) - (2)].sr)); ;}
5034 break;
5035
5036 case 147:
5037
5038 { (yyval.sr) = (yyvsp[(2) - (3)].sr); ;}
5039 break;
5040
5041 case 148:
5042
5043 { (yyval.sr) = modListFieldAccess ((yyvsp[(1) - (3)].sr), (yyvsp[(3) - (3)].cname)); ;}
5044 break;
5045
5046 case 149:
5047
5048 { (yyval.sr) = modListArrowAccess ((yyvsp[(1) - (3)].sr), (yyvsp[(3) - (3)].cname)); ;}
5049 break;
5050
5051 case 150:
5052
5053 { (yyval.sr) = (yyvsp[(1) - (1)].sr); ;}
5054 break;
5055
5056 case 151:
5057
5058 { (yyval.sr) = sRef_makeUnknown (); /* sRef_makeConstant ($1); ? */ ;}
5059 break;
5060
5061 case 152:
5062
5063 { (yyval.srset) = sRefSet_single ((yyvsp[(1) - (1)].sr)); ;}
5064 break;
5065
5066 case 153:
5067
5068 { (yyval.srset) = sRefSet_insert ((yyvsp[(1) - (3)].srset), (yyvsp[(3) - (3)].sr)); ;}
5069 break;
5070
5071 case 154:
5072
5073 { (yyval.sr) = checkStateClausesId ((yyvsp[(1) - (1)].entry)); ;}
5074 break;
5075
5076 case 155:
5077
5078 { (yyval.sr) = fixStateClausesId ((yyvsp[(1) - (1)].cname)); ;}
5079 break;
5080
5081 case 156:
5082
5083 { (yyval.sr) = sRef_makeAnyArrayFetch ((yyvsp[(1) - (3)].sr)); ;}
5084 break;
5085
5086 case 157:
5087
5088 { (yyval.sr) = sRef_makeAnyArrayFetch ((yyvsp[(1) - (4)].sr)); ;}
5089 break;
5090
5091 case 158:
5092
5093 { (yyval.sr) = sRef_constructPointer ((yyvsp[(2) - (2)].sr)); ;}
5094 break;
5095
5096 case 159:
5097
5098 { (yyval.sr) = (yyvsp[(2) - (3)].sr); ;}
5099 break;
5100
5101 case 160:
5102
5103 { cstring_markOwned ((yyvsp[(3) - (3)].cname));
5104 (yyval.sr) = sRef_buildField ((yyvsp[(1) - (3)].sr), (yyvsp[(3) - (3)].cname)); ;}
5105 break;
5106
5107 case 161:
5108
5109 { cstring_markOwned ((yyvsp[(3) - (3)].cname));
5110 (yyval.sr) = sRef_makeArrow ((yyvsp[(1) - (3)].sr), (yyvsp[(3) - (3)].cname)); ;}
5111 break;
5112
5113 case 162:
5114
5115 { DPRINTF ((message("Empty optSpecClauseList") )); (yyval.srset) = sRefSet_undefined ;}
5116 break;
5117
5118 case 164:
5119
5120 { if (sRef_isValid ((yyvsp[(1) - (1)].sr))) { (yyval.srset) = sRefSet_single ((yyvsp[(1) - (1)].sr)); }
5121 else {
5122 DPRINTF((message("returning sRefSEt_undefined ") ));
5123 (yyval.srset) = sRefSet_undefined; }
5124 ;}
5125 break;
5126
5127 case 165:
5128
5129 { if (sRef_isValid ((yyvsp[(3) - (3)].sr)))
5130 {
5131 (yyval.srset) = sRefSet_insert ((yyvsp[(1) - (3)].srset), (yyvsp[(3) - (3)].sr));
5132 }
5133 else
5134 {
5135 (yyval.srset) = (yyvsp[(1) - (3)].srset);
5136 }
5137 ;}
5138 break;
5139
5140 case 166:
5141
5142 { (yyval.expr) = exprNode_fromIdentifier ((yyvsp[(1) - (1)].entry)); ;}
5143 break;
5144
5145 case 167:
5146
5147 { (yyval.expr) = exprNode_fromUIO ((yyvsp[(1) - (1)].cname)); ;}
5148 break;
5149
5150 case 169:
5151
5152 { (yyval.expr) = exprNode_addParens ((yyvsp[(1) - (3)].tok), (yyvsp[(2) - (3)].expr)); ;}
5153 break;
5154
5155 case 170:
5156
5157 { (yyval.expr) = exprNode_fromIdentifier (cscannerHelp_coerceId ((yyvsp[(1) - (1)].cname))); ;}
5158 break;
5159
5160 case 171:
5161
5162 { (yyval.expr) = exprNode_makeError (); ;}
5163 break;
5164
5165 case 172:
5166
5167 { exprChecks_inCompoundStatementExpression (); ;}
5168 break;
5169
5170 case 173:
5171
5172 { exprChecks_leaveCompoundStatementExpression (); (yyval.expr) = exprNode_compoundStatementExpression ((yyvsp[(1) - (4)].tok), (yyvsp[(3) - (4)].expr)); ;}
5173 break;
5174
5175 case 175:
5176
5177 { (yyval.expr) = exprNode_arrayFetch ((yyvsp[(1) - (4)].expr), (yyvsp[(3) - (4)].expr)); ;}
5178 break;
5179
5180 case 176:
5181
5182 { (yyval.expr) = exprNode_functionCall ((yyvsp[(1) - (3)].expr), exprNodeList_new ()); ;}
5183 break;
5184
5185 case 177:
5186
5187 { (yyval.expr) = exprNode_functionCall ((yyvsp[(1) - (4)].expr), (yyvsp[(3) - (4)].exprlist)); ;}
5188 break;
5189
5190 case 178:
5191
5192 { (yyval.expr) = exprNode_vaArg ((yyvsp[(1) - (6)].tok), (yyvsp[(3) - (6)].expr), (yyvsp[(5) - (6)].qtyp)); ;}
5193 break;
5194
5195 case 179:
5196
5197 { (yyval.expr) = exprNode_fieldAccess ((yyvsp[(1) - (5)].expr), (yyvsp[(3) - (5)].tok), (yyvsp[(4) - (5)].cname)); ;}
5198 break;
5199
5200 case 180:
5201
5202 { (yyval.expr) = exprNode_arrowAccess ((yyvsp[(1) - (5)].expr), (yyvsp[(3) - (5)].tok), (yyvsp[(4) - (5)].cname)); ;}
5203 break;
5204
5205 case 181:
5206
5207 { (yyval.expr) = exprNode_postOp ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].tok)); ;}
5208 break;
5209
5210 case 182:
5211
5212 { (yyval.expr) = exprNode_postOp ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].tok)); ;}
5213 break;
5214
5215 case 183:
5216
5217 { /* added for C99 */ (yyval.expr) = exprNode_undefined; /*@i87 no checking */ ;}
5218 break;
5219
5220 case 184:
5221
5222 { (yyval.exprlist) = exprNodeList_singleton ((yyvsp[(1) - (1)].expr)); ;}
5223 break;
5224
5225 case 185:
5226
5227 { (yyval.exprlist) = exprNodeList_push ((yyvsp[(1) - (3)].exprlist), (yyvsp[(3) - (3)].expr)); ;}
5228 break;
5229
5230 case 187:
5231
5232 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
5233 break;
5234
5235 case 188:
5236
5237 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
5238 break;
5239
5240 case 189:
5241
5242 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
5243 break;
5244
5245 case 190:
5246
5247 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
5248 break;
5249
5250 case 191:
5251
5252 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
5253 break;
5254
5255 case 192:
5256
5257 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
5258 break;
5259
5260 case 193:
5261
5262 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
5263 break;
5264
5265 case 194:
5266
5267 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
5268 break;
5269
5270 case 195:
5271
5272 { (yyval.expr) = (yyvsp[(2) - (3)].expr); ;}
5273 break;
5274
5275 case 196:
5276
5277 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
5278 break;
5279
5280 case 197:
5281
5282 { (yyval.cstringlist) = cstringList_add ((yyvsp[(1) - (3)].cstringlist), (yyvsp[(3) - (3)].cname)); lltok_free ((yyvsp[(2) - (3)].tok)); ;}
5283 break;
5284
5285 case 198:
5286
5287 { (yyval.cstringlist) = (yyvsp[(1) - (4)].cstringlist); lltok_free2 ((yyvsp[(2) - (4)].tok), (yyvsp[(4) - (4)].tok)); ;}
5288 break;
5289
5290 case 199:
5291
5292 { (yyval.cstringlist) = cstringList_single ((yyvsp[(1) - (1)].cname)); ;}
5293 break;
5294
5295 case 200:
5296
5297 { (yyval.expr) = exprNode_offsetof ((yyvsp[(4) - (9)].qtyp), (yyvsp[(7) - (9)].cstringlist));
5298 lltok_free3 ((yyvsp[(1) - (9)].tok), (yyvsp[(3) - (9)].tok), (yyvsp[(6) - (9)].tok)); lltok_free ((yyvsp[(8) - (9)].tok)); ;}
5299 break;
5300
5301 case 201:
5302
5303 { context_setProtectVars (); ;}
5304 break;
5305
5306 case 202:
5307
5308 { context_sizeofReleaseVars (); (yyval.expr) = (yyvsp[(3) - (3)].expr); ;}
5309 break;
5310
5311 case 203:
5312
5313 {context_enterSizeof();}
5314 break;
5315
5316 case 204:
5317
5318 {context_leaveSizeof();}
5319 break;
5320
5321 case 205:
5322
5323 { (yyval.expr) = exprNode_sizeofType ((yyvsp[(3) - (4)].qtyp)); lltok_free3 ((yyvsp[(1) - (4)].tok), (yyvsp[(2) - (4)].tok), (yyvsp[(4) - (4)].tok)); ;}
5324 break;
5325
5326 case 206:
5327
5328 { (yyval.expr) = exprNode_sizeofExpr ((yyvsp[(2) - (2)].expr)); lltok_free ((yyvsp[(1) - (2)].tok)); ;}
5329 break;
5330
5331 case 207:
5332
5333 { (yyval.expr) = exprNode_alignofType ((yyvsp[(3) - (4)].qtyp)); lltok_free3 ((yyvsp[(1) - (4)].tok), (yyvsp[(2) - (4)].tok), (yyvsp[(4) - (4)].tok)); ;}
5334 break;
5335
5336 case 208:
5337
5338 { (yyval.expr) = exprNode_alignofExpr ((yyvsp[(2) - (2)].expr)); lltok_free ((yyvsp[(1) - (2)].tok)); ;}
5339 break;
5340
5341 case 210:
5342
5343 { (yyval.expr) = exprNode_cast ((yyvsp[(1) - (4)].tok), (yyvsp[(4) - (4)].expr), (yyvsp[(2) - (4)].qtyp)); lltok_free ((yyvsp[(3) - (4)].tok)); ;}
5344 break;
5345
5346 case 212:
5347
5348 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5349 break;
5350
5351 case 213:
5352
5353 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5354 break;
5355
5356 case 214:
5357
5358 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5359 break;
5360
5361 case 216:
5362
5363 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5364 break;
5365
5366 case 217:
5367
5368 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5369 break;
5370
5371 case 219:
5372
5373 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5374 break;
5375
5376 case 220:
5377
5378 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5379 break;
5380
5381 case 222:
5382
5383 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5384 break;
5385
5386 case 223:
5387
5388 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5389 break;
5390
5391 case 224:
5392
5393 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5394 break;
5395
5396 case 225:
5397
5398 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5399 break;
5400
5401 case 227:
5402
5403 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5404 break;
5405
5406 case 228:
5407
5408 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5409 break;
5410
5411 case 230:
5412
5413 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5414 break;
5415
5416 case 232:
5417
5418 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5419 break;
5420
5421 case 234:
5422
5423 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5424 break;
5425
5426 case 236:
5427
5428 { exprNode_produceGuards ((yyvsp[(1) - (2)].expr));
5429 context_enterAndClause ((yyvsp[(1) - (2)].expr));
5430 ;}
5431 break;
5432
5433 case 237:
5434
5435 {
5436 (yyval.expr) = exprNode_op ((yyvsp[(1) - (4)].expr), (yyvsp[(4) - (4)].expr), (yyvsp[(2) - (4)].tok));
5437 context_exitAndClause ((yyval.expr), (yyvsp[(4) - (4)].expr));
5438 ;}
5439 break;
5440
5441 case 239:
5442
5443 {
5444 exprNode_produceGuards ((yyvsp[(1) - (2)].expr));
5445 context_enterOrClause ((yyvsp[(1) - (2)].expr));
5446 ;}
5447 break;
5448
5449 case 240:
5450
5451 {
5452 (yyval.expr) = exprNode_op ((yyvsp[(1) - (4)].expr), (yyvsp[(4) - (4)].expr), (yyvsp[(2) - (4)].tok));
5453 context_exitOrClause ((yyval.expr), (yyvsp[(4) - (4)].expr));
5454 ;}
5455 break;
5456
5457 case 242:
5458
5459 { /* GCC extension: conditional with empty if */
5460 exprNode_produceGuards ((yyvsp[(1) - (2)].expr)); context_enterTrueClause ((yyvsp[(1) - (2)].expr)); ;}
5461 break;
5462
5463 case 243:
5464
5465 { context_enterFalseClause ((yyvsp[(1) - (4)].expr)); ;}
5466 break;
5467
5468 case 244:
5469
5470 { (yyval.expr) = exprNode_condIfOmit ((yyvsp[(1) - (6)].expr), (yyvsp[(6) - (6)].expr)); context_exitClause ((yyvsp[(1) - (6)].expr), exprNode_undefined, (yyvsp[(6) - (6)].expr)); ;}
5471 break;
5472
5473 case 245:
5474
5475 { exprNode_produceGuards ((yyvsp[(1) - (2)].expr)); context_enterTrueClause ((yyvsp[(1) - (2)].expr)); ;}
5476 break;
5477
5478 case 246:
5479
5480 { context_enterFalseClause ((yyvsp[(1) - (5)].expr)); ;}
5481 break;
5482
5483 case 247:
5484
5485 { (yyval.expr) = exprNode_cond ((yyvsp[(1) - (7)].expr), (yyvsp[(4) - (7)].expr), (yyvsp[(7) - (7)].expr)); context_exitClause ((yyvsp[(1) - (7)].expr), (yyvsp[(4) - (7)].expr), (yyvsp[(7) - (7)].expr)); ;}
5486 break;
5487
5488 case 249:
5489
5490 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5491 break;
5492
5493 case 250:
5494
5495 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5496 break;
5497
5498 case 251:
5499
5500 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5501 break;
5502
5503 case 252:
5504
5505 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5506 break;
5507
5508 case 253:
5509
5510 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5511 break;
5512
5513 case 254:
5514
5515 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5516 break;
5517
5518 case 255:
5519
5520 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5521 break;
5522
5523 case 256:
5524
5525 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5526 break;
5527
5528 case 257:
5529
5530 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5531 break;
5532
5533 case 258:
5534
5535 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5536 break;
5537
5538 case 259:
5539
5540 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
5541 break;
5542
5543 case 261:
5544
5545 { (yyval.expr) = exprNode_comma ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
5546 break;
5547
5548 case 262:
5549
5550 { (yyval.expr) = exprNode_undefined; ;}
5551 break;
5552
5553 case 265:
5554
5555 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
5556 break;
5557
5558 case 266:
5559
5560 { doVaDcl (); (yyval.expr) = exprNode_makeError (); ;}
5561 break;
5562
5563 case 267:
5564
5565 { (yyval.expr) = exprNode_makeError (); ;}
5566 break;
5567
5568 case 268:
5569
5570 { (yyval.expr) = exprNode_makeError (); ;}
5571 break;
5572
5573 case 269:
5574
5575 {
5576 setProcessingVars ((yyvsp[(1) - (4)].qtyp));
5577 processNamedDecl ((yyvsp[(3) - (4)].ntyp));
5578 ;}
5579 break;
5580
5581 case 270:
5582
5583 {
5584 unsetProcessingVars ();
5585 (yyval.expr) = exprNode_makeEmptyInitialization ((yyvsp[(3) - (9)].ntyp));
5586 DPRINTF (("Empty initialization: %s", exprNode_unparse ((yyval.expr))));
5587 ;}
5588 break;
5589
5590 case 271:
5591
5592 { setProcessingVars ((yyvsp[(1) - (5)].qtyp)); processNamedDecl ((yyvsp[(3) - (5)].ntyp)); ;}
5593 break;
5594
5595 case 272:
5596
5597 { (yyval.expr) = exprNode_concat ((yyvsp[(9) - (11)].expr), exprNode_makeInitialization ((yyvsp[(3) - (11)].ntyp), (yyvsp[(8) - (11)].expr)));
5598 unsetProcessingVars ();
5599 ;}
5600 break;
5601
5602 case 273:
5603
5604 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
5605 break;
5606
5607 case 274:
5608
5609 { (yyval.expr) = exprNode_fromIdentifier (usymtab_getTypeEntry (ctype_typeId ((yyvsp[(1) - (1)].ctyp)))); ;}
5610 break;
5611
5612 case 275:
5613
5614 {
5615 processNamedDecl ((yyvsp[(1) - (2)].ntyp));
5616 (yyval.expr) = exprNode_makeEmptyInitialization ((yyvsp[(1) - (2)].ntyp));
5617 ;}
5618 break;
5619
5620 case 276:
5621
5622 { processNamedDecl ((yyvsp[(1) - (3)].ntyp)); ;}
5623 break;
5624
5625 case 277:
5626
5627 { (yyval.expr) = exprNode_makeInitialization ((yyvsp[(1) - (6)].ntyp), (yyvsp[(6) - (6)].expr)); ;}
5628 break;
5629
5630 case 278:
5631
5632 { setProcessingTypedef ((yyvsp[(2) - (2)].qtyp)); ;}
5633 break;
5634
5635 case 279:
5636
5637 { clabstract_declareType ((yyvsp[(5) - (8)].exprlist), (yyvsp[(7) - (8)].warnclause)); ;}
5638 break;
5639
5640 case 280:
5641
5642 { /* in the ANSI grammar, semantics unclear */ ;}
5643 break;
5644
5645 case 281:
5646
5647 { /* in the ANSI grammar, semantics unclear */ ;}
5648 break;
5649
5650 case 282:
5651
5652 { cscannerHelp_setExpectingTypeName (); ;}
5653 break;
5654
5655 case 283:
5656
5657 { cscannerHelp_setExpectingTypeName (); context_pushLoc (); ;}
5658 break;
5659
5660 case 284:
5661
5662 { (yyval.exprlist) = (yyvsp[(1) - (2)].exprlist); ;}
5663 break;
5664
5665 case 285:
5666
5667 { (yyval.exprlist) = exprNodeList_singleton ((yyvsp[(1) - (1)].expr)); ;}
5668 break;
5669
5670 case 286:
5671
5672 { (yyval.exprlist) = exprNodeList_push ((yyvsp[(1) - (4)].exprlist), (yyvsp[(4) - (4)].expr)); ;}
5673 break;
5674
5675 case 287:
5676
5677 { (yyval.exprlist) = (yyvsp[(1) - (2)].exprlist); ;}
5678 break;
5679
5680 case 288:
5681
5682 { (yyval.exprlist) = exprNodeList_singleton ((yyvsp[(1) - (1)].expr)); ;}
5683 break;
5684
5685 case 289:
5686
5687 { (yyval.exprlist) = exprNodeList_push ((yyvsp[(1) - (4)].exprlist), (yyvsp[(4) - (4)].expr)); ;}
5688 break;
5689
5690 case 290:
5691
5692 { (yyval.expr) = exprNode_makeError (); ;}
5693 break;
5694
5695 case 291:
5696
5697 { (yyval.expr) = exprNode_concat ((yyvsp[(1) - (4)].expr), (yyvsp[(4) - (4)].expr)); ;}
5698 break;
5699
5700 case 293:
5701
5702 { (yyval.expr) = exprNode_makeInitBlock ((yyvsp[(1) - (3)].tok), (yyvsp[(2) - (3)].exprlist)); lltok_free ((yyvsp[(3) - (3)].tok)); ;}
5703 break;
5704
5705 case 294:
5706
5707 { (yyval.expr) = exprNode_makeInitBlock ((yyvsp[(1) - (4)].tok), (yyvsp[(2) - (4)].exprlist)); lltok_free2 ((yyvsp[(3) - (4)].tok), (yyvsp[(4) - (4)].tok)); ;}
5708 break;
5709
5710 case 295:
5711
5712 { (yyval.expr) = exprNode_undefined; ;}
5713 break;
5714
5715 case 296:
5716
5717 { (yyval.expr) = (yyvsp[(1) - (2)].expr); ;}
5718 break;
5719
5720 case 297:
5721
5722 { (yyval.expr) = exprNode_undefined;
5723 /* gcc extension, obsolete since 2.5 */ ;}
5724 break;
5725
5726 case 298:
5727
5728 { (yyval.expr) = exprNode_undefined; ;}
5729 break;
5730
5731 case 299:
5732
5733 { (yyval.expr) = exprNode_undefined; ;}
5734 break;
5735
5736 case 300:
5737
5738 { (yyval.expr) = exprNode_undefined; ;}
5739 break;
5740
5741 case 301:
5742
5743 { (yyval.expr) = exprNode_undefined; ;}
5744 break;
5745
5746 case 302:
5747
5748 { (yyval.exprlist) = exprNodeList_singleton ((yyvsp[(1) - (1)].expr)); ;}
5749 break;
5750
5751 case 303:
5752
5753 { (yyval.exprlist) = exprNodeList_push ((yyvsp[(1) - (3)].exprlist), (yyvsp[(3) - (3)].expr)); ;}
5754 break;
5755
5756 case 304:
5757
5758 { setStorageClass (SCEXTERN); (yyval.typequal) = qual_createExtern (); ;}
5759 break;
5760
5761 case 305:
5762
5763 { (yyval.typequal) = qual_createInline (); ;}
5764 break;
5765
5766 case 306:
5767
5768 { setStorageClass (SCSTATIC); (yyval.typequal) = qual_createStatic (); ;}
5769 break;
5770
5771 case 307:
5772
5773 { (yyval.typequal) = qual_createAuto (); ;}
5774 break;
5775
5776 case 308:
5777
5778 { (yyval.typequal) = qual_createRegister (); ;}
5779 break;
5780
5781 case 309:
5782
5783 { (yyval.stateclause) = (yyvsp[(1) - (2)].stateclause); ;}
5784 break;
5785
5786 case 310:
5787
5788 {
5789 context_setProtectVars ();
5790 enterParamsTemp ();
5791 sRef_setGlobalScopeSafe ();
5792 ;}
5793 break;
5794
5795 case 311:
5796
5797 {
5798 exitParamsTemp ();
5799 sRef_clearGlobalScopeSafe ();
5800 context_releaseVars ();
5801 (yyval.stateclause) = stateClause_createPlain ((yyvsp[(1) - (6)].tok), (yyvsp[(4) - (6)].srset));
5802 ;}
5803 break;
5804
5805 case 312:
5806
5807 { (yyval.funcclause) = (yyvsp[(1) - (2)].funcclause); ;}
5808 break;
5809
5810 case 313:
5811
5812 { (yyval.tok) = (yyvsp[(1) - (2)].tok); context_enterFunctionHeader (); ;}
5813 break;
5814
5815 case 314:
5816
5817 {
5818 context_exitFunctionHeader ();
5819 context_setProtectVars ();
5820 enterParamsTemp ();
5821 sRef_setGlobalScopeSafe ();
5822 ;}
5823 break;
5824
5825 case 315:
5826
5827 {
5828 exitParamsTemp ();
5829 sRef_clearGlobalScopeSafe ();
5830 context_releaseVars ();
5831 (yyval.funcclause) = functionClause_createState (stateClause_create ((yyvsp[(1) - (6)].tok), (yyvsp[(2) - (6)].typequal), (yyvsp[(4) - (6)].srset)));
5832 ;}
5833 break;
5834
5835 case 316:
5836
5837 {
5838 context_setProtectVars ();
5839 enterParamsTemp ();
5840 sRef_setGlobalScopeSafe ();
5841 ;}
5842 break;
5843
5844 case 317:
5845
5846 {
5847 context_exitFunctionHeader ();
5848 exitParamsTemp ();
5849 sRef_clearGlobalScopeSafe ();
5850 context_releaseVars ();
5851 DPRINTF (("done optGlobBufConstraintsAux\n"));
5852
5853 if (lltok_isEnsures ((yyvsp[(1) - (5)].tok)))
5854 {
5855 (yyval.funcclause) = functionClause_createEnsures ((yyvsp[(3) - (5)].fcnconstraint));
5856 }
5857 else if (lltok_isRequires ((yyvsp[(1) - (5)].tok)))
5858 {
5859 (yyval.funcclause) = functionClause_createRequires ((yyvsp[(3) - (5)].fcnconstraint));
5860 }
5861 else
5862 {
5863 BADBRANCH;
5864 }
5865
5866 DPRINTF (("FunctionclauseS: %s", functionClause_unparse ((yyval.funcclause))));
5867 ;}
5868 break;
5869
5870 case 318:
5871
5872 { (yyval.fcnconstraint) = functionConstraint_createBufferConstraint ((yyvsp[(1) - (1)].conL)); ;}
5873 break;
5874
5875 case 319:
5876
5877 { (yyval.fcnconstraint) = functionConstraint_createMetaStateConstraint ((yyvsp[(1) - (1)].msconstraint)); DPRINTF (("Made constraint: %s", functionConstraint_unparse ((yyval.fcnconstraint)))); ;}
5878 break;
5879
5880 case 320:
5881
5882 { (yyval.typequal) = qual_createExits (); ;}
5883 break;
5884
5885 case 321:
5886
5887 { (yyval.typequal) = qual_createMayExit (); ;}
5888 break;
5889
5890 case 322:
5891
5892 { (yyval.typequal) = qual_createTrueExit (); ;}
5893 break;
5894
5895 case 323:
5896
5897 { (yyval.typequal) = qual_createFalseExit (); ;}
5898 break;
5899
5900 case 324:
5901
5902 { (yyval.typequal) = qual_createNeverExit (); ;}
5903 break;
5904
5905 case 325:
5906
5907 { (yyval.typequal) = qual_createChecked (); ;}
5908 break;
5909
5910 case 326:
5911
5912 { (yyval.typequal) = qual_createCheckMod (); ;}
5913 break;
5914
5915 case 327:
5916
5917 { (yyval.typequal) = qual_createUnchecked (); ;}
5918 break;
5919
5920 case 328:
5921
5922 { (yyval.typequal) = qual_createCheckedStrict (); ;}
5923 break;
5924
5925 case 329:
5926
5927 { (yyval.typequal) = qual_createOwned (); ;}
5928 break;
5929
5930 case 330:
5931
5932 { (yyval.typequal) = qual_createDependent (); ;}
5933 break;
5934
5935 case 331:
5936
5937 { (yyval.typequal) = qual_createYield (); ;}
5938 break;
5939
5940 case 332:
5941
5942 { (yyval.typequal) = qual_createTemp (); ;}
5943 break;
5944
5945 case 333:
5946
5947 { (yyval.typequal) = qual_createOnly (); ;}
5948 break;
5949
5950 case 334:
5951
5952 { (yyval.typequal) = qual_createKeep (); ;}
5953 break;
5954
5955 case 335:
5956
5957 { (yyval.typequal) = qual_createKept (); ;}
5958 break;
5959
5960 case 336:
5961
5962 { (yyval.typequal) = qual_createShared (); ;}
5963 break;
5964
5965 case 337:
5966
5967 { (yyval.typequal) = qual_createUnique (); ;}
5968 break;
5969
5970 case 338:
5971
5972 { (yyval.typequal) = qual_createNull (); ;}
5973 break;
5974
5975 case 339:
5976
5977 { (yyval.typequal) = qual_createIsNull (); ;}
5978 break;
5979
5980 case 340:
5981
5982 { (yyval.typequal) = qual_createRelNull (); ;}
5983 break;
5984
5985 case 341:
5986
5987 { (yyval.typequal) = qual_createNotNull (); ;}
5988 break;
5989
5990 case 342:
5991
5992 { (yyval.typequal) = qual_createExposed (); ;}
5993 break;
5994
5995 case 343:
5996
5997 { (yyval.typequal) = qual_createObserver (); ;}
5998 break;
5999
6000 case 344:
6001
6002 { (yyval.typequal) = qual_createNullTerminated (); ;}
6003 break;
6004
6005 case 345:
6006
6007 { (yyval.typequal) = qual_createMetaState ((yyvsp[(1) - (1)].annotation)); ;}
6008 break;
6009
6010 case 346:
6011
6012 { (yyval.typequal) = qual_createReturned (); ;}
6013 break;
6014
6015 case 347:
6016
6017 { (yyval.typequal) = qual_createSef (); ;}
6018 break;
6019
6020 case 348:
6021
6022 { (yyval.typequal) = qual_createUnused (); ;}
6023 break;
6024
6025 case 349:
6026
6027 { (yyval.typequal) = qual_createExternal (); ;}
6028 break;
6029
6030 case 350:
6031
6032 { (yyval.typequal) = qual_createTrueNull (); ;}
6033 break;
6034
6035 case 351:
6036
6037 { (yyval.typequal) = qual_createFalseNull (); ;}
6038 break;
6039
6040 case 352:
6041
6042 { (yyval.typequal) = qual_createAbstract (); ;}
6043 break;
6044
6045 case 353:
6046
6047 { (yyval.typequal) = qual_createNumAbstract (); ;}
6048 break;
6049
6050 case 354:
6051
6052 { (yyval.typequal) = qual_createConcrete (); ;}
6053 break;
6054
6055 case 355:
6056
6057 { (yyval.typequal) = qual_createMutable (); ;}
6058 break;
6059
6060 case 356:
6061
6062 { (yyval.typequal) = qual_createImmutable (); ;}
6063 break;
6064
6065 case 357:
6066
6067 { (yyval.typequal) = qual_createRefCounted (); ;}
6068 break;
6069
6070 case 358:
6071
6072 { (yyval.typequal) = qual_createRefs (); ;}
6073 break;
6074
6075 case 359:
6076
6077 { (yyval.typequal) = qual_createKillRef (); ;}
6078 break;
6079
6080 case 360:
6081
6082 { (yyval.typequal) = qual_createRelDef (); ;}
6083 break;
6084
6085 case 361:
6086
6087 { (yyval.typequal) = qual_createNewRef (); ;}
6088 break;
6089
6090 case 362:
6091
6092 { (yyval.typequal) = qual_createTempRef (); ;}
6093 break;
6094
6095 case 363:
6096
6097 { (yyval.typequal) = qual_createShort (); ;}
6098 break;
6099
6100 case 364:
6101
6102 { (yyval.typequal) = qual_createLong (); ;}
6103 break;
6104
6105 case 365:
6106
6107 { (yyval.typequal) = qual_createSigned (); ;}
6108 break;
6109
6110 case 366:
6111
6112 { (yyval.typequal) = qual_createUnsigned (); ;}
6113 break;
6114
6115 case 367:
6116
6117 { (yyval.typequal) = qual_createOut (); ;}
6118 break;
6119
6120 case 368:
6121
6122 { (yyval.typequal) = qual_createIn (); ;}
6123 break;
6124
6125 case 369:
6126
6127 { (yyval.typequal) = qual_createPartial (); ;}
6128 break;
6129
6130 case 370:
6131
6132 { (yyval.typequal) = qual_createSpecial (); ;}
6133 break;
6134
6135 case 371:
6136
6137 { (yyval.typequal) = qual_createConst (); ;}
6138 break;
6139
6140 case 372:
6141
6142 { (yyval.typequal) = qual_createVolatile (); ;}
6143 break;
6144
6145 case 373:
6146
6147 { (yyval.typequal) = qual_createRestrict (); ;}
6148 break;
6149
6150 case 374:
6151
6152 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6153 break;
6154
6155 case 375:
6156
6157 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6158 break;
6159
6160 case 376:
6161
6162 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6163 break;
6164
6165 case 377:
6166
6167 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6168 break;
6169
6170 case 378:
6171
6172 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6173 break;
6174
6175 case 379:
6176
6177 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6178 break;
6179
6180 case 380:
6181
6182 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6183 break;
6184
6185 case 381:
6186
6187 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6188 break;
6189
6190 case 382:
6191
6192 { (yyval.typequal) = (yyvsp[(1) - (2)].typequal); ;}
6193 break;
6194
6195 case 389:
6196
6197 { (yyval.ctyp) = ctype_makeAnytype (); ;}
6198 break;
6199
6200 case 390:
6201
6202 { (yyval.ctyp) = ctype_anyintegral; ;}
6203 break;
6204
6205 case 391:
6206
6207 { (yyval.ctyp) = ctype_unsignedintegral; ;}
6208 break;
6209
6210 case 392:
6211
6212 { (yyval.ctyp) = ctype_signedintegral; ;}
6213 break;
6214
6215 case 396:
6216
6217 { (yyval.ctyp) = ctype_fromQual ((yyvsp[(1) - (2)].typequal)); ;}
6218 break;
6219
6220 case 397:
6221
6222 { (yyval.qtyp) = qtype_resolve ((yyvsp[(2) - (3)].qtyp)); ;}
6223 break;
6224
6225 case 398:
6226
6227 { (yyval.qtyp) = (yyvsp[(1) - (1)].qtyp); ;}
6228 break;
6229
6230 case 399:
6231
6232 { (yyval.qtyp) = qtype_mergeAlt ((yyvsp[(1) - (4)].qtyp), (yyvsp[(3) - (4)].qtyp)); ;}
6233 break;
6234
6235 case 401:
6236
6237 { (yyval.qtyp) = qtype_mergeAlt ((yyvsp[(1) - (3)].qtyp), (yyvsp[(3) - (3)].qtyp)); ;}
6238 break;
6239
6240 case 402:
6241
6242 { (yyval.qtyp) = qtype_addQual ((yyvsp[(2) - (2)].qtyp), (yyvsp[(1) - (2)].typequal)); ;}
6243 break;
6244
6245 case 403:
6246
6247 { (yyval.qtyp) = qtype_addQual ((yyvsp[(2) - (2)].qtyp), (yyvsp[(1) - (2)].typequal)); ;}
6248 break;
6249
6250 case 404:
6251
6252 { (yyval.qtyp) = qtype_combine ((yyvsp[(2) - (2)].qtyp), (yyvsp[(1) - (2)].ctyp)); ;}
6253 break;
6254
6255 case 405:
6256
6257 { (yyval.qtyp) = qtype_unknown (); ;}
6258 break;
6259
6260 case 406:
6261
6262 { (yyval.qtyp) = (yyvsp[(1) - (1)].qtyp); ;}
6263 break;
6264
6265 case 407:
6266
6267 { (yyval.conL) = constraintList_undefined; ;}
6268 break;
6269
6270 case 408:
6271
6272 { sRef_setGlobalScopeSafe (); ;}
6273 break;
6274
6275 case 409:
6276
6277 { sRef_clearGlobalScopeSafe (); ;}
6278 break;
6279
6280 case 410:
6281
6282 { ctype ct; ct = declareStruct ((yyvsp[(3) - (12)].cname), (yyvsp[(8) - (12)].flist)); /* context_setGlobalStructInfo(ct, $12); */ (yyval.ctyp) = ct; ;}
6283 break;
6284
6285 case 411:
6286
6287 { sRef_setGlobalScopeSafe (); ;}
6288 break;
6289
6290 case 412:
6291
6292 { sRef_clearGlobalScopeSafe (); ;}
6293 break;
6294
6295 case 413:
6296
6297 { (yyval.ctyp) = declareUnion ((yyvsp[(3) - (11)].cname), (yyvsp[(8) - (11)].flist)); ;}
6298 break;
6299
6300 case 414:
6301
6302 { (yyval.ctyp) = declareStruct ((yyvsp[(3) - (6)].cname), uentryList_new ()); ;}
6303 break;
6304
6305 case 415:
6306
6307 { (yyval.ctyp) = declareUnion ((yyvsp[(3) - (6)].cname), uentryList_new ()); ;}
6308 break;
6309
6310 case 416:
6311
6312 { sRef_setGlobalScopeSafe (); ;}
6313 break;
6314
6315 case 417:
6316
6317 { sRef_clearGlobalScopeSafe (); ;}
6318 break;
6319
6320 case 418:
6321
6322 { (yyval.ctyp) = declareUnnamedStruct ((yyvsp[(7) - (10)].flist)); ;}
6323 break;
6324
6325 case 419:
6326
6327 { sRef_setGlobalScopeSafe (); ;}
6328 break;
6329
6330 case 420:
6331
6332 { sRef_clearGlobalScopeSafe (); ;}
6333 break;
6334
6335 case 421:
6336
6337 { (yyval.ctyp) = declareUnnamedUnion ((yyvsp[(7) - (10)].flist)); ;}
6338 break;
6339
6340 case 422:
6341
6342 { (yyval.ctyp) = ctype_createUnnamedStruct (uentryList_new ()); ;}
6343 break;
6344
6345 case 423:
6346
6347 { (yyval.ctyp) = ctype_createUnnamedUnion (uentryList_new ()); ;}
6348 break;
6349
6350 case 424:
6351
6352 { (yyval.ctyp) = handleStruct ((yyvsp[(3) - (4)].cname)); ;}
6353 break;
6354
6355 case 425:
6356
6357 { (yyval.ctyp) = handleUnion ((yyvsp[(3) - (4)].cname)); ;}
6358 break;
6359
6360 case 426:
6361
6362 { cscannerHelp_clearExpectingTypeName (); ;}
6363 break;
6364
6365 case 428:
6366
6367 { (yyval.flist) = uentryList_undefined; /* bogus! */ ;}
6368 break;
6369
6370 case 429:
6371
6372 { (yyval.flist) = uentryList_mergeFields ((yyvsp[(1) - (2)].flist), (yyvsp[(2) - (2)].flist)); ;}
6373 break;
6374
6375 case 430:
6376
6377 { (yyval.flist) = fixUentryList ((yyvsp[(3) - (5)].ntyplist), (yyvsp[(1) - (5)].qtyp)); ;}
6378 break;
6379
6380 case 431:
6381
6382 { (yyval.flist) = fixUnnamedDecl ((yyvsp[(1) - (3)].qtyp)); ;}
6383 break;
6384
6385 case 432:
6386
6387 { (yyval.ntyplist) = idDeclList_singleton ((yyvsp[(1) - (2)].ntyp)); ;}
6388 break;
6389
6390 case 433:
6391
6392 { (yyval.ntyplist) = idDeclList_add ((yyvsp[(1) - (4)].ntyplist), (yyvsp[(3) - (4)].ntyp)); ;}
6393 break;
6394
6395 case 434:
6396
6397 { (yyval.ntyp) = (yyvsp[(1) - (1)].ntyp); ;}
6398 break;
6399
6400 case 435:
6401
6402 { (yyval.ntyp) = idDecl_undefined; ;}
6403 break;
6404
6405 case 436:
6406
6407 { (yyval.ntyp) = (yyvsp[(1) - (4)].ntyp); ;}
6408 break;
6409
6410 case 437:
6411
6412 { (yyval.ctyp) = declareUnnamedEnum ((yyvsp[(4) - (6)].enumnamelist)); ;}
6413 break;
6414
6415 case 438:
6416
6417 { context_pushLoc (); ;}
6418 break;
6419
6420 case 439:
6421
6422 { context_popLoc (); (yyval.ctyp) = declareEnum ((yyvsp[(3) - (8)].cname), (yyvsp[(6) - (8)].enumnamelist)); ;}
6423 break;
6424
6425 case 440:
6426
6427 { (yyval.ctyp) = handleEnum ((yyvsp[(3) - (4)].cname)); ;}
6428 break;
6429
6430 case 441:
6431
6432 { (yyval.enumnamelist) = enumNameList_single ((yyvsp[(1) - (1)].cname)); ;}
6433 break;
6434
6435 case 442:
6436
6437 { (yyval.enumnamelist) = enumNameList_push ((yyvsp[(1) - (3)].enumnamelist), (yyvsp[(3) - (3)].cname)); ;}
6438 break;
6439
6440 case 444:
6441
6442 { uentry ue = uentry_makeEnumConstant ((yyvsp[(1) - (1)].cname), ctype_unknown);
6443 usymtab_supGlobalEntry (ue);
6444 (yyval.cname) = (yyvsp[(1) - (1)].cname);
6445 ;}
6446 break;
6447
6448 case 445:
6449
6450 { uentry ue = uentry_makeEnumInitializedConstant ((yyvsp[(1) - (4)].cname), ctype_unknown, (yyvsp[(4) - (4)].expr));
6451 usymtab_supGlobalEntry (ue);
6452 (yyval.cname) = (yyvsp[(1) - (4)].cname);
6453 ;}
6454 break;
6455
6456 case 447:
6457
6458 { (yyval.ntyp) = idDecl_create (cstring_undefined, qtype_create ((yyvsp[(1) - (1)].ctyp))); ;}
6459 break;
6460
6461 case 448:
6462
6463 {
6464 qtype qt = qtype_unknown ();
6465 qtype_adjustPointers ((yyvsp[(1) - (2)].pointers), qt);
6466 (yyval.ntyp) = idDecl_create (cstring_copy (cscannerHelp_observeLastIdentifier ()), qt);
6467 ;}
6468 break;
6469
6470 case 449:
6471
6472 { (yyval.ntyp) = (yyvsp[(2) - (2)].ntyp); qtype_adjustPointers ((yyvsp[(1) - (2)].pointers), idDecl_getTyp ((yyval.ntyp))); ;}
6473 break;
6474
6475 case 451:
6476
6477 { (yyval.ntyp) = (yyvsp[(2) - (2)].ntyp); qtype_adjustPointers ((yyvsp[(1) - (2)].pointers), idDecl_getTyp ((yyval.ntyp))); ;}
6478 break;
6479
6480 case 452:
6481
6482 { (yyval.entrylist) = handleParamTypeList ((yyvsp[(1) - (1)].entrylist)); ;}
6483 break;
6484
6485 case 453:
6486
6487 { (yyval.entrylist) = handleParamIdList ((yyvsp[(2) - (2)].entrylist)); ;}
6488 break;
6489
6490 case 454:
6491
6492 { (yyval.typequal) = qual_createConst (); ;}
6493 break;
6494
6495 case 455:
6496
6497 { (yyval.typequal) = qual_createRestrict (); ;}
6498 break;
6499
6500 case 456:
6501
6502 { (yyval.typequal) = qual_createVolatile (); ;}
6503 break;
6504
6505 case 457:
6506
6507 { (yyval.tquallist) = qualList_single ((yyvsp[(1) - (1)].typequal)); ;}
6508 break;
6509
6510 case 458:
6511
6512 { (yyval.tquallist) = qualList_add ((yyvsp[(1) - (2)].tquallist), (yyvsp[(2) - (2)].typequal)); ;}
6513 break;
6514
6515 case 459:
6516
6517 { (yyval.pointers) = pointers_create ((yyvsp[(1) - (1)].tok)); ;}
6518 break;
6519
6520 case 460:
6521
6522 { (yyval.pointers) = pointers_createMods ((yyvsp[(1) - (2)].tok), (yyvsp[(2) - (2)].tquallist)); ;}
6523 break;
6524
6525 case 461:
6526
6527 { (yyval.pointers) = pointers_extend (pointers_create ((yyvsp[(1) - (2)].tok)), (yyvsp[(2) - (2)].pointers)); ;}
6528 break;
6529
6530 case 462:
6531
6532 { (yyval.pointers) = pointers_extend (pointers_createMods ((yyvsp[(1) - (3)].tok), (yyvsp[(2) - (3)].tquallist)), (yyvsp[(3) - (3)].pointers)); ;}
6533 break;
6534
6535 case 464:
6536
6537 { (yyval.entrylist) = uentryList_add ((yyvsp[(1) - (3)].entrylist), uentry_makeElipsisMarker ()); ;}
6538 break;
6539
6540 case 465:
6541
6542 { (yyval.entrylist) = uentryList_single (uentry_makeVariableLoc ((yyvsp[(1) - (1)].cname), ctype_int)); ;}
6543 break;
6544
6545 case 466:
6546
6547 { (yyval.entrylist) = uentryList_add ((yyvsp[(1) - (3)].entrylist), uentry_makeVariableLoc ((yyvsp[(3) - (3)].cname), ctype_int)); ;}
6548 break;
6549
6550 case 467:
6551
6552 { (yyval.entrylist) = uentryList_single (uentry_makeElipsisMarker ()); ;}
6553 break;
6554
6555 case 469:
6556
6557 { (yyval.entrylist) = uentryList_add ((yyvsp[(1) - (3)].entrylist), uentry_makeElipsisMarker ()); ;}
6558 break;
6559
6560 case 470:
6561
6562 { storeLoc (); ;}
6563 break;
6564
6565 case 471:
6566
6567 { (yyval.entrylist) = uentryList_single ((yyvsp[(2) - (2)].oentry)); ;}
6568 break;
6569
6570 case 472:
6571
6572 { storeLoc (); ;}
6573 break;
6574
6575 case 473:
6576
6577 { (yyval.entrylist) = uentryList_add ((yyvsp[(1) - (4)].entrylist), (yyvsp[(4) - (4)].oentry)); ;}
6578 break;
6579
6580 case 474:
6581
6582 {
6583 if (isFlipOldStyle ())
6584 {
6585 llparseerror (cstring_makeLiteral ("Inconsistent function parameter syntax (mixing old and new style declaration)"));
6586 }
6587 else
6588 {
6589 setNewStyle ();
6590 }
6591 (yyval.oentry) = makeCurrentParam (idDecl_fixParamBase ((yyvsp[(3) - (4)].ntyp), (yyvsp[(2) - (4)].qtyp)));
6592 ;}
6593 break;
6594
6595 case 475:
6596
6597 {
6598 idDecl tparam = idDecl_create ((yyvsp[(1) - (1)].cname), qtype_unknown ());
6599
6600 if (isNewStyle ())
6601 {
6602 llparseerror (message ("Inconsistent function parameter syntax: %q",
6603 idDecl_unparse (tparam)));
6604 }
6605
6606 setFlipOldStyle ();
6607 (yyval.oentry) = makeCurrentParam (tparam);
6608 idDecl_free (tparam);
6609 ;}
6610 break;
6611
6612 case 477:
6613
6614 { (yyval.qtyp) = qtype_newBase ((yyvsp[(1) - (2)].qtyp), (yyvsp[(2) - (2)].ctyp)); ;}
6615 break;
6616
6617 case 478:
6618
6619 { (yyval.ctyp) = ctype_adjustPointers ((yyvsp[(1) - (1)].pointers), ctype_unknown); ;}
6620 break;
6621
6622 case 480:
6623
6624 { (yyval.ctyp) = ctype_adjustPointers ((yyvsp[(1) - (2)].pointers), (yyvsp[(2) - (2)].ctyp)); ;}
6625 break;
6626
6627 case 481:
6628
6629 { (yyval.ctyp) = ctype_unknown; ;}
6630 break;
6631
6632 case 483:
6633
6634 { (yyval.ctyp) = ctype_expectFunction ((yyvsp[(4) - (5)].ctyp)); ;}
6635 break;
6636
6637 case 484:
6638
6639 { (yyval.ctyp) = ctype_makeArray (ctype_unknown); ;}
6640 break;
6641
6642 case 485:
6643
6644 { (yyval.ctyp) = ctype_makeFixedArray (ctype_unknown, exprNode_getLongValue ((yyvsp[(2) - (3)].expr))); ;}
6645 break;
6646
6647 case 486:
6648
6649 { (yyval.ctyp) = ctype_makeInnerArray ((yyvsp[(1) - (3)].ctyp)); ;}
6650 break;
6651
6652 case 487:
6653
6654 { (yyval.ctyp) = ctype_makeInnerFixedArray ((yyvsp[(1) - (4)].ctyp), exprNode_getLongValue ((yyvsp[(3) - (4)].expr))); ;}
6655 break;
6656
6657 case 488:
6658
6659 { (yyval.ctyp) = ctype_makeFunction (ctype_unknown, uentryList_makeMissingParams ()); ;}
6660 break;
6661
6662 case 489:
6663
6664 { (yyval.ctyp) = ctype_makeParamsFunction (ctype_unknown, (yyvsp[(3) - (4)].entrylist)); ;}
6665 break;
6666
6667 case 490:
6668
6669 { (yyval.ctyp) = ctype_makeFunction ((yyvsp[(1) - (4)].ctyp), uentryList_makeMissingParams ()); ;}
6670 break;
6671
6672 case 491:
6673
6674 { (yyval.ctyp) = ctype_makeParamsFunction ((yyvsp[(1) - (5)].ctyp), (yyvsp[(4) - (5)].entrylist)); ;}
6675 break;
6676
6677 case 502:
6678
6679 { exprNode_revealState ((yyvsp[(3) - (4)].expr)); (yyval.expr) = exprNode_undefined; ;}
6680 break;
6681
6682 case 503:
6683
6684 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
6685 break;
6686
6687 case 506:
6688
6689 { (yyval.expr) = exprNode_concat ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
6690 break;
6691
6692 case 507:
6693
6694 { (yyval.expr) = exprNode_while ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
6695 break;
6696
6697 case 508:
6698
6699 { (yyval.expr) = exprNode_doWhile ((yyvsp[(2) - (7)].expr), (yyvsp[(5) - (7)].expr)); ;}
6700 break;
6701
6702 case 509:
6703
6704 { (yyval.expr) = exprNode_doWhile ((yyvsp[(2) - (6)].expr), (yyvsp[(5) - (6)].expr)); ;}
6705 break;
6706
6707 case 510:
6708
6709 { (yyval.expr) = exprNode_for ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
6710 break;
6711
6712 case 511:
6713
6714 { context_setProtectVars (); ;}
6715 break;
6716
6717 case 512:
6718
6719 { context_sizeofReleaseVars (); ;}
6720 break;
6721
6722 case 513:
6723
6724 { (yyval.expr) = exprNode_forPred ((yyvsp[(3) - (10)].expr), (yyvsp[(5) - (10)].expr), (yyvsp[(8) - (10)].expr));
6725 context_enterForClause ((yyvsp[(5) - (10)].expr)); ;}
6726 break;
6727
6728 case 514:
6729
6730 { setProcessingIterVars ((yyvsp[(1) - (3)].entry)); ;}
6731 break;
6732
6733 case 515:
6734
6735 { (yyval.expr) = exprNode_iterStart ((yyvsp[(1) - (6)].entry), (yyvsp[(5) - (6)].exprlist)); ;}
6736 break;
6737
6738 case 516:
6739
6740 { (yyval.expr) = exprNode_createId ((yyvsp[(1) - (1)].entry)); ;}
6741 break;
6742
6743 case 520:
6744
6745 { (yyval.expr) = (yyvsp[(1) - (2)].expr); DPRINTF (("def stmt: %s", exprNode_unparse ((yyval.expr)))); ;}
6746 break;
6747
6748 case 528:
6749
6750 { (yyval.expr) = (yyvsp[(2) - (3)].expr); ;}
6751 break;
6752
6753 case 529:
6754
6755 { (yyval.expr) = exprNode_makeError (); ;}
6756 break;
6757
6758 case 530:
6759
6760 { exprNode_checkIfPred ((yyvsp[(1) - (1)].expr)); ;}
6761 break;
6762
6763 case 531:
6764
6765 { /* don't: context_exitTrueClause ($1, $2); */
6766 (yyval.expr) = exprNode_if ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr));
6767 ;}
6768 break;
6769
6770 case 532:
6771
6772 { (yyval.expr) = exprNode_createTok ((yyvsp[(2) - (2)].tok)); ;}
6773 break;
6774
6775 case 533:
6776
6777 { (yyval.expr) = exprNode_createTok ((yyvsp[(2) - (2)].tok)); ;}
6778 break;
6779
6780 case 544:
6781
6782 { (yyval.expr) = exprNode_addParens ((yyvsp[(1) - (3)].tok), (yyvsp[(2) - (3)].expr)); ;}
6783 break;
6784
6785 case 547:
6786
6787 { (yyval.expr) = exprNode_makeError (); ;}
6788 break;
6789
6790 case 548:
6791
6792 { (yyval.expr) = exprNode_labelMarker ((yyvsp[(1) - (2)].cname)); ;}
6793 break;
6794
6795 case 549:
6796
6797 { (yyval.expr) = exprNode_notReached ((yyvsp[(2) - (2)].expr)); ;}
6798 break;
6799
6800 case 550:
6801
6802 { ; ;}
6803 break;
6804
6805 case 551:
6806
6807 { ; ;}
6808 break;
6809
6810 case 552:
6811
6812 { context_enterCaseClause ((yyvsp[(2) - (2)].expr)); ;}
6813 break;
6814
6815 case 553:
6816
6817 { (yyval.expr) = exprNode_caseMarker ((yyvsp[(2) - (4)].expr), FALSE); ;}
6818 break;
6819
6820 case 554:
6821
6822 { context_enterCaseClause ((yyvsp[(4) - (4)].expr)); ;}
6823 break;
6824
6825 case 555:
6826
6827 { (yyval.expr) = exprNode_caseMarker ((yyvsp[(4) - (6)].expr), TRUE); ;}
6828 break;
6829
6830 case 556:
6831
6832 { context_enterCaseClause (exprNode_undefined); ;}
6833 break;
6834
6835 case 557:
6836
6837 { (yyval.expr) = exprNode_defaultMarker ((yyvsp[(1) - (3)].tok), FALSE); ;}
6838 break;
6839
6840 case 558:
6841
6842 { context_enterCaseClause (exprNode_undefined); ;}
6843 break;
6844
6845 case 559:
6846
6847 { (yyval.expr) = exprNode_defaultMarker ((yyvsp[(3) - (5)].tok), TRUE); ;}
6848 break;
6849
6850 case 560:
6851
6852 { (yyval.expr) = (yyvsp[(2) - (3)].expr); ;}
6853 break;
6854
6855 case 561:
6856
6857 { (yyval.expr) = (yyvsp[(2) - (2)].expr); context_exitInner ((yyvsp[(2) - (2)].expr)); ;}
6858 break;
6859
6860 case 562:
6861
6862 { (yyval.expr) = (yyvsp[(2) - (3)].expr); ;}
6863 break;
6864
6865 case 563:
6866
6867 { context_enterInnerContext (); ;}
6868 break;
6869
6870 case 564:
6871
6872 { context_exitInnerPlain (); ;}
6873 break;
6874
6875 case 565:
6876
6877 { context_enterStructInnerContext (); ;}
6878 break;
6879
6880 case 566:
6881
6882 { context_exitStructInnerContext (); ;}
6883 break;
6884
6885 case 567:
6886
6887 { context_exitInnerSafe (); ;}
6888 break;
6889
6890 case 568:
6891
6892 { (yyval.expr) = exprNode_createTok ((yyvsp[(1) - (1)].tok)); ;}
6893 break;
6894
6895 case 569:
6896
6897 { (yyval.expr) = exprNode_notReached (exprNode_createTok ((yyvsp[(2) - (2)].tok))); ;}
6898 break;
6899
6900 case 570:
6901
6902 { (yyval.expr) = exprNode_updateLocation ((yyvsp[(1) - (2)].expr), lltok_getLoc ((yyvsp[(2) - (2)].tok))); ;}
6903 break;
6904
6905 case 571:
6906
6907 { (yyval.expr) = exprNode_notReached (exprNode_updateLocation ((yyvsp[(1) - (3)].expr), lltok_getLoc ((yyvsp[(3) - (3)].tok)))); ;}
6908 break;
6909
6910 case 572:
6911
6912 { (yyval.expr) = exprNode_updateLocation ((yyvsp[(1) - (2)].expr), lltok_getLoc ((yyvsp[(2) - (2)].tok))); ;}
6913 break;
6914
6915 case 573:
6916
6917 { (yyval.expr) = exprNode_notReached (exprNode_updateLocation ((yyvsp[(1) - (3)].expr), lltok_getLoc ((yyvsp[(3) - (3)].tok)))); ;}
6918 break;
6919
6920 case 574:
6921
6922 { (yyval.expr) = exprNode_updateLocation (exprNode_concat ((yyvsp[(1) - (3)].expr), (yyvsp[(2) - (3)].expr)), lltok_getLoc ((yyvsp[(3) - (3)].tok))); ;}
6923 break;
6924
6925 case 575:
6926
6927 { (yyval.expr) = exprNode_notReached (exprNode_updateLocation (exprNode_concat ((yyvsp[(1) - (4)].expr), (yyvsp[(2) - (4)].expr)),
6928 lltok_getLoc ((yyvsp[(3) - (4)].tok))));
6929 ;}
6930 break;
6931
6932 case 576:
6933
6934 { (yyval.expr) = exprNode_makeBlock ((yyvsp[(2) - (2)].expr)); ;}
6935 break;
6936
6937 case 577:
6938
6939 { (yyval.expr) = exprNode_createTok ((yyvsp[(2) - (2)].tok)); ;}
6940 break;
6941
6942 case 578:
6943
6944 { (yyval.expr) = exprNode_updateLocation ((yyvsp[(2) - (3)].expr), lltok_getLoc ((yyvsp[(3) - (3)].tok))); ;}
6945 break;
6946
6947 case 579:
6948
6949 { (yyval.expr) = exprNode_updateLocation ((yyvsp[(2) - (3)].expr), lltok_getLoc ((yyvsp[(3) - (3)].tok))); ;}
6950 break;
6951
6952 case 580:
6953
6954 { (yyval.expr) = exprNode_updateLocation (exprNode_concat ((yyvsp[(2) - (4)].expr), (yyvsp[(3) - (4)].expr)), lltok_getLoc ((yyvsp[(4) - (4)].tok))); ;}
6955 break;
6956
6957 case 582:
6958
6959 { (yyval.expr) = exprNode_concat ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
6960 break;
6961
6962 case 583:
6963
6964 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
6965 break;
6966
6967 case 584:
6968
6969 { (yyval.expr) = exprNode_concat ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
6970 break;
6971
6972 case 585:
6973
6974 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
6975 break;
6976
6977 case 586:
6978
6979 { (yyval.expr) = exprNode_concat ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr)); ;}
6980 break;
6981
6982 case 587:
6983
6984 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
6985 break;
6986
6987 case 588:
6988
6989 { (yyval.expr) = (yyvsp[(2) - (4)].expr); ;}
6990 break;
6991
6992 case 589:
6993
6994 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
6995 break;
6996
6997 case 590:
6998
6999 { (yyval.expr) = exprNode_concat ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
7000 break;
7001
7002 case 591:
7003
7004 { (yyval.expr) = exprNode_createTok ((yyvsp[(1) - (1)].tok)); ;}
7005 break;
7006
7007 case 592:
7008
7009 { (yyval.expr) = exprNode_statement ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].tok)); ;}
7010 break;
7011
7012 case 593:
7013
7014 { (yyval.expr) = exprNode_createTok ((yyvsp[(1) - (1)].tok)); ;}
7015 break;
7016
7017 case 594:
7018
7019 { (yyval.expr) = exprNode_statement ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].tok)); ;}
7020 break;
7021
7022 case 595:
7023
7024 { (yyval.expr) = exprNode_checkExpr ((yyvsp[(1) - (1)].expr)); ;}
7025 break;
7026
7027 case 596:
7028
7029 {
7030 exprNode_produceGuards ((yyvsp[(3) - (4)].expr)); context_enterTrueClause ((yyvsp[(3) - (4)].expr));
7031 exprNode_checkIfPred ((yyvsp[(3) - (4)].expr));
7032 (yyval.expr) = (yyvsp[(3) - (4)].expr);
7033 ;}
7034 break;
7035
7036 case 597:
7037
7038 {
7039 context_exitTrueClause ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr));
7040 (yyval.expr) = exprNode_if ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr));
7041 ;}
7042 break;
7043
7044 case 598:
7045
7046 { context_enterFalseClause ((yyvsp[(1) - (3)].expr)); ;}
7047 break;
7048
7049 case 599:
7050
7051 {
7052 context_exitClause ((yyvsp[(1) - (5)].expr), (yyvsp[(2) - (5)].expr), (yyvsp[(5) - (5)].expr));
7053 (yyval.expr) = exprNode_ifelse ((yyvsp[(1) - (5)].expr), (yyvsp[(2) - (5)].expr), (yyvsp[(5) - (5)].expr));
7054 ;}
7055 break;
7056
7057 case 600:
7058
7059 { context_enterSwitch ((yyvsp[(3) - (3)].expr)); ;}
7060 break;
7061
7062 case 601:
7063
7064 { (yyval.expr) = exprNode_switch ((yyvsp[(3) - (6)].expr), (yyvsp[(6) - (6)].expr)); ;}
7065 break;
7066
7067 case 602:
7068
7069 { (yyval.expr) = exprNode_whilePred ((yyvsp[(3) - (4)].expr)); context_enterWhileClause ((yyvsp[(3) - (4)].expr)); ;}
7070 break;
7071
7072 case 603:
7073
7074 { (yyval.expr) = exprNode_whilePred((yyvsp[(3) - (4)].expr)); ;}
7075 break;
7076
7077 case 604:
7078
7079 { context_enterIterClause (); ;}
7080 break;
7081
7082 case 605:
7083
7084 { setProcessingIterVars ((yyvsp[(1) - (4)].entry)); ;}
7085 break;
7086
7087 case 606:
7088
7089 {
7090 (yyval.expr) = exprNode_iter ((yyvsp[(1) - (10)].entry), (yyvsp[(6) - (10)].exprlist), (yyvsp[(8) - (10)].expr), (yyvsp[(9) - (10)].entry));
7091
7092 ;}
7093 break;
7094
7095 case 607:
7096
7097 { (yyval.exprlist) = exprNodeList_singleton ((yyvsp[(1) - (1)].expr)); ;}
7098 break;
7099
7100 case 608:
7101
7102 { nextIterParam (); ;}
7103 break;
7104
7105 case 609:
7106
7107 { (yyval.exprlist) = exprNodeList_push ((yyvsp[(1) - (4)].exprlist), (yyvsp[(4) - (4)].expr)); ;}
7108 break;
7109
7110 case 610:
7111
7112 { (yyval.expr) = exprNode_iterExpr ((yyvsp[(1) - (1)].expr)); ;}
7113 break;
7114
7115 case 611:
7116
7117 { (yyval.expr) = exprNode_iterId ((yyvsp[(1) - (1)].entry)); ;}
7118 break;
7119
7120 case 612:
7121
7122 { uentry ue = cscannerHelp_coerceIterId ((yyvsp[(1) - (1)].cname));
7123
7124 if (uentry_isValid (ue))
7125 {
7126 (yyval.expr) = exprNode_iterId (ue);
7127 }
7128 else
7129 {
7130 (yyval.expr) = exprNode_iterNewId (cstring_copy (cscannerHelp_observeLastIdentifier ()));
7131 }
7132 ;}
7133 break;
7134
7135 case 613:
7136
7137 { (yyval.expr) = exprNode_iterNewId ((yyvsp[(1) - (1)].cname)); ;}
7138 break;
7139
7140 case 615:
7141
7142 { (yyval.expr) = exprNode_combineLiterals ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
7143 break;
7144
7145 case 617:
7146
7147 { (yyval.expr) = exprNode_addParens ((yyvsp[(1) - (3)].tok), (yyvsp[(2) - (3)].expr)); ;}
7148 break;
7149
7150 case 619:
7151
7152 { (yyval.expr) = exprNode_arrayFetch ((yyvsp[(1) - (4)].expr), (yyvsp[(3) - (4)].expr)); ;}
7153 break;
7154
7155 case 620:
7156
7157 { (yyval.expr) = exprNode_functionCall ((yyvsp[(1) - (3)].expr), exprNodeList_new ()); ;}
7158 break;
7159
7160 case 621:
7161
7162 { (yyval.expr) = exprNode_functionCall ((yyvsp[(1) - (4)].expr), (yyvsp[(3) - (4)].exprlist)); ;}
7163 break;
7164
7165 case 622:
7166
7167 { (yyval.expr) = exprNode_vaArg ((yyvsp[(1) - (6)].tok), (yyvsp[(3) - (6)].expr), (yyvsp[(5) - (6)].qtyp)); ;}
7168 break;
7169
7170 case 623:
7171
7172 { (yyval.expr) = exprNode_fieldAccess ((yyvsp[(1) - (5)].expr), (yyvsp[(3) - (5)].tok), (yyvsp[(4) - (5)].cname)); ;}
7173 break;
7174
7175 case 624:
7176
7177 { (yyval.expr) = exprNode_arrowAccess ((yyvsp[(1) - (5)].expr), (yyvsp[(3) - (5)].tok), (yyvsp[(4) - (5)].cname)); ;}
7178 break;
7179
7180 case 625:
7181
7182 { (yyval.expr) = exprNode_postOp ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].tok)); ;}
7183 break;
7184
7185 case 626:
7186
7187 { (yyval.expr) = exprNode_postOp ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].tok)); ;}
7188 break;
7189
7190 case 628:
7191
7192 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
7193 break;
7194
7195 case 629:
7196
7197 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
7198 break;
7199
7200 case 630:
7201
7202 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
7203 break;
7204
7205 case 631:
7206
7207 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
7208 break;
7209
7210 case 632:
7211
7212 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
7213 break;
7214
7215 case 633:
7216
7217 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
7218 break;
7219
7220 case 634:
7221
7222 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
7223 break;
7224
7225 case 635:
7226
7227 { (yyval.expr) = exprNode_preOp ((yyvsp[(2) - (2)].expr), (yyvsp[(1) - (2)].tok)); ;}
7228 break;
7229
7230 case 636:
7231
7232 { (yyval.expr) = (yyvsp[(1) - (1)].expr); ;}
7233 break;
7234
7235 case 638:
7236
7237 { (yyval.expr) = exprNode_cast ((yyvsp[(1) - (4)].tok), (yyvsp[(4) - (4)].expr), (yyvsp[(2) - (4)].qtyp)); ;}
7238 break;
7239
7240 case 640:
7241
7242 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7243 break;
7244
7245 case 641:
7246
7247 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7248 break;
7249
7250 case 642:
7251
7252 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7253 break;
7254
7255 case 644:
7256
7257 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7258 break;
7259
7260 case 645:
7261
7262 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7263 break;
7264
7265 case 647:
7266
7267 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7268 break;
7269
7270 case 648:
7271
7272 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7273 break;
7274
7275 case 650:
7276
7277 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7278 break;
7279
7280 case 651:
7281
7282 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7283 break;
7284
7285 case 652:
7286
7287 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7288 break;
7289
7290 case 653:
7291
7292 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7293 break;
7294
7295 case 655:
7296
7297 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7298 break;
7299
7300 case 656:
7301
7302 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7303 break;
7304
7305 case 658:
7306
7307 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7308 break;
7309
7310 case 660:
7311
7312 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7313 break;
7314
7315 case 662:
7316
7317 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7318 break;
7319
7320 case 664:
7321
7322 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7323 break;
7324
7325 case 666:
7326
7327 { (yyval.expr) = exprNode_op ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7328 break;
7329
7330 case 668:
7331
7332 { context_enterTrueClause ((yyvsp[(1) - (2)].expr)); ;}
7333 break;
7334
7335 case 669:
7336
7337 { context_enterFalseClause ((yyvsp[(1) - (4)].expr)); ;}
7338 break;
7339
7340 case 670:
7341
7342 { (yyval.expr) = exprNode_condIfOmit ((yyvsp[(1) - (6)].expr), (yyvsp[(6) - (6)].expr)); ;}
7343 break;
7344
7345 case 671:
7346
7347 { context_enterTrueClause ((yyvsp[(1) - (2)].expr)); ;}
7348 break;
7349
7350 case 672:
7351
7352 { context_enterFalseClause ((yyvsp[(1) - (5)].expr)); ;}
7353 break;
7354
7355 case 673:
7356
7357 { (yyval.expr) = exprNode_cond ((yyvsp[(1) - (7)].expr), (yyvsp[(4) - (7)].expr), (yyvsp[(7) - (7)].expr)); ;}
7358 break;
7359
7360 case 675:
7361
7362 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7363 break;
7364
7365 case 676:
7366
7367 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7368 break;
7369
7370 case 677:
7371
7372 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7373 break;
7374
7375 case 678:
7376
7377 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7378 break;
7379
7380 case 679:
7381
7382 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7383 break;
7384
7385 case 680:
7386
7387 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7388 break;
7389
7390 case 681:
7391
7392 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7393 break;
7394
7395 case 682:
7396
7397 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7398 break;
7399
7400 case 683:
8f58355a 7401
08cf8642 7402 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7403 break;
d0b80d80 7404
08cf8642 7405 case 684:
d0b80d80 7406
08cf8642 7407 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7408 break;
d0b80d80 7409
08cf8642 7410 case 685:
d0b80d80 7411
08cf8642 7412 { (yyval.expr) = exprNode_assign ((yyvsp[(1) - (3)].expr), (yyvsp[(3) - (3)].expr), (yyvsp[(2) - (3)].tok)); ;}
7413 break;
4287634e 7414
08cf8642 7415 case 686:
4287634e 7416
08cf8642 7417 { (yyval.entry) = (yyvsp[(1) - (1)].entry); ;}
7418 break;
d0b80d80 7419
08cf8642 7420 case 687:
4287634e 7421
08cf8642 7422 { (yyval.entry) = uentry_undefined; ;}
7423 break;
4287634e 7424
08cf8642 7425 case 688:
4287634e 7426
08cf8642 7427 { context_enterDoWhileClause (); (yyval.tok) = (yyvsp[(1) - (1)].tok); ;}
7428 break;
4287634e 7429
08cf8642 7430 case 689:
d0b80d80 7431
08cf8642 7432 { (yyval.expr) = exprNode_while ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); context_exitWhileClause ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
7433 break;
d0b80d80 7434
08cf8642 7435 case 690:
d0b80d80 7436
08cf8642 7437 { (yyval.expr) = exprNode_statement (exprNode_doWhile ((yyvsp[(2) - (7)].expr), (yyvsp[(5) - (7)].expr)), (yyvsp[(7) - (7)].tok)); ;}
7438 break;
d0b80d80 7439
08cf8642 7440 case 691:
8f58355a 7441
08cf8642 7442 { (yyval.expr) = exprNode_for ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); context_exitForClause ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
7443 break;
8f58355a 7444
08cf8642 7445 case 692:
d0b80d80 7446
08cf8642 7447 { (yyval.expr) = exprNode_while ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); context_exitWhileClause ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
7448 break;
8f58355a 7449
08cf8642 7450 case 693:
d0b80d80 7451
08cf8642 7452 { (yyval.expr) = exprNode_statement (exprNode_doWhile ((yyvsp[(2) - (7)].expr), (yyvsp[(5) - (7)].expr)), (yyvsp[(7) - (7)].tok)); ;}
7453 break;
d0b80d80 7454
08cf8642 7455 case 694:
7456
7457 { (yyval.expr) = exprNode_doWhile ((yyvsp[(2) - (6)].expr), (yyvsp[(5) - (6)].expr)); ;}
7458 break;
7459
7460 case 695:
7461
7462 { (yyval.expr) = exprNode_for ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); context_exitForClause ((yyvsp[(1) - (2)].expr), (yyvsp[(2) - (2)].expr)); ;}
7463 break;
7464
7465 case 696:
7466
7467 { (yyval.expr) = exprNode_goto ((yyvsp[(2) - (3)].cname)); ;}
7468 break;
7469
7470 case 697:
7471
7472 { (yyval.expr) = exprNode_continue ((yyvsp[(1) - (2)].tok), BADTOK); ;}
7473 break;
7474
7475 case 698:
7476
7477 { (yyval.expr) = exprNode_continue ((yyvsp[(1) - (3)].tok), QINNERCONTINUE); ;}
7478 break;
7479
7480 case 699:
7481
7482 { (yyval.expr) = exprNode_break ((yyvsp[(1) - (2)].tok), BADTOK); ;}
7483 break;
7484
7485 case 700:
7486
7487 { (yyval.expr) = exprNode_break ((yyvsp[(2) - (3)].tok), QSWITCHBREAK); ;}
7488 break;
7489
7490 case 701:
7491
7492 { (yyval.expr) = exprNode_break ((yyvsp[(2) - (3)].tok), QLOOPBREAK); ;}
7493 break;
7494
7495 case 702:
7496
7497 { (yyval.expr) = exprNode_break ((yyvsp[(2) - (3)].tok), QINNERBREAK); ;}
7498 break;
7499
7500 case 703:
7501
7502 { (yyval.expr) = exprNode_break ((yyvsp[(2) - (3)].tok), QSAFEBREAK); ;}
7503 break;
7504
7505 case 704:
7506
7507 { (yyval.expr) = exprNode_nullReturn ((yyvsp[(1) - (2)].tok)); ;}
7508 break;
7509
7510 case 705:
7511
7512 { (yyval.expr) = exprNode_return ((yyvsp[(2) - (3)].expr)); ;}
7513 break;
7514
7515 case 707:
7516
7517 { ; ;}
7518 break;
7519
7520 case 709:
7521
7522 { ; ;}
7523 break;
7524
7525 case 712:
7526
7527 { (yyval.cname) = uentry_getName ((yyvsp[(1) - (1)].entry)); ;}
7528 break;
7529
7530 case 713:
7531
7532 { (yyval.cname) = uentry_getName ((yyvsp[(1) - (1)].entry)); ;}
7533 break;
7534
7535 case 714:
7536
7537 { (yyval.cname) = uentry_getName ((yyvsp[(1) - (1)].entry)); ;}
7538 break;
7539
7540 case 715:
7541
7542 { (yyval.cname) = (yyvsp[(1) - (1)].cname); ;}
7543 break;
7544
7545 case 717:
7546
7547 { (yyval.ctyp) = ctype_unknown; ;}
7548 break;
7549
7550 case 718:
7551
7552 { (yyval.ctyp) = exprNode_getType ((yyvsp[(3) - (4)].expr)); exprNode_free ((yyvsp[(3) - (4)].expr)); ;}
7553 break;
7554
7555 case 719:
7556
7557 { (yyval.ctyp) = qtype_getType ((yyvsp[(3) - (4)].qtyp)); ;}
7558 break;
7559
7560
7561/* Line 1267 of yacc.c. */
7562
7563 default: break;
368f75ae 7564 }
08cf8642 7565 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
7566
7567 YYPOPSTACK (yylen);
7568 yylen = 0;
7569 YY_STACK_PRINT (yyss, yyssp);
d0b80d80 7570
7571 *++yyvsp = yyval;
08cf8642 7572
d0b80d80 7573
7574 /* Now `shift' the result of the reduction. Determine what state
7575 that goes to, based on the state we popped back to and the rule
7576 number reduced by. */
7577
7578 yyn = yyr1[yyn];
7579
08cf8642 7580 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
7581 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
d0b80d80 7582 yystate = yytable[yystate];
7583 else
08cf8642 7584 yystate = yydefgoto[yyn - YYNTOKENS];
d0b80d80 7585
7586 goto yynewstate;
7587
7588
7589/*------------------------------------.
7590| yyerrlab -- here on detecting error |
7591`------------------------------------*/
7592yyerrlab:
7593 /* If not already recovering from an error, report this error. */
7594 if (!yyerrstatus)
7595 {
7596 ++yynerrs;
08cf8642 7597#if ! YYERROR_VERBOSE
7598 yyerror (YY_("syntax error"));
7599#else
7600 {
7601 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
7602 if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
7603 {
7604 YYSIZE_T yyalloc = 2 * yysize;
7605 if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
7606 yyalloc = YYSTACK_ALLOC_MAXIMUM;
7607 if (yymsg != yymsgbuf)
d0b80d80 7608 YYSTACK_FREE (yymsg);
08cf8642 7609 yymsg = (char *) YYSTACK_ALLOC (yyalloc);
7610 if (yymsg)
7611 yymsg_alloc = yyalloc;
7612 else
7613 {
7614 yymsg = yymsgbuf;
7615 yymsg_alloc = sizeof yymsgbuf;
7616 }
7617 }
7618
7619 if (0 < yysize && yysize <= yymsg_alloc)
7620 {
7621 (void) yysyntax_error (yymsg, yystate, yychar);
7622 yyerror (yymsg);
7623 }
7624 else
7625 {
7626 yyerror (YY_("syntax error"));
7627 if (yysize != 0)
7628 goto yyexhaustedlab;
7629 }
7630 }
7631#endif
d0b80d80 7632 }
d0b80d80 7633
7634
08cf8642 7635
d0b80d80 7636 if (yyerrstatus == 3)
7637 {
08cf8642 7638 /* If just tried and failed to reuse look-ahead token after an
d0b80d80 7639 error, discard it. */
7640
08cf8642 7641 if (yychar <= YYEOF)
7642 {
7643 /* Return failure if at end of input. */
7644 if (yychar == YYEOF)
7645 YYABORT;
7646 }
7647 else
7648 {
7649 yydestruct ("Error: discarding",
7650 yytoken, &yylval);
7651 yychar = YYEMPTY;
7652 }
d0b80d80 7653 }
7654
08cf8642 7655 /* Else will try to reuse look-ahead token after shifting the error
d0b80d80 7656 token. */
08cf8642 7657 goto yyerrlab1;
d0b80d80 7658
368f75ae 7659
08cf8642 7660/*---------------------------------------------------.
7661| yyerrorlab -- error raised explicitly by YYERROR. |
7662`---------------------------------------------------*/
7663yyerrorlab:
368f75ae 7664
08cf8642 7665 /* Pacify compilers like GCC when the user code never invokes
7666 YYERROR and the label yyerrorlab therefore never appears in user
7667 code. */
7668 if (/*CONSTCOND*/ 0)
7669 goto yyerrorlab;
368f75ae 7670
08cf8642 7671 /* Do not reclaim the symbols of the rule which action triggered
7672 this YYERROR. */
7673 YYPOPSTACK (yylen);
7674 yylen = 0;
7675 YY_STACK_PRINT (yyss, yyssp);
7676 yystate = *yyssp;
7677 goto yyerrlab1;
d0b80d80 7678
d0b80d80 7679
08cf8642 7680/*-------------------------------------------------------------.
7681| yyerrlab1 -- common code for both syntax error and YYERROR. |
7682`-------------------------------------------------------------*/
7683yyerrlab1:
7684 yyerrstatus = 3; /* Each real token shifted decrements this. */
368f75ae 7685
08cf8642 7686 for (;;)
d0b80d80 7687 {
08cf8642 7688 yyn = yypact[yystate];
7689 if (yyn != YYPACT_NINF)
7690 {
7691 yyn += YYTERROR;
7692 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
7693 {
7694 yyn = yytable[yyn];
7695 if (0 < yyn)
7696 break;
7697 }
7698 }
d0b80d80 7699
08cf8642 7700 /* Pop the current state because it cannot handle the error token. */
7701 if (yyssp == yyss)
7702 YYABORT;
d0b80d80 7703
d0b80d80 7704
08cf8642 7705 yydestruct ("Error: popping",
7706 yystos[yystate], yyvsp);
7707 YYPOPSTACK (1);
7708 yystate = *yyssp;
7709 YY_STACK_PRINT (yyss, yyssp);
d0b80d80 7710 }
d0b80d80 7711
7712 if (yyn == YYFINAL)
7713 YYACCEPT;
7714
d0b80d80 7715 *++yyvsp = yylval;
08cf8642 7716
7717
7718 /* Shift the error token. */
7719 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
d0b80d80 7720
7721 yystate = yyn;
7722 goto yynewstate;
7723
7724
7725/*-------------------------------------.
7726| yyacceptlab -- YYACCEPT comes here. |
7727`-------------------------------------*/
7728yyacceptlab:
7729 yyresult = 0;
7730 goto yyreturn;
7731
7732/*-----------------------------------.
7733| yyabortlab -- YYABORT comes here. |
7734`-----------------------------------*/
7735yyabortlab:
7736 yyresult = 1;
7737 goto yyreturn;
7738
08cf8642 7739#ifndef yyoverflow
7740/*-------------------------------------------------.
7741| yyexhaustedlab -- memory exhaustion comes here. |
7742`-------------------------------------------------*/
7743yyexhaustedlab:
7744 yyerror (YY_("memory exhausted"));
d0b80d80 7745 yyresult = 2;
7746 /* Fall through. */
08cf8642 7747#endif
d0b80d80 7748
7749yyreturn:
08cf8642 7750 if (yychar != YYEOF && yychar != YYEMPTY)
7751 yydestruct ("Cleanup: discarding lookahead",
7752 yytoken, &yylval);
7753 /* Do not reclaim the symbols of the rule which action triggered
7754 this YYABORT or YYACCEPT. */
7755 YYPOPSTACK (yylen);
7756 YY_STACK_PRINT (yyss, yyssp);
7757 while (yyssp != yyss)
7758 {
7759 yydestruct ("Cleanup: popping",
7760 yystos[*yyssp], yyvsp);
7761 YYPOPSTACK (1);
7762 }
d0b80d80 7763#ifndef yyoverflow
7764 if (yyss != yyssa)
7765 YYSTACK_FREE (yyss);
7766#endif
08cf8642 7767#if YYERROR_VERBOSE
7768 if (yymsg != yymsgbuf)
7769 YYSTACK_FREE (yymsg);
7770#endif
7771 /* Make sure YYID is used. */
7772 return YYID (yyresult);
d0b80d80 7773}
7774
7775
08cf8642 7776
7777
7778
d0b80d80 7779/*@-redecl@*/ /*@-namechecks@*/
7780extern char *yytext;
7781/*@=redecl@*/ /*@=namechecks@*/
7782
7783# include "bison.reset"
7784
7785void yyerror (/*@unused@*/ char *s)
7786{
7787 static bool givehint = FALSE;
7788
7789 if (context_inIterDef ())
7790 {
7791 llerror (FLG_SYNTAX, message ("Iter syntax not parseable: %s",
7792 context_inFunctionName ()));
7793 }
7794 else if (context_inIterEnd ())
7795 {
7796 llerror (FLG_SYNTAX, message ("Iter finalizer syntax not parseable: %s",
7797 context_inFunctionName ()));
7798 }
7799 else if (context_inMacro ())
7800 {
7801 llerror (FLG_SYNTAX, message ("Macro syntax not parseable: %s",
7802 context_inFunctionName ()));
7803
7804 if (context_inUnknownMacro ())
7805 {
7806 if (!givehint)
7807 {
7808 llhint (cstring_makeLiteral
7809 ("Precede macro definition with /*@notfunction@*/ "
7810 "to suppress checking and force expansion"));
7811 givehint = TRUE;
7812 }
7813 }
7814
16c024b5 7815 cscannerHelp_swallowMacro ();
d0b80d80 7816 context_exitAllClausesQuiet ();
7817 }
7818 else
7819 {
7820 llparseerror (cstring_undefined);
7821 }
7822}
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
08cf8642 7835
c05aefaa 7836/*
7837** Resets all flags in bison.head
7838*/
7839
885824d3 7840
c05aefaa 7841/*@=allmacros@*/
7842/*@=boolint@*/
7843/*@=charint@*/
7844/*@=macroparams@*/
7845/*@=macroundef@*/
7846/*@=unreachable@*/
7847/*@=macrospec@*/
7848/*@=varuse@*/
7849/*@=ignorequals@*/
7850/*@=macrostmt@*/
7851/*@=noeffect@*/
7852/*@=shadow@*/
7853/*@=exitarg@*/
7854/*@=macroredef@*/
7855/*@=uniondef@*/
7856/*@=compdef@*/
7857/*@=matchfields@*/
7858/*@=exportlocal@*/
7859/*@=evalorderuncon@*/
7860/*@=exportheader@*/
7861/*@=typeuse@*/
7862/*@=redecl@*/
7863/*@=redef@*/
7864/*@=noparams@*/
7865/*@=ansireserved@*/
7866/*@=fielduse@*/
7867/*@=ifblock@*/
7868/*@=elseifcomplete@*/
7869/*@=whileblock@*/
7870/*@=forblock@*/
7871/*@=branchstate@*/
7872/*@=readonlytrans@*/
7873/*@=namechecks@*/
7874/*@=usedef@*/
7875/*@=systemunrecog@*/
7876/*@=dependenttrans@*/
7877/*@=unqualifiedtrans@*/
7878/*@=declundef@*/
7879
7880
7881/*drl added 11/27/2001*/
bb7c2085 7882/*@=bounds@*/
1d91681f 7883
7884/*drl added 12/11/2002*/
7885/*@=type@*/
a9ec3280 7886
7887/*@=enummemuse@*/
This page took 1.320075 seconds and 5 git commands to generate.