1 /* A Bison parser, made by GNU Bison 2.4.2. */
3 /* Skeleton implementation for Bison's Yacc-like parsers in C
5 Copyright (C) 1984, 1989-1990, 2000-2006, 2009-2010 Free Software
8 This program is free software: you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation, either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
21 /* As a special exception, you may create a larger work that contains
22 part or all of the Bison parser skeleton and distribute that work
23 under terms of your choice, so long as that work isn't itself a
24 parser generator using the skeleton or a modified version thereof
25 as a parser skeleton. Alternatively, if you modify or redistribute
26 the parser skeleton itself, you may (at your option) remove this
27 special exception, which will cause the skeleton and the resulting
28 Bison output files to be licensed under the GNU General Public
29 License without this special exception.
31 This special exception was added by the Free Software Foundation in
32 version 2.2 of Bison. */
34 /* C LALR(1) parser skeleton written by Richard Stallman, by
35 simplifying the original so-called "semantic" parser. */
37 /* All symbols defined below should begin with yy or YY, to avoid
38 infringing on user name space. This should be done even for local
39 variables, as they might otherwise be expanded by user macros.
40 There are some unavoidable exceptions within include files to
41 define necessary library symbols; they are noted "INFRINGES ON
42 USER NAME SPACE" below. */
44 /* Identify Bison output. */
48 #define YYBISON_VERSION "2.4.2"
51 #define YYSKELETON_NAME "yacc.c"
62 /* Using locations. */
63 #define YYLSP_NEEDED 1
67 /* Copy the first part of user declarations. */
69 /* Line 189 of yacc.c */
70 #line 1 "expression.y"
75 #define YYLTYPE Location
78 #ifndef YYLLOC_DEFAULT
79 # define YYLLOC_DEFAULT(Current, Rhs, N) \
80 (Current).start = (Rhs)[1].start; \
81 (Current).end = (Rhs)[N].end;
84 Expression parsedExpression;
86 #define yyparse expression_yyparse
87 #define yylval expression_yylval
88 #define yychar expression_yychar
89 #define yydebug expression_yydebug
90 #define yynerrs expression_yynerrs
91 #define yylloc expression_yylloc
93 // #define PRECOMPILER
94 extern File fileInput;
105 /* Line 189 of yacc.c */
106 #line 107 "expression.ec"
108 /* Enabling traces. */
113 /* Enabling verbose error messages. */
114 #ifdef YYERROR_VERBOSE
115 # undef YYERROR_VERBOSE
116 # define YYERROR_VERBOSE 1
118 # define YYERROR_VERBOSE 0
121 /* Enabling the token table. */
122 #ifndef YYTOKEN_TABLE
123 # define YYTOKEN_TABLE 0
130 /* Put the tokens into the symbol table, so that GDB and other debuggers
135 STRING_LITERAL = 260,
222 CLASS_DESIGNER = 347,
223 CLASS_NO_EXPANSION = 348,
226 CLASS_DEFAULT_PROPERTY = 351,
227 PROPERTY_CATEGORY = 352,
229 CLASS_PROPERTY = 354,
244 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
245 typedef union YYSTYPE
248 /* Line 214 of yacc.c */
249 #line 37 "expression.y"
253 SpecifierType specifierType;
258 Enumerator enumerator;
259 Declarator declarator;
261 Initializer initializer;
262 InitDeclarator initDeclarator;
264 Declaration declaration;
266 FunctionDefinition function;
270 Instantiation instance;
271 MembersInit membersInit;
272 MemberInit memberInit;
273 ClassFunction classFunction;
274 ClassDefinition _class;
282 /* Line 214 of yacc.c */
283 #line 284 "expression.ec"
285 # define YYSTYPE_IS_TRIVIAL 1
286 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
287 # define YYSTYPE_IS_DECLARED 1
290 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
291 typedef struct YYLTYPE
298 # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
299 # define YYLTYPE_IS_DECLARED 1
300 # define YYLTYPE_IS_TRIVIAL 1
304 /* Copy the second part of user declarations. */
307 /* Line 264 of yacc.c */
308 #line 309 "expression.ec"
315 typedef YYTYPE_UINT8 yytype_uint8;
317 typedef unsigned char yytype_uint8;
321 typedef YYTYPE_INT8 yytype_int8;
322 #elif (defined __STDC__ || defined __C99__FUNC__ \
323 || defined __cplusplus || defined _MSC_VER)
324 typedef signed char yytype_int8;
326 typedef short int yytype_int8;
330 typedef YYTYPE_UINT16 yytype_uint16;
332 typedef unsigned short int yytype_uint16;
336 typedef YYTYPE_INT16 yytype_int16;
338 typedef short int yytype_int16;
342 # ifdef __SIZE_TYPE__
343 # define YYSIZE_T __SIZE_TYPE__
344 # elif defined size_t
345 # define YYSIZE_T size_t
346 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
347 || defined __cplusplus || defined _MSC_VER)
348 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
349 # define YYSIZE_T size_t
351 # define YYSIZE_T unsigned int
355 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
358 # if defined YYENABLE_NLS && YYENABLE_NLS
360 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
361 # define YY_(msgid) dgettext ("bison-runtime", msgid)
365 # define YY_(msgid) msgid
369 /* Suppress unused-variable warnings by "using" E. */
370 #if ! defined lint || defined __GNUC__
371 # define YYUSE(e) ((void) (e))
373 # define YYUSE(e) /* empty */
376 /* Identity function, used to suppress warnings about constant conditions. */
380 #if (defined __STDC__ || defined __C99__FUNC__ \
381 || defined __cplusplus || defined _MSC_VER)
394 #if ! defined yyoverflow || YYERROR_VERBOSE
396 /* The parser invokes alloca or malloc; define the necessary symbols. */
398 # ifdef YYSTACK_USE_ALLOCA
399 # if YYSTACK_USE_ALLOCA
401 # define YYSTACK_ALLOC __builtin_alloca
402 # elif defined __BUILTIN_VA_ARG_INCR
403 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
405 # define YYSTACK_ALLOC __alloca
406 # elif defined _MSC_VER
407 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
408 # define alloca _alloca
410 # define YYSTACK_ALLOC alloca
411 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
412 || defined __cplusplus || defined _MSC_VER)
413 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
422 # ifdef YYSTACK_ALLOC
423 /* Pacify GCC's `empty if-body' warning. */
424 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
425 # ifndef YYSTACK_ALLOC_MAXIMUM
426 /* The OS might guarantee only one guard page at the bottom of the stack,
427 and a page size can be as small as 4096 bytes. So we cannot safely
428 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
429 to allow for a few compiler-allocated temporary stack slots. */
430 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
433 # define YYSTACK_ALLOC YYMALLOC
434 # define YYSTACK_FREE YYFREE
435 # ifndef YYSTACK_ALLOC_MAXIMUM
436 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
438 # if (defined __cplusplus && ! defined _STDLIB_H \
439 && ! ((defined YYMALLOC || defined malloc) \
440 && (defined YYFREE || defined free)))
441 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
447 # define YYMALLOC malloc
448 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
449 || defined __cplusplus || defined _MSC_VER)
450 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
455 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
456 || defined __cplusplus || defined _MSC_VER)
457 void free (void *); /* INFRINGES ON USER NAME SPACE */
461 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
464 #if (! defined yyoverflow \
465 && (! defined __cplusplus \
466 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
467 && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
469 /* A type that is properly aligned for any stack member. */
472 yytype_int16 yyss_alloc;
477 /* The size of the maximum gap between one aligned stack and the next. */
478 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
480 /* The size of an array large to enough to hold all stacks, each with
482 # define YYSTACK_BYTES(N) \
483 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
484 + 2 * YYSTACK_GAP_MAXIMUM)
486 /* Copy COUNT objects from FROM to TO. The source and destination do
489 # if defined __GNUC__ && 1 < __GNUC__
490 # define YYCOPY(To, From, Count) \
491 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
493 # define YYCOPY(To, From, Count) \
497 for (yyi = 0; yyi < (Count); yyi++) \
498 (To)[yyi] = (From)[yyi]; \
504 /* Relocate STACK from its old location to the new one. The
505 local variables YYSIZE and YYSTACKSIZE give the old and new number of
506 elements in the stack, and YYPTR gives the new location of the
507 stack. Advance YYPTR to a properly aligned location for the next
509 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
512 YYSIZE_T yynewbytes; \
513 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
514 Stack = &yyptr->Stack_alloc; \
515 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
516 yyptr += yynewbytes / sizeof (*yyptr); \
522 /* YYFINAL -- State number of the termination state. */
524 /* YYLAST -- Last index in YYTABLE. */
527 /* YYNTOKENS -- Number of terminals. */
528 #define YYNTOKENS 134
529 /* YYNNTS -- Number of nonterminals. */
531 /* YYNRULES -- Number of rules. */
533 /* YYNRULES -- Number of states. */
534 #define YYNSTATES 711
536 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
538 #define YYMAXUTOK 363
540 #define YYTRANSLATE(YYX) \
541 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
543 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
544 static const yytype_uint8 yytranslate[] =
546 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
547 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
548 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
549 2, 2, 2, 121, 2, 2, 111, 123, 116, 2,
550 109, 110, 117, 118, 115, 119, 112, 122, 2, 2,
551 2, 2, 2, 2, 2, 2, 2, 2, 129, 131,
552 124, 130, 125, 128, 2, 2, 2, 2, 2, 2,
553 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
554 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
555 2, 113, 2, 114, 126, 2, 2, 2, 2, 2,
556 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
557 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
558 2, 2, 2, 132, 127, 133, 120, 2, 2, 2,
559 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
560 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
561 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
562 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
563 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
564 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
565 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
566 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
567 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
568 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
569 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
570 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
571 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
572 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
573 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
574 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
575 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
576 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
577 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
578 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
579 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
580 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
581 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
586 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
588 static const yytype_uint16 yyprhs[] =
590 0, 0, 3, 5, 7, 11, 13, 15, 17, 19,
591 22, 27, 30, 37, 43, 50, 56, 64, 71, 79,
592 86, 88, 90, 92, 97, 101, 106, 110, 114, 117,
593 120, 122, 127, 131, 136, 140, 144, 147, 150, 152,
594 154, 158, 162, 165, 168, 171, 176, 179, 184, 186,
595 188, 190, 192, 194, 196, 198, 200, 202, 204, 206,
596 208, 213, 215, 219, 223, 227, 229, 233, 237, 239,
597 243, 247, 249, 253, 257, 261, 265, 267, 271, 275,
598 277, 281, 283, 287, 289, 293, 295, 299, 301, 305,
599 307, 313, 315, 319, 323, 325, 327, 329, 331, 333,
600 335, 337, 339, 341, 343, 345, 347, 351, 353, 356,
601 360, 363, 369, 371, 374, 376, 379, 381, 384, 386,
602 389, 391, 394, 396, 399, 401, 404, 406, 409, 411,
603 414, 416, 419, 421, 424, 426, 429, 431, 434, 436,
604 439, 441, 444, 446, 449, 451, 454, 456, 459, 461,
605 465, 467, 471, 473, 475, 477, 479, 481, 483, 485,
606 487, 489, 491, 493, 495, 497, 499, 501, 503, 505,
607 507, 509, 511, 513, 515, 517, 519, 521, 523, 525,
608 527, 529, 534, 536, 538, 540, 542, 544, 546, 548,
609 550, 552, 554, 556, 558, 560, 562, 564, 566, 571,
610 573, 579, 584, 589, 593, 599, 602, 605, 607, 609,
611 611, 614, 618, 620, 624, 634, 644, 652, 660, 666,
612 677, 688, 697, 706, 713, 722, 731, 738, 745, 750,
613 760, 770, 778, 786, 792, 796, 799, 802, 805, 807,
614 810, 812, 814, 816, 820, 822, 825, 828, 832, 838,
615 841, 844, 849, 855, 863, 871, 877, 879, 883, 885,
616 889, 893, 896, 900, 904, 908, 913, 918, 921, 925,
617 929, 934, 938, 941, 945, 949, 954, 956, 958, 961,
618 964, 967, 971, 973, 975, 978, 981, 984, 988, 990,
619 993, 997, 999, 1003, 1008, 1012, 1017, 1019, 1022, 1025,
620 1029, 1033, 1035, 1037, 1040, 1043, 1046, 1050, 1054, 1057,
621 1059, 1062, 1064, 1067, 1070, 1074, 1076, 1080, 1082, 1086,
622 1089, 1092, 1094, 1096, 1100, 1102, 1105, 1107, 1111, 1116,
623 1118, 1120, 1122, 1126, 1128, 1130, 1132, 1134, 1136, 1138,
624 1142, 1147, 1151, 1153, 1156, 1158, 1161, 1164, 1166, 1168,
625 1171, 1173, 1176, 1180, 1182, 1185, 1191, 1199, 1205, 1211,
626 1219, 1226, 1234, 1239, 1245, 1250, 1254, 1257, 1260, 1263,
627 1267, 1269, 1275, 1280, 1285, 1289, 1294, 1298, 1302, 1305,
628 1308, 1310, 1314, 1319, 1323, 1326, 1329, 1332, 1335, 1338,
629 1341, 1344, 1347, 1351, 1353, 1355, 1359, 1362, 1364, 1366,
630 1369, 1372, 1374, 1377, 1379, 1381, 1384
633 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
634 static const yytype_int16 yyrhs[] =
636 238, 0, -1, 3, -1, 137, -1, 109, 160, 110,
637 -1, 135, -1, 224, -1, 4, -1, 222, -1, 111,
638 222, -1, 111, 222, 112, 222, -1, 109, 110, -1,
639 71, 164, 194, 113, 161, 114, -1, 71, 164, 113,
640 161, 114, -1, 102, 164, 194, 113, 161, 114, -1,
641 102, 164, 113, 161, 114, -1, 72, 161, 166, 194,
642 113, 161, 114, -1, 72, 161, 166, 113, 161, 114,
643 -1, 103, 161, 166, 194, 113, 161, 114, -1, 103,
644 161, 166, 113, 161, 114, -1, 1, -1, 225, -1,
645 136, -1, 139, 113, 160, 114, -1, 139, 109, 110,
646 -1, 139, 109, 141, 110, -1, 139, 112, 135, -1,
647 139, 7, 135, -1, 139, 8, -1, 139, 9, -1,
648 137, -1, 140, 113, 160, 114, -1, 140, 109, 110,
649 -1, 140, 109, 141, 110, -1, 140, 112, 135, -1,
650 140, 7, 135, -1, 140, 8, -1, 140, 9, -1,
651 158, -1, 138, -1, 141, 115, 158, -1, 141, 115,
652 138, -1, 8, 143, -1, 9, 143, -1, 145, 146,
653 -1, 6, 109, 143, 110, -1, 6, 144, -1, 6,
654 109, 207, 110, -1, 142, -1, 139, -1, 142, -1,
655 140, -1, 116, -1, 117, -1, 118, -1, 119, -1,
656 120, -1, 121, -1, 73, -1, 143, -1, 109, 207,
657 110, 146, -1, 146, -1, 147, 117, 146, -1, 147,
658 122, 146, -1, 147, 123, 146, -1, 147, -1, 148,
659 118, 147, -1, 148, 119, 147, -1, 148, -1, 149,
660 10, 148, -1, 149, 11, 148, -1, 149, -1, 150,
661 124, 149, -1, 150, 125, 149, -1, 150, 12, 149,
662 -1, 150, 13, 149, -1, 150, -1, 151, 14, 150,
663 -1, 151, 15, 150, -1, 151, -1, 152, 116, 151,
664 -1, 152, -1, 153, 126, 152, -1, 153, -1, 154,
665 127, 153, -1, 154, -1, 155, 16, 154, -1, 155,
666 -1, 156, 17, 155, -1, 156, -1, 156, 128, 160,
667 129, 157, -1, 157, -1, 143, 159, 158, -1, 143,
668 159, 138, -1, 130, -1, 18, -1, 19, -1, 20,
669 -1, 21, -1, 22, -1, 23, -1, 24, -1, 25,
670 -1, 26, -1, 27, -1, 158, -1, 160, 115, 158,
671 -1, 157, -1, 164, 131, -1, 164, 167, 131, -1,
672 223, 131, -1, 77, 135, 130, 161, 131, -1, 172,
673 -1, 163, 172, -1, 175, -1, 163, 175, -1, 188,
674 -1, 163, 188, -1, 177, -1, 163, 177, -1, 169,
675 -1, 164, 169, -1, 172, -1, 164, 172, -1, 175,
676 -1, 164, 175, -1, 188, -1, 164, 188, -1, 177,
677 -1, 164, 177, -1, 169, -1, 165, 169, -1, 172,
678 -1, 165, 172, -1, 175, -1, 165, 175, -1, 173,
679 -1, 165, 173, -1, 169, -1, 166, 169, -1, 172,
680 -1, 166, 172, -1, 176, -1, 166, 176, -1, 177,
681 -1, 166, 177, -1, 188, -1, 166, 188, -1, 168,
682 -1, 167, 115, 168, -1, 195, -1, 195, 130, 208,
683 -1, 29, -1, 30, -1, 31, -1, 32, -1, 33,
684 -1, 74, -1, 171, -1, 79, -1, 44, -1, 45,
685 -1, 75, -1, 174, -1, 28, -1, 46, -1, 34,
686 -1, 35, -1, 36, -1, 37, -1, 38, -1, 47,
687 -1, 39, -1, 42, -1, 43, -1, 40, -1, 41,
688 -1, 85, -1, 178, -1, 187, -1, 173, -1, 100,
689 109, 173, 110, -1, 66, -1, 46, -1, 34, -1,
690 35, -1, 36, -1, 37, -1, 38, -1, 47, -1,
691 39, -1, 42, -1, 43, -1, 40, -1, 41, -1,
692 178, -1, 187, -1, 174, -1, 100, 109, 173, 110,
693 -1, 66, -1, 179, 135, 132, 180, 133, -1, 179,
694 132, 180, 133, -1, 179, 135, 132, 133, -1, 179,
695 132, 133, -1, 179, 174, 132, 180, 133, -1, 179,
696 135, -1, 179, 174, -1, 48, -1, 49, -1, 184,
697 -1, 180, 184, -1, 139, 130, 209, -1, 181, -1,
698 182, 115, 181, -1, 68, 165, 135, 132, 69, 217,
699 70, 217, 133, -1, 68, 165, 135, 132, 70, 217,
700 69, 217, 133, -1, 68, 165, 135, 132, 69, 217,
701 133, -1, 68, 165, 135, 132, 70, 217, 133, -1,
702 68, 165, 135, 132, 133, -1, 68, 165, 193, 135,
703 132, 69, 217, 70, 217, 133, -1, 68, 165, 193,
704 135, 132, 70, 217, 69, 217, 133, -1, 68, 165,
705 193, 135, 132, 69, 217, 133, -1, 68, 165, 193,
706 135, 132, 70, 217, 133, -1, 68, 165, 193, 135,
707 132, 133, -1, 68, 165, 132, 69, 217, 70, 217,
708 133, -1, 68, 165, 132, 70, 217, 69, 217, 133,
709 -1, 68, 165, 132, 69, 217, 133, -1, 68, 165,
710 132, 70, 217, 133, -1, 68, 165, 132, 133, -1,
711 68, 165, 193, 132, 69, 217, 70, 217, 133, -1,
712 68, 165, 193, 132, 70, 217, 69, 217, 133, -1,
713 68, 165, 193, 132, 69, 217, 133, -1, 68, 165,
714 193, 132, 70, 217, 133, -1, 68, 165, 193, 132,
715 133, -1, 164, 185, 131, -1, 164, 131, -1, 224,
716 131, -1, 223, 131, -1, 230, -1, 182, 131, -1,
717 183, -1, 131, -1, 186, -1, 185, 115, 186, -1,
718 195, -1, 195, 171, -1, 129, 161, -1, 195, 129,
719 161, -1, 195, 129, 161, 129, 161, -1, 50, 135,
720 -1, 50, 174, -1, 50, 132, 189, 133, -1, 50,
721 135, 132, 189, 133, -1, 50, 135, 132, 189, 131,
722 180, 133, -1, 50, 174, 132, 189, 131, 180, 133,
723 -1, 50, 174, 132, 189, 133, -1, 190, -1, 189,
724 115, 190, -1, 135, -1, 135, 130, 161, -1, 109,
725 193, 110, -1, 113, 114, -1, 113, 161, 114, -1,
726 113, 173, 114, -1, 191, 113, 114, -1, 191, 113,
727 161, 114, -1, 191, 113, 173, 114, -1, 109, 110,
728 -1, 109, 203, 110, -1, 191, 109, 110, -1, 191,
729 109, 203, 110, -1, 109, 194, 110, -1, 109, 110,
730 -1, 109, 203, 110, -1, 192, 109, 110, -1, 192,
731 109, 203, 110, -1, 202, -1, 191, -1, 202, 191,
732 -1, 170, 202, -1, 170, 191, -1, 170, 202, 191,
733 -1, 202, -1, 192, -1, 202, 192, -1, 170, 202,
734 -1, 170, 192, -1, 170, 202, 192, -1, 198, -1,
735 202, 198, -1, 170, 202, 198, -1, 135, -1, 109,
736 195, 110, -1, 196, 113, 161, 114, -1, 196, 113,
737 114, -1, 196, 113, 173, 114, -1, 200, -1, 202,
738 200, -1, 170, 200, -1, 170, 202, 200, -1, 202,
739 170, 200, -1, 200, -1, 196, -1, 170, 200, -1,
740 170, 196, -1, 196, 109, -1, 199, 203, 110, -1,
741 199, 206, 110, -1, 199, 110, -1, 172, -1, 201,
742 172, -1, 117, -1, 117, 201, -1, 117, 202, -1,
743 117, 201, 202, -1, 204, -1, 204, 115, 51, -1,
744 205, -1, 204, 115, 205, -1, 164, 195, -1, 164,
745 193, -1, 164, -1, 135, -1, 206, 115, 135, -1,
746 163, -1, 163, 193, -1, 158, -1, 132, 210, 133,
747 -1, 132, 210, 115, 133, -1, 157, -1, 138, -1,
748 208, -1, 210, 115, 208, -1, 212, -1, 217, -1,
749 218, -1, 219, -1, 220, -1, 221, -1, 135, 129,
750 211, -1, 52, 161, 129, 211, -1, 53, 129, 211,
751 -1, 162, -1, 213, 162, -1, 211, -1, 214, 211,
752 -1, 214, 162, -1, 214, -1, 213, -1, 213, 214,
753 -1, 132, -1, 132, 133, -1, 216, 215, 133, -1,
754 131, -1, 160, 131, -1, 54, 109, 160, 110, 211,
755 -1, 54, 109, 160, 110, 211, 64, 211, -1, 55,
756 109, 160, 110, 211, -1, 56, 109, 160, 110, 211,
757 -1, 57, 211, 56, 109, 160, 110, 131, -1, 58,
758 109, 218, 218, 110, 211, -1, 58, 109, 218, 218,
759 160, 110, 211, -1, 56, 109, 110, 211, -1, 58,
760 109, 218, 110, 211, -1, 58, 109, 110, 211, -1,
761 59, 135, 131, -1, 60, 131, -1, 61, 131, -1,
762 62, 131, -1, 62, 160, 131, -1, 5, -1, 164,
763 135, 132, 237, 133, -1, 164, 135, 132, 133, -1,
764 173, 132, 237, 133, -1, 173, 132, 133, -1, 135,
765 132, 237, 133, -1, 135, 132, 133, -1, 132, 237,
766 133, -1, 132, 133, -1, 164, 197, -1, 197, -1,
767 164, 109, 110, -1, 120, 164, 109, 110, -1, 78,
768 164, 197, -1, 78, 197, -1, 226, 217, -1, 229,
769 217, -1, 229, 131, -1, 227, 217, -1, 228, 217,
770 -1, 164, 197, -1, 231, 217, -1, 139, 130, 209,
771 -1, 209, -1, 233, -1, 234, 115, 233, -1, 234,
772 131, -1, 235, -1, 232, -1, 236, 235, -1, 236,
773 232, -1, 131, -1, 236, 131, -1, 236, -1, 234,
774 -1, 236, 234, -1, 158, -1
777 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
778 static const yytype_uint16 yyrline[] =
780 0, 210, 210, 215, 216, 221, 223, 225, 227, 229,
781 230, 231, 234, 235, 236, 237, 238, 239, 240, 241,
782 242, 246, 250, 251, 252, 253, 254, 255, 256, 257,
783 262, 263, 264, 265, 266, 267, 268, 269, 273, 274,
784 275, 276, 280, 281, 282, 283, 284, 285, 289, 290,
785 294, 295, 299, 300, 301, 302, 303, 304, 305, 309,
786 310, 314, 315, 316, 317, 321, 322, 323, 327, 328,
787 329, 333, 334, 335, 336, 337, 341, 342, 343, 347,
788 348, 352, 353, 357, 358, 362, 363, 367, 368, 372,
789 373, 377, 378, 380, 385, 386, 387, 388, 389, 390,
790 391, 392, 393, 394, 395, 399, 400, 404, 408, 409,
791 410, 411, 415, 416, 417, 418, 419, 420, 421, 422,
792 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
793 449, 450, 451, 452, 453, 454, 455, 456, 460, 461,
794 462, 463, 464, 465, 466, 467, 468, 469, 473, 474,
795 478, 479, 483, 484, 485, 486, 487, 491, 492, 496,
796 501, 502, 503, 507, 532, 536, 537, 538, 539, 540,
797 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
798 551, 552, 553, 557, 558, 559, 560, 561, 562, 563,
799 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
800 578, 579, 580, 581, 582, 587, 588, 627, 628, 632,
801 633, 637, 641, 642, 646, 648, 650, 652, 654, 657,
802 659, 661, 663, 665, 668, 670, 672, 674, 676, 679,
803 681, 683, 685, 687, 692, 693, 694, 695, 696, 697,
804 698, 699, 703, 705, 710, 712, 714, 716, 718, 723,
805 724, 728, 730, 731, 732, 733, 749, 751, 756, 758,
806 764, 766, 768, 770, 772, 774, 776, 778, 780, 782,
807 784, 789, 791, 793, 795, 797, 802, 803, 804, 805,
808 806, 807, 811, 812, 813, 814, 815, 816, 862, 863,
809 865, 871, 873, 875, 877, 879, 884, 885, 888, 890,
810 892, 898, 899, 900, 902, 907, 911, 913, 915, 920,
811 921, 925, 926, 927, 928, 932, 933, 937, 938, 942,
812 943, 944, 948, 949, 953, 954, 963, 965, 967, 983,
813 984, 1005, 1007, 1012, 1013, 1014, 1015, 1016, 1017, 1021,
814 1023, 1025, 1030, 1031, 1035, 1036, 1039, 1043, 1044, 1045,
815 1049, 1053, 1061, 1066, 1067, 1071, 1072, 1073, 1077, 1078,
816 1079, 1080, 1082, 1083, 1084, 1088, 1089, 1090, 1091, 1092,
817 1101, 1141, 1143, 1148, 1150, 1152, 1154, 1159, 1161, 1166,
818 1168, 1173, 1178, 1183, 1185, 1190, 1192, 1194, 1196, 1198,
819 1204, 1209, 1219, 1220, 1224, 1226, 1231, 1236, 1237, 1238,
820 1239, 1240, 1241, 1245, 1246, 1247, 1251
824 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
825 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
826 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
827 static const char *const yytname[] =
829 "$end", "error", "$undefined", "IDENTIFIER", "CONSTANT",
830 "STRING_LITERAL", "SIZEOF", "PTR_OP", "INC_OP", "DEC_OP", "LEFT_OP",
831 "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP",
832 "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "ADD_ASSIGN", "SUB_ASSIGN",
833 "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN",
834 "TYPE_NAME", "TYPEDEF", "EXTERN", "STATIC", "AUTO", "REGISTER", "CHAR",
835 "SHORT", "INT", "UINT", "INT64", "LONG", "SIGNED", "UNSIGNED", "FLOAT",
836 "DOUBLE", "CONST", "VOLATILE", "VOID", "VALIST", "STRUCT", "UNION",
837 "ENUM", "ELLIPSIS", "CASE", "DEFAULT", "IF", "SWITCH", "WHILE", "DO",
838 "FOR", "GOTO", "CONTINUE", "BREAK", "RETURN", "IFX", "ELSE", "CLASS",
839 "THISCLASS", "CLASS_NAME", "PROPERTY", "SETPROP", "GETPROP", "NEWOP",
840 "RENEW", "DELETE", "EXT_DECL", "EXT_STORAGE", "IMPORT", "DEFINE",
841 "VIRTUAL", "EXT_ATTRIB", "PUBLIC", "PRIVATE", "TYPED_OBJECT",
842 "ANY_OBJECT", "_INCREF", "EXTENSION", "ASM", "TYPEOF", "WATCH",
843 "STOPWATCHING", "FIREWATCHERS", "WATCHABLE", "CLASS_DESIGNER",
844 "CLASS_NO_EXPANSION", "CLASS_FIXED", "ISPROPSET",
845 "CLASS_DEFAULT_PROPERTY", "PROPERTY_CATEGORY", "CLASS_DATA",
846 "CLASS_PROPERTY", "SUBCLASS", "NAMESPACE", "NEW0OP", "RENEW0", "VAARG",
847 "DBTABLE", "DBFIELD", "DBINDEX", "DATABASE_OPEN", "'('", "')'", "'$'",
848 "'.'", "'['", "']'", "','", "'&'", "'*'", "'+'", "'-'", "'~'", "'!'",
849 "'/'", "'%'", "'<'", "'>'", "'^'", "'|'", "'?'", "':'", "'='", "';'",
850 "'{'", "'}'", "$accept", "identifier", "primary_expression",
851 "simple_primary_expression", "anon_instantiation_expression",
852 "postfix_expression", "simple_postfix_expression",
853 "argument_expression_list", "common_unary_expression",
854 "unary_expression", "simple_unary_expression", "unary_operator",
855 "cast_expression", "multiplicative_expression", "additive_expression",
856 "shift_expression", "relational_expression", "equality_expression",
857 "and_expression", "exclusive_or_expression", "inclusive_or_expression",
858 "logical_and_expression", "logical_or_expression",
859 "conditional_expression", "assignment_expression", "assignment_operator",
860 "expression", "constant_expression", "declaration",
861 "specifier_qualifier_list", "declaration_specifiers",
862 "property_specifiers", "renew_specifiers", "init_declarator_list",
863 "init_declarator", "storage_class_specifier", "ext_decl", "ext_attrib",
864 "type_qualifier", "type", "strict_type", "type_specifier",
865 "strict_type_specifier", "struct_or_union_specifier_compound",
866 "struct_or_union_specifier_nocompound", "struct_or_union",
867 "struct_declaration_list", "default_property", "default_property_list",
868 "property", "struct_declaration", "struct_declarator_list",
869 "struct_declarator", "enum_specifier_nocompound",
870 "enum_specifier_compound", "enumerator_list", "enumerator",
871 "direct_abstract_declarator", "direct_abstract_declarator_noarray",
872 "abstract_declarator", "abstract_declarator_noarray", "declarator",
873 "direct_declarator_nofunction", "declarator_function",
874 "direct_declarator", "direct_declarator_function_start",
875 "direct_declarator_function", "type_qualifier_list", "pointer",
876 "parameter_type_list", "parameter_list", "parameter_declaration",
877 "identifier_list", "type_name", "initializer", "initializer_condition",
878 "initializer_list", "statement", "labeled_statement", "declaration_list",
879 "statement_list", "compound_inside", "compound_start",
880 "compound_statement", "expression_statement", "selection_statement",
881 "iteration_statement", "jump_statement", "string_literal",
882 "instantiation_named", "instantiation_unnamed", "instantiation_anon",
883 "class_function_definition_start",
884 "constructor_function_definition_start",
885 "destructor_function_definition_start",
886 "virtual_class_function_definition_start", "class_function_definition",
887 "instance_class_function_definition_start",
888 "instance_class_function_definition", "data_member_initialization",
889 "data_member_initialization_list",
890 "data_member_initialization_list_coloned",
891 "members_initialization_list_coloned", "members_initialization_list",
897 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
899 static const yytype_uint16 yytoknum[] =
901 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
902 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
903 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
904 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
905 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
906 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
907 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
908 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
909 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
910 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
911 355, 356, 357, 358, 359, 360, 361, 362, 363, 40,
912 41, 36, 46, 91, 93, 44, 38, 42, 43, 45,
913 126, 33, 47, 37, 60, 62, 94, 124, 63, 58,
918 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
919 static const yytype_uint8 yyr1[] =
921 0, 134, 135, 136, 136, 137, 137, 137, 137, 137,
922 137, 137, 137, 137, 137, 137, 137, 137, 137, 137,
923 137, 138, 139, 139, 139, 139, 139, 139, 139, 139,
924 140, 140, 140, 140, 140, 140, 140, 140, 141, 141,
925 141, 141, 142, 142, 142, 142, 142, 142, 143, 143,
926 144, 144, 145, 145, 145, 145, 145, 145, 145, 146,
927 146, 147, 147, 147, 147, 148, 148, 148, 149, 149,
928 149, 150, 150, 150, 150, 150, 151, 151, 151, 152,
929 152, 153, 153, 154, 154, 155, 155, 156, 156, 157,
930 157, 158, 158, 158, 159, 159, 159, 159, 159, 159,
931 159, 159, 159, 159, 159, 160, 160, 161, 162, 162,
932 162, 162, 163, 163, 163, 163, 163, 163, 163, 163,
933 164, 164, 164, 164, 164, 164, 164, 164, 164, 164,
934 165, 165, 165, 165, 165, 165, 165, 165, 166, 166,
935 166, 166, 166, 166, 166, 166, 166, 166, 167, 167,
936 168, 168, 169, 169, 169, 169, 169, 170, 170, 171,
937 172, 172, 172, 173, 174, 175, 175, 175, 175, 175,
938 175, 175, 175, 175, 175, 175, 175, 175, 175, 175,
939 175, 175, 175, 176, 176, 176, 176, 176, 176, 176,
940 176, 176, 176, 176, 176, 176, 176, 176, 176, 176,
941 177, 177, 177, 177, 177, 178, 178, 179, 179, 180,
942 180, 181, 182, 182, 183, 183, 183, 183, 183, 183,
943 183, 183, 183, 183, 183, 183, 183, 183, 183, 183,
944 183, 183, 183, 183, 184, 184, 184, 184, 184, 184,
945 184, 184, 185, 185, 186, 186, 186, 186, 186, 187,
946 187, 188, 188, 188, 188, 188, 189, 189, 190, 190,
947 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
948 191, 192, 192, 192, 192, 192, 193, 193, 193, 193,
949 193, 193, 194, 194, 194, 194, 194, 194, 195, 195,
950 195, 196, 196, 196, 196, 196, 197, 197, 197, 197,
951 197, 198, 198, 198, 198, 199, 200, 200, 200, 201,
952 201, 202, 202, 202, 202, 203, 203, 204, 204, 205,
953 205, 205, 206, 206, 207, 207, 208, 208, 208, 209,
954 209, 210, 210, 211, 211, 211, 211, 211, 211, 212,
955 212, 212, 213, 213, 214, 214, 214, 215, 215, 215,
956 216, 217, 217, 218, 218, 219, 219, 219, 220, 220,
957 220, 220, 220, 220, 220, 221, 221, 221, 221, 221,
958 222, 223, 223, 224, 224, 224, 224, 225, 225, 226,
959 226, 227, 228, 229, 229, 230, 230, 230, 230, 230,
960 231, 232, 233, 233, 234, 234, 235, 236, 236, 236,
961 236, 236, 236, 237, 237, 237, 238
964 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
965 static const yytype_uint8 yyr2[] =
967 0, 2, 1, 1, 3, 1, 1, 1, 1, 2,
968 4, 2, 6, 5, 6, 5, 7, 6, 7, 6,
969 1, 1, 1, 4, 3, 4, 3, 3, 2, 2,
970 1, 4, 3, 4, 3, 3, 2, 2, 1, 1,
971 3, 3, 2, 2, 2, 4, 2, 4, 1, 1,
972 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
973 4, 1, 3, 3, 3, 1, 3, 3, 1, 3,
974 3, 1, 3, 3, 3, 3, 1, 3, 3, 1,
975 3, 1, 3, 1, 3, 1, 3, 1, 3, 1,
976 5, 1, 3, 3, 1, 1, 1, 1, 1, 1,
977 1, 1, 1, 1, 1, 1, 3, 1, 2, 3,
978 2, 5, 1, 2, 1, 2, 1, 2, 1, 2,
979 1, 2, 1, 2, 1, 2, 1, 2, 1, 2,
980 1, 2, 1, 2, 1, 2, 1, 2, 1, 2,
981 1, 2, 1, 2, 1, 2, 1, 2, 1, 3,
982 1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
983 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
984 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
985 1, 4, 1, 1, 1, 1, 1, 1, 1, 1,
986 1, 1, 1, 1, 1, 1, 1, 1, 4, 1,
987 5, 4, 4, 3, 5, 2, 2, 1, 1, 1,
988 2, 3, 1, 3, 9, 9, 7, 7, 5, 10,
989 10, 8, 8, 6, 8, 8, 6, 6, 4, 9,
990 9, 7, 7, 5, 3, 2, 2, 2, 1, 2,
991 1, 1, 1, 3, 1, 2, 2, 3, 5, 2,
992 2, 4, 5, 7, 7, 5, 1, 3, 1, 3,
993 3, 2, 3, 3, 3, 4, 4, 2, 3, 3,
994 4, 3, 2, 3, 3, 4, 1, 1, 2, 2,
995 2, 3, 1, 1, 2, 2, 2, 3, 1, 2,
996 3, 1, 3, 4, 3, 4, 1, 2, 2, 3,
997 3, 1, 1, 2, 2, 2, 3, 3, 2, 1,
998 2, 1, 2, 2, 3, 1, 3, 1, 3, 2,
999 2, 1, 1, 3, 1, 2, 1, 3, 4, 1,
1000 1, 1, 3, 1, 1, 1, 1, 1, 1, 3,
1001 4, 3, 1, 2, 1, 2, 2, 1, 1, 2,
1002 1, 2, 3, 1, 2, 5, 7, 5, 5, 7,
1003 6, 7, 4, 5, 4, 3, 2, 2, 2, 3,
1004 1, 5, 4, 4, 3, 4, 3, 3, 2, 2,
1005 1, 3, 4, 3, 2, 2, 2, 2, 2, 2,
1006 2, 2, 3, 1, 1, 3, 2, 1, 1, 2,
1010 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1011 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1012 means the default is an error. */
1013 static const yytype_uint16 yydefact[] =
1015 0, 20, 2, 7, 370, 0, 0, 0, 164, 0,
1016 0, 58, 0, 0, 0, 0, 52, 53, 54, 55,
1017 56, 57, 5, 22, 3, 49, 48, 59, 0, 61,
1018 65, 68, 71, 76, 79, 81, 83, 85, 87, 89,
1019 91, 406, 0, 163, 8, 6, 0, 0, 30, 51,
1020 50, 46, 0, 42, 43, 152, 153, 154, 155, 156,
1021 166, 167, 168, 169, 170, 172, 175, 176, 173, 174,
1022 160, 161, 165, 171, 207, 208, 0, 182, 162, 177,
1023 0, 0, 120, 122, 180, 124, 128, 178, 0, 179,
1024 126, 59, 107, 0, 0, 0, 11, 105, 0, 324,
1025 112, 180, 114, 118, 116, 0, 9, 0, 0, 28,
1026 29, 0, 0, 0, 95, 96, 97, 98, 99, 100,
1027 101, 102, 103, 104, 94, 0, 44, 0, 0, 0,
1028 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1029 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
1030 0, 36, 37, 0, 0, 0, 0, 249, 250, 0,
1031 157, 159, 0, 0, 311, 121, 0, 158, 123, 125,
1032 129, 127, 283, 0, 282, 0, 205, 206, 184, 185,
1033 186, 187, 188, 190, 193, 194, 191, 192, 183, 189,
1034 199, 0, 0, 138, 140, 197, 142, 144, 195, 196,
1035 146, 0, 0, 0, 4, 0, 0, 0, 0, 113,
1036 115, 119, 117, 277, 325, 276, 0, 0, 401, 0,
1037 376, 330, 49, 329, 0, 393, 21, 0, 398, 394,
1038 404, 397, 0, 0, 27, 24, 39, 0, 38, 26,
1039 0, 93, 92, 62, 63, 64, 66, 67, 69, 70,
1040 74, 75, 72, 73, 77, 78, 80, 82, 84, 86,
1041 88, 0, 374, 0, 45, 47, 35, 32, 0, 34,
1042 0, 258, 0, 256, 0, 0, 0, 272, 321, 0,
1043 0, 315, 317, 0, 309, 312, 313, 286, 285, 0,
1044 0, 284, 0, 0, 0, 0, 241, 203, 5, 0,
1045 0, 0, 0, 212, 0, 240, 209, 0, 380, 0,
1046 296, 0, 0, 6, 0, 0, 0, 0, 238, 0,
1047 0, 0, 0, 139, 141, 143, 145, 147, 0, 0,
1048 0, 0, 0, 106, 267, 0, 0, 261, 0, 0,
1049 280, 279, 0, 0, 278, 60, 10, 378, 0, 0,
1050 0, 291, 390, 350, 0, 391, 0, 396, 402, 400,
1051 405, 399, 375, 25, 0, 23, 0, 373, 33, 31,
1052 0, 0, 251, 0, 0, 181, 0, 0, 320, 319,
1053 302, 288, 301, 276, 271, 273, 0, 13, 310, 314,
1054 287, 274, 0, 0, 0, 0, 130, 132, 136, 134,
1055 0, 0, 384, 0, 53, 0, 0, 0, 0, 0,
1056 0, 0, 235, 291, 0, 0, 242, 244, 379, 301,
1057 0, 298, 0, 201, 210, 0, 239, 305, 0, 308,
1058 322, 0, 0, 0, 297, 237, 236, 385, 388, 389,
1059 387, 386, 202, 0, 0, 0, 0, 0, 15, 0,
1060 0, 0, 260, 268, 262, 263, 281, 269, 0, 264,
1061 0, 0, 377, 392, 351, 0, 0, 0, 0, 0,
1062 0, 0, 0, 0, 0, 0, 0, 353, 5, 0,
1063 342, 0, 344, 333, 0, 0, 0, 334, 335, 336,
1064 337, 338, 0, 395, 41, 40, 90, 259, 257, 0,
1065 252, 0, 255, 304, 303, 279, 0, 289, 316, 318,
1066 275, 12, 249, 250, 0, 0, 131, 133, 137, 135,
1067 0, 205, 206, 383, 0, 292, 0, 211, 381, 246,
1068 0, 303, 0, 0, 234, 0, 245, 0, 301, 299,
1069 213, 294, 0, 0, 306, 307, 0, 300, 200, 204,
1070 198, 17, 0, 14, 19, 0, 270, 265, 266, 0,
1071 0, 0, 0, 0, 0, 0, 0, 366, 367, 368,
1072 0, 0, 0, 354, 108, 0, 148, 150, 343, 0,
1073 346, 345, 352, 110, 0, 0, 290, 0, 0, 228,
1074 0, 0, 0, 382, 372, 0, 301, 243, 247, 303,
1075 293, 295, 323, 16, 18, 0, 341, 0, 0, 0,
1076 0, 0, 0, 0, 365, 369, 0, 339, 0, 109,
1077 0, 253, 254, 0, 0, 0, 0, 218, 0, 0,
1078 233, 0, 371, 0, 340, 0, 0, 362, 0, 0,
1079 364, 0, 0, 0, 149, 0, 326, 151, 0, 226,
1080 0, 227, 0, 0, 0, 0, 0, 0, 223, 248,
1081 355, 357, 358, 0, 363, 0, 0, 111, 331, 0,
1082 0, 0, 0, 216, 0, 217, 0, 231, 0, 232,
1083 0, 0, 0, 0, 360, 0, 0, 327, 224, 225,
1084 0, 0, 0, 0, 0, 221, 0, 222, 356, 359,
1085 361, 328, 332, 214, 215, 229, 230, 0, 0, 219,
1089 /* YYDEFGOTO[NTERM-NUM]. */
1090 static const yytype_int16 yydefgoto[] =
1092 -1, 22, 23, 24, 221, 25, 49, 237, 26, 91,
1093 51, 28, 29, 30, 31, 32, 33, 34, 35, 36,
1094 37, 38, 39, 40, 97, 125, 479, 93, 580, 99,
1095 300, 395, 192, 575, 576, 82, 301, 167, 83, 42,
1096 43, 85, 196, 86, 87, 88, 302, 303, 304, 305,
1097 306, 415, 416, 89, 90, 272, 273, 213, 172, 335,
1098 173, 406, 307, 308, 381, 309, 310, 285, 311, 336,
1099 281, 282, 432, 105, 647, 225, 669, 482, 483, 484,
1100 485, 486, 354, 487, 488, 489, 490, 491, 44, 312,
1101 45, 226, 314, 315, 316, 317, 318, 227, 228, 229,
1102 230, 231, 232, 233, 46
1105 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1107 #define YYPACT_NINF -585
1108 static const yytype_int16 yypact[] =
1110 4558, -585, -585, -585, -585, 4609, 4682, 4682, -585, 5992,
1111 4558, -585, 5992, 4558, 4151, 66, -585, -585, -585, -585,
1112 -585, -585, -44, -585, -585, 406, -585, 700, 4558, -585,
1113 285, 319, 98, 188, 474, 23, 43, 49, 180, -7,
1114 -585, -585, 97, -585, -585, -585, 235, 4272, -585, 414,
1115 -585, -585, 3779, -585, -585, -585, -585, -585, -585, -585,
1116 -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
1117 -585, -585, -585, -585, -585, -585, 20, -585, -585, -585,
1118 141, 5173, -585, -585, -585, -585, -585, -585, 30, -585,
1119 -585, -585, -585, 6138, 5263, 6138, -585, -585, 208, 5581,
1120 -585, 97, -585, -585, -585, 149, 160, 1700, 275, -585,
1121 -585, 3223, 275, 4558, -585, -585, -585, -585, -585, -585,
1122 -585, -585, -585, -585, -585, 3348, -585, 4558, 4558, 4558,
1123 4558, 4558, 4558, 4558, 4558, 4558, 4558, 4558, 4558, 4558,
1124 4558, 4558, 4558, 4558, 4558, 4558, 1821, -585, 207, 211,
1125 275, -585, -585, 3296, 275, 4558, 275, 195, 224, 315,
1126 -585, -585, 5353, 4558, -2, -585, 219, -585, -585, -585,
1127 -585, -585, 250, 255, 300, 2293, 252, 262, -585, -585,
1128 -585, -585, -585, -585, -585, -585, -585, -585, -585, -585,
1129 -585, 321, 5443, -585, -585, -585, -585, -585, -585, -585,
1130 -585, 4558, 327, 5533, -585, 4558, 5083, 4323, 284, -585,
1131 -585, -585, -585, 287, -585, 303, 4558, 66, -585, 1942,
1132 -585, -585, 202, -585, 4910, -585, -585, 312, -585, -585,
1133 -55, -585, 2063, 320, -585, -585, -585, 259, -585, -585,
1134 390, -585, -585, -585, -585, -585, 285, 285, 319, 319,
1135 98, 98, 98, 98, 188, 188, 474, 23, 43, 49,
1136 180, 215, -585, 326, -585, -585, -585, -585, 296, -585,
1137 410, 335, -66, -585, 275, 275, 340, -585, 4820, 351,
1138 359, 358, -585, 363, -585, -2, -585, 250, 300, 5671,
1139 4558, 250, 6065, 4910, 3813, 5992, -585, -585, -44, 233,
1140 3828, 80, 2402, -585, 59, -585, -585, 338, -585, 5000,
1141 -585, 21, 348, 350, 312, 312, 312, 389, -585, 2511,
1142 3483, 315, 4558, -585, -585, -585, -585, -585, 370, 382,
1143 4558, 4558, 387, -585, -585, 418, 422, -585, 420, -18,
1144 287, 303, 5754, 4357, 287, -585, -585, -585, 381, 3348,
1145 369, -585, -585, 405, 3065, -585, 3348, -585, -585, -585,
1146 -55, -585, -585, -585, 3348, -585, 4558, -585, -585, -585,
1147 4558, 275, -585, 148, 152, -585, 4730, 113, -585, -585,
1148 338, -585, -585, 222, -585, -585, 5919, -585, -585, -585,
1149 250, -585, 436, 434, 63, 3723, -585, -585, -585, -585,
1150 63, 4910, -585, 4030, 6, 80, 443, 21, 5837, 3348,
1151 183, 4558, -585, 423, 80, 159, -585, -42, -585, 424,
1152 21, -585, 35, -585, -585, 999, -585, -585, 4408, -585,
1153 -585, 447, 310, 35, -585, -585, -585, -585, -585, -585,
1154 -585, -585, -585, 2620, 2729, 448, 445, 4558, -585, 450,
1155 453, 4558, -585, -585, -585, -585, 287, -585, 458, -585,
1156 456, 134, -585, -585, -585, 4558, 442, 465, 467, 469,
1157 3150, 471, 275, 452, 457, 3619, 275, -585, -70, 172,
1158 -585, 3932, -585, -585, 1337, 1458, 451, -585, -585, -585,
1159 -585, -585, 459, -585, -585, -585, -585, -585, -585, 3483,
1160 -585, 3483, -585, 338, -585, 222, 35, -585, -585, -585,
1161 -585, -585, -585, -585, -16, 463, -585, -585, -585, -585,
1162 29, -585, -585, -585, 21, -585, 479, -585, -585, -585,
1163 2184, 464, 21, 86, -585, 4558, -585, 35, 466, -585,
1164 -585, -585, 483, 157, -585, -585, 275, -585, -585, -585,
1165 -585, -585, 485, -585, -585, 486, -585, -585, -585, 472,
1166 3150, 4558, 4558, 4481, 546, 3535, 473, -585, -585, -585,
1167 189, 476, 3150, -585, -585, 209, -585, 477, -585, 1579,
1168 -585, -585, -585, -585, 2838, 2947, -585, 312, 312, -585,
1169 -6, 147, 478, -585, -585, 475, 482, -585, 487, 490,
1170 -585, -585, -585, -585, -585, 3150, -585, 314, 317, 3150,
1171 324, 502, 3150, 3568, -585, -585, 4558, -585, 369, -585,
1172 3374, -585, -585, -29, -34, 312, 312, -585, 312, 312,
1173 -585, 177, -585, 4558, -585, 3150, 3150, -585, 3150, 4558,
1174 -585, 3150, 4532, 484, -585, 3374, -585, -585, 312, -585,
1175 312, -585, -15, -23, -5, 125, 312, 312, -585, -585,
1176 553, -585, -585, 331, -585, 3150, 361, -585, -585, 201,
1177 491, 493, 312, -585, 312, -585, 312, -585, 312, -585,
1178 14, 158, 3150, 488, -585, 3150, 1180, -585, -585, -585,
1179 495, 496, 498, 499, 312, -585, 312, -585, -585, -585,
1180 -585, -585, -585, -585, -585, -585, -585, 501, 504, -585,
1184 /* YYPGOTO[NTERM-NUM]. */
1185 static const yytype_int16 yypgoto[] =
1187 -585, 379, -585, 613, -108, -68, -585, 494, 620, 0,
1188 -585, -585, 44, 400, 404, 376, 402, 503, 507, 509,
1189 506, 500, -585, 17, 1, -585, -12, 7, -328, -585,
1190 13, -585, 557, -585, 40, 41, -25, 242, 876, 730,
1191 10, 174, -124, 492, 36, -263, -308, 236, -585, -585,
1192 -286, -585, 127, 92, 721, 270, 291, -200, -138, -86,
1193 298, -269, 827, -203, -301, -585, 787, -585, -24, -143,
1194 -585, 277, -585, 617, -584, -315, -585, 96, -585, -585,
1195 182, -585, -585, 178, -521, -585, -585, -585, -10, -336,
1196 -82, -585, -585, -585, -585, -585, -585, -585, 435, 313,
1197 438, 439, -585, -142, -585
1200 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1201 positive, shift that token. If negative, reduce the rule which
1202 number is the opposite. If zero, do what YYDEFACT says.
1203 If YYTABLE_NINF, syntax error. */
1204 #define YYTABLE_NINF -404
1205 static const yytype_int16 yytable[] =
1207 27, 41, 98, 236, 263, 106, 53, 54, 340, 379,
1208 144, 443, 444, 214, 27, 344, 424, 241, 492, 280,
1209 95, 352, 81, 2, 2, 94, 480, 92, 287, 400,
1210 92, 417, 2, 2, 463, 650, 291, 161, 2, 222,
1211 98, 648, 70, 71, 613, 236, 674, 148, 8, 371,
1212 70, 71, 27, 587, 588, 672, 166, 174, 8, 572,
1213 356, 668, 107, 625, 626, 676, 2, 372, 325, 166,
1214 174, 4, 126, 78, 208, 215, 357, 348, 222, 325,
1215 -311, 78, 507, 2, 694, -311, 158, 535, 107, 2,
1216 402, 8, 642, 313, 527, 160, 455, 418, 177, 651,
1217 161, 240, 702, 195, 649, 195, 507, 299, 132, 133,
1218 675, 27, 238, 27, 146, 164, 2, 589, 673, 507,
1219 224, 145, 165, 164, 223, 27, 242, 627, 677, 198,
1220 350, 198, 400, 261, 193, 165, 193, 166, 174, 140,
1221 286, 456, 288, 270, 350, 27, 392, 695, 492, 492,
1222 390, 222, 156, 27, 238, 27, 578, 424, 424, 224,
1223 160, 591, 175, 223, 222, 161, 431, 166, 174, 141,
1224 283, 243, 244, 245, 425, 278, 142, 340, 166, 174,
1225 92, 208, 215, 344, 341, 199, 2, 199, 102, 350,
1226 426, 584, 378, 585, 678, 350, 143, 164, 523, 458,
1227 134, 135, 195, 164, 586, 27, 333, 346, 329, 108,
1228 109, 110, 577, 195, 338, 411, 628, 629, 92, 278,
1229 313, 102, 376, 586, 92, 2, 207, 696, 198, 146,
1230 164, 586, 224, 323, 299, 147, 223, 313, 313, 198,
1231 108, 109, 110, 492, 323, 224, 656, 657, 558, 223,
1232 159, 299, 299, 377, 383, 169, 494, 160, 679, 216,
1233 345, 389, 161, 371, 417, 165, 146, 371, 169, 405,
1234 407, 601, 217, 210, 533, 414, 420, 422, 2, 499,
1235 630, 500, 98, 501, 199, 502, 433, 205, 222, 146,
1236 534, 697, 350, 528, 27, 199, 160, 393, 424, 424,
1237 164, 161, 278, 573, 205, 456, 401, 92, 408, 520,
1238 658, 111, 136, 137, 112, 113, 686, 264, 204, 165,
1239 615, 265, 278, 205, 618, 405, 407, 274, 162, 446,
1240 205, 376, 349, 396, 687, 207, 164, 449, 450, 92,
1241 619, 165, 111, 8, 366, 112, 113, 92, 92, 577,
1242 460, 377, 383, 505, 27, 278, 275, 299, 506, 289,
1243 92, 313, 313, 409, 27, 495, 223, 481, 290, 363,
1244 208, 215, 2, 223, 364, 299, 299, 497, 405, 407,
1245 286, 524, 506, 496, 319, 405, 407, 92, 595, 278,
1246 532, 98, 202, 206, 320, 537, 342, 207, 169, 278,
1247 343, 164, 127, 27, 513, 355, 368, 128, 129, 162,
1248 522, 364, 206, 108, 109, 110, 207, 313, 529, 313,
1249 545, 150, 151, 152, 635, 546, 223, 636, 92, 205,
1250 321, 299, 205, 299, 638, 542, 516, 130, 131, 205,
1251 330, 683, 165, 160, 353, 92, 205, 427, 161, 165,
1252 375, 428, 169, 362, 552, 157, 405, 407, 555, 367,
1253 279, 384, 222, 570, 92, 370, 399, 176, 92, 385,
1254 27, 685, 559, 386, 169, 27, 205, 387, 350, 435,
1255 506, 436, 92, 447, 27, 27, 164, 234, 138, 139,
1256 328, 239, 437, 438, 439, 441, 448, 481, 481, 506,
1257 451, 332, 313, 313, 365, 205, 103, 506, 405, 407,
1258 250, 251, 252, 253, 462, 111, 299, 299, 112, 113,
1259 440, 353, 165, 153, 369, 205, 154, 155, 452, 266,
1260 246, 247, 453, 269, 454, 271, 248, 249, 464, 103,
1261 254, 255, 598, 224, 373, 374, 510, 223, 511, 607,
1262 608, 610, 92, 525, 298, 530, -296, 544, 550, 551,
1263 27, 27, 27, 27, 553, 27, 564, 554, 556, 519,
1264 557, 560, 27, 170, 561, 169, 562, 102, 563, 27,
1265 565, 581, 169, 567, 582, 197, 170, 197, 568, 593,
1266 583, 211, 481, 405, 407, 590, -298, 600, -297, 603,
1267 604, 605, 611, 351, 614, 27, 616, 620, 632, 27,
1268 631, 639, 27, 27, -299, 667, 633, 682, 48, 699,
1269 27, 646, -300, 643, 688, 50, 689, 663, 703, 704,
1270 666, 705, 706, 92, 709, 27, 27, 710, 27, 27,
1271 659, 27, 27, 256, 260, 27, 646, 268, 257, 259,
1272 92, 258, 203, 271, 271, 169, 606, 351, 644, 536,
1273 597, 540, 498, 509, 149, 27, 579, 359, 617, 493,
1274 360, 361, 351, 298, 0, 581, 0, 0, 0, 413,
1275 351, 298, 27, 0, 326, 27, 27, 646, 430, 0,
1276 351, 0, 0, 0, 0, 326, 0, 0, 298, 298,
1277 0, 634, 0, 0, 0, 637, 0, 0, 640, 0,
1278 0, 0, 0, 0, 0, 0, 170, 0, 114, 115,
1279 116, 117, 118, 119, 120, 121, 122, 123, 0, 351,
1280 0, 660, 661, 478, 662, 104, 0, 664, 0, 84,
1281 0, 0, 84, 0, 101, 0, 0, 0, 0, 0,
1282 271, 0, 0, 0, 0, 351, 351, 0, 0, 0,
1283 0, 684, 351, 0, 0, 623, 624, 0, 104, 0,
1284 170, 0, 0, 512, 515, 0, 0, 101, 698, 521,
1285 351, 700, 298, 0, 351, 0, 351, 0, 0, 351,
1286 0, 0, 170, 351, 0, 0, 0, 0, 0, 351,
1287 0, 351, 171, 652, 653, 0, 654, 655, 0, 0,
1288 0, 84, 351, 0, 200, 171, 200, 0, 0, 0,
1289 212, 0, 298, 298, 84, 0, 670, 0, 671, 84,
1290 124, 0, 0, 0, 680, 681, 0, 101, 0, 0,
1291 0, 0, 0, 0, 0, 0, 0, 0, 0, 478,
1292 690, 566, 691, 0, 692, 571, 693, 0, 0, 0,
1293 413, 0, 0, 478, 478, 0, 0, 0, 0, 0,
1294 0, 0, 707, 0, 708, 0, 101, 0, 298, 0,
1295 298, 0, 0, 0, 351, 351, 0, 0, 0, 276,
1296 100, 0, 84, 170, 0, 103, 0, 0, 0, 592,
1297 170, 0, 0, 351, 0, 101, 0, 0, 0, 0,
1298 0, 351, 351, 327, 0, 0, 351, 0, 0, 0,
1299 0, 0, 0, 100, 327, 602, 0, 0, 0, 0,
1300 0, 0, 0, 0, 0, 0, 84, 339, 0, 478,
1301 0, 0, 0, 0, 0, 171, 0, 0, 0, 101,
1302 0, 478, 0, 0, 84, 0, 0, 168, 478, 0,
1303 0, 0, 101, 298, 298, 0, 0, 0, 0, 194,
1304 168, 194, 0, 170, 0, 209, 0, 0, 0, 0,
1305 0, 0, 0, 0, 478, 0, 0, 0, 478, 0,
1306 0, 478, 0, 0, 0, 0, 0, 351, 0, 171,
1307 1, 0, 2, 3, 4, 0, 0, 0, 84, 0,
1308 0, 0, 0, 0, 478, 478, 0, 478, 0, 84,
1309 478, 171, 398, 84, 0, 84, 0, 8, 0, 0,
1310 84, 0, 101, 0, 0, 0, 0, 0, 0, 84,
1311 284, 0, 0, 0, 478, 0, 0, 0, 0, 101,
1312 101, 445, 0, 0, 0, 0, 0, 0, 0, 0,
1313 0, 478, 0, 0, 478, 382, 0, 0, 324, 0,
1314 9, 10, 84, 461, 0, 0, 0, 0, 0, 324,
1315 0, 382, 0, 0, 101, 0, 0, 419, 421, 0,
1316 0, 0, 0, 0, 0, 0, 0, 0, 434, 0,
1317 168, 12, 13, 0, 0, 380, 84, 0, 52, 0,
1318 15, 0, 0, 0, 0, 0, 84, 0, 0, 0,
1319 0, 380, 171, 0, 104, 518, 0, 380, 0, 171,
1320 0, 84, 0, 101, 0, 0, 0, 382, 84, 0,
1321 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1322 0, 0, 0, 0, 168, 0, 0, 0, 543, 0,
1323 0, 388, 0, 382, 504, 0, 0, 0, 397, 0,
1324 382, 0, 0, 101, 101, 0, 168, 380, 0, 0,
1325 0, 1, 0, 2, 3, 4, 5, 0, 6, 7,
1326 382, 0, 504, 0, 382, 0, 0, 382, 0, 0,
1327 0, 531, 171, 380, 503, 0, 0, 538, 8, 539,
1328 380, 84, 0, 0, 101, 101, 0, 0, 0, 0,
1329 547, 0, 0, 0, 0, 0, 0, 0, 0, 101,
1330 380, 101, 503, 0, 380, 0, 0, 380, 0, 0,
1331 0, 503, 0, 0, 0, 0, 0, 380, 0, 0,
1332 0, 9, 10, 11, 0, 0, 0, 0, 0, 0,
1333 101, 0, 0, 0, 0, 0, 0, 0, 382, 0,
1334 0, 517, 0, 0, 0, 0, 0, 168, 0, 100,
1335 284, 0, 12, 13, 168, 0, 0, 0, 0, 14,
1336 0, 15, 382, 504, 0, 0, 16, 17, 18, 19,
1337 20, 21, 0, 0, 0, 0, 0, 0, 380, 101,
1338 0, 382, 645, 701, 101, 101, 0, 0, 0, 596,
1339 382, 0, 0, 0, 599, 0, 0, 0, 0, 0,
1340 0, 0, 380, 503, 0, 0, 0, 0, 1, 0,
1341 2, 3, 4, 5, 0, 6, 7, 0, 0, 0,
1342 0, 380, 0, 0, 0, 0, 0, 168, 0, 380,
1343 380, 0, 0, 0, 503, 8, 55, 56, 57, 58,
1344 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1345 69, 70, 71, 72, 73, 74, 75, 76, 0, 465,
1346 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
1347 0, 0, 0, 77, 0, 382, 0, 0, 9, 10,
1348 11, 0, 78, 0, 476, 0, 0, 0, 0, 0,
1349 0, 0, 79, 0, 0, 0, 0, 0, 0, 0,
1350 0, 0, 0, 0, 0, 0, 0, 80, 0, 12,
1351 13, 0, 0, 0, 0, 380, 14, 0, 15, 0,
1352 0, 0, 0, 16, 17, 18, 19, 20, 21, 1,
1353 0, 2, 3, 4, 5, 0, 6, 7, 477, 353,
1354 -348, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1355 0, 0, 0, 0, 0, 0, 8, 55, 56, 57,
1356 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
1357 68, 69, 70, 71, 72, 73, 74, 75, 76, 0,
1358 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
1359 475, 0, 0, 0, 77, 0, 0, 0, 0, 9,
1360 10, 11, 0, 78, 0, 476, 0, 0, 0, 0,
1361 0, 0, 0, 79, 0, 0, 0, 0, 0, 0,
1362 0, 0, 0, 0, 0, 0, 0, 0, 80, 0,
1363 12, 13, 0, 0, 0, 0, 0, 14, 0, 15,
1364 0, 0, 0, 0, 16, 17, 18, 19, 20, 21,
1365 1, 0, 2, 3, 4, 5, 0, 6, 7, 477,
1366 353, -347, 0, 0, 0, 0, 0, 0, 0, 0,
1367 0, 0, 0, 0, 0, 0, 0, 8, 55, 56,
1368 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1369 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1370 0, 465, 466, 467, 468, 469, 470, 471, 472, 473,
1371 474, 475, 0, 0, 0, 77, 0, 0, 0, 0,
1372 9, 10, 11, 0, 78, 0, 476, 0, 0, 0,
1373 0, 0, 0, 0, 79, 0, 0, 0, 0, 0,
1374 0, 0, 0, 0, 0, 0, 0, 0, 0, 80,
1375 0, 12, 13, 0, 0, 0, 0, 0, 14, 0,
1376 15, 0, 0, 0, 0, 16, 17, 18, 19, 20,
1377 21, 1, 0, 2, 3, 4, 5, 0, 6, 7,
1378 477, 353, -349, 0, 0, 0, 0, 0, 0, 0,
1379 0, 0, 0, 0, 0, 0, 0, 0, 8, 55,
1380 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1381 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1382 76, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1383 0, 0, 0, 0, 0, 0, 77, 0, 0, 0,
1384 0, 9, 10, 11, 0, 78, 0, 0, 0, 0,
1385 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1386 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1387 80, 0, 12, 13, 0, 0, 0, 0, 0, 14,
1388 0, 15, 0, 0, 0, 0, 16, 17, 18, 19,
1389 20, 21, 1, 0, 2, 3, 4, 5, 0, 6,
1390 7, 218, 219, 220, 0, 0, 0, 0, 0, 0,
1391 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
1392 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1393 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1394 75, 76, 0, 0, 0, 0, 0, 0, 0, 0,
1395 0, 0, 0, 0, 0, 0, 0, 77, 0, 0,
1396 0, 0, 9, 10, 11, 0, 78, 0, 0, 0,
1397 0, 0, 0, 0, 0, 0, 79, 0, 0, 0,
1398 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1399 0, 80, 0, 12, 13, 0, 0, 0, 0, 0,
1400 14, 0, 15, 0, 0, 0, 0, 16, 17, 18,
1401 19, 20, 21, 1, 0, 2, 3, 4, 5, 0,
1402 6, 7, 218, 219, 262, 0, 0, 0, 0, 0,
1403 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1404 8, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1405 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1406 74, 75, 76, 0, 0, 0, 0, 0, 0, 0,
1407 0, 0, 0, 0, 0, 0, 0, 0, 77, 0,
1408 0, 0, 0, 9, 10, 11, 0, 78, 0, 0,
1409 0, 0, 0, 0, 0, 0, 0, 79, 0, 0,
1410 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1411 0, 0, 80, 0, 12, 13, 0, 0, 0, 0,
1412 0, 14, 0, 15, 0, 0, 0, 0, 16, 17,
1413 18, 19, 20, 21, 1, 0, 2, 3, 4, 5,
1414 0, 6, 7, 218, 219, 347, 0, 0, 0, 0,
1415 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1416 0, 8, 55, 56, 57, 58, 59, 60, 61, 62,
1417 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1418 73, 74, 75, 76, 0, 0, 0, 0, 0, 0,
1419 0, 0, 0, 0, 0, 0, 0, 0, 0, 77,
1420 0, 0, 0, 0, 9, 10, 11, 0, 78, 0,
1421 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,
1422 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1423 0, 0, 0, 80, 0, 12, 13, 0, 0, 0,
1424 0, 0, 14, 0, 15, 0, 0, 0, 0, 16,
1425 17, 18, 19, 20, 21, 1, 0, 2, 3, 4,
1426 5, 0, 6, 7, 358, 219, -403, 0, 0, 0,
1427 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1428 0, 0, 8, 55, 56, 57, 58, 59, 60, 61,
1429 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1430 72, 73, 74, 75, 76, 0, 0, 0, 0, 0,
1431 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1432 77, 0, 0, 0, 0, 9, 10, 11, 0, 78,
1433 0, 0, 0, 0, 0, 0, 0, 0, 0, 79,
1434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1435 0, 0, 0, 0, 80, 0, 12, 13, 0, 0,
1436 0, 0, 0, 14, 1, 15, 2, 3, 4, 0,
1437 16, 17, 18, 19, 20, 21, 0, 0, 0, 0,
1438 0, 0, 0, 0, 0, 218, 219, 594, 0, 0,
1439 0, 8, 55, 56, 57, 58, 59, 60, 61, 62,
1440 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1441 73, 74, 75, 76, 0, 0, 0, 0, 0, 0,
1442 0, 0, 0, 0, 0, 0, 0, 0, 0, 77,
1443 0, 292, 0, 0, 9, 10, 0, 160, 78, 0,
1444 0, 293, 161, 0, 0, 0, 0, 0, 79, 0,
1445 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1446 0, 0, 0, 80, 0, 12, 13, 0, 0, 0,
1447 0, 0, 294, 1, 15, 2, 3, 4, 0, 0,
1448 164, 0, 0, 295, 0, 0, 0, 0, 0, 0,
1449 0, 0, 0, 0, 296, 0, 297, 0, 0, 0,
1450 8, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1451 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1452 74, 75, 76, 0, 0, 0, 0, 0, 0, 0,
1453 0, 0, 0, 0, 0, 0, 0, 0, 77, 0,
1454 292, 0, 0, 9, 10, 0, 160, 78, 0, 0,
1455 293, 161, 0, 0, 0, 0, 0, 79, 0, 0,
1456 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1457 0, 0, 80, 0, 12, 13, 0, 0, 0, 0,
1458 0, 294, 1, 15, 2, 3, 4, 0, 0, 164,
1459 0, 0, 295, 0, 0, 0, 0, 0, 0, 0,
1460 0, 0, 0, 296, 0, 423, 0, 0, 0, 8,
1461 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1462 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1463 75, 76, 0, 0, 0, 0, 0, 0, 0, 0,
1464 0, 0, 0, 0, 0, 0, 0, 77, 0, 292,
1465 0, 0, 9, 10, 0, 160, 78, 0, 0, 293,
1466 161, 0, 0, 0, 0, 0, 79, 0, 0, 0,
1467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1468 0, 80, 0, 12, 13, 0, 0, 0, 0, 0,
1469 294, 1, 15, 2, 3, 4, 0, 0, 164, 0,
1470 0, 295, 0, 0, 0, 0, 0, 0, 0, 0,
1471 0, 0, 296, 0, 442, 0, 0, 0, 8, 55,
1472 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1473 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1474 76, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1475 0, 0, 0, 0, 0, 0, 77, 0, 292, 0,
1476 0, 9, 10, 0, 160, 78, 0, 0, 293, 161,
1477 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1479 80, 0, 12, 13, 0, 0, 0, 0, 0, 294,
1480 1, 15, 2, 3, 4, 0, 0, 164, 0, 0,
1481 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1482 0, 296, 0, 548, 0, 0, 0, 8, 55, 56,
1483 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1484 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1485 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1486 0, 0, 0, 0, 0, 77, 0, 292, 0, 0,
1487 9, 10, 0, 160, 78, 0, 0, 293, 161, 0,
1488 0, 0, 0, 0, 79, 0, 0, 0, 0, 0,
1489 0, 0, 0, 0, 0, 0, 0, 0, 0, 80,
1490 0, 12, 13, 0, 0, 0, 0, 0, 294, 1,
1491 15, 2, 3, 4, 0, 0, 164, 0, 0, 295,
1492 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1493 296, 0, 549, 0, 0, 0, 8, 55, 56, 57,
1494 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
1495 68, 69, 70, 71, 72, 73, 74, 75, 76, 0,
1496 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1497 0, 0, 0, 0, 77, 0, 292, 0, 0, 9,
1498 10, 0, 160, 78, 0, 0, 293, 161, 0, 0,
1499 0, 0, 0, 79, 0, 0, 0, 0, 0, 0,
1500 0, 0, 0, 0, 0, 0, 0, 0, 80, 0,
1501 12, 13, 0, 0, 0, 0, 0, 294, 1, 15,
1502 2, 3, 4, 0, 0, 164, 0, 0, 295, 0,
1503 0, 0, 0, 0, 0, 0, 0, 0, 0, 296,
1504 0, 621, 0, 0, 0, 8, 55, 56, 57, 58,
1505 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1506 69, 70, 71, 72, 73, 74, 75, 76, 0, 0,
1507 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1508 0, 0, 0, 77, 0, 292, 0, 0, 9, 10,
1509 0, 160, 78, 0, 0, 293, 161, 0, 0, 0,
1510 0, 0, 79, 0, 0, 0, 0, 0, 0, 0,
1511 0, 0, 0, 0, 0, 0, 0, 80, 0, 12,
1512 13, 0, 0, 0, 0, 0, 294, 0, 15, 0,
1513 0, 0, 0, 0, 164, 0, 1, 295, 2, 3,
1514 4, 5, 0, 6, 7, 0, 0, 0, 296, 0,
1515 622, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1516 0, 0, 0, 8, 55, 56, 57, 58, 59, 60,
1517 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1518 71, 72, 73, 74, 75, 76, 0, 465, 466, 467,
1519 468, 469, 470, 471, 472, 473, 474, 475, 0, 0,
1520 0, 77, 0, 0, 0, 0, 9, 10, 11, 0,
1521 78, 0, 476, 0, 0, 0, 0, 0, 0, 0,
1522 79, 1, 0, 2, 3, 4, 5, 0, 6, 7,
1523 0, 0, 0, 0, 0, 80, 0, 12, 13, 0,
1524 0, 0, 0, 0, 14, 0, 15, 0, 8, 0,
1525 0, 16, 17, 18, 19, 20, 21, 0, 0, 0,
1526 0, 0, 0, 0, 0, 0, 477, 353, 0, 0,
1527 0, 0, 465, 466, 467, 468, 469, 470, 471, 472,
1528 473, 474, 475, 0, 0, 0, 0, 0, 0, 0,
1529 0, 9, 10, 11, 1, 0, 2, 3, 4, 5,
1530 0, 6, 7, 0, 0, 0, 0, 0, 0, 0,
1531 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1532 0, 8, 12, 13, 0, 0, 0, 0, 0, 14,
1533 0, 15, 0, 0, 0, 0, 16, 17, 18, 19,
1534 20, 21, 0, 0, 0, 0, 0, 0, 0, 0,
1535 0, 477, 353, 0, 0, 0, 0, 0, 0, 0,
1536 0, 0, 0, 0, 9, 10, 11, 1, 0, 2,
1537 3, 4, 5, 0, 6, 7, 0, 0, 0, 0,
1538 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1539 0, 0, 0, 0, 8, 12, 13, 0, 0, 0,
1540 0, 0, 14, 235, 15, 0, 0, 0, 0, 16,
1541 17, 18, 19, 20, 21, 0, 0, 0, 0, 1,
1542 0, 2, 3, 4, 5, 219, 6, 7, 0, 0,
1543 0, 0, 0, 0, 0, 0, 0, 9, 10, 11,
1544 0, 0, 0, 0, 0, 1, 8, 2, 3, 4,
1545 5, 0, 6, 7, 0, 0, 0, 0, 0, 0,
1546 0, 0, 0, 0, 0, 0, 0, 0, 12, 13,
1547 0, 0, 8, 0, 0, 14, 267, 15, 0, 0,
1548 0, 0, 16, 17, 18, 19, 20, 21, 0, 9,
1549 10, 11, 0, 0, 0, 0, 0, 0, 219, 0,
1550 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1551 0, 0, 0, 0, 0, 9, 10, 11, 0, 0,
1552 12, 13, 0, 0, 0, 0, 0, 14, 0, 15,
1553 0, 0, 0, 0, 16, 17, 18, 19, 20, 21,
1554 0, 0, 0, 0, 0, 0, 12, 13, 0, 0,
1555 219, 0, 0, 14, 1, 15, 2, 3, 4, 0,
1556 16, 17, 18, 19, 20, 21, 0, 0, 0, 0,
1557 0, 0, 0, 0, 0, 0, 645, 0, 0, 0,
1558 0, 8, 55, 56, 57, 58, 59, 60, 61, 62,
1559 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1560 73, 74, 75, 76, 0, 0, 1, 0, 2, 3,
1561 4, 5, 0, 6, 7, 0, 0, 0, 0, 77,
1562 0, 292, 0, 0, 9, 10, 0, 160, 78, 0,
1563 0, 293, 161, 8, 0, 0, 0, 0, 79, 1,
1564 0, 2, 3, 4, 5, 0, 6, 7, 0, 0,
1565 0, 0, 0, 80, 0, 12, 13, 0, 0, 0,
1566 0, 0, 294, 0, 15, 0, 8, 0, 0, 0,
1567 164, 0, 0, 295, 0, 0, 9, 10, 11, 0,
1568 0, 0, 0, 0, 296, 0, 0, 0, 0, 0,
1569 1, 0, 2, 3, 4, 5, 0, 6, 7, 0,
1570 0, 0, 0, 0, 0, 0, 0, 12, 13, 9,
1571 10, 11, 0, 0, 14, 612, 15, 8, 0, 0,
1572 0, 16, 17, 18, 19, 20, 21, 0, 0, 0,
1573 0, 0, 0, 0, 0, 0, 477, 0, 0, 0,
1574 12, 13, 0, 0, 0, 0, 0, 14, 641, 15,
1575 0, 0, 0, 0, 16, 17, 18, 19, 20, 21,
1576 9, 10, 11, 0, 0, 0, 0, 0, 0, 477,
1577 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1578 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1579 0, 12, 13, 0, 0, 0, 2, 0, 14, 0,
1580 15, 0, 0, 0, 0, 16, 17, 18, 19, 20,
1581 21, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1582 569, 8, 55, 56, 57, 58, 59, 60, 61, 62,
1583 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1584 73, 74, 75, 394, 0, 0, 0, 0, 0, 0,
1585 1, 0, 2, 3, 4, 5, 0, 6, 7, 77,
1586 0, 0, 0, 0, 0, 0, 0, 160, 78, 0,
1587 0, 0, 161, 0, 0, 0, 0, 8, 79, 0,
1588 0, 0, 0, 0, 1, 0, 2, 3, 4, 5,
1589 0, 6, 7, 80, 0, 0, 0, 0, 0, 0,
1590 0, 2, 206, 0, 0, 0, 207, 0, 0, 0,
1591 164, 8, 0, 0, 0, 0, 0, 0, 0, 0,
1592 9, 10, 11, 0, 0, 514, 8, 55, 56, 57,
1593 58, 59, 60, 61, 62, 63, 64, 65, 66, 67,
1594 68, 69, 70, 71, 72, 73, 74, 75, 76, 0,
1595 0, 12, 13, 0, 9, 10, 11, 160, 14, 96,
1596 15, 0, 161, 0, 77, 16, 17, 18, 19, 20,
1597 21, 0, 160, 78, 0, 0, 0, 161, 0, 0,
1598 0, 0, 0, 79, 0, 12, 13, 0, 0, 0,
1599 0, 0, 403, 96, 15, 0, 0, 0, 80, 16,
1600 404, 18, 19, 20, 21, 2, 0, 410, 0, 0,
1601 0, 0, 0, 0, 0, 164, 0, 0, 0, 0,
1602 0, 0, 0, 0, 0, 0, 0, 411, 0, 412,
1603 8, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1604 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1605 74, 75, 76, 0, 0, 0, 0, 0, 0, 0,
1606 0, 0, 0, 0, 0, 0, 0, 0, 77, 0,
1607 0, 0, 0, 0, 0, 0, 160, 78, 0, 0,
1608 0, 161, 0, 0, 0, 0, 0, 79, 0, 0,
1609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1610 0, 1, 80, 2, 3, 4, 5, 0, 6, 7,
1611 0, 350, 0, 0, 0, 0, 0, 0, 0, 164,
1612 0, 0, 0, 0, 0, 0, 0, 0, 8, 0,
1613 0, 0, 0, 574, 60, 61, 62, 63, 64, 65,
1614 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1615 76, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1616 0, 0, 0, 0, 0, 0, 77, 0, 0, 0,
1617 0, 9, 10, 11, 160, 78, 0, 0, 0, 161,
1618 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1619 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1620 80, 0, 12, 13, 0, 0, 0, 0, 0, 403,
1621 96, 15, 0, 0, 0, 0, 16, 404, 18, 19,
1622 20, 21, 1, 0, 2, 3, 4, 5, 0, 6,
1623 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1624 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
1625 0, 0, 0, 0, 0, 60, 61, 62, 63, 64,
1626 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1627 75, 76, 0, 0, 0, 0, 0, 0, 0, 0,
1628 0, 0, 0, 0, 0, 0, 0, 77, 0, 0,
1629 0, 0, 9, 10, 11, 0, 78, 0, 0, 0,
1630 0, 0, 0, 0, 0, 0, 79, 0, 0, 0,
1631 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1632 0, 80, 0, 12, 13, 0, 0, 0, 0, 0,
1633 14, 96, 15, 0, 0, 0, 0, 16, 17, 18,
1634 19, 20, 21, 1, 0, 2, 3, 4, 5, 0,
1635 6, 7, 0, 0, 0, 0, 0, 0, 0, 0,
1636 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1637 8, 0, 0, 0, 0, 0, 60, 61, 62, 63,
1638 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1639 74, 75, 76, 0, 1, 0, 2, 3, 4, 5,
1640 0, 6, 7, 0, 0, 0, 0, 0, 77, 0,
1641 0, 0, 0, 9, 10, 11, 0, 78, 0, 0,
1642 0, 8, 0, 0, 0, 0, 0, 79, 1, 0,
1643 2, 3, 4, 5, 0, 6, 7, 0, 0, 0,
1644 0, 0, 80, 0, 12, 13, 0, 0, 0, 0,
1645 0, 52, 96, 15, 0, 8, 0, 0, 16, 17,
1646 18, 19, 20, 21, 9, 10, 11, 0, 0, 0,
1647 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
1648 0, 2, 3, 4, 5, 0, 6, 7, 0, 0,
1649 0, 0, 0, 0, 0, 12, 13, 0, 9, 10,
1650 11, 0, 14, 0, 15, 0, 8, 337, 0, 16,
1651 17, 18, 19, 20, 21, 0, 0, 0, 0, 0,
1652 0, 0, 0, 0, 0, 0, 0, 0, 0, 12,
1653 13, 0, 0, 0, 0, 0, 14, 0, 15, 0,
1654 0, 459, 0, 16, 17, 18, 19, 20, 21, 9,
1655 10, 11, 1, 0, 2, 3, 4, 5, 0, 6,
1656 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1657 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
1658 12, 13, 0, 0, 0, 0, 0, 14, 0, 15,
1659 0, 0, 541, 0, 16, 17, 18, 19, 20, 21,
1660 0, 0, 0, 1, 0, 2, 3, 4, 5, 0,
1661 6, 7, 0, 0, 0, 0, 0, 0, 0, 0,
1662 0, 0, 9, 10, 11, 0, 0, 0, 0, 1,
1663 8, 2, 3, 4, 5, 0, 6, 7, 0, 0,
1664 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1665 0, 0, 0, 12, 13, 0, 8, 0, 0, 0,
1666 14, 609, 15, 0, 0, 0, 0, 16, 17, 18,
1667 19, 20, 21, 9, 10, 11, 0, 0, 0, 0,
1668 1, 0, 2, 3, 4, 5, 0, 6, 7, 0,
1669 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
1670 10, 11, 0, 0, 12, 13, 0, 8, 0, 0,
1671 0, 14, 665, 15, 0, 0, 0, 0, 16, 17,
1672 18, 19, 20, 21, 0, 0, 0, 0, 0, 0,
1673 12, 13, 0, 0, 0, 0, 0, 14, 0, 15,
1674 0, 0, 0, 0, 16, 17, 18, 19, 20, 21,
1675 9, 10, 11, 1, 0, 2, 3, 4, 5, 0,
1676 6, 7, 0, 0, 0, 0, 0, 0, 0, 0,
1677 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1678 8, 12, 13, 0, 0, 0, 0, 0, 47, 0,
1679 15, 0, 0, 0, 0, 16, 17, 18, 19, 20,
1680 21, 0, 0, 2, 0, 0, 0, 0, 0, 0,
1681 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1682 0, 0, 0, 9, 10, 11, 0, 0, 8, 55,
1683 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1684 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1685 76, 0, 0, 0, 12, 13, 0, 0, 0, 0,
1686 0, 52, 0, 15, 0, 0, 77, 0, 16, 17,
1687 18, 19, 20, 21, 160, 78, 0, 0, 0, 161,
1688 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1689 0, 0, 0, 2, 0, 0, 0, 0, 0, 0,
1690 80, 0, 0, 0, 0, 0, 0, 0, 0, 376,
1691 334, 0, 0, 207, 0, 0, 0, 164, 8, 55,
1692 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1693 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1694 76, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1695 0, 0, 0, 0, 0, 0, 77, 0, 0, 0,
1696 0, 0, 0, 0, 160, 78, 0, 0, 0, 161,
1697 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1698 0, 0, 0, 2, 0, 0, 0, 0, 0, 0,
1699 80, 0, 0, 0, 0, 0, 0, 0, 0, 376,
1700 0, 0, 0, 207, 0, 0, 0, 164, 8, 55,
1701 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1702 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1703 76, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1704 0, 0, 0, 0, 0, 0, 77, 0, 0, 0,
1705 0, 0, 0, 0, 160, 78, 0, 0, 0, 161,
1706 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1707 0, 0, 0, 2, 0, 0, 0, 0, 0, 0,
1708 80, 0, 0, 0, 0, 0, 0, 0, 0, 350,
1709 0, 0, 0, 0, 0, 0, 0, 164, 8, 55,
1710 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1711 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1712 76, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1713 0, 0, 0, 0, 0, 0, 77, 0, 0, 0,
1714 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1715 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1716 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1717 80, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1718 429, 8, 55, 56, 57, 58, 59, 60, 61, 62,
1719 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1720 73, 74, 75, 76, 0, 0, 0, 0, 0, 0,
1721 0, 0, 0, 0, 0, 0, 0, 0, 0, 77,
1722 0, 0, 0, 0, 0, 0, 0, 160, 78, 0,
1723 0, 0, 161, 0, 0, 0, 0, 0, 79, 0,
1724 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1725 0, 0, 0, 80, 0, 0, 0, 0, 0, 0,
1726 0, 0, 206, 334, 0, 0, 207, 0, 0, 0,
1727 164, 8, 55, 56, 57, 58, 59, 60, 61, 62,
1728 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1729 73, 74, 75, 76, 0, 0, 0, 0, 0, 0,
1730 0, 0, 0, 0, 0, 0, 0, 0, 0, 77,
1731 0, 0, 0, 0, 0, 0, 0, 160, 78, 0,
1732 0, 0, 161, 0, 0, 0, 0, 0, 79, 0,
1733 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1734 0, 0, 0, 80, 0, 0, 0, 0, 0, 0,
1735 0, 0, 162, 0, 0, 0, 163, 0, 0, 0,
1736 164, 8, 55, 56, 57, 58, 59, 60, 61, 62,
1737 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1738 73, 74, 75, 76, 0, 0, 0, 0, 0, 0,
1739 0, 0, 0, 0, 0, 0, 0, 0, 0, 77,
1740 0, 0, 0, 0, 0, 0, 0, 160, 78, 0,
1741 0, 0, 161, 0, 0, 0, 0, 0, 79, 0,
1742 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1743 0, 0, 0, 80, 0, 0, 0, 0, 0, 0,
1744 0, 0, 162, 0, 0, 0, 201, 0, 0, 0,
1745 164, 8, 55, 56, 57, 58, 59, 60, 61, 62,
1746 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1747 73, 74, 75, 76, 0, 0, 0, 0, 0, 0,
1748 0, 0, 0, 0, 0, 0, 0, 0, 0, 77,
1749 0, 0, 0, 0, 0, 0, 0, 160, 78, 0,
1750 0, 0, 161, 0, 0, 0, 0, 0, 79, 0,
1751 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1752 0, 0, 0, 80, 0, 0, 0, 0, 0, 0,
1753 0, 0, 162, 277, 0, 0, 0, 0, 0, 0,
1754 164, 8, 55, 56, 57, 58, 59, 178, 179, 180,
1755 181, 182, 183, 184, 185, 186, 187, 70, 71, 188,
1756 189, 74, 75, 76, 0, 0, 0, 0, 0, 0,
1757 0, 0, 0, 0, 0, 0, 0, 0, 0, 190,
1758 0, 0, 0, 0, 0, 0, 0, 160, 78, 0,
1759 0, 0, 161, 0, 0, 0, 0, 0, 0, 0,
1760 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1761 0, 0, 0, 191, 0, 0, 0, 0, 0, 0,
1762 0, 0, 162, 0, 0, 0, 322, 0, 0, 0,
1763 164, 8, 55, 56, 57, 58, 59, 178, 179, 180,
1764 181, 182, 183, 184, 185, 186, 187, 70, 71, 188,
1765 189, 74, 75, 76, 0, 0, 0, 0, 0, 0,
1766 0, 0, 0, 0, 0, 0, 0, 0, 0, 190,
1767 0, 0, 0, 0, 0, 0, 0, 160, 78, 8,
1768 0, 0, 161, 0, 0, 60, 61, 62, 63, 64,
1769 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1770 75, 76, 0, 191, 0, 0, 0, 0, 0, 0,
1771 0, 0, 162, 0, 0, 0, 331, 77, 0, 0,
1772 164, 0, 0, 0, 0, 160, 78, 0, 0, 0,
1773 161, 0, 0, 0, 0, 0, 79, 0, 0, 0,
1774 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1775 0, 80, 0, 0, 0, 0, 0, 0, 0, 0,
1776 206, 0, 0, 0, 207, 0, 0, 0, 164, 8,
1777 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1778 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1779 75, 76, 0, 0, 0, 0, 0, 0, 0, 0,
1780 0, 0, 0, 0, 0, 0, 0, 77, 0, 0,
1781 0, 0, 0, 0, 0, 0, 78, 0, 0, 0,
1782 0, 0, 0, 0, 0, 0, 79, 0, 0, 0,
1783 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1784 0, 80, 0, 0, 0, 0, 0, 0, 0, 0,
1785 0, 391, 8, 55, 56, 57, 58, 59, 60, 61,
1786 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1787 72, 73, 74, 75, 76, 0, 0, 0, 0, 0,
1788 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1789 77, 0, 0, 0, 0, 0, 0, 0, 0, 78,
1790 0, 0, 0, 0, 0, 0, 0, 0, 0, 79,
1791 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1792 0, 0, 0, 0, 80, 0, 0, 0, 0, 0,
1793 0, 0, 0, 0, 457, 8, 55, 56, 57, 58,
1794 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1795 69, 70, 71, 72, 73, 74, 75, 76, 0, 0,
1796 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1797 0, 0, 0, 77, 0, 0, 0, 0, 0, 0,
1798 0, 0, 78, 0, 0, 0, 0, 0, 0, 0,
1799 0, 0, 79, 0, 0, 0, 0, 0, 0, 0,
1800 0, 0, 0, 0, 0, 0, 0, 80, 0, 0,
1801 0, 0, 0, 0, 0, 0, 526, 8, 55, 56,
1802 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1803 67, 68, 69, 70, 71, 72, 73, 74, 75, 76,
1804 508, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1805 0, 0, 0, 0, 0, 77, 0, 0, 0, 0,
1806 0, 0, 0, 0, 78, 0, 0, 0, 0, 0,
1807 0, 0, 0, 0, 79, 0, 0, 0, 0, 0,
1808 0, 0, 0, 0, 0, 0, 0, 0, 0, 80,
1809 8, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1810 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1811 74, 75, 76, 0, 0, 0, 0, 0, 0, 0,
1812 0, 0, 0, 0, 0, 0, 0, 0, 77, 0,
1813 0, 0, 0, 0, 0, 0, 0, 78, 0, 0,
1814 0, 0, 0, 0, 0, 0, 0, 79, 0, 0,
1815 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1816 0, 0, 80, 8, 55, 56, 57, 58, 59, 60,
1817 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1818 71, 72, 73, 74, 75, 394, 0, 0, 0, 0,
1819 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1820 0, 77, 0, 0, 0, 0, 0, 0, 0, 0,
1821 78, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1822 79, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1823 0, 0, 0, 0, 0, 80, 8, 55, 56, 57,
1824 58, 59, 178, 179, 180, 181, 182, 183, 184, 185,
1825 186, 187, 70, 71, 188, 189, 74, 75, 76, 0,
1826 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1827 0, 0, 0, 0, 190, 0, 0, 0, 0, 0,
1828 0, 0, 0, 78, 0, 0, 0, 0, 0, 0,
1829 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1830 0, 0, 0, 0, 0, 0, 0, 0, 191
1833 static const yytype_int16 yycheck[] =
1835 0, 0, 14, 111, 146, 15, 6, 7, 208, 278,
1836 17, 319, 320, 99, 14, 215, 302, 125, 354, 162,
1837 13, 224, 9, 3, 3, 12, 354, 10, 166, 292,
1838 13, 300, 3, 3, 349, 69, 174, 79, 3, 107,
1839 52, 70, 44, 45, 565, 153, 69, 47, 28, 115,
1840 44, 45, 52, 69, 70, 70, 81, 81, 28, 129,
1841 115, 645, 132, 69, 70, 70, 3, 133, 192, 94,
1842 94, 5, 28, 75, 99, 99, 131, 219, 146, 203,
1843 74, 75, 383, 3, 70, 79, 76, 129, 132, 3,
1844 293, 28, 613, 175, 409, 74, 114, 300, 88, 133,
1845 79, 113, 686, 93, 133, 95, 407, 175, 10, 11,
1846 133, 111, 111, 113, 132, 117, 3, 133, 133, 420,
1847 107, 128, 81, 117, 107, 125, 125, 133, 133, 93,
1848 109, 95, 395, 145, 93, 94, 95, 162, 162, 116,
1849 164, 341, 166, 155, 109, 145, 289, 133, 484, 485,
1850 288, 219, 132, 153, 153, 155, 484, 443, 444, 146,
1851 74, 132, 132, 146, 232, 79, 309, 192, 192, 126,
1852 163, 127, 128, 129, 115, 162, 127, 377, 203, 203,
1853 163, 206, 206, 383, 208, 93, 3, 95, 14, 109,
1854 131, 499, 278, 501, 69, 109, 16, 117, 401, 342,
1855 12, 13, 192, 117, 505, 205, 205, 217, 201, 7,
1856 8, 9, 481, 203, 207, 129, 69, 70, 201, 206,
1857 302, 47, 109, 524, 207, 3, 113, 69, 192, 132,
1858 117, 532, 219, 192, 302, 0, 219, 319, 320, 203,
1859 7, 8, 9, 579, 203, 232, 69, 70, 114, 232,
1860 109, 319, 320, 278, 278, 81, 364, 74, 133, 110,
1861 216, 285, 79, 115, 533, 224, 132, 115, 94, 294,
1862 294, 114, 112, 99, 115, 300, 300, 301, 3, 131,
1863 133, 133, 294, 131, 192, 133, 311, 115, 356, 132,
1864 131, 133, 109, 110, 294, 203, 74, 290, 584, 585,
1865 117, 79, 289, 131, 115, 505, 293, 290, 295, 395,
1866 133, 109, 124, 125, 112, 113, 115, 110, 110, 278,
1867 131, 110, 309, 115, 115, 350, 350, 132, 109, 322,
1868 115, 109, 130, 292, 133, 113, 117, 330, 331, 322,
1869 131, 300, 109, 28, 129, 112, 113, 330, 331, 618,
1870 343, 376, 376, 377, 354, 342, 132, 425, 383, 109,
1871 343, 443, 444, 130, 364, 364, 349, 354, 113, 110,
1872 395, 395, 3, 356, 115, 443, 444, 370, 403, 403,
1873 404, 405, 407, 366, 132, 410, 410, 370, 530, 376,
1874 414, 403, 94, 109, 132, 420, 109, 113, 224, 386,
1875 113, 117, 117, 403, 394, 227, 110, 122, 123, 109,
1876 400, 115, 109, 7, 8, 9, 113, 499, 411, 501,
1877 110, 7, 8, 9, 110, 115, 409, 110, 411, 115,
1878 109, 499, 115, 501, 110, 428, 395, 118, 119, 115,
1879 113, 110, 401, 74, 132, 428, 115, 109, 79, 408,
1880 110, 113, 278, 133, 447, 76, 481, 481, 451, 133,
1881 162, 110, 530, 475, 447, 130, 292, 88, 451, 110,
1882 470, 110, 465, 115, 300, 475, 115, 114, 109, 131,
1883 505, 131, 465, 113, 484, 485, 117, 108, 14, 15,
1884 192, 112, 314, 315, 316, 317, 114, 484, 485, 524,
1885 113, 203, 584, 585, 114, 115, 14, 532, 533, 533,
1886 134, 135, 136, 137, 133, 109, 584, 585, 112, 113,
1887 131, 132, 481, 109, 114, 115, 112, 113, 110, 150,
1888 130, 131, 110, 154, 114, 156, 132, 133, 133, 47,
1889 138, 139, 535, 530, 274, 275, 110, 530, 114, 561,
1890 562, 563, 535, 110, 175, 132, 132, 110, 110, 114,
1891 560, 561, 562, 563, 114, 565, 470, 114, 110, 395,
1892 114, 129, 572, 81, 109, 401, 109, 403, 109, 579,
1893 109, 485, 408, 131, 133, 93, 94, 95, 131, 110,
1894 131, 99, 579, 618, 618, 132, 132, 114, 132, 114,
1895 114, 129, 56, 224, 131, 605, 130, 130, 133, 609,
1896 132, 109, 612, 613, 132, 131, 129, 64, 5, 131,
1897 620, 620, 132, 616, 133, 5, 133, 639, 133, 133,
1898 642, 133, 133, 616, 133, 635, 636, 133, 638, 639,
1899 633, 641, 642, 140, 144, 645, 645, 153, 141, 143,
1900 633, 142, 95, 274, 275, 481, 560, 278, 618, 417,
1901 533, 425, 371, 386, 47, 665, 484, 232, 572, 356,
1902 232, 232, 293, 294, -1, 579, -1, -1, -1, 300,
1903 301, 302, 682, -1, 192, 685, 686, 686, 309, -1,
1904 311, -1, -1, -1, -1, 203, -1, -1, 319, 320,
1905 -1, 605, -1, -1, -1, 609, -1, -1, 612, -1,
1906 -1, -1, -1, -1, -1, -1, 224, -1, 18, 19,
1907 20, 21, 22, 23, 24, 25, 26, 27, -1, 350,
1908 -1, 635, 636, 354, 638, 14, -1, 641, -1, 9,
1909 -1, -1, 12, -1, 14, -1, -1, -1, -1, -1,
1910 371, -1, -1, -1, -1, 376, 377, -1, -1, -1,
1911 -1, 665, 383, -1, -1, 587, 588, -1, 47, -1,
1912 278, -1, -1, 394, 395, -1, -1, 47, 682, 400,
1913 401, 685, 403, -1, 405, -1, 407, -1, -1, 410,
1914 -1, -1, 300, 414, -1, -1, -1, -1, -1, 420,
1915 -1, 422, 81, 625, 626, -1, 628, 629, -1, -1,
1916 -1, 81, 433, -1, 93, 94, 95, -1, -1, -1,
1917 99, -1, 443, 444, 94, -1, 648, -1, 650, 99,
1918 130, -1, -1, -1, 656, 657, -1, 107, -1, -1,
1919 -1, -1, -1, -1, -1, -1, -1, -1, -1, 470,
1920 672, 472, 674, -1, 676, 476, 678, -1, -1, -1,
1921 481, -1, -1, 484, 485, -1, -1, -1, -1, -1,
1922 -1, -1, 694, -1, 696, -1, 146, -1, 499, -1,
1923 501, -1, -1, -1, 505, 506, -1, -1, -1, 159,
1924 14, -1, 162, 401, -1, 403, -1, -1, -1, 520,
1925 408, -1, -1, 524, -1, 175, -1, -1, -1, -1,
1926 -1, 532, 533, 192, -1, -1, 537, -1, -1, -1,
1927 -1, -1, -1, 47, 203, 546, -1, -1, -1, -1,
1928 -1, -1, -1, -1, -1, -1, 206, 207, -1, 560,
1929 -1, -1, -1, -1, -1, 224, -1, -1, -1, 219,
1930 -1, 572, -1, -1, 224, -1, -1, 81, 579, -1,
1931 -1, -1, 232, 584, 585, -1, -1, -1, -1, 93,
1932 94, 95, -1, 481, -1, 99, -1, -1, -1, -1,
1933 -1, -1, -1, -1, 605, -1, -1, -1, 609, -1,
1934 -1, 612, -1, -1, -1, -1, -1, 618, -1, 278,
1935 1, -1, 3, 4, 5, -1, -1, -1, 278, -1,
1936 -1, -1, -1, -1, 635, 636, -1, 638, -1, 289,
1937 641, 300, 292, 293, -1, 295, -1, 28, -1, -1,
1938 300, -1, 302, -1, -1, -1, -1, -1, -1, 309,
1939 164, -1, -1, -1, 665, -1, -1, -1, -1, 319,
1940 320, 321, -1, -1, -1, -1, -1, -1, -1, -1,
1941 -1, 682, -1, -1, 685, 278, -1, -1, 192, -1,
1942 71, 72, 342, 343, -1, -1, -1, -1, -1, 203,
1943 -1, 294, -1, -1, 354, -1, -1, 300, 301, -1,
1944 -1, -1, -1, -1, -1, -1, -1, -1, 311, -1,
1945 224, 102, 103, -1, -1, 278, 376, -1, 109, -1,
1946 111, -1, -1, -1, -1, -1, 386, -1, -1, -1,
1947 -1, 294, 401, -1, 403, 395, -1, 300, -1, 408,
1948 -1, 401, -1, 403, -1, -1, -1, 350, 408, -1,
1949 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1950 -1, -1, -1, -1, 278, -1, -1, -1, 428, -1,
1951 -1, 285, -1, 376, 377, -1, -1, -1, 292, -1,
1952 383, -1, -1, 443, 444, -1, 300, 350, -1, -1,
1953 -1, 1, -1, 3, 4, 5, 6, -1, 8, 9,
1954 403, -1, 405, -1, 407, -1, -1, 410, -1, -1,
1955 -1, 414, 481, 376, 377, -1, -1, 420, 28, 422,
1956 383, 481, -1, -1, 484, 485, -1, -1, -1, -1,
1957 433, -1, -1, -1, -1, -1, -1, -1, -1, 499,
1958 403, 501, 405, -1, 407, -1, -1, 410, -1, -1,
1959 -1, 414, -1, -1, -1, -1, -1, 420, -1, -1,
1960 -1, 71, 72, 73, -1, -1, -1, -1, -1, -1,
1961 530, -1, -1, -1, -1, -1, -1, -1, 481, -1,
1962 -1, 395, -1, -1, -1, -1, -1, 401, -1, 403,
1963 404, -1, 102, 103, 408, -1, -1, -1, -1, 109,
1964 -1, 111, 505, 506, -1, -1, 116, 117, 118, 119,
1965 120, 121, -1, -1, -1, -1, -1, -1, 481, 579,
1966 -1, 524, 132, 133, 584, 585, -1, -1, -1, 532,
1967 533, -1, -1, -1, 537, -1, -1, -1, -1, -1,
1968 -1, -1, 505, 506, -1, -1, -1, -1, 1, -1,
1969 3, 4, 5, 6, -1, 8, 9, -1, -1, -1,
1970 -1, 524, -1, -1, -1, -1, -1, 481, -1, 532,
1971 533, -1, -1, -1, 537, 28, 29, 30, 31, 32,
1972 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
1973 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
1974 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1975 -1, -1, -1, 66, -1, 618, -1, -1, 71, 72,
1976 73, -1, 75, -1, 77, -1, -1, -1, -1, -1,
1977 -1, -1, 85, -1, -1, -1, -1, -1, -1, -1,
1978 -1, -1, -1, -1, -1, -1, -1, 100, -1, 102,
1979 103, -1, -1, -1, -1, 618, 109, -1, 111, -1,
1980 -1, -1, -1, 116, 117, 118, 119, 120, 121, 1,
1981 -1, 3, 4, 5, 6, -1, 8, 9, 131, 132,
1982 133, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1983 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
1984 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
1985 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
1986 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
1987 62, -1, -1, -1, 66, -1, -1, -1, -1, 71,
1988 72, 73, -1, 75, -1, 77, -1, -1, -1, -1,
1989 -1, -1, -1, 85, -1, -1, -1, -1, -1, -1,
1990 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
1991 102, 103, -1, -1, -1, -1, -1, 109, -1, 111,
1992 -1, -1, -1, -1, 116, 117, 118, 119, 120, 121,
1993 1, -1, 3, 4, 5, 6, -1, 8, 9, 131,
1994 132, 133, -1, -1, -1, -1, -1, -1, -1, -1,
1995 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
1996 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1997 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
1998 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
1999 61, 62, -1, -1, -1, 66, -1, -1, -1, -1,
2000 71, 72, 73, -1, 75, -1, 77, -1, -1, -1,
2001 -1, -1, -1, -1, 85, -1, -1, -1, -1, -1,
2002 -1, -1, -1, -1, -1, -1, -1, -1, -1, 100,
2003 -1, 102, 103, -1, -1, -1, -1, -1, 109, -1,
2004 111, -1, -1, -1, -1, 116, 117, 118, 119, 120,
2005 121, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2006 131, 132, 133, -1, -1, -1, -1, -1, -1, -1,
2007 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2008 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2009 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2010 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2011 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2012 -1, 71, 72, 73, -1, 75, -1, -1, -1, -1,
2013 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2014 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2015 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2016 -1, 111, -1, -1, -1, -1, 116, 117, 118, 119,
2017 120, 121, 1, -1, 3, 4, 5, 6, -1, 8,
2018 9, 131, 132, 133, -1, -1, -1, -1, -1, -1,
2019 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
2020 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2021 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2022 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2023 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
2024 -1, -1, 71, 72, 73, -1, 75, -1, -1, -1,
2025 -1, -1, -1, -1, -1, -1, 85, -1, -1, -1,
2026 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2027 -1, 100, -1, 102, 103, -1, -1, -1, -1, -1,
2028 109, -1, 111, -1, -1, -1, -1, 116, 117, 118,
2029 119, 120, 121, 1, -1, 3, 4, 5, 6, -1,
2030 8, 9, 131, 132, 133, -1, -1, -1, -1, -1,
2031 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2032 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2033 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2034 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2035 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2036 -1, -1, -1, 71, 72, 73, -1, 75, -1, -1,
2037 -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
2038 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2039 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2040 -1, 109, -1, 111, -1, -1, -1, -1, 116, 117,
2041 118, 119, 120, 121, 1, -1, 3, 4, 5, 6,
2042 -1, 8, 9, 131, 132, 133, -1, -1, -1, -1,
2043 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2044 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2045 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2046 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2047 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2048 -1, -1, -1, -1, 71, 72, 73, -1, 75, -1,
2049 -1, -1, -1, -1, -1, -1, -1, -1, 85, -1,
2050 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2051 -1, -1, -1, 100, -1, 102, 103, -1, -1, -1,
2052 -1, -1, 109, -1, 111, -1, -1, -1, -1, 116,
2053 117, 118, 119, 120, 121, 1, -1, 3, 4, 5,
2054 6, -1, 8, 9, 131, 132, 133, -1, -1, -1,
2055 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2056 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
2057 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2058 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2059 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2060 66, -1, -1, -1, -1, 71, 72, 73, -1, 75,
2061 -1, -1, -1, -1, -1, -1, -1, -1, -1, 85,
2062 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2063 -1, -1, -1, -1, 100, -1, 102, 103, -1, -1,
2064 -1, -1, -1, 109, 1, 111, 3, 4, 5, -1,
2065 116, 117, 118, 119, 120, 121, -1, -1, -1, -1,
2066 -1, -1, -1, -1, -1, 131, 132, 133, -1, -1,
2067 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2068 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2069 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2070 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2071 -1, 68, -1, -1, 71, 72, -1, 74, 75, -1,
2072 -1, 78, 79, -1, -1, -1, -1, -1, 85, -1,
2073 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2074 -1, -1, -1, 100, -1, 102, 103, -1, -1, -1,
2075 -1, -1, 109, 1, 111, 3, 4, 5, -1, -1,
2076 117, -1, -1, 120, -1, -1, -1, -1, -1, -1,
2077 -1, -1, -1, -1, 131, -1, 133, -1, -1, -1,
2078 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2079 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2080 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2081 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2082 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
2083 78, 79, -1, -1, -1, -1, -1, 85, -1, -1,
2084 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2085 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2086 -1, 109, 1, 111, 3, 4, 5, -1, -1, 117,
2087 -1, -1, 120, -1, -1, -1, -1, -1, -1, -1,
2088 -1, -1, -1, 131, -1, 133, -1, -1, -1, 28,
2089 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2090 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2091 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2092 -1, -1, -1, -1, -1, -1, -1, 66, -1, 68,
2093 -1, -1, 71, 72, -1, 74, 75, -1, -1, 78,
2094 79, -1, -1, -1, -1, -1, 85, -1, -1, -1,
2095 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2096 -1, 100, -1, 102, 103, -1, -1, -1, -1, -1,
2097 109, 1, 111, 3, 4, 5, -1, -1, 117, -1,
2098 -1, 120, -1, -1, -1, -1, -1, -1, -1, -1,
2099 -1, -1, 131, -1, 133, -1, -1, -1, 28, 29,
2100 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2101 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2102 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2103 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2104 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2105 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2106 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2107 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2108 1, 111, 3, 4, 5, -1, -1, 117, -1, -1,
2109 120, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2110 -1, 131, -1, 133, -1, -1, -1, 28, 29, 30,
2111 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2112 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2113 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2114 -1, -1, -1, -1, -1, 66, -1, 68, -1, -1,
2115 71, 72, -1, 74, 75, -1, -1, 78, 79, -1,
2116 -1, -1, -1, -1, 85, -1, -1, -1, -1, -1,
2117 -1, -1, -1, -1, -1, -1, -1, -1, -1, 100,
2118 -1, 102, 103, -1, -1, -1, -1, -1, 109, 1,
2119 111, 3, 4, 5, -1, -1, 117, -1, -1, 120,
2120 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2121 131, -1, 133, -1, -1, -1, 28, 29, 30, 31,
2122 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2123 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2124 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2125 -1, -1, -1, -1, 66, -1, 68, -1, -1, 71,
2126 72, -1, 74, 75, -1, -1, 78, 79, -1, -1,
2127 -1, -1, -1, 85, -1, -1, -1, -1, -1, -1,
2128 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
2129 102, 103, -1, -1, -1, -1, -1, 109, 1, 111,
2130 3, 4, 5, -1, -1, 117, -1, -1, 120, -1,
2131 -1, -1, -1, -1, -1, -1, -1, -1, -1, 131,
2132 -1, 133, -1, -1, -1, 28, 29, 30, 31, 32,
2133 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
2134 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
2135 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2136 -1, -1, -1, 66, -1, 68, -1, -1, 71, 72,
2137 -1, 74, 75, -1, -1, 78, 79, -1, -1, -1,
2138 -1, -1, 85, -1, -1, -1, -1, -1, -1, -1,
2139 -1, -1, -1, -1, -1, -1, -1, 100, -1, 102,
2140 103, -1, -1, -1, -1, -1, 109, -1, 111, -1,
2141 -1, -1, -1, -1, 117, -1, 1, 120, 3, 4,
2142 5, 6, -1, 8, 9, -1, -1, -1, 131, -1,
2143 133, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2144 -1, -1, -1, 28, 29, 30, 31, 32, 33, 34,
2145 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2146 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
2147 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
2148 -1, 66, -1, -1, -1, -1, 71, 72, 73, -1,
2149 75, -1, 77, -1, -1, -1, -1, -1, -1, -1,
2150 85, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2151 -1, -1, -1, -1, -1, 100, -1, 102, 103, -1,
2152 -1, -1, -1, -1, 109, -1, 111, -1, 28, -1,
2153 -1, 116, 117, 118, 119, 120, 121, -1, -1, -1,
2154 -1, -1, -1, -1, -1, -1, 131, 132, -1, -1,
2155 -1, -1, 52, 53, 54, 55, 56, 57, 58, 59,
2156 60, 61, 62, -1, -1, -1, -1, -1, -1, -1,
2157 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
2158 -1, 8, 9, -1, -1, -1, -1, -1, -1, -1,
2159 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2160 -1, 28, 102, 103, -1, -1, -1, -1, -1, 109,
2161 -1, 111, -1, -1, -1, -1, 116, 117, 118, 119,
2162 120, 121, -1, -1, -1, -1, -1, -1, -1, -1,
2163 -1, 131, 132, -1, -1, -1, -1, -1, -1, -1,
2164 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
2165 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
2166 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2167 -1, -1, -1, -1, 28, 102, 103, -1, -1, -1,
2168 -1, -1, 109, 110, 111, -1, -1, -1, -1, 116,
2169 117, 118, 119, 120, 121, -1, -1, -1, -1, 1,
2170 -1, 3, 4, 5, 6, 132, 8, 9, -1, -1,
2171 -1, -1, -1, -1, -1, -1, -1, 71, 72, 73,
2172 -1, -1, -1, -1, -1, 1, 28, 3, 4, 5,
2173 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
2174 -1, -1, -1, -1, -1, -1, -1, -1, 102, 103,
2175 -1, -1, 28, -1, -1, 109, 110, 111, -1, -1,
2176 -1, -1, 116, 117, 118, 119, 120, 121, -1, 71,
2177 72, 73, -1, -1, -1, -1, -1, -1, 132, -1,
2178 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2179 -1, -1, -1, -1, -1, 71, 72, 73, -1, -1,
2180 102, 103, -1, -1, -1, -1, -1, 109, -1, 111,
2181 -1, -1, -1, -1, 116, 117, 118, 119, 120, 121,
2182 -1, -1, -1, -1, -1, -1, 102, 103, -1, -1,
2183 132, -1, -1, 109, 1, 111, 3, 4, 5, -1,
2184 116, 117, 118, 119, 120, 121, -1, -1, -1, -1,
2185 -1, -1, -1, -1, -1, -1, 132, -1, -1, -1,
2186 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2187 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2188 47, 48, 49, 50, -1, -1, 1, -1, 3, 4,
2189 5, 6, -1, 8, 9, -1, -1, -1, -1, 66,
2190 -1, 68, -1, -1, 71, 72, -1, 74, 75, -1,
2191 -1, 78, 79, 28, -1, -1, -1, -1, 85, 1,
2192 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2193 -1, -1, -1, 100, -1, 102, 103, -1, -1, -1,
2194 -1, -1, 109, -1, 111, -1, 28, -1, -1, -1,
2195 117, -1, -1, 120, -1, -1, 71, 72, 73, -1,
2196 -1, -1, -1, -1, 131, -1, -1, -1, -1, -1,
2197 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
2198 -1, -1, -1, -1, -1, -1, -1, 102, 103, 71,
2199 72, 73, -1, -1, 109, 110, 111, 28, -1, -1,
2200 -1, 116, 117, 118, 119, 120, 121, -1, -1, -1,
2201 -1, -1, -1, -1, -1, -1, 131, -1, -1, -1,
2202 102, 103, -1, -1, -1, -1, -1, 109, 110, 111,
2203 -1, -1, -1, -1, 116, 117, 118, 119, 120, 121,
2204 71, 72, 73, -1, -1, -1, -1, -1, -1, 131,
2205 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2206 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2207 -1, 102, 103, -1, -1, -1, 3, -1, 109, -1,
2208 111, -1, -1, -1, -1, 116, 117, 118, 119, 120,
2209 121, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2210 131, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2211 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2212 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2213 1, -1, 3, 4, 5, 6, -1, 8, 9, 66,
2214 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2215 -1, -1, 79, -1, -1, -1, -1, 28, 85, -1,
2216 -1, -1, -1, -1, 1, -1, 3, 4, 5, 6,
2217 -1, 8, 9, 100, -1, -1, -1, -1, -1, -1,
2218 -1, 3, 109, -1, -1, -1, 113, -1, -1, -1,
2219 117, 28, -1, -1, -1, -1, -1, -1, -1, -1,
2220 71, 72, 73, -1, -1, 132, 28, 29, 30, 31,
2221 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2222 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2223 -1, 102, 103, -1, 71, 72, 73, 74, 109, 110,
2224 111, -1, 79, -1, 66, 116, 117, 118, 119, 120,
2225 121, -1, 74, 75, -1, -1, -1, 79, -1, -1,
2226 -1, -1, -1, 85, -1, 102, 103, -1, -1, -1,
2227 -1, -1, 109, 110, 111, -1, -1, -1, 100, 116,
2228 117, 118, 119, 120, 121, 3, -1, 109, -1, -1,
2229 -1, -1, -1, -1, -1, 117, -1, -1, -1, -1,
2230 -1, -1, -1, -1, -1, -1, -1, 129, -1, 131,
2231 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2232 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2233 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2234 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2235 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
2236 -1, 79, -1, -1, -1, -1, -1, 85, -1, -1,
2237 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2238 -1, 1, 100, 3, 4, 5, 6, -1, 8, 9,
2239 -1, 109, -1, -1, -1, -1, -1, -1, -1, 117,
2240 -1, -1, -1, -1, -1, -1, -1, -1, 28, -1,
2241 -1, -1, -1, 131, 34, 35, 36, 37, 38, 39,
2242 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2243 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2244 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2245 -1, 71, 72, 73, 74, 75, -1, -1, -1, 79,
2246 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2247 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2248 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2249 110, 111, -1, -1, -1, -1, 116, 117, 118, 119,
2250 120, 121, 1, -1, 3, 4, 5, 6, -1, 8,
2251 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2252 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
2253 -1, -1, -1, -1, -1, 34, 35, 36, 37, 38,
2254 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2255 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2256 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
2257 -1, -1, 71, 72, 73, -1, 75, -1, -1, -1,
2258 -1, -1, -1, -1, -1, -1, 85, -1, -1, -1,
2259 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2260 -1, 100, -1, 102, 103, -1, -1, -1, -1, -1,
2261 109, 110, 111, -1, -1, -1, -1, 116, 117, 118,
2262 119, 120, 121, 1, -1, 3, 4, 5, 6, -1,
2263 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
2264 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2265 28, -1, -1, -1, -1, -1, 34, 35, 36, 37,
2266 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2267 48, 49, 50, -1, 1, -1, 3, 4, 5, 6,
2268 -1, 8, 9, -1, -1, -1, -1, -1, 66, -1,
2269 -1, -1, -1, 71, 72, 73, -1, 75, -1, -1,
2270 -1, 28, -1, -1, -1, -1, -1, 85, 1, -1,
2271 3, 4, 5, 6, -1, 8, 9, -1, -1, -1,
2272 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2273 -1, 109, 110, 111, -1, 28, -1, -1, 116, 117,
2274 118, 119, 120, 121, 71, 72, 73, -1, -1, -1,
2275 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1,
2276 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2277 -1, -1, -1, -1, -1, 102, 103, -1, 71, 72,
2278 73, -1, 109, -1, 111, -1, 28, 114, -1, 116,
2279 117, 118, 119, 120, 121, -1, -1, -1, -1, -1,
2280 -1, -1, -1, -1, -1, -1, -1, -1, -1, 102,
2281 103, -1, -1, -1, -1, -1, 109, -1, 111, -1,
2282 -1, 114, -1, 116, 117, 118, 119, 120, 121, 71,
2283 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
2284 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2285 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
2286 102, 103, -1, -1, -1, -1, -1, 109, -1, 111,
2287 -1, -1, 114, -1, 116, 117, 118, 119, 120, 121,
2288 -1, -1, -1, 1, -1, 3, 4, 5, 6, -1,
2289 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
2290 -1, -1, 71, 72, 73, -1, -1, -1, -1, 1,
2291 28, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2292 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2293 -1, -1, -1, 102, 103, -1, 28, -1, -1, -1,
2294 109, 110, 111, -1, -1, -1, -1, 116, 117, 118,
2295 119, 120, 121, 71, 72, 73, -1, -1, -1, -1,
2296 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
2297 -1, -1, -1, -1, -1, -1, -1, -1, -1, 71,
2298 72, 73, -1, -1, 102, 103, -1, 28, -1, -1,
2299 -1, 109, 110, 111, -1, -1, -1, -1, 116, 117,
2300 118, 119, 120, 121, -1, -1, -1, -1, -1, -1,
2301 102, 103, -1, -1, -1, -1, -1, 109, -1, 111,
2302 -1, -1, -1, -1, 116, 117, 118, 119, 120, 121,
2303 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
2304 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
2305 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2306 28, 102, 103, -1, -1, -1, -1, -1, 109, -1,
2307 111, -1, -1, -1, -1, 116, 117, 118, 119, 120,
2308 121, -1, -1, 3, -1, -1, -1, -1, -1, -1,
2309 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2310 -1, -1, -1, 71, 72, 73, -1, -1, 28, 29,
2311 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2312 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2313 50, -1, -1, -1, 102, 103, -1, -1, -1, -1,
2314 -1, 109, -1, 111, -1, -1, 66, -1, 116, 117,
2315 118, 119, 120, 121, 74, 75, -1, -1, -1, 79,
2316 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2317 -1, -1, -1, 3, -1, -1, -1, -1, -1, -1,
2318 100, -1, -1, -1, -1, -1, -1, -1, -1, 109,
2319 110, -1, -1, 113, -1, -1, -1, 117, 28, 29,
2320 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2321 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2322 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2323 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2324 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
2325 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2326 -1, -1, -1, 3, -1, -1, -1, -1, -1, -1,
2327 100, -1, -1, -1, -1, -1, -1, -1, -1, 109,
2328 -1, -1, -1, 113, -1, -1, -1, 117, 28, 29,
2329 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2330 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2331 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2332 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2333 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
2334 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2335 -1, -1, -1, 3, -1, -1, -1, -1, -1, -1,
2336 100, -1, -1, -1, -1, -1, -1, -1, -1, 109,
2337 -1, -1, -1, -1, -1, -1, -1, 117, 28, 29,
2338 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2339 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2340 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2341 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2342 -1, -1, -1, -1, -1, 75, -1, -1, -1, -1,
2343 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2344 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2345 100, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2346 110, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2347 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2348 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2349 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2350 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2351 -1, -1, 79, -1, -1, -1, -1, -1, 85, -1,
2352 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2353 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
2354 -1, -1, 109, 110, -1, -1, 113, -1, -1, -1,
2355 117, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2356 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2357 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2358 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2359 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2360 -1, -1, 79, -1, -1, -1, -1, -1, 85, -1,
2361 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2362 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
2363 -1, -1, 109, -1, -1, -1, 113, -1, -1, -1,
2364 117, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2365 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2366 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2367 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2368 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2369 -1, -1, 79, -1, -1, -1, -1, -1, 85, -1,
2370 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2371 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
2372 -1, -1, 109, -1, -1, -1, 113, -1, -1, -1,
2373 117, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2374 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2375 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2376 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2377 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2378 -1, -1, 79, -1, -1, -1, -1, -1, 85, -1,
2379 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2380 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
2381 -1, -1, 109, 110, -1, -1, -1, -1, -1, -1,
2382 117, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2383 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2384 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2385 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2386 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2387 -1, -1, 79, -1, -1, -1, -1, -1, -1, -1,
2388 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2389 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
2390 -1, -1, 109, -1, -1, -1, 113, -1, -1, -1,
2391 117, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2392 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2393 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2394 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2395 -1, -1, -1, -1, -1, -1, -1, 74, 75, 28,
2396 -1, -1, 79, -1, -1, 34, 35, 36, 37, 38,
2397 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2398 49, 50, -1, 100, -1, -1, -1, -1, -1, -1,
2399 -1, -1, 109, -1, -1, -1, 113, 66, -1, -1,
2400 117, -1, -1, -1, -1, 74, 75, -1, -1, -1,
2401 79, -1, -1, -1, -1, -1, 85, -1, -1, -1,
2402 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2403 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
2404 109, -1, -1, -1, 113, -1, -1, -1, 117, 28,
2405 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2406 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2407 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2408 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
2409 -1, -1, -1, -1, -1, -1, 75, -1, -1, -1,
2410 -1, -1, -1, -1, -1, -1, 85, -1, -1, -1,
2411 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2412 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
2413 -1, 110, 28, 29, 30, 31, 32, 33, 34, 35,
2414 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2415 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2416 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2417 66, -1, -1, -1, -1, -1, -1, -1, -1, 75,
2418 -1, -1, -1, -1, -1, -1, -1, -1, -1, 85,
2419 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2420 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
2421 -1, -1, -1, -1, 110, 28, 29, 30, 31, 32,
2422 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
2423 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
2424 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2425 -1, -1, -1, 66, -1, -1, -1, -1, -1, -1,
2426 -1, -1, 75, -1, -1, -1, -1, -1, -1, -1,
2427 -1, -1, 85, -1, -1, -1, -1, -1, -1, -1,
2428 -1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
2429 -1, -1, -1, -1, -1, -1, 109, 28, 29, 30,
2430 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2431 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2432 51, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2433 -1, -1, -1, -1, -1, 66, -1, -1, -1, -1,
2434 -1, -1, -1, -1, 75, -1, -1, -1, -1, -1,
2435 -1, -1, -1, -1, 85, -1, -1, -1, -1, -1,
2436 -1, -1, -1, -1, -1, -1, -1, -1, -1, 100,
2437 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2438 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2439 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2440 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2441 -1, -1, -1, -1, -1, -1, -1, 75, -1, -1,
2442 -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
2443 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2444 -1, -1, 100, 28, 29, 30, 31, 32, 33, 34,
2445 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2446 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2447 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2448 -1, 66, -1, -1, -1, -1, -1, -1, -1, -1,
2449 75, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2450 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2451 -1, -1, -1, -1, -1, 100, 28, 29, 30, 31,
2452 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2453 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2454 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2455 -1, -1, -1, -1, 66, -1, -1, -1, -1, -1,
2456 -1, -1, -1, 75, -1, -1, -1, -1, -1, -1,
2457 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2458 -1, -1, -1, -1, -1, -1, -1, -1, 100
2461 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2462 symbol of state STATE-NUM. */
2463 static const yytype_uint8 yystos[] =
2465 0, 1, 3, 4, 5, 6, 8, 9, 28, 71,
2466 72, 73, 102, 103, 109, 111, 116, 117, 118, 119,
2467 120, 121, 135, 136, 137, 139, 142, 143, 145, 146,
2468 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
2469 157, 158, 173, 174, 222, 224, 238, 109, 137, 140,
2470 142, 144, 109, 143, 143, 29, 30, 31, 32, 33,
2471 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2472 44, 45, 46, 47, 48, 49, 50, 66, 75, 85,
2473 100, 164, 169, 172, 173, 175, 177, 178, 179, 187,
2474 188, 143, 157, 161, 164, 161, 110, 158, 160, 163,
2475 172, 173, 175, 177, 188, 207, 222, 132, 7, 8,
2476 9, 109, 112, 113, 18, 19, 20, 21, 22, 23,
2477 24, 25, 26, 27, 130, 159, 146, 117, 122, 123,
2478 118, 119, 10, 11, 12, 13, 124, 125, 14, 15,
2479 116, 126, 127, 16, 17, 128, 132, 0, 143, 207,
2480 7, 8, 9, 109, 112, 113, 132, 135, 174, 109,
2481 74, 79, 109, 113, 117, 169, 170, 171, 172, 175,
2482 177, 188, 192, 194, 202, 132, 135, 174, 34, 35,
2483 36, 37, 38, 39, 40, 41, 42, 43, 46, 47,
2484 66, 100, 166, 169, 172, 174, 176, 177, 178, 187,
2485 188, 113, 194, 166, 110, 115, 109, 113, 170, 172,
2486 175, 177, 188, 191, 193, 202, 110, 112, 131, 132,
2487 133, 138, 139, 157, 164, 209, 225, 231, 232, 233,
2488 234, 235, 236, 237, 135, 110, 138, 141, 158, 135,
2489 160, 138, 158, 146, 146, 146, 147, 147, 148, 148,
2490 149, 149, 149, 149, 150, 150, 151, 152, 153, 154,
2491 155, 160, 133, 237, 110, 110, 135, 110, 141, 135,
2492 160, 135, 189, 190, 132, 132, 173, 110, 164, 194,
2493 203, 204, 205, 161, 172, 201, 202, 192, 202, 109,
2494 113, 192, 68, 78, 109, 120, 131, 133, 135, 139,
2495 164, 170, 180, 181, 182, 183, 184, 196, 197, 199,
2496 200, 202, 223, 224, 226, 227, 228, 229, 230, 132,
2497 132, 109, 113, 169, 172, 176, 177, 188, 194, 161,
2498 113, 113, 194, 158, 110, 193, 203, 114, 161, 173,
2499 191, 202, 109, 113, 191, 146, 222, 133, 237, 130,
2500 109, 135, 197, 132, 216, 217, 115, 131, 131, 232,
2501 234, 235, 133, 110, 115, 114, 129, 133, 110, 114,
2502 130, 115, 133, 189, 189, 110, 109, 170, 193, 195,
2503 196, 198, 200, 202, 110, 110, 115, 114, 172, 202,
2504 192, 110, 203, 161, 50, 165, 169, 172, 173, 175,
2505 179, 164, 197, 109, 117, 170, 195, 202, 164, 130,
2506 109, 129, 131, 135, 170, 185, 186, 195, 197, 200,
2507 202, 200, 202, 133, 184, 115, 131, 109, 113, 110,
2508 135, 203, 206, 170, 200, 131, 131, 217, 217, 217,
2509 131, 217, 133, 180, 180, 173, 161, 113, 114, 161,
2510 161, 113, 110, 110, 114, 114, 191, 110, 203, 114,
2511 161, 173, 133, 209, 133, 52, 53, 54, 55, 56,
2512 57, 58, 59, 60, 61, 62, 77, 131, 135, 160,
2513 162, 164, 211, 212, 213, 214, 215, 217, 218, 219,
2514 220, 221, 223, 233, 138, 158, 157, 161, 190, 131,
2515 133, 131, 133, 196, 200, 202, 170, 198, 51, 205,
2516 110, 114, 135, 174, 132, 135, 169, 172, 173, 175,
2517 193, 135, 174, 197, 202, 110, 109, 209, 110, 161,
2518 132, 200, 202, 115, 131, 129, 171, 170, 200, 200,
2519 181, 114, 161, 173, 110, 110, 115, 200, 133, 133,
2520 110, 114, 161, 114, 114, 161, 110, 114, 114, 161,
2521 129, 109, 109, 109, 211, 109, 135, 131, 131, 131,
2522 160, 135, 129, 131, 131, 167, 168, 195, 162, 214,
2523 162, 211, 133, 131, 180, 180, 198, 69, 70, 133,
2524 132, 132, 135, 110, 133, 237, 200, 186, 161, 200,
2525 114, 114, 135, 114, 114, 129, 211, 160, 160, 110,
2526 160, 56, 110, 218, 131, 131, 130, 211, 115, 131,
2527 130, 133, 133, 217, 217, 69, 70, 133, 69, 70,
2528 133, 132, 133, 129, 211, 110, 110, 211, 110, 109,
2529 211, 110, 218, 161, 168, 132, 158, 208, 70, 133,
2530 69, 133, 217, 217, 217, 217, 69, 70, 133, 161,
2531 211, 211, 211, 160, 211, 110, 160, 131, 208, 210,
2532 217, 217, 70, 133, 69, 133, 70, 133, 69, 133,
2533 217, 217, 64, 110, 211, 110, 115, 133, 133, 133,
2534 217, 217, 217, 217, 70, 133, 69, 133, 211, 131,
2535 211, 133, 208, 133, 133, 133, 133, 217, 217, 133,
2539 #define yyerrok (yyerrstatus = 0)
2540 #define yyclearin (yychar = YYEMPTY)
2541 #define YYEMPTY (-2)
2544 #define YYACCEPT goto yyacceptlab
2545 #define YYABORT goto yyabortlab
2546 #define YYERROR goto yyerrorlab
2549 /* Like YYERROR except do call yyerror. This remains here temporarily
2550 to ease the transition to the new meaning of YYERROR, for GCC.
2551 Once GCC version 2 has supplanted version 1, this can go. However,
2552 YYFAIL appears to be in use. Nevertheless, it is formally deprecated
2553 in Bison 2.4.2's NEWS entry, where a plan to phase it out is
2556 #define YYFAIL goto yyerrlab
2558 /* This is here to suppress warnings from the GCC cpp's
2559 -Wunused-macros. Normally we don't worry about that warning, but
2560 some users do, and we want to make it easy for users to remove
2561 YYFAIL uses, which will produce warnings from Bison 2.5. */
2564 #define YYRECOVERING() (!!yyerrstatus)
2566 #define YYBACKUP(Token, Value) \
2568 if (yychar == YYEMPTY && yylen == 1) \
2572 yytoken = YYTRANSLATE (yychar); \
2578 yyerror (YY_("syntax error: cannot back up")); \
2585 #define YYERRCODE 256
2588 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2589 If N is 0, then set CURRENT to the empty location which ends
2590 the previous symbol: RHS[0] (always defined). */
2592 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2593 #ifndef YYLLOC_DEFAULT
2594 # define YYLLOC_DEFAULT(Current, Rhs, N) \
2598 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
2599 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
2600 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
2601 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
2605 (Current).first_line = (Current).last_line = \
2606 YYRHSLOC (Rhs, 0).last_line; \
2607 (Current).first_column = (Current).last_column = \
2608 YYRHSLOC (Rhs, 0).last_column; \
2614 /* YY_LOCATION_PRINT -- Print the location on the stream.
2615 This macro was not mandated originally: define only if we know
2616 we won't break user code: when these are the locations we know. */
2618 #ifndef YY_LOCATION_PRINT
2619 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
2620 # define YY_LOCATION_PRINT(File, Loc) \
2621 fprintf (File, "%d.%d-%d.%d", \
2622 (Loc).first_line, (Loc).first_column, \
2623 (Loc).last_line, (Loc).last_column)
2625 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2630 /* YYLEX -- calling `yylex' with the right arguments. */
2633 # define YYLEX yylex (YYLEX_PARAM)
2635 # define YYLEX yylex ()
2638 /* Enable debugging if requested. */
2642 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
2643 # define YYFPRINTF fprintf
2646 # define YYDPRINTF(Args) \
2652 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
2656 YYFPRINTF (stderr, "%s ", Title); \
2657 yy_symbol_print (stderr, \
2658 Type, Value, Location); \
2659 YYFPRINTF (stderr, "\n"); \
2664 /*--------------------------------.
2665 | Print this symbol on YYOUTPUT. |
2666 `--------------------------------*/
2669 #if (defined __STDC__ || defined __C99__FUNC__ \
2670 || defined __cplusplus || defined _MSC_VER)
2672 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
2675 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp)
2678 YYSTYPE const * const yyvaluep;
2679 YYLTYPE const * const yylocationp;
2684 YYUSE (yylocationp);
2686 if (yytype < YYNTOKENS)
2687 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
2699 /*--------------------------------.
2700 | Print this symbol on YYOUTPUT. |
2701 `--------------------------------*/
2703 #if (defined __STDC__ || defined __C99__FUNC__ \
2704 || defined __cplusplus || defined _MSC_VER)
2706 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
2709 yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp)
2712 YYSTYPE const * const yyvaluep;
2713 YYLTYPE const * const yylocationp;
2716 if (yytype < YYNTOKENS)
2717 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
2719 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
2721 YY_LOCATION_PRINT (yyoutput, *yylocationp);
2722 YYFPRINTF (yyoutput, ": ");
2723 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp);
2724 YYFPRINTF (yyoutput, ")");
2727 /*------------------------------------------------------------------.
2728 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
2730 `------------------------------------------------------------------*/
2732 #if (defined __STDC__ || defined __C99__FUNC__ \
2733 || defined __cplusplus || defined _MSC_VER)
2735 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
2738 yy_stack_print (yybottom, yytop)
2739 yytype_int16 *yybottom;
2740 yytype_int16 *yytop;
2743 YYFPRINTF (stderr, "Stack now");
2744 for (; yybottom <= yytop; yybottom++)
2746 int yybot = *yybottom;
2747 YYFPRINTF (stderr, " %d", yybot);
2749 YYFPRINTF (stderr, "\n");
2752 # define YY_STACK_PRINT(Bottom, Top) \
2755 yy_stack_print ((Bottom), (Top)); \
2759 /*------------------------------------------------.
2760 | Report that the YYRULE is going to be reduced. |
2761 `------------------------------------------------*/
2763 #if (defined __STDC__ || defined __C99__FUNC__ \
2764 || defined __cplusplus || defined _MSC_VER)
2766 yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule)
2769 yy_reduce_print (yyvsp, yylsp, yyrule)
2775 int yynrhs = yyr2[yyrule];
2777 unsigned long int yylno = yyrline[yyrule];
2778 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
2780 /* The symbols being reduced. */
2781 for (yyi = 0; yyi < yynrhs; yyi++)
2783 YYFPRINTF (stderr, " $%d = ", yyi + 1);
2784 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
2785 &(yyvsp[(yyi + 1) - (yynrhs)])
2786 , &(yylsp[(yyi + 1) - (yynrhs)]) );
2787 YYFPRINTF (stderr, "\n");
2791 # define YY_REDUCE_PRINT(Rule) \
2794 yy_reduce_print (yyvsp, yylsp, Rule); \
2797 /* Nonzero means print parse trace. It is left uninitialized so that
2798 multiple parsers can coexist. */
2800 #else /* !YYDEBUG */
2801 # define YYDPRINTF(Args)
2802 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
2803 # define YY_STACK_PRINT(Bottom, Top)
2804 # define YY_REDUCE_PRINT(Rule)
2805 #endif /* !YYDEBUG */
2808 /* YYINITDEPTH -- initial size of the parser's stacks. */
2810 # define YYINITDEPTH 200
2813 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
2814 if the built-in stack extension method is used).
2816 Do not make this value too large; the results are undefined if
2817 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
2818 evaluated with infinite-precision integer arithmetic. */
2821 # define YYMAXDEPTH 10000
2829 # if defined __GLIBC__ && defined _STRING_H
2830 # define yystrlen strlen
2832 /* Return the length of YYSTR. */
2833 #if (defined __STDC__ || defined __C99__FUNC__ \
2834 || defined __cplusplus || defined _MSC_VER)
2836 yystrlen (const char *yystr)
2844 for (yylen = 0; yystr[yylen]; yylen++)
2852 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
2853 # define yystpcpy stpcpy
2855 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
2857 #if (defined __STDC__ || defined __C99__FUNC__ \
2858 || defined __cplusplus || defined _MSC_VER)
2860 yystpcpy (char *yydest, const char *yysrc)
2863 yystpcpy (yydest, yysrc)
2869 const char *yys = yysrc;
2871 while ((*yyd++ = *yys++) != '\0')
2880 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
2881 quotes and backslashes, so that it's suitable for yyerror. The
2882 heuristic is that double-quoting is unnecessary unless the string
2883 contains an apostrophe, a comma, or backslash (other than
2884 backslash-backslash). YYSTR is taken from yytname. If YYRES is
2885 null, do not copy; instead, return the length of what the result
2888 yytnamerr (char *yyres, const char *yystr)
2893 char const *yyp = yystr;
2900 goto do_not_strip_quotes;
2904 goto do_not_strip_quotes;
2917 do_not_strip_quotes: ;
2921 return yystrlen (yystr);
2923 return yystpcpy (yyres, yystr) - yyres;
2927 /* Copy into YYRESULT an error message about the unexpected token
2928 YYCHAR while in state YYSTATE. Return the number of bytes copied,
2929 including the terminating null byte. If YYRESULT is null, do not
2930 copy anything; just return the number of bytes that would be
2931 copied. As a special case, return 0 if an ordinary "syntax error"
2932 message will do. Return YYSIZE_MAXIMUM if overflow occurs during
2933 size calculation. */
2935 yysyntax_error (char *yyresult, int yystate, int yychar)
2937 int yyn = yypact[yystate];
2939 if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
2943 int yytype = YYTRANSLATE (yychar);
2944 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
2945 YYSIZE_T yysize = yysize0;
2947 int yysize_overflow = 0;
2948 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
2949 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
2953 /* This is so xgettext sees the translatable formats that are
2954 constructed on the fly. */
2955 YY_("syntax error, unexpected %s");
2956 YY_("syntax error, unexpected %s, expecting %s");
2957 YY_("syntax error, unexpected %s, expecting %s or %s");
2958 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
2959 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
2963 static char const yyunexpected[] = "syntax error, unexpected %s";
2964 static char const yyexpecting[] = ", expecting %s";
2965 static char const yyor[] = " or %s";
2966 char yyformat[sizeof yyunexpected
2967 + sizeof yyexpecting - 1
2968 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
2969 * (sizeof yyor - 1))];
2970 char const *yyprefix = yyexpecting;
2972 /* Start YYX at -YYN if negative to avoid negative indexes in
2974 int yyxbegin = yyn < 0 ? -yyn : 0;
2976 /* Stay within bounds of both yycheck and yytname. */
2977 int yychecklim = YYLAST - yyn + 1;
2978 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
2981 yyarg[0] = yytname[yytype];
2982 yyfmt = yystpcpy (yyformat, yyunexpected);
2984 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
2985 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
2987 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
2991 yyformat[sizeof yyunexpected - 1] = '\0';
2994 yyarg[yycount++] = yytname[yyx];
2995 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
2996 yysize_overflow |= (yysize1 < yysize);
2998 yyfmt = yystpcpy (yyfmt, yyprefix);
3002 yyf = YY_(yyformat);
3003 yysize1 = yysize + yystrlen (yyf);
3004 yysize_overflow |= (yysize1 < yysize);
3007 if (yysize_overflow)
3008 return YYSIZE_MAXIMUM;
3012 /* Avoid sprintf, as that infringes on the user's name space.
3013 Don't have undefined behavior even if the translation
3014 produced a string with the wrong number of "%s"s. */
3015 char *yyp = yyresult;
3017 while ((*yyp = *yyf) != '\0')
3019 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
3021 yyp += yytnamerr (yyp, yyarg[yyi++]);
3034 #endif /* YYERROR_VERBOSE */
3037 /*-----------------------------------------------.
3038 | Release the memory associated to this symbol. |
3039 `-----------------------------------------------*/
3042 #if (defined __STDC__ || defined __C99__FUNC__ \
3043 || defined __cplusplus || defined _MSC_VER)
3045 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
3048 yydestruct (yymsg, yytype, yyvaluep, yylocationp)
3052 YYLTYPE *yylocationp;
3056 YYUSE (yylocationp);
3060 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
3064 case 135: /* "identifier" */
3066 /* Line 1009 of yacc.c */
3067 #line 151 "expression.y"
3068 { FreeIdentifier((yyvaluep->id)); };
3070 /* Line 1009 of yacc.c */
3071 #line 3072 "expression.ec"
3073 case 136: /* "primary_expression" */
3075 /* Line 1009 of yacc.c */
3076 #line 153 "expression.y"
3077 { FreeExpression((yyvaluep->exp)); };
3079 /* Line 1009 of yacc.c */
3080 #line 3081 "expression.ec"
3082 case 139: /* "postfix_expression" */
3084 /* Line 1009 of yacc.c */
3085 #line 153 "expression.y"
3086 { FreeExpression((yyvaluep->exp)); };
3088 /* Line 1009 of yacc.c */
3089 #line 3090 "expression.ec"
3091 case 141: /* "argument_expression_list" */
3093 /* Line 1009 of yacc.c */
3094 #line 189 "expression.y"
3095 { FreeList((yyvaluep->list), FreeExpression); };
3097 /* Line 1009 of yacc.c */
3098 #line 3099 "expression.ec"
3100 case 143: /* "unary_expression" */
3102 /* Line 1009 of yacc.c */
3103 #line 153 "expression.y"
3104 { FreeExpression((yyvaluep->exp)); };
3106 /* Line 1009 of yacc.c */
3107 #line 3108 "expression.ec"
3109 case 146: /* "cast_expression" */
3111 /* Line 1009 of yacc.c */
3112 #line 153 "expression.y"
3113 { FreeExpression((yyvaluep->exp)); };
3115 /* Line 1009 of yacc.c */
3116 #line 3117 "expression.ec"
3118 case 147: /* "multiplicative_expression" */
3120 /* Line 1009 of yacc.c */
3121 #line 153 "expression.y"
3122 { FreeExpression((yyvaluep->exp)); };
3124 /* Line 1009 of yacc.c */
3125 #line 3126 "expression.ec"
3127 case 148: /* "additive_expression" */
3129 /* Line 1009 of yacc.c */
3130 #line 153 "expression.y"
3131 { FreeExpression((yyvaluep->exp)); };
3133 /* Line 1009 of yacc.c */
3134 #line 3135 "expression.ec"
3136 case 149: /* "shift_expression" */
3138 /* Line 1009 of yacc.c */
3139 #line 153 "expression.y"
3140 { FreeExpression((yyvaluep->exp)); };
3142 /* Line 1009 of yacc.c */
3143 #line 3144 "expression.ec"
3145 case 150: /* "relational_expression" */
3147 /* Line 1009 of yacc.c */
3148 #line 153 "expression.y"
3149 { FreeExpression((yyvaluep->exp)); };
3151 /* Line 1009 of yacc.c */
3152 #line 3153 "expression.ec"
3154 case 151: /* "equality_expression" */
3156 /* Line 1009 of yacc.c */
3157 #line 153 "expression.y"
3158 { FreeExpression((yyvaluep->exp)); };
3160 /* Line 1009 of yacc.c */
3161 #line 3162 "expression.ec"
3163 case 152: /* "and_expression" */
3165 /* Line 1009 of yacc.c */
3166 #line 153 "expression.y"
3167 { FreeExpression((yyvaluep->exp)); };
3169 /* Line 1009 of yacc.c */
3170 #line 3171 "expression.ec"
3172 case 153: /* "exclusive_or_expression" */
3174 /* Line 1009 of yacc.c */
3175 #line 153 "expression.y"
3176 { FreeExpression((yyvaluep->exp)); };
3178 /* Line 1009 of yacc.c */
3179 #line 3180 "expression.ec"
3181 case 154: /* "inclusive_or_expression" */
3183 /* Line 1009 of yacc.c */
3184 #line 153 "expression.y"
3185 { FreeExpression((yyvaluep->exp)); };
3187 /* Line 1009 of yacc.c */
3188 #line 3189 "expression.ec"
3190 case 155: /* "logical_and_expression" */
3192 /* Line 1009 of yacc.c */
3193 #line 153 "expression.y"
3194 { FreeExpression((yyvaluep->exp)); };
3196 /* Line 1009 of yacc.c */
3197 #line 3198 "expression.ec"
3199 case 156: /* "logical_or_expression" */
3201 /* Line 1009 of yacc.c */
3202 #line 153 "expression.y"
3203 { FreeExpression((yyvaluep->exp)); };
3205 /* Line 1009 of yacc.c */
3206 #line 3207 "expression.ec"
3208 case 157: /* "conditional_expression" */
3210 /* Line 1009 of yacc.c */
3211 #line 153 "expression.y"
3212 { FreeExpression((yyvaluep->exp)); };
3214 /* Line 1009 of yacc.c */
3215 #line 3216 "expression.ec"
3217 case 158: /* "assignment_expression" */
3219 /* Line 1009 of yacc.c */
3220 #line 153 "expression.y"
3221 { FreeExpression((yyvaluep->exp)); };
3223 /* Line 1009 of yacc.c */
3224 #line 3225 "expression.ec"
3226 case 160: /* "expression" */
3228 /* Line 1009 of yacc.c */
3229 #line 189 "expression.y"
3230 { FreeList((yyvaluep->list), FreeExpression); };
3232 /* Line 1009 of yacc.c */
3233 #line 3234 "expression.ec"
3235 case 161: /* "constant_expression" */
3237 /* Line 1009 of yacc.c */
3238 #line 153 "expression.y"
3239 { FreeExpression((yyvaluep->exp)); };
3241 /* Line 1009 of yacc.c */
3242 #line 3243 "expression.ec"
3244 case 162: /* "declaration" */
3246 /* Line 1009 of yacc.c */
3247 #line 172 "expression.y"
3248 { FreeDeclaration((yyvaluep->declaration)); };
3250 /* Line 1009 of yacc.c */
3251 #line 3252 "expression.ec"
3253 case 163: /* "specifier_qualifier_list" */
3255 /* Line 1009 of yacc.c */
3256 #line 191 "expression.y"
3257 { FreeList((yyvaluep->list), FreeSpecifier); };
3259 /* Line 1009 of yacc.c */
3260 #line 3261 "expression.ec"
3262 case 164: /* "declaration_specifiers" */
3264 /* Line 1009 of yacc.c */
3265 #line 191 "expression.y"
3266 { FreeList((yyvaluep->list), FreeSpecifier); };
3268 /* Line 1009 of yacc.c */
3269 #line 3270 "expression.ec"
3271 case 167: /* "init_declarator_list" */
3273 /* Line 1009 of yacc.c */
3274 #line 195 "expression.y"
3275 { FreeList((yyvaluep->list), FreeInitDeclarator); };
3277 /* Line 1009 of yacc.c */
3278 #line 3279 "expression.ec"
3280 case 168: /* "init_declarator" */
3282 /* Line 1009 of yacc.c */
3283 #line 167 "expression.y"
3284 { FreeInitDeclarator((yyvaluep->initDeclarator)); };
3286 /* Line 1009 of yacc.c */
3287 #line 3288 "expression.ec"
3289 case 169: /* "storage_class_specifier" */
3291 /* Line 1009 of yacc.c */
3292 #line 159 "expression.y"
3293 { FreeSpecifier((yyvaluep->specifier)); };
3295 /* Line 1009 of yacc.c */
3296 #line 3297 "expression.ec"
3298 case 170: /* "ext_decl" */
3300 /* Line 1009 of yacc.c */
3301 #line 186 "expression.y"
3302 { delete (yyvaluep->string); };
3304 /* Line 1009 of yacc.c */
3305 #line 3306 "expression.ec"
3307 case 172: /* "type_qualifier" */
3309 /* Line 1009 of yacc.c */
3310 #line 159 "expression.y"
3311 { FreeSpecifier((yyvaluep->specifier)); };
3313 /* Line 1009 of yacc.c */
3314 #line 3315 "expression.ec"
3316 case 173: /* "type" */
3318 /* Line 1009 of yacc.c */
3319 #line 159 "expression.y"
3320 { FreeSpecifier((yyvaluep->specifier)); };
3322 /* Line 1009 of yacc.c */
3323 #line 3324 "expression.ec"
3325 case 174: /* "strict_type" */
3327 /* Line 1009 of yacc.c */
3328 #line 159 "expression.y"
3329 { FreeSpecifier((yyvaluep->specifier)); };
3331 /* Line 1009 of yacc.c */
3332 #line 3333 "expression.ec"
3334 case 175: /* "type_specifier" */
3336 /* Line 1009 of yacc.c */
3337 #line 159 "expression.y"
3338 { FreeSpecifier((yyvaluep->specifier)); };
3340 /* Line 1009 of yacc.c */
3341 #line 3342 "expression.ec"
3343 case 176: /* "strict_type_specifier" */
3345 /* Line 1009 of yacc.c */
3346 #line 159 "expression.y"
3347 { FreeSpecifier((yyvaluep->specifier)); };
3349 /* Line 1009 of yacc.c */
3350 #line 3351 "expression.ec"
3352 case 177: /* "struct_or_union_specifier_compound" */
3354 /* Line 1009 of yacc.c */
3355 #line 159 "expression.y"
3356 { FreeSpecifier((yyvaluep->specifier)); };
3358 /* Line 1009 of yacc.c */
3359 #line 3360 "expression.ec"
3361 case 178: /* "struct_or_union_specifier_nocompound" */
3363 /* Line 1009 of yacc.c */
3364 #line 159 "expression.y"
3365 { FreeSpecifier((yyvaluep->specifier)); };
3367 /* Line 1009 of yacc.c */
3368 #line 3369 "expression.ec"
3370 case 180: /* "struct_declaration_list" */
3372 /* Line 1009 of yacc.c */
3373 #line 199 "expression.y"
3374 { FreeList((yyvaluep->list), FreeClassDef); };
3376 /* Line 1009 of yacc.c */
3377 #line 3378 "expression.ec"
3379 case 181: /* "default_property" */
3381 /* Line 1009 of yacc.c */
3382 #line 178 "expression.y"
3383 { FreeMemberInit((yyvaluep->memberInit)); };
3385 /* Line 1009 of yacc.c */
3386 #line 3387 "expression.ec"
3388 case 182: /* "default_property_list" */
3390 /* Line 1009 of yacc.c */
3391 #line 200 "expression.y"
3392 { FreeList((yyvaluep->list), FreeMemberInit); };
3394 /* Line 1009 of yacc.c */
3395 #line 3396 "expression.ec"
3397 case 183: /* "property" */
3399 /* Line 1009 of yacc.c */
3400 #line 187 "expression.y"
3401 { FreeProperty((yyvaluep->prop)); };
3403 /* Line 1009 of yacc.c */
3404 #line 3405 "expression.ec"
3406 case 184: /* "struct_declaration" */
3408 /* Line 1009 of yacc.c */
3409 #line 185 "expression.y"
3410 { FreeClassDef((yyvaluep->classDef)); };
3412 /* Line 1009 of yacc.c */
3413 #line 3414 "expression.ec"
3415 case 185: /* "struct_declarator_list" */
3417 /* Line 1009 of yacc.c */
3418 #line 192 "expression.y"
3419 { FreeList((yyvaluep->list), FreeDeclarator); };
3421 /* Line 1009 of yacc.c */
3422 #line 3423 "expression.ec"
3424 case 186: /* "struct_declarator" */
3426 /* Line 1009 of yacc.c */
3427 #line 162 "expression.y"
3428 { FreeDeclarator((yyvaluep->declarator)); };
3430 /* Line 1009 of yacc.c */
3431 #line 3432 "expression.ec"
3433 case 187: /* "enum_specifier_nocompound" */
3435 /* Line 1009 of yacc.c */
3436 #line 159 "expression.y"
3437 { FreeSpecifier((yyvaluep->specifier)); };
3439 /* Line 1009 of yacc.c */
3440 #line 3441 "expression.ec"
3442 case 188: /* "enum_specifier_compound" */
3444 /* Line 1009 of yacc.c */
3445 #line 159 "expression.y"
3446 { FreeSpecifier((yyvaluep->specifier)); };
3448 /* Line 1009 of yacc.c */
3449 #line 3450 "expression.ec"
3451 case 189: /* "enumerator_list" */
3453 /* Line 1009 of yacc.c */
3454 #line 190 "expression.y"
3455 { FreeList((yyvaluep->list), FreeEnumerator); };
3457 /* Line 1009 of yacc.c */
3458 #line 3459 "expression.ec"
3460 case 190: /* "enumerator" */
3462 /* Line 1009 of yacc.c */
3463 #line 161 "expression.y"
3464 { FreeEnumerator((yyvaluep->enumerator)); };
3466 /* Line 1009 of yacc.c */
3467 #line 3468 "expression.ec"
3469 case 191: /* "direct_abstract_declarator" */
3471 /* Line 1009 of yacc.c */
3472 #line 162 "expression.y"
3473 { FreeDeclarator((yyvaluep->declarator)); };
3475 /* Line 1009 of yacc.c */
3476 #line 3477 "expression.ec"
3478 case 192: /* "direct_abstract_declarator_noarray" */
3480 /* Line 1009 of yacc.c */
3481 #line 162 "expression.y"
3482 { FreeDeclarator((yyvaluep->declarator)); };
3484 /* Line 1009 of yacc.c */
3485 #line 3486 "expression.ec"
3487 case 193: /* "abstract_declarator" */
3489 /* Line 1009 of yacc.c */
3490 #line 162 "expression.y"
3491 { FreeDeclarator((yyvaluep->declarator)); };
3493 /* Line 1009 of yacc.c */
3494 #line 3495 "expression.ec"
3496 case 194: /* "abstract_declarator_noarray" */
3498 /* Line 1009 of yacc.c */
3499 #line 162 "expression.y"
3500 { FreeDeclarator((yyvaluep->declarator)); };
3502 /* Line 1009 of yacc.c */
3503 #line 3504 "expression.ec"
3505 case 195: /* "declarator" */
3507 /* Line 1009 of yacc.c */
3508 #line 162 "expression.y"
3509 { FreeDeclarator((yyvaluep->declarator)); };
3511 /* Line 1009 of yacc.c */
3512 #line 3513 "expression.ec"
3514 case 196: /* "direct_declarator_nofunction" */
3516 /* Line 1009 of yacc.c */
3517 #line 162 "expression.y"
3518 { FreeDeclarator((yyvaluep->declarator)); };
3520 /* Line 1009 of yacc.c */
3521 #line 3522 "expression.ec"
3523 case 197: /* "declarator_function" */
3525 /* Line 1009 of yacc.c */
3526 #line 162 "expression.y"
3527 { FreeDeclarator((yyvaluep->declarator)); };
3529 /* Line 1009 of yacc.c */
3530 #line 3531 "expression.ec"
3532 case 198: /* "direct_declarator" */
3534 /* Line 1009 of yacc.c */
3535 #line 162 "expression.y"
3536 { FreeDeclarator((yyvaluep->declarator)); };
3538 /* Line 1009 of yacc.c */
3539 #line 3540 "expression.ec"
3541 case 199: /* "direct_declarator_function_start" */
3543 /* Line 1009 of yacc.c */
3544 #line 162 "expression.y"
3545 { FreeDeclarator((yyvaluep->declarator)); };
3547 /* Line 1009 of yacc.c */
3548 #line 3549 "expression.ec"
3550 case 200: /* "direct_declarator_function" */
3552 /* Line 1009 of yacc.c */
3553 #line 162 "expression.y"
3554 { FreeDeclarator((yyvaluep->declarator)); };
3556 /* Line 1009 of yacc.c */
3557 #line 3558 "expression.ec"
3559 case 201: /* "type_qualifier_list" */
3561 /* Line 1009 of yacc.c */
3562 #line 191 "expression.y"
3563 { FreeList((yyvaluep->list), FreeSpecifier); };
3565 /* Line 1009 of yacc.c */
3566 #line 3567 "expression.ec"
3568 case 202: /* "pointer" */
3570 /* Line 1009 of yacc.c */
3571 #line 152 "expression.y"
3572 { FreePointer((yyvaluep->pointer)); };
3574 /* Line 1009 of yacc.c */
3575 #line 3576 "expression.ec"
3577 case 203: /* "parameter_type_list" */
3579 /* Line 1009 of yacc.c */
3580 #line 196 "expression.y"
3581 { FreeList((yyvaluep->list), FreeTypeName); };
3583 /* Line 1009 of yacc.c */
3584 #line 3585 "expression.ec"
3586 case 204: /* "parameter_list" */
3588 /* Line 1009 of yacc.c */
3589 #line 196 "expression.y"
3590 { FreeList((yyvaluep->list), FreeTypeName); };
3592 /* Line 1009 of yacc.c */
3593 #line 3594 "expression.ec"
3595 case 205: /* "parameter_declaration" */
3597 /* Line 1009 of yacc.c */
3598 #line 168 "expression.y"
3599 { FreeTypeName((yyvaluep->typeName)); };
3601 /* Line 1009 of yacc.c */
3602 #line 3603 "expression.ec"
3604 case 206: /* "identifier_list" */
3606 /* Line 1009 of yacc.c */
3607 #line 196 "expression.y"
3608 { FreeList((yyvaluep->list), FreeTypeName); };
3610 /* Line 1009 of yacc.c */
3611 #line 3612 "expression.ec"
3613 case 207: /* "type_name" */
3615 /* Line 1009 of yacc.c */
3616 #line 168 "expression.y"
3617 { FreeTypeName((yyvaluep->typeName)); };
3619 /* Line 1009 of yacc.c */
3620 #line 3621 "expression.ec"
3622 case 208: /* "initializer" */
3624 /* Line 1009 of yacc.c */
3625 #line 166 "expression.y"
3626 { FreeInitializer((yyvaluep->initializer)); };
3628 /* Line 1009 of yacc.c */
3629 #line 3630 "expression.ec"
3631 case 209: /* "initializer_condition" */
3633 /* Line 1009 of yacc.c */
3634 #line 166 "expression.y"
3635 { FreeInitializer((yyvaluep->initializer)); };
3637 /* Line 1009 of yacc.c */
3638 #line 3639 "expression.ec"
3640 case 210: /* "initializer_list" */
3642 /* Line 1009 of yacc.c */
3643 #line 194 "expression.y"
3644 { FreeList((yyvaluep->list), FreeInitializer); };
3646 /* Line 1009 of yacc.c */
3647 #line 3648 "expression.ec"
3649 case 211: /* "statement" */
3651 /* Line 1009 of yacc.c */
3652 #line 169 "expression.y"
3653 { FreeStatement((yyvaluep->stmt)); };
3655 /* Line 1009 of yacc.c */
3656 #line 3657 "expression.ec"
3658 case 212: /* "labeled_statement" */
3660 /* Line 1009 of yacc.c */
3661 #line 169 "expression.y"
3662 { FreeStatement((yyvaluep->stmt)); };
3664 /* Line 1009 of yacc.c */
3665 #line 3666 "expression.ec"
3667 case 213: /* "declaration_list" */
3669 /* Line 1009 of yacc.c */
3670 #line 193 "expression.y"
3671 { FreeList((yyvaluep->list), FreeDeclaration); };
3673 /* Line 1009 of yacc.c */
3674 #line 3675 "expression.ec"
3676 case 214: /* "statement_list" */
3678 /* Line 1009 of yacc.c */
3679 #line 197 "expression.y"
3680 { FreeList((yyvaluep->list), FreeStatement); };
3682 /* Line 1009 of yacc.c */
3683 #line 3684 "expression.ec"
3685 case 215: /* "compound_inside" */
3687 /* Line 1009 of yacc.c */
3688 #line 169 "expression.y"
3689 { FreeStatement((yyvaluep->stmt)); };
3691 /* Line 1009 of yacc.c */
3692 #line 3693 "expression.ec"
3694 case 216: /* "compound_start" */
3696 /* Line 1009 of yacc.c */
3697 #line 202 "expression.y"
3698 { PopContext((yyvaluep->context)); FreeContext((yyvaluep->context)); delete (yyvaluep->context); };
3700 /* Line 1009 of yacc.c */
3701 #line 3702 "expression.ec"
3703 case 217: /* "compound_statement" */
3705 /* Line 1009 of yacc.c */
3706 #line 169 "expression.y"
3707 { FreeStatement((yyvaluep->stmt)); };
3709 /* Line 1009 of yacc.c */
3710 #line 3711 "expression.ec"
3712 case 218: /* "expression_statement" */
3714 /* Line 1009 of yacc.c */
3715 #line 169 "expression.y"
3716 { FreeStatement((yyvaluep->stmt)); };
3718 /* Line 1009 of yacc.c */
3719 #line 3720 "expression.ec"
3721 case 219: /* "selection_statement" */
3723 /* Line 1009 of yacc.c */
3724 #line 169 "expression.y"
3725 { FreeStatement((yyvaluep->stmt)); };
3727 /* Line 1009 of yacc.c */
3728 #line 3729 "expression.ec"
3730 case 220: /* "iteration_statement" */
3732 /* Line 1009 of yacc.c */
3733 #line 169 "expression.y"
3734 { FreeStatement((yyvaluep->stmt)); };
3736 /* Line 1009 of yacc.c */
3737 #line 3738 "expression.ec"
3739 case 221: /* "jump_statement" */
3741 /* Line 1009 of yacc.c */
3742 #line 169 "expression.y"
3743 { FreeStatement((yyvaluep->stmt)); };
3745 /* Line 1009 of yacc.c */
3746 #line 3747 "expression.ec"
3748 case 222: /* "string_literal" */
3750 /* Line 1009 of yacc.c */
3751 #line 186 "expression.y"
3752 { delete (yyvaluep->string); };
3754 /* Line 1009 of yacc.c */
3755 #line 3756 "expression.ec"
3757 case 223: /* "instantiation_named" */
3759 /* Line 1009 of yacc.c */
3760 #line 176 "expression.y"
3761 { FreeInstance((yyvaluep->instance)); };
3763 /* Line 1009 of yacc.c */
3764 #line 3765 "expression.ec"
3766 case 224: /* "instantiation_unnamed" */
3768 /* Line 1009 of yacc.c */
3769 #line 176 "expression.y"
3770 { FreeInstance((yyvaluep->instance)); };
3772 /* Line 1009 of yacc.c */
3773 #line 3774 "expression.ec"
3775 case 226: /* "class_function_definition_start" */
3777 /* Line 1009 of yacc.c */
3778 #line 180 "expression.y"
3779 { FreeClassFunction((yyvaluep->classFunction)); };
3781 /* Line 1009 of yacc.c */
3782 #line 3783 "expression.ec"
3784 case 227: /* "constructor_function_definition_start" */
3786 /* Line 1009 of yacc.c */
3787 #line 180 "expression.y"
3788 { FreeClassFunction((yyvaluep->classFunction)); };
3790 /* Line 1009 of yacc.c */
3791 #line 3792 "expression.ec"
3793 case 228: /* "destructor_function_definition_start" */
3795 /* Line 1009 of yacc.c */
3796 #line 180 "expression.y"
3797 { FreeClassFunction((yyvaluep->classFunction)); };
3799 /* Line 1009 of yacc.c */
3800 #line 3801 "expression.ec"
3802 case 229: /* "virtual_class_function_definition_start" */
3804 /* Line 1009 of yacc.c */
3805 #line 180 "expression.y"
3806 { FreeClassFunction((yyvaluep->classFunction)); };
3808 /* Line 1009 of yacc.c */
3809 #line 3810 "expression.ec"
3811 case 230: /* "class_function_definition" */
3813 /* Line 1009 of yacc.c */
3814 #line 180 "expression.y"
3815 { FreeClassFunction((yyvaluep->classFunction)); };
3817 /* Line 1009 of yacc.c */
3818 #line 3819 "expression.ec"
3820 case 231: /* "instance_class_function_definition_start" */
3822 /* Line 1009 of yacc.c */
3823 #line 180 "expression.y"
3824 { FreeClassFunction((yyvaluep->classFunction)); };
3826 /* Line 1009 of yacc.c */
3827 #line 3828 "expression.ec"
3829 case 232: /* "instance_class_function_definition" */
3831 /* Line 1009 of yacc.c */
3832 #line 180 "expression.y"
3833 { FreeClassFunction((yyvaluep->classFunction)); };
3835 /* Line 1009 of yacc.c */
3836 #line 3837 "expression.ec"
3838 case 233: /* "data_member_initialization" */
3840 /* Line 1009 of yacc.c */
3841 #line 178 "expression.y"
3842 { FreeMemberInit((yyvaluep->memberInit)); };
3844 /* Line 1009 of yacc.c */
3845 #line 3846 "expression.ec"
3847 case 234: /* "data_member_initialization_list" */
3849 /* Line 1009 of yacc.c */
3850 #line 200 "expression.y"
3851 { FreeList((yyvaluep->list), FreeMemberInit); };
3853 /* Line 1009 of yacc.c */
3854 #line 3855 "expression.ec"
3856 case 235: /* "data_member_initialization_list_coloned" */
3858 /* Line 1009 of yacc.c */
3859 #line 200 "expression.y"
3860 { FreeList((yyvaluep->list), FreeMemberInit); };
3862 /* Line 1009 of yacc.c */
3863 #line 3864 "expression.ec"
3865 case 236: /* "members_initialization_list_coloned" */
3867 /* Line 1009 of yacc.c */
3868 #line 201 "expression.y"
3869 { FreeList((yyvaluep->list), FreeMembersInit); };
3871 /* Line 1009 of yacc.c */
3872 #line 3873 "expression.ec"
3874 case 237: /* "members_initialization_list" */
3876 /* Line 1009 of yacc.c */
3877 #line 201 "expression.y"
3878 { FreeList((yyvaluep->list), FreeMembersInit); };
3880 /* Line 1009 of yacc.c */
3881 #line 3882 "expression.ec"
3889 /* Prevent warnings from -Wmissing-prototypes. */
3890 #ifdef YYPARSE_PARAM
3891 #if defined __STDC__ || defined __cplusplus
3892 int yyparse (void *YYPARSE_PARAM);
3896 #else /* ! YYPARSE_PARAM */
3897 #if defined __STDC__ || defined __cplusplus
3902 #endif /* ! YYPARSE_PARAM */
3905 /* The lookahead symbol. */
3908 /* The semantic value of the lookahead symbol. */
3911 /* Location data for the lookahead symbol. */
3914 /* Number of syntax errors so far. */
3919 /*-------------------------.
3920 | yyparse or yypush_parse. |
3921 `-------------------------*/
3923 #ifdef YYPARSE_PARAM
3924 #if (defined __STDC__ || defined __C99__FUNC__ \
3925 || defined __cplusplus || defined _MSC_VER)
3927 yyparse (void *YYPARSE_PARAM)
3930 yyparse (YYPARSE_PARAM)
3931 void *YYPARSE_PARAM;
3933 #else /* ! YYPARSE_PARAM */
3934 #if (defined __STDC__ || defined __C99__FUNC__ \
3935 || defined __cplusplus || defined _MSC_VER)
3948 /* Number of tokens to shift before error messages enabled. */
3951 /* The stacks and their tools:
3952 `yyss': related to states.
3953 `yyvs': related to semantic values.
3954 `yyls': related to locations.
3956 Refer to the stacks thru separate pointers, to allow yyoverflow
3957 to reallocate them elsewhere. */
3959 /* The state stack. */
3960 yytype_int16 yyssa[YYINITDEPTH];
3962 yytype_int16 *yyssp;
3964 /* The semantic value stack. */
3965 YYSTYPE yyvsa[YYINITDEPTH];
3969 /* The location stack. */
3970 YYLTYPE yylsa[YYINITDEPTH];
3974 /* The locations where the error started and ended. */
3975 YYLTYPE yyerror_range[2];
3977 YYSIZE_T yystacksize;
3981 /* Lookahead token as an internal (translated) token number. */
3983 /* The variables used to return semantic value and location from the
3989 /* Buffer for error messages, and its allocated size. */
3991 char *yymsg = yymsgbuf;
3992 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
3995 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
3997 /* The number of symbols on the RHS of the reduced rule.
3998 Keep to zero when no symbol should be popped. */
4005 yystacksize = YYINITDEPTH;
4007 YYDPRINTF ((stderr, "Starting parse\n"));
4012 yychar = YYEMPTY; /* Cause a token to be read. */
4014 /* Initialize stack pointers.
4015 Waste one element of value and location stack
4016 so that they stay on the same level as the state stack.
4017 The wasted elements are never initialized. */
4022 #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
4023 /* Initialize the default location before parsing starts. */
4024 yylloc.first_line = yylloc.last_line = 1;
4025 yylloc.first_column = yylloc.last_column = 1;
4030 /*------------------------------------------------------------.
4031 | yynewstate -- Push a new state, which is found in yystate. |
4032 `------------------------------------------------------------*/
4034 /* In all cases, when you get here, the value and location stacks
4035 have just been pushed. So pushing a state here evens the stacks. */
4041 if (yyss + yystacksize - 1 <= yyssp)
4043 /* Get the current used size of the three stacks, in elements. */
4044 YYSIZE_T yysize = yyssp - yyss + 1;
4048 /* Give user a chance to reallocate the stack. Use copies of
4049 these so that the &'s don't force the real ones into
4051 YYSTYPE *yyvs1 = yyvs;
4052 yytype_int16 *yyss1 = yyss;
4053 YYLTYPE *yyls1 = yyls;
4055 /* Each stack pointer address is followed by the size of the
4056 data in use in that stack, in bytes. This used to be a
4057 conditional around just the two extra args, but that might
4058 be undefined if yyoverflow is a macro. */
4059 yyoverflow (YY_("memory exhausted"),
4060 &yyss1, yysize * sizeof (*yyssp),
4061 &yyvs1, yysize * sizeof (*yyvsp),
4062 &yyls1, yysize * sizeof (*yylsp),
4069 #else /* no yyoverflow */
4070 # ifndef YYSTACK_RELOCATE
4071 goto yyexhaustedlab;
4073 /* Extend the stack our own way. */
4074 if (YYMAXDEPTH <= yystacksize)
4075 goto yyexhaustedlab;
4077 if (YYMAXDEPTH < yystacksize)
4078 yystacksize = YYMAXDEPTH;
4081 yytype_int16 *yyss1 = yyss;
4082 union yyalloc *yyptr =
4083 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
4085 goto yyexhaustedlab;
4086 YYSTACK_RELOCATE (yyss_alloc, yyss);
4087 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
4088 YYSTACK_RELOCATE (yyls_alloc, yyls);
4089 # undef YYSTACK_RELOCATE
4091 YYSTACK_FREE (yyss1);
4094 #endif /* no yyoverflow */
4096 yyssp = yyss + yysize - 1;
4097 yyvsp = yyvs + yysize - 1;
4098 yylsp = yyls + yysize - 1;
4100 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
4101 (unsigned long int) yystacksize));
4103 if (yyss + yystacksize - 1 <= yyssp)
4107 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
4109 if (yystate == YYFINAL)
4119 /* Do appropriate processing given the current state. Read a
4120 lookahead token if we need one and don't already have one. */
4122 /* First try to decide what to do without reference to lookahead token. */
4123 yyn = yypact[yystate];
4124 if (yyn == YYPACT_NINF)
4127 /* Not known => get a lookahead token if don't already have one. */
4129 /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
4130 if (yychar == YYEMPTY)
4132 YYDPRINTF ((stderr, "Reading a token: "));
4136 if (yychar <= YYEOF)
4138 yychar = yytoken = YYEOF;
4139 YYDPRINTF ((stderr, "Now at end of input.\n"));
4143 yytoken = YYTRANSLATE (yychar);
4144 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
4147 /* If the proper action on seeing token YYTOKEN is to reduce or to
4148 detect an error, take that action. */
4150 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
4155 if (yyn == 0 || yyn == YYTABLE_NINF)
4161 /* Count tokens shifted since error; after three, turn off error
4166 /* Shift the lookahead token. */
4167 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
4169 /* Discard the shifted token. */
4178 /*-----------------------------------------------------------.
4179 | yydefault -- do the default action for the current state. |
4180 `-----------------------------------------------------------*/
4182 yyn = yydefact[yystate];
4188 /*-----------------------------.
4189 | yyreduce -- Do a reduction. |
4190 `-----------------------------*/
4192 /* yyn is the number of a rule to reduce with. */
4195 /* If YYLEN is nonzero, implement the default value of the action:
4198 Otherwise, the following line sets YYVAL to garbage.
4199 This behavior is undocumented and Bison
4200 users should not rely upon it. Assigning to YYVAL
4201 unconditionally makes the parser a bit smaller, and it avoids a
4202 GCC warning that YYVAL may be used uninitialized. */
4203 yyval = yyvsp[1-yylen];
4205 /* Default location. */
4206 YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
4207 YY_REDUCE_PRINT (yyn);
4212 /* Line 1464 of yacc.c */
4213 #line 211 "expression.y"
4214 { (yyval.id) = MkIdentifier(yytext); (yyval.id).loc = (yylsp[(1) - (1)]); ;}
4219 /* Line 1464 of yacc.c */
4220 #line 217 "expression.y"
4221 { (yyval.exp) = MkExpBrackets((yyvsp[(2) - (3)].list)); (yyval.exp).loc = (yyloc); ;}
4226 /* Line 1464 of yacc.c */
4227 #line 222 "expression.y"
4228 { (yyval.exp) = MkExpIdentifier((yyvsp[(1) - (1)].id)); (yyval.exp).loc = (yyloc); ;}
4233 /* Line 1464 of yacc.c */
4234 #line 224 "expression.y"
4235 { (yyval.exp) = MkExpInstance((yyvsp[(1) - (1)].instance)); (yyval.exp).loc = (yyloc); ;}
4240 /* Line 1464 of yacc.c */
4241 #line 226 "expression.y"
4242 { (yyval.exp) = MkExpConstant(yytext); (yyval.exp).loc = (yyloc); ;}
4247 /* Line 1464 of yacc.c */
4248 #line 228 "expression.y"
4249 { (yyval.exp) = MkExpString(yytext); (yyval.exp).loc = (yyloc); ;}
4254 /* Line 1464 of yacc.c */
4255 #line 229 "expression.y"
4256 { (yyval.exp) = MkExpIntlString((yyvsp[(2) - (2)].string), null); delete (yyvsp[(2) - (2)].string); (yyval.exp).loc = (yyloc); ;}
4261 /* Line 1464 of yacc.c */
4262 #line 230 "expression.y"
4263 { (yyval.exp) = MkExpIntlString((yyvsp[(4) - (4)].string), (yyvsp[(2) - (4)].string)); delete (yyvsp[(2) - (4)].string); delete (yyvsp[(4) - (4)].string); (yyval.exp).loc = (yyloc); ;}
4268 /* Line 1464 of yacc.c */
4269 #line 232 "expression.y"
4270 { Expression exp = MkExpDummy(); exp.loc.start = (yylsp[(1) - (2)]).end; exp.loc.end = (yylsp[(2) - (2)]).start; (yyval.exp) = MkExpBrackets(MkListOne(exp)); (yyval.exp).loc = (yyloc); yyerror(); ;}
4275 /* Line 1464 of yacc.c */
4276 #line 234 "expression.y"
4277 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[(2) - (6)].list),(yyvsp[(3) - (6)].declarator)), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
4282 /* Line 1464 of yacc.c */
4283 #line 235 "expression.y"
4284 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[(2) - (5)].list),null), (yyvsp[(4) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
4289 /* Line 1464 of yacc.c */
4290 #line 236 "expression.y"
4291 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[(2) - (6)].list),(yyvsp[(3) - (6)].declarator)), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
4296 /* Line 1464 of yacc.c */
4297 #line 237 "expression.y"
4298 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[(2) - (5)].list),null), (yyvsp[(4) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
4303 /* Line 1464 of yacc.c */
4304 #line 238 "expression.y"
4305 { (yyval.exp) = MkExpRenew((yyvsp[(2) - (7)].exp), MkTypeName((yyvsp[(3) - (7)].list),(yyvsp[(4) - (7)].declarator)), (yyvsp[(6) - (7)].exp)); (yyval.exp).loc = (yyloc); ;}
4310 /* Line 1464 of yacc.c */
4311 #line 239 "expression.y"
4312 { (yyval.exp) = MkExpRenew((yyvsp[(2) - (6)].exp), MkTypeName((yyvsp[(3) - (6)].list),null), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
4317 /* Line 1464 of yacc.c */
4318 #line 240 "expression.y"
4319 { (yyval.exp) = MkExpRenew0((yyvsp[(2) - (7)].exp), MkTypeName((yyvsp[(3) - (7)].list),(yyvsp[(4) - (7)].declarator)), (yyvsp[(6) - (7)].exp)); (yyval.exp).loc = (yyloc); ;}
4324 /* Line 1464 of yacc.c */
4325 #line 241 "expression.y"
4326 { (yyval.exp) = MkExpRenew0((yyvsp[(2) - (6)].exp), MkTypeName((yyvsp[(3) - (6)].list),null), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
4331 /* Line 1464 of yacc.c */
4332 #line 242 "expression.y"
4333 { (yyval.exp) = MkExpDummy(); ;}
4338 /* Line 1464 of yacc.c */
4339 #line 246 "expression.y"
4340 { (yyval.exp) = MkExpInstance((yyvsp[(1) - (1)].instance)); (yyval.exp).loc = (yyloc); ;}
4345 /* Line 1464 of yacc.c */
4346 #line 251 "expression.y"
4347 { (yyval.exp) = MkExpIndex((yyvsp[(1) - (4)].exp), (yyvsp[(3) - (4)].list)); (yyval.exp).loc = (yyloc); ;}
4352 /* Line 1464 of yacc.c */
4353 #line 252 "expression.y"
4354 { (yyval.exp) = MkExpCall((yyvsp[(1) - (3)].exp), MkList()); (yyval.exp).call.argLoc.start = (yylsp[(2) - (3)]).start; (yyval.exp).call.argLoc.end = (yylsp[(3) - (3)]).end; (yyval.exp).loc = (yyloc); ;}
4359 /* Line 1464 of yacc.c */
4360 #line 253 "expression.y"
4361 { (yyval.exp) = MkExpCall((yyvsp[(1) - (4)].exp), (yyvsp[(3) - (4)].list)); (yyval.exp).call.argLoc.start = (yylsp[(2) - (4)]).start; (yyval.exp).call.argLoc.end = (yylsp[(4) - (4)]).end; (yyval.exp).loc = (yyloc); ;}
4366 /* Line 1464 of yacc.c */
4367 #line 254 "expression.y"
4368 { (yyval.exp) = MkExpMember((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
4373 /* Line 1464 of yacc.c */
4374 #line 255 "expression.y"
4375 { (yyval.exp) = MkExpPointer((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
4380 /* Line 1464 of yacc.c */
4381 #line 256 "expression.y"
4382 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
4387 /* Line 1464 of yacc.c */
4388 #line 257 "expression.y"
4389 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
4394 /* Line 1464 of yacc.c */
4395 #line 263 "expression.y"
4396 { (yyval.exp) = MkExpIndex((yyvsp[(1) - (4)].exp), (yyvsp[(3) - (4)].list)); (yyval.exp).loc = (yyloc); ;}
4401 /* Line 1464 of yacc.c */
4402 #line 264 "expression.y"
4403 { (yyval.exp) = MkExpCall((yyvsp[(1) - (3)].exp), MkList()); (yyval.exp).call.argLoc.start = (yylsp[(2) - (3)]).start; (yyval.exp).call.argLoc.end = (yylsp[(3) - (3)]).end; (yyval.exp).loc = (yyloc); ;}
4408 /* Line 1464 of yacc.c */
4409 #line 265 "expression.y"
4410 { (yyval.exp) = MkExpCall((yyvsp[(1) - (4)].exp), (yyvsp[(3) - (4)].list)); (yyval.exp).call.argLoc.start = (yylsp[(2) - (4)]).start; (yyval.exp).call.argLoc.end = (yylsp[(4) - (4)]).end; (yyval.exp).loc = (yyloc); ;}
4415 /* Line 1464 of yacc.c */
4416 #line 266 "expression.y"
4417 { (yyval.exp) = MkExpMember((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
4422 /* Line 1464 of yacc.c */
4423 #line 267 "expression.y"
4424 { (yyval.exp) = MkExpPointer((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
4429 /* Line 1464 of yacc.c */
4430 #line 268 "expression.y"
4431 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
4436 /* Line 1464 of yacc.c */
4437 #line 269 "expression.y"
4438 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
4443 /* Line 1464 of yacc.c */
4444 #line 273 "expression.y"
4445 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
4450 /* Line 1464 of yacc.c */
4451 #line 274 "expression.y"
4452 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
4457 /* Line 1464 of yacc.c */
4458 #line 275 "expression.y"
4459 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
4464 /* Line 1464 of yacc.c */
4465 #line 276 "expression.y"
4466 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
4471 /* Line 1464 of yacc.c */
4472 #line 280 "expression.y"
4473 { (yyval.exp) = MkExpOp(null, INC_OP, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4478 /* Line 1464 of yacc.c */
4479 #line 281 "expression.y"
4480 { (yyval.exp) = MkExpOp(null, DEC_OP, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4485 /* Line 1464 of yacc.c */
4486 #line 282 "expression.y"
4487 { (yyval.exp) = MkExpOp(null, (yyvsp[(1) - (2)].i), (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4492 /* Line 1464 of yacc.c */
4493 #line 283 "expression.y"
4494 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[(3) - (4)].exp)); (yyval.exp).loc = (yyloc); ;}
4499 /* Line 1464 of yacc.c */
4500 #line 284 "expression.y"
4501 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4506 /* Line 1464 of yacc.c */
4507 #line 285 "expression.y"
4508 { (yyval.exp) = MkExpTypeSize((yyvsp[(3) - (4)].typeName)); (yyval.exp).loc = (yyloc); ;}
4513 /* Line 1464 of yacc.c */
4514 #line 299 "expression.y"
4515 { (yyval.i) = '&'; ;}
4520 /* Line 1464 of yacc.c */
4521 #line 300 "expression.y"
4522 { (yyval.i) = '*'; ;}
4527 /* Line 1464 of yacc.c */
4528 #line 301 "expression.y"
4529 { (yyval.i) = '+'; ;}
4534 /* Line 1464 of yacc.c */
4535 #line 302 "expression.y"
4536 { (yyval.i) = '-'; ;}
4541 /* Line 1464 of yacc.c */
4542 #line 303 "expression.y"
4543 { (yyval.i) = '~'; ;}
4548 /* Line 1464 of yacc.c */
4549 #line 304 "expression.y"
4550 { (yyval.i) = '!'; ;}
4555 /* Line 1464 of yacc.c */
4556 #line 305 "expression.y"
4557 { (yyval.i) = DELETE; ;}
4562 /* Line 1464 of yacc.c */
4563 #line 310 "expression.y"
4564 { (yyval.exp) = MkExpCast((yyvsp[(2) - (4)].typeName), (yyvsp[(4) - (4)].exp)); (yyval.exp).loc = (yyloc); ;}
4569 /* Line 1464 of yacc.c */
4570 #line 315 "expression.y"
4571 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '*', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4576 /* Line 1464 of yacc.c */
4577 #line 316 "expression.y"
4578 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '/', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4583 /* Line 1464 of yacc.c */
4584 #line 317 "expression.y"
4585 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '%', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4590 /* Line 1464 of yacc.c */
4591 #line 322 "expression.y"
4592 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '+', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4597 /* Line 1464 of yacc.c */
4598 #line 323 "expression.y"
4599 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '-', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4604 /* Line 1464 of yacc.c */
4605 #line 328 "expression.y"
4606 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), LEFT_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4611 /* Line 1464 of yacc.c */
4612 #line 329 "expression.y"
4613 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), RIGHT_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4618 /* Line 1464 of yacc.c */
4619 #line 334 "expression.y"
4620 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '<', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4625 /* Line 1464 of yacc.c */
4626 #line 335 "expression.y"
4627 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '>', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4632 /* Line 1464 of yacc.c */
4633 #line 336 "expression.y"
4634 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), LE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4639 /* Line 1464 of yacc.c */
4640 #line 337 "expression.y"
4641 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), GE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4646 /* Line 1464 of yacc.c */
4647 #line 342 "expression.y"
4648 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), EQ_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4653 /* Line 1464 of yacc.c */
4654 #line 343 "expression.y"
4655 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), NE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4660 /* Line 1464 of yacc.c */
4661 #line 348 "expression.y"
4662 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '&', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4667 /* Line 1464 of yacc.c */
4668 #line 353 "expression.y"
4669 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '^', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4674 /* Line 1464 of yacc.c */
4675 #line 358 "expression.y"
4676 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '|', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4681 /* Line 1464 of yacc.c */
4682 #line 363 "expression.y"
4683 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), AND_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4688 /* Line 1464 of yacc.c */
4689 #line 368 "expression.y"
4690 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), OR_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4695 /* Line 1464 of yacc.c */
4696 #line 373 "expression.y"
4697 { (yyval.exp) = MkExpCondition((yyvsp[(1) - (5)].exp), (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
4702 /* Line 1464 of yacc.c */
4703 #line 378 "expression.y"
4704 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), (yyvsp[(2) - (3)].i), (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4709 /* Line 1464 of yacc.c */
4710 #line 380 "expression.y"
4711 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), (yyvsp[(2) - (3)].i), (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4716 /* Line 1464 of yacc.c */
4717 #line 385 "expression.y"
4718 { (yyval.i) = '='; ;}
4723 /* Line 1464 of yacc.c */
4724 #line 386 "expression.y"
4725 { (yyval.i) = MUL_ASSIGN; ;}
4730 /* Line 1464 of yacc.c */
4731 #line 387 "expression.y"
4732 { (yyval.i) = DIV_ASSIGN; ;}
4737 /* Line 1464 of yacc.c */
4738 #line 388 "expression.y"
4739 { (yyval.i) = MOD_ASSIGN; ;}
4744 /* Line 1464 of yacc.c */
4745 #line 389 "expression.y"
4746 { (yyval.i) = ADD_ASSIGN; ;}
4751 /* Line 1464 of yacc.c */
4752 #line 390 "expression.y"
4753 { (yyval.i) = SUB_ASSIGN; ;}
4758 /* Line 1464 of yacc.c */
4759 #line 391 "expression.y"
4760 { (yyval.i) = LEFT_ASSIGN; ;}
4765 /* Line 1464 of yacc.c */
4766 #line 392 "expression.y"
4767 { (yyval.i) = RIGHT_ASSIGN; ;}
4772 /* Line 1464 of yacc.c */
4773 #line 393 "expression.y"
4774 { (yyval.i) = AND_ASSIGN; ;}
4779 /* Line 1464 of yacc.c */
4780 #line 394 "expression.y"
4781 { (yyval.i) = XOR_ASSIGN; ;}
4786 /* Line 1464 of yacc.c */
4787 #line 395 "expression.y"
4788 { (yyval.i) = OR_ASSIGN; ;}
4793 /* Line 1464 of yacc.c */
4794 #line 399 "expression.y"
4795 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
4800 /* Line 1464 of yacc.c */
4801 #line 400 "expression.y"
4802 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
4807 /* Line 1464 of yacc.c */
4808 #line 408 "expression.y"
4809 { (yyval.declaration) = MkDeclaration((yyvsp[(1) - (2)].list), null); (yyval.declaration).loc = (yyloc); ;}
4814 /* Line 1464 of yacc.c */
4815 #line 409 "expression.y"
4816 { (yyval.declaration) = MkDeclaration((yyvsp[(1) - (3)].list), (yyvsp[(2) - (3)].list)); (yyval.declaration).loc = (yyloc); ;}
4821 /* Line 1464 of yacc.c */
4822 #line 410 "expression.y"
4823 { (yyval.declaration) = MkDeclarationInst((yyvsp[(1) - (2)].instance)); (yyval.declaration).loc = (yyloc); ;}
4828 /* Line 1464 of yacc.c */
4829 #line 411 "expression.y"
4830 { (yyval.declaration) = MkDeclarationDefine((yyvsp[(2) - (5)].id), (yyvsp[(4) - (5)].exp)); (yyval.declaration).loc = (yyloc); ;}
4835 /* Line 1464 of yacc.c */
4836 #line 415 "expression.y"
4837 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4842 /* Line 1464 of yacc.c */
4843 #line 416 "expression.y"
4844 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4849 /* Line 1464 of yacc.c */
4850 #line 417 "expression.y"
4851 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4856 /* Line 1464 of yacc.c */
4857 #line 418 "expression.y"
4858 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4863 /* Line 1464 of yacc.c */
4864 #line 419 "expression.y"
4865 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4870 /* Line 1464 of yacc.c */
4871 #line 420 "expression.y"
4872 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4877 /* Line 1464 of yacc.c */
4878 #line 421 "expression.y"
4879 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4884 /* Line 1464 of yacc.c */
4885 #line 422 "expression.y"
4886 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4891 /* Line 1464 of yacc.c */
4892 #line 426 "expression.y"
4893 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4898 /* Line 1464 of yacc.c */
4899 #line 427 "expression.y"
4900 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4905 /* Line 1464 of yacc.c */
4906 #line 428 "expression.y"
4907 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4912 /* Line 1464 of yacc.c */
4913 #line 429 "expression.y"
4914 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4919 /* Line 1464 of yacc.c */
4920 #line 430 "expression.y"
4921 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4926 /* Line 1464 of yacc.c */
4927 #line 431 "expression.y"
4928 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4933 /* Line 1464 of yacc.c */
4934 #line 432 "expression.y"
4935 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4940 /* Line 1464 of yacc.c */
4941 #line 433 "expression.y"
4942 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4947 /* Line 1464 of yacc.c */
4948 #line 434 "expression.y"
4949 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4954 /* Line 1464 of yacc.c */
4955 #line 435 "expression.y"
4956 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4961 /* Line 1464 of yacc.c */
4962 #line 449 "expression.y"
4963 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4968 /* Line 1464 of yacc.c */
4969 #line 450 "expression.y"
4970 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4975 /* Line 1464 of yacc.c */
4976 #line 451 "expression.y"
4977 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4982 /* Line 1464 of yacc.c */
4983 #line 452 "expression.y"
4984 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
4989 /* Line 1464 of yacc.c */
4990 #line 453 "expression.y"
4991 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
4996 /* Line 1464 of yacc.c */
4997 #line 454 "expression.y"
4998 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5003 /* Line 1464 of yacc.c */
5004 #line 455 "expression.y"
5005 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5010 /* Line 1464 of yacc.c */
5011 #line 456 "expression.y"
5012 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5017 /* Line 1464 of yacc.c */
5018 #line 460 "expression.y"
5019 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5024 /* Line 1464 of yacc.c */
5025 #line 461 "expression.y"
5026 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5031 /* Line 1464 of yacc.c */
5032 #line 462 "expression.y"
5033 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5038 /* Line 1464 of yacc.c */
5039 #line 463 "expression.y"
5040 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5045 /* Line 1464 of yacc.c */
5046 #line 464 "expression.y"
5047 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5052 /* Line 1464 of yacc.c */
5053 #line 465 "expression.y"
5054 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5059 /* Line 1464 of yacc.c */
5060 #line 466 "expression.y"
5061 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5066 /* Line 1464 of yacc.c */
5067 #line 467 "expression.y"
5068 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5073 /* Line 1464 of yacc.c */
5074 #line 468 "expression.y"
5075 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5080 /* Line 1464 of yacc.c */
5081 #line 469 "expression.y"
5082 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5087 /* Line 1464 of yacc.c */
5088 #line 473 "expression.y"
5089 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].initDeclarator)); ;}
5094 /* Line 1464 of yacc.c */
5095 #line 474 "expression.y"
5096 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].initDeclarator)); ;}
5101 /* Line 1464 of yacc.c */
5102 #line 478 "expression.y"
5103 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[(1) - (1)].declarator), null); (yyval.initDeclarator).loc = (yyloc); ;}
5108 /* Line 1464 of yacc.c */
5109 #line 479 "expression.y"
5110 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[(1) - (3)].declarator), (yyvsp[(3) - (3)].initializer)); (yyval.initDeclarator).loc = (yyloc); (yyval.initDeclarator).initializer.loc.start = (yylsp[(2) - (3)]).end; ;}
5115 /* Line 1464 of yacc.c */
5116 #line 483 "expression.y"
5117 { (yyval.specifier) = MkSpecifier(TYPEDEF); ;}
5122 /* Line 1464 of yacc.c */
5123 #line 484 "expression.y"
5124 { (yyval.specifier) = MkSpecifier(EXTERN); ;}
5129 /* Line 1464 of yacc.c */
5130 #line 485 "expression.y"
5131 { (yyval.specifier) = MkSpecifier(STATIC); ;}
5136 /* Line 1464 of yacc.c */
5137 #line 486 "expression.y"
5138 { (yyval.specifier) = MkSpecifier(AUTO); ;}
5143 /* Line 1464 of yacc.c */
5144 #line 487 "expression.y"
5145 { (yyval.specifier) = MkSpecifier(REGISTER); ;}
5150 /* Line 1464 of yacc.c */
5151 #line 491 "expression.y"
5152 { (yyval.string) = CopyString(yytext); ;}
5157 /* Line 1464 of yacc.c */
5158 #line 496 "expression.y"
5159 { (yyval.string) = CopyString(yytext); ;}
5164 /* Line 1464 of yacc.c */
5165 #line 501 "expression.y"
5166 { (yyval.specifier) = MkSpecifier(CONST); ;}
5171 /* Line 1464 of yacc.c */
5172 #line 502 "expression.y"
5173 { (yyval.specifier) = MkSpecifier(VOLATILE); ;}
5178 /* Line 1464 of yacc.c */
5179 #line 503 "expression.y"
5180 { (yyval.specifier) = MkSpecifierExtended(yytext); ;}
5185 /* Line 1464 of yacc.c */
5186 #line 507 "expression.y"
5187 { (yyval.specifier) = (yyvsp[(1) - (1)].specifier); ;}
5192 /* Line 1464 of yacc.c */
5193 #line 532 "expression.y"
5194 { (yyval.specifier) = MkSpecifierName(yytext); ;}
5199 /* Line 1464 of yacc.c */
5200 #line 536 "expression.y"
5201 { (yyval.specifier) = MkSpecifier(VOID); ;}
5206 /* Line 1464 of yacc.c */
5207 #line 537 "expression.y"
5208 { (yyval.specifier) = MkSpecifier(CHAR); ;}
5213 /* Line 1464 of yacc.c */
5214 #line 538 "expression.y"
5215 { (yyval.specifier) = MkSpecifier(SHORT); ;}
5220 /* Line 1464 of yacc.c */
5221 #line 539 "expression.y"
5222 { (yyval.specifier) = MkSpecifier(INT); ;}
5227 /* Line 1464 of yacc.c */
5228 #line 540 "expression.y"
5229 { (yyval.specifier) = MkSpecifier(UINT); ;}
5234 /* Line 1464 of yacc.c */
5235 #line 541 "expression.y"
5236 { (yyval.specifier) = MkSpecifier(INT64); ;}
5241 /* Line 1464 of yacc.c */
5242 #line 542 "expression.y"
5243 { (yyval.specifier) = MkSpecifier(VALIST); ;}
5248 /* Line 1464 of yacc.c */
5249 #line 543 "expression.y"
5250 { (yyval.specifier) = MkSpecifier(LONG); ;}
5255 /* Line 1464 of yacc.c */
5256 #line 544 "expression.y"
5257 { (yyval.specifier) = MkSpecifier(FLOAT); ;}
5262 /* Line 1464 of yacc.c */
5263 #line 545 "expression.y"
5264 { (yyval.specifier) = MkSpecifier(DOUBLE); ;}
5269 /* Line 1464 of yacc.c */
5270 #line 546 "expression.y"
5271 { (yyval.specifier) = MkSpecifier(SIGNED); ;}
5276 /* Line 1464 of yacc.c */
5277 #line 547 "expression.y"
5278 { (yyval.specifier) = MkSpecifier(UNSIGNED); ;}
5283 /* Line 1464 of yacc.c */
5284 #line 548 "expression.y"
5285 { (yyval.specifier) = MkSpecifier(EXTENSION); ;}
5290 /* Line 1464 of yacc.c */
5291 #line 552 "expression.y"
5292 { (yyval.specifier) = MkSpecifierSubClass((yyvsp[(3) - (4)].specifier)); ;}
5297 /* Line 1464 of yacc.c */
5298 #line 553 "expression.y"
5299 { (yyval.specifier) = MkSpecifier(THISCLASS); ;}
5304 /* Line 1464 of yacc.c */
5305 #line 557 "expression.y"
5306 { (yyval.specifier) = MkSpecifier(VOID); ;}
5311 /* Line 1464 of yacc.c */
5312 #line 558 "expression.y"
5313 { (yyval.specifier) = MkSpecifier(CHAR); ;}
5318 /* Line 1464 of yacc.c */
5319 #line 559 "expression.y"
5320 { (yyval.specifier) = MkSpecifier(SHORT); ;}
5325 /* Line 1464 of yacc.c */
5326 #line 560 "expression.y"
5327 { (yyval.specifier) = MkSpecifier(INT); ;}
5332 /* Line 1464 of yacc.c */
5333 #line 561 "expression.y"
5334 { (yyval.specifier) = MkSpecifier(UINT); ;}
5339 /* Line 1464 of yacc.c */
5340 #line 562 "expression.y"
5341 { (yyval.specifier) = MkSpecifier(INT64); ;}
5346 /* Line 1464 of yacc.c */
5347 #line 563 "expression.y"
5348 { (yyval.specifier) = MkSpecifier(VALIST); ;}
5353 /* Line 1464 of yacc.c */
5354 #line 564 "expression.y"
5355 { (yyval.specifier) = MkSpecifier(LONG); ;}
5360 /* Line 1464 of yacc.c */
5361 #line 565 "expression.y"
5362 { (yyval.specifier) = MkSpecifier(FLOAT); ;}
5367 /* Line 1464 of yacc.c */
5368 #line 566 "expression.y"
5369 { (yyval.specifier) = MkSpecifier(DOUBLE); ;}
5374 /* Line 1464 of yacc.c */
5375 #line 567 "expression.y"
5376 { (yyval.specifier) = MkSpecifier(SIGNED); ;}
5381 /* Line 1464 of yacc.c */
5382 #line 568 "expression.y"
5383 { (yyval.specifier) = MkSpecifier(UNSIGNED); ;}
5388 /* Line 1464 of yacc.c */
5389 #line 572 "expression.y"
5390 { (yyval.specifier) = MkSpecifierSubClass((yyvsp[(3) - (4)].specifier)); ;}
5395 /* Line 1464 of yacc.c */
5396 #line 573 "expression.y"
5397 { (yyval.specifier) = MkSpecifier(THISCLASS); ;}
5402 /* Line 1464 of yacc.c */
5403 #line 578 "expression.y"
5404 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (5)].specifierType), (yyvsp[(2) - (5)].id), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (5)].id).string); ;}
5409 /* Line 1464 of yacc.c */
5410 #line 579 "expression.y"
5411 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (4)].specifierType), null, (yyvsp[(3) - (4)].list)); ;}
5416 /* Line 1464 of yacc.c */
5417 #line 580 "expression.y"
5418 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (4)].specifierType), (yyvsp[(2) - (4)].id), null); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (4)].id).string); ;}
5423 /* Line 1464 of yacc.c */
5424 #line 581 "expression.y"
5425 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (3)].specifierType), null, null); ;}
5430 /* Line 1464 of yacc.c */
5431 #line 583 "expression.y"
5432 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (5)].specifierType), MkIdentifier((yyvsp[(2) - (5)].specifier).name), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (5)].specifier).name); FreeSpecifier((yyvsp[(2) - (5)].specifier)); ;}
5437 /* Line 1464 of yacc.c */
5438 #line 587 "expression.y"
5439 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (2)].specifierType), (yyvsp[(2) - (2)].id), null); if(declMode) DeclClass(0, (yyvsp[(2) - (2)].id).string); ;}
5444 /* Line 1464 of yacc.c */
5445 #line 589 "expression.y"
5446 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (2)].specifierType), MkIdentifier((yyvsp[(2) - (2)].specifier).name), null); if(declMode) DeclClass(0, (yyvsp[(2) - (2)].specifier).name); FreeSpecifier((yyvsp[(2) - (2)].specifier)); ;}
5451 /* Line 1464 of yacc.c */
5452 #line 627 "expression.y"
5453 { (yyval.specifierType) = structSpecifier; ;}
5458 /* Line 1464 of yacc.c */
5459 #line 628 "expression.y"
5460 { (yyval.specifierType) = unionSpecifier; ;}
5465 /* Line 1464 of yacc.c */
5466 #line 632 "expression.y"
5467 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].classDef)); ;}
5472 /* Line 1464 of yacc.c */
5473 #line 633 "expression.y"
5474 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].classDef)); ;}
5479 /* Line 1464 of yacc.c */
5480 #line 637 "expression.y"
5481 { (yyval.memberInit) = MkMemberInitExp((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); (yyval.memberInit).initializer.loc.start = (yylsp[(2) - (3)]).end; ;}
5486 /* Line 1464 of yacc.c */
5487 #line 641 "expression.y"
5488 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].memberInit)); ((MemberInit)(yyval.list)->last).loc = (yyloc); ;}
5493 /* Line 1464 of yacc.c */
5494 #line 642 "expression.y"
5495 { ((MemberInit)(yyvsp[(1) - (3)].list)->last).loc.end = (yylsp[(3) - (3)]).start; ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].memberInit)); ;}
5500 /* Line 1464 of yacc.c */
5501 #line 647 "expression.y"
5502 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), null, (yyvsp[(3) - (9)].id), (yyvsp[(6) - (9)].stmt), (yyvsp[(8) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
5507 /* Line 1464 of yacc.c */
5508 #line 649 "expression.y"
5509 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), null, (yyvsp[(3) - (9)].id), (yyvsp[(8) - (9)].stmt), (yyvsp[(6) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
5514 /* Line 1464 of yacc.c */
5515 #line 651 "expression.y"
5516 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), null, (yyvsp[(3) - (7)].id), (yyvsp[(6) - (7)].stmt), null); (yyval.prop).loc = (yyloc); ;}
5521 /* Line 1464 of yacc.c */
5522 #line 653 "expression.y"
5523 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), null, (yyvsp[(3) - (7)].id), null, (yyvsp[(6) - (7)].stmt)); (yyval.prop).loc = (yyloc); ;}
5528 /* Line 1464 of yacc.c */
5529 #line 655 "expression.y"
5530 { (yyval.prop) = MkProperty((yyvsp[(2) - (5)].list), null, (yyvsp[(3) - (5)].id), null, null); (yyval.prop).loc = (yyloc); ;}
5535 /* Line 1464 of yacc.c */
5536 #line 658 "expression.y"
5537 { (yyval.prop) = MkProperty((yyvsp[(2) - (10)].list), (yyvsp[(3) - (10)].declarator), (yyvsp[(4) - (10)].id), (yyvsp[(7) - (10)].stmt), (yyvsp[(9) - (10)].stmt)); (yyval.prop).loc = (yyloc); ;}
5542 /* Line 1464 of yacc.c */
5543 #line 660 "expression.y"
5544 { (yyval.prop) = MkProperty((yyvsp[(2) - (10)].list), (yyvsp[(3) - (10)].declarator), (yyvsp[(4) - (10)].id), (yyvsp[(9) - (10)].stmt), (yyvsp[(7) - (10)].stmt)); (yyval.prop).loc = (yyloc); ;}
5549 /* Line 1464 of yacc.c */
5550 #line 662 "expression.y"
5551 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), (yyvsp[(3) - (8)].declarator), (yyvsp[(4) - (8)].id), (yyvsp[(7) - (8)].stmt), null); (yyval.prop).loc = (yyloc); ;}
5556 /* Line 1464 of yacc.c */
5557 #line 664 "expression.y"
5558 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), (yyvsp[(3) - (8)].declarator), (yyvsp[(4) - (8)].id), null, (yyvsp[(7) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
5563 /* Line 1464 of yacc.c */
5564 #line 666 "expression.y"
5565 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), (yyvsp[(3) - (6)].declarator), (yyvsp[(4) - (6)].id), null, null); (yyval.prop).loc = (yyloc); ;}
5570 /* Line 1464 of yacc.c */
5571 #line 669 "expression.y"
5572 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), null, null, (yyvsp[(5) - (8)].stmt), (yyvsp[(7) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
5577 /* Line 1464 of yacc.c */
5578 #line 671 "expression.y"
5579 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), null, null, (yyvsp[(7) - (8)].stmt), (yyvsp[(5) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
5584 /* Line 1464 of yacc.c */
5585 #line 673 "expression.y"
5586 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), null, null, (yyvsp[(5) - (6)].stmt), null); (yyval.prop).loc = (yyloc); ;}
5591 /* Line 1464 of yacc.c */
5592 #line 675 "expression.y"
5593 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), null, null, null, (yyvsp[(5) - (6)].stmt)); (yyval.prop).loc = (yyloc); ;}
5598 /* Line 1464 of yacc.c */
5599 #line 677 "expression.y"
5600 { (yyval.prop) = MkProperty((yyvsp[(2) - (4)].list), null, null, null, null); (yyval.prop).loc = (yyloc); ;}
5605 /* Line 1464 of yacc.c */
5606 #line 680 "expression.y"
5607 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), (yyvsp[(3) - (9)].declarator), null, (yyvsp[(6) - (9)].stmt), (yyvsp[(8) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
5612 /* Line 1464 of yacc.c */
5613 #line 682 "expression.y"
5614 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), (yyvsp[(3) - (9)].declarator), null, (yyvsp[(8) - (9)].stmt), (yyvsp[(6) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
5619 /* Line 1464 of yacc.c */
5620 #line 684 "expression.y"
5621 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), (yyvsp[(3) - (7)].declarator), null, (yyvsp[(6) - (7)].stmt), null); (yyval.prop).loc = (yyloc); ;}
5626 /* Line 1464 of yacc.c */
5627 #line 686 "expression.y"
5628 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), (yyvsp[(3) - (7)].declarator), null, null, (yyvsp[(6) - (7)].stmt)); (yyval.prop).loc = (yyloc); ;}
5633 /* Line 1464 of yacc.c */
5634 #line 688 "expression.y"
5635 { (yyval.prop) = MkProperty((yyvsp[(2) - (5)].list), (yyvsp[(3) - (5)].declarator), null, null, null); (yyval.prop).loc = (yyloc); ;}
5640 /* Line 1464 of yacc.c */
5641 #line 692 "expression.y"
5642 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[(1) - (3)].list), (yyvsp[(2) - (3)].list), null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); ;}
5647 /* Line 1464 of yacc.c */
5648 #line 693 "expression.y"
5649 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[(1) - (2)].list), null, null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); ;}
5654 /* Line 1464 of yacc.c */
5655 #line 694 "expression.y"
5656 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[(1) - (2)].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); ;}
5661 /* Line 1464 of yacc.c */
5662 #line 695 "expression.y"
5663 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[(1) - (2)].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); ;}
5668 /* Line 1464 of yacc.c */
5669 #line 696 "expression.y"
5670 { (yyval.classDef) = MkClassDefFunction((yyvsp[(1) - (1)].classFunction)); (yyval.classDef).loc = (yyloc); ;}
5675 /* Line 1464 of yacc.c */
5676 #line 697 "expression.y"
5677 { (yyval.classDef) = MkClassDefDefaultProperty((yyvsp[(1) - (2)].list)); if((yyvsp[(1) - (2)].list)->last) ((MemberInit)(yyvsp[(1) - (2)].list)->last).loc.end = (yylsp[(2) - (2)]).start; (yyval.classDef).loc = (yyloc); ;}
5682 /* Line 1464 of yacc.c */
5683 #line 698 "expression.y"
5684 { (yyval.classDef) = MkClassDefProperty((yyvsp[(1) - (1)].prop)); (yyval.classDef).loc = (yyloc); globalContext.nextID++; ;}
5689 /* Line 1464 of yacc.c */
5690 #line 699 "expression.y"
5691 { (yyval.classDef) = null; ;}
5696 /* Line 1464 of yacc.c */
5697 #line 704 "expression.y"
5698 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].declarator)); ;}
5703 /* Line 1464 of yacc.c */
5704 #line 706 "expression.y"
5705 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].declarator)); ;}
5710 /* Line 1464 of yacc.c */
5711 #line 711 "expression.y"
5712 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (1)].declarator), null); (yyval.declarator).loc = (yyloc); ;}
5717 /* Line 1464 of yacc.c */
5718 #line 713 "expression.y"
5719 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (2)].declarator), null); (yyval.declarator).loc = (yyloc); ;}
5724 /* Line 1464 of yacc.c */
5725 #line 715 "expression.y"
5726 { (yyval.declarator) = MkStructDeclarator(null, (yyvsp[(2) - (2)].exp)); (yyval.declarator).loc = (yyloc); ;}
5731 /* Line 1464 of yacc.c */
5732 #line 717 "expression.y"
5733 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (3)].declarator), (yyvsp[(3) - (3)].exp)); (yyval.declarator).loc = (yyloc); ;}
5738 /* Line 1464 of yacc.c */
5739 #line 719 "expression.y"
5740 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (5)].declarator), (yyvsp[(3) - (5)].exp)); (yyval.declarator).structDecl.posExp = (yyvsp[(5) - (5)].exp); (yyval.declarator).loc = (yyloc); ;}
5745 /* Line 1464 of yacc.c */
5746 #line 723 "expression.y"
5747 { (yyval.specifier) = MkEnum((yyvsp[(2) - (2)].id), null); if(declMode) DeclClass(0, (yyvsp[(2) - (2)].id).string); ;}
5752 /* Line 1464 of yacc.c */
5753 #line 724 "expression.y"
5754 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[(2) - (2)].specifier).name), null); if(declMode) DeclClass(0, (yyvsp[(2) - (2)].specifier).name); FreeSpecifier((yyvsp[(2) - (2)].specifier)); ;}
5759 /* Line 1464 of yacc.c */
5760 #line 729 "expression.y"
5761 { (yyval.specifier) = MkEnum(null, (yyvsp[(3) - (4)].list)); ;}
5766 /* Line 1464 of yacc.c */
5767 #line 730 "expression.y"
5768 { (yyval.specifier) = MkEnum((yyvsp[(2) - (5)].id), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (5)].id).string); ;}
5773 /* Line 1464 of yacc.c */
5774 #line 731 "expression.y"
5775 { (yyval.specifier) = MkEnum((yyvsp[(2) - (7)].id), (yyvsp[(4) - (7)].list)); (yyval.specifier).definitions = (yyvsp[(6) - (7)].list); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (7)].id).string); ;}
5780 /* Line 1464 of yacc.c */
5781 #line 732 "expression.y"
5782 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[(2) - (7)].specifier).name), (yyvsp[(4) - (7)].list)); (yyval.specifier).definitions = (yyvsp[(6) - (7)].list); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (7)].specifier).name); FreeSpecifier((yyvsp[(2) - (7)].specifier)); ;}
5787 /* Line 1464 of yacc.c */
5788 #line 733 "expression.y"
5789 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[(2) - (5)].specifier).name), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (5)].specifier).name); FreeSpecifier((yyvsp[(2) - (5)].specifier)); ;}
5794 /* Line 1464 of yacc.c */
5795 #line 750 "expression.y"
5796 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].enumerator)); ;}
5801 /* Line 1464 of yacc.c */
5802 #line 752 "expression.y"
5803 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].enumerator)); ;}
5808 /* Line 1464 of yacc.c */
5809 #line 757 "expression.y"
5810 { (yyval.enumerator) = MkEnumerator((yyvsp[(1) - (1)].id), null); ;}
5815 /* Line 1464 of yacc.c */
5816 #line 759 "expression.y"
5817 { (yyval.enumerator) = MkEnumerator((yyvsp[(1) - (3)].id), (yyvsp[(3) - (3)].exp)); ;}
5822 /* Line 1464 of yacc.c */
5823 #line 765 "expression.y"
5824 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
5829 /* Line 1464 of yacc.c */
5830 #line 767 "expression.y"
5831 { (yyval.declarator) = MkDeclaratorArray(null, null); ;}
5836 /* Line 1464 of yacc.c */
5837 #line 769 "expression.y"
5838 { (yyval.declarator) = MkDeclaratorArray(null, (yyvsp[(2) - (3)].exp)); ;}
5843 /* Line 1464 of yacc.c */
5844 #line 771 "expression.y"
5845 { (yyval.declarator) = MkDeclaratorEnumArray(null, (yyvsp[(2) - (3)].specifier)); ;}
5850 /* Line 1464 of yacc.c */
5851 #line 773 "expression.y"
5852 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (3)].declarator), null); ;}
5857 /* Line 1464 of yacc.c */
5858 #line 775 "expression.y"
5859 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].exp)); ;}
5864 /* Line 1464 of yacc.c */
5865 #line 777 "expression.y"
5866 { (yyval.declarator) = MkDeclaratorEnumArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].specifier)); ;}
5871 /* Line 1464 of yacc.c */
5872 #line 779 "expression.y"
5873 { (yyval.declarator) = MkDeclaratorFunction(null, null); ;}
5878 /* Line 1464 of yacc.c */
5879 #line 781 "expression.y"
5880 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[(2) - (3)].list)); ;}
5885 /* Line 1464 of yacc.c */
5886 #line 783 "expression.y"
5887 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), null); ;}
5892 /* Line 1464 of yacc.c */
5893 #line 785 "expression.y"
5894 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].list)); ;}
5899 /* Line 1464 of yacc.c */
5900 #line 790 "expression.y"
5901 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
5906 /* Line 1464 of yacc.c */
5907 #line 792 "expression.y"
5908 { (yyval.declarator) = MkDeclaratorFunction(null, null); ;}
5913 /* Line 1464 of yacc.c */
5914 #line 794 "expression.y"
5915 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[(2) - (3)].list)); ;}
5920 /* Line 1464 of yacc.c */
5921 #line 796 "expression.y"
5922 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), null); ;}
5927 /* Line 1464 of yacc.c */
5928 #line 798 "expression.y"
5929 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].list)); ;}
5934 /* Line 1464 of yacc.c */
5935 #line 802 "expression.y"
5936 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (1)].pointer), null); ;}
5941 /* Line 1464 of yacc.c */
5942 #line 804 "expression.y"
5943 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
5948 /* Line 1464 of yacc.c */
5949 #line 805 "expression.y"
5950 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].string), MkDeclaratorPointer((yyvsp[(2) - (2)].pointer), null)); ;}
5955 /* Line 1464 of yacc.c */
5956 #line 806 "expression.y"
5957 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].declarator)); ;}
5962 /* Line 1464 of yacc.c */
5963 #line 807 "expression.y"
5964 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].string), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
5969 /* Line 1464 of yacc.c */
5970 #line 811 "expression.y"
5971 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (1)].pointer), null); ;}
5976 /* Line 1464 of yacc.c */
5977 #line 813 "expression.y"
5978 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
5983 /* Line 1464 of yacc.c */
5984 #line 814 "expression.y"
5985 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].string), MkDeclaratorPointer((yyvsp[(2) - (2)].pointer), null)); ;}
5990 /* Line 1464 of yacc.c */
5991 #line 815 "expression.y"
5992 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].declarator)); ;}
5997 /* Line 1464 of yacc.c */
5998 #line 816 "expression.y"
5999 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].string), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
6004 /* Line 1464 of yacc.c */
6005 #line 864 "expression.y"
6006 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
6011 /* Line 1464 of yacc.c */
6012 #line 866 "expression.y"
6013 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].string), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
6018 /* Line 1464 of yacc.c */
6019 #line 872 "expression.y"
6020 { (yyval.declarator) = MkDeclaratorIdentifier((yyvsp[(1) - (1)].id)); ;}
6025 /* Line 1464 of yacc.c */
6026 #line 874 "expression.y"
6027 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
6032 /* Line 1464 of yacc.c */
6033 #line 876 "expression.y"
6034 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].exp)); ;}
6039 /* Line 1464 of yacc.c */
6040 #line 878 "expression.y"
6041 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (3)].declarator), null); ;}
6046 /* Line 1464 of yacc.c */
6047 #line 880 "expression.y"
6048 { (yyval.declarator) = MkDeclaratorEnumArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].specifier)); ;}
6053 /* Line 1464 of yacc.c */
6054 #line 886 "expression.y"
6055 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
6060 /* Line 1464 of yacc.c */
6061 #line 889 "expression.y"
6062 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].declarator)); ;}
6067 /* Line 1464 of yacc.c */
6068 #line 891 "expression.y"
6069 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].string), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
6074 /* Line 1464 of yacc.c */
6075 #line 893 "expression.y"
6076 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (3)].pointer), MkDeclaratorExtended((yyvsp[(2) - (3)].string), (yyvsp[(3) - (3)].declarator))); ;}
6081 /* Line 1464 of yacc.c */
6082 #line 901 "expression.y"
6083 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].declarator)); ;}
6088 /* Line 1464 of yacc.c */
6089 #line 903 "expression.y"
6090 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].string), (yyvsp[(2) - (2)].declarator)); ;}
6095 /* Line 1464 of yacc.c */
6096 #line 912 "expression.y"
6097 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), (yyvsp[(2) - (3)].list)); ;}
6102 /* Line 1464 of yacc.c */
6103 #line 914 "expression.y"
6104 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), (yyvsp[(2) - (3)].list)); ;}
6109 /* Line 1464 of yacc.c */
6110 #line 916 "expression.y"
6111 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (2)].declarator), null); ;}
6116 /* Line 1464 of yacc.c */
6117 #line 920 "expression.y"
6118 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6123 /* Line 1464 of yacc.c */
6124 #line 921 "expression.y"
6125 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6130 /* Line 1464 of yacc.c */
6131 #line 925 "expression.y"
6132 { (yyval.pointer) = MkPointer(null, null); ;}
6137 /* Line 1464 of yacc.c */
6138 #line 926 "expression.y"
6139 { (yyval.pointer) = MkPointer((yyvsp[(2) - (2)].list), null); ;}
6144 /* Line 1464 of yacc.c */
6145 #line 927 "expression.y"
6146 { (yyval.pointer) = MkPointer(null, (yyvsp[(2) - (2)].pointer)); ;}
6151 /* Line 1464 of yacc.c */
6152 #line 928 "expression.y"
6153 { (yyval.pointer) = MkPointer((yyvsp[(2) - (3)].list), (yyvsp[(3) - (3)].pointer)); ;}
6158 /* Line 1464 of yacc.c */
6159 #line 933 "expression.y"
6160 { ListAdd((yyvsp[(1) - (3)].list), MkTypeName(null, null)); ;}
6165 /* Line 1464 of yacc.c */
6166 #line 937 "expression.y"
6167 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].typeName)); ;}
6172 /* Line 1464 of yacc.c */
6173 #line 938 "expression.y"
6174 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typeName)); ;}
6179 /* Line 1464 of yacc.c */
6180 #line 942 "expression.y"
6181 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
6186 /* Line 1464 of yacc.c */
6187 #line 943 "expression.y"
6188 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
6193 /* Line 1464 of yacc.c */
6194 #line 944 "expression.y"
6195 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (1)].list), null); ;}
6200 /* Line 1464 of yacc.c */
6201 #line 948 "expression.y"
6202 { (yyval.list) = MkList(); ListAdd((yyval.list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[(1) - (1)].id)))); ;}
6207 /* Line 1464 of yacc.c */
6208 #line 949 "expression.y"
6209 { ListAdd((yyvsp[(1) - (3)].list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[(3) - (3)].id)))); ;}
6214 /* Line 1464 of yacc.c */
6215 #line 953 "expression.y"
6216 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (1)].list), null); ;}
6221 /* Line 1464 of yacc.c */
6222 #line 954 "expression.y"
6223 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
6228 /* Line 1464 of yacc.c */
6229 #line 964 "expression.y"
6230 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
6235 /* Line 1464 of yacc.c */
6236 #line 966 "expression.y"
6237 { (yyval.initializer) = MkInitializerList((yyvsp[(2) - (3)].list)); (yyval.initializer).loc = (yyloc); ;}
6242 /* Line 1464 of yacc.c */
6243 #line 968 "expression.y"
6245 (yyval.initializer) = MkInitializerList((yyvsp[(2) - (4)].list));
6246 (yyval.initializer).loc = (yyloc);
6249 Expression exp = MkExpDummy();
6250 Initializer init = MkInitializerAssignment(exp);
6251 init.loc = (yylsp[(3) - (4)]);
6252 exp.loc = (yylsp[(3) - (4)]);
6253 ListAdd((yyvsp[(2) - (4)].list), init);
6260 /* Line 1464 of yacc.c */
6261 #line 983 "expression.y"
6262 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
6267 /* Line 1464 of yacc.c */
6268 #line 985 "expression.y"
6269 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
6274 /* Line 1464 of yacc.c */
6275 #line 1006 "expression.y"
6276 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].initializer)); ;}
6281 /* Line 1464 of yacc.c */
6282 #line 1008 "expression.y"
6283 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].initializer)); ;}
6288 /* Line 1464 of yacc.c */
6289 #line 1022 "expression.y"
6290 { (yyval.stmt) = MkLabeledStmt((yyvsp[(1) - (3)].id), (yyvsp[(3) - (3)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6295 /* Line 1464 of yacc.c */
6296 #line 1024 "expression.y"
6297 { (yyval.stmt) = MkCaseStmt((yyvsp[(2) - (4)].exp), (yyvsp[(4) - (4)].stmt)); (yyval.stmt).loc = (yyloc); (yyvsp[(2) - (4)].exp).loc.start = (yylsp[(1) - (4)]).end; ;}
6302 /* Line 1464 of yacc.c */
6303 #line 1026 "expression.y"
6304 { (yyval.stmt) = MkCaseStmt(null, (yyvsp[(3) - (3)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6309 /* Line 1464 of yacc.c */
6310 #line 1030 "expression.y"
6311 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].declaration)); ;}
6316 /* Line 1464 of yacc.c */
6317 #line 1031 "expression.y"
6318 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declaration)); ;}
6323 /* Line 1464 of yacc.c */
6324 #line 1035 "expression.y"
6325 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].stmt)); ;}
6330 /* Line 1464 of yacc.c */
6331 #line 1036 "expression.y"
6332 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].stmt)); ;}
6337 /* Line 1464 of yacc.c */
6338 #line 1039 "expression.y"
6339 { Statement stmt = MkBadDeclStmt((yyvsp[(2) - (2)].declaration)); stmt.loc = (yylsp[(2) - (2)]); /*yyerror(); */ ListAdd((yyvsp[(1) - (2)].list), stmt); ;}
6344 /* Line 1464 of yacc.c */
6345 #line 1043 "expression.y"
6346 { (yyval.stmt) = MkCompoundStmt(null, (yyvsp[(1) - (1)].list)); ;}
6351 /* Line 1464 of yacc.c */
6352 #line 1044 "expression.y"
6353 { (yyval.stmt) = MkCompoundStmt((yyvsp[(1) - (1)].list), null); ;}
6358 /* Line 1464 of yacc.c */
6359 #line 1045 "expression.y"
6360 { (yyval.stmt) = MkCompoundStmt((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); ;}
6365 /* Line 1464 of yacc.c */
6366 #line 1049 "expression.y"
6367 { (yyval.context) = PushContext(); ;}
6372 /* Line 1464 of yacc.c */
6373 #line 1054 "expression.y"
6375 (yyval.stmt) = MkCompoundStmt(null, null);
6376 (yyval.stmt).compound.context = PushContext();
6377 PopContext((yyval.stmt).compound.context);
6378 (yyval.stmt).loc = (yyloc);
6384 /* Line 1464 of yacc.c */
6385 #line 1062 "expression.y"
6386 { (yyval.stmt) = (yyvsp[(2) - (3)].stmt); (yyval.stmt).compound.context = (yyvsp[(1) - (3)].context); PopContext((yyvsp[(1) - (3)].context)); (yyval.stmt).loc = (yyloc); ;}
6391 /* Line 1464 of yacc.c */
6392 #line 1066 "expression.y"
6393 { (yyval.stmt) = MkExpressionStmt(null); (yyval.stmt).loc = (yyloc); ;}
6398 /* Line 1464 of yacc.c */
6399 #line 1067 "expression.y"
6400 { (yyval.stmt) = MkExpressionStmt((yyvsp[(1) - (2)].list)); (yyval.stmt).loc = (yyloc); ;}
6405 /* Line 1464 of yacc.c */
6406 #line 1071 "expression.y"
6407 { (yyval.stmt) = MkIfStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt), null); (yyval.stmt).loc = (yyloc); ;}
6412 /* Line 1464 of yacc.c */
6413 #line 1072 "expression.y"
6414 { (yyval.stmt) = MkIfStmt((yyvsp[(3) - (7)].list), (yyvsp[(5) - (7)].stmt), (yyvsp[(7) - (7)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6419 /* Line 1464 of yacc.c */
6420 #line 1073 "expression.y"
6421 { (yyval.stmt) = MkSwitchStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6426 /* Line 1464 of yacc.c */
6427 #line 1077 "expression.y"
6428 { (yyval.stmt) = MkWhileStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6433 /* Line 1464 of yacc.c */
6434 #line 1078 "expression.y"
6435 { (yyval.stmt) = MkDoWhileStmt((yyvsp[(2) - (7)].stmt), (yyvsp[(5) - (7)].list)); (yyval.stmt).loc = (yyloc); ;}
6440 /* Line 1464 of yacc.c */
6441 #line 1079 "expression.y"
6442 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (6)].stmt), (yyvsp[(4) - (6)].stmt), null, (yyvsp[(6) - (6)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6447 /* Line 1464 of yacc.c */
6448 #line 1080 "expression.y"
6449 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (7)].stmt), (yyvsp[(4) - (7)].stmt), (yyvsp[(5) - (7)].list), (yyvsp[(7) - (7)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6454 /* Line 1464 of yacc.c */
6455 #line 1082 "expression.y"
6456 { (yyval.stmt) = MkWhileStmt(null, (yyvsp[(4) - (4)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6461 /* Line 1464 of yacc.c */
6462 #line 1083 "expression.y"
6463 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (5)].stmt), null, null, (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6468 /* Line 1464 of yacc.c */
6469 #line 1084 "expression.y"
6470 { (yyval.stmt) = MkForStmt(null, null, null, (yyvsp[(4) - (4)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6475 /* Line 1464 of yacc.c */
6476 #line 1088 "expression.y"
6477 { (yyval.stmt) = MkGotoStmt((yyvsp[(2) - (3)].id)); (yyval.stmt).loc = (yyloc); ;}
6482 /* Line 1464 of yacc.c */
6483 #line 1089 "expression.y"
6484 { (yyval.stmt) = MkContinueStmt(); (yyval.stmt).loc = (yyloc); ;}
6489 /* Line 1464 of yacc.c */
6490 #line 1090 "expression.y"
6491 { (yyval.stmt) = MkBreakStmt(); (yyval.stmt).loc = (yyloc); ;}
6496 /* Line 1464 of yacc.c */
6497 #line 1091 "expression.y"
6498 { Expression exp = MkExpDummy(); (yyval.stmt) = MkReturnStmt(MkListOne(exp)); (yyval.stmt).loc = (yyloc); exp.loc = (yylsp[(2) - (2)]); ;}
6503 /* Line 1464 of yacc.c */
6504 #line 1092 "expression.y"
6505 { (yyval.stmt) = MkReturnStmt((yyvsp[(2) - (3)].list)); (yyval.stmt).loc = (yyloc); ;}
6510 /* Line 1464 of yacc.c */
6511 #line 1101 "expression.y"
6512 { (yyval.string) = CopyString(yytext); ;}
6517 /* Line 1464 of yacc.c */
6518 #line 1142 "expression.y"
6519 { (yyval.instance) = MkInstantiationNamed((yyvsp[(1) - (5)].list), MkExpIdentifier((yyvsp[(2) - (5)].id)), (yyvsp[(4) - (5)].list)); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[(2) - (5)]); (yyval.instance).insideLoc.start = (yylsp[(3) - (5)]).end; (yyval.instance).insideLoc.end = (yylsp[(5) - (5)]).start;;}
6524 /* Line 1464 of yacc.c */
6525 #line 1144 "expression.y"
6526 { (yyval.instance) = MkInstantiationNamed((yyvsp[(1) - (4)].list), MkExpIdentifier((yyvsp[(2) - (4)].id)), MkList()); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[(2) - (4)]); (yyval.instance).insideLoc.start = (yylsp[(3) - (4)]).end; (yyval.instance).insideLoc.end = (yylsp[(4) - (4)]).start;;}
6531 /* Line 1464 of yacc.c */
6532 #line 1149 "expression.y"
6533 { (yyval.instance) = MkInstantiation((yyvsp[(1) - (4)].specifier), null, (yyvsp[(3) - (4)].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[(2) - (4)]).end; (yyval.instance).insideLoc.end = (yylsp[(4) - (4)]).start; ;}
6538 /* Line 1464 of yacc.c */
6539 #line 1151 "expression.y"
6540 { (yyval.instance) = MkInstantiation((yyvsp[(1) - (3)].specifier), null, MkList()); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[(2) - (3)]).end; (yyval.instance).insideLoc.end = (yylsp[(3) - (3)]).start;;}
6545 /* Line 1464 of yacc.c */
6546 #line 1153 "expression.y"
6547 { Location tmpLoc = yylloc; yylloc = (yylsp[(1) - (4)]); yylloc = tmpLoc; (yyval.instance) = MkInstantiation(MkSpecifierName((yyvsp[(1) - (4)].id).string), null, (yyvsp[(3) - (4)].list));(yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[(2) - (4)]).end; (yyval.instance).insideLoc.end = (yylsp[(4) - (4)]).start; FreeIdentifier((yyvsp[(1) - (4)].id)); ;}
6552 /* Line 1464 of yacc.c */
6553 #line 1155 "expression.y"
6554 { Location tmpLoc = yylloc; yylloc = (yylsp[(1) - (3)]); yylloc = tmpLoc; (yyval.instance) = MkInstantiation(MkSpecifierName((yyvsp[(1) - (3)].id).string), null, MkList()); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[(2) - (3)]).end; (yyval.instance).insideLoc.end = (yylsp[(3) - (3)]).start; FreeIdentifier((yyvsp[(1) - (3)].id)); ;}
6559 /* Line 1464 of yacc.c */
6560 #line 1160 "expression.y"
6561 { (yyval.instance) = MkInstantiation(null, null, (yyvsp[(2) - (3)].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[(1) - (3)]).end; (yyval.instance).insideLoc.end = (yylsp[(3) - (3)]).start; ;}
6566 /* Line 1464 of yacc.c */
6567 #line 1162 "expression.y"
6568 { (yyval.instance) = MkInstantiation(null, null, MkList()); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[(1) - (2)]).end; (yyval.instance).insideLoc.end = (yylsp[(2) - (2)]).start;;}
6573 /* Line 1464 of yacc.c */
6574 #line 1167 "expression.y"
6575 { (yyval.classFunction) = MkClassFunction((yyvsp[(1) - (2)].list), null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
6580 /* Line 1464 of yacc.c */
6581 #line 1169 "expression.y"
6582 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[(1) - (1)].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
6587 /* Line 1464 of yacc.c */
6588 #line 1174 "expression.y"
6589 { (yyval.classFunction) = MkClassFunction(null, null, null, null); (yyval.classFunction).isConstructor = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; FreeList /*FreeSpecifier*/((yyvsp[(1) - (3)].list), FreeSpecifier); ;}
6594 /* Line 1464 of yacc.c */
6595 #line 1179 "expression.y"
6596 { (yyval.classFunction) = MkClassFunction(null, null, null, null); (yyval.classFunction).isDestructor = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; FreeList /*FreeSpecifier*/((yyvsp[(2) - (4)].list), FreeSpecifier); ;}
6601 /* Line 1464 of yacc.c */
6602 #line 1184 "expression.y"
6603 { (yyval.classFunction) = MkClassFunction((yyvsp[(2) - (3)].list), null, (yyvsp[(3) - (3)].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
6608 /* Line 1464 of yacc.c */
6609 #line 1186 "expression.y"
6610 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
6615 /* Line 1464 of yacc.c */
6616 #line 1191 "expression.y"
6617 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
6622 /* Line 1464 of yacc.c */
6623 #line 1193 "expression.y"
6624 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
6629 /* Line 1464 of yacc.c */
6630 #line 1195 "expression.y"
6631 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), null); (yyval.classFunction).loc = (yyloc); ;}
6636 /* Line 1464 of yacc.c */
6637 #line 1197 "expression.y"
6638 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
6643 /* Line 1464 of yacc.c */
6644 #line 1199 "expression.y"
6645 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
6650 /* Line 1464 of yacc.c */
6651 #line 1205 "expression.y"
6652 { (yyval.classFunction) = MkClassFunction((yyvsp[(1) - (2)].list), null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
6657 /* Line 1464 of yacc.c */
6658 #line 1210 "expression.y"
6659 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
6664 /* Line 1464 of yacc.c */
6665 #line 1219 "expression.y"
6666 { (yyval.memberInit) = MkMemberInitExp((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); (yyval.memberInit).initializer.loc.start = (yylsp[(2) - (3)]).end;;}
6671 /* Line 1464 of yacc.c */
6672 #line 1220 "expression.y"
6673 { (yyval.memberInit) = MkMemberInit(null, (yyvsp[(1) - (1)].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc);;}
6678 /* Line 1464 of yacc.c */
6679 #line 1225 "expression.y"
6680 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].memberInit)); ;}
6685 /* Line 1464 of yacc.c */
6686 #line 1227 "expression.y"
6687 { ((MemberInit)(yyvsp[(1) - (3)].list)->last).loc.end = (yylsp[(3) - (3)]).start; ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].memberInit)); ;}
6692 /* Line 1464 of yacc.c */
6693 #line 1232 "expression.y"
6694 { if((yyvsp[(1) - (2)].list)->last) ((MemberInit)(yyvsp[(1) - (2)].list)->last).loc.end = (yylsp[(2) - (2)]).end; ;}
6699 /* Line 1464 of yacc.c */
6700 #line 1236 "expression.y"
6701 { MembersInit members = MkMembersInitList((yyvsp[(1) - (1)].list)); (yyval.list) = MkList(); ListAdd((yyval.list), members); members.loc = (yylsp[(1) - (1)]); ;}
6706 /* Line 1464 of yacc.c */
6707 #line 1237 "expression.y"
6708 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitMethod((yyvsp[(1) - (1)].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(1) - (1)]); ;}
6713 /* Line 1464 of yacc.c */
6714 #line 1238 "expression.y"
6715 { MembersInit members = MkMembersInitList((yyvsp[(2) - (2)].list)); ListAdd((yyval.list), members); members.loc = (yylsp[(2) - (2)]); ;}
6720 /* Line 1464 of yacc.c */
6721 #line 1239 "expression.y"
6722 { ListAdd((yyval.list), MkMembersInitMethod((yyvsp[(2) - (2)].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(2) - (2)]); ;}
6727 /* Line 1464 of yacc.c */
6728 #line 1240 "expression.y"
6729 { MembersInit members = MkMembersInitList(MkList()); (yyval.list) = MkList(); ListAdd((yyval.list), members); members.loc = (yylsp[(1) - (1)]); ;}
6734 /* Line 1464 of yacc.c */
6735 #line 1241 "expression.y"
6736 { MembersInit members = MkMembersInitList(MkList()); ListAdd((yyval.list), members); members.loc = (yylsp[(2) - (2)]); ;}
6741 /* Line 1464 of yacc.c */
6742 #line 1246 "expression.y"
6743 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitList((yyvsp[(1) - (1)].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(1) - (1)]); ;}
6748 /* Line 1464 of yacc.c */
6749 #line 1247 "expression.y"
6750 { ListAdd((yyvsp[(1) - (2)].list), MkMembersInitList((yyvsp[(2) - (2)].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(2) - (2)]); ;}
6755 /* Line 1464 of yacc.c */
6756 #line 1251 "expression.y"
6757 { parsedExpression = (yyvsp[(1) - (1)].exp); ;}
6762 /* Line 1464 of yacc.c */
6763 #line 6764 "expression.ec"
6766 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
6770 YY_STACK_PRINT (yyss, yyssp);
6775 /* Now `shift' the result of the reduction. Determine what state
6776 that goes to, based on the state we popped back to and the rule
6777 number reduced by. */
6781 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
6782 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
6783 yystate = yytable[yystate];
6785 yystate = yydefgoto[yyn - YYNTOKENS];
6790 /*------------------------------------.
6791 | yyerrlab -- here on detecting error |
6792 `------------------------------------*/
6794 /* If not already recovering from an error, report this error. */
6798 #if ! YYERROR_VERBOSE
6799 yyerror (YY_("syntax error"));
6802 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
6803 if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
6805 YYSIZE_T yyalloc = 2 * yysize;
6806 if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
6807 yyalloc = YYSTACK_ALLOC_MAXIMUM;
6808 if (yymsg != yymsgbuf)
6809 YYSTACK_FREE (yymsg);
6810 yymsg = (char *) YYSTACK_ALLOC (yyalloc);
6812 yymsg_alloc = yyalloc;
6816 yymsg_alloc = sizeof yymsgbuf;
6820 if (0 < yysize && yysize <= yymsg_alloc)
6822 (void) yysyntax_error (yymsg, yystate, yychar);
6827 yyerror (YY_("syntax error"));
6829 goto yyexhaustedlab;
6835 yyerror_range[0] = yylloc;
6837 if (yyerrstatus == 3)
6839 /* If just tried and failed to reuse lookahead token after an
6840 error, discard it. */
6842 if (yychar <= YYEOF)
6844 /* Return failure if at end of input. */
6845 if (yychar == YYEOF)
6850 yydestruct ("Error: discarding",
6851 yytoken, &yylval, &yylloc);
6856 /* Else will try to reuse lookahead token after shifting the error
6861 /*---------------------------------------------------.
6862 | yyerrorlab -- error raised explicitly by YYERROR. |
6863 `---------------------------------------------------*/
6866 /* Pacify compilers like GCC when the user code never invokes
6867 YYERROR and the label yyerrorlab therefore never appears in user
6869 if (/*CONSTCOND*/ 0)
6872 yyerror_range[0] = yylsp[1-yylen];
6873 /* Do not reclaim the symbols of the rule which action triggered
6877 YY_STACK_PRINT (yyss, yyssp);
6882 /*-------------------------------------------------------------.
6883 | yyerrlab1 -- common code for both syntax error and YYERROR. |
6884 `-------------------------------------------------------------*/
6886 yyerrstatus = 3; /* Each real token shifted decrements this. */
6890 yyn = yypact[yystate];
6891 if (yyn != YYPACT_NINF)
6894 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
6902 /* Pop the current state because it cannot handle the error token. */
6906 yyerror_range[0] = *yylsp;
6907 yydestruct ("Error: popping",
6908 yystos[yystate], yyvsp, yylsp);
6911 YY_STACK_PRINT (yyss, yyssp);
6916 yyerror_range[1] = yylloc;
6917 /* Using YYLLOC is tempting, but would change the location of
6918 the lookahead. YYLOC is available though. */
6919 YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2);
6922 /* Shift the error token. */
6923 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
6929 /*-------------------------------------.
6930 | yyacceptlab -- YYACCEPT comes here. |
6931 `-------------------------------------*/
6936 /*-----------------------------------.
6937 | yyabortlab -- YYABORT comes here. |
6938 `-----------------------------------*/
6943 #if !defined(yyoverflow) || YYERROR_VERBOSE
6944 /*-------------------------------------------------.
6945 | yyexhaustedlab -- memory exhaustion comes here. |
6946 `-------------------------------------------------*/
6948 yyerror (YY_("memory exhausted"));
6954 if (yychar != YYEMPTY)
6955 yydestruct ("Cleanup: discarding lookahead",
6956 yytoken, &yylval, &yylloc);
6957 /* Do not reclaim the symbols of the rule which action triggered
6958 this YYABORT or YYACCEPT. */
6960 YY_STACK_PRINT (yyss, yyssp);
6961 while (yyssp != yyss)
6963 yydestruct ("Cleanup: popping",
6964 yystos[*yyssp], yyvsp, yylsp);
6969 YYSTACK_FREE (yyss);
6972 if (yymsg != yymsgbuf)
6973 YYSTACK_FREE (yymsg);
6975 /* Make sure YYID is used. */
6976 return YYID (yyresult);
6981 /* Line 1684 of yacc.c */
6982 #line 1253 "expression.y"