1 /* Code generated from Bison source file: type.y */
2 /* A Bison parser, made by GNU Bison 2.4.2. */
4 /* Skeleton implementation for Bison's Yacc-like parsers in C
6 Copyright (C) 1984, 1989-1990, 2000-2006, 2009-2010 Free Software
9 This program is free software: you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation, either version 3 of the License, or
12 (at your option) any later version.
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
19 You should have received a copy of the GNU General Public License
20 along with this program. If not, see <http://www.gnu.org/licenses/>. */
22 /* As a special exception, you may create a larger work that contains
23 part or all of the Bison parser skeleton and distribute that work
24 under terms of your choice, so long as that work isn't itself a
25 parser generator using the skeleton or a modified version thereof
26 as a parser skeleton. Alternatively, if you modify or redistribute
27 the parser skeleton itself, you may (at your option) remove this
28 special exception, which will cause the skeleton and the resulting
29 Bison output files to be licensed under the GNU General Public
30 License without this special exception.
32 This special exception was added by the Free Software Foundation in
33 version 2.2 of Bison. */
35 /* C LALR(1) parser skeleton written by Richard Stallman, by
36 simplifying the original so-called "semantic" parser. */
38 /* All symbols defined below should begin with yy or YY, to avoid
39 infringing on user name space. This should be done even for local
40 variables, as they might otherwise be expanded by user macros.
41 There are some unavoidable exceptions within include files to
42 define necessary library symbols; they are noted "INFRINGES ON
43 USER NAME SPACE" below. */
45 /* Identify Bison output. */
49 #define YYBISON_VERSION "2.4.2"
52 #define YYSKELETON_NAME "yacc.c"
63 /* Using locations. */
64 #define YYLSP_NEEDED 1
68 /* Copy the first part of user declarations. */
70 /* Line 189 of yacc.c */
76 #define YYLTYPE Location
79 #ifndef YYLLOC_DEFAULT
80 # define YYLLOC_DEFAULT(Current, Rhs, N) \
81 (Current).start = (Rhs)[1].start; \
82 (Current).end = (Rhs)[N].end;
89 #define yyparse type_yyparse
90 #define yylval type_yylval
91 #define yychar type_yychar
92 #define yydebug type_yydebug
93 #define yynerrs type_yynerrs
94 #define yylloc type_yylloc
96 extern bool parseTypeError;
98 extern File fileInput;
108 /* Line 189 of yacc.c */
111 /* Enabling traces. */
116 /* Enabling verbose error messages. */
117 #ifdef YYERROR_VERBOSE
118 # undef YYERROR_VERBOSE
119 # define YYERROR_VERBOSE 1
121 # define YYERROR_VERBOSE 0
124 /* Enabling the token table. */
125 #ifndef YYTOKEN_TABLE
126 # define YYTOKEN_TABLE 0
133 /* Put the tokens into the symbol table, so that GDB and other debuggers
138 STRING_LITERAL = 260,
225 CLASS_DESIGNER = 347,
226 CLASS_NO_EXPANSION = 348,
229 CLASS_DEFAULT_PROPERTY = 351,
230 PROPERTY_CATEGORY = 352,
232 CLASS_PROPERTY = 354,
250 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
251 typedef union YYSTYPE
254 /* Line 214 of yacc.c */
258 SpecifierType specifierType;
263 Enumerator enumerator;
264 Declarator declarator;
266 Initializer initializer;
267 InitDeclarator initDeclarator;
269 Declaration declaration;
271 FunctionDefinition function;
278 Instantiation instance;
279 MembersInit membersInit;
280 MemberInit memberInit;
281 ClassFunction classFunction;
282 ClassDefinition _class;
287 TemplateParameter templateParameter;
288 TemplateArgument templateArgument;
289 TemplateDatatype templateDatatype;
293 /* Line 214 of yacc.c */
296 # define YYSTYPE_IS_TRIVIAL 1
297 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
298 # define YYSTYPE_IS_DECLARED 1
301 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
302 typedef struct YYLTYPE
309 # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
310 # define YYLTYPE_IS_DECLARED 1
311 # define YYLTYPE_IS_TRIVIAL 1
315 /* Copy the second part of user declarations. */
318 /* Line 264 of yacc.c */
326 typedef YYTYPE_UINT8 yytype_uint8;
328 typedef unsigned char yytype_uint8;
332 typedef YYTYPE_INT8 yytype_int8;
333 #elif (defined __STDC__ || defined __C99__FUNC__ \
334 || defined __cplusplus || defined _MSC_VER)
335 typedef signed char yytype_int8;
337 typedef short int yytype_int8;
341 typedef YYTYPE_UINT16 yytype_uint16;
343 typedef unsigned short int yytype_uint16;
347 typedef YYTYPE_INT16 yytype_int16;
349 typedef short int yytype_int16;
353 # ifdef __SIZE_TYPE__
354 # define YYSIZE_T __SIZE_TYPE__
355 # elif defined size_t
356 # define YYSIZE_T size_t
357 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
358 || defined __cplusplus || defined _MSC_VER)
359 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
360 # define YYSIZE_T size_t
362 # define YYSIZE_T unsigned int
366 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
369 # if defined YYENABLE_NLS && YYENABLE_NLS
371 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
372 # define YY_(msgid) dgettext ("bison-runtime", msgid)
376 # define YY_(msgid) msgid
380 /* Suppress unused-variable warnings by "using" E. */
381 #if ! defined lint || defined __GNUC__
382 # define YYUSE(e) ((void) (e))
384 # define YYUSE(e) /* empty */
387 /* Identity function, used to suppress warnings about constant conditions. */
391 #if (defined __STDC__ || defined __C99__FUNC__ \
392 || defined __cplusplus || defined _MSC_VER)
405 #if ! defined yyoverflow || YYERROR_VERBOSE
407 /* The parser invokes alloca or malloc; define the necessary symbols. */
409 # ifdef YYSTACK_USE_ALLOCA
410 # if YYSTACK_USE_ALLOCA
412 # define YYSTACK_ALLOC __builtin_alloca
413 # elif defined __BUILTIN_VA_ARG_INCR
414 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
416 # define YYSTACK_ALLOC __alloca
417 # elif defined _MSC_VER
418 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
419 # define alloca _alloca
421 # define YYSTACK_ALLOC alloca
422 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
423 || defined __cplusplus || defined _MSC_VER)
424 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
433 # ifdef YYSTACK_ALLOC
434 /* Pacify GCC's `empty if-body' warning. */
435 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
436 # ifndef YYSTACK_ALLOC_MAXIMUM
437 /* The OS might guarantee only one guard page at the bottom of the stack,
438 and a page size can be as small as 4096 bytes. So we cannot safely
439 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
440 to allow for a few compiler-allocated temporary stack slots. */
441 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
444 # define YYSTACK_ALLOC YYMALLOC
445 # define YYSTACK_FREE YYFREE
446 # ifndef YYSTACK_ALLOC_MAXIMUM
447 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
449 # if (defined __cplusplus && ! defined _STDLIB_H \
450 && ! ((defined YYMALLOC || defined malloc) \
451 && (defined YYFREE || defined free)))
452 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
458 # define YYMALLOC malloc
459 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
460 || defined __cplusplus || defined _MSC_VER)
461 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
466 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
467 || defined __cplusplus || defined _MSC_VER)
468 void free (void *); /* INFRINGES ON USER NAME SPACE */
472 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
475 #if (! defined yyoverflow \
476 && (! defined __cplusplus \
477 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
478 && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
480 /* A type that is properly aligned for any stack member. */
483 yytype_int16 yyss_alloc;
488 /* The size of the maximum gap between one aligned stack and the next. */
489 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
491 /* The size of an array large to enough to hold all stacks, each with
493 # define YYSTACK_BYTES(N) \
494 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
495 + 2 * YYSTACK_GAP_MAXIMUM)
497 /* Copy COUNT objects from FROM to TO. The source and destination do
500 # if defined __GNUC__ && 1 < __GNUC__
501 # define YYCOPY(To, From, Count) \
502 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
504 # define YYCOPY(To, From, Count) \
508 for (yyi = 0; yyi < (Count); yyi++) \
509 (To)[yyi] = (From)[yyi]; \
515 /* Relocate STACK from its old location to the new one. The
516 local variables YYSIZE and YYSTACKSIZE give the old and new number of
517 elements in the stack, and YYPTR gives the new location of the
518 stack. Advance YYPTR to a properly aligned location for the next
520 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
523 YYSIZE_T yynewbytes; \
524 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
525 Stack = &yyptr->Stack_alloc; \
526 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
527 yyptr += yynewbytes / sizeof (*yyptr); \
533 /* YYFINAL -- State number of the termination state. */
535 /* YYLAST -- Last index in YYTABLE. */
538 /* YYNTOKENS -- Number of terminals. */
539 #define YYNTOKENS 137
540 /* YYNNTS -- Number of nonterminals. */
542 /* YYNRULES -- Number of rules. */
544 /* YYNRULES -- Number of states. */
545 #define YYNSTATES 872
547 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
549 #define YYMAXUTOK 366
551 #define YYTRANSLATE(YYX) \
552 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
554 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
555 static const yytype_uint8 yytranslate[] =
557 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
558 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
559 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
560 2, 2, 2, 126, 2, 2, 118, 128, 123, 2,
561 115, 116, 112, 124, 122, 125, 119, 127, 2, 2,
562 2, 2, 2, 2, 2, 2, 2, 2, 132, 134,
563 113, 133, 114, 131, 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, 120, 2, 121, 129, 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, 135, 130, 136, 117, 2, 2, 2,
570 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
571 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
572 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
573 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
574 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
575 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
576 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
577 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
578 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
579 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
580 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
581 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
582 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
583 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
584 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
585 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
586 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
587 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
588 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
589 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
590 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
591 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
592 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
593 105, 106, 107, 108, 109, 110, 111
597 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
599 static const yytype_uint16 yyprhs[] =
601 0, 0, 3, 6, 9, 12, 14, 17, 19, 21,
602 26, 31, 34, 36, 40, 45, 49, 52, 54, 56,
603 60, 62, 64, 66, 68, 71, 76, 79, 86, 92,
604 99, 105, 113, 120, 128, 135, 137, 139, 144, 148,
605 153, 157, 161, 164, 167, 169, 171, 176, 180, 185,
606 189, 193, 196, 199, 201, 203, 207, 211, 214, 217,
607 220, 225, 228, 233, 238, 241, 246, 248, 250, 252,
608 254, 256, 258, 260, 262, 264, 266, 268, 270, 275,
609 277, 281, 285, 289, 291, 295, 299, 301, 305, 309,
610 312, 314, 317, 321, 325, 329, 331, 335, 339, 341,
611 345, 347, 351, 353, 357, 359, 363, 365, 369, 371,
612 377, 379, 383, 387, 389, 391, 393, 395, 397, 399,
613 401, 403, 405, 407, 409, 411, 415, 417, 420, 424,
614 427, 433, 435, 438, 440, 443, 445, 448, 450, 453,
615 455, 458, 460, 463, 465, 468, 470, 473, 475, 478,
616 480, 483, 485, 488, 490, 493, 495, 498, 500, 503,
617 505, 508, 510, 513, 515, 518, 520, 523, 525, 528,
618 530, 533, 535, 537, 539, 542, 544, 547, 549, 552,
619 554, 557, 562, 568, 570, 573, 575, 578, 580, 583,
620 585, 588, 590, 593, 595, 598, 603, 609, 611, 615,
621 617, 621, 623, 625, 627, 629, 631, 633, 635, 637,
622 639, 641, 643, 645, 647, 649, 651, 653, 655, 660,
623 662, 665, 669, 676, 682, 684, 686, 688, 690, 692,
624 694, 696, 698, 700, 702, 704, 706, 708, 710, 712,
625 714, 716, 718, 720, 722, 727, 732, 737, 739, 741,
626 743, 745, 747, 749, 751, 753, 755, 757, 759, 761,
627 763, 765, 767, 769, 771, 773, 775, 780, 785, 790,
628 792, 798, 803, 808, 812, 818, 825, 831, 837, 842,
629 849, 852, 855, 859, 863, 865, 868, 870, 873, 875,
630 877, 879, 883, 887, 891, 895, 897, 901, 903, 905,
631 907, 910, 914, 916, 920, 930, 940, 948, 956, 962,
632 973, 984, 993, 1002, 1009, 1018, 1027, 1034, 1041, 1046,
633 1056, 1066, 1074, 1082, 1088, 1092, 1095, 1098, 1101, 1103,
634 1106, 1108, 1110, 1112, 1116, 1118, 1121, 1124, 1128, 1134,
635 1137, 1140, 1145, 1151, 1159, 1167, 1173, 1175, 1179, 1181,
636 1185, 1189, 1192, 1196, 1200, 1204, 1209, 1214, 1217, 1221,
637 1225, 1230, 1234, 1237, 1241, 1245, 1250, 1252, 1254, 1257,
638 1260, 1263, 1267, 1269, 1271, 1274, 1277, 1280, 1284, 1286,
639 1289, 1293, 1296, 1298, 1302, 1307, 1311, 1316, 1318, 1321,
640 1324, 1328, 1332, 1335, 1339, 1343, 1346, 1348, 1350, 1353,
641 1356, 1358, 1361, 1364, 1368, 1372, 1374, 1377, 1379, 1382,
642 1385, 1389, 1391, 1395, 1397, 1401, 1404, 1407, 1410, 1414,
643 1416, 1418, 1420, 1424, 1426, 1429, 1431, 1434, 1436, 1440,
644 1445, 1447, 1449, 1451, 1455, 1457, 1459, 1461, 1463, 1465,
645 1467, 1471, 1476, 1480, 1482, 1485, 1487, 1490, 1493, 1495,
646 1497, 1500, 1502, 1505, 1509, 1511, 1514, 1520, 1528, 1534,
647 1540, 1548, 1555, 1563, 1568, 1574, 1579, 1583, 1586, 1589,
648 1592, 1596, 1598, 1604, 1609, 1615, 1620, 1625, 1629, 1634,
649 1638, 1642, 1645, 1648, 1651, 1654, 1657, 1660, 1663, 1666,
650 1669, 1673, 1675, 1677, 1681, 1684, 1686, 1688, 1691, 1694,
651 1696, 1699, 1701, 1703, 1706, 1708
654 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
655 static const yytype_int16 yyrhs[] =
657 261, 0, -1, 147, 112, -1, 147, 113, -1, 147,
658 1, -1, 142, -1, 147, 147, -1, 28, -1, 141,
659 -1, 141, 113, 202, 114, -1, 141, 113, 202, 11,
660 -1, 179, 221, -1, 221, -1, 179, 115, 116, -1,
661 117, 179, 115, 116, -1, 78, 179, 221, -1, 78,
662 221, -1, 3, -1, 149, -1, 115, 173, 116, -1,
663 147, -1, 251, -1, 4, -1, 248, -1, 118, 248,
664 -1, 118, 248, 119, 248, -1, 115, 116, -1, 71,
665 179, 218, 120, 174, 121, -1, 71, 179, 120, 174,
666 121, -1, 102, 179, 218, 120, 174, 121, -1, 102,
667 179, 120, 174, 121, -1, 72, 174, 182, 218, 120,
668 174, 121, -1, 72, 174, 182, 120, 174, 121, -1,
669 103, 174, 182, 218, 120, 174, 121, -1, 103, 174,
670 182, 120, 174, 121, -1, 1, -1, 148, -1, 150,
671 120, 173, 121, -1, 150, 115, 116, -1, 150, 115,
672 153, 116, -1, 150, 119, 147, -1, 150, 7, 147,
673 -1, 150, 8, -1, 150, 9, -1, 252, -1, 149,
674 -1, 152, 120, 173, 121, -1, 152, 115, 116, -1,
675 152, 115, 153, 116, -1, 152, 119, 147, -1, 152,
676 7, 147, -1, 152, 8, -1, 152, 9, -1, 171,
677 -1, 151, -1, 153, 122, 171, -1, 153, 122, 151,
678 -1, 8, 155, -1, 9, 155, -1, 157, 158, -1,
679 6, 115, 155, 116, -1, 6, 156, -1, 6, 115,
680 233, 116, -1, 109, 115, 155, 116, -1, 109, 156,
681 -1, 109, 115, 233, 116, -1, 154, -1, 150, -1,
682 154, -1, 152, -1, 123, -1, 112, -1, 124, -1,
683 125, -1, 117, -1, 126, -1, 73, -1, 155, -1,
684 115, 232, 116, 158, -1, 158, -1, 159, 112, 158,
685 -1, 159, 127, 158, -1, 159, 128, 158, -1, 159,
686 -1, 160, 124, 159, -1, 160, 125, 159, -1, 160,
687 -1, 161, 10, 160, -1, 161, 11, 160, -1, 163,
688 113, -1, 161, -1, 162, 161, -1, 163, 114, 161,
689 -1, 163, 12, 161, -1, 163, 13, 161, -1, 163,
690 -1, 164, 14, 163, -1, 164, 15, 163, -1, 164,
691 -1, 165, 123, 164, -1, 165, -1, 166, 129, 165,
692 -1, 166, -1, 167, 130, 166, -1, 167, -1, 168,
693 16, 167, -1, 168, -1, 169, 17, 168, -1, 169,
694 -1, 169, 131, 173, 132, 170, -1, 170, -1, 155,
695 172, 171, -1, 155, 172, 151, -1, 133, -1, 18,
696 -1, 19, -1, 20, -1, 21, -1, 22, -1, 23,
697 -1, 24, -1, 25, -1, 26, -1, 27, -1, 171,
698 -1, 173, 122, 171, -1, 170, -1, 178, 134, -1,
699 178, 183, 134, -1, 249, 134, -1, 77, 147, 133,
700 174, 134, -1, 193, -1, 176, 193, -1, 194, -1,
701 176, 194, -1, 212, -1, 176, 212, -1, 196, -1,
702 176, 196, -1, 193, -1, 177, 193, -1, 194, -1,
703 177, 194, -1, 138, -1, 177, 138, -1, 212, -1,
704 177, 212, -1, 196, -1, 177, 196, -1, 185, -1,
705 178, 185, -1, 193, -1, 178, 193, -1, 194, -1,
706 178, 194, -1, 212, -1, 178, 212, -1, 196, -1,
707 178, 196, -1, 185, -1, 179, 185, -1, 193, -1,
708 179, 193, -1, 194, -1, 179, 194, -1, 138, -1,
709 179, 138, -1, 196, -1, 179, 196, -1, 212, -1,
710 179, 212, -1, 179, -1, 139, -1, 185, -1, 181,
711 185, -1, 193, -1, 181, 193, -1, 195, -1, 181,
712 195, -1, 147, -1, 181, 147, -1, 147, 113, 202,
713 114, -1, 181, 147, 113, 202, 114, -1, 185, -1,
714 182, 185, -1, 193, -1, 182, 193, -1, 195, -1,
715 182, 195, -1, 196, -1, 182, 196, -1, 212, -1,
716 182, 212, -1, 147, -1, 182, 147, -1, 147, 113,
717 202, 114, -1, 182, 147, 113, 202, 114, -1, 184,
718 -1, 183, 122, 184, -1, 219, -1, 219, 133, 234,
719 -1, 29, -1, 30, -1, 31, -1, 32, -1, 33,
720 -1, 74, -1, 75, -1, 191, -1, 79, -1, 110,
721 -1, 111, -1, 3, -1, 28, -1, 75, -1, 74,
722 -1, 44, -1, 188, -1, 188, 115, 173, 116, -1,
723 189, -1, 190, 189, -1, 190, 122, 189, -1, 187,
724 115, 115, 190, 116, 116, -1, 187, 115, 115, 116,
725 116, -1, 186, -1, 44, -1, 45, -1, 192, -1,
726 46, -1, 34, -1, 35, -1, 36, -1, 37, -1,
727 38, -1, 47, -1, 39, -1, 42, -1, 43, -1,
728 40, -1, 41, -1, 85, -1, 197, -1, 211, -1,
729 140, -1, 87, 115, 171, 116, -1, 100, 115, 140,
730 116, -1, 100, 115, 147, 116, -1, 66, -1, 82,
731 -1, 83, -1, 46, -1, 34, -1, 35, -1, 36,
732 -1, 37, -1, 38, -1, 47, -1, 39, -1, 42,
733 -1, 43, -1, 40, -1, 41, -1, 85, -1, 197,
734 -1, 211, -1, 142, -1, 87, 115, 171, 116, -1,
735 100, 115, 140, 116, -1, 100, 115, 147, 116, -1,
736 66, -1, 203, 147, 135, 204, 136, -1, 203, 135,
737 204, 136, -1, 203, 147, 135, 136, -1, 203, 135,
738 136, -1, 203, 141, 135, 204, 136, -1, 203, 186,
739 147, 135, 204, 136, -1, 203, 186, 135, 204, 136,
740 -1, 203, 186, 147, 135, 136, -1, 203, 186, 135,
741 136, -1, 203, 186, 142, 135, 204, 136, -1, 203,
742 147, -1, 203, 142, -1, 203, 186, 147, -1, 203,
743 186, 142, -1, 179, -1, 179, 217, -1, 179, -1,
744 179, 217, -1, 161, -1, 200, -1, 199, -1, 147,
745 133, 200, -1, 147, 133, 199, -1, 198, 133, 200,
746 -1, 198, 133, 199, -1, 201, -1, 202, 122, 201,
747 -1, 48, -1, 49, -1, 208, -1, 204, 208, -1,
748 150, 133, 235, -1, 205, -1, 206, 122, 205, -1,
749 68, 181, 147, 135, 69, 243, 70, 243, 136, -1,
750 68, 181, 147, 135, 70, 243, 69, 243, 136, -1,
751 68, 181, 147, 135, 69, 243, 136, -1, 68, 181,
752 147, 135, 70, 243, 136, -1, 68, 181, 147, 135,
753 136, -1, 68, 181, 217, 147, 135, 69, 243, 70,
754 243, 136, -1, 68, 181, 217, 147, 135, 70, 243,
755 69, 243, 136, -1, 68, 181, 217, 147, 135, 69,
756 243, 136, -1, 68, 181, 217, 147, 135, 70, 243,
757 136, -1, 68, 181, 217, 147, 135, 136, -1, 68,
758 181, 135, 69, 243, 70, 243, 136, -1, 68, 181,
759 135, 70, 243, 69, 243, 136, -1, 68, 181, 135,
760 69, 243, 136, -1, 68, 181, 135, 70, 243, 136,
761 -1, 68, 181, 135, 136, -1, 68, 181, 217, 135,
762 69, 243, 70, 243, 136, -1, 68, 181, 217, 135,
763 70, 243, 69, 243, 136, -1, 68, 181, 217, 135,
764 69, 243, 136, -1, 68, 181, 217, 135, 70, 243,
765 136, -1, 68, 181, 217, 135, 136, -1, 179, 209,
766 134, -1, 179, 134, -1, 251, 134, -1, 250, 134,
767 -1, 253, -1, 206, 134, -1, 207, -1, 134, -1,
768 210, -1, 209, 122, 210, -1, 225, -1, 225, 191,
769 -1, 132, 174, -1, 225, 132, 174, -1, 225, 132,
770 174, 132, 174, -1, 50, 147, -1, 50, 142, -1,
771 50, 135, 213, 136, -1, 50, 147, 135, 213, 136,
772 -1, 50, 147, 135, 213, 134, 204, 136, -1, 50,
773 142, 135, 213, 134, 204, 136, -1, 50, 142, 135,
774 213, 136, -1, 214, -1, 213, 122, 214, -1, 147,
775 -1, 147, 133, 174, -1, 115, 217, 116, -1, 120,
776 121, -1, 120, 174, 121, -1, 120, 140, 121, -1,
777 215, 120, 121, -1, 215, 120, 174, 121, -1, 215,
778 120, 140, 121, -1, 115, 116, -1, 115, 228, 116,
779 -1, 215, 115, 116, -1, 215, 115, 228, 116, -1,
780 115, 218, 116, -1, 115, 116, -1, 115, 228, 116,
781 -1, 216, 115, 116, -1, 216, 115, 228, 116, -1,
782 227, -1, 215, -1, 227, 215, -1, 186, 227, -1,
783 186, 215, -1, 186, 227, 215, -1, 227, -1, 216,
784 -1, 227, 216, -1, 186, 227, -1, 186, 216, -1,
785 186, 227, 216, -1, 224, -1, 227, 224, -1, 186,
786 227, 224, -1, 219, 186, -1, 147, -1, 115, 219,
787 116, -1, 220, 120, 174, 121, -1, 220, 120, 121,
788 -1, 220, 120, 140, 121, -1, 223, -1, 227, 223,
789 -1, 186, 223, -1, 186, 227, 223, -1, 227, 186,
790 223, -1, 220, 115, -1, 222, 228, 116, -1, 222,
791 231, 116, -1, 222, 116, -1, 223, -1, 220, -1,
792 186, 223, -1, 186, 220, -1, 220, -1, 227, 220,
793 -1, 186, 220, -1, 186, 227, 220, -1, 227, 186,
794 220, -1, 193, -1, 226, 193, -1, 112, -1, 112,
795 226, -1, 112, 227, -1, 112, 226, 227, -1, 229,
796 -1, 229, 122, 51, -1, 230, -1, 229, 122, 230,
797 -1, 179, 219, -1, 179, 217, -1, 179, 123, -1,
798 179, 123, 219, -1, 180, -1, 65, -1, 147, -1,
799 231, 122, 147, -1, 176, -1, 176, 217, -1, 177,
800 -1, 177, 217, -1, 171, -1, 135, 236, 136, -1,
801 135, 236, 122, 136, -1, 170, -1, 151, -1, 234,
802 -1, 236, 122, 234, -1, 238, -1, 243, -1, 244,
803 -1, 245, -1, 246, -1, 247, -1, 147, 132, 237,
804 -1, 52, 174, 132, 237, -1, 53, 132, 237, -1,
805 175, -1, 239, 175, -1, 237, -1, 240, 237, -1,
806 240, 175, -1, 240, -1, 239, -1, 239, 240, -1,
807 135, -1, 135, 136, -1, 242, 241, 136, -1, 134,
808 -1, 173, 134, -1, 54, 115, 173, 116, 237, -1,
809 54, 115, 173, 116, 237, 64, 237, -1, 55, 115,
810 173, 116, 237, -1, 56, 115, 173, 116, 237, -1,
811 57, 237, 56, 115, 173, 116, 134, -1, 58, 115,
812 244, 244, 116, 237, -1, 58, 115, 244, 244, 173,
813 116, 237, -1, 56, 115, 116, 237, -1, 58, 115,
814 244, 116, 237, -1, 58, 115, 116, 237, -1, 59,
815 147, 134, -1, 60, 134, -1, 61, 134, -1, 62,
816 134, -1, 62, 173, 134, -1, 5, -1, 178, 147,
817 135, 260, 136, -1, 178, 147, 135, 136, -1, 179,
818 147, 135, 260, 136, -1, 179, 147, 135, 136, -1,
819 140, 135, 260, 136, -1, 140, 135, 136, -1, 147,
820 135, 260, 136, -1, 147, 135, 136, -1, 135, 260,
821 136, -1, 135, 136, -1, 143, 243, -1, 146, 243,
822 -1, 146, 134, -1, 144, 243, -1, 145, 243, -1,
823 178, 221, -1, 178, 225, -1, 254, 243, -1, 150,
824 133, 235, -1, 235, -1, 256, -1, 257, 122, 256,
825 -1, 257, 134, -1, 258, -1, 255, -1, 259, 258,
826 -1, 259, 255, -1, 134, -1, 259, 134, -1, 259,
827 -1, 257, -1, 259, 257, -1, 230, -1, 230, 132,
831 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
832 static const yytype_uint16 yyrline[] =
834 0, 225, 225, 243, 277, 327, 328, 355, 359, 360,
835 361, 378, 380, 385, 390, 395, 397, 402, 407, 408,
836 413, 415, 417, 419, 421, 422, 423, 426, 427, 428,
837 429, 430, 431, 432, 433, 434, 438, 439, 440, 441,
838 442, 443, 444, 445, 449, 454, 455, 456, 457, 458,
839 459, 460, 461, 465, 466, 467, 468, 472, 473, 474,
840 475, 476, 477, 478, 479, 480, 484, 485, 489, 490,
841 494, 495, 496, 497, 498, 499, 500, 504, 505, 509,
842 510, 511, 512, 516, 517, 518, 522, 523, 524, 528,
843 536, 537, 538, 539, 540, 544, 545, 546, 550, 551,
844 555, 556, 560, 561, 565, 566, 570, 571, 575, 576,
845 580, 581, 582, 586, 587, 588, 589, 590, 591, 592,
846 593, 594, 595, 596, 600, 601, 605, 609, 610, 611,
847 612, 616, 617, 618, 619, 620, 621, 622, 623, 627,
848 628, 629, 630, 631, 632, 633, 634, 635, 636, 640,
849 641, 642, 643, 644, 645, 646, 647, 648, 649, 653,
850 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
851 664, 668, 669, 673, 674, 675, 676, 677, 678, 679,
852 680, 681, 699, 716, 717, 718, 719, 720, 721, 722,
853 723, 724, 725, 726, 727, 728, 746, 763, 764, 768,
854 769, 773, 774, 775, 776, 777, 781, 782, 783, 787,
855 788, 789, 794, 795, 796, 797, 798, 802, 803, 807,
856 808, 809, 813, 814, 818, 822, 823, 824, 829, 830,
857 831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
858 841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
859 854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
860 864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
861 878, 879, 880, 881, 882, 885, 886, 887, 888, 889,
862 894, 895, 898, 900, 905, 906, 911, 912, 923, 927,
863 929, 930, 932, 933, 957, 972, 973, 977, 978, 982,
864 983, 987, 991, 992, 996, 998, 1000, 1002, 1004, 1007,
865 1009, 1011, 1013, 1015, 1018, 1020, 1022, 1024, 1026, 1029,
866 1031, 1033, 1035, 1037, 1042, 1043, 1044, 1045, 1046, 1047,
867 1048, 1049, 1053, 1055, 1060, 1062, 1064, 1066, 1068, 1073,
868 1074, 1078, 1080, 1081, 1082, 1083, 1087, 1089, 1094, 1096,
869 1102, 1104, 1106, 1108, 1110, 1112, 1114, 1116, 1118, 1120,
870 1122, 1127, 1129, 1131, 1133, 1135, 1140, 1141, 1142, 1143,
871 1144, 1145, 1149, 1150, 1151, 1152, 1153, 1154, 1200, 1201,
872 1203, 1205, 1210, 1212, 1214, 1216, 1218, 1223, 1224, 1227,
873 1229, 1231, 1237, 1241, 1243, 1245, 1250, 1251, 1252, 1254,
874 1259, 1260, 1261, 1262, 1263, 1267, 1268, 1272, 1273, 1274,
875 1275, 1279, 1280, 1284, 1285, 1289, 1290, 1291, 1292, 1293,
876 1304, 1329, 1330, 1334, 1335, 1339, 1340, 1344, 1346, 1348,
877 1364, 1366, 1388, 1390, 1395, 1396, 1397, 1398, 1399, 1400,
878 1404, 1406, 1408, 1413, 1414, 1418, 1419, 1422, 1426, 1427,
879 1428, 1432, 1436, 1444, 1449, 1450, 1454, 1455, 1456, 1460,
880 1461, 1462, 1463, 1465, 1466, 1467, 1471, 1472, 1473, 1474,
881 1475, 1479, 1483, 1485, 1490, 1492, 1517, 1519, 1521, 1523,
882 1528, 1530, 1534, 1536, 1538, 1540, 1542, 1548, 1550, 1555,
883 1560, 1561, 1565, 1567, 1572, 1577, 1578, 1579, 1580, 1581,
884 1582, 1586, 1587, 1588, 1592, 1593
888 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
889 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
890 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
891 static const char *const yytname[] =
893 "$end", "error", "$undefined", "IDENTIFIER", "CONSTANT",
894 "STRING_LITERAL", "SIZEOF", "PTR_OP", "INC_OP", "DEC_OP", "LEFT_OP",
895 "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP",
896 "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "ADD_ASSIGN", "SUB_ASSIGN",
897 "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN",
898 "TYPE_NAME", "TYPEDEF", "EXTERN", "STATIC", "AUTO", "REGISTER", "CHAR",
899 "SHORT", "INT", "UINT", "INT64", "LONG", "SIGNED", "UNSIGNED", "FLOAT",
900 "DOUBLE", "CONST", "VOLATILE", "VOID", "VALIST", "STRUCT", "UNION",
901 "ENUM", "ELLIPSIS", "CASE", "DEFAULT", "IF", "SWITCH", "WHILE", "DO",
902 "FOR", "GOTO", "CONTINUE", "BREAK", "RETURN", "IFX", "ELSE", "CLASS",
903 "THISCLASS", "CLASS_NAME", "PROPERTY", "SETPROP", "GETPROP", "NEWOP",
904 "RENEW", "DELETE", "EXT_DECL", "EXT_STORAGE", "IMPORT", "DEFINE",
905 "VIRTUAL", "ATTRIB", "PUBLIC", "PRIVATE", "TYPED_OBJECT", "ANY_OBJECT",
906 "_INCREF", "EXTENSION", "ASM", "TYPEOF", "WATCH", "STOPWATCHING",
907 "FIREWATCHERS", "WATCHABLE", "CLASS_DESIGNER", "CLASS_NO_EXPANSION",
908 "CLASS_FIXED", "ISPROPSET", "CLASS_DEFAULT_PROPERTY",
909 "PROPERTY_CATEGORY", "CLASS_DATA", "CLASS_PROPERTY", "SUBCLASS",
910 "NAMESPACE", "NEW0OP", "RENEW0", "VAARG", "DBTABLE", "DBFIELD",
911 "DBINDEX", "DATABASE_OPEN", "ALIGNOF", "ATTRIB_DEP", "__ATTRIB", "'*'",
912 "'<'", "'>'", "'('", "')'", "'~'", "'$'", "'.'", "'['", "']'", "','",
913 "'&'", "'+'", "'-'", "'!'", "'/'", "'%'", "'^'", "'|'", "'?'", "':'",
914 "'='", "';'", "'{'", "'}'", "$accept", "guess_type", "real_guess_type",
915 "type", "base_strict_type", "strict_type",
916 "class_function_definition_start",
917 "constructor_function_definition_start",
918 "destructor_function_definition_start",
919 "virtual_class_function_definition_start", "identifier",
920 "primary_expression", "simple_primary_expression", "postfix_expression",
921 "anon_instantiation_expression", "simple_postfix_expression",
922 "argument_expression_list", "common_unary_expression",
923 "unary_expression", "simple_unary_expression", "unary_operator",
924 "cast_expression", "multiplicative_expression", "additive_expression",
925 "shift_expression", "relational_expression_smaller_than",
926 "relational_expression", "equality_expression", "and_expression",
927 "exclusive_or_expression", "inclusive_or_expression",
928 "logical_and_expression", "logical_or_expression",
929 "conditional_expression", "assignment_expression", "assignment_operator",
930 "expression", "constant_expression", "declaration",
931 "specifier_qualifier_list", "guess_specifier_qualifier_list",
932 "declaration_specifiers", "guess_declaration_specifiers",
933 "real_guess_declaration_specifiers", "property_specifiers",
934 "renew_specifiers", "init_declarator_list", "init_declarator",
935 "storage_class_specifier", "ext_decl", "_attrib", "attribute_word",
936 "attribute", "attribs_list", "attrib", "ext_storage", "type_qualifier",
937 "type_specifier", "strict_type_specifier",
938 "struct_or_union_specifier_compound",
939 "struct_or_union_specifier_nocompound", "template_datatype",
940 "template_type_argument", "template_expression_argument",
941 "template_argument", "template_arguments_list", "struct_or_union",
942 "struct_declaration_list", "default_property", "default_property_list",
943 "property", "struct_declaration", "struct_declarator_list",
944 "struct_declarator", "enum_specifier_nocompound",
945 "enum_specifier_compound", "enumerator_list", "enumerator",
946 "direct_abstract_declarator", "direct_abstract_declarator_noarray",
947 "abstract_declarator", "abstract_declarator_noarray", "declarator",
948 "direct_declarator_nofunction", "declarator_function",
949 "direct_declarator_function_start", "direct_declarator_function",
950 "direct_declarator", "declarator_nofunction", "type_qualifier_list",
951 "pointer", "parameter_type_list", "parameter_list",
952 "parameter_declaration", "identifier_list", "type_name",
953 "guess_type_name", "initializer", "initializer_condition",
954 "initializer_list", "statement", "labeled_statement", "declaration_list",
955 "statement_list", "compound_inside", "compound_start",
956 "compound_statement", "expression_statement", "selection_statement",
957 "iteration_statement", "jump_statement", "string_literal",
958 "instantiation_named", "guess_instantiation_named",
959 "instantiation_unnamed", "instantiation_anon",
960 "class_function_definition", "instance_class_function_definition_start",
961 "instance_class_function_definition", "data_member_initialization",
962 "data_member_initialization_list",
963 "data_member_initialization_list_coloned",
964 "members_initialization_list_coloned", "members_initialization_list",
970 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
972 static const yytype_uint16 yytoknum[] =
974 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
975 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
976 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
977 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
978 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
979 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
980 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
981 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
982 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
983 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
984 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
985 365, 366, 42, 60, 62, 40, 41, 126, 36, 46,
986 91, 93, 44, 38, 43, 45, 33, 47, 37, 94,
987 124, 63, 58, 61, 59, 123, 125
991 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
992 static const yytype_uint16 yyr1[] =
994 0, 137, 138, 138, 139, 140, 140, 141, 142, 142,
995 142, 143, 143, 144, 145, 146, 146, 147, 148, 148,
996 149, 149, 149, 149, 149, 149, 149, 149, 149, 149,
997 149, 149, 149, 149, 149, 149, 150, 150, 150, 150,
998 150, 150, 150, 150, 151, 152, 152, 152, 152, 152,
999 152, 152, 152, 153, 153, 153, 153, 154, 154, 154,
1000 154, 154, 154, 154, 154, 154, 155, 155, 156, 156,
1001 157, 157, 157, 157, 157, 157, 157, 158, 158, 159,
1002 159, 159, 159, 160, 160, 160, 161, 161, 161, 162,
1003 163, 163, 163, 163, 163, 164, 164, 164, 165, 165,
1004 166, 166, 167, 167, 168, 168, 169, 169, 170, 170,
1005 171, 171, 171, 172, 172, 172, 172, 172, 172, 172,
1006 172, 172, 172, 172, 173, 173, 174, 175, 175, 175,
1007 175, 176, 176, 176, 176, 176, 176, 176, 176, 177,
1008 177, 177, 177, 177, 177, 177, 177, 177, 177, 178,
1009 178, 178, 178, 178, 178, 178, 178, 178, 178, 179,
1010 179, 179, 179, 179, 179, 179, 179, 179, 179, 179,
1011 179, 180, 180, 181, 181, 181, 181, 181, 181, 181,
1012 181, 181, 181, 182, 182, 182, 182, 182, 182, 182,
1013 182, 182, 182, 182, 182, 182, 182, 183, 183, 184,
1014 184, 185, 185, 185, 185, 185, 186, 186, 186, 187,
1015 187, 187, 188, 188, 188, 188, 188, 189, 189, 190,
1016 190, 190, 191, 191, 192, 193, 193, 193, 194, 194,
1017 194, 194, 194, 194, 194, 194, 194, 194, 194, 194,
1018 194, 194, 194, 194, 194, 194, 194, 194, 194, 194,
1019 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1020 195, 195, 195, 195, 195, 195, 195, 195, 195, 195,
1021 196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
1022 197, 197, 197, 197, 198, 198, 199, 199, 200, 201,
1023 201, 201, 201, 201, 201, 202, 202, 203, 203, 204,
1024 204, 205, 206, 206, 207, 207, 207, 207, 207, 207,
1025 207, 207, 207, 207, 207, 207, 207, 207, 207, 207,
1026 207, 207, 207, 207, 208, 208, 208, 208, 208, 208,
1027 208, 208, 209, 209, 210, 210, 210, 210, 210, 211,
1028 211, 212, 212, 212, 212, 212, 213, 213, 214, 214,
1029 215, 215, 215, 215, 215, 215, 215, 215, 215, 215,
1030 215, 216, 216, 216, 216, 216, 217, 217, 217, 217,
1031 217, 217, 218, 218, 218, 218, 218, 218, 219, 219,
1032 219, 219, 220, 220, 220, 220, 220, 221, 221, 221,
1033 221, 221, 222, 223, 223, 223, 224, 224, 224, 224,
1034 225, 225, 225, 225, 225, 226, 226, 227, 227, 227,
1035 227, 228, 228, 229, 229, 230, 230, 230, 230, 230,
1036 230, 231, 231, 232, 232, 233, 233, 234, 234, 234,
1037 235, 235, 236, 236, 237, 237, 237, 237, 237, 237,
1038 238, 238, 238, 239, 239, 240, 240, 240, 241, 241,
1039 241, 242, 243, 243, 244, 244, 245, 245, 245, 246,
1040 246, 246, 246, 246, 246, 246, 247, 247, 247, 247,
1041 247, 248, 249, 249, 250, 250, 251, 251, 251, 251,
1042 252, 252, 253, 253, 253, 253, 253, 254, 254, 255,
1043 256, 256, 257, 257, 258, 259, 259, 259, 259, 259,
1044 259, 260, 260, 260, 261, 261
1047 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1048 static const yytype_uint8 yyr2[] =
1050 0, 2, 2, 2, 2, 1, 2, 1, 1, 4,
1051 4, 2, 1, 3, 4, 3, 2, 1, 1, 3,
1052 1, 1, 1, 1, 2, 4, 2, 6, 5, 6,
1053 5, 7, 6, 7, 6, 1, 1, 4, 3, 4,
1054 3, 3, 2, 2, 1, 1, 4, 3, 4, 3,
1055 3, 2, 2, 1, 1, 3, 3, 2, 2, 2,
1056 4, 2, 4, 4, 2, 4, 1, 1, 1, 1,
1057 1, 1, 1, 1, 1, 1, 1, 1, 4, 1,
1058 3, 3, 3, 1, 3, 3, 1, 3, 3, 2,
1059 1, 2, 3, 3, 3, 1, 3, 3, 1, 3,
1060 1, 3, 1, 3, 1, 3, 1, 3, 1, 5,
1061 1, 3, 3, 1, 1, 1, 1, 1, 1, 1,
1062 1, 1, 1, 1, 1, 3, 1, 2, 3, 2,
1063 5, 1, 2, 1, 2, 1, 2, 1, 2, 1,
1064 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
1065 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
1066 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
1067 2, 1, 1, 1, 2, 1, 2, 1, 2, 1,
1068 2, 4, 5, 1, 2, 1, 2, 1, 2, 1,
1069 2, 1, 2, 1, 2, 4, 5, 1, 3, 1,
1070 3, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1071 1, 1, 1, 1, 1, 1, 1, 1, 4, 1,
1072 2, 3, 6, 5, 1, 1, 1, 1, 1, 1,
1073 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1074 1, 1, 1, 1, 4, 4, 4, 1, 1, 1,
1075 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1076 1, 1, 1, 1, 1, 1, 4, 4, 4, 1,
1077 5, 4, 4, 3, 5, 6, 5, 5, 4, 6,
1078 2, 2, 3, 3, 1, 2, 1, 2, 1, 1,
1079 1, 3, 3, 3, 3, 1, 3, 1, 1, 1,
1080 2, 3, 1, 3, 9, 9, 7, 7, 5, 10,
1081 10, 8, 8, 6, 8, 8, 6, 6, 4, 9,
1082 9, 7, 7, 5, 3, 2, 2, 2, 1, 2,
1083 1, 1, 1, 3, 1, 2, 2, 3, 5, 2,
1084 2, 4, 5, 7, 7, 5, 1, 3, 1, 3,
1085 3, 2, 3, 3, 3, 4, 4, 2, 3, 3,
1086 4, 3, 2, 3, 3, 4, 1, 1, 2, 2,
1087 2, 3, 1, 1, 2, 2, 2, 3, 1, 2,
1088 3, 2, 1, 3, 4, 3, 4, 1, 2, 2,
1089 3, 3, 2, 3, 3, 2, 1, 1, 2, 2,
1090 1, 2, 2, 3, 3, 1, 2, 1, 2, 2,
1091 3, 1, 3, 1, 3, 2, 2, 2, 3, 1,
1092 1, 1, 3, 1, 2, 1, 2, 1, 3, 4,
1093 1, 1, 1, 3, 1, 1, 1, 1, 1, 1,
1094 3, 4, 3, 1, 2, 1, 2, 2, 1, 1,
1095 2, 1, 2, 3, 1, 2, 5, 7, 5, 5,
1096 7, 6, 7, 4, 5, 4, 3, 2, 2, 2,
1097 3, 1, 5, 4, 5, 4, 4, 3, 4, 3,
1098 3, 2, 2, 2, 2, 2, 2, 2, 2, 2,
1099 3, 1, 1, 3, 2, 1, 1, 2, 2, 1,
1103 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1104 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1105 means the default is an error. */
1106 static const yytype_uint16 yydefact[] =
1108 0, 17, 7, 201, 202, 203, 204, 205, 229, 230,
1109 231, 232, 233, 235, 238, 239, 236, 237, 225, 226,
1110 228, 234, 297, 298, 0, 420, 247, 206, 207, 209,
1111 248, 249, 240, 0, 0, 210, 211, 165, 172, 243,
1112 8, 5, 0, 171, 419, 159, 224, 0, 208, 227,
1113 161, 163, 167, 241, 0, 242, 169, 504, 0, 0,
1114 340, 339, 0, 0, 0, 4, 2, 3, 6, 407,
1115 0, 0, 417, 166, 382, 160, 224, 162, 164, 168,
1116 170, 367, 416, 415, 397, 0, 396, 378, 366, 0,
1117 0, 8, 281, 280, 0, 0, 1, 348, 0, 346,
1118 0, 0, 35, 22, 471, 0, 0, 0, 0, 0,
1119 76, 0, 0, 0, 71, 0, 74, 0, 70, 72,
1120 73, 75, 0, 20, 36, 18, 67, 66, 77, 0,
1121 79, 83, 86, 90, 0, 95, 98, 100, 102, 104,
1122 106, 108, 110, 0, 23, 21, 0, 0, 243, 20,
1123 77, 288, 286, 0, 290, 289, 295, 0, 405, 408,
1124 409, 357, 0, 0, 0, 0, 411, 413, 351, 0,
1125 126, 0, 0, 382, 0, 418, 0, 370, 399, 398,
1126 369, 0, 0, 381, 392, 0, 395, 0, 0, 0,
1127 0, 368, 379, 0, 0, 0, 0, 0, 331, 273,
1128 0, 0, 0, 0, 20, 0, 0, 224, 0, 302,
1129 0, 330, 299, 0, 12, 387, 0, 0, 21, 328,
1130 0, 0, 0, 283, 282, 505, 0, 0, 341, 0,
1131 0, 0, 45, 69, 68, 61, 0, 57, 58, 0,
1132 0, 0, 0, 0, 0, 64, 26, 124, 0, 423,
1133 131, 133, 137, 135, 0, 24, 0, 0, 0, 42,
1134 43, 0, 0, 0, 114, 115, 116, 117, 118, 119,
1135 120, 121, 122, 123, 113, 0, 59, 0, 0, 0,
1136 0, 0, 0, 0, 91, 0, 0, 89, 0, 0,
1137 0, 0, 0, 0, 0, 0, 0, 244, 245, 246,
1138 0, 0, 224, 287, 366, 0, 10, 9, 0, 406,
1139 410, 350, 383, 358, 0, 353, 352, 0, 371, 380,
1140 359, 0, 354, 0, 0, 385, 0, 0, 393, 394,
1141 0, 212, 213, 216, 215, 214, 0, 217, 219, 0,
1142 251, 252, 253, 254, 255, 257, 260, 261, 258, 259,
1143 250, 256, 0, 269, 262, 0, 0, 265, 179, 0,
1144 173, 175, 177, 263, 0, 264, 0, 16, 71, 0,
1145 20, 0, 451, 0, 482, 485, 486, 484, 483, 0,
1146 0, 0, 325, 382, 224, 0, 332, 400, 11, 334,
1147 0, 389, 0, 271, 300, 0, 329, 0, 388, 327,
1148 326, 0, 272, 0, 278, 0, 0, 0, 349, 347,
1149 0, 345, 0, 342, 143, 20, 0, 425, 139, 141,
1150 147, 145, 0, 0, 51, 52, 0, 0, 0, 0,
1151 0, 224, 373, 0, 372, 193, 0, 183, 185, 187,
1152 189, 191, 0, 0, 0, 0, 0, 19, 0, 0,
1153 132, 134, 138, 136, 424, 0, 0, 499, 0, 477,
1154 67, 431, 430, 0, 149, 151, 153, 157, 155, 491,
1155 44, 0, 496, 492, 502, 495, 0, 0, 479, 0,
1156 41, 38, 54, 0, 53, 40, 0, 112, 111, 80,
1157 81, 82, 84, 85, 87, 88, 93, 94, 92, 96,
1158 97, 99, 101, 103, 105, 107, 0, 286, 292, 291,
1159 369, 294, 293, 296, 412, 414, 360, 356, 355, 386,
1160 384, 422, 223, 0, 0, 0, 220, 340, 339, 0,
1161 0, 0, 0, 180, 174, 176, 178, 0, 280, 0,
1162 15, 224, 0, 452, 0, 0, 0, 0, 0, 0,
1163 0, 0, 0, 0, 0, 0, 454, 20, 0, 443,
1164 0, 445, 434, 0, 0, 0, 435, 436, 437, 438,
1165 439, 0, 301, 13, 336, 0, 402, 0, 0, 324,
1166 0, 335, 0, 401, 390, 303, 391, 274, 270, 276,
1167 0, 277, 0, 0, 0, 60, 144, 140, 142, 148,
1168 146, 426, 62, 50, 47, 0, 49, 0, 362, 0,
1169 0, 0, 376, 375, 0, 0, 374, 0, 0, 194,
1170 184, 186, 188, 190, 192, 0, 0, 0, 0, 0,
1171 63, 65, 125, 78, 25, 481, 0, 0, 382, 150,
1172 152, 154, 158, 156, 487, 488, 489, 0, 494, 500,
1173 498, 503, 497, 476, 478, 39, 0, 37, 0, 287,
1174 0, 222, 221, 0, 0, 0, 0, 0, 0, 318,
1175 0, 0, 0, 0, 283, 282, 14, 0, 0, 0,
1176 0, 0, 0, 0, 0, 467, 468, 469, 0, 0,
1177 0, 455, 127, 382, 0, 197, 199, 444, 0, 447,
1178 446, 453, 129, 475, 0, 403, 0, 333, 400, 0,
1179 337, 404, 279, 275, 344, 343, 48, 46, 361, 363,
1180 28, 377, 364, 0, 0, 0, 0, 0, 0, 30,
1181 0, 0, 0, 480, 490, 493, 56, 55, 109, 218,
1182 266, 267, 268, 181, 0, 0, 0, 0, 0, 308,
1183 0, 0, 323, 0, 0, 442, 0, 0, 0, 0,
1184 0, 0, 0, 466, 470, 0, 440, 0, 0, 128,
1185 0, 474, 402, 0, 0, 401, 0, 365, 27, 195,
1186 32, 0, 0, 29, 34, 0, 0, 316, 0, 317,
1187 182, 0, 0, 0, 0, 0, 0, 313, 441, 0,
1188 0, 463, 0, 0, 465, 0, 0, 0, 473, 0,
1189 198, 0, 427, 200, 403, 404, 338, 196, 31, 33,
1190 0, 0, 0, 306, 0, 307, 0, 321, 0, 322,
1191 0, 0, 456, 458, 459, 0, 464, 0, 0, 130,
1192 472, 432, 0, 314, 315, 0, 0, 0, 0, 0,
1193 311, 0, 312, 0, 0, 461, 0, 0, 428, 304,
1194 305, 319, 320, 0, 0, 457, 460, 462, 429, 433,
1198 /* YYDEFGOTO[NTERM-NUM]. */
1199 static const yytype_int16 yydefgoto[] =
1201 -1, 37, 38, 122, 40, 41, 200, 201, 202, 203,
1202 123, 124, 125, 126, 461, 233, 483, 127, 150, 235,
1203 129, 130, 131, 132, 133, 134, 135, 136, 137, 138,
1204 139, 140, 141, 142, 247, 275, 558, 171, 699, 249,
1205 417, 463, 206, 44, 359, 436, 694, 695, 45, 46,
1206 47, 337, 338, 339, 48, 49, 50, 51, 439, 52,
1207 53, 153, 154, 155, 156, 157, 54, 208, 209, 210,
1208 211, 212, 385, 386, 55, 56, 98, 99, 81, 432,
1209 163, 433, 164, 213, 214, 85, 215, 87, 389, 159,
1210 216, 165, 166, 167, 189, 254, 422, 813, 469, 842,
1211 561, 562, 563, 564, 565, 373, 566, 567, 568, 569,
1212 570, 144, 571, 217, 145, 470, 219, 471, 472, 473,
1213 474, 475, 476, 477, 58
1216 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1218 #define YYPACT_NINF -778
1219 static const yytype_int16 yypact[] =
1221 8292, -778, -778, -778, -778, -778, -778, -778, -778, -778,
1222 -778, -778, -778, -778, -778, -778, -778, -778, -778, -778,
1223 -778, -778, -778, -778, 50, -778, -778, -778, -778, -778,
1224 -778, -778, -778, -69, -40, -778, -778, -778, -778, -778,
1225 -18, -778, 227, 6840, -778, -778, -778, 3, -778, -778,
1226 -778, -778, -778, -778, 28, -778, -778, -34, 136, 179,
1227 25, 57, 6590, 55, 5854, -778, -778, -778, -778, 822,
1228 6936, 6288, 551, -778, 112, -778, 183, -778, -778, -778,
1229 -778, 114, -778, 761, 211, 7764, -778, -778, 856, 104,
1230 2082, -46, -778, 140, 54, 6590, -778, 144, -100, -778,
1231 179, 179, -778, -778, -778, 6648, 6721, 6721, 8377, 6590,
1232 -778, 8377, 6590, 6739, -778, 5980, -778, 323, -778, -778,
1233 -778, -778, 220, 36, -778, -778, 514, -778, 959, 6590,
1234 -778, -31, 85, 518, 6590, 272, 544, 258, 262, 281,
1235 397, -3, -778, 300, -778, -778, 310, 34, 220, 13,
1236 -778, 518, 5741, 297, -778, -778, -778, 224, -778, 822,
1237 -778, -778, 714, 317, 578, 330, 313, -778, -778, 9,
1238 -778, 327, 551, -778, 103, 761, 364, 114, 211, -778,
1239 856, 7853, 6361, -778, -778, 6417, -778, 457, 341, 235,
1240 26, 114, -778, 334, 8462, 8031, 5392, 8377, -778, -778,
1241 326, 326, 326, 450, 22, 433, 5521, 103, 3522, -778,
1242 -30, -778, -778, 211, -778, -778, 364, 338, 347, -778,
1243 5170, 3640, 3758, 351, 358, -778, 6590, 179, -778, 123,
1244 156, 6106, -778, 526, -778, -778, 6443, -778, -778, 112,
1245 7122, 8547, 7215, 8547, 6106, -778, -778, -778, 282, 7582,
1246 -778, -778, -778, -778, 388, 387, 2716, 2852, 179, -778,
1247 -778, 4905, 179, 6590, -778, -778, -778, -778, -778, -778,
1248 -778, -778, -778, -778, -778, 4996, -778, 6590, 6590, 6590,
1249 6590, 6590, 6590, 6590, 518, 6590, 6590, -778, 6590, 6590,
1250 6590, 6590, 6590, 6590, 6590, 6590, 6590, -778, -778, -778,
1251 5854, 7029, 230, 378, 257, 5854, -778, -778, 5854, -778,
1252 -778, -778, -778, -778, 8207, -778, -778, 364, 114, -778,
1253 -778, 400, -778, 67, 398, -778, 181, 415, -778, -778,
1254 179, -778, -778, -778, -778, -778, 424, 427, -778, 674,
1255 -778, -778, -778, -778, -778, -778, -778, -778, -778, -778,
1256 -778, -778, 55, -778, -778, 429, 435, -778, 443, 5411,
1257 -778, -778, -778, -778, 645, -778, 8031, -778, 822, 6232,
1258 321, 8119, 425, 4820, -778, -778, -778, -778, -778, 4996,
1259 938, 6590, -778, 30, 103, 11, -778, 211, -778, 157,
1260 364, -778, 26, -778, -778, 841, -778, 26, -778, -778,
1261 -778, 3876, -778, 3994, -778, 4112, 5170, 4230, -778, -778,
1262 5170, -778, 5170, -778, -778, 22, 456, 7582, -778, -778,
1263 -778, -778, 458, 179, -778, -778, 4961, 179, 6590, 7675,
1264 6590, 135, 474, 476, 483, 489, 7401, -778, -778, -778,
1265 -778, -778, 6590, 487, 7494, 493, 505, -778, 6590, 179,
1266 -778, -778, -778, -778, -778, 6590, 323, -778, 2988, -778,
1267 480, -778, -778, 8031, -778, -778, -778, -778, -778, -778,
1268 -778, 326, -778, -778, 148, -778, 3124, 501, -778, 504,
1269 -778, -778, -778, 312, -778, -778, 490, -778, -778, -778,
1270 -778, -778, -31, -31, 85, 85, 518, 518, 518, 272,
1271 272, 544, 258, 262, 281, 397, -10, 7308, -778, -778,
1272 257, -778, -778, -778, -778, -778, -778, -778, -778, -778,
1273 -778, -778, -778, 6590, 515, 636, -778, -778, -778, 6590,
1274 55, 5854, 17, -44, -778, -778, -778, 42, -778, 55,
1275 -778, 103, 531, -778, 6590, 496, 543, 545, 553, 1924,
1276 557, 179, 525, 540, 5304, 179, -778, 38, 184, -778,
1277 5631, -778, -778, 2308, 2444, 548, -778, -778, -778, -778,
1278 -778, 542, -778, -778, -778, 3260, 211, 26, 512, -778,
1279 6590, -778, 26, 211, -778, -778, -778, -778, -778, -778,
1280 4348, -778, 4466, 4584, 4702, -778, -778, -778, -778, -778,
1281 -778, -778, -778, -778, -778, 348, -778, 497, -778, 570,
1282 571, 574, 474, 483, 7942, 6590, 474, 5854, 6590, 579,
1283 -778, -778, -778, -778, -778, 577, 582, 6590, 6590, 580,
1284 -778, -778, -778, -778, -778, -778, 568, 4996, 179, -778,
1285 -778, -778, -778, -778, -778, -778, -778, 4996, -778, -778,
1286 -778, 148, -778, -778, -778, -778, 4996, -778, 6590, -778,
1287 349, -778, -778, 589, 591, 48, 159, 326, 326, -778,
1288 5854, 319, 440, 581, -778, -778, -778, 590, 1924, 6590,
1289 6590, 6499, 656, 5222, 587, -778, -778, -778, 185, 592,
1290 1924, -778, -778, 58, 207, -778, 840, -778, 2580, -778,
1291 -778, -778, -778, -778, 593, 211, 103, -778, 594, 364,
1292 596, 211, -778, -778, -778, -778, -778, -778, -778, -778,
1293 -778, 474, -778, 618, 615, 221, 616, 5854, 6590, -778,
1294 617, 619, 6590, -778, -778, -778, -778, -778, -778, -778,
1295 -778, -778, -778, -778, -26, -20, 239, 326, 326, -778,
1296 326, 326, -778, 444, 1924, -778, 361, 369, 1924, 381,
1297 626, 1924, 5255, -778, -778, 6590, -778, 3396, 551, -778,
1298 5044, -778, 594, 26, 26, 594, 6590, -778, -778, -778,
1299 -778, 254, 622, -778, -778, 623, 326, -778, 326, -778,
1300 -778, -15, -17, -5, 4, 326, 326, -778, -778, 1924,
1301 1924, -778, 1924, 6590, -778, 1924, 6572, 611, -778, 621,
1302 -778, 5044, -778, -778, 594, 594, -778, -778, -778, -778,
1303 627, 628, 326, -778, 326, -778, 326, -778, 326, -778,
1304 1, 15, 683, -778, -778, 386, -778, 1924, 404, -778,
1305 -778, -778, -43, -778, -778, 629, 633, 634, 635, 326,
1306 -778, 326, -778, 1924, 641, -778, 1924, 1655, -778, -778,
1307 -778, -778, -778, 643, 644, -778, -778, -778, -778, -778,
1311 /* YYPGOTO[NTERM-NUM]. */
1312 static const yytype_int16 yypgoto[] =
1314 -778, 81, -778, 696, 697, 23, -778, -778, -778, -778,
1315 0, -778, 309, 1119, -257, -778, 336, 340, 52, 639,
1316 -778, -123, 355, 360, -14, -778, 365, 462, 491, 498,
1317 500, 502, -778, 1559, -24, -778, 97, 342, -352, -778,
1318 -778, -364, 168, -778, -778, 552, -778, 24, 1446, 957,
1319 -778, -778, -324, -778, 409, -778, 1238, 1493, -184, 1199,
1320 -181, -778, -1, 74, 507, -504, -168, 198, 406, -778,
1321 -778, -47, -778, 225, -175, 1382, 549, 601, -48, -399,
1322 -23, -231, -42, 495, -183, -778, 818, -71, 345, -778,
1323 1069, -82, -778, 8, -778, -778, 565, -777, -372, -778,
1324 492, -778, -778, 253, -778, -778, 1478, -635, -778, -778,
1325 -778, -112, -778, -778, 89, -778, -778, -778, 343, 170,
1326 344, 356, -778, -255, -778
1329 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1330 positive, shift that token. If negative, reduce the rule which
1331 number is the opposite. If zero, do what YYDEFACT says.
1332 If YYTABLE_NINF, syntax error. */
1333 #define YYTABLE_NINF -502
1334 static const yytype_int16 yytable[] =
1336 42, 83, 479, 188, 482, 255, 276, 572, 57, 560,
1337 362, 443, 367, 363, 295, 526, 1, 192, 487, 365,
1338 82, 559, 227, 388, 61, 1, 364, 666, 177, 1,
1339 175, 1, 612, 1, 841, 616, 228, 1, 143, 1,
1340 191, 1, 68, 74, 786, 1, 62, 60, 762, 788,
1341 151, 1, 824, 1, 93, 822, 2, 1, 1, 97,
1342 363, 1, 363, 147, 149, 826, 365, 64, 365, 670,
1343 162, 849, 173, 828, 68, 63, 173, 92, 2, 857,
1344 869, 277, 2, 2, 851, 187, 667, 668, 173, 220,
1345 204, 671, 395, 858, 224, 64, 278, 279, 95, 321,
1346 97, 97, 27, 28, 396, 192, 1, 29, 239, 319,
1347 787, 239, 448, 725, 128, 1, 789, 223, 89, 825,
1348 284, 823, 658, 68, 73, 66, 67, 806, 296, 303,
1349 315, 827, 318, 578, 66, 67, 96, 850, 35, 36,
1350 829, 172, 66, 67, 256, 579, 300, 68, 257, 68,
1351 299, 852, 239, 669, 489, 490, 491, 257, 237, 238,
1352 100, 394, 68, 90, 742, 575, 746, 128, 43, 482,
1353 690, 257, 173, 257, 173, 536, 173, 672, 363, 218,
1354 173, 42, 1, 540, 365, 59, 1, 68, 517, 222,
1355 173, 364, 101, 767, 358, 74, 370, 239, 609, 560,
1356 560, 662, 256, 636, 68, 625, 383, 173, 204, 280,
1357 281, 697, 248, 629, 721, 69, 173, 357, 172, 193,
1358 204, 204, 204, 781, 66, 67, 454, 97, 65, 181,
1359 1, 415, 152, 73, 182, 306, 29, 484, 43, 68,
1360 239, 435, 239, 435, 415, 227, 319, 69, 128, 449,
1361 429, 488, 622, 43, 177, 363, 191, 410, 480, 411,
1362 622, 365, 485, 363, 357, 734, 357, 35, 36, 365,
1363 647, 496, 497, 743, 498, 221, 240, 226, 227, 242,
1364 644, 308, 648, 416, 285, 286, 151, 73, 128, 580,
1365 412, 151, 413, 248, 151, 69, 445, 218, 70, 508,
1366 415, 42, 519, 71, 511, 415, 448, 448, 149, 218,
1367 218, 218, 414, 128, 42, 128, 256, 173, 691, 764,
1368 704, 73, 515, 73, 1, 414, 184, 128, 104, 768,
1369 521, 185, 633, 248, 560, 779, 537, 331, 307, 66,
1370 67, 769, 69, 308, 634, 301, 308, 610, 128, 43,
1371 71, 329, 528, 790, 394, 256, 394, 330, 394, 533,
1372 486, 308, 332, 366, 538, 371, 74, 1, 817, 370,
1373 68, 239, 301, 557, 509, 527, 308, 71, 333, 512,
1374 173, 291, 357, 68, 173, 287, 288, 92, 747, 748,
1375 173, 292, 173, 506, 601, -382, -382, 173, 447, 736,
1376 -382, 204, 484, 204, 448, 204, 204, 204, 334, 335,
1377 204, 293, 204, 294, 232, 68, 297, 239, 401, 403,
1378 405, 128, 232, 603, 632, 128, 298, 606, 655, 42,
1379 305, -382, -382, 311, 656, 314, 619, 225, 27, 28,
1380 258, 259, 260, 29, 619, 234, 313, 73, 316, 68,
1381 336, 241, 73, 234, 243, 749, 257, 328, 65, 357,
1382 1, 372, 318, 638, 716, 739, 248, 357, 507, 43,
1383 656, 448, 399, 507, 35, 36, 152, 799, 128, 172,
1384 128, 400, 43, 448, 659, 800, 406, 258, 259, 260,
1385 218, 448, 218, 407, 218, 218, 218, 802, 596, 218,
1386 128, 218, 854, 448, 455, 663, 456, 239, 448, 750,
1387 751, -285, 809, 795, 796, 1, 516, 151, 696, 518,
1388 856, 258, 259, 260, 324, 607, 448, 327, 282, 283,
1389 665, 149, 723, 423, 424, 425, 520, 673, 84, 675,
1390 522, 173, 523, 394, 529, 394, 394, 394, 261, 557,
1391 530, 684, 262, 263, 1, 689, 531, 68, 289, 290,
1392 693, 543, 674, 557, 557, 84, 379, 84, 408, 66,
1393 67, 178, 595, -421, 602, 128, 752, 173, 173, -421,
1394 797, 128, 173, 84, 377, 372, 27, 28, 73, 614,
1395 204, 29, 204, 204, 204, 261, 615, 43, 429, 262,
1396 263, 128, 617, 151, 590, 592, 128, 627, 593, 630,
1397 594, 657, 448, 637, 42, 128, 128, 149, 717, 448,
1398 660, 631, 35, 36, 69, 27, 28, 172, 678, 261,
1399 29, 661, 737, 262, 263, 492, 493, 653, 68, 331,
1400 654, 426, 494, 495, 381, 427, 428, 676, 1, 229,
1401 230, 688, 27, 28, 499, 500, 151, 29, 679, 685,
1402 680, 35, 36, 69, 332, 68, 172, 84, 681, 178,
1403 149, 84, 683, 2, 686, 84, 702, 331, 557, 218,
1404 333, 218, 218, 218, 701, 178, 718, 719, 35, 36,
1405 557, 84, 727, 68, 312, 720, 39, 728, 557, 152,
1406 732, 387, 332, 729, 733, 740, 173, 741, 128, 173,
1407 334, 335, 760, 151, 185, 65, 753, 1, 333, 27,
1408 28, 763, 754, 574, 29, 765, 696, 149, 776, 771,
1409 128, 128, 128, 128, 777, 128, 778, 780, 783, 39,
1410 784, 803, 128, 818, 819, 839, 812, 853, 334, 335,
1411 128, 91, 245, 501, 557, 35, 36, 840, 557, 146,
1412 148, 557, 605, 843, 844, 859, 39, 169, 173, 860,
1413 861, 862, 611, 173, 173, 866, 756, 757, 759, 870,
1414 871, 39, 43, 502, 626, 152, 148, 812, -382, -382,
1415 524, 503, 810, -382, 504, 444, 525, 505, 581, 557,
1416 557, 585, 557, 707, 39, 557, 128, 39, 645, 446,
1417 128, 148, 84, 128, 128, 513, 698, 735, 0, 650,
1418 651, 0, 128, 0, -382, -382, 66, 67, 409, -382,
1419 -382, 0, 652, 812, -382, 27, 28, 557, 152, 0,
1420 29, 0, 102, 0, 1, 103, 104, 0, 39, 0,
1421 0, 128, 128, 557, 128, 128, 557, 128, 128, 1,
1422 0, 86, 0, 128, 84, 0, 18, 19, 0, 2,
1423 0, 35, 36, 0, 0, 84, 0, 39, 323, 576,
1424 0, 326, 0, 0, 0, 583, 677, 0, 86, 128,
1425 86, 39, 0, 39, 179, 152, 27, 28, 0, 0,
1426 835, 29, 39, 838, 148, 128, 86, 0, 128, 128,
1427 0, 0, 108, 109, 27, 28, 148, 148, 148, 29,
1428 0, 0, 710, 0, 0, 0, 0, 148, 0, 0,
1429 27, 28, 35, 36, 69, 29, 39, 0, 39, 0,
1430 148, 1, 0, 111, 112, 39, 0, 0, 0, 0,
1431 35, 36, 148, 148, 0, 0, 236, 724, 387, 117,
1432 726, 0, 0, 0, 0, 0, 35, 36, 0, 730,
1433 731, 70, 0, 770, 0, 0, 71, 264, 265, 266,
1434 267, 268, 269, 270, 271, 272, 273, 0, 0, 0,
1435 86, 0, 179, 0, 86, 0, 148, 39, 86, 0,
1436 76, 148, 0, 0, 148, 0, 0, 0, 179, 0,
1437 39, 94, 27, 28, 86, 0, 0, 29, 0, 0,
1438 0, 0, 0, 0, 0, 391, 0, 76, 0, 174,
1439 0, 0, 0, 0, 398, 0, 178, 0, 0, 0,
1440 183, 682, 0, 0, 0, 190, 0, 207, 35, 36,
1441 69, 0, 0, 172, 573, 84, 700, 0, 0, 0,
1442 0, 0, 39, 0, 0, 148, 0, 39, 0, 148,
1443 782, 0, 705, 708, 785, 0, 0, 711, 0, 0,
1444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1445 0, 0, 274, 0, 0, 0, 0, 148, 0, 148,
1446 0, 148, 148, 148, 0, 0, 148, 807, 148, 302,
1447 0, 0, 88, 39, 0, 0, 0, 0, 816, 0,
1448 0, 183, 0, 0, 0, 39, 0, 0, 0, 174,
1449 0, 0, 183, 190, 0, 86, 0, 190, 160, 88,
1450 0, 176, 0, 0, 0, 180, 0, 0, 0, 0,
1451 0, 0, 207, 174, 148, 0, 0, 0, 0, 39,
1452 0, 0, 0, 384, 0, 207, 0, 0, 0, 0,
1453 755, 0, 148, 397, 0, 0, 0, 207, 207, 207,
1454 0, 0, 766, 0, 0, 0, 0, 86, 0, 0,
1455 700, 0, 0, 0, 0, 0, 0, 431, 86, 431,
1456 0, 772, 391, 39, 775, 0, 302, 0, 398, 205,
1457 584, 0, 0, 0, 0, 586, 0, 0, 0, 0,
1458 0, 304, 0, 0, 0, 0, 664, 148, 310, 0,
1459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1460 0, 176, 79, 317, 0, 0, 798, 0, 0, 0,
1461 801, 0, 0, 804, 0, 0, 39, 0, 302, 148,
1462 148, 0, 0, 84, 0, 176, 0, 0, 814, 815,
1463 0, 148, 0, 0, 190, 390, 392, 0, 0, 0,
1464 0, 77, 0, 0, 0, 0, 148, 0, 148, 148,
1465 148, 832, 833, 0, 834, 0, 0, 836, 0, 0,
1466 0, 0, 0, 0, 0, 0, 0, 158, 0, 434,
1467 39, 434, 0, 148, 252, 0, 302, 0, 304, 0,
1468 0, 539, 0, 207, 0, 0, 541, 205, 0, 855,
1469 0, 0, 0, 0, 0, 0, 0, 174, 0, 205,
1470 205, 205, 0, 0, 0, 865, 0, 582, 867, 0,
1471 0, 79, 0, 250, 0, 0, 0, 0, 207, 179,
1472 207, 0, 207, 207, 207, 0, 148, 207, 0, 207,
1473 304, 510, 0, 0, 302, 460, 460, 0, 86, 0,
1474 0, 0, 0, 0, 0, 0, 431, 0, 0, 0,
1475 77, 0, 0, 431, 148, 584, 0, 309, 0, 0,
1476 586, 431, 0, 0, 0, 79, 0, 0, 0, 0,
1477 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1478 384, 0, 0, 148, 0, 80, 0, 0, 304, 0,
1479 420, 0, 361, 0, 0, 0, 0, 160, 176, 79,
1480 440, 79, 440, 420, 77, 0, 0, 0, 452, 176,
1481 0, 0, 0, 577, 0, 467, 467, 0, 0, 0,
1482 0, 0, 0, 148, 302, 0, 0, 0, 0, 418,
1483 0, 0, 0, 0, 0, 0, 0, 0, 77, 438,
1484 77, 438, 418, 0, 0, 0, 304, 450, 0, 75,
1485 0, 0, 0, 0, 465, 465, 0, 253, 434, 0,
1486 613, 0, 0, 0, 0, 434, 0, 0, 0, 0,
1487 0, 0, 0, 434, 205, 0, 0, 541, 0, 0,
1488 205, 0, 205, 0, 205, 205, 205, 0, 0, 205,
1489 0, 205, 390, 0, 80, 706, 78, 0, 0, 0,
1490 0, 0, 0, 0, 0, 0, 0, 207, 0, 207,
1491 207, 207, 0, 0, 0, 0, 0, 0, 0, 0,
1492 0, 0, 0, 0, 0, 79, 0, 0, 252, 0,
1493 79, 0, 467, 0, 0, 0, 304, 460, 0, 0,
1494 0, 0, 0, 0, 0, 0, 86, 0, 80, 0,
1495 0, 0, 0, 0, 0, 460, 0, 535, 75, 0,
1496 0, 0, 0, 0, 77, 0, 158, 250, 251, 77,
1497 317, 465, 0, 421, 0, 0, 599, 0, 0, 0,
1498 0, 0, 80, 441, 80, 441, 421, 0, 0, 176,
1499 170, 453, 0, 0, 0, 623, 0, 0, 468, 468,
1500 360, 0, 0, 623, 0, 78, 0, 709, 0, 0,
1501 0, 0, 75, 183, 170, 597, 102, 467, 1, 103,
1502 104, 105, 642, 106, 107, 0, 774, 0, 170, 0,
1503 0, 170, 0, 0, 621, 467, 0, 0, 374, 375,
1504 376, 378, 621, 2, 0, 0, 75, 437, 75, 437,
1505 0, 0, 0, 0, 460, 0, 465, 0, 0, 78,
1506 0, 640, 464, 464, 0, 0, 79, 0, 0, 205,
1507 0, 205, 205, 205, 465, 0, 0, 0, 0, 0,
1508 0, 0, 0, 0, 419, 174, 108, 109, 110, 0,
1509 0, 0, 0, 78, 0, 78, 0, 419, 0, 0,
1510 0, 170, 451, 0, 170, 77, 0, 0, 80, 466,
1511 466, 253, 0, 80, 0, 468, 0, 111, 112, 642,
1512 0, 0, 467, 467, 113, 0, 460, 114, 0, 0,
1513 115, 0, 116, 117, 467, 773, 0, 0, 118, 119,
1514 120, 121, 0, 0, 0, 170, 0, 0, 0, 0,
1515 811, 868, 0, 0, 0, 0, 0, 0, 640, 600,
1516 0, 465, 465, 0, 0, 534, 0, 0, 0, 0,
1517 0, 0, 75, 465, 0, 462, 462, 75, 624, 464,
1518 0, 0, 0, 0, 0, 0, 624, 0, 0, 0,
1519 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
1520 468, 0, 0, 0, 0, 643, 0, 0, 0, 0,
1521 0, 0, 0, 0, 0, 0, 0, 0, 468, 78,
1522 0, 0, 251, 0, 78, 0, 466, 0, 0, 0,
1523 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1524 0, 0, 620, 0, 0, 0, 460, 0, 0, 80,
1525 620, 0, 0, 0, 0, 0, 0, 467, 0, 0,
1526 0, 0, 0, 0, 464, 0, 0, 0, 0, 639,
1527 598, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1528 0, 0, 464, 0, 0, 102, 0, 1, 103, 104,
1529 105, 0, 106, 107, 0, 0, 465, 0, 462, 0,
1530 170, 0, 643, 0, 0, 468, 468, 0, 0, 646,
1531 0, 466, 2, 75, 0, 0, 641, 468, 0, 0,
1532 0, 0, 0, 0, 0, 0, 467, 0, 0, 466,
1533 0, 0, 0, 0, 0, 0, 544, 545, 546, 547,
1534 548, 549, 550, 551, 552, 553, 554, 0, 0, 170,
1535 0, 0, 0, 0, 0, 108, 109, 110, 0, 0,
1536 78, 170, 0, 0, 0, 465, 639, 0, 0, 464,
1537 464, 0, 0, 0, 0, 0, 0, 462, 0, 0,
1538 0, 464, 0, 0, 0, 0, 111, 112, 0, 0,
1539 0, 0, 0, 113, 0, 462, 114, 0, 0, 115,
1540 0, 116, 117, 0, 0, 0, 0, 118, 119, 120,
1541 121, 0, 0, 641, 0, 0, 466, 466, 556, 372,
1542 0, 0, 0, 0, 0, 0, 0, 0, 466, 0,
1543 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1544 468, 0, 0, 102, 0, 1, 103, 104, 0, 0,
1545 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1546 0, 0, 0, 170, 0, 0, 0, 0, 0, 0,
1547 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1548 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1549 22, 23, 24, 0, 462, 0, 0, 0, 0, 170,
1550 0, 0, 0, 0, 464, 744, 745, 0, 26, 468,
1551 194, 0, 0, 108, 109, 0, 27, 28, 0, 0,
1552 195, 29, 0, 0, 30, 31, 0, 32, 0, 33,
1553 0, 0, 0, 0, 170, 0, 0, 170, 0, 0,
1554 0, 0, 34, 0, 111, 112, 170, 170, 0, 0,
1555 0, 466, 35, 36, 69, 0, 462, 196, 0, 197,
1556 117, 0, 0, 0, 0, 0, 462, 0, 0, 0,
1557 0, 0, 0, 464, 0, 0, 198, 738, 199, 0,
1558 0, 0, 0, 0, 0, 791, 792, 0, 793, 794,
1559 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1560 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1561 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1562 466, 0, 0, 0, 820, 0, 821, 0, 0, 0,
1563 0, 0, 0, 830, 831, 0, 0, 0, 0, 0,
1564 0, 0, 0, 0, 0, 0, 0, 170, 0, 0,
1565 0, 170, 0, 0, 0, 0, 0, 0, 0, 0,
1566 845, 0, 846, 0, 847, 0, 848, 0, 0, 102,
1567 0, 1, 103, 104, 105, 0, 106, 107, 0, 0,
1568 0, 0, 0, 0, 170, 0, 462, 863, 0, 864,
1569 0, 0, 0, 0, 0, 170, 2, 3, 4, 5,
1570 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1571 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
1572 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
1573 554, 0, 0, 0, 26, 0, 0, 0, 0, 108,
1574 109, 110, 27, 28, 0, 555, 0, 29, 0, 0,
1575 30, 31, 0, 32, 0, 33, 0, 0, 0, 0,
1576 0, 0, 0, 0, 0, 0, 0, 0, 34, 0,
1577 111, 112, 0, 0, 0, 0, 0, 113, 35, 36,
1578 114, 0, 0, 115, 0, 116, 117, 0, 0, 0,
1579 0, 118, 119, 120, 121, 0, 0, 0, 0, 0,
1580 0, 0, 556, 372, -449, 102, 0, 1, 103, 104,
1581 105, 0, 106, 107, 0, 0, 0, 0, 0, 0,
1582 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1583 0, 0, 2, 3, 4, 5, 6, 7, 8, 9,
1584 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1585 20, 21, 22, 23, 24, 0, 544, 545, 546, 547,
1586 548, 549, 550, 551, 552, 553, 554, 0, 0, 0,
1587 26, 0, 0, 0, 0, 108, 109, 110, 27, 28,
1588 0, 555, 0, 29, 0, 0, 30, 31, 0, 32,
1589 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
1590 0, 0, 0, 0, 34, 0, 111, 112, 0, 0,
1591 0, 0, 0, 113, 35, 36, 114, 0, 0, 115,
1592 0, 116, 117, 0, 0, 0, 0, 118, 119, 120,
1593 121, 0, 0, 0, 0, 0, 0, 0, 556, 372,
1594 -448, 102, 0, 1, 103, 104, 105, 0, 106, 107,
1595 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1596 0, 0, 0, 0, 0, 0, 0, 0, 2, 3,
1597 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1598 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1599 24, 0, 544, 545, 546, 547, 548, 549, 550, 551,
1600 552, 553, 554, 0, 0, 0, 26, 0, 0, 0,
1601 0, 108, 109, 110, 27, 28, 0, 555, 0, 29,
1602 0, 0, 30, 31, 0, 32, 0, 33, 0, 0,
1603 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1604 34, 0, 111, 112, 0, 0, 0, 0, 0, 113,
1605 35, 36, 114, 0, 0, 115, 0, 116, 117, 0,
1606 0, 0, 0, 118, 119, 120, 121, 0, 0, 0,
1607 0, 0, 0, 0, 556, 372, -450, 102, 0, 1,
1608 103, 104, 105, 0, 106, 107, 0, 0, 0, 0,
1609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1610 0, 0, 0, 0, 2, 3, 4, 5, 6, 7,
1611 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1612 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
1613 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1614 0, 0, 26, 0, 0, 0, 0, 108, 109, 110,
1615 27, 28, 0, 0, 0, 29, 0, 0, 30, 31,
1616 0, 32, 0, 33, 0, 0, 0, 0, 0, 0,
1617 0, 0, 0, 0, 0, 0, 34, 0, 111, 112,
1618 0, 0, 0, 0, 0, 113, 35, 36, 114, 0,
1619 0, 115, 0, 116, 117, 0, 0, 0, 0, 118,
1620 119, 120, 121, 0, 0, 0, 0, 0, 0, 0,
1621 457, 458, 459, 102, 0, 1, 103, 104, 105, 0,
1622 106, 107, 0, 0, 0, 0, 0, 0, 0, 0,
1623 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1624 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1625 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1626 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
1627 0, 0, 0, 0, 0, 0, 0, 0, 26, 0,
1628 0, 0, 0, 108, 109, 110, 27, 28, 0, 0,
1629 0, 29, 0, 0, 30, 31, 0, 32, 0, 33,
1630 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1631 0, 0, 34, 0, 111, 112, 0, 0, 0, 0,
1632 0, 113, 35, 36, 114, 0, 0, 115, 0, 116,
1633 117, 0, 0, 0, 0, 118, 119, 120, 121, 0,
1634 0, 0, 0, 0, 0, 0, 457, 458, 478, 102,
1635 0, 1, 103, 104, 105, 0, 106, 107, 0, 0,
1636 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1637 0, 0, 0, 0, 0, 0, 2, 3, 4, 5,
1638 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1639 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
1640 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1641 0, 0, 0, 0, 26, 0, 0, 0, 0, 108,
1642 109, 110, 27, 28, 0, 0, 0, 29, 0, 0,
1643 30, 31, 0, 32, 0, 33, 0, 0, 0, 0,
1644 0, 0, 0, 0, 0, 0, 0, 0, 34, 0,
1645 111, 112, 0, 0, 0, 0, 0, 113, 35, 36,
1646 114, 0, 0, 115, 0, 116, 117, 0, 0, 0,
1647 0, 118, 119, 120, 121, 0, 0, 0, 0, 0,
1648 0, 0, 457, 458, 635, 102, 0, 1, 103, 104,
1649 105, 0, 106, 107, 0, 0, 0, 0, 0, 0,
1650 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1651 0, 0, 2, 3, 4, 5, 6, 7, 8, 9,
1652 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1653 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
1654 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1655 26, 0, 0, 0, 0, 108, 109, 110, 27, 28,
1656 0, 0, 0, 29, 0, 0, 30, 31, 0, 32,
1657 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
1658 0, 0, 0, 0, 34, 0, 111, 112, 0, 0,
1659 0, 0, 0, 113, 35, 36, 114, 0, 0, 115,
1660 0, 116, 117, 0, 0, 0, 0, 118, 119, 120,
1661 121, 0, 0, 0, 0, 0, 0, 0, 649, 458,
1662 -501, 102, 0, 1, 103, 104, 105, 0, 106, 107,
1663 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1664 0, 0, 0, 0, 0, 0, 0, 0, 2, 3,
1665 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1666 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1667 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1668 0, 0, 0, 0, 0, 0, 26, 0, 0, 0,
1669 0, 108, 109, 110, 27, 28, 0, 0, 0, 29,
1670 0, 0, 30, 31, 0, 32, 0, 33, 0, 0,
1671 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1672 34, 0, 111, 112, 0, 0, 0, 0, 0, 113,
1673 35, 36, 114, 0, 0, 115, 0, 116, 117, 0,
1674 0, 0, 0, 118, 119, 120, 121, 0, 0, 0,
1675 0, 0, 0, 0, 457, 458, 703, 102, 0, 1,
1676 103, 104, 105, 0, 106, 107, 0, 0, 0, 0,
1677 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1678 0, 0, 0, 0, 2, 3, 4, 5, 6, 7,
1679 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1680 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
1681 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1682 0, 0, 26, 0, 0, 0, 0, 108, 109, 110,
1683 27, 28, 0, 0, 0, 29, 0, 0, 30, 31,
1684 0, 32, 0, 33, 0, 0, 0, 0, 0, 0,
1685 0, 0, 0, 0, 0, 0, 34, 0, 111, 112,
1686 0, 0, 0, 0, 0, 113, 35, 36, 114, 0,
1687 0, 115, 0, 116, 117, 0, 0, 0, 0, 118,
1688 119, 120, 121, 102, 0, 1, 103, 104, 0, 0,
1689 457, 458, 808, 0, 0, 0, 0, 0, 0, 0,
1690 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1691 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1692 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1693 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
1694 0, 0, 0, 0, 0, 0, 0, 0, 26, 0,
1695 194, 0, 0, 108, 109, 0, 27, 28, 0, 0,
1696 195, 29, 0, 0, 30, 31, 0, 32, 0, 33,
1697 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1698 0, 0, 34, 0, 111, 112, 0, 0, 0, 0,
1699 0, 0, 35, 36, 69, 0, 0, 196, 0, 197,
1700 117, 102, 0, 1, 103, 104, 0, 0, 0, 0,
1701 0, 0, 0, 0, 0, 0, 198, 0, 393, 0,
1702 0, 0, 0, 0, 0, 0, 0, 0, 2, 3,
1703 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1704 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1705 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1706 0, 0, 0, 0, 0, 0, 26, 0, 194, 0,
1707 0, 108, 109, 0, 27, 28, 0, 0, 195, 29,
1708 0, 0, 30, 31, 0, 32, 0, 33, 0, 0,
1709 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1710 34, 0, 111, 112, 0, 0, 0, 0, 0, 0,
1711 35, 36, 69, 0, 0, 196, 0, 197, 117, 102,
1712 0, 1, 103, 104, 0, 0, 0, 0, 0, 0,
1713 0, 0, 0, 0, 198, 0, 402, 0, 0, 0,
1714 0, 0, 0, 0, 0, 0, 2, 3, 4, 5,
1715 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1716 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
1717 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1718 0, 0, 0, 0, 26, 0, 194, 0, 0, 108,
1719 109, 0, 27, 28, 0, 0, 195, 29, 0, 0,
1720 30, 31, 0, 32, 0, 33, 0, 0, 0, 0,
1721 0, 0, 0, 0, 0, 0, 0, 0, 34, 0,
1722 111, 112, 0, 0, 0, 0, 0, 0, 35, 36,
1723 69, 0, 0, 196, 0, 197, 117, 102, 0, 1,
1724 103, 104, 0, 0, 0, 0, 0, 0, 0, 0,
1725 0, 0, 198, 0, 404, 0, 0, 0, 0, 0,
1726 0, 0, 0, 0, 2, 3, 4, 5, 6, 7,
1727 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1728 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
1729 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1730 0, 0, 26, 0, 194, 0, 0, 108, 109, 0,
1731 27, 28, 0, 0, 195, 29, 0, 0, 30, 31,
1732 0, 32, 0, 33, 0, 0, 0, 0, 0, 0,
1733 0, 0, 0, 0, 0, 0, 34, 0, 111, 112,
1734 0, 0, 0, 0, 0, 0, 35, 36, 69, 0,
1735 0, 196, 0, 197, 117, 102, 0, 1, 103, 104,
1736 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1737 198, 0, 587, 0, 0, 0, 0, 0, 0, 0,
1738 0, 0, 2, 3, 4, 5, 6, 7, 8, 9,
1739 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1740 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
1741 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1742 26, 0, 194, 0, 0, 108, 109, 0, 27, 28,
1743 0, 0, 195, 29, 0, 0, 30, 31, 0, 32,
1744 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
1745 0, 0, 0, 0, 34, 0, 111, 112, 0, 0,
1746 0, 0, 0, 0, 35, 36, 69, 0, 0, 196,
1747 0, 197, 117, 102, 0, 1, 103, 104, 0, 0,
1748 0, 0, 0, 0, 0, 0, 0, 0, 198, 0,
1749 588, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1750 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1751 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1752 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
1753 0, 0, 0, 0, 0, 0, 0, 0, 26, 0,
1754 194, 0, 0, 108, 109, 0, 27, 28, 0, 0,
1755 195, 29, 0, 0, 30, 31, 0, 32, 0, 33,
1756 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1757 0, 0, 34, 0, 111, 112, 0, 0, 0, 0,
1758 0, 0, 35, 36, 69, 0, 0, 196, 0, 197,
1759 117, 102, 0, 1, 103, 104, 0, 0, 0, 0,
1760 0, 0, 0, 0, 0, 0, 198, 0, 589, 0,
1761 0, 0, 0, 0, 0, 0, 0, 0, 2, 3,
1762 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1763 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1764 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1765 0, 0, 0, 0, 0, 0, 26, 0, 194, 0,
1766 0, 108, 109, 0, 27, 28, 0, 0, 195, 29,
1767 0, 0, 30, 31, 0, 32, 0, 33, 0, 0,
1768 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1769 34, 0, 111, 112, 0, 0, 0, 0, 0, 0,
1770 35, 36, 69, 0, 0, 196, 0, 197, 117, 102,
1771 0, 1, 103, 104, 0, 0, 0, 0, 0, 0,
1772 0, 0, 0, 0, 198, 0, 591, 0, 0, 0,
1773 0, 0, 0, 0, 0, 0, 2, 3, 4, 5,
1774 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
1775 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
1776 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1777 0, 0, 0, 0, 26, 0, 194, 0, 0, 108,
1778 109, 0, 27, 28, 0, 0, 195, 29, 0, 0,
1779 30, 31, 0, 32, 0, 33, 0, 0, 0, 0,
1780 0, 0, 0, 0, 0, 0, 0, 0, 34, 0,
1781 111, 112, 0, 0, 0, 0, 0, 0, 35, 36,
1782 69, 0, 0, 196, 0, 197, 117, 102, 0, 1,
1783 103, 104, 0, 0, 0, 0, 0, 0, 0, 0,
1784 0, 0, 198, 0, 712, 0, 0, 0, 0, 0,
1785 0, 0, 0, 0, 2, 3, 4, 5, 6, 7,
1786 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1787 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
1788 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1789 0, 0, 26, 0, 194, 0, 0, 108, 109, 0,
1790 27, 28, 0, 0, 195, 29, 0, 0, 30, 31,
1791 0, 32, 0, 33, 0, 0, 0, 0, 0, 0,
1792 0, 0, 0, 0, 0, 0, 34, 0, 111, 112,
1793 0, 0, 0, 0, 0, 0, 35, 36, 69, 0,
1794 0, 196, 0, 197, 117, 102, 0, 1, 103, 104,
1795 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1796 198, 0, 713, 0, 0, 0, 0, 0, 0, 0,
1797 0, 0, 2, 3, 4, 5, 6, 7, 8, 9,
1798 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1799 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
1800 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1801 26, 0, 194, 0, 0, 108, 109, 0, 27, 28,
1802 0, 0, 195, 29, 0, 0, 30, 31, 0, 32,
1803 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
1804 0, 0, 0, 0, 34, 0, 111, 112, 0, 0,
1805 0, 0, 0, 0, 35, 36, 69, 0, 0, 196,
1806 0, 197, 117, 102, 0, 1, 103, 104, 0, 0,
1807 0, 0, 0, 0, 0, 0, 0, 0, 198, 0,
1808 714, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1809 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
1810 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1811 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
1812 0, 0, 0, 0, 0, 0, 0, 0, 26, 0,
1813 194, 0, 0, 108, 109, 0, 27, 28, 0, 0,
1814 195, 29, 0, 0, 30, 31, 0, 32, 0, 33,
1815 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1816 0, 0, 34, 0, 111, 112, 0, 0, 0, 0,
1817 0, 0, 35, 36, 69, 0, 0, 196, 0, 197,
1818 117, 102, 0, 1, 103, 104, 105, 0, 106, 107,
1819 0, 0, 0, 0, 0, 0, 198, 0, 715, 0,
1820 0, 0, 0, 0, 0, 0, 0, 0, 2, 3,
1821 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1822 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1823 24, 0, 544, 545, 546, 547, 548, 549, 550, 551,
1824 552, 553, 554, 0, 0, 0, 26, 0, 0, 0,
1825 0, 108, 109, 110, 27, 28, 0, 555, 0, 29,
1826 0, 0, 30, 31, 0, 32, 102, 33, 1, 103,
1827 104, 105, 0, 106, 107, 0, 0, 0, 0, 0,
1828 34, 0, 111, 112, 0, 0, 0, 0, 0, 113,
1829 35, 36, 114, 2, 0, 115, 0, 116, 117, 0,
1830 0, 0, 0, 118, 119, 120, 121, 0, 0, 0,
1831 0, 0, 0, 0, 556, 372, 0, 0, 0, 0,
1832 0, 0, 102, 0, 1, 103, 104, 105, 0, 106,
1833 107, 0, 0, 0, 0, 0, 108, 109, 110, 0,
1834 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
1835 0, 0, 0, 0, 0, 0, 0, 102, 0, 1,
1836 103, 104, 105, 0, 106, 107, 0, 111, 112, 0,
1837 0, 0, 0, 0, 113, 0, 0, 114, 0, 0,
1838 115, 481, 116, 117, 2, 0, 0, 0, 118, 119,
1839 120, 121, 108, 109, 110, 0, 0, 0, 0, 0,
1840 458, 0, 0, 0, 0, 102, 0, 1, 103, 104,
1841 105, 0, 106, 107, 0, 0, 0, 0, 0, 0,
1842 0, 0, 0, 111, 112, 0, 0, 108, 109, 110,
1843 113, 0, 2, 114, 0, 0, 115, 604, 116, 117,
1844 0, 0, 0, 0, 118, 119, 120, 121, 0, 0,
1845 0, 0, 0, 0, 0, 0, 458, 0, 111, 112,
1846 0, 0, 0, 0, 0, 113, 0, 0, 114, 0,
1847 0, 115, 0, 116, 117, 108, 109, 110, 0, 118,
1848 119, 120, 121, 0, 0, 0, 0, 0, 0, 0,
1849 0, 458, 0, 0, 0, 0, 0, 0, 0, 0,
1850 0, 0, 0, 0, 0, 0, 111, 112, 0, 0,
1851 0, 0, 0, 113, 0, 0, 114, 0, 0, 115,
1852 0, 116, 117, 0, 0, 0, 0, 118, 119, 120,
1853 121, 102, 0, 1, 103, 104, 0, 0, 0, 811,
1854 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1855 0, 0, 0, 0, 0, 0, 0, 0, 2, 3,
1856 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
1857 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1858 24, 0, 0, 102, 0, 1, 103, 104, 105, 0,
1859 106, 107, 0, 0, 0, 0, 26, 0, 194, 0,
1860 0, 108, 109, 0, 27, 28, 0, 0, 195, 29,
1861 2, 0, 30, 31, 0, 32, 102, 33, 1, 103,
1862 104, 105, 0, 106, 107, 0, 0, 0, 0, 0,
1863 34, 0, 111, 112, 0, 0, 0, 0, 0, 0,
1864 35, 36, 69, 2, 0, 196, 0, 197, 117, 0,
1865 0, 0, 0, 108, 109, 110, 0, 0, 0, 0,
1866 0, 0, 0, 0, 198, 102, 0, 1, 103, 104,
1867 105, 0, 106, 107, 0, 0, 0, 0, 0, 0,
1868 0, 0, 0, 0, 111, 112, 108, 109, 110, 0,
1869 0, 113, 2, 0, 114, 0, 0, 115, 761, 116,
1870 117, 0, 0, 0, 0, 118, 119, 120, 121, 0,
1871 0, 0, 0, 0, 0, 0, 556, 111, 112, 0,
1872 0, 0, 0, 0, 113, 0, 0, 114, 0, 0,
1873 115, 805, 116, 117, 0, 108, 109, 110, 118, 119,
1874 120, 121, 0, 0, 0, 0, 0, 0, 0, 556,
1875 0, 0, 0, 102, 0, 1, 103, 104, 105, 0,
1876 106, 107, 0, 0, 0, 0, 111, 112, 0, 0,
1877 0, 0, 0, 113, 1, 0, 114, 0, 0, 115,
1878 2, 116, 117, 0, 0, 0, 0, 118, 119, 120,
1879 121, 0, 0, 0, 0, 0, 0, 0, 687, 2,
1880 3, 4, 5, 6, 7, 340, 341, 342, 343, 344,
1881 345, 346, 347, 348, 349, 18, 19, 350, 351, 22,
1882 23, 352, 0, 108, 109, 110, 27, 28, 0, 0,
1883 0, 29, 0, 0, 0, 0, 0, 353, 0, 0,
1884 0, 0, 0, 0, 0, 27, 28, 0, 0, 0,
1885 29, 0, 0, 0, 111, 112, 354, 0, 355, 0,
1886 0, 113, 35, 36, 368, 0, 0, 369, 246, 116,
1887 117, 356, 0, 0, 0, 118, 119, 120, 121, 0,
1888 0, 35, 36, 69, 1, 0, 301, 0, 0, 0,
1889 0, 71, 0, 0, 0, 0, 0, 0, 0, 0,
1890 0, 0, 0, 0, 0, 0, 532, 0, 0, 2,
1891 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
1892 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1893 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
1894 0, 0, 0, 0, 0, 0, 0, 26, 0, 0,
1895 0, 0, 0, 0, 0, 27, 28, 0, 0, 0,
1896 29, 0, 0, 30, 31, 0, 32, 0, 33, 0,
1897 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1898 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
1899 0, 35, 36, 69, 1, 0, 380, 0, 0, 0,
1900 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1901 0, 0, 0, 381, 0, 382, 0, 0, 0, 2,
1902 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
1903 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1904 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
1905 0, 0, 0, 0, 0, 0, 0, 26, 0, 0,
1906 0, 0, 0, 0, 0, 27, 28, 0, 0, 0,
1907 29, 0, 0, 30, 31, 0, 32, 0, 33, 0,
1908 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1909 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
1910 0, 35, 36, 69, 1, 0, 172, 0, 0, 0,
1911 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1912 0, 0, 0, 0, 0, 692, 0, 0, 0, 2,
1913 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
1914 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
1915 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
1916 0, 0, 0, 0, 0, 0, 0, 26, 0, 0,
1917 0, 0, 0, 0, 0, 27, 28, 0, 0, 0,
1918 29, 0, 0, 30, 31, 0, 32, 0, 33, 0,
1919 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1920 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
1921 0, 35, 36, 69, 0, 102, 301, 1, 103, 104,
1922 105, 71, 106, 107, 0, 0, 0, 0, 0, 0,
1923 0, 0, 0, 0, -284, 0, 0, 0, 0, 0,
1924 0, 0, 2, 3, 4, 5, 6, 7, 8, 9,
1925 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
1926 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
1927 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1928 26, 0, 0, 0, 0, 108, 109, 110, 27, 28,
1929 0, 0, 0, 29, 0, 0, 30, 31, 0, 32,
1930 0, 33, 0, 0, 0, 0, 0, 0, 0, 0,
1931 0, 0, 0, 0, 34, 0, 111, 112, 0, 0,
1932 0, 0, 0, 113, 35, 36, 114, 0, 0, 115,
1933 0, 116, 117, 0, 0, 0, 0, 118, 119, 120,
1934 121, 102, 0, 1, 103, 104, 105, 0, 106, 107,
1935 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1936 0, 0, 0, 0, 0, 0, 0, 0, 2, 0,
1937 0, 0, 0, 0, 8, 9, 10, 11, 12, 13,
1938 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
1939 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1940 0, 0, 0, 0, 0, 0, 26, 0, 0, 0,
1941 0, 108, 109, 110, 27, 28, 0, 0, 0, 29,
1942 0, 0, 30, 31, 0, 32, 0, 33, 0, 0,
1943 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1944 34, 0, 111, 112, 0, 0, 0, 0, 0, 113,
1945 35, 36, 114, 0, 0, 115, 246, 116, 117, 0,
1946 0, 0, 0, 118, 119, 120, 121, 102, 0, 1,
1947 103, 104, 105, 0, 106, 107, 0, 0, 0, 0,
1948 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1949 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,
1950 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
1951 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
1952 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1953 0, 0, 26, 0, 0, 0, 0, 108, 109, 110,
1954 27, 28, 0, 0, 0, 29, 0, 0, 30, 31,
1955 0, 32, 0, 33, 0, 0, 0, 0, 0, 0,
1956 0, 0, 0, 0, 0, 0, 34, 0, 111, 112,
1957 0, 0, 0, 0, 0, 113, 35, 36, 114, 0,
1958 0, 236, 246, 116, 117, 0, 0, 0, 0, 118,
1959 119, 120, 121, 102, 0, 1, 103, 104, 105, 0,
1960 106, 107, 0, 0, 0, 0, 0, 0, 0, 0,
1961 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1962 2, 0, 0, 0, 0, 0, 8, 9, 10, 11,
1963 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
1964 22, 23, 24, 0, 0, 0, 0, 0, 0, 102,
1965 0, 1, 103, 104, 105, 0, 106, 107, 26, 0,
1966 0, 0, 0, 108, 109, 110, 27, 28, 0, 0,
1967 0, 29, 0, 0, 30, 31, 2, 32, 0, 33,
1968 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1969 0, 0, 34, 0, 111, 112, 0, 0, 0, 0,
1970 0, 113, 35, 36, 368, 0, 0, 369, 246, 116,
1971 117, 0, 0, 0, 0, 118, 119, 120, 121, 108,
1972 109, 110, 102, 0, 1, 103, 104, 105, 0, 106,
1973 107, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1974 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
1975 111, 112, 0, 0, 0, 0, 0, 113, 0, 0,
1976 114, 0, 0, 115, 0, 116, 117, 0, 0, 168,
1977 0, 118, 119, 120, 121, 0, 0, 0, 102, 0,
1978 1, 103, 104, 105, 0, 106, 107, 0, 0, 0,
1979 0, 0, 108, 109, 110, 0, 0, 0, 0, 0,
1980 0, 0, 0, 0, 102, 2, 1, 103, 104, 105,
1981 0, 106, 107, 0, 0, 0, 0, 0, 0, 0,
1982 0, 0, 0, 111, 112, 0, 0, 0, 0, 0,
1983 113, 2, 0, 114, 0, 0, 115, 0, 116, 117,
1984 0, 0, 322, 0, 118, 119, 120, 121, 108, 109,
1985 110, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1986 102, 0, 1, 103, 104, 105, 0, 106, 107, 0,
1987 0, 0, 0, 0, 108, 109, 110, 0, 0, 111,
1988 112, 0, 0, 0, 0, 0, 113, 2, 0, 114,
1989 0, 0, 115, 0, 116, 117, 0, 0, 325, 0,
1990 118, 119, 120, 121, 0, 111, 112, 0, 0, 0,
1991 0, 0, 113, 0, 0, 114, 0, 0, 115, 246,
1992 116, 117, 0, 0, 0, 0, 118, 119, 120, 121,
1993 108, 109, 110, 102, 0, 1, 103, 104, 105, 0,
1994 106, 107, 0, 0, 0, 0, 0, 0, 0, 0,
1995 0, 102, 0, 1, 103, 104, 105, 0, 106, 107,
1996 2, 111, 112, 0, 0, 0, 0, 0, 113, 0,
1997 0, 114, 0, 0, 115, 758, 116, 117, 2, 0,
1998 0, 0, 118, 119, 120, 121, 0, 0, 0, 0,
1999 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2000 0, 0, 0, 108, 109, 110, 0, 0, 0, 102,
2001 0, 1, 103, 104, 105, 0, 106, 107, 0, 0,
2002 0, 108, 109, 110, 0, 0, 0, 0, 0, 0,
2003 0, 0, 0, 0, 111, 112, 2, 0, 0, 0,
2004 0, 113, 0, 0, 114, 0, 0, 115, 837, 116,
2005 117, 0, 111, 112, 0, 118, 119, 120, 121, 113,
2006 0, 0, 114, 0, 0, 115, 0, 116, 117, 0,
2007 0, 0, 0, 118, 119, 120, 121, 0, 0, 108,
2008 109, 110, 102, 0, 1, 103, 104, 105, 0, 106,
2009 107, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2010 102, 0, 1, 103, 104, 105, 0, 106, 107, 2,
2011 111, 112, 0, 0, 0, 0, 0, 113, 0, 0,
2012 114, 0, 0, 231, 0, 116, 117, 2, 0, 0,
2013 0, 118, 119, 120, 121, 0, 0, 0, 0, 0,
2014 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2015 0, 0, 108, 109, 110, 0, 0, 0, 0, 0,
2016 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2017 108, 109, 110, 0, 0, 0, 0, 0, 0, 0,
2018 0, 0, 0, 111, 112, 0, 0, 0, 0, 0,
2019 113, 0, 0, 114, 0, 0, 236, 0, 116, 117,
2020 0, 111, 112, 1, 118, 119, 120, 121, 113, 0,
2021 0, 114, 0, 0, 244, 0, 116, 117, 0, 0,
2022 0, 0, 118, 119, 120, 121, 0, 0, 2, 3,
2023 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
2024 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2025 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2026 0, 0, 0, 0, 0, 0, 26, 0, 0, 0,
2027 0, 0, 0, 0, 27, 28, 0, 0, 0, 29,
2028 0, 0, 30, 31, 0, 32, 0, 33, 0, 0,
2029 0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
2030 34, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2031 35, 36, 69, 0, 0, 70, 0, 0, 0, 0,
2032 71, 0, 0, 72, 2, 3, 4, 5, 6, 7,
2033 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
2034 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
2035 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2036 0, 25, 26, 0, 0, 0, 0, 0, 0, 0,
2037 27, 28, 0, 0, 0, 29, 0, 0, 30, 31,
2038 0, 32, 0, 33, 0, 0, 0, 0, 0, 0,
2039 0, 0, 1, 0, 0, 0, 34, 0, 0, 0,
2040 0, 0, 0, 0, 0, 0, 35, 36, 69, 0,
2041 0, 70, 161, 0, 0, 0, 71, 2, 3, 4,
2042 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
2043 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
2044 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2045 0, 0, 0, 0, 25, 26, 0, 0, 0, 0,
2046 0, 0, 0, 27, 28, 0, 0, 0, 29, 0,
2047 0, 30, 31, 0, 32, 0, 33, 0, 0, 0,
2048 0, 0, 0, 0, 0, 1, 0, 0, 0, 34,
2049 0, 0, 0, 0, 0, 0, 0, 0, 0, 35,
2050 36, 69, 0, 0, 301, 161, 0, 0, 0, 71,
2051 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
2052 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
2053 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
2054 0, 0, 0, 0, 0, 0, 0, 0, 26, 0,
2055 0, 0, 0, 0, 0, 0, 27, 28, 0, 0,
2056 0, 29, 0, 0, 30, 31, 0, 32, 0, 33,
2057 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
2058 0, 0, 34, 0, 0, 0, 0, 0, 0, 0,
2059 0, 0, 35, 36, 69, 0, 0, 429, 0, 0,
2060 0, 0, 430, 2, 3, 4, 5, 6, 7, 8,
2061 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
2062 19, 20, 21, 22, 23, 24, 0, 0, 0, 0,
2063 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2064 0, 26, 0, 0, 0, 0, 0, 0, 0, 27,
2065 28, 0, 0, 0, 29, 0, 0, 30, 31, 0,
2066 32, 0, 33, 0, 0, 0, 0, 0, 0, 0,
2067 0, 1, 0, 0, 0, 34, 0, 0, 0, 0,
2068 0, 0, 0, 0, 0, 35, 36, 69, 0, 0,
2069 429, 0, 0, 0, 0, 442, 2, 3, 4, 5,
2070 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
2071 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
2072 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2073 0, 0, 0, 0, 26, 0, 0, 0, 0, 0,
2074 0, 0, 27, 28, 0, 0, 0, 29, 0, 0,
2075 30, 31, 0, 32, 0, 33, 0, 0, 0, 0,
2076 0, 0, 0, 0, 1, 0, 0, 0, 34, 0,
2077 0, 0, 0, 0, 0, 0, 0, 0, 35, 36,
2078 69, 0, 0, 301, 0, 0, 0, 0, 71, 2,
2079 3, 4, 5, 6, 7, 340, 341, 342, 343, 344,
2080 345, 346, 347, 348, 349, 18, 19, 350, 351, 22,
2081 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
2082 0, 0, 0, 0, 0, 0, 0, 353, 0, 0,
2083 0, 0, 0, 0, 0, 27, 28, 0, 0, 0,
2084 29, 0, 0, 0, 0, 0, 354, 0, 355, 0,
2085 0, 0, 0, 0, 0, 0, 0, 1, 0, 0,
2086 0, 356, 0, 0, 0, 0, 0, 0, 0, 0,
2087 0, 35, 36, 69, 0, 0, 429, 0, 0, 0,
2088 0, 618, 2, 3, 4, 5, 6, 7, 340, 341,
2089 342, 343, 344, 345, 346, 347, 348, 349, 18, 19,
2090 350, 351, 22, 23, 24, 0, 0, 0, 0, 0,
2091 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2092 353, 0, 0, 0, 0, 0, 0, 0, 27, 28,
2093 0, 0, 0, 29, 0, 0, 0, 0, 0, 354,
2094 0, 355, 0, 0, 0, 1, 0, 0, 0, 0,
2095 0, 0, 0, 0, 356, 0, 0, 0, 0, 0,
2096 0, 0, 0, 0, 35, 36, 69, 0, 0, 429,
2097 2, 0, 0, 0, 628, 0, 8, 9, 10, 11,
2098 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
2099 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
2100 0, 0, 0, 0, 0, 0, 0, 0, 26, 0,
2101 0, 0, 0, 0, 0, 0, 27, 28, 0, 0,
2102 0, 29, 0, 0, 30, 31, 0, 32, 0, 33,
2103 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
2104 0, 0, 34, 0, 0, 0, 0, 0, 0, 0,
2105 0, 0, 35, 36, 69, 0, 0, 301, 0, 0,
2106 0, 0, 71, 2, 3, 4, 5, 6, 7, 8,
2107 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
2108 19, 20, 21, 22, 23, 24, 0, 0, 0, 0,
2109 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2110 25, 26, 0, 0, 0, 0, 0, 0, 0, 27,
2111 28, 0, 0, 0, 29, 0, 0, 30, 31, 0,
2112 32, 0, 33, 0, 0, 0, 0, 1, 0, 0,
2113 0, 0, 0, 0, 0, 34, 0, 0, 0, 0,
2114 0, 0, 0, 0, 0, 35, 36, 69, 0, 0,
2115 429, 608, 2, 3, 4, 5, 6, 7, 8, 9,
2116 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
2117 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
2118 0, 0, 0, 0, 0, 0, 0, 0, 0, 25,
2119 26, 0, 0, 0, 0, 0, 0, 0, 27, 28,
2120 0, 0, 0, 29, 0, 0, 30, 31, 0, 32,
2121 0, 33, 0, 0, 0, 0, 1, 0, 0, 0,
2122 0, 0, 0, 0, 34, 0, 0, 0, 0, 0,
2123 0, 0, 0, 0, 35, 36, 0, 0, 0, 0,
2124 186, 2, 3, 4, 5, 6, 7, 8, 9, 10,
2125 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
2126 21, 22, 23, 24, 0, 0, 0, 0, 0, 0,
2127 0, 0, 0, 0, 0, 0, 0, 0, 25, 26,
2128 0, 0, 0, 0, 0, 0, 0, 27, 28, 0,
2129 0, 0, 29, 0, 0, 30, 31, 0, 32, 0,
2130 33, 0, 0, 0, 0, 1, 0, 0, 0, 0,
2131 0, 0, 0, 34, 0, 0, 0, 0, 0, 0,
2132 0, 0, 0, 35, 36, 0, 0, 0, 0, 320,
2133 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
2134 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
2135 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
2136 0, 0, 0, 0, 0, 0, 0, 25, 26, 0,
2137 0, 0, 0, 0, 0, 0, 27, 28, 0, 0,
2138 0, 29, 0, 0, 30, 31, 0, 32, 0, 33,
2139 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,
2140 0, 0, 34, 0, 0, 0, 0, 0, 0, 0,
2141 0, 0, 35, 36, 0, 0, 0, 0, 722, 2,
2142 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
2143 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
2144 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
2145 0, 0, 0, 0, 0, 0, 0, 26, 0, 0,
2146 0, 0, 0, 0, 0, 27, 28, 0, 0, 0,
2147 29, 0, 0, 30, 31, 0, 32, 0, 33, 0,
2148 0, 0, 1, 0, 0, 0, 0, 0, 0, 0,
2149 0, 34, 0, 0, 0, 0, 0, 0, 0, 0,
2150 0, 35, 36, 69, 0, 0, 172, 2, 3, 4,
2151 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
2152 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
2153 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2154 0, 0, 0, 0, 0, 26, 0, 0, 0, 0,
2155 0, 0, 0, 27, 28, 0, 0, 0, 29, 0,
2156 0, 30, 31, 0, 32, 0, 33, 0, 0, 0,
2157 1, 0, 0, 0, 0, 0, 0, 0, 0, 34,
2158 0, 0, 0, 0, 0, 0, 0, 0, 0, 35,
2159 36, 0, 0, 0, 542, 2, 3, 4, 5, 6,
2160 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
2161 17, 18, 19, 20, 21, 22, 23, 24, 514, 0,
2162 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2163 0, 0, 25, 26, 0, 0, 0, 0, 0, 0,
2164 0, 27, 28, 0, 0, 0, 29, 0, 0, 30,
2165 31, 0, 32, 0, 33, 1, 0, 0, 0, 0,
2166 0, 0, 0, 0, 0, 0, 0, 34, 0, 0,
2167 0, 0, 0, 0, 0, 0, 0, 35, 36, 0,
2168 2, 3, 4, 5, 6, 7, 8, 9, 10, 11,
2169 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
2170 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
2171 0, 0, 0, 0, 0, 0, 0, 25, 26, 0,
2172 0, 0, 0, 0, 0, 0, 27, 28, 0, 0,
2173 0, 29, 0, 0, 30, 31, 0, 32, 0, 33,
2174 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2175 0, 0, 34, 0, 0, 0, 0, 0, 0, 0,
2176 0, 0, 35, 36, 0, 2, 3, 4, 5, 6,
2177 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
2178 17, 18, 19, 20, 21, 22, 23, 24, 0, 0,
2179 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2180 0, 0, 0, 26, 0, 0, 0, 0, 0, 0,
2181 0, 27, 28, 0, 0, 0, 29, 0, 0, 30,
2182 31, 0, 32, 0, 33, 1, 0, 0, 0, 0,
2183 0, 0, 0, 0, 0, 0, 0, 34, 0, 0,
2184 0, 0, 0, 0, 0, 0, 0, 35, 36, 0,
2185 2, 3, 4, 5, 6, 7, 340, 341, 342, 343,
2186 344, 345, 346, 347, 348, 349, 18, 19, 350, 351,
2187 22, 23, 352, 0, 0, 0, 0, 0, 0, 0,
2188 0, 0, 0, 0, 0, 0, 0, 0, 353, 0,
2189 0, 0, 0, 0, 0, 0, 27, 28, 0, 0,
2190 0, 29, 0, 0, 0, 0, 0, 354, 0, 355,
2191 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2192 0, 0, 356, 0, 0, 0, 0, 0, 0, 0,
2193 0, 0, 35, 36, 0, 2, 3, 4, 5, 6,
2194 7, 340, 341, 342, 343, 344, 345, 346, 347, 348,
2195 349, 18, 19, 350, 351, 22, 23, 24, 0, 0,
2196 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2197 0, 0, 0, 353, 0, 0, 0, 0, 0, 0,
2198 0, 27, 28, 0, 0, 0, 29, 0, 0, 0,
2199 0, 0, 354, 0, 355, 0, 0, 0, 0, 0,
2200 0, 0, 0, 0, 0, 0, 0, 356, 0, 0,
2201 0, 0, 0, 0, 0, 0, 0, 35, 36
2204 static const yytype_int16 yycheck[] =
2206 0, 43, 257, 85, 261, 117, 129, 379, 0, 373,
2207 194, 242, 195, 194, 17, 339, 3, 88, 275, 194,
2208 43, 373, 122, 206, 24, 3, 194, 531, 76, 3,
2209 72, 3, 431, 3, 811, 434, 136, 3, 62, 3,
2210 88, 3, 42, 43, 70, 3, 115, 24, 683, 69,
2211 64, 3, 69, 3, 54, 70, 28, 3, 3, 59,
2212 241, 3, 243, 63, 64, 70, 241, 113, 243, 113,
2213 70, 70, 72, 69, 74, 115, 76, 54, 28, 122,
2214 857, 112, 28, 28, 69, 85, 69, 70, 88, 135,
2215 90, 135, 122, 136, 94, 113, 127, 128, 132, 181,
2216 100, 101, 74, 75, 134, 176, 3, 79, 108, 180,
2217 136, 111, 122, 617, 62, 3, 136, 94, 115, 136,
2218 134, 136, 132, 123, 43, 112, 113, 762, 131, 152,
2219 121, 136, 180, 122, 112, 113, 0, 136, 110, 111,
2220 136, 115, 112, 113, 135, 134, 133, 147, 135, 149,
2221 116, 136, 152, 136, 277, 278, 279, 135, 106, 107,
2222 135, 208, 162, 135, 116, 135, 670, 115, 0, 426,
2223 132, 135, 172, 135, 174, 359, 176, 135, 359, 90,
2224 180, 181, 3, 366, 359, 135, 3, 187, 121, 135,
2225 190, 359, 135, 135, 194, 195, 196, 197, 429, 563,
2226 564, 525, 135, 458, 204, 436, 206, 207, 208, 124,
2227 125, 563, 115, 444, 613, 112, 216, 194, 115, 115,
2228 220, 221, 222, 727, 112, 113, 249, 227, 1, 115,
2229 3, 231, 64, 152, 120, 11, 79, 261, 70, 239,
2230 240, 241, 242, 243, 244, 122, 317, 112, 196, 249,
2231 115, 275, 436, 85, 302, 436, 304, 134, 258, 136,
2232 444, 436, 262, 444, 241, 637, 243, 110, 111, 444,
2233 122, 285, 286, 114, 288, 135, 108, 133, 122, 111,
2234 463, 122, 134, 231, 12, 13, 300, 206, 236, 132,
2235 134, 305, 136, 196, 308, 112, 244, 208, 115, 300,
2236 300, 301, 121, 120, 305, 305, 122, 122, 308, 220,
2237 221, 222, 231, 261, 314, 263, 135, 317, 134, 134,
2238 575, 240, 314, 242, 3, 244, 115, 275, 5, 122,
2239 330, 120, 455, 236, 698, 114, 359, 3, 114, 112,
2240 113, 134, 112, 122, 456, 115, 122, 429, 296, 181,
2241 120, 116, 352, 114, 401, 135, 403, 122, 405, 359,
2242 263, 122, 28, 195, 364, 197, 366, 3, 114, 369,
2243 370, 371, 115, 373, 300, 352, 122, 120, 44, 305,
2244 380, 123, 359, 383, 384, 113, 114, 364, 69, 70,
2245 390, 129, 392, 296, 417, 74, 75, 397, 116, 656,
2246 79, 401, 426, 403, 122, 405, 406, 407, 74, 75,
2247 410, 130, 412, 16, 105, 415, 116, 417, 220, 221,
2248 222, 369, 113, 423, 448, 373, 116, 427, 116, 429,
2249 133, 110, 111, 116, 122, 122, 436, 95, 74, 75,
2250 7, 8, 9, 79, 444, 105, 116, 366, 121, 449,
2251 116, 109, 371, 113, 112, 136, 135, 116, 1, 436,
2252 3, 135, 510, 463, 116, 116, 369, 444, 300, 301,
2253 122, 122, 134, 305, 110, 111, 308, 116, 426, 115,
2254 428, 134, 314, 122, 507, 116, 135, 7, 8, 9,
2255 401, 122, 403, 135, 405, 406, 407, 116, 417, 410,
2256 448, 412, 116, 122, 116, 529, 119, 507, 122, 69,
2257 70, 133, 767, 69, 70, 3, 116, 531, 560, 121,
2258 116, 7, 8, 9, 182, 428, 122, 185, 10, 11,
2259 530, 531, 614, 7, 8, 9, 121, 537, 43, 539,
2260 116, 541, 115, 590, 115, 592, 593, 594, 115, 549,
2261 115, 551, 119, 120, 3, 555, 113, 557, 14, 15,
2262 560, 136, 539, 563, 564, 70, 133, 72, 226, 112,
2263 113, 76, 116, 116, 116, 523, 136, 577, 578, 122,
2264 136, 529, 582, 88, 134, 135, 74, 75, 507, 115,
2265 590, 79, 592, 593, 594, 115, 120, 429, 115, 119,
2266 120, 549, 113, 617, 406, 407, 554, 120, 410, 116,
2267 412, 121, 122, 133, 614, 563, 564, 617, 121, 122,
2268 523, 116, 110, 111, 112, 74, 75, 115, 132, 115,
2269 79, 116, 656, 119, 120, 280, 281, 136, 638, 3,
2270 136, 115, 282, 283, 132, 119, 120, 116, 3, 100,
2271 101, 554, 74, 75, 289, 290, 670, 79, 115, 134,
2272 115, 110, 111, 112, 28, 665, 115, 172, 115, 174,
2273 670, 176, 115, 28, 134, 180, 134, 3, 678, 590,
2274 44, 592, 593, 594, 136, 190, 116, 116, 110, 111,
2275 690, 196, 113, 693, 116, 121, 0, 120, 698, 531,
2276 120, 206, 28, 121, 136, 116, 706, 116, 656, 709,
2277 74, 75, 56, 727, 120, 1, 135, 3, 44, 74,
2278 75, 134, 132, 381, 79, 133, 768, 727, 132, 136,
2279 678, 679, 680, 681, 116, 683, 121, 121, 121, 43,
2280 121, 115, 690, 121, 121, 134, 770, 64, 74, 75,
2281 698, 54, 113, 291, 754, 110, 111, 136, 758, 63,
2282 64, 761, 426, 136, 136, 136, 70, 71, 768, 136,
2283 136, 136, 430, 773, 774, 134, 679, 680, 681, 136,
2284 136, 85, 614, 292, 442, 617, 90, 811, 74, 75,
2285 116, 293, 768, 79, 294, 243, 122, 295, 389, 799,
2286 800, 395, 802, 578, 108, 805, 754, 111, 463, 244,
2287 758, 115, 317, 761, 762, 308, 563, 647, -1, 476,
2288 476, -1, 770, -1, 110, 111, 112, 113, 227, 115,
2289 116, -1, 476, 857, 120, 74, 75, 837, 670, -1,
2290 79, -1, 1, -1, 3, 4, 5, -1, 152, -1,
2291 -1, 799, 800, 853, 802, 803, 856, 805, 806, 3,
2292 -1, 43, -1, 811, 369, -1, 44, 45, -1, 28,
2293 -1, 110, 111, -1, -1, 380, -1, 181, 182, 384,
2294 -1, 185, -1, -1, -1, 390, 544, -1, 70, 837,
2295 72, 195, -1, 197, 76, 727, 74, 75, -1, -1,
2296 803, 79, 206, 806, 208, 853, 88, -1, 856, 857,
2297 -1, -1, 71, 72, 74, 75, 220, 221, 222, 79,
2298 -1, -1, 580, -1, -1, -1, -1, 231, -1, -1,
2299 74, 75, 110, 111, 112, 79, 240, -1, 242, -1,
2300 244, 3, -1, 102, 103, 249, -1, -1, -1, -1,
2301 110, 111, 256, 257, -1, -1, 115, 615, 463, 118,
2302 618, -1, -1, -1, -1, -1, 110, 111, -1, 627,
2303 628, 115, -1, 133, -1, -1, 120, 18, 19, 20,
2304 21, 22, 23, 24, 25, 26, 27, -1, -1, -1,
2305 172, -1, 174, -1, 176, -1, 300, 301, 180, -1,
2306 43, 305, -1, -1, 308, -1, -1, -1, 190, -1,
2307 314, 54, 74, 75, 196, -1, -1, 79, -1, -1,
2308 -1, -1, -1, -1, -1, 207, -1, 70, -1, 72,
2309 -1, -1, -1, -1, 216, -1, 541, -1, -1, -1,
2310 83, 549, -1, -1, -1, 88, -1, 90, 110, 111,
2311 112, -1, -1, 115, 116, 560, 564, -1, -1, -1,
2312 -1, -1, 366, -1, -1, 369, -1, 371, -1, 373,
2313 728, -1, 577, 578, 732, -1, -1, 582, -1, -1,
2314 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2315 -1, -1, 133, -1, -1, -1, -1, 401, -1, 403,
2316 -1, 405, 406, 407, -1, -1, 410, 765, 412, 152,
2317 -1, -1, 43, 417, -1, -1, -1, -1, 776, -1,
2318 -1, 164, -1, -1, -1, 429, -1, -1, -1, 172,
2319 -1, -1, 175, 176, -1, 317, -1, 180, 69, 70,
2320 -1, 72, -1, -1, -1, 76, -1, -1, -1, -1,
2321 -1, -1, 195, 196, 458, -1, -1, -1, -1, 463,
2322 -1, -1, -1, 206, -1, 208, -1, -1, -1, -1,
2323 678, -1, 476, 216, -1, -1, -1, 220, 221, 222,
2324 -1, -1, 690, -1, -1, -1, -1, 369, -1, -1,
2325 698, -1, -1, -1, -1, -1, -1, 240, 380, 242,
2326 -1, 706, 384, 507, 709, -1, 249, -1, 390, 90,
2327 392, -1, -1, -1, -1, 397, -1, -1, -1, -1,
2328 -1, 152, -1, -1, -1, -1, 530, 531, 159, -1,
2329 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2330 -1, 172, 43, 174, -1, -1, 754, -1, -1, -1,
2331 758, -1, -1, 761, -1, -1, 560, -1, 301, 563,
2332 564, -1, -1, 768, -1, 196, -1, -1, 773, 774,
2333 -1, 575, -1, -1, 317, 206, 207, -1, -1, -1,
2334 -1, 43, -1, -1, -1, -1, 590, -1, 592, 593,
2335 594, 799, 800, -1, 802, -1, -1, 805, -1, -1,
2336 -1, -1, -1, -1, -1, -1, -1, 69, -1, 240,
2337 614, 242, -1, 617, 115, -1, 359, -1, 249, -1,
2338 -1, 364, -1, 366, -1, -1, 369, 208, -1, 837,
2339 -1, -1, -1, -1, -1, -1, -1, 380, -1, 220,
2340 221, 222, -1, -1, -1, 853, -1, 390, 856, -1,
2341 -1, 152, -1, 115, -1, -1, -1, -1, 401, 541,
2342 403, -1, 405, 406, 407, -1, 670, 410, -1, 412,
2343 301, 302, -1, -1, 417, 256, 257, -1, 560, -1,
2344 -1, -1, -1, -1, -1, -1, 429, -1, -1, -1,
2345 152, -1, -1, 436, 698, 577, -1, 159, -1, -1,
2346 582, 444, -1, -1, -1, 206, -1, -1, -1, -1,
2347 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2348 463, -1, -1, 727, -1, 43, -1, -1, 359, -1,
2349 231, -1, 194, -1, -1, -1, -1, 368, 369, 240,
2350 241, 242, 243, 244, 206, -1, -1, -1, 249, 380,
2351 -1, -1, -1, 384, -1, 256, 257, -1, -1, -1,
2352 -1, -1, -1, 767, 507, -1, -1, -1, -1, 231,
2353 -1, -1, -1, -1, -1, -1, -1, -1, 240, 241,
2354 242, 243, 244, -1, -1, -1, 417, 249, -1, 43,
2355 -1, -1, -1, -1, 256, 257, -1, 115, 429, -1,
2356 431, -1, -1, -1, -1, 436, -1, -1, -1, -1,
2357 -1, -1, -1, 444, 395, -1, -1, 560, -1, -1,
2358 401, -1, 403, -1, 405, 406, 407, -1, -1, 410,
2359 -1, 412, 463, -1, 152, 578, 43, -1, -1, -1,
2360 -1, -1, -1, -1, -1, -1, -1, 590, -1, 592,
2361 593, 594, -1, -1, -1, -1, -1, -1, -1, -1,
2362 -1, -1, -1, -1, -1, 366, -1, -1, 369, -1,
2363 371, -1, 373, -1, -1, -1, 507, 458, -1, -1,
2364 -1, -1, -1, -1, -1, -1, 768, -1, 206, -1,
2365 -1, -1, -1, -1, -1, 476, -1, 359, 152, -1,
2366 -1, -1, -1, -1, 366, -1, 368, 369, 115, 371,
2367 541, 373, -1, 231, -1, -1, 417, -1, -1, -1,
2368 -1, -1, 240, 241, 242, 243, 244, -1, -1, 560,
2369 71, 249, -1, -1, -1, 436, -1, -1, 256, 257,
2370 194, -1, -1, 444, -1, 152, -1, 578, -1, -1,
2371 -1, -1, 206, 696, 95, 417, 1, 458, 3, 4,
2372 5, 6, 463, 8, 9, -1, 709, -1, 109, -1,
2373 -1, 112, -1, -1, 436, 476, -1, -1, 200, 201,
2374 202, 203, 444, 28, -1, -1, 240, 241, 242, 243,
2375 -1, -1, -1, -1, 575, -1, 458, -1, -1, 206,
2376 -1, 463, 256, 257, -1, -1, 507, -1, -1, 590,
2377 -1, 592, 593, 594, 476, -1, -1, -1, -1, -1,
2378 -1, -1, -1, -1, 231, 768, 71, 72, 73, -1,
2379 -1, -1, -1, 240, -1, 242, -1, 244, -1, -1,
2380 -1, 182, 249, -1, 185, 507, -1, -1, 366, 256,
2381 257, 369, -1, 371, -1, 373, -1, 102, 103, 560,
2382 -1, -1, 563, 564, 109, -1, 647, 112, -1, -1,
2383 115, -1, 117, 118, 575, 706, -1, -1, 123, 124,
2384 125, 126, -1, -1, -1, 226, -1, -1, -1, -1,
2385 135, 136, -1, -1, -1, -1, -1, -1, 560, 417,
2386 -1, 563, 564, -1, -1, 359, -1, -1, -1, -1,
2387 -1, -1, 366, 575, -1, 256, 257, 371, 436, 373,
2388 -1, -1, -1, -1, -1, -1, 444, -1, -1, -1,
2389 -1, -1, -1, -1, -1, -1, -1, 768, -1, -1,
2390 458, -1, -1, -1, -1, 463, -1, -1, -1, -1,
2391 -1, -1, -1, -1, -1, -1, -1, -1, 476, 366,
2392 -1, -1, 369, -1, 371, -1, 373, -1, -1, -1,
2393 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2394 -1, -1, 436, -1, -1, -1, 767, -1, -1, 507,
2395 444, -1, -1, -1, -1, -1, -1, 698, -1, -1,
2396 -1, -1, -1, -1, 458, -1, -1, -1, -1, 463,
2397 417, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2398 -1, -1, 476, -1, -1, 1, -1, 3, 4, 5,
2399 6, -1, 8, 9, -1, -1, 698, -1, 379, -1,
2400 381, -1, 560, -1, -1, 563, 564, -1, -1, 471,
2401 -1, 458, 28, 507, -1, -1, 463, 575, -1, -1,
2402 -1, -1, -1, -1, -1, -1, 767, -1, -1, 476,
2403 -1, -1, -1, -1, -1, -1, 52, 53, 54, 55,
2404 56, 57, 58, 59, 60, 61, 62, -1, -1, 430,
2405 -1, -1, -1, -1, -1, 71, 72, 73, -1, -1,
2406 507, 442, -1, -1, -1, 767, 560, -1, -1, 563,
2407 564, -1, -1, -1, -1, -1, -1, 458, -1, -1,
2408 -1, 575, -1, -1, -1, -1, 102, 103, -1, -1,
2409 -1, -1, -1, 109, -1, 476, 112, -1, -1, 115,
2410 -1, 117, 118, -1, -1, -1, -1, 123, 124, 125,
2411 126, -1, -1, 560, -1, -1, 563, 564, 134, 135,
2412 -1, -1, -1, -1, -1, -1, -1, -1, 575, -1,
2413 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2414 698, -1, -1, 1, -1, 3, 4, 5, -1, -1,
2415 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2416 -1, -1, -1, 544, -1, -1, -1, -1, -1, -1,
2417 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2418 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2419 48, 49, 50, -1, 575, -1, -1, -1, -1, 580,
2420 -1, -1, -1, -1, 698, 667, 668, -1, 66, 767,
2421 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
2422 78, 79, -1, -1, 82, 83, -1, 85, -1, 87,
2423 -1, -1, -1, -1, 615, -1, -1, 618, -1, -1,
2424 -1, -1, 100, -1, 102, 103, 627, 628, -1, -1,
2425 -1, 698, 110, 111, 112, -1, 637, 115, -1, 117,
2426 118, -1, -1, -1, -1, -1, 647, -1, -1, -1,
2427 -1, -1, -1, 767, -1, -1, 134, 658, 136, -1,
2428 -1, -1, -1, -1, -1, 747, 748, -1, 750, 751,
2429 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2430 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2431 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2432 767, -1, -1, -1, 786, -1, 788, -1, -1, -1,
2433 -1, -1, -1, 795, 796, -1, -1, -1, -1, -1,
2434 -1, -1, -1, -1, -1, -1, -1, 728, -1, -1,
2435 -1, 732, -1, -1, -1, -1, -1, -1, -1, -1,
2436 822, -1, 824, -1, 826, -1, 828, -1, -1, 1,
2437 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2438 -1, -1, -1, -1, 765, -1, 767, 849, -1, 851,
2439 -1, -1, -1, -1, -1, 776, 28, 29, 30, 31,
2440 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2441 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2442 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
2443 62, -1, -1, -1, 66, -1, -1, -1, -1, 71,
2444 72, 73, 74, 75, -1, 77, -1, 79, -1, -1,
2445 82, 83, -1, 85, -1, 87, -1, -1, -1, -1,
2446 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
2447 102, 103, -1, -1, -1, -1, -1, 109, 110, 111,
2448 112, -1, -1, 115, -1, 117, 118, -1, -1, -1,
2449 -1, 123, 124, 125, 126, -1, -1, -1, -1, -1,
2450 -1, -1, 134, 135, 136, 1, -1, 3, 4, 5,
2451 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
2452 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2453 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
2454 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2455 46, 47, 48, 49, 50, -1, 52, 53, 54, 55,
2456 56, 57, 58, 59, 60, 61, 62, -1, -1, -1,
2457 66, -1, -1, -1, -1, 71, 72, 73, 74, 75,
2458 -1, 77, -1, 79, -1, -1, 82, 83, -1, 85,
2459 -1, 87, -1, -1, -1, -1, -1, -1, -1, -1,
2460 -1, -1, -1, -1, 100, -1, 102, 103, -1, -1,
2461 -1, -1, -1, 109, 110, 111, 112, -1, -1, 115,
2462 -1, 117, 118, -1, -1, -1, -1, 123, 124, 125,
2463 126, -1, -1, -1, -1, -1, -1, -1, 134, 135,
2464 136, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2465 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2466 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2467 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2468 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2469 50, -1, 52, 53, 54, 55, 56, 57, 58, 59,
2470 60, 61, 62, -1, -1, -1, 66, -1, -1, -1,
2471 -1, 71, 72, 73, 74, 75, -1, 77, -1, 79,
2472 -1, -1, 82, 83, -1, 85, -1, 87, -1, -1,
2473 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2474 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2475 110, 111, 112, -1, -1, 115, -1, 117, 118, -1,
2476 -1, -1, -1, 123, 124, 125, 126, -1, -1, -1,
2477 -1, -1, -1, -1, 134, 135, 136, 1, -1, 3,
2478 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
2479 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2480 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
2481 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2482 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
2483 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2484 -1, -1, 66, -1, -1, -1, -1, 71, 72, 73,
2485 74, 75, -1, -1, -1, 79, -1, -1, 82, 83,
2486 -1, 85, -1, 87, -1, -1, -1, -1, -1, -1,
2487 -1, -1, -1, -1, -1, -1, 100, -1, 102, 103,
2488 -1, -1, -1, -1, -1, 109, 110, 111, 112, -1,
2489 -1, 115, -1, 117, 118, -1, -1, -1, -1, 123,
2490 124, 125, 126, -1, -1, -1, -1, -1, -1, -1,
2491 134, 135, 136, 1, -1, 3, 4, 5, 6, -1,
2492 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
2493 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2494 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2495 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2496 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2497 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2498 -1, -1, -1, 71, 72, 73, 74, 75, -1, -1,
2499 -1, 79, -1, -1, 82, 83, -1, 85, -1, 87,
2500 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2501 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2502 -1, 109, 110, 111, 112, -1, -1, 115, -1, 117,
2503 118, -1, -1, -1, -1, 123, 124, 125, 126, -1,
2504 -1, -1, -1, -1, -1, -1, 134, 135, 136, 1,
2505 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2506 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2507 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
2508 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2509 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2510 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2511 -1, -1, -1, -1, 66, -1, -1, -1, -1, 71,
2512 72, 73, 74, 75, -1, -1, -1, 79, -1, -1,
2513 82, 83, -1, 85, -1, 87, -1, -1, -1, -1,
2514 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
2515 102, 103, -1, -1, -1, -1, -1, 109, 110, 111,
2516 112, -1, -1, 115, -1, 117, 118, -1, -1, -1,
2517 -1, 123, 124, 125, 126, -1, -1, -1, -1, -1,
2518 -1, -1, 134, 135, 136, 1, -1, 3, 4, 5,
2519 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
2520 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2521 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
2522 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2523 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2524 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2525 66, -1, -1, -1, -1, 71, 72, 73, 74, 75,
2526 -1, -1, -1, 79, -1, -1, 82, 83, -1, 85,
2527 -1, 87, -1, -1, -1, -1, -1, -1, -1, -1,
2528 -1, -1, -1, -1, 100, -1, 102, 103, -1, -1,
2529 -1, -1, -1, 109, 110, 111, 112, -1, -1, 115,
2530 -1, 117, 118, -1, -1, -1, -1, 123, 124, 125,
2531 126, -1, -1, -1, -1, -1, -1, -1, 134, 135,
2532 136, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2533 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2534 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2535 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2536 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2537 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2538 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2539 -1, 71, 72, 73, 74, 75, -1, -1, -1, 79,
2540 -1, -1, 82, 83, -1, 85, -1, 87, -1, -1,
2541 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2542 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2543 110, 111, 112, -1, -1, 115, -1, 117, 118, -1,
2544 -1, -1, -1, 123, 124, 125, 126, -1, -1, -1,
2545 -1, -1, -1, -1, 134, 135, 136, 1, -1, 3,
2546 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
2547 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2548 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
2549 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2550 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
2551 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2552 -1, -1, 66, -1, -1, -1, -1, 71, 72, 73,
2553 74, 75, -1, -1, -1, 79, -1, -1, 82, 83,
2554 -1, 85, -1, 87, -1, -1, -1, -1, -1, -1,
2555 -1, -1, -1, -1, -1, -1, 100, -1, 102, 103,
2556 -1, -1, -1, -1, -1, 109, 110, 111, 112, -1,
2557 -1, 115, -1, 117, 118, -1, -1, -1, -1, 123,
2558 124, 125, 126, 1, -1, 3, 4, 5, -1, -1,
2559 134, 135, 136, -1, -1, -1, -1, -1, -1, -1,
2560 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2561 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2562 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2563 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2564 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2565 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
2566 78, 79, -1, -1, 82, 83, -1, 85, -1, 87,
2567 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2568 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2569 -1, -1, 110, 111, 112, -1, -1, 115, -1, 117,
2570 118, 1, -1, 3, 4, 5, -1, -1, -1, -1,
2571 -1, -1, -1, -1, -1, -1, 134, -1, 136, -1,
2572 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2573 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2574 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2575 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2576 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2577 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2578 -1, -1, 82, 83, -1, 85, -1, 87, -1, -1,
2579 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2580 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2581 110, 111, 112, -1, -1, 115, -1, 117, 118, 1,
2582 -1, 3, 4, 5, -1, -1, -1, -1, -1, -1,
2583 -1, -1, -1, -1, 134, -1, 136, -1, -1, -1,
2584 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
2585 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2586 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2587 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2588 -1, -1, -1, -1, 66, -1, 68, -1, -1, 71,
2589 72, -1, 74, 75, -1, -1, 78, 79, -1, -1,
2590 82, 83, -1, 85, -1, 87, -1, -1, -1, -1,
2591 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
2592 102, 103, -1, -1, -1, -1, -1, -1, 110, 111,
2593 112, -1, -1, 115, -1, 117, 118, 1, -1, 3,
2594 4, 5, -1, -1, -1, -1, -1, -1, -1, -1,
2595 -1, -1, 134, -1, 136, -1, -1, -1, -1, -1,
2596 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
2597 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2598 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
2599 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2600 -1, -1, 66, -1, 68, -1, -1, 71, 72, -1,
2601 74, 75, -1, -1, 78, 79, -1, -1, 82, 83,
2602 -1, 85, -1, 87, -1, -1, -1, -1, -1, -1,
2603 -1, -1, -1, -1, -1, -1, 100, -1, 102, 103,
2604 -1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
2605 -1, 115, -1, 117, 118, 1, -1, 3, 4, 5,
2606 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2607 134, -1, 136, -1, -1, -1, -1, -1, -1, -1,
2608 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
2609 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2610 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2611 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2612 66, -1, 68, -1, -1, 71, 72, -1, 74, 75,
2613 -1, -1, 78, 79, -1, -1, 82, 83, -1, 85,
2614 -1, 87, -1, -1, -1, -1, -1, -1, -1, -1,
2615 -1, -1, -1, -1, 100, -1, 102, 103, -1, -1,
2616 -1, -1, -1, -1, 110, 111, 112, -1, -1, 115,
2617 -1, 117, 118, 1, -1, 3, 4, 5, -1, -1,
2618 -1, -1, -1, -1, -1, -1, -1, -1, 134, -1,
2619 136, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2620 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2621 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2622 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2623 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2624 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
2625 78, 79, -1, -1, 82, 83, -1, 85, -1, 87,
2626 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2627 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2628 -1, -1, 110, 111, 112, -1, -1, 115, -1, 117,
2629 118, 1, -1, 3, 4, 5, -1, -1, -1, -1,
2630 -1, -1, -1, -1, -1, -1, 134, -1, 136, -1,
2631 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2632 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2633 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2634 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2635 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2636 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2637 -1, -1, 82, 83, -1, 85, -1, 87, -1, -1,
2638 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2639 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2640 110, 111, 112, -1, -1, 115, -1, 117, 118, 1,
2641 -1, 3, 4, 5, -1, -1, -1, -1, -1, -1,
2642 -1, -1, -1, -1, 134, -1, 136, -1, -1, -1,
2643 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
2644 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2645 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2646 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2647 -1, -1, -1, -1, 66, -1, 68, -1, -1, 71,
2648 72, -1, 74, 75, -1, -1, 78, 79, -1, -1,
2649 82, 83, -1, 85, -1, 87, -1, -1, -1, -1,
2650 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
2651 102, 103, -1, -1, -1, -1, -1, -1, 110, 111,
2652 112, -1, -1, 115, -1, 117, 118, 1, -1, 3,
2653 4, 5, -1, -1, -1, -1, -1, -1, -1, -1,
2654 -1, -1, 134, -1, 136, -1, -1, -1, -1, -1,
2655 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
2656 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2657 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
2658 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2659 -1, -1, 66, -1, 68, -1, -1, 71, 72, -1,
2660 74, 75, -1, -1, 78, 79, -1, -1, 82, 83,
2661 -1, 85, -1, 87, -1, -1, -1, -1, -1, -1,
2662 -1, -1, -1, -1, -1, -1, 100, -1, 102, 103,
2663 -1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
2664 -1, 115, -1, 117, 118, 1, -1, 3, 4, 5,
2665 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2666 134, -1, 136, -1, -1, -1, -1, -1, -1, -1,
2667 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
2668 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2669 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2670 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2671 66, -1, 68, -1, -1, 71, 72, -1, 74, 75,
2672 -1, -1, 78, 79, -1, -1, 82, 83, -1, 85,
2673 -1, 87, -1, -1, -1, -1, -1, -1, -1, -1,
2674 -1, -1, -1, -1, 100, -1, 102, 103, -1, -1,
2675 -1, -1, -1, -1, 110, 111, 112, -1, -1, 115,
2676 -1, 117, 118, 1, -1, 3, 4, 5, -1, -1,
2677 -1, -1, -1, -1, -1, -1, -1, -1, 134, -1,
2678 136, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2679 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2680 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2681 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2682 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2683 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
2684 78, 79, -1, -1, 82, 83, -1, 85, -1, 87,
2685 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2686 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2687 -1, -1, 110, 111, 112, -1, -1, 115, -1, 117,
2688 118, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2689 -1, -1, -1, -1, -1, -1, 134, -1, 136, -1,
2690 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2691 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2692 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2693 50, -1, 52, 53, 54, 55, 56, 57, 58, 59,
2694 60, 61, 62, -1, -1, -1, 66, -1, -1, -1,
2695 -1, 71, 72, 73, 74, 75, -1, 77, -1, 79,
2696 -1, -1, 82, 83, -1, 85, 1, 87, 3, 4,
2697 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
2698 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2699 110, 111, 112, 28, -1, 115, -1, 117, 118, -1,
2700 -1, -1, -1, 123, 124, 125, 126, -1, -1, -1,
2701 -1, -1, -1, -1, 134, 135, -1, -1, -1, -1,
2702 -1, -1, 1, -1, 3, 4, 5, 6, -1, 8,
2703 9, -1, -1, -1, -1, -1, 71, 72, 73, -1,
2704 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
2705 -1, -1, -1, -1, -1, -1, -1, 1, -1, 3,
2706 4, 5, 6, -1, 8, 9, -1, 102, 103, -1,
2707 -1, -1, -1, -1, 109, -1, -1, 112, -1, -1,
2708 115, 116, 117, 118, 28, -1, -1, -1, 123, 124,
2709 125, 126, 71, 72, 73, -1, -1, -1, -1, -1,
2710 135, -1, -1, -1, -1, 1, -1, 3, 4, 5,
2711 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
2712 -1, -1, -1, 102, 103, -1, -1, 71, 72, 73,
2713 109, -1, 28, 112, -1, -1, 115, 116, 117, 118,
2714 -1, -1, -1, -1, 123, 124, 125, 126, -1, -1,
2715 -1, -1, -1, -1, -1, -1, 135, -1, 102, 103,
2716 -1, -1, -1, -1, -1, 109, -1, -1, 112, -1,
2717 -1, 115, -1, 117, 118, 71, 72, 73, -1, 123,
2718 124, 125, 126, -1, -1, -1, -1, -1, -1, -1,
2719 -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,
2720 -1, -1, -1, -1, -1, -1, 102, 103, -1, -1,
2721 -1, -1, -1, 109, -1, -1, 112, -1, -1, 115,
2722 -1, 117, 118, -1, -1, -1, -1, 123, 124, 125,
2723 126, 1, -1, 3, 4, 5, -1, -1, -1, 135,
2724 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2725 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2726 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2727 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2728 50, -1, -1, 1, -1, 3, 4, 5, 6, -1,
2729 8, 9, -1, -1, -1, -1, 66, -1, 68, -1,
2730 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2731 28, -1, 82, 83, -1, 85, 1, 87, 3, 4,
2732 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
2733 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2734 110, 111, 112, 28, -1, 115, -1, 117, 118, -1,
2735 -1, -1, -1, 71, 72, 73, -1, -1, -1, -1,
2736 -1, -1, -1, -1, 134, 1, -1, 3, 4, 5,
2737 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
2738 -1, -1, -1, -1, 102, 103, 71, 72, 73, -1,
2739 -1, 109, 28, -1, 112, -1, -1, 115, 116, 117,
2740 118, -1, -1, -1, -1, 123, 124, 125, 126, -1,
2741 -1, -1, -1, -1, -1, -1, 134, 102, 103, -1,
2742 -1, -1, -1, -1, 109, -1, -1, 112, -1, -1,
2743 115, 116, 117, 118, -1, 71, 72, 73, 123, 124,
2744 125, 126, -1, -1, -1, -1, -1, -1, -1, 134,
2745 -1, -1, -1, 1, -1, 3, 4, 5, 6, -1,
2746 8, 9, -1, -1, -1, -1, 102, 103, -1, -1,
2747 -1, -1, -1, 109, 3, -1, 112, -1, -1, 115,
2748 28, 117, 118, -1, -1, -1, -1, 123, 124, 125,
2749 126, -1, -1, -1, -1, -1, -1, -1, 134, 28,
2750 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2751 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2752 49, 50, -1, 71, 72, 73, 74, 75, -1, -1,
2753 -1, 79, -1, -1, -1, -1, -1, 66, -1, -1,
2754 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
2755 79, -1, -1, -1, 102, 103, 85, -1, 87, -1,
2756 -1, 109, 110, 111, 112, -1, -1, 115, 116, 117,
2757 118, 100, -1, -1, -1, 123, 124, 125, 126, -1,
2758 -1, 110, 111, 112, 3, -1, 115, -1, -1, -1,
2759 -1, 120, -1, -1, -1, -1, -1, -1, -1, -1,
2760 -1, -1, -1, -1, -1, -1, 135, -1, -1, 28,
2761 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2762 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2763 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2764 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
2765 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
2766 79, -1, -1, 82, 83, -1, 85, -1, 87, -1,
2767 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2768 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
2769 -1, 110, 111, 112, 3, -1, 115, -1, -1, -1,
2770 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2771 -1, -1, -1, 132, -1, 134, -1, -1, -1, 28,
2772 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2773 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2774 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2775 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
2776 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
2777 79, -1, -1, 82, 83, -1, 85, -1, 87, -1,
2778 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2779 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
2780 -1, 110, 111, 112, 3, -1, 115, -1, -1, -1,
2781 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2782 -1, -1, -1, -1, -1, 134, -1, -1, -1, 28,
2783 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2784 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2785 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2786 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
2787 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
2788 79, -1, -1, 82, 83, -1, 85, -1, 87, -1,
2789 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2790 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
2791 -1, 110, 111, 112, -1, 1, 115, 3, 4, 5,
2792 6, 120, 8, 9, -1, -1, -1, -1, -1, -1,
2793 -1, -1, -1, -1, 133, -1, -1, -1, -1, -1,
2794 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
2795 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2796 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2797 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2798 66, -1, -1, -1, -1, 71, 72, 73, 74, 75,
2799 -1, -1, -1, 79, -1, -1, 82, 83, -1, 85,
2800 -1, 87, -1, -1, -1, -1, -1, -1, -1, -1,
2801 -1, -1, -1, -1, 100, -1, 102, 103, -1, -1,
2802 -1, -1, -1, 109, 110, 111, 112, -1, -1, 115,
2803 -1, 117, 118, -1, -1, -1, -1, 123, 124, 125,
2804 126, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2805 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2806 -1, -1, -1, -1, -1, -1, -1, -1, 28, -1,
2807 -1, -1, -1, -1, 34, 35, 36, 37, 38, 39,
2808 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2809 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2810 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2811 -1, 71, 72, 73, 74, 75, -1, -1, -1, 79,
2812 -1, -1, 82, 83, -1, 85, -1, 87, -1, -1,
2813 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2814 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2815 110, 111, 112, -1, -1, 115, 116, 117, 118, -1,
2816 -1, -1, -1, 123, 124, 125, 126, 1, -1, 3,
2817 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
2818 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2819 -1, -1, -1, -1, 28, -1, -1, -1, -1, -1,
2820 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2821 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
2822 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2823 -1, -1, 66, -1, -1, -1, -1, 71, 72, 73,
2824 74, 75, -1, -1, -1, 79, -1, -1, 82, 83,
2825 -1, 85, -1, 87, -1, -1, -1, -1, -1, -1,
2826 -1, -1, -1, -1, -1, -1, 100, -1, 102, 103,
2827 -1, -1, -1, -1, -1, 109, 110, 111, 112, -1,
2828 -1, 115, 116, 117, 118, -1, -1, -1, -1, 123,
2829 124, 125, 126, 1, -1, 3, 4, 5, 6, -1,
2830 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
2831 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2832 28, -1, -1, -1, -1, -1, 34, 35, 36, 37,
2833 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2834 48, 49, 50, -1, -1, -1, -1, -1, -1, 1,
2835 -1, 3, 4, 5, 6, -1, 8, 9, 66, -1,
2836 -1, -1, -1, 71, 72, 73, 74, 75, -1, -1,
2837 -1, 79, -1, -1, 82, 83, 28, 85, -1, 87,
2838 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2839 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2840 -1, 109, 110, 111, 112, -1, -1, 115, 116, 117,
2841 118, -1, -1, -1, -1, 123, 124, 125, 126, 71,
2842 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
2843 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2844 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
2845 102, 103, -1, -1, -1, -1, -1, 109, -1, -1,
2846 112, -1, -1, 115, -1, 117, 118, -1, -1, 121,
2847 -1, 123, 124, 125, 126, -1, -1, -1, 1, -1,
2848 3, 4, 5, 6, -1, 8, 9, -1, -1, -1,
2849 -1, -1, 71, 72, 73, -1, -1, -1, -1, -1,
2850 -1, -1, -1, -1, 1, 28, 3, 4, 5, 6,
2851 -1, 8, 9, -1, -1, -1, -1, -1, -1, -1,
2852 -1, -1, -1, 102, 103, -1, -1, -1, -1, -1,
2853 109, 28, -1, 112, -1, -1, 115, -1, 117, 118,
2854 -1, -1, 121, -1, 123, 124, 125, 126, 71, 72,
2855 73, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2856 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
2857 -1, -1, -1, -1, 71, 72, 73, -1, -1, 102,
2858 103, -1, -1, -1, -1, -1, 109, 28, -1, 112,
2859 -1, -1, 115, -1, 117, 118, -1, -1, 121, -1,
2860 123, 124, 125, 126, -1, 102, 103, -1, -1, -1,
2861 -1, -1, 109, -1, -1, 112, -1, -1, 115, 116,
2862 117, 118, -1, -1, -1, -1, 123, 124, 125, 126,
2863 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
2864 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
2865 -1, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2866 28, 102, 103, -1, -1, -1, -1, -1, 109, -1,
2867 -1, 112, -1, -1, 115, 116, 117, 118, 28, -1,
2868 -1, -1, 123, 124, 125, 126, -1, -1, -1, -1,
2869 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2870 -1, -1, -1, 71, 72, 73, -1, -1, -1, 1,
2871 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2872 -1, 71, 72, 73, -1, -1, -1, -1, -1, -1,
2873 -1, -1, -1, -1, 102, 103, 28, -1, -1, -1,
2874 -1, 109, -1, -1, 112, -1, -1, 115, 116, 117,
2875 118, -1, 102, 103, -1, 123, 124, 125, 126, 109,
2876 -1, -1, 112, -1, -1, 115, -1, 117, 118, -1,
2877 -1, -1, -1, 123, 124, 125, 126, -1, -1, 71,
2878 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
2879 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2880 1, -1, 3, 4, 5, 6, -1, 8, 9, 28,
2881 102, 103, -1, -1, -1, -1, -1, 109, -1, -1,
2882 112, -1, -1, 115, -1, 117, 118, 28, -1, -1,
2883 -1, 123, 124, 125, 126, -1, -1, -1, -1, -1,
2884 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2885 -1, -1, 71, 72, 73, -1, -1, -1, -1, -1,
2886 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2887 71, 72, 73, -1, -1, -1, -1, -1, -1, -1,
2888 -1, -1, -1, 102, 103, -1, -1, -1, -1, -1,
2889 109, -1, -1, 112, -1, -1, 115, -1, 117, 118,
2890 -1, 102, 103, 3, 123, 124, 125, 126, 109, -1,
2891 -1, 112, -1, -1, 115, -1, 117, 118, -1, -1,
2892 -1, -1, 123, 124, 125, 126, -1, -1, 28, 29,
2893 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2894 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2895 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2896 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2897 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
2898 -1, -1, 82, 83, -1, 85, -1, 87, -1, -1,
2899 -1, -1, -1, -1, -1, -1, -1, -1, -1, 3,
2900 100, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2901 110, 111, 112, -1, -1, 115, -1, -1, -1, -1,
2902 120, -1, -1, 123, 28, 29, 30, 31, 32, 33,
2903 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2904 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
2905 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2906 -1, 65, 66, -1, -1, -1, -1, -1, -1, -1,
2907 74, 75, -1, -1, -1, 79, -1, -1, 82, 83,
2908 -1, 85, -1, 87, -1, -1, -1, -1, -1, -1,
2909 -1, -1, 3, -1, -1, -1, 100, -1, -1, -1,
2910 -1, -1, -1, -1, -1, -1, 110, 111, 112, -1,
2911 -1, 115, 116, -1, -1, -1, 120, 28, 29, 30,
2912 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2913 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2914 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2915 -1, -1, -1, -1, 65, 66, -1, -1, -1, -1,
2916 -1, -1, -1, 74, 75, -1, -1, -1, 79, -1,
2917 -1, 82, 83, -1, 85, -1, 87, -1, -1, -1,
2918 -1, -1, -1, -1, -1, 3, -1, -1, -1, 100,
2919 -1, -1, -1, -1, -1, -1, -1, -1, -1, 110,
2920 111, 112, -1, -1, 115, 116, -1, -1, -1, 120,
2921 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2922 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2923 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2924 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2925 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
2926 -1, 79, -1, -1, 82, 83, -1, 85, -1, 87,
2927 -1, -1, -1, -1, -1, -1, -1, -1, 3, -1,
2928 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
2929 -1, -1, 110, 111, 112, -1, -1, 115, -1, -1,
2930 -1, -1, 120, 28, 29, 30, 31, 32, 33, 34,
2931 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2932 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2933 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2934 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
2935 75, -1, -1, -1, 79, -1, -1, 82, 83, -1,
2936 85, -1, 87, -1, -1, -1, -1, -1, -1, -1,
2937 -1, 3, -1, -1, -1, 100, -1, -1, -1, -1,
2938 -1, -1, -1, -1, -1, 110, 111, 112, -1, -1,
2939 115, -1, -1, -1, -1, 120, 28, 29, 30, 31,
2940 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2941 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2942 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2943 -1, -1, -1, -1, 66, -1, -1, -1, -1, -1,
2944 -1, -1, 74, 75, -1, -1, -1, 79, -1, -1,
2945 82, 83, -1, 85, -1, 87, -1, -1, -1, -1,
2946 -1, -1, -1, -1, 3, -1, -1, -1, 100, -1,
2947 -1, -1, -1, -1, -1, -1, -1, -1, 110, 111,
2948 112, -1, -1, 115, -1, -1, -1, -1, 120, 28,
2949 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2950 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2951 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2952 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
2953 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
2954 79, -1, -1, -1, -1, -1, 85, -1, 87, -1,
2955 -1, -1, -1, -1, -1, -1, -1, 3, -1, -1,
2956 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
2957 -1, 110, 111, 112, -1, -1, 115, -1, -1, -1,
2958 -1, 120, 28, 29, 30, 31, 32, 33, 34, 35,
2959 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2960 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2961 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2962 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
2963 -1, -1, -1, 79, -1, -1, -1, -1, -1, 85,
2964 -1, 87, -1, -1, -1, 3, -1, -1, -1, -1,
2965 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
2966 -1, -1, -1, -1, 110, 111, 112, -1, -1, 115,
2967 28, -1, -1, -1, 120, -1, 34, 35, 36, 37,
2968 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2969 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2970 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2971 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
2972 -1, 79, -1, -1, 82, 83, -1, 85, -1, 87,
2973 -1, -1, -1, -1, -1, -1, -1, -1, 3, -1,
2974 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
2975 -1, -1, 110, 111, 112, -1, -1, 115, -1, -1,
2976 -1, -1, 120, 28, 29, 30, 31, 32, 33, 34,
2977 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2978 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2979 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2980 65, 66, -1, -1, -1, -1, -1, -1, -1, 74,
2981 75, -1, -1, -1, 79, -1, -1, 82, 83, -1,
2982 85, -1, 87, -1, -1, -1, -1, 3, -1, -1,
2983 -1, -1, -1, -1, -1, 100, -1, -1, -1, -1,
2984 -1, -1, -1, -1, -1, 110, 111, 112, -1, -1,
2985 115, 116, 28, 29, 30, 31, 32, 33, 34, 35,
2986 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2987 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2988 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
2989 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
2990 -1, -1, -1, 79, -1, -1, 82, 83, -1, 85,
2991 -1, 87, -1, -1, -1, -1, 3, -1, -1, -1,
2992 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
2993 -1, -1, -1, -1, 110, 111, -1, -1, -1, -1,
2994 116, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2995 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2996 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2997 -1, -1, -1, -1, -1, -1, -1, -1, 65, 66,
2998 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2999 -1, -1, 79, -1, -1, 82, 83, -1, 85, -1,
3000 87, -1, -1, -1, -1, 3, -1, -1, -1, -1,
3001 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
3002 -1, -1, -1, 110, 111, -1, -1, -1, -1, 116,
3003 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
3004 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
3005 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
3006 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
3007 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
3008 -1, 79, -1, -1, 82, 83, -1, 85, -1, 87,
3009 -1, -1, -1, -1, 3, -1, -1, -1, -1, -1,
3010 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
3011 -1, -1, 110, 111, -1, -1, -1, -1, 116, 28,
3012 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
3013 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
3014 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
3015 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
3016 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
3017 79, -1, -1, 82, 83, -1, 85, -1, 87, -1,
3018 -1, -1, 3, -1, -1, -1, -1, -1, -1, -1,
3019 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
3020 -1, 110, 111, 112, -1, -1, 115, 28, 29, 30,
3021 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
3022 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
3023 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3024 -1, -1, -1, -1, -1, 66, -1, -1, -1, -1,
3025 -1, -1, -1, 74, 75, -1, -1, -1, 79, -1,
3026 -1, 82, 83, -1, 85, -1, 87, -1, -1, -1,
3027 3, -1, -1, -1, -1, -1, -1, -1, -1, 100,
3028 -1, -1, -1, -1, -1, -1, -1, -1, -1, 110,
3029 111, -1, -1, -1, 115, 28, 29, 30, 31, 32,
3030 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
3031 43, 44, 45, 46, 47, 48, 49, 50, 51, -1,
3032 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3033 -1, -1, 65, 66, -1, -1, -1, -1, -1, -1,
3034 -1, 74, 75, -1, -1, -1, 79, -1, -1, 82,
3035 83, -1, 85, -1, 87, 3, -1, -1, -1, -1,
3036 -1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
3037 -1, -1, -1, -1, -1, -1, -1, 110, 111, -1,
3038 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
3039 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
3040 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
3041 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
3042 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
3043 -1, 79, -1, -1, 82, 83, -1, 85, -1, 87,
3044 3, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3045 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
3046 -1, -1, 110, 111, -1, 28, 29, 30, 31, 32,
3047 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
3048 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
3049 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3050 -1, -1, -1, 66, -1, -1, -1, -1, -1, -1,
3051 -1, 74, 75, -1, -1, -1, 79, -1, -1, 82,
3052 83, -1, 85, -1, 87, 3, -1, -1, -1, -1,
3053 -1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
3054 -1, -1, -1, -1, -1, -1, -1, 110, 111, -1,
3055 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
3056 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
3057 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
3058 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
3059 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
3060 -1, 79, -1, -1, -1, -1, -1, 85, -1, 87,
3061 3, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3062 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
3063 -1, -1, 110, 111, -1, 28, 29, 30, 31, 32,
3064 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
3065 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
3066 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3067 -1, -1, -1, 66, -1, -1, -1, -1, -1, -1,
3068 -1, 74, 75, -1, -1, -1, 79, -1, -1, -1,
3069 -1, -1, 85, -1, 87, -1, -1, -1, -1, -1,
3070 -1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
3071 -1, -1, -1, -1, -1, -1, -1, 110, 111
3074 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
3075 symbol of state STATE-NUM. */
3076 static const yytype_uint16 yystos[] =
3078 0, 3, 28, 29, 30, 31, 32, 33, 34, 35,
3079 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
3080 46, 47, 48, 49, 50, 65, 66, 74, 75, 79,
3081 82, 83, 85, 87, 100, 110, 111, 138, 139, 140,
3082 141, 142, 147, 179, 180, 185, 186, 187, 191, 192,
3083 193, 194, 196, 197, 203, 211, 212, 230, 261, 135,
3084 142, 147, 115, 115, 113, 1, 112, 113, 147, 112,
3085 115, 120, 123, 138, 147, 185, 186, 193, 194, 196,
3086 212, 215, 217, 219, 220, 222, 223, 224, 227, 115,
3087 135, 141, 142, 147, 186, 132, 0, 147, 213, 214,
3088 135, 135, 1, 4, 5, 6, 8, 9, 71, 72,
3089 73, 102, 103, 109, 112, 115, 117, 118, 123, 124,
3090 125, 126, 140, 147, 148, 149, 150, 154, 155, 157,
3091 158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
3092 168, 169, 170, 171, 248, 251, 140, 147, 140, 147,
3093 155, 161, 179, 198, 199, 200, 201, 202, 193, 226,
3094 227, 116, 147, 217, 219, 228, 229, 230, 121, 140,
3095 170, 174, 115, 147, 186, 219, 227, 215, 220, 223,
3096 227, 115, 120, 186, 115, 120, 116, 147, 228, 231,
3097 186, 215, 224, 115, 68, 78, 115, 117, 134, 136,
3098 143, 144, 145, 146, 147, 150, 179, 186, 204, 205,
3099 206, 207, 208, 220, 221, 223, 227, 250, 251, 253,
3100 135, 135, 135, 142, 147, 174, 133, 122, 136, 213,
3101 213, 115, 149, 152, 154, 156, 115, 155, 155, 147,
3102 179, 174, 179, 174, 115, 156, 116, 171, 173, 176,
3103 193, 194, 196, 212, 232, 248, 135, 135, 7, 8,
3104 9, 115, 119, 120, 18, 19, 20, 21, 22, 23,
3105 24, 25, 26, 27, 133, 172, 158, 112, 127, 128,
3106 124, 125, 10, 11, 161, 12, 13, 113, 114, 14,
3107 15, 123, 129, 130, 16, 17, 131, 116, 116, 116,
3108 133, 115, 186, 217, 227, 133, 11, 114, 122, 193,
3109 227, 116, 116, 116, 122, 121, 121, 227, 215, 224,
3110 116, 228, 121, 140, 174, 121, 140, 174, 116, 116,
3111 122, 3, 28, 44, 74, 75, 116, 188, 189, 190,
3112 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
3113 46, 47, 50, 66, 85, 87, 100, 142, 147, 181,
3114 185, 193, 195, 197, 203, 211, 179, 221, 112, 115,
3115 147, 179, 135, 242, 243, 243, 243, 134, 243, 133,
3116 115, 132, 134, 147, 186, 209, 210, 220, 221, 225,
3117 227, 223, 227, 136, 208, 122, 134, 186, 223, 134,
3118 134, 204, 136, 204, 136, 204, 135, 135, 174, 214,
3119 134, 136, 134, 136, 138, 147, 155, 177, 193, 194,
3120 196, 212, 233, 7, 8, 9, 115, 119, 120, 115,
3121 120, 186, 216, 218, 227, 147, 182, 185, 193, 195,
3122 196, 212, 120, 218, 182, 155, 233, 116, 122, 147,
3123 193, 194, 196, 212, 217, 116, 119, 134, 135, 136,
3124 150, 151, 170, 178, 185, 193, 194, 196, 212, 235,
3125 252, 254, 255, 256, 257, 258, 259, 260, 136, 260,
3126 147, 116, 151, 153, 171, 147, 173, 151, 171, 158,
3127 158, 158, 159, 159, 160, 160, 161, 161, 161, 163,
3128 163, 164, 165, 166, 167, 168, 173, 179, 199, 200,
3129 227, 199, 200, 201, 51, 230, 116, 121, 121, 121,
3130 121, 147, 116, 115, 116, 122, 189, 142, 147, 115,
3131 115, 113, 135, 147, 185, 193, 195, 217, 147, 186,
3132 221, 186, 115, 136, 52, 53, 54, 55, 56, 57,
3133 58, 59, 60, 61, 62, 77, 134, 147, 173, 175,
3134 178, 237, 238, 239, 240, 241, 243, 244, 245, 246,
3135 247, 249, 235, 116, 174, 135, 220, 227, 122, 134,
3136 132, 191, 186, 220, 223, 205, 223, 136, 136, 136,
3137 204, 136, 204, 204, 204, 116, 138, 193, 194, 196,
3138 212, 217, 116, 147, 116, 153, 147, 173, 116, 218,
3139 228, 174, 216, 227, 115, 120, 216, 113, 120, 147,
3140 185, 193, 195, 196, 212, 218, 174, 120, 120, 218,
3141 116, 116, 171, 158, 248, 136, 260, 133, 147, 185,
3142 193, 194, 196, 212, 221, 225, 243, 122, 134, 134,
3143 255, 257, 258, 136, 136, 116, 122, 121, 132, 217,
3144 173, 116, 189, 171, 140, 147, 202, 69, 70, 136,
3145 113, 135, 135, 147, 142, 147, 116, 174, 132, 115,
3146 115, 115, 237, 115, 147, 134, 134, 134, 173, 147,
3147 132, 134, 134, 147, 183, 184, 219, 175, 240, 175,
3148 237, 136, 134, 136, 260, 220, 186, 210, 220, 227,
3149 174, 220, 136, 136, 136, 136, 116, 121, 116, 116,
3150 121, 216, 116, 228, 174, 202, 174, 113, 120, 121,
3151 174, 174, 120, 136, 235, 256, 151, 171, 170, 116,
3152 116, 116, 116, 114, 243, 243, 202, 69, 70, 136,
3153 69, 70, 136, 135, 132, 237, 173, 173, 116, 173,
3154 56, 116, 244, 134, 134, 133, 237, 135, 122, 134,
3155 133, 136, 220, 227, 186, 220, 132, 116, 121, 114,
3156 121, 202, 174, 121, 121, 174, 70, 136, 69, 136,
3157 114, 243, 243, 243, 243, 69, 70, 136, 237, 116,
3158 116, 237, 116, 115, 237, 116, 244, 174, 136, 260,
3159 184, 135, 171, 234, 220, 220, 174, 114, 121, 121,
3160 243, 243, 70, 136, 69, 136, 70, 136, 69, 136,
3161 243, 243, 237, 237, 237, 173, 237, 116, 173, 134,
3162 136, 234, 236, 136, 136, 243, 243, 243, 243, 70,
3163 136, 69, 136, 64, 116, 237, 116, 122, 136, 136,
3164 136, 136, 136, 243, 243, 237, 134, 237, 136, 234,
3168 #define yyerrok (yyerrstatus = 0)
3169 #define yyclearin (yychar = YYEMPTY)
3170 #define YYEMPTY (-2)
3173 #define YYACCEPT goto yyacceptlab
3174 #define YYABORT goto yyabortlab
3175 #define YYERROR goto yyerrorlab
3178 /* Like YYERROR except do call yyerror. This remains here temporarily
3179 to ease the transition to the new meaning of YYERROR, for GCC.
3180 Once GCC version 2 has supplanted version 1, this can go. However,
3181 YYFAIL appears to be in use. Nevertheless, it is formally deprecated
3182 in Bison 2.4.2's NEWS entry, where a plan to phase it out is
3185 #define YYFAIL goto yyerrlab
3187 /* This is here to suppress warnings from the GCC cpp's
3188 -Wunused-macros. Normally we don't worry about that warning, but
3189 some users do, and we want to make it easy for users to remove
3190 YYFAIL uses, which will produce warnings from Bison 2.5. */
3193 #define YYRECOVERING() (!!yyerrstatus)
3195 #define YYBACKUP(Token, Value) \
3197 if (yychar == YYEMPTY && yylen == 1) \
3201 yytoken = YYTRANSLATE (yychar); \
3207 yyerror (YY_("syntax error: cannot back up")); \
3214 #define YYERRCODE 256
3217 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
3218 If N is 0, then set CURRENT to the empty location which ends
3219 the previous symbol: RHS[0] (always defined). */
3221 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
3222 #ifndef YYLLOC_DEFAULT
3223 # define YYLLOC_DEFAULT(Current, Rhs, N) \
3227 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
3228 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
3229 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
3230 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
3234 (Current).first_line = (Current).last_line = \
3235 YYRHSLOC (Rhs, 0).last_line; \
3236 (Current).first_column = (Current).last_column = \
3237 YYRHSLOC (Rhs, 0).last_column; \
3243 /* YY_LOCATION_PRINT -- Print the location on the stream.
3244 This macro was not mandated originally: define only if we know
3245 we won't break user code: when these are the locations we know. */
3247 #ifndef YY_LOCATION_PRINT
3248 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
3249 # define YY_LOCATION_PRINT(File, Loc) \
3250 fprintf (File, "%d.%d-%d.%d", \
3251 (Loc).first_line, (Loc).first_column, \
3252 (Loc).last_line, (Loc).last_column)
3254 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
3259 /* YYLEX -- calling `yylex' with the right arguments. */
3262 # define YYLEX yylex (YYLEX_PARAM)
3264 # define YYLEX yylex ()
3267 /* Enable debugging if requested. */
3271 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
3272 # define YYFPRINTF fprintf
3275 # define YYDPRINTF(Args) \
3281 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
3285 YYFPRINTF (stderr, "%s ", Title); \
3286 yy_symbol_print (stderr, \
3287 Type, Value, Location); \
3288 YYFPRINTF (stderr, "\n"); \
3293 /*--------------------------------.
3294 | Print this symbol on YYOUTPUT. |
3295 `--------------------------------*/
3298 #if (defined __STDC__ || defined __C99__FUNC__ \
3299 || defined __cplusplus || defined _MSC_VER)
3301 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
3304 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp)
3307 YYSTYPE const * const yyvaluep;
3308 YYLTYPE const * const yylocationp;
3313 YYUSE (yylocationp);
3315 if (yytype < YYNTOKENS)
3316 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
3328 /*--------------------------------.
3329 | Print this symbol on YYOUTPUT. |
3330 `--------------------------------*/
3332 #if (defined __STDC__ || defined __C99__FUNC__ \
3333 || defined __cplusplus || defined _MSC_VER)
3335 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
3338 yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp)
3341 YYSTYPE const * const yyvaluep;
3342 YYLTYPE const * const yylocationp;
3345 if (yytype < YYNTOKENS)
3346 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
3348 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
3350 YY_LOCATION_PRINT (yyoutput, *yylocationp);
3351 YYFPRINTF (yyoutput, ": ");
3352 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp);
3353 YYFPRINTF (yyoutput, ")");
3356 /*------------------------------------------------------------------.
3357 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
3359 `------------------------------------------------------------------*/
3361 #if (defined __STDC__ || defined __C99__FUNC__ \
3362 || defined __cplusplus || defined _MSC_VER)
3364 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
3367 yy_stack_print (yybottom, yytop)
3368 yytype_int16 *yybottom;
3369 yytype_int16 *yytop;
3372 YYFPRINTF (stderr, "Stack now");
3373 for (; yybottom <= yytop; yybottom++)
3375 int yybot = *yybottom;
3376 YYFPRINTF (stderr, " %d", yybot);
3378 YYFPRINTF (stderr, "\n");
3381 # define YY_STACK_PRINT(Bottom, Top) \
3384 yy_stack_print ((Bottom), (Top)); \
3388 /*------------------------------------------------.
3389 | Report that the YYRULE is going to be reduced. |
3390 `------------------------------------------------*/
3392 #if (defined __STDC__ || defined __C99__FUNC__ \
3393 || defined __cplusplus || defined _MSC_VER)
3395 yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule)
3398 yy_reduce_print (yyvsp, yylsp, yyrule)
3404 int yynrhs = yyr2[yyrule];
3406 unsigned long int yylno = yyrline[yyrule];
3407 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
3409 /* The symbols being reduced. */
3410 for (yyi = 0; yyi < yynrhs; yyi++)
3412 YYFPRINTF (stderr, " $%d = ", yyi + 1);
3413 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
3414 &(yyvsp[(yyi + 1) - (yynrhs)])
3415 , &(yylsp[(yyi + 1) - (yynrhs)]) );
3416 YYFPRINTF (stderr, "\n");
3420 # define YY_REDUCE_PRINT(Rule) \
3423 yy_reduce_print (yyvsp, yylsp, Rule); \
3426 /* Nonzero means print parse trace. It is left uninitialized so that
3427 multiple parsers can coexist. */
3429 #else /* !YYDEBUG */
3430 # define YYDPRINTF(Args)
3431 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3432 # define YY_STACK_PRINT(Bottom, Top)
3433 # define YY_REDUCE_PRINT(Rule)
3434 #endif /* !YYDEBUG */
3437 /* YYINITDEPTH -- initial size of the parser's stacks. */
3439 # define YYINITDEPTH 200
3442 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3443 if the built-in stack extension method is used).
3445 Do not make this value too large; the results are undefined if
3446 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3447 evaluated with infinite-precision integer arithmetic. */
3450 # define YYMAXDEPTH 10000
3458 # if defined __GLIBC__ && defined _STRING_H
3459 # define yystrlen strlen
3461 /* Return the length of YYSTR. */
3462 #if (defined __STDC__ || defined __C99__FUNC__ \
3463 || defined __cplusplus || defined _MSC_VER)
3465 yystrlen (const char *yystr)
3473 for (yylen = 0; yystr[yylen]; yylen++)
3481 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3482 # define yystpcpy stpcpy
3484 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3486 #if (defined __STDC__ || defined __C99__FUNC__ \
3487 || defined __cplusplus || defined _MSC_VER)
3489 yystpcpy (char *yydest, const char *yysrc)
3492 yystpcpy (yydest, yysrc)
3498 const char *yys = yysrc;
3500 while ((*yyd++ = *yys++) != '\0')
3509 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3510 quotes and backslashes, so that it's suitable for yyerror. The
3511 heuristic is that double-quoting is unnecessary unless the string
3512 contains an apostrophe, a comma, or backslash (other than
3513 backslash-backslash). YYSTR is taken from yytname. If YYRES is
3514 null, do not copy; instead, return the length of what the result
3517 yytnamerr (char *yyres, const char *yystr)
3522 char const *yyp = yystr;
3529 goto do_not_strip_quotes;
3533 goto do_not_strip_quotes;
3546 do_not_strip_quotes: ;
3550 return yystrlen (yystr);
3552 return yystpcpy (yyres, yystr) - yyres;
3556 /* Copy into YYRESULT an error message about the unexpected token
3557 YYCHAR while in state YYSTATE. Return the number of bytes copied,
3558 including the terminating null byte. If YYRESULT is null, do not
3559 copy anything; just return the number of bytes that would be
3560 copied. As a special case, return 0 if an ordinary "syntax error"
3561 message will do. Return YYSIZE_MAXIMUM if overflow occurs during
3562 size calculation. */
3564 yysyntax_error (char *yyresult, int yystate, int yychar)
3566 int yyn = yypact[yystate];
3568 if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
3572 int yytype = YYTRANSLATE (yychar);
3573 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
3574 YYSIZE_T yysize = yysize0;
3576 int yysize_overflow = 0;
3577 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3578 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3582 /* This is so xgettext sees the translatable formats that are
3583 constructed on the fly. */
3584 YY_("syntax error, unexpected %s");
3585 YY_("syntax error, unexpected %s, expecting %s");
3586 YY_("syntax error, unexpected %s, expecting %s or %s");
3587 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
3588 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
3592 static char const yyunexpected[] = "syntax error, unexpected %s";
3593 static char const yyexpecting[] = ", expecting %s";
3594 static char const yyor[] = " or %s";
3595 char yyformat[sizeof yyunexpected
3596 + sizeof yyexpecting - 1
3597 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
3598 * (sizeof yyor - 1))];
3599 char const *yyprefix = yyexpecting;
3601 /* Start YYX at -YYN if negative to avoid negative indexes in
3603 int yyxbegin = yyn < 0 ? -yyn : 0;
3605 /* Stay within bounds of both yycheck and yytname. */
3606 int yychecklim = YYLAST - yyn + 1;
3607 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3610 yyarg[0] = yytname[yytype];
3611 yyfmt = yystpcpy (yyformat, yyunexpected);
3613 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3614 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
3616 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3620 yyformat[sizeof yyunexpected - 1] = '\0';
3623 yyarg[yycount++] = yytname[yyx];
3624 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
3625 yysize_overflow |= (yysize1 < yysize);
3627 yyfmt = yystpcpy (yyfmt, yyprefix);
3631 yyf = YY_(yyformat);
3632 yysize1 = yysize + yystrlen (yyf);
3633 yysize_overflow |= (yysize1 < yysize);
3636 if (yysize_overflow)
3637 return YYSIZE_MAXIMUM;
3641 /* Avoid sprintf, as that infringes on the user's name space.
3642 Don't have undefined behavior even if the translation
3643 produced a string with the wrong number of "%s"s. */
3644 char *yyp = yyresult;
3646 while ((*yyp = *yyf) != '\0')
3648 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
3650 yyp += yytnamerr (yyp, yyarg[yyi++]);
3663 #endif /* YYERROR_VERBOSE */
3666 /*-----------------------------------------------.
3667 | Release the memory associated to this symbol. |
3668 `-----------------------------------------------*/
3671 #if (defined __STDC__ || defined __C99__FUNC__ \
3672 || defined __cplusplus || defined _MSC_VER)
3674 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
3677 yydestruct (yymsg, yytype, yyvaluep, yylocationp)
3681 YYLTYPE *yylocationp;
3685 YYUSE (yylocationp);
3689 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
3693 case 138: /* "guess_type" */
3695 /* Line 1009 of yacc.c */
3697 { FreeSpecifier((yyvaluep->specifier)); };
3699 /* Line 1009 of yacc.c */
3700 #line 3700 "type.ec"
3702 case 140: /* "type" */
3704 /* Line 1009 of yacc.c */
3706 { FreeSpecifier((yyvaluep->specifier)); };
3708 /* Line 1009 of yacc.c */
3709 #line 3709 "type.ec"
3711 case 141: /* "base_strict_type" */
3713 /* Line 1009 of yacc.c */
3715 { FreeSpecifier((yyvaluep->specifier)); };
3717 /* Line 1009 of yacc.c */
3718 #line 3718 "type.ec"
3720 case 142: /* "strict_type" */
3722 /* Line 1009 of yacc.c */
3724 { FreeSpecifier((yyvaluep->specifier)); };
3726 /* Line 1009 of yacc.c */
3727 #line 3727 "type.ec"
3729 case 143: /* "class_function_definition_start" */
3731 /* Line 1009 of yacc.c */
3733 { FreeClassFunction((yyvaluep->classFunction)); };
3735 /* Line 1009 of yacc.c */
3736 #line 3736 "type.ec"
3738 case 144: /* "constructor_function_definition_start" */
3740 /* Line 1009 of yacc.c */
3742 { FreeClassFunction((yyvaluep->classFunction)); };
3744 /* Line 1009 of yacc.c */
3745 #line 3745 "type.ec"
3747 case 145: /* "destructor_function_definition_start" */
3749 /* Line 1009 of yacc.c */
3751 { FreeClassFunction((yyvaluep->classFunction)); };
3753 /* Line 1009 of yacc.c */
3754 #line 3754 "type.ec"
3756 case 146: /* "virtual_class_function_definition_start" */
3758 /* Line 1009 of yacc.c */
3760 { FreeClassFunction((yyvaluep->classFunction)); };
3762 /* Line 1009 of yacc.c */
3763 #line 3763 "type.ec"
3765 case 147: /* "identifier" */
3767 /* Line 1009 of yacc.c */
3769 { FreeIdentifier((yyvaluep->id)); };
3771 /* Line 1009 of yacc.c */
3772 #line 3772 "type.ec"
3774 case 148: /* "primary_expression" */
3776 /* Line 1009 of yacc.c */
3778 { FreeExpression((yyvaluep->exp)); };
3780 /* Line 1009 of yacc.c */
3781 #line 3781 "type.ec"
3783 case 150: /* "postfix_expression" */
3785 /* Line 1009 of yacc.c */
3787 { FreeExpression((yyvaluep->exp)); };
3789 /* Line 1009 of yacc.c */
3790 #line 3790 "type.ec"
3792 case 153: /* "argument_expression_list" */
3794 /* Line 1009 of yacc.c */
3796 { FreeList((yyvaluep->list), FreeExpression); };
3798 /* Line 1009 of yacc.c */
3799 #line 3799 "type.ec"
3801 case 155: /* "unary_expression" */
3803 /* Line 1009 of yacc.c */
3805 { FreeExpression((yyvaluep->exp)); };
3807 /* Line 1009 of yacc.c */
3808 #line 3808 "type.ec"
3810 case 158: /* "cast_expression" */
3812 /* Line 1009 of yacc.c */
3814 { FreeExpression((yyvaluep->exp)); };
3816 /* Line 1009 of yacc.c */
3817 #line 3817 "type.ec"
3819 case 159: /* "multiplicative_expression" */
3821 /* Line 1009 of yacc.c */
3823 { FreeExpression((yyvaluep->exp)); };
3825 /* Line 1009 of yacc.c */
3826 #line 3826 "type.ec"
3828 case 160: /* "additive_expression" */
3830 /* Line 1009 of yacc.c */
3832 { FreeExpression((yyvaluep->exp)); };
3834 /* Line 1009 of yacc.c */
3835 #line 3835 "type.ec"
3837 case 161: /* "shift_expression" */
3839 /* Line 1009 of yacc.c */
3841 { FreeExpression((yyvaluep->exp)); };
3843 /* Line 1009 of yacc.c */
3844 #line 3844 "type.ec"
3846 case 163: /* "relational_expression" */
3848 /* Line 1009 of yacc.c */
3850 { FreeExpression((yyvaluep->exp)); };
3852 /* Line 1009 of yacc.c */
3853 #line 3853 "type.ec"
3855 case 164: /* "equality_expression" */
3857 /* Line 1009 of yacc.c */
3859 { FreeExpression((yyvaluep->exp)); };
3861 /* Line 1009 of yacc.c */
3862 #line 3862 "type.ec"
3864 case 165: /* "and_expression" */
3866 /* Line 1009 of yacc.c */
3868 { FreeExpression((yyvaluep->exp)); };
3870 /* Line 1009 of yacc.c */
3871 #line 3871 "type.ec"
3873 case 166: /* "exclusive_or_expression" */
3875 /* Line 1009 of yacc.c */
3877 { FreeExpression((yyvaluep->exp)); };
3879 /* Line 1009 of yacc.c */
3880 #line 3880 "type.ec"
3882 case 167: /* "inclusive_or_expression" */
3884 /* Line 1009 of yacc.c */
3886 { FreeExpression((yyvaluep->exp)); };
3888 /* Line 1009 of yacc.c */
3889 #line 3889 "type.ec"
3891 case 168: /* "logical_and_expression" */
3893 /* Line 1009 of yacc.c */
3895 { FreeExpression((yyvaluep->exp)); };
3897 /* Line 1009 of yacc.c */
3898 #line 3898 "type.ec"
3900 case 169: /* "logical_or_expression" */
3902 /* Line 1009 of yacc.c */
3904 { FreeExpression((yyvaluep->exp)); };
3906 /* Line 1009 of yacc.c */
3907 #line 3907 "type.ec"
3909 case 170: /* "conditional_expression" */
3911 /* Line 1009 of yacc.c */
3913 { FreeExpression((yyvaluep->exp)); };
3915 /* Line 1009 of yacc.c */
3916 #line 3916 "type.ec"
3918 case 171: /* "assignment_expression" */
3920 /* Line 1009 of yacc.c */
3922 { FreeExpression((yyvaluep->exp)); };
3924 /* Line 1009 of yacc.c */
3925 #line 3925 "type.ec"
3927 case 173: /* "expression" */
3929 /* Line 1009 of yacc.c */
3931 { FreeList((yyvaluep->list), FreeExpression); };
3933 /* Line 1009 of yacc.c */
3934 #line 3934 "type.ec"
3936 case 174: /* "constant_expression" */
3938 /* Line 1009 of yacc.c */
3940 { FreeExpression((yyvaluep->exp)); };
3942 /* Line 1009 of yacc.c */
3943 #line 3943 "type.ec"
3945 case 175: /* "declaration" */
3947 /* Line 1009 of yacc.c */
3949 { FreeDeclaration((yyvaluep->declaration)); };
3951 /* Line 1009 of yacc.c */
3952 #line 3952 "type.ec"
3954 case 176: /* "specifier_qualifier_list" */
3956 /* Line 1009 of yacc.c */
3958 { FreeList((yyvaluep->list), FreeSpecifier); };
3960 /* Line 1009 of yacc.c */
3961 #line 3961 "type.ec"
3963 case 177: /* "guess_specifier_qualifier_list" */
3965 /* Line 1009 of yacc.c */
3967 { FreeList((yyvaluep->list), FreeSpecifier); };
3969 /* Line 1009 of yacc.c */
3970 #line 3970 "type.ec"
3972 case 178: /* "declaration_specifiers" */
3974 /* Line 1009 of yacc.c */
3976 { FreeList((yyvaluep->list), FreeSpecifier); };
3978 /* Line 1009 of yacc.c */
3979 #line 3979 "type.ec"
3981 case 179: /* "guess_declaration_specifiers" */
3983 /* Line 1009 of yacc.c */
3985 { FreeList((yyvaluep->list), FreeSpecifier); };
3987 /* Line 1009 of yacc.c */
3988 #line 3988 "type.ec"
3990 case 183: /* "init_declarator_list" */
3992 /* Line 1009 of yacc.c */
3994 { FreeList((yyvaluep->list), FreeInitDeclarator); };
3996 /* Line 1009 of yacc.c */
3997 #line 3997 "type.ec"
3999 case 184: /* "init_declarator" */
4001 /* Line 1009 of yacc.c */
4003 { FreeInitDeclarator((yyvaluep->initDeclarator)); };
4005 /* Line 1009 of yacc.c */
4006 #line 4006 "type.ec"
4008 case 185: /* "storage_class_specifier" */
4010 /* Line 1009 of yacc.c */
4012 { FreeSpecifier((yyvaluep->specifier)); };
4014 /* Line 1009 of yacc.c */
4015 #line 4015 "type.ec"
4017 case 186: /* "ext_decl" */
4019 /* Line 1009 of yacc.c */
4021 { FreeExtDecl((yyvaluep->extDecl)); };
4023 /* Line 1009 of yacc.c */
4024 #line 4024 "type.ec"
4026 case 188: /* "attribute_word" */
4028 /* Line 1009 of yacc.c */
4030 { delete (yyvaluep->string); };
4032 /* Line 1009 of yacc.c */
4033 #line 4033 "type.ec"
4035 case 189: /* "attribute" */
4037 /* Line 1009 of yacc.c */
4039 { FreeAttribute((yyvaluep->attribute)); };
4041 /* Line 1009 of yacc.c */
4042 #line 4042 "type.ec"
4044 case 190: /* "attribs_list" */
4046 /* Line 1009 of yacc.c */
4048 { FreeList((yyvaluep->list), FreeAttribute); };
4050 /* Line 1009 of yacc.c */
4051 #line 4051 "type.ec"
4053 case 191: /* "attrib" */
4055 /* Line 1009 of yacc.c */
4057 { FreeAttrib((yyvaluep->attrib)); };
4059 /* Line 1009 of yacc.c */
4060 #line 4060 "type.ec"
4062 case 192: /* "ext_storage" */
4064 /* Line 1009 of yacc.c */
4066 { FreeSpecifier((yyvaluep->specifier)); };
4068 /* Line 1009 of yacc.c */
4069 #line 4069 "type.ec"
4071 case 193: /* "type_qualifier" */
4073 /* Line 1009 of yacc.c */
4075 { FreeSpecifier((yyvaluep->specifier)); };
4077 /* Line 1009 of yacc.c */
4078 #line 4078 "type.ec"
4080 case 194: /* "type_specifier" */
4082 /* Line 1009 of yacc.c */
4084 { FreeSpecifier((yyvaluep->specifier)); };
4086 /* Line 1009 of yacc.c */
4087 #line 4087 "type.ec"
4089 case 195: /* "strict_type_specifier" */
4091 /* Line 1009 of yacc.c */
4093 { FreeSpecifier((yyvaluep->specifier)); };
4095 /* Line 1009 of yacc.c */
4096 #line 4096 "type.ec"
4098 case 196: /* "struct_or_union_specifier_compound" */
4100 /* Line 1009 of yacc.c */
4102 { FreeSpecifier((yyvaluep->specifier)); };
4104 /* Line 1009 of yacc.c */
4105 #line 4105 "type.ec"
4107 case 197: /* "struct_or_union_specifier_nocompound" */
4109 /* Line 1009 of yacc.c */
4111 { FreeSpecifier((yyvaluep->specifier)); };
4113 /* Line 1009 of yacc.c */
4114 #line 4114 "type.ec"
4116 case 198: /* "template_datatype" */
4118 /* Line 1009 of yacc.c */
4120 { FreeTemplateDataType((yyvaluep->templateDatatype)); };
4122 /* Line 1009 of yacc.c */
4123 #line 4123 "type.ec"
4125 case 199: /* "template_type_argument" */
4127 /* Line 1009 of yacc.c */
4129 { FreeTemplateArgument((yyvaluep->templateArgument)); };
4131 /* Line 1009 of yacc.c */
4132 #line 4132 "type.ec"
4134 case 200: /* "template_expression_argument" */
4136 /* Line 1009 of yacc.c */
4138 { FreeTemplateArgument((yyvaluep->templateArgument)); };
4140 /* Line 1009 of yacc.c */
4141 #line 4141 "type.ec"
4143 case 201: /* "template_argument" */
4145 /* Line 1009 of yacc.c */
4147 { FreeTemplateArgument((yyvaluep->templateArgument)); };
4149 /* Line 1009 of yacc.c */
4150 #line 4150 "type.ec"
4152 case 204: /* "struct_declaration_list" */
4154 /* Line 1009 of yacc.c */
4156 { FreeList((yyvaluep->list), FreeClassDef); };
4158 /* Line 1009 of yacc.c */
4159 #line 4159 "type.ec"
4161 case 205: /* "default_property" */
4163 /* Line 1009 of yacc.c */
4165 { FreeMemberInit((yyvaluep->memberInit)); };
4167 /* Line 1009 of yacc.c */
4168 #line 4168 "type.ec"
4170 case 206: /* "default_property_list" */
4172 /* Line 1009 of yacc.c */
4174 { FreeList((yyvaluep->list), FreeMemberInit); };
4176 /* Line 1009 of yacc.c */
4177 #line 4177 "type.ec"
4179 case 207: /* "property" */
4181 /* Line 1009 of yacc.c */
4183 { FreeProperty((yyvaluep->prop)); };
4185 /* Line 1009 of yacc.c */
4186 #line 4186 "type.ec"
4188 case 208: /* "struct_declaration" */
4190 /* Line 1009 of yacc.c */
4192 { FreeClassDef((yyvaluep->classDef)); };
4194 /* Line 1009 of yacc.c */
4195 #line 4195 "type.ec"
4197 case 209: /* "struct_declarator_list" */
4199 /* Line 1009 of yacc.c */
4201 { FreeList((yyvaluep->list), FreeDeclarator); };
4203 /* Line 1009 of yacc.c */
4204 #line 4204 "type.ec"
4206 case 210: /* "struct_declarator" */
4208 /* Line 1009 of yacc.c */
4210 { FreeDeclarator((yyvaluep->declarator)); };
4212 /* Line 1009 of yacc.c */
4213 #line 4213 "type.ec"
4215 case 211: /* "enum_specifier_nocompound" */
4217 /* Line 1009 of yacc.c */
4219 { FreeSpecifier((yyvaluep->specifier)); };
4221 /* Line 1009 of yacc.c */
4222 #line 4222 "type.ec"
4224 case 212: /* "enum_specifier_compound" */
4226 /* Line 1009 of yacc.c */
4228 { FreeSpecifier((yyvaluep->specifier)); };
4230 /* Line 1009 of yacc.c */
4231 #line 4231 "type.ec"
4233 case 213: /* "enumerator_list" */
4235 /* Line 1009 of yacc.c */
4237 { FreeList((yyvaluep->list), FreeEnumerator); };
4239 /* Line 1009 of yacc.c */
4240 #line 4240 "type.ec"
4242 case 214: /* "enumerator" */
4244 /* Line 1009 of yacc.c */
4246 { FreeEnumerator((yyvaluep->enumerator)); };
4248 /* Line 1009 of yacc.c */
4249 #line 4249 "type.ec"
4251 case 215: /* "direct_abstract_declarator" */
4253 /* Line 1009 of yacc.c */
4255 { FreeDeclarator((yyvaluep->declarator)); };
4257 /* Line 1009 of yacc.c */
4258 #line 4258 "type.ec"
4260 case 216: /* "direct_abstract_declarator_noarray" */
4262 /* Line 1009 of yacc.c */
4264 { FreeDeclarator((yyvaluep->declarator)); };
4266 /* Line 1009 of yacc.c */
4267 #line 4267 "type.ec"
4269 case 217: /* "abstract_declarator" */
4271 /* Line 1009 of yacc.c */
4273 { FreeDeclarator((yyvaluep->declarator)); };
4275 /* Line 1009 of yacc.c */
4276 #line 4276 "type.ec"
4278 case 218: /* "abstract_declarator_noarray" */
4280 /* Line 1009 of yacc.c */
4282 { FreeDeclarator((yyvaluep->declarator)); };
4284 /* Line 1009 of yacc.c */
4285 #line 4285 "type.ec"
4287 case 219: /* "declarator" */
4289 /* Line 1009 of yacc.c */
4291 { FreeDeclarator((yyvaluep->declarator)); };
4293 /* Line 1009 of yacc.c */
4294 #line 4294 "type.ec"
4296 case 220: /* "direct_declarator_nofunction" */
4298 /* Line 1009 of yacc.c */
4300 { FreeDeclarator((yyvaluep->declarator)); };
4302 /* Line 1009 of yacc.c */
4303 #line 4303 "type.ec"
4305 case 221: /* "declarator_function" */
4307 /* Line 1009 of yacc.c */
4309 { FreeDeclarator((yyvaluep->declarator)); };
4311 /* Line 1009 of yacc.c */
4312 #line 4312 "type.ec"
4314 case 222: /* "direct_declarator_function_start" */
4316 /* Line 1009 of yacc.c */
4318 { FreeDeclarator((yyvaluep->declarator)); };
4320 /* Line 1009 of yacc.c */
4321 #line 4321 "type.ec"
4323 case 223: /* "direct_declarator_function" */
4325 /* Line 1009 of yacc.c */
4327 { FreeDeclarator((yyvaluep->declarator)); };
4329 /* Line 1009 of yacc.c */
4330 #line 4330 "type.ec"
4332 case 224: /* "direct_declarator" */
4334 /* Line 1009 of yacc.c */
4336 { FreeDeclarator((yyvaluep->declarator)); };
4338 /* Line 1009 of yacc.c */
4339 #line 4339 "type.ec"
4341 case 225: /* "declarator_nofunction" */
4343 /* Line 1009 of yacc.c */
4345 { FreeDeclarator((yyvaluep->declarator)); };
4347 /* Line 1009 of yacc.c */
4348 #line 4348 "type.ec"
4350 case 226: /* "type_qualifier_list" */
4352 /* Line 1009 of yacc.c */
4354 { FreeList((yyvaluep->list), FreeSpecifier); };
4356 /* Line 1009 of yacc.c */
4357 #line 4357 "type.ec"
4359 case 227: /* "pointer" */
4361 /* Line 1009 of yacc.c */
4363 { FreePointer((yyvaluep->pointer)); };
4365 /* Line 1009 of yacc.c */
4366 #line 4366 "type.ec"
4368 case 228: /* "parameter_type_list" */
4370 /* Line 1009 of yacc.c */
4372 { FreeList((yyvaluep->list), FreeTypeName); };
4374 /* Line 1009 of yacc.c */
4375 #line 4375 "type.ec"
4377 case 229: /* "parameter_list" */
4379 /* Line 1009 of yacc.c */
4381 { FreeList((yyvaluep->list), FreeTypeName); };
4383 /* Line 1009 of yacc.c */
4384 #line 4384 "type.ec"
4386 case 230: /* "parameter_declaration" */
4388 /* Line 1009 of yacc.c */
4390 { FreeTypeName((yyvaluep->typeName)); };
4392 /* Line 1009 of yacc.c */
4393 #line 4393 "type.ec"
4395 case 231: /* "identifier_list" */
4397 /* Line 1009 of yacc.c */
4399 { FreeList((yyvaluep->list), FreeTypeName); };
4401 /* Line 1009 of yacc.c */
4402 #line 4402 "type.ec"
4404 case 232: /* "type_name" */
4406 /* Line 1009 of yacc.c */
4408 { FreeTypeName((yyvaluep->typeName)); };
4410 /* Line 1009 of yacc.c */
4411 #line 4411 "type.ec"
4413 case 233: /* "guess_type_name" */
4415 /* Line 1009 of yacc.c */
4417 { FreeTypeName((yyvaluep->typeName)); };
4419 /* Line 1009 of yacc.c */
4420 #line 4420 "type.ec"
4422 case 234: /* "initializer" */
4424 /* Line 1009 of yacc.c */
4426 { FreeInitializer((yyvaluep->initializer)); };
4428 /* Line 1009 of yacc.c */
4429 #line 4429 "type.ec"
4431 case 235: /* "initializer_condition" */
4433 /* Line 1009 of yacc.c */
4435 { FreeInitializer((yyvaluep->initializer)); };
4437 /* Line 1009 of yacc.c */
4438 #line 4438 "type.ec"
4440 case 236: /* "initializer_list" */
4442 /* Line 1009 of yacc.c */
4444 { FreeList((yyvaluep->list), FreeInitializer); };
4446 /* Line 1009 of yacc.c */
4447 #line 4447 "type.ec"
4449 case 237: /* "statement" */
4451 /* Line 1009 of yacc.c */
4453 { FreeStatement((yyvaluep->stmt)); };
4455 /* Line 1009 of yacc.c */
4456 #line 4456 "type.ec"
4458 case 238: /* "labeled_statement" */
4460 /* Line 1009 of yacc.c */
4462 { FreeStatement((yyvaluep->stmt)); };
4464 /* Line 1009 of yacc.c */
4465 #line 4465 "type.ec"
4467 case 239: /* "declaration_list" */
4469 /* Line 1009 of yacc.c */
4471 { FreeList((yyvaluep->list), FreeDeclaration); };
4473 /* Line 1009 of yacc.c */
4474 #line 4474 "type.ec"
4476 case 240: /* "statement_list" */
4478 /* Line 1009 of yacc.c */
4480 { FreeList((yyvaluep->list), FreeStatement); };
4482 /* Line 1009 of yacc.c */
4483 #line 4483 "type.ec"
4485 case 241: /* "compound_inside" */
4487 /* Line 1009 of yacc.c */
4489 { FreeStatement((yyvaluep->stmt)); };
4491 /* Line 1009 of yacc.c */
4492 #line 4492 "type.ec"
4494 case 242: /* "compound_start" */
4496 /* Line 1009 of yacc.c */
4498 { PopContext((yyvaluep->context)); FreeContext((yyvaluep->context)); delete (yyvaluep->context); };
4500 /* Line 1009 of yacc.c */
4501 #line 4501 "type.ec"
4503 case 243: /* "compound_statement" */
4505 /* Line 1009 of yacc.c */
4507 { FreeStatement((yyvaluep->stmt)); };
4509 /* Line 1009 of yacc.c */
4510 #line 4510 "type.ec"
4512 case 244: /* "expression_statement" */
4514 /* Line 1009 of yacc.c */
4516 { FreeStatement((yyvaluep->stmt)); };
4518 /* Line 1009 of yacc.c */
4519 #line 4519 "type.ec"
4521 case 245: /* "selection_statement" */
4523 /* Line 1009 of yacc.c */
4525 { FreeStatement((yyvaluep->stmt)); };
4527 /* Line 1009 of yacc.c */
4528 #line 4528 "type.ec"
4530 case 246: /* "iteration_statement" */
4532 /* Line 1009 of yacc.c */
4534 { FreeStatement((yyvaluep->stmt)); };
4536 /* Line 1009 of yacc.c */
4537 #line 4537 "type.ec"
4539 case 247: /* "jump_statement" */
4541 /* Line 1009 of yacc.c */
4543 { FreeStatement((yyvaluep->stmt)); };
4545 /* Line 1009 of yacc.c */
4546 #line 4546 "type.ec"
4548 case 248: /* "string_literal" */
4550 /* Line 1009 of yacc.c */
4552 { delete (yyvaluep->string); };
4554 /* Line 1009 of yacc.c */
4555 #line 4555 "type.ec"
4557 case 249: /* "instantiation_named" */
4559 /* Line 1009 of yacc.c */
4561 { FreeInstance((yyvaluep->instance)); };
4563 /* Line 1009 of yacc.c */
4564 #line 4564 "type.ec"
4566 case 251: /* "instantiation_unnamed" */
4568 /* Line 1009 of yacc.c */
4570 { FreeInstance((yyvaluep->instance)); };
4572 /* Line 1009 of yacc.c */
4573 #line 4573 "type.ec"
4575 case 253: /* "class_function_definition" */
4577 /* Line 1009 of yacc.c */
4579 { FreeClassFunction((yyvaluep->classFunction)); };
4581 /* Line 1009 of yacc.c */
4582 #line 4582 "type.ec"
4584 case 254: /* "instance_class_function_definition_start" */
4586 /* Line 1009 of yacc.c */
4588 { FreeClassFunction((yyvaluep->classFunction)); };
4590 /* Line 1009 of yacc.c */
4591 #line 4591 "type.ec"
4593 case 255: /* "instance_class_function_definition" */
4595 /* Line 1009 of yacc.c */
4597 { FreeClassFunction((yyvaluep->classFunction)); };
4599 /* Line 1009 of yacc.c */
4600 #line 4600 "type.ec"
4602 case 256: /* "data_member_initialization" */
4604 /* Line 1009 of yacc.c */
4606 { FreeMemberInit((yyvaluep->memberInit)); };
4608 /* Line 1009 of yacc.c */
4609 #line 4609 "type.ec"
4611 case 257: /* "data_member_initialization_list" */
4613 /* Line 1009 of yacc.c */
4615 { FreeList((yyvaluep->list), FreeMemberInit); };
4617 /* Line 1009 of yacc.c */
4618 #line 4618 "type.ec"
4620 case 258: /* "data_member_initialization_list_coloned" */
4622 /* Line 1009 of yacc.c */
4624 { FreeList((yyvaluep->list), FreeMemberInit); };
4626 /* Line 1009 of yacc.c */
4627 #line 4627 "type.ec"
4629 case 259: /* "members_initialization_list_coloned" */
4631 /* Line 1009 of yacc.c */
4633 { FreeList((yyvaluep->list), FreeMembersInit); };
4635 /* Line 1009 of yacc.c */
4636 #line 4636 "type.ec"
4638 case 260: /* "members_initialization_list" */
4640 /* Line 1009 of yacc.c */
4642 { FreeList((yyvaluep->list), FreeMembersInit); };
4644 /* Line 1009 of yacc.c */
4645 #line 4645 "type.ec"
4653 /* Prevent warnings from -Wmissing-prototypes. */
4654 #ifdef YYPARSE_PARAM
4655 #if defined __STDC__ || defined __cplusplus
4656 int yyparse (void *YYPARSE_PARAM);
4660 #else /* ! YYPARSE_PARAM */
4661 #if defined __STDC__ || defined __cplusplus
4666 #endif /* ! YYPARSE_PARAM */
4669 /* The lookahead symbol. */
4672 /* The semantic value of the lookahead symbol. */
4675 /* Location data for the lookahead symbol. */
4678 /* Number of syntax errors so far. */
4683 /*-------------------------.
4684 | yyparse or yypush_parse. |
4685 `-------------------------*/
4687 #ifdef YYPARSE_PARAM
4688 #if (defined __STDC__ || defined __C99__FUNC__ \
4689 || defined __cplusplus || defined _MSC_VER)
4691 yyparse (void *YYPARSE_PARAM)
4694 yyparse (YYPARSE_PARAM)
4695 void *YYPARSE_PARAM;
4697 #else /* ! YYPARSE_PARAM */
4698 #if (defined __STDC__ || defined __C99__FUNC__ \
4699 || defined __cplusplus || defined _MSC_VER)
4712 /* Number of tokens to shift before error messages enabled. */
4715 /* The stacks and their tools:
4716 `yyss': related to states.
4717 `yyvs': related to semantic values.
4718 `yyls': related to locations.
4720 Refer to the stacks thru separate pointers, to allow yyoverflow
4721 to reallocate them elsewhere. */
4723 /* The state stack. */
4724 yytype_int16 yyssa[YYINITDEPTH];
4726 yytype_int16 *yyssp;
4728 /* The semantic value stack. */
4729 YYSTYPE yyvsa[YYINITDEPTH];
4733 /* The location stack. */
4734 YYLTYPE yylsa[YYINITDEPTH];
4738 /* The locations where the error started and ended. */
4739 YYLTYPE yyerror_range[2];
4741 YYSIZE_T yystacksize;
4745 /* Lookahead token as an internal (translated) token number. */
4747 /* The variables used to return semantic value and location from the
4753 /* Buffer for error messages, and its allocated size. */
4755 char *yymsg = yymsgbuf;
4756 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
4759 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
4761 /* The number of symbols on the RHS of the reduced rule.
4762 Keep to zero when no symbol should be popped. */
4769 yystacksize = YYINITDEPTH;
4771 YYDPRINTF ((stderr, "Starting parse\n"));
4776 yychar = YYEMPTY; /* Cause a token to be read. */
4778 /* Initialize stack pointers.
4779 Waste one element of value and location stack
4780 so that they stay on the same level as the state stack.
4781 The wasted elements are never initialized. */
4786 #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
4787 /* Initialize the default location before parsing starts. */
4788 yylloc.first_line = yylloc.last_line = 1;
4789 yylloc.first_column = yylloc.last_column = 1;
4794 /*------------------------------------------------------------.
4795 | yynewstate -- Push a new state, which is found in yystate. |
4796 `------------------------------------------------------------*/
4798 /* In all cases, when you get here, the value and location stacks
4799 have just been pushed. So pushing a state here evens the stacks. */
4805 if (yyss + yystacksize - 1 <= yyssp)
4807 /* Get the current used size of the three stacks, in elements. */
4808 YYSIZE_T yysize = yyssp - yyss + 1;
4812 /* Give user a chance to reallocate the stack. Use copies of
4813 these so that the &'s don't force the real ones into
4815 YYSTYPE *yyvs1 = yyvs;
4816 yytype_int16 *yyss1 = yyss;
4817 YYLTYPE *yyls1 = yyls;
4819 /* Each stack pointer address is followed by the size of the
4820 data in use in that stack, in bytes. This used to be a
4821 conditional around just the two extra args, but that might
4822 be undefined if yyoverflow is a macro. */
4823 yyoverflow (YY_("memory exhausted"),
4824 &yyss1, yysize * sizeof (*yyssp),
4825 &yyvs1, yysize * sizeof (*yyvsp),
4826 &yyls1, yysize * sizeof (*yylsp),
4833 #else /* no yyoverflow */
4834 # ifndef YYSTACK_RELOCATE
4835 goto yyexhaustedlab;
4837 /* Extend the stack our own way. */
4838 if (YYMAXDEPTH <= yystacksize)
4839 goto yyexhaustedlab;
4841 if (YYMAXDEPTH < yystacksize)
4842 yystacksize = YYMAXDEPTH;
4845 yytype_int16 *yyss1 = yyss;
4846 union yyalloc *yyptr =
4847 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
4849 goto yyexhaustedlab;
4850 YYSTACK_RELOCATE (yyss_alloc, yyss);
4851 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
4852 YYSTACK_RELOCATE (yyls_alloc, yyls);
4853 # undef YYSTACK_RELOCATE
4855 YYSTACK_FREE (yyss1);
4858 #endif /* no yyoverflow */
4860 yyssp = yyss + yysize - 1;
4861 yyvsp = yyvs + yysize - 1;
4862 yylsp = yyls + yysize - 1;
4864 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
4865 (unsigned long int) yystacksize));
4867 if (yyss + yystacksize - 1 <= yyssp)
4871 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
4873 if (yystate == YYFINAL)
4883 /* Do appropriate processing given the current state. Read a
4884 lookahead token if we need one and don't already have one. */
4886 /* First try to decide what to do without reference to lookahead token. */
4887 yyn = yypact[yystate];
4888 if (yyn == YYPACT_NINF)
4891 /* Not known => get a lookahead token if don't already have one. */
4893 /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
4894 if (yychar == YYEMPTY)
4896 YYDPRINTF ((stderr, "Reading a token: "));
4900 if (yychar <= YYEOF)
4902 yychar = yytoken = YYEOF;
4903 YYDPRINTF ((stderr, "Now at end of input.\n"));
4907 yytoken = YYTRANSLATE (yychar);
4908 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
4911 /* If the proper action on seeing token YYTOKEN is to reduce or to
4912 detect an error, take that action. */
4914 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
4919 if (yyn == 0 || yyn == YYTABLE_NINF)
4925 /* Count tokens shifted since error; after three, turn off error
4930 /* Shift the lookahead token. */
4931 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
4933 /* Discard the shifted token. */
4942 /*-----------------------------------------------------------.
4943 | yydefault -- do the default action for the current state. |
4944 `-----------------------------------------------------------*/
4946 yyn = yydefact[yystate];
4952 /*-----------------------------.
4953 | yyreduce -- Do a reduction. |
4954 `-----------------------------*/
4956 /* yyn is the number of a rule to reduce with. */
4959 /* If YYLEN is nonzero, implement the default value of the action:
4962 Otherwise, the following line sets YYVAL to garbage.
4963 This behavior is undocumented and Bison
4964 users should not rely upon it. Assigning to YYVAL
4965 unconditionally makes the parser a bit smaller, and it avoids a
4966 GCC warning that YYVAL may be used uninitialized. */
4967 yyval = yyvsp[1-yylen];
4969 /* Default location. */
4970 YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
4971 YY_REDUCE_PRINT (yyn);
4976 /* Line 1464 of yacc.c */
4979 (yyval.specifier) = null;
4980 DeclClass(0, (yyvsp[(1) - (2)].id).string);
4981 fileInput.Seek((yylsp[(1) - (2)]).start.pos, start);
4982 resetScannerPos(&(yylsp[(1) - (2)]).start);
4985 FreeIdentifier((yyvsp[(1) - (2)].id));
4989 YY_STACK_PRINT (yyss, yyssp);
4992 YY_STACK_PRINT (yyss, yyssp);
4999 /* Line 1464 of yacc.c */
5002 (yyval.specifier) = null;
5004 // if($1._class && !$1._class.name)
5005 if((yyvsp[(1) - (2)].id)._class)
5008 strcpy(name, (yyvsp[(1) - (2)].id)._class.name ? (yyvsp[(1) - (2)].id)._class.name : "");
5010 strcat(name, (yyvsp[(1) - (2)].id).string);
5011 _DeclClass(0, name);
5014 _DeclClass(0, (yyvsp[(1) - (2)].id).string);
5016 FreeIdentifier((yyvsp[(1) - (2)].id));
5018 fileInput.Seek((yylsp[(1) - (2)]).start.pos, start);
5019 resetScannerPos(&(yylsp[(1) - (2)]).start);
5024 YY_STACK_PRINT (yyss, yyssp);
5027 YY_STACK_PRINT (yyss, yyssp);
5035 /* Line 1464 of yacc.c */
5038 DeclClass(0, (yyvsp[(1) - (2)].id).string);
5039 fileInput.Seek((yylsp[(1) - (2)]).start.pos, start);
5041 resetScannerPos(&(yylsp[(1) - (2)]).start);
5043 FreeIdentifier((yyvsp[(1) - (2)].id));
5047 YY_STACK_PRINT (yyss, yyssp);
5050 YY_STACK_PRINT (yyss, yyssp);
5057 /* Line 1464 of yacc.c */
5059 { (yyval.specifier) = (yyvsp[(1) - (1)].specifier); ;}
5064 /* Line 1464 of yacc.c */
5068 DeclClass(0, (yyvsp[(1) - (2)].id).string);
5069 fileInput.Seek((yylsp[(1) - (2)]).start.pos, start);
5070 resetScannerPos(&(yylsp[(1) - (2)]).start);
5073 FreeIdentifier((yyvsp[(1) - (2)].id));
5074 FreeIdentifier((yyvsp[(2) - (2)].id));
5078 YY_STACK_PRINT (yyss, yyssp);
5081 YY_STACK_PRINT (yyss, yyssp);
5084 Location tmpLoc = yylloc; (yyval.specifier) = (yyvsp[(2) - (2)].id); yylloc = (yylsp[(1) - (2)]);
5085 Compiler_Error($"Not a type: %s\n", (yyvsp[(1) - (2)].id).string);
5086 yylloc = tmpLoc; (yyvsp[(2) - (2)].id).badID = (yyvsp[(1) - (2)].id); // FreeIdentifier($1);
5093 /* Line 1464 of yacc.c */
5095 { (yyval.specifier) = MkSpecifierName(yytext); ;}
5100 /* Line 1464 of yacc.c */
5102 { (yyval.specifier) = (yyvsp[(1) - (4)].specifier); SetClassTemplateArgs((yyval.specifier), (yyvsp[(3) - (4)].list)); (yyval.specifier).loc = (yyloc); ;}
5107 /* Line 1464 of yacc.c */
5110 (yyval.specifier) = (yyvsp[(1) - (4)].specifier);
5111 SetClassTemplateArgs((yyval.specifier), (yyvsp[(3) - (4)].list));
5112 (yyval.specifier).loc = (yyloc);
5114 (yylsp[(4) - (4)]).end.pos--;
5115 fileInput.Seek((yylsp[(4) - (4)]).end.pos, start);
5116 resetScannerPos(&(yylsp[(4) - (4)]).end);
5123 /* Line 1464 of yacc.c */
5125 { (yyval.classFunction) = MkClassFunction((yyvsp[(1) - (2)].list), null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
5130 /* Line 1464 of yacc.c */
5132 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[(1) - (1)].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
5137 /* Line 1464 of yacc.c */
5139 { (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); ;}
5144 /* Line 1464 of yacc.c */
5146 { (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); ;}
5151 /* Line 1464 of yacc.c */
5153 { (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; ;}
5158 /* Line 1464 of yacc.c */
5160 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
5165 /* Line 1464 of yacc.c */
5167 { (yyval.id) = MkIdentifier(yytext); (yyval.id).loc = (yylsp[(1) - (1)]); ;}
5172 /* Line 1464 of yacc.c */
5174 { (yyval.exp) = MkExpBrackets((yyvsp[(2) - (3)].list)); (yyval.exp).loc = (yyloc); ;}
5179 /* Line 1464 of yacc.c */
5181 { (yyval.exp) = MkExpIdentifier((yyvsp[(1) - (1)].id)); (yyval.exp).loc = (yyloc); ;}
5186 /* Line 1464 of yacc.c */
5188 { (yyval.exp) = MkExpInstance((yyvsp[(1) - (1)].instance)); (yyval.exp).loc = (yyloc); ;}
5193 /* Line 1464 of yacc.c */
5195 { (yyval.exp) = MkExpConstant(yytext); (yyval.exp).loc = (yyloc); ;}
5200 /* Line 1464 of yacc.c */
5202 { (yyval.exp) = MkExpString((yyvsp[(1) - (1)].string)); delete (yyvsp[(1) - (1)].string); (yyval.exp).loc = (yyloc); ;}
5207 /* Line 1464 of yacc.c */
5209 { (yyval.exp) = MkExpIntlString((yyvsp[(2) - (2)].string), null); delete (yyvsp[(2) - (2)].string); (yyval.exp).loc = (yyloc); ;}
5214 /* Line 1464 of yacc.c */
5216 { (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); ;}
5221 /* Line 1464 of yacc.c */
5223 { 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(); ;}
5228 /* Line 1464 of yacc.c */
5230 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[(2) - (6)].list),(yyvsp[(3) - (6)].declarator)), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
5235 /* Line 1464 of yacc.c */
5237 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[(2) - (5)].list),null), (yyvsp[(4) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
5242 /* Line 1464 of yacc.c */
5244 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[(2) - (6)].list),(yyvsp[(3) - (6)].declarator)), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
5249 /* Line 1464 of yacc.c */
5251 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[(2) - (5)].list),null), (yyvsp[(4) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
5256 /* Line 1464 of yacc.c */
5258 { (yyval.exp) = MkExpRenew((yyvsp[(2) - (7)].exp), MkTypeName((yyvsp[(3) - (7)].list),(yyvsp[(4) - (7)].declarator)), (yyvsp[(6) - (7)].exp)); (yyval.exp).loc = (yyloc); ;}
5263 /* Line 1464 of yacc.c */
5265 { (yyval.exp) = MkExpRenew((yyvsp[(2) - (6)].exp), MkTypeName((yyvsp[(3) - (6)].list),null), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
5270 /* Line 1464 of yacc.c */
5272 { (yyval.exp) = MkExpRenew0((yyvsp[(2) - (7)].exp), MkTypeName((yyvsp[(3) - (7)].list),(yyvsp[(4) - (7)].declarator)), (yyvsp[(6) - (7)].exp)); (yyval.exp).loc = (yyloc); ;}
5277 /* Line 1464 of yacc.c */
5279 { (yyval.exp) = MkExpRenew0((yyvsp[(2) - (6)].exp), MkTypeName((yyvsp[(3) - (6)].list),null), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
5284 /* Line 1464 of yacc.c */
5286 { (yyval.exp) = MkExpDummy(); ;}
5291 /* Line 1464 of yacc.c */
5293 { (yyval.exp) = MkExpIndex((yyvsp[(1) - (4)].exp), (yyvsp[(3) - (4)].list)); (yyval.exp).loc = (yyloc); ;}
5298 /* Line 1464 of yacc.c */
5300 { (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); ;}
5305 /* Line 1464 of yacc.c */
5307 { (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); ;}
5312 /* Line 1464 of yacc.c */
5314 { (yyval.exp) = MkExpMember((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
5319 /* Line 1464 of yacc.c */
5321 { (yyval.exp) = MkExpPointer((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
5326 /* Line 1464 of yacc.c */
5328 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
5333 /* Line 1464 of yacc.c */
5335 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
5340 /* Line 1464 of yacc.c */
5342 { (yyval.exp) = MkExpInstance((yyvsp[(1) - (1)].instance)); (yyval.exp).loc = (yyloc); ;}
5347 /* Line 1464 of yacc.c */
5349 { (yyval.exp) = MkExpIndex((yyvsp[(1) - (4)].exp), (yyvsp[(3) - (4)].list)); (yyval.exp).loc = (yyloc); ;}
5354 /* Line 1464 of yacc.c */
5356 { (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); ;}
5361 /* Line 1464 of yacc.c */
5363 { (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); ;}
5368 /* Line 1464 of yacc.c */
5370 { (yyval.exp) = MkExpMember((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
5375 /* Line 1464 of yacc.c */
5377 { (yyval.exp) = MkExpPointer((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
5382 /* Line 1464 of yacc.c */
5384 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
5389 /* Line 1464 of yacc.c */
5391 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
5396 /* Line 1464 of yacc.c */
5398 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
5403 /* Line 1464 of yacc.c */
5405 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
5410 /* Line 1464 of yacc.c */
5412 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
5417 /* Line 1464 of yacc.c */
5419 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
5424 /* Line 1464 of yacc.c */
5426 { (yyval.exp) = MkExpOp(null, INC_OP, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
5431 /* Line 1464 of yacc.c */
5433 { (yyval.exp) = MkExpOp(null, DEC_OP, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
5438 /* Line 1464 of yacc.c */
5440 { (yyval.exp) = MkExpOp(null, (yyvsp[(1) - (2)].i), (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
5445 /* Line 1464 of yacc.c */
5447 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[(3) - (4)].exp)); (yyval.exp).loc = (yyloc); ;}
5452 /* Line 1464 of yacc.c */
5454 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
5459 /* Line 1464 of yacc.c */
5461 { (yyval.exp) = MkExpTypeSize((yyvsp[(3) - (4)].typeName)); (yyval.exp).loc = (yyloc); ;}
5466 /* Line 1464 of yacc.c */
5468 { (yyval.exp) = MkExpOp(null, ALIGNOF, (yyvsp[(3) - (4)].exp)); (yyval.exp).loc = (yyloc); ;}
5473 /* Line 1464 of yacc.c */
5475 { (yyval.exp) = MkExpOp(null, ALIGNOF, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
5480 /* Line 1464 of yacc.c */
5482 { (yyval.exp) = MkExpTypeAlign((yyvsp[(3) - (4)].typeName)); (yyval.exp).loc = (yyloc); ;}
5487 /* Line 1464 of yacc.c */
5489 { (yyval.i) = '&'; ;}
5494 /* Line 1464 of yacc.c */
5496 { (yyval.i) = '*'; ;}
5501 /* Line 1464 of yacc.c */
5503 { (yyval.i) = '+'; ;}
5508 /* Line 1464 of yacc.c */
5510 { (yyval.i) = '-'; ;}
5515 /* Line 1464 of yacc.c */
5517 { (yyval.i) = '~'; ;}
5522 /* Line 1464 of yacc.c */
5524 { (yyval.i) = '!'; ;}
5529 /* Line 1464 of yacc.c */
5531 { (yyval.i) = DELETE; ;}
5536 /* Line 1464 of yacc.c */
5538 { (yyval.exp) = MkExpCast((yyvsp[(2) - (4)].typeName), (yyvsp[(4) - (4)].exp)); (yyval.exp).loc = (yyloc); ;}
5543 /* Line 1464 of yacc.c */
5545 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '*', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5550 /* Line 1464 of yacc.c */
5552 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '/', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5557 /* Line 1464 of yacc.c */
5559 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '%', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5564 /* Line 1464 of yacc.c */
5566 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '+', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5571 /* Line 1464 of yacc.c */
5573 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '-', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5578 /* Line 1464 of yacc.c */
5580 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), LEFT_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5585 /* Line 1464 of yacc.c */
5587 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), RIGHT_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5592 /* Line 1464 of yacc.c */
5595 (yyval.exp) = (yyvsp[(1) - (2)].exp);
5602 /* Line 1464 of yacc.c */
5604 { skipErrors = false; (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), '<', (yyvsp[(2) - (2)].exp)/*$3*/); (yyval.exp).loc = (yyloc); ;}
5609 /* Line 1464 of yacc.c */
5611 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '>', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5616 /* Line 1464 of yacc.c */
5618 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), LE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5623 /* Line 1464 of yacc.c */
5625 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), GE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5630 /* Line 1464 of yacc.c */
5632 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), EQ_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5637 /* Line 1464 of yacc.c */
5639 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), NE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5644 /* Line 1464 of yacc.c */
5646 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '&', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5651 /* Line 1464 of yacc.c */
5653 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '^', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5658 /* Line 1464 of yacc.c */
5660 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '|', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5665 /* Line 1464 of yacc.c */
5667 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), AND_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5672 /* Line 1464 of yacc.c */
5674 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), OR_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5679 /* Line 1464 of yacc.c */
5681 { (yyval.exp) = MkExpCondition((yyvsp[(1) - (5)].exp), (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
5686 /* Line 1464 of yacc.c */
5688 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), (yyvsp[(2) - (3)].i), (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5693 /* Line 1464 of yacc.c */
5695 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), (yyvsp[(2) - (3)].i), (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5700 /* Line 1464 of yacc.c */
5702 { (yyval.i) = '='; ;}
5707 /* Line 1464 of yacc.c */
5709 { (yyval.i) = MUL_ASSIGN; ;}
5714 /* Line 1464 of yacc.c */
5716 { (yyval.i) = DIV_ASSIGN; ;}
5721 /* Line 1464 of yacc.c */
5723 { (yyval.i) = MOD_ASSIGN; ;}
5728 /* Line 1464 of yacc.c */
5730 { (yyval.i) = ADD_ASSIGN; ;}
5735 /* Line 1464 of yacc.c */
5737 { (yyval.i) = SUB_ASSIGN; ;}
5742 /* Line 1464 of yacc.c */
5744 { (yyval.i) = LEFT_ASSIGN; ;}
5749 /* Line 1464 of yacc.c */
5751 { (yyval.i) = RIGHT_ASSIGN; ;}
5756 /* Line 1464 of yacc.c */
5758 { (yyval.i) = AND_ASSIGN; ;}
5763 /* Line 1464 of yacc.c */
5765 { (yyval.i) = XOR_ASSIGN; ;}
5770 /* Line 1464 of yacc.c */
5772 { (yyval.i) = OR_ASSIGN; ;}
5777 /* Line 1464 of yacc.c */
5779 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
5784 /* Line 1464 of yacc.c */
5786 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
5791 /* Line 1464 of yacc.c */
5793 { (yyval.declaration) = MkDeclaration((yyvsp[(1) - (2)].list), null); (yyval.declaration).loc = (yyloc); ;}
5798 /* Line 1464 of yacc.c */
5800 { (yyval.declaration) = MkDeclaration((yyvsp[(1) - (3)].list), (yyvsp[(2) - (3)].list)); (yyval.declaration).loc = (yyloc); ;}
5805 /* Line 1464 of yacc.c */
5807 { (yyval.declaration) = MkDeclarationInst((yyvsp[(1) - (2)].instance)); (yyval.declaration).loc = (yyloc); ;}
5812 /* Line 1464 of yacc.c */
5814 { (yyval.declaration) = MkDeclarationDefine((yyvsp[(2) - (5)].id), (yyvsp[(4) - (5)].exp)); (yyval.declaration).loc = (yyloc); ;}
5819 /* Line 1464 of yacc.c */
5821 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5826 /* Line 1464 of yacc.c */
5828 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5833 /* Line 1464 of yacc.c */
5835 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5840 /* Line 1464 of yacc.c */
5842 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5847 /* Line 1464 of yacc.c */
5849 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5854 /* Line 1464 of yacc.c */
5856 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5861 /* Line 1464 of yacc.c */
5863 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5868 /* Line 1464 of yacc.c */
5870 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5875 /* Line 1464 of yacc.c */
5877 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5882 /* Line 1464 of yacc.c */
5884 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5889 /* Line 1464 of yacc.c */
5891 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5896 /* Line 1464 of yacc.c */
5898 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5903 /* Line 1464 of yacc.c */
5905 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5910 /* Line 1464 of yacc.c */
5912 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5917 /* Line 1464 of yacc.c */
5919 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5924 /* Line 1464 of yacc.c */
5926 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5931 /* Line 1464 of yacc.c */
5933 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5938 /* Line 1464 of yacc.c */
5940 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5945 /* Line 1464 of yacc.c */
5947 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5952 /* Line 1464 of yacc.c */
5954 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5959 /* Line 1464 of yacc.c */
5961 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5966 /* Line 1464 of yacc.c */
5968 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5973 /* Line 1464 of yacc.c */
5975 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5980 /* Line 1464 of yacc.c */
5982 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5987 /* Line 1464 of yacc.c */
5989 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5994 /* Line 1464 of yacc.c */
5996 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6001 /* Line 1464 of yacc.c */
6003 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6008 /* Line 1464 of yacc.c */
6010 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6015 /* Line 1464 of yacc.c */
6017 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6022 /* Line 1464 of yacc.c */
6024 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6029 /* Line 1464 of yacc.c */
6031 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6036 /* Line 1464 of yacc.c */
6038 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6043 /* Line 1464 of yacc.c */
6045 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6050 /* Line 1464 of yacc.c */
6052 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6057 /* Line 1464 of yacc.c */
6059 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6064 /* Line 1464 of yacc.c */
6066 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6071 /* Line 1464 of yacc.c */
6073 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6078 /* Line 1464 of yacc.c */
6080 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6085 /* Line 1464 of yacc.c */
6087 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6092 /* Line 1464 of yacc.c */
6094 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6099 /* Line 1464 of yacc.c */
6101 { (yyval.list) = (yyvsp[(1) - (1)].list); ;}
6106 /* Line 1464 of yacc.c */
6108 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6113 /* Line 1464 of yacc.c */
6115 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6120 /* Line 1464 of yacc.c */
6122 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6127 /* Line 1464 of yacc.c */
6129 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6134 /* Line 1464 of yacc.c */
6136 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6141 /* Line 1464 of yacc.c */
6143 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6148 /* Line 1464 of yacc.c */
6150 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6155 /* Line 1464 of yacc.c */
6157 { (yyval.list) = MkList(); ListAdd((yyval.list), MkSpecifierName((yyvsp[(1) - (1)].id).string)); FreeIdentifier((yyvsp[(1) - (1)].id)); ;}
6162 /* Line 1464 of yacc.c */
6164 { ListAdd((yyvsp[(1) - (2)].list), MkSpecifierName((yyvsp[(2) - (2)].id).string)); FreeIdentifier((yyvsp[(2) - (2)].id)); ;}
6169 /* Line 1464 of yacc.c */
6172 // if($1._class && !$1._class.name)
6173 if((yyvsp[(1) - (4)].id)._class)
6176 strcpy(name, (yyvsp[(1) - (4)].id)._class.name ? (yyvsp[(1) - (4)].id)._class.name : "");
6178 strcat(name, (yyvsp[(1) - (4)].id).string);
6179 _DeclClass(0, name);
6182 _DeclClass(0, (yyvsp[(1) - (4)].id).string);
6184 (yyval.list) = MkList();
6185 ListAdd((yyval.list), MkSpecifierNameArgs((yyvsp[(1) - (4)].id).string, (yyvsp[(3) - (4)].list)));
6186 FreeIdentifier((yyvsp[(1) - (4)].id));
6192 /* Line 1464 of yacc.c */
6195 if((yyvsp[(2) - (5)].id)._class && !(yyvsp[(2) - (5)].id)._class.name)
6199 strcat(name, (yyvsp[(2) - (5)].id).string);
6200 _DeclClass(0, name);
6203 _DeclClass(0, (yyvsp[(2) - (5)].id).string);
6204 ListAdd((yyvsp[(1) - (5)].list), MkSpecifierNameArgs((yyvsp[(2) - (5)].id).string, (yyvsp[(4) - (5)].list)));
6205 FreeIdentifier((yyvsp[(2) - (5)].id));
6211 /* Line 1464 of yacc.c */
6213 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6218 /* Line 1464 of yacc.c */
6220 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6225 /* Line 1464 of yacc.c */
6227 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6232 /* Line 1464 of yacc.c */
6234 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6239 /* Line 1464 of yacc.c */
6241 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6246 /* Line 1464 of yacc.c */
6248 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6253 /* Line 1464 of yacc.c */
6255 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6260 /* Line 1464 of yacc.c */
6262 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6267 /* Line 1464 of yacc.c */
6269 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6274 /* Line 1464 of yacc.c */
6276 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6281 /* Line 1464 of yacc.c */
6283 { (yyval.list) = MkList(); ListAdd((yyval.list), MkSpecifierName((yyvsp[(1) - (1)].id).string)); FreeIdentifier((yyvsp[(1) - (1)].id)); ;}
6288 /* Line 1464 of yacc.c */
6290 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), MkSpecifierName((yyvsp[(2) - (2)].id).string)); FreeIdentifier((yyvsp[(2) - (2)].id));}
6295 /* Line 1464 of yacc.c */
6298 // if($1._class && !$1._class.name)
6299 if((yyvsp[(1) - (4)].id)._class)
6302 strcpy(name, (yyvsp[(1) - (4)].id)._class.name ? (yyvsp[(1) - (4)].id)._class.name : "");
6304 strcat(name, (yyvsp[(1) - (4)].id).string);
6305 _DeclClass(0, name);
6308 _DeclClass(0, (yyvsp[(1) - (4)].id).string);
6310 (yyval.list) = MkList();
6311 ListAdd((yyval.list), MkSpecifierNameArgs((yyvsp[(1) - (4)].id).string, (yyvsp[(3) - (4)].list)));
6312 FreeIdentifier((yyvsp[(1) - (4)].id));
6318 /* Line 1464 of yacc.c */
6321 if((yyvsp[(2) - (5)].id)._class && !(yyvsp[(2) - (5)].id)._class.name)
6325 strcat(name, (yyvsp[(2) - (5)].id).string);
6326 _DeclClass(0, name);
6329 _DeclClass(0, (yyvsp[(2) - (5)].id).string);
6330 ListAdd((yyvsp[(1) - (5)].list), MkSpecifierNameArgs((yyvsp[(2) - (5)].id).string, (yyvsp[(4) - (5)].list)));
6331 FreeIdentifier((yyvsp[(2) - (5)].id));
6337 /* Line 1464 of yacc.c */
6339 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].initDeclarator)); ;}
6344 /* Line 1464 of yacc.c */
6346 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].initDeclarator)); ;}
6351 /* Line 1464 of yacc.c */
6353 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[(1) - (1)].declarator), null); (yyval.initDeclarator).loc = (yyloc); ;}
6358 /* Line 1464 of yacc.c */
6360 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[(1) - (3)].declarator), (yyvsp[(3) - (3)].initializer)); (yyval.initDeclarator).loc = (yyloc); (yyval.initDeclarator).initializer.loc.start = (yylsp[(2) - (3)]).end; ;}
6365 /* Line 1464 of yacc.c */
6367 { (yyval.specifier) = MkSpecifier(TYPEDEF); ;}
6372 /* Line 1464 of yacc.c */
6374 { (yyval.specifier) = MkSpecifier(EXTERN); ;}
6379 /* Line 1464 of yacc.c */
6381 { (yyval.specifier) = MkSpecifier(STATIC); ;}
6386 /* Line 1464 of yacc.c */
6388 { (yyval.specifier) = MkSpecifier(AUTO); ;}
6393 /* Line 1464 of yacc.c */
6395 { (yyval.specifier) = MkSpecifier(REGISTER); ;}
6400 /* Line 1464 of yacc.c */
6402 { (yyval.extDecl) = MkExtDeclString(CopyString(yytext)); ;}
6407 /* Line 1464 of yacc.c */
6409 { (yyval.extDecl) = MkExtDeclString(CopyString(yytext)); ;}
6414 /* Line 1464 of yacc.c */
6416 { (yyval.extDecl) = MkExtDeclAttrib((yyvsp[(1) - (1)].attrib)); ;}
6421 /* Line 1464 of yacc.c */
6423 { (yyval.i) = ATTRIB; ;}
6428 /* Line 1464 of yacc.c */
6430 { (yyval.i) = ATTRIB_DEP; ;}
6435 /* Line 1464 of yacc.c */
6437 { (yyval.i) = __ATTRIB; ;}
6442 /* Line 1464 of yacc.c */
6444 { (yyval.string) = CopyString(yytext); ;}
6449 /* Line 1464 of yacc.c */
6451 { (yyval.string) = CopyString(yytext); ;}
6456 /* Line 1464 of yacc.c */
6458 { (yyval.string) = CopyString(yytext); ;}
6463 /* Line 1464 of yacc.c */
6465 { (yyval.string) = CopyString(yytext); ;}
6470 /* Line 1464 of yacc.c */
6472 { (yyval.string) = CopyString(yytext); ;}
6477 /* Line 1464 of yacc.c */
6479 { (yyval.attribute) = MkAttribute((yyvsp[(1) - (1)].string), null); (yyval.attribute).loc = (yyloc); ;}
6484 /* Line 1464 of yacc.c */
6486 { (yyval.attribute) = MkAttribute((yyvsp[(1) - (4)].string), MkExpBrackets((yyvsp[(3) - (4)].list))); (yyval.attribute).loc = (yyloc); ;}
6491 /* Line 1464 of yacc.c */
6493 { (yyval.list) = MkListOne((yyvsp[(1) - (1)].attribute)); ;}
6498 /* Line 1464 of yacc.c */
6500 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].attribute)); (yyval.list) = (yyvsp[(1) - (2)].list); ;}
6505 /* Line 1464 of yacc.c */
6507 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].attribute)); (yyval.list) = (yyvsp[(1) - (3)].list); ;}
6512 /* Line 1464 of yacc.c */
6514 { (yyval.attrib) = MkAttrib((yyvsp[(1) - (6)].i), (yyvsp[(4) - (6)].list)); (yyval.attrib).loc = (yyloc); ;}
6519 /* Line 1464 of yacc.c */
6521 { (yyval.attrib) = MkAttrib((yyvsp[(1) - (5)].i), null); (yyval.attrib).loc = (yyloc); ;}
6526 /* Line 1464 of yacc.c */
6528 { (yyval.specifier) = MkSpecifierExtended((yyvsp[(1) - (1)].extDecl)); ;}
6533 /* Line 1464 of yacc.c */
6535 { (yyval.specifier) = MkSpecifier(CONST); ;}
6540 /* Line 1464 of yacc.c */
6542 { (yyval.specifier) = MkSpecifier(VOLATILE); ;}
6547 /* Line 1464 of yacc.c */
6549 { (yyval.specifier) = (yyvsp[(1) - (1)].specifier); ;}
6554 /* Line 1464 of yacc.c */
6556 { (yyval.specifier) = MkSpecifier(VOID); ;}
6561 /* Line 1464 of yacc.c */
6563 { (yyval.specifier) = MkSpecifier(CHAR); ;}
6568 /* Line 1464 of yacc.c */
6570 { (yyval.specifier) = MkSpecifier(SHORT); ;}
6575 /* Line 1464 of yacc.c */
6577 { (yyval.specifier) = MkSpecifier(INT); ;}
6582 /* Line 1464 of yacc.c */
6584 { (yyval.specifier) = MkSpecifier(UINT); ;}
6589 /* Line 1464 of yacc.c */
6591 { (yyval.specifier) = MkSpecifier(INT64); ;}
6596 /* Line 1464 of yacc.c */
6598 { (yyval.specifier) = MkSpecifier(VALIST); ;}
6603 /* Line 1464 of yacc.c */
6605 { (yyval.specifier) = MkSpecifier(LONG); ;}
6610 /* Line 1464 of yacc.c */
6612 { (yyval.specifier) = MkSpecifier(FLOAT); ;}
6617 /* Line 1464 of yacc.c */
6619 { (yyval.specifier) = MkSpecifier(DOUBLE); ;}
6624 /* Line 1464 of yacc.c */
6626 { (yyval.specifier) = MkSpecifier(SIGNED); ;}
6631 /* Line 1464 of yacc.c */
6633 { (yyval.specifier) = MkSpecifier(UNSIGNED); ;}
6638 /* Line 1464 of yacc.c */
6640 { (yyval.specifier) = MkSpecifier(EXTENSION); ;}
6645 /* Line 1464 of yacc.c */
6647 { (yyval.specifier) = MkSpecifierTypeOf((yyvsp[(3) - (4)].exp)); ;}
6652 /* Line 1464 of yacc.c */
6654 { (yyval.specifier) = MkSpecifierSubClass((yyvsp[(3) - (4)].specifier)); ;}
6659 /* Line 1464 of yacc.c */
6661 { _DeclClass(0, (yyvsp[(3) - (4)].id).string); (yyval.specifier) = MkSpecifierSubClass(MkSpecifierName((yyvsp[(3) - (4)].id).string)); FreeIdentifier((yyvsp[(3) - (4)].id)); ;}
6666 /* Line 1464 of yacc.c */
6668 { (yyval.specifier) = MkSpecifier(THISCLASS); ;}
6673 /* Line 1464 of yacc.c */
6675 { (yyval.specifier) = MkSpecifier(TYPED_OBJECT); ;}
6680 /* Line 1464 of yacc.c */
6682 { (yyval.specifier) = MkSpecifier(ANY_OBJECT); ;}
6687 /* Line 1464 of yacc.c */
6689 { (yyval.specifier) = MkSpecifier(VOID); ;}
6694 /* Line 1464 of yacc.c */
6696 { (yyval.specifier) = MkSpecifier(CHAR); ;}
6701 /* Line 1464 of yacc.c */
6703 { (yyval.specifier) = MkSpecifier(SHORT); ;}
6708 /* Line 1464 of yacc.c */
6710 { (yyval.specifier) = MkSpecifier(INT); ;}
6715 /* Line 1464 of yacc.c */
6717 { (yyval.specifier) = MkSpecifier(UINT); ;}
6722 /* Line 1464 of yacc.c */
6724 { (yyval.specifier) = MkSpecifier(INT64); ;}
6729 /* Line 1464 of yacc.c */
6731 { (yyval.specifier) = MkSpecifier(VALIST); ;}
6736 /* Line 1464 of yacc.c */
6738 { (yyval.specifier) = MkSpecifier(LONG); ;}
6743 /* Line 1464 of yacc.c */
6745 { (yyval.specifier) = MkSpecifier(FLOAT); ;}
6750 /* Line 1464 of yacc.c */
6752 { (yyval.specifier) = MkSpecifier(DOUBLE); ;}
6757 /* Line 1464 of yacc.c */
6759 { (yyval.specifier) = MkSpecifier(SIGNED); ;}
6764 /* Line 1464 of yacc.c */
6766 { (yyval.specifier) = MkSpecifier(UNSIGNED); ;}
6771 /* Line 1464 of yacc.c */
6773 { (yyval.specifier) = MkSpecifier(EXTENSION); ;}
6778 /* Line 1464 of yacc.c */
6780 { (yyval.specifier) = MkSpecifierTypeOf((yyvsp[(3) - (4)].exp)); ;}
6785 /* Line 1464 of yacc.c */
6787 { (yyval.specifier) = MkSpecifierSubClass((yyvsp[(3) - (4)].specifier)); ;}
6792 /* Line 1464 of yacc.c */
6794 { _DeclClass(0, (yyvsp[(3) - (4)].id).string); (yyval.specifier) = MkSpecifierSubClass(MkSpecifierName((yyvsp[(3) - (4)].id).string)); FreeIdentifier((yyvsp[(3) - (4)].id)); ;}
6799 /* Line 1464 of yacc.c */
6801 { (yyval.specifier) = MkSpecifier(THISCLASS); ;}
6806 /* Line 1464 of yacc.c */
6808 { (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); ;}
6813 /* Line 1464 of yacc.c */
6815 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (4)].specifierType), null, (yyvsp[(3) - (4)].list)); ;}
6820 /* Line 1464 of yacc.c */
6822 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (4)].specifierType), (yyvsp[(2) - (4)].id), null); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (4)].id).string); ;}
6827 /* Line 1464 of yacc.c */
6829 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (3)].specifierType), null, null); ;}
6834 /* Line 1464 of yacc.c */
6836 { (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)); ;}
6841 /* Line 1464 of yacc.c */
6843 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (6)].specifierType), (yyvsp[(3) - (6)].id), (yyvsp[(5) - (6)].list)); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (6)].extDecl); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(3) - (6)].id).string); ;}
6848 /* Line 1464 of yacc.c */
6850 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (5)].specifierType), null, (yyvsp[(4) - (5)].list)); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (5)].extDecl); ;}
6855 /* Line 1464 of yacc.c */
6857 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (5)].specifierType), (yyvsp[(3) - (5)].id), null); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (5)].extDecl); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(3) - (5)].id).string); ;}
6862 /* Line 1464 of yacc.c */
6864 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (4)].specifierType), null, null); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (4)].extDecl); ;}
6869 /* Line 1464 of yacc.c */
6871 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (6)].specifierType), MkIdentifier((yyvsp[(3) - (6)].specifier).name), (yyvsp[(5) - (6)].list)); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (6)].extDecl); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(3) - (6)].specifier).name); FreeSpecifier((yyvsp[(3) - (6)].specifier)); ;}
6876 /* Line 1464 of yacc.c */
6878 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (2)].specifierType), (yyvsp[(2) - (2)].id), null); if(declMode) DeclClass(0, (yyvsp[(2) - (2)].id).string); ;}
6883 /* Line 1464 of yacc.c */
6885 { (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)); ;}
6890 /* Line 1464 of yacc.c */
6892 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (3)].specifierType), (yyvsp[(3) - (3)].id), null); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (3)].extDecl);if(declMode) DeclClass(0, (yyvsp[(3) - (3)].id).string); ;}
6897 /* Line 1464 of yacc.c */
6899 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (3)].specifierType), MkIdentifier((yyvsp[(3) - (3)].specifier).name), null); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (3)].extDecl); if(declMode) DeclClass(0, (yyvsp[(3) - (3)].specifier).name); FreeSpecifier((yyvsp[(3) - (3)].specifier)); ;}
6904 /* Line 1464 of yacc.c */
6906 { (yyval.templateDatatype) = MkTemplateDatatype((yyvsp[(1) - (1)].list), null); ;}
6911 /* Line 1464 of yacc.c */
6913 { (yyval.templateDatatype) = MkTemplateDatatype((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
6918 /* Line 1464 of yacc.c */
6920 { (yyval.templateArgument) = MkTemplateTypeArgument(MkTemplateDatatype((yyvsp[(1) - (1)].list), null)); ;}
6925 /* Line 1464 of yacc.c */
6927 { (yyval.templateArgument) = MkTemplateTypeArgument(MkTemplateDatatype((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator))); ;}
6932 /* Line 1464 of yacc.c */
6934 { (yyval.templateArgument) = MkTemplateExpressionArgument((yyvsp[(1) - (1)].exp)); ;}
6939 /* Line 1464 of yacc.c */
6941 { (yyval.templateArgument) = (yyvsp[(3) - (3)].templateArgument); (yyval.templateArgument).name = (yyvsp[(1) - (3)].id); (yyval.templateArgument).loc = (yyloc); ;}
6946 /* Line 1464 of yacc.c */
6948 { (yyval.templateArgument) = (yyvsp[(3) - (3)].templateArgument); (yyval.templateArgument).name = (yyvsp[(1) - (3)].id); (yyval.templateArgument).loc = (yyloc); ;}
6953 /* Line 1464 of yacc.c */
6956 (yyval.templateArgument) = (yyvsp[(3) - (3)].templateArgument);
6957 if((yyvsp[(1) - (3)].templateDatatype).specifiers && (yyvsp[(1) - (3)].templateDatatype).specifiers->first)
6959 Specifier spec = (yyvsp[(1) - (3)].templateDatatype).specifiers->first;
6960 if(spec.type == nameSpecifier)
6961 (yyval.templateArgument).name = MkIdentifier(spec.name);
6963 FreeTemplateDataType((yyvsp[(1) - (3)].templateDatatype));
6964 (yyval.templateArgument).loc = (yyloc);
6970 /* Line 1464 of yacc.c */
6973 (yyval.templateArgument) = (yyvsp[(3) - (3)].templateArgument);
6974 if((yyvsp[(1) - (3)].templateDatatype).specifiers && (yyvsp[(1) - (3)].templateDatatype).specifiers->first)
6976 Specifier spec = (yyvsp[(1) - (3)].templateDatatype).specifiers->first;
6977 if(spec.type == nameSpecifier)
6978 (yyval.templateArgument).name = MkIdentifier(spec.name);
6980 FreeTemplateDataType((yyvsp[(1) - (3)].templateDatatype));
6981 (yyval.templateArgument).loc = (yyloc);
6987 /* Line 1464 of yacc.c */
6989 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].templateArgument)); ;}
6994 /* Line 1464 of yacc.c */
6996 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].templateArgument)); ;}
7001 /* Line 1464 of yacc.c */
7003 { (yyval.specifierType) = structSpecifier; ;}
7008 /* Line 1464 of yacc.c */
7010 { (yyval.specifierType) = unionSpecifier; ;}
7015 /* Line 1464 of yacc.c */
7017 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].classDef)); ;}
7022 /* Line 1464 of yacc.c */
7024 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].classDef)); ;}
7029 /* Line 1464 of yacc.c */
7031 { (yyval.memberInit) = MkMemberInitExp((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); ;}
7036 /* Line 1464 of yacc.c */
7038 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].memberInit)); ((MemberInit)(yyval.list)->last).loc = (yyloc); ;}
7043 /* Line 1464 of yacc.c */
7045 { ((MemberInit)(yyvsp[(1) - (3)].list)->last).loc.end = (yylsp[(3) - (3)]).start; ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].memberInit)); (yyval.list) = (yyvsp[(1) - (3)].list); ;}
7050 /* Line 1464 of yacc.c */
7052 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), null, (yyvsp[(3) - (9)].id), (yyvsp[(6) - (9)].stmt), (yyvsp[(8) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
7057 /* Line 1464 of yacc.c */
7059 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), null, (yyvsp[(3) - (9)].id), (yyvsp[(8) - (9)].stmt), (yyvsp[(6) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
7064 /* Line 1464 of yacc.c */
7066 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), null, (yyvsp[(3) - (7)].id), (yyvsp[(6) - (7)].stmt), null); (yyval.prop).loc = (yyloc); ;}
7071 /* Line 1464 of yacc.c */
7073 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), null, (yyvsp[(3) - (7)].id), null, (yyvsp[(6) - (7)].stmt)); (yyval.prop).loc = (yyloc); ;}
7078 /* Line 1464 of yacc.c */
7080 { (yyval.prop) = MkProperty((yyvsp[(2) - (5)].list), null, (yyvsp[(3) - (5)].id), null, null); (yyval.prop).loc = (yyloc); ;}
7085 /* Line 1464 of yacc.c */
7087 { (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); ;}
7092 /* Line 1464 of yacc.c */
7094 { (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); ;}
7099 /* Line 1464 of yacc.c */
7101 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), (yyvsp[(3) - (8)].declarator), (yyvsp[(4) - (8)].id), (yyvsp[(7) - (8)].stmt), null); (yyval.prop).loc = (yyloc); ;}
7106 /* Line 1464 of yacc.c */
7108 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), (yyvsp[(3) - (8)].declarator), (yyvsp[(4) - (8)].id), null, (yyvsp[(7) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
7113 /* Line 1464 of yacc.c */
7115 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), (yyvsp[(3) - (6)].declarator), (yyvsp[(4) - (6)].id), null, null); (yyval.prop).loc = (yyloc); ;}
7120 /* Line 1464 of yacc.c */
7122 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), null, null, (yyvsp[(5) - (8)].stmt), (yyvsp[(7) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
7127 /* Line 1464 of yacc.c */
7129 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), null, null, (yyvsp[(7) - (8)].stmt), (yyvsp[(5) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
7134 /* Line 1464 of yacc.c */
7136 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), null, null, (yyvsp[(5) - (6)].stmt), null); (yyval.prop).loc = (yyloc); ;}
7141 /* Line 1464 of yacc.c */
7143 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), null, null, null, (yyvsp[(5) - (6)].stmt)); (yyval.prop).loc = (yyloc); ;}
7148 /* Line 1464 of yacc.c */
7150 { (yyval.prop) = MkProperty((yyvsp[(2) - (4)].list), null, null, null, null); (yyval.prop).loc = (yyloc); ;}
7155 /* Line 1464 of yacc.c */
7157 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), (yyvsp[(3) - (9)].declarator), null, (yyvsp[(6) - (9)].stmt), (yyvsp[(8) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
7162 /* Line 1464 of yacc.c */
7164 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), (yyvsp[(3) - (9)].declarator), null, (yyvsp[(8) - (9)].stmt), (yyvsp[(6) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
7169 /* Line 1464 of yacc.c */
7171 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), (yyvsp[(3) - (7)].declarator), null, (yyvsp[(6) - (7)].stmt), null); (yyval.prop).loc = (yyloc); ;}
7176 /* Line 1464 of yacc.c */
7178 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), (yyvsp[(3) - (7)].declarator), null, null, (yyvsp[(6) - (7)].stmt)); (yyval.prop).loc = (yyloc); ;}
7183 /* Line 1464 of yacc.c */
7185 { (yyval.prop) = MkProperty((yyvsp[(2) - (5)].list), (yyvsp[(3) - (5)].declarator), null, null, null); (yyval.prop).loc = (yyloc); ;}
7190 /* Line 1464 of yacc.c */
7192 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[(1) - (3)].list), (yyvsp[(2) - (3)].list), null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); ;}
7197 /* Line 1464 of yacc.c */
7199 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[(1) - (2)].list), null, null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); ;}
7204 /* Line 1464 of yacc.c */
7206 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[(1) - (2)].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); ;}
7211 /* Line 1464 of yacc.c */
7213 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[(1) - (2)].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); ;}
7218 /* Line 1464 of yacc.c */
7220 { (yyval.classDef) = MkClassDefFunction((yyvsp[(1) - (1)].classFunction)); (yyval.classDef).loc = (yyloc); ;}
7225 /* Line 1464 of yacc.c */
7227 { (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); ;}
7232 /* Line 1464 of yacc.c */
7234 { (yyval.classDef) = MkClassDefProperty((yyvsp[(1) - (1)].prop)); (yyval.classDef).loc = (yyloc); globalContext.nextID++; ;}
7239 /* Line 1464 of yacc.c */
7241 { (yyval.classDef) = null; ;}
7246 /* Line 1464 of yacc.c */
7248 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].declarator)); ;}
7253 /* Line 1464 of yacc.c */
7255 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].declarator)); ;}
7260 /* Line 1464 of yacc.c */
7262 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (1)].declarator), null); (yyval.declarator).loc = (yyloc); ;}
7267 /* Line 1464 of yacc.c */
7269 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (2)].declarator), null); (yyval.declarator).structDecl.attrib = (yyvsp[(2) - (2)].attrib); (yyval.declarator).loc = (yyloc); ;}
7274 /* Line 1464 of yacc.c */
7276 { (yyval.declarator) = MkStructDeclarator(null, (yyvsp[(2) - (2)].exp)); (yyval.declarator).loc = (yyloc); ;}
7281 /* Line 1464 of yacc.c */
7283 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (3)].declarator), (yyvsp[(3) - (3)].exp)); (yyval.declarator).loc = (yyloc); ;}
7288 /* Line 1464 of yacc.c */
7290 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (5)].declarator), (yyvsp[(3) - (5)].exp)); (yyval.declarator).structDecl.posExp = (yyvsp[(5) - (5)].exp); (yyval.declarator).loc = (yyloc); ;}
7295 /* Line 1464 of yacc.c */
7297 { (yyval.specifier) = MkEnum((yyvsp[(2) - (2)].id), null); if(declMode) DeclClass(0, (yyvsp[(2) - (2)].id).string); ;}
7302 /* Line 1464 of yacc.c */
7304 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[(2) - (2)].specifier).name), null); if(declMode) DeclClass(0, (yyvsp[(2) - (2)].specifier).name); FreeSpecifier((yyvsp[(2) - (2)].specifier)); ;}
7309 /* Line 1464 of yacc.c */
7311 { (yyval.specifier) = MkEnum(null, (yyvsp[(3) - (4)].list)); ;}
7316 /* Line 1464 of yacc.c */
7318 { (yyval.specifier) = MkEnum((yyvsp[(2) - (5)].id), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[(2) - (5)].id).string); ;}
7323 /* Line 1464 of yacc.c */
7325 { (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); ;}
7330 /* Line 1464 of yacc.c */
7332 { (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)); ;}
7337 /* Line 1464 of yacc.c */
7339 { (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)); ;}
7344 /* Line 1464 of yacc.c */
7346 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].enumerator)); ;}
7351 /* Line 1464 of yacc.c */
7353 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].enumerator)); ;}
7358 /* Line 1464 of yacc.c */
7360 { (yyval.enumerator) = MkEnumerator((yyvsp[(1) - (1)].id), null); ;}
7365 /* Line 1464 of yacc.c */
7367 { (yyval.enumerator) = MkEnumerator((yyvsp[(1) - (3)].id), (yyvsp[(3) - (3)].exp)); ;}
7372 /* Line 1464 of yacc.c */
7374 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
7379 /* Line 1464 of yacc.c */
7381 { (yyval.declarator) = MkDeclaratorArray(null, null); ;}
7386 /* Line 1464 of yacc.c */
7388 { (yyval.declarator) = MkDeclaratorArray(null, (yyvsp[(2) - (3)].exp)); ;}
7393 /* Line 1464 of yacc.c */
7395 { (yyval.declarator) = MkDeclaratorEnumArray(null, (yyvsp[(2) - (3)].specifier)); ;}
7400 /* Line 1464 of yacc.c */
7402 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (3)].declarator), null); ;}
7407 /* Line 1464 of yacc.c */
7409 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].exp)); ;}
7414 /* Line 1464 of yacc.c */
7416 { (yyval.declarator) = MkDeclaratorEnumArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].specifier)); ;}
7421 /* Line 1464 of yacc.c */
7423 { (yyval.declarator) = MkDeclaratorFunction(null, null); ;}
7428 /* Line 1464 of yacc.c */
7430 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[(2) - (3)].list)); ;}
7435 /* Line 1464 of yacc.c */
7437 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), null); ;}
7442 /* Line 1464 of yacc.c */
7444 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].list)); ;}
7449 /* Line 1464 of yacc.c */
7451 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
7456 /* Line 1464 of yacc.c */
7458 { (yyval.declarator) = MkDeclaratorFunction(null, null); ;}
7463 /* Line 1464 of yacc.c */
7465 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[(2) - (3)].list)); ;}
7470 /* Line 1464 of yacc.c */
7472 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), null); ;}
7477 /* Line 1464 of yacc.c */
7479 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].list)); ;}
7484 /* Line 1464 of yacc.c */
7486 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (1)].pointer), null); ;}
7491 /* Line 1464 of yacc.c */
7493 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
7498 /* Line 1464 of yacc.c */
7500 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (2)].pointer), null)); ;}
7505 /* Line 1464 of yacc.c */
7507 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
7512 /* Line 1464 of yacc.c */
7514 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
7519 /* Line 1464 of yacc.c */
7521 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (1)].pointer), null); ;}
7526 /* Line 1464 of yacc.c */
7528 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
7533 /* Line 1464 of yacc.c */
7535 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (2)].pointer), null)); ;}
7540 /* Line 1464 of yacc.c */
7542 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
7547 /* Line 1464 of yacc.c */
7549 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
7554 /* Line 1464 of yacc.c */
7556 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
7561 /* Line 1464 of yacc.c */
7563 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
7568 /* Line 1464 of yacc.c */
7570 { (yyval.declarator) = MkDeclaratorExtendedEnd((yyvsp[(2) - (2)].extDecl), (yyvsp[(1) - (2)].declarator)); ;}
7575 /* Line 1464 of yacc.c */
7577 { (yyval.declarator) = MkDeclaratorIdentifier((yyvsp[(1) - (1)].id)); ;}
7582 /* Line 1464 of yacc.c */
7584 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
7589 /* Line 1464 of yacc.c */
7591 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].exp)); ;}
7596 /* Line 1464 of yacc.c */
7598 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (3)].declarator), null); ;}
7603 /* Line 1464 of yacc.c */
7605 { (yyval.declarator) = MkDeclaratorEnumArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].specifier)); ;}
7610 /* Line 1464 of yacc.c */
7612 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
7617 /* Line 1464 of yacc.c */
7619 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
7624 /* Line 1464 of yacc.c */
7626 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
7631 /* Line 1464 of yacc.c */
7633 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (3)].pointer), MkDeclaratorExtended((yyvsp[(2) - (3)].extDecl), (yyvsp[(3) - (3)].declarator))); ;}
7638 /* Line 1464 of yacc.c */
7640 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), (yyvsp[(2) - (3)].list)); ;}
7645 /* Line 1464 of yacc.c */
7647 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), (yyvsp[(2) - (3)].list)); ;}
7652 /* Line 1464 of yacc.c */
7654 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (2)].declarator), null); ;}
7659 /* Line 1464 of yacc.c */
7661 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
7666 /* Line 1464 of yacc.c */
7668 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
7673 /* Line 1464 of yacc.c */
7675 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
7680 /* Line 1464 of yacc.c */
7682 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
7687 /* Line 1464 of yacc.c */
7689 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
7694 /* Line 1464 of yacc.c */
7696 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (3)].pointer), MkDeclaratorExtended((yyvsp[(2) - (3)].extDecl), (yyvsp[(3) - (3)].declarator))); ;}
7701 /* Line 1464 of yacc.c */
7703 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
7708 /* Line 1464 of yacc.c */
7710 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
7715 /* Line 1464 of yacc.c */
7717 { (yyval.pointer) = MkPointer(null, null); ;}
7722 /* Line 1464 of yacc.c */
7724 { (yyval.pointer) = MkPointer((yyvsp[(2) - (2)].list), null); ;}
7729 /* Line 1464 of yacc.c */
7731 { (yyval.pointer) = MkPointer(null, (yyvsp[(2) - (2)].pointer)); ;}
7736 /* Line 1464 of yacc.c */
7738 { (yyval.pointer) = MkPointer((yyvsp[(2) - (3)].list), (yyvsp[(3) - (3)].pointer)); ;}
7743 /* Line 1464 of yacc.c */
7745 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), MkTypeName(null, null)); ;}
7750 /* Line 1464 of yacc.c */
7752 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].typeName)); ;}
7757 /* Line 1464 of yacc.c */
7759 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typeName)); ;}
7764 /* Line 1464 of yacc.c */
7766 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
7771 /* Line 1464 of yacc.c */
7773 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
7778 /* Line 1464 of yacc.c */
7780 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), MkDeclaratorPointer(MkPointer(null,null), null)); ;}
7785 /* Line 1464 of yacc.c */
7787 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (3)].list), MkDeclaratorPointer(MkPointer(null,null), (yyvsp[(3) - (3)].declarator))); ;}
7792 /* Line 1464 of yacc.c */
7794 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (1)].list), null); ;}
7799 /* Line 1464 of yacc.c */
7801 { (yyval.typeName) = MkTypeName(MkListOne(MkSpecifier(CLASS)), null); ;}
7806 /* Line 1464 of yacc.c */
7808 { (yyval.list) = MkList(); ListAdd((yyval.list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[(1) - (1)].id)))); ;}
7813 /* Line 1464 of yacc.c */
7815 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[(3) - (3)].id)))); ;}
7820 /* Line 1464 of yacc.c */
7822 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (1)].list), null); ;}
7827 /* Line 1464 of yacc.c */
7829 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
7834 /* Line 1464 of yacc.c */
7836 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (1)].list), null); ;}
7841 /* Line 1464 of yacc.c */
7843 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
7848 /* Line 1464 of yacc.c */
7850 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
7855 /* Line 1464 of yacc.c */
7857 { (yyval.initializer) = MkInitializerList((yyvsp[(2) - (3)].list)); (yyval.initializer).loc = (yyloc); ;}
7862 /* Line 1464 of yacc.c */
7865 (yyval.initializer) = MkInitializerList((yyvsp[(2) - (4)].list));
7866 (yyval.initializer).loc = (yyloc);
7869 Expression exp = MkExpDummy();
7870 Initializer init = MkInitializerAssignment(exp);
7871 init.loc = (yylsp[(3) - (4)]);
7872 exp.loc = (yylsp[(3) - (4)]);
7873 ListAdd((yyvsp[(2) - (4)].list), init);
7880 /* Line 1464 of yacc.c */
7882 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
7887 /* Line 1464 of yacc.c */
7889 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
7894 /* Line 1464 of yacc.c */
7896 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].initializer)); ;}
7901 /* Line 1464 of yacc.c */
7903 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].initializer)); ;}
7908 /* Line 1464 of yacc.c */
7910 { (yyval.stmt) = MkLabeledStmt((yyvsp[(1) - (3)].id), (yyvsp[(3) - (3)].stmt)); (yyval.stmt).loc = (yyloc); ;}
7915 /* Line 1464 of yacc.c */
7917 { (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; ;}
7922 /* Line 1464 of yacc.c */
7924 { (yyval.stmt) = MkCaseStmt(null, (yyvsp[(3) - (3)].stmt)); (yyval.stmt).loc = (yyloc); ;}
7929 /* Line 1464 of yacc.c */
7931 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].declaration)); ;}
7936 /* Line 1464 of yacc.c */
7938 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declaration)); ;}
7943 /* Line 1464 of yacc.c */
7945 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].stmt)); ;}
7950 /* Line 1464 of yacc.c */
7952 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].stmt)); ;}
7957 /* Line 1464 of yacc.c */
7959 { Statement stmt = MkBadDeclStmt((yyvsp[(2) - (2)].declaration)); stmt.loc = (yylsp[(2) - (2)]); /*yyerror(); */ ListAdd((yyvsp[(1) - (2)].list), stmt); (yyval.list) = (yyvsp[(1) - (2)].list); ;}
7964 /* Line 1464 of yacc.c */
7966 { (yyval.stmt) = MkCompoundStmt(null, (yyvsp[(1) - (1)].list)); ;}
7971 /* Line 1464 of yacc.c */
7973 { (yyval.stmt) = MkCompoundStmt((yyvsp[(1) - (1)].list), null); ;}
7978 /* Line 1464 of yacc.c */
7980 { (yyval.stmt) = MkCompoundStmt((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); ;}
7985 /* Line 1464 of yacc.c */
7987 { (yyval.context) = PushContext(); ;}
7992 /* Line 1464 of yacc.c */
7995 (yyval.stmt) = MkCompoundStmt(null, null);
7996 (yyval.stmt).compound.context = PushContext();
7997 PopContext((yyval.stmt).compound.context);
7998 (yyval.stmt).loc = (yyloc);
8004 /* Line 1464 of yacc.c */
8006 { (yyval.stmt) = (yyvsp[(2) - (3)].stmt); (yyval.stmt).compound.context = (yyvsp[(1) - (3)].context); PopContext((yyvsp[(1) - (3)].context)); (yyval.stmt).loc = (yyloc); ;}
8011 /* Line 1464 of yacc.c */
8013 { (yyval.stmt) = MkExpressionStmt(null); (yyval.stmt).loc = (yyloc); ;}
8018 /* Line 1464 of yacc.c */
8020 { (yyval.stmt) = MkExpressionStmt((yyvsp[(1) - (2)].list)); (yyval.stmt).loc = (yyloc); ;}
8025 /* Line 1464 of yacc.c */
8027 { (yyval.stmt) = MkIfStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt), null); (yyval.stmt).loc = (yyloc); ;}
8032 /* Line 1464 of yacc.c */
8034 { (yyval.stmt) = MkIfStmt((yyvsp[(3) - (7)].list), (yyvsp[(5) - (7)].stmt), (yyvsp[(7) - (7)].stmt)); (yyval.stmt).loc = (yyloc); ;}
8039 /* Line 1464 of yacc.c */
8041 { (yyval.stmt) = MkSwitchStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
8046 /* Line 1464 of yacc.c */
8048 { (yyval.stmt) = MkWhileStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
8053 /* Line 1464 of yacc.c */
8055 { (yyval.stmt) = MkDoWhileStmt((yyvsp[(2) - (7)].stmt), (yyvsp[(5) - (7)].list)); (yyval.stmt).loc = (yyloc); ;}
8060 /* Line 1464 of yacc.c */
8062 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (6)].stmt), (yyvsp[(4) - (6)].stmt), null, (yyvsp[(6) - (6)].stmt)); (yyval.stmt).loc = (yyloc); ;}
8067 /* Line 1464 of yacc.c */
8069 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (7)].stmt), (yyvsp[(4) - (7)].stmt), (yyvsp[(5) - (7)].list), (yyvsp[(7) - (7)].stmt)); (yyval.stmt).loc = (yyloc); ;}
8074 /* Line 1464 of yacc.c */
8076 { (yyval.stmt) = MkWhileStmt(null, (yyvsp[(4) - (4)].stmt)); (yyval.stmt).loc = (yyloc); ;}
8081 /* Line 1464 of yacc.c */
8083 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (5)].stmt), null, null, (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
8088 /* Line 1464 of yacc.c */
8090 { (yyval.stmt) = MkForStmt(null, null, null, (yyvsp[(4) - (4)].stmt)); (yyval.stmt).loc = (yyloc); ;}
8095 /* Line 1464 of yacc.c */
8097 { (yyval.stmt) = MkGotoStmt((yyvsp[(2) - (3)].id)); (yyval.stmt).loc = (yyloc); ;}
8102 /* Line 1464 of yacc.c */
8104 { (yyval.stmt) = MkContinueStmt(); (yyval.stmt).loc = (yyloc); ;}
8109 /* Line 1464 of yacc.c */
8111 { (yyval.stmt) = MkBreakStmt(); (yyval.stmt).loc = (yyloc); ;}
8116 /* Line 1464 of yacc.c */
8118 { Expression exp = MkExpDummy(); (yyval.stmt) = MkReturnStmt(MkListOne(exp)); (yyval.stmt).loc = (yyloc); exp.loc = (yylsp[(2) - (2)]); ;}
8123 /* Line 1464 of yacc.c */
8125 { (yyval.stmt) = MkReturnStmt((yyvsp[(2) - (3)].list)); (yyval.stmt).loc = (yyloc); ;}
8130 /* Line 1464 of yacc.c */
8132 { (yyval.string) = CopyString(yytext); ;}
8137 /* Line 1464 of yacc.c */
8139 { (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;;}
8144 /* Line 1464 of yacc.c */
8146 { (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;;}
8151 /* Line 1464 of yacc.c */
8153 { (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;;}
8158 /* Line 1464 of yacc.c */
8160 { (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;;}
8165 /* Line 1464 of yacc.c */
8167 { (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; ;}
8172 /* Line 1464 of yacc.c */
8174 { (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;;}
8179 /* Line 1464 of yacc.c */
8181 { 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)); ;}
8186 /* Line 1464 of yacc.c */
8188 { 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)); ;}
8193 /* Line 1464 of yacc.c */
8195 { (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; ;}
8200 /* Line 1464 of yacc.c */
8202 { (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;;}
8207 /* Line 1464 of yacc.c */
8209 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
8214 /* Line 1464 of yacc.c */
8216 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
8221 /* Line 1464 of yacc.c */
8223 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), null); (yyval.classFunction).loc = (yyloc); ;}
8228 /* Line 1464 of yacc.c */
8230 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
8235 /* Line 1464 of yacc.c */
8237 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
8242 /* Line 1464 of yacc.c */
8244 { (yyval.classFunction) = MkClassFunction((yyvsp[(1) - (2)].list), null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
8249 /* Line 1464 of yacc.c */
8251 { (yyval.classFunction) = MkClassFunction((yyvsp[(1) - (2)].list), null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
8256 /* Line 1464 of yacc.c */
8258 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
8263 /* Line 1464 of yacc.c */
8265 { (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;;}
8270 /* Line 1464 of yacc.c */
8272 { (yyval.memberInit) = MkMemberInit(null, (yyvsp[(1) - (1)].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc);;}
8277 /* Line 1464 of yacc.c */
8279 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].memberInit)); ;}
8284 /* Line 1464 of yacc.c */
8286 { ((MemberInit)(yyvsp[(1) - (3)].list)->last).loc.end = (yylsp[(3) - (3)]).start; ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].memberInit)); (yyval.list) = (yyvsp[(1) - (3)].list); ;}
8291 /* Line 1464 of yacc.c */
8293 { if((yyvsp[(1) - (2)].list)->last) ((MemberInit)(yyvsp[(1) - (2)].list)->last).loc.end = (yylsp[(2) - (2)]).end; (yyval.list) = (yyvsp[(1) - (2)].list); ;}
8298 /* Line 1464 of yacc.c */
8300 { MembersInit members = MkMembersInitList((yyvsp[(1) - (1)].list)); (yyval.list) = MkList(); ListAdd((yyval.list), members); members.loc = (yylsp[(1) - (1)]); ;}
8305 /* Line 1464 of yacc.c */
8307 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitMethod((yyvsp[(1) - (1)].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(1) - (1)]); ;}
8312 /* Line 1464 of yacc.c */
8314 { MembersInit members = MkMembersInitList((yyvsp[(2) - (2)].list)); ListAdd((yyval.list), members); members.loc = (yylsp[(2) - (2)]); (yyval.list) = (yyvsp[(1) - (2)].list); ;}
8319 /* Line 1464 of yacc.c */
8321 { ListAdd((yyval.list), MkMembersInitMethod((yyvsp[(2) - (2)].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(2) - (2)]);(yyval.list) = (yyvsp[(1) - (2)].list); ;}
8326 /* Line 1464 of yacc.c */
8328 { MembersInit members = MkMembersInitList(MkList()); (yyval.list) = MkList(); ListAdd((yyval.list), members); members.loc = (yylsp[(1) - (1)]); ;}
8333 /* Line 1464 of yacc.c */
8335 { MembersInit members = MkMembersInitList(MkList()); ListAdd((yyval.list), members); members.loc = (yylsp[(2) - (2)]); (yyval.list) = (yyvsp[(1) - (2)].list); ;}
8340 /* Line 1464 of yacc.c */
8342 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitList((yyvsp[(1) - (1)].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(1) - (1)]); ;}
8347 /* Line 1464 of yacc.c */
8349 { ListAdd((yyvsp[(1) - (2)].list), MkMembersInitList((yyvsp[(2) - (2)].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(2) - (2)]); ;}
8354 /* Line 1464 of yacc.c */
8356 { parsedType = (yyvsp[(1) - (1)].typeName); ;}
8361 /* Line 1464 of yacc.c */
8363 { parsedType = (yyvsp[(1) - (3)].typeName); parsedType.bitCount = (yyvsp[(3) - (3)].exp); ;}
8368 /* Line 1464 of yacc.c */
8369 #line 8369 "type.ec"
8372 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
8376 YY_STACK_PRINT (yyss, yyssp);
8381 /* Now `shift' the result of the reduction. Determine what state
8382 that goes to, based on the state we popped back to and the rule
8383 number reduced by. */
8387 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
8388 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
8389 yystate = yytable[yystate];
8391 yystate = yydefgoto[yyn - YYNTOKENS];
8396 /*------------------------------------.
8397 | yyerrlab -- here on detecting error |
8398 `------------------------------------*/
8400 /* If not already recovering from an error, report this error. */
8404 #if ! YYERROR_VERBOSE
8405 yyerror (YY_("syntax error"));
8408 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
8409 if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
8411 YYSIZE_T yyalloc = 2 * yysize;
8412 if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
8413 yyalloc = YYSTACK_ALLOC_MAXIMUM;
8414 if (yymsg != yymsgbuf)
8415 YYSTACK_FREE (yymsg);
8416 yymsg = (char *) YYSTACK_ALLOC (yyalloc);
8418 yymsg_alloc = yyalloc;
8422 yymsg_alloc = sizeof yymsgbuf;
8426 if (0 < yysize && yysize <= yymsg_alloc)
8428 (void) yysyntax_error (yymsg, yystate, yychar);
8433 yyerror (YY_("syntax error"));
8435 goto yyexhaustedlab;
8441 yyerror_range[0] = yylloc;
8443 if (yyerrstatus == 3)
8445 /* If just tried and failed to reuse lookahead token after an
8446 error, discard it. */
8448 if (yychar <= YYEOF)
8450 /* Return failure if at end of input. */
8451 if (yychar == YYEOF)
8456 yydestruct ("Error: discarding",
8457 yytoken, &yylval, &yylloc);
8462 /* Else will try to reuse lookahead token after shifting the error
8467 /*---------------------------------------------------.
8468 | yyerrorlab -- error raised explicitly by YYERROR. |
8469 `---------------------------------------------------*/
8472 /* Pacify compilers like GCC when the user code never invokes
8473 YYERROR and the label yyerrorlab therefore never appears in user
8475 if (/*CONSTCOND*/ 0)
8478 yyerror_range[0] = yylsp[1-yylen];
8479 /* Do not reclaim the symbols of the rule which action triggered
8483 YY_STACK_PRINT (yyss, yyssp);
8488 /*-------------------------------------------------------------.
8489 | yyerrlab1 -- common code for both syntax error and YYERROR. |
8490 `-------------------------------------------------------------*/
8492 yyerrstatus = 3; /* Each real token shifted decrements this. */
8496 yyn = yypact[yystate];
8497 if (yyn != YYPACT_NINF)
8500 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
8508 /* Pop the current state because it cannot handle the error token. */
8512 yyerror_range[0] = *yylsp;
8513 yydestruct ("Error: popping",
8514 yystos[yystate], yyvsp, yylsp);
8517 YY_STACK_PRINT (yyss, yyssp);
8522 yyerror_range[1] = yylloc;
8523 /* Using YYLLOC is tempting, but would change the location of
8524 the lookahead. YYLOC is available though. */
8525 YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2);
8528 /* Shift the error token. */
8529 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
8535 /*-------------------------------------.
8536 | yyacceptlab -- YYACCEPT comes here. |
8537 `-------------------------------------*/
8542 /*-----------------------------------.
8543 | yyabortlab -- YYABORT comes here. |
8544 `-----------------------------------*/
8549 #if !defined(yyoverflow) || YYERROR_VERBOSE
8550 /*-------------------------------------------------.
8551 | yyexhaustedlab -- memory exhaustion comes here. |
8552 `-------------------------------------------------*/
8554 yyerror (YY_("memory exhausted"));
8560 if (yychar != YYEMPTY)
8561 yydestruct ("Cleanup: discarding lookahead",
8562 yytoken, &yylval, &yylloc);
8563 /* Do not reclaim the symbols of the rule which action triggered
8564 this YYABORT or YYACCEPT. */
8566 YY_STACK_PRINT (yyss, yyssp);
8567 while (yyssp != yyss)
8569 yydestruct ("Cleanup: popping",
8570 yystos[*yyssp], yyvsp, yylsp);
8575 YYSTACK_FREE (yyss);
8578 if (yymsg != yymsgbuf)
8579 YYSTACK_FREE (yymsg);
8581 /* Make sure YYID is used. */
8582 return YYID (yyresult);
8587 /* Line 1684 of yacc.c */