1 /* A Bison parser, made by GNU Bison 2.4.2. */
3 /* Skeleton implementation for Bison's Yacc-like parsers in C
5 Copyright (C) 1984, 1989-1990, 2000-2006, 2009-2010 Free Software
8 This program is free software: you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation, either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
21 /* As a special exception, you may create a larger work that contains
22 part or all of the Bison parser skeleton and distribute that work
23 under terms of your choice, so long as that work isn't itself a
24 parser generator using the skeleton or a modified version thereof
25 as a parser skeleton. Alternatively, if you modify or redistribute
26 the parser skeleton itself, you may (at your option) remove this
27 special exception, which will cause the skeleton and the resulting
28 Bison output files to be licensed under the GNU General Public
29 License without this special exception.
31 This special exception was added by the Free Software Foundation in
32 version 2.2 of Bison. */
34 /* C LALR(1) parser skeleton written by Richard Stallman, by
35 simplifying the original so-called "semantic" parser. */
37 /* All symbols defined below should begin with yy or YY, to avoid
38 infringing on user name space. This should be done even for local
39 variables, as they might otherwise be expanded by user macros.
40 There are some unavoidable exceptions within include files to
41 define necessary library symbols; they are noted "INFRINGES ON
42 USER NAME SPACE" below. */
44 /* Identify Bison output. */
48 #define YYBISON_VERSION "2.4.2"
51 #define YYSKELETON_NAME "yacc.c"
62 /* Using locations. */
63 #define YYLSP_NEEDED 1
67 /* Copy the first part of user declarations. */
69 /* Line 189 of yacc.c */
70 #line 1 "expression.y"
75 #define YYSIZE_T size_t
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;
85 Expression parsedExpression;
87 #define yyparse expression_yyparse
88 #define yylval expression_yylval
89 #define yychar expression_yychar
90 #define yydebug expression_yydebug
91 #define yynerrs expression_yynerrs
92 #define yylloc expression_yylloc
94 // #define PRECOMPILER
95 extern File fileInput;
106 /* Line 189 of yacc.c */
107 #line 108 "expression.ec"
109 /* Enabling traces. */
114 /* Enabling verbose error messages. */
115 #ifdef YYERROR_VERBOSE
116 # undef YYERROR_VERBOSE
117 # define YYERROR_VERBOSE 1
119 # define YYERROR_VERBOSE 0
122 /* Enabling the token table. */
123 #ifndef YYTOKEN_TABLE
124 # define YYTOKEN_TABLE 0
131 /* Put the tokens into the symbol table, so that GDB and other debuggers
136 STRING_LITERAL = 260,
223 CLASS_DESIGNER = 347,
224 CLASS_NO_EXPANSION = 348,
227 CLASS_DEFAULT_PROPERTY = 351,
228 PROPERTY_CATEGORY = 352,
230 CLASS_PROPERTY = 354,
249 WIDE_STRING_LITERAL = 373,
250 BUILTIN_OFFSETOF = 374
256 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
257 typedef union YYSTYPE
260 /* Line 214 of yacc.c */
261 #line 38 "expression.y"
265 SpecifierType specifierType;
270 Enumerator enumerator;
271 Declarator declarator;
273 Initializer initializer;
274 InitDeclarator initDeclarator;
276 Declaration declaration;
278 FunctionDefinition function;
285 Instantiation instance;
286 MembersInit membersInit;
287 MemberInit memberInit;
288 ClassFunction classFunction;
289 ClassDefinition _class;
297 /* Line 214 of yacc.c */
298 #line 299 "expression.ec"
300 # define YYSTYPE_IS_TRIVIAL 1
301 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
302 # define YYSTYPE_IS_DECLARED 1
305 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
306 typedef struct YYLTYPE
313 # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
314 # define YYLTYPE_IS_DECLARED 1
315 # define YYLTYPE_IS_TRIVIAL 1
319 /* Copy the second part of user declarations. */
322 /* Line 264 of yacc.c */
323 #line 324 "expression.ec"
330 typedef YYTYPE_UINT8 yytype_uint8;
332 typedef unsigned char yytype_uint8;
336 typedef YYTYPE_INT8 yytype_int8;
337 #elif (defined __STDC__ || defined __C99__FUNC__ \
338 || defined __cplusplus || defined _MSC_VER)
339 typedef signed char yytype_int8;
341 typedef short int yytype_int8;
345 typedef YYTYPE_UINT16 yytype_uint16;
347 typedef unsigned short int yytype_uint16;
351 typedef YYTYPE_INT16 yytype_int16;
353 typedef short int yytype_int16;
357 # ifdef __SIZE_TYPE__
358 # define YYSIZE_T __SIZE_TYPE__
359 # elif defined size_t
360 # define YYSIZE_T size_t
361 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
362 || defined __cplusplus || defined _MSC_VER)
363 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
364 # define YYSIZE_T size_t
366 # define YYSIZE_T unsigned int
370 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
373 # if defined YYENABLE_NLS && YYENABLE_NLS
375 # include <libintl.h> /* INFRINGES ON USER NAME SPACE */
376 # define YY_(msgid) dgettext ("bison-runtime", msgid)
380 # define YY_(msgid) msgid
384 /* Suppress unused-variable warnings by "using" E. */
385 #if ! defined lint || defined __GNUC__
386 # define YYUSE(e) ((void) (e))
388 # define YYUSE(e) /* empty */
391 /* Identity function, used to suppress warnings about constant conditions. */
395 #if (defined __STDC__ || defined __C99__FUNC__ \
396 || defined __cplusplus || defined _MSC_VER)
409 #if ! defined yyoverflow || YYERROR_VERBOSE
411 /* The parser invokes alloca or malloc; define the necessary symbols. */
413 # ifdef YYSTACK_USE_ALLOCA
414 # if YYSTACK_USE_ALLOCA
416 # define YYSTACK_ALLOC __builtin_alloca
417 # elif defined __BUILTIN_VA_ARG_INCR
418 # include <alloca.h> /* INFRINGES ON USER NAME SPACE */
420 # define YYSTACK_ALLOC __alloca
421 # elif defined _MSC_VER
422 # include <malloc.h> /* INFRINGES ON USER NAME SPACE */
423 # define alloca _alloca
425 # define YYSTACK_ALLOC alloca
426 # if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
427 || defined __cplusplus || defined _MSC_VER)
428 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
437 # ifdef YYSTACK_ALLOC
438 /* Pacify GCC's `empty if-body' warning. */
439 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
440 # ifndef YYSTACK_ALLOC_MAXIMUM
441 /* The OS might guarantee only one guard page at the bottom of the stack,
442 and a page size can be as small as 4096 bytes. So we cannot safely
443 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
444 to allow for a few compiler-allocated temporary stack slots. */
445 # define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
448 # define YYSTACK_ALLOC YYMALLOC
449 # define YYSTACK_FREE YYFREE
450 # ifndef YYSTACK_ALLOC_MAXIMUM
451 # define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
453 # if (defined __cplusplus && ! defined _STDLIB_H \
454 && ! ((defined YYMALLOC || defined malloc) \
455 && (defined YYFREE || defined free)))
456 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
462 # define YYMALLOC malloc
463 # if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
464 || defined __cplusplus || defined _MSC_VER)
465 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
470 # if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
471 || defined __cplusplus || defined _MSC_VER)
472 void free (void *); /* INFRINGES ON USER NAME SPACE */
476 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
479 #if (! defined yyoverflow \
480 && (! defined __cplusplus \
481 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
482 && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
484 /* A type that is properly aligned for any stack member. */
487 yytype_int16 yyss_alloc;
492 /* The size of the maximum gap between one aligned stack and the next. */
493 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
495 /* The size of an array large to enough to hold all stacks, each with
497 # define YYSTACK_BYTES(N) \
498 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
499 + 2 * YYSTACK_GAP_MAXIMUM)
501 /* Copy COUNT objects from FROM to TO. The source and destination do
504 # if defined __GNUC__ && 1 < __GNUC__
505 # define YYCOPY(To, From, Count) \
506 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
508 # define YYCOPY(To, From, Count) \
512 for (yyi = 0; yyi < (Count); yyi++) \
513 (To)[yyi] = (From)[yyi]; \
519 /* Relocate STACK from its old location to the new one. The
520 local variables YYSIZE and YYSTACKSIZE give the old and new number of
521 elements in the stack, and YYPTR gives the new location of the
522 stack. Advance YYPTR to a properly aligned location for the next
524 # define YYSTACK_RELOCATE(Stack_alloc, Stack) \
527 YYSIZE_T yynewbytes; \
528 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
529 Stack = &yyptr->Stack_alloc; \
530 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
531 yyptr += yynewbytes / sizeof (*yyptr); \
537 /* YYFINAL -- State number of the termination state. */
539 /* YYLAST -- Last index in YYTABLE. */
542 /* YYNTOKENS -- Number of terminals. */
543 #define YYNTOKENS 145
544 /* YYNNTS -- Number of nonterminals. */
546 /* YYNRULES -- Number of rules. */
548 /* YYNRULES -- Number of states. */
549 #define YYNSTATES 748
551 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
553 #define YYMAXUTOK 374
555 #define YYTRANSLATE(YYX) \
556 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
558 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
559 static const yytype_uint8 yytranslate[] =
561 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
562 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
563 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
564 2, 2, 2, 132, 2, 2, 122, 134, 127, 2,
565 120, 121, 128, 129, 126, 130, 123, 133, 2, 2,
566 2, 2, 2, 2, 2, 2, 2, 2, 140, 142,
567 135, 141, 136, 139, 2, 2, 2, 2, 2, 2,
568 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
569 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
570 2, 124, 2, 125, 137, 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, 143, 138, 144, 131, 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, 2, 2, 2, 2,
583 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
584 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
585 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
586 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
587 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
588 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
589 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
590 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
591 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
592 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
593 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
594 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
595 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
596 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
597 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
598 115, 116, 117, 118, 119
602 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
604 static const yytype_uint16 yyprhs[] =
606 0, 0, 3, 5, 7, 11, 13, 15, 17, 19,
607 21, 24, 29, 32, 39, 45, 52, 58, 66, 73,
608 81, 88, 90, 92, 94, 99, 103, 108, 112, 115,
609 119, 122, 125, 127, 129, 133, 137, 140, 143, 146,
610 149, 154, 157, 162, 164, 166, 168, 170, 172, 174,
611 176, 178, 180, 182, 187, 189, 193, 197, 201, 203,
612 207, 211, 213, 217, 221, 223, 227, 231, 235, 239,
613 241, 245, 249, 251, 255, 257, 261, 263, 267, 269,
614 273, 275, 279, 281, 287, 289, 293, 297, 301, 305,
615 307, 309, 311, 313, 315, 317, 319, 321, 323, 325,
616 327, 329, 333, 335, 338, 342, 345, 351, 353, 356,
617 358, 361, 363, 366, 368, 371, 373, 376, 378, 381,
618 383, 386, 388, 391, 393, 396, 398, 401, 403, 406,
619 408, 411, 413, 416, 418, 421, 423, 426, 428, 431,
620 433, 436, 438, 441, 443, 447, 449, 453, 455, 457,
621 459, 461, 463, 465, 467, 469, 471, 473, 475, 477,
622 479, 481, 483, 485, 487, 492, 494, 497, 501, 508,
623 514, 516, 518, 520, 522, 524, 526, 528, 530, 532,
624 534, 536, 538, 540, 542, 544, 546, 548, 550, 552,
625 554, 556, 558, 560, 565, 567, 569, 571, 573, 575,
626 577, 579, 581, 583, 585, 587, 589, 591, 593, 595,
627 597, 599, 601, 606, 608, 614, 619, 624, 628, 634,
628 641, 647, 653, 658, 665, 668, 671, 675, 679, 681,
629 683, 685, 688, 692, 694, 698, 708, 718, 726, 734,
630 740, 751, 762, 771, 780, 787, 796, 805, 812, 819,
631 824, 834, 844, 852, 860, 866, 870, 873, 876, 879,
632 881, 884, 886, 888, 890, 894, 896, 899, 902, 906,
633 912, 915, 918, 923, 929, 937, 945, 951, 953, 957,
634 959, 963, 967, 970, 974, 978, 982, 987, 992, 995,
635 999, 1003, 1008, 1012, 1015, 1019, 1023, 1028, 1030, 1032,
636 1035, 1038, 1041, 1045, 1047, 1049, 1052, 1055, 1058, 1062,
637 1064, 1067, 1071, 1073, 1077, 1082, 1086, 1091, 1093, 1096,
638 1099, 1103, 1107, 1109, 1111, 1114, 1117, 1120, 1124, 1128,
639 1131, 1133, 1136, 1138, 1141, 1144, 1148, 1150, 1154, 1156,
640 1160, 1163, 1166, 1168, 1170, 1174, 1176, 1179, 1181, 1185,
641 1190, 1192, 1194, 1196, 1200, 1202, 1204, 1206, 1208, 1210,
642 1212, 1216, 1221, 1225, 1227, 1230, 1232, 1235, 1238, 1240,
643 1242, 1245, 1247, 1250, 1254, 1256, 1259, 1265, 1273, 1279,
644 1285, 1293, 1300, 1308, 1313, 1319, 1324, 1328, 1331, 1334,
645 1337, 1341, 1343, 1349, 1354, 1359, 1363, 1368, 1372, 1376,
646 1379, 1382, 1384, 1388, 1393, 1397, 1400, 1403, 1406, 1409,
647 1412, 1415, 1418, 1421, 1425, 1427, 1429, 1433, 1436, 1438,
648 1440, 1443, 1446, 1448, 1451, 1453, 1455, 1458
651 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
652 static const yytype_int16 yyrhs[] =
654 251, 0, -1, 3, -1, 148, -1, 120, 169, 121,
655 -1, 146, -1, 237, -1, 4, -1, 118, -1, 235,
656 -1, 122, 235, -1, 122, 235, 123, 235, -1, 120,
657 121, -1, 71, 173, 207, 124, 170, 125, -1, 71,
658 173, 124, 170, 125, -1, 102, 173, 207, 124, 170,
659 125, -1, 102, 173, 124, 170, 125, -1, 72, 170,
660 175, 207, 124, 170, 125, -1, 72, 170, 175, 124,
661 170, 125, -1, 103, 170, 175, 207, 124, 170, 125,
662 -1, 103, 170, 175, 124, 170, 125, -1, 1, -1,
663 238, -1, 147, -1, 150, 124, 169, 125, -1, 150,
664 120, 121, -1, 150, 120, 151, 121, -1, 150, 123,
665 146, -1, 150, 146, -1, 150, 7, 146, -1, 150,
666 8, -1, 150, 9, -1, 167, -1, 149, -1, 151,
667 126, 167, -1, 151, 126, 149, -1, 8, 153, -1,
668 9, 153, -1, 154, 155, -1, 6, 153, -1, 6,
669 120, 220, 121, -1, 109, 153, -1, 109, 120, 220,
670 121, -1, 152, -1, 150, -1, 127, -1, 128, -1,
671 129, -1, 130, -1, 131, -1, 132, -1, 73, -1,
672 153, -1, 120, 220, 121, 155, -1, 155, -1, 156,
673 128, 155, -1, 156, 133, 155, -1, 156, 134, 155,
674 -1, 156, -1, 157, 129, 156, -1, 157, 130, 156,
675 -1, 157, -1, 158, 10, 157, -1, 158, 11, 157,
676 -1, 158, -1, 159, 135, 158, -1, 159, 136, 158,
677 -1, 159, 12, 158, -1, 159, 13, 158, -1, 159,
678 -1, 160, 14, 159, -1, 160, 15, 159, -1, 160,
679 -1, 161, 127, 160, -1, 161, -1, 162, 137, 161,
680 -1, 162, -1, 163, 138, 162, -1, 163, -1, 164,
681 16, 163, -1, 164, -1, 165, 17, 164, -1, 165,
682 -1, 165, 139, 169, 140, 166, -1, 166, -1, 153,
683 168, 167, -1, 166, 168, 167, -1, 153, 168, 149,
684 -1, 166, 168, 149, -1, 141, -1, 18, -1, 19,
685 -1, 20, -1, 21, -1, 22, -1, 23, -1, 24,
686 -1, 25, -1, 26, -1, 27, -1, 167, -1, 169,
687 126, 167, -1, 166, -1, 173, 142, -1, 173, 176,
688 142, -1, 236, 142, -1, 77, 146, 141, 170, 142,
689 -1, 185, -1, 172, 185, -1, 188, -1, 172, 188,
690 -1, 201, -1, 172, 201, -1, 190, -1, 172, 190,
691 -1, 178, -1, 173, 178, -1, 185, -1, 173, 185,
692 -1, 188, -1, 173, 188, -1, 201, -1, 173, 201,
693 -1, 190, -1, 173, 190, -1, 178, -1, 174, 178,
694 -1, 185, -1, 174, 185, -1, 188, -1, 174, 188,
695 -1, 186, -1, 174, 186, -1, 178, -1, 175, 178,
696 -1, 185, -1, 175, 185, -1, 189, -1, 175, 189,
697 -1, 190, -1, 175, 190, -1, 201, -1, 175, 201,
698 -1, 177, -1, 176, 126, 177, -1, 208, -1, 208,
699 141, 221, -1, 29, -1, 30, -1, 31, -1, 32,
700 -1, 33, -1, 117, -1, 74, -1, 184, -1, 79,
701 -1, 110, -1, 111, -1, 3, -1, 28, -1, 75,
702 -1, 74, -1, 44, -1, 181, -1, 181, 120, 169,
703 121, -1, 182, -1, 183, 182, -1, 183, 126, 182,
704 -1, 180, 120, 120, 183, 121, 121, -1, 180, 120,
705 120, 121, 121, -1, 44, -1, 45, -1, 75, -1,
706 187, -1, 28, -1, 46, -1, 34, -1, 35, -1,
707 36, -1, 37, -1, 38, -1, 47, -1, 39, -1,
708 42, -1, 43, -1, 40, -1, 41, -1, 85, -1,
709 113, -1, 112, -1, 191, -1, 200, -1, 186, -1,
710 100, 120, 186, 121, -1, 66, -1, 46, -1, 34,
711 -1, 35, -1, 36, -1, 37, -1, 38, -1, 47,
712 -1, 39, -1, 42, -1, 43, -1, 40, -1, 41,
713 -1, 113, -1, 112, -1, 191, -1, 200, -1, 187,
714 -1, 100, 120, 186, 121, -1, 66, -1, 192, 146,
715 143, 193, 144, -1, 192, 143, 193, 144, -1, 192,
716 146, 143, 144, -1, 192, 143, 144, -1, 192, 187,
717 143, 193, 144, -1, 192, 179, 146, 143, 193, 144,
718 -1, 192, 179, 143, 193, 144, -1, 192, 179, 146,
719 143, 144, -1, 192, 179, 143, 144, -1, 192, 179,
720 187, 143, 193, 144, -1, 192, 146, -1, 192, 187,
721 -1, 192, 179, 146, -1, 192, 179, 187, -1, 48,
722 -1, 49, -1, 197, -1, 193, 197, -1, 150, 141,
723 222, -1, 194, -1, 195, 126, 194, -1, 68, 174,
724 146, 143, 69, 230, 70, 230, 144, -1, 68, 174,
725 146, 143, 70, 230, 69, 230, 144, -1, 68, 174,
726 146, 143, 69, 230, 144, -1, 68, 174, 146, 143,
727 70, 230, 144, -1, 68, 174, 146, 143, 144, -1,
728 68, 174, 206, 146, 143, 69, 230, 70, 230, 144,
729 -1, 68, 174, 206, 146, 143, 70, 230, 69, 230,
730 144, -1, 68, 174, 206, 146, 143, 69, 230, 144,
731 -1, 68, 174, 206, 146, 143, 70, 230, 144, -1,
732 68, 174, 206, 146, 143, 144, -1, 68, 174, 143,
733 69, 230, 70, 230, 144, -1, 68, 174, 143, 70,
734 230, 69, 230, 144, -1, 68, 174, 143, 69, 230,
735 144, -1, 68, 174, 143, 70, 230, 144, -1, 68,
736 174, 143, 144, -1, 68, 174, 206, 143, 69, 230,
737 70, 230, 144, -1, 68, 174, 206, 143, 70, 230,
738 69, 230, 144, -1, 68, 174, 206, 143, 69, 230,
739 144, -1, 68, 174, 206, 143, 70, 230, 144, -1,
740 68, 174, 206, 143, 144, -1, 173, 198, 142, -1,
741 173, 142, -1, 237, 142, -1, 236, 142, -1, 243,
742 -1, 195, 142, -1, 196, -1, 142, -1, 199, -1,
743 198, 126, 199, -1, 208, -1, 208, 184, -1, 140,
744 170, -1, 208, 140, 170, -1, 208, 140, 170, 140,
745 170, -1, 50, 146, -1, 50, 187, -1, 50, 143,
746 202, 144, -1, 50, 146, 143, 202, 144, -1, 50,
747 146, 143, 202, 142, 193, 144, -1, 50, 187, 143,
748 202, 142, 193, 144, -1, 50, 187, 143, 202, 144,
749 -1, 203, -1, 202, 126, 203, -1, 146, -1, 146,
750 141, 170, -1, 120, 206, 121, -1, 124, 125, -1,
751 124, 170, 125, -1, 124, 186, 125, -1, 204, 124,
752 125, -1, 204, 124, 170, 125, -1, 204, 124, 186,
753 125, -1, 120, 121, -1, 120, 216, 121, -1, 204,
754 120, 121, -1, 204, 120, 216, 121, -1, 120, 207,
755 121, -1, 120, 121, -1, 120, 216, 121, -1, 205,
756 120, 121, -1, 205, 120, 216, 121, -1, 215, -1,
757 204, -1, 215, 204, -1, 179, 215, -1, 179, 204,
758 -1, 179, 215, 204, -1, 215, -1, 205, -1, 215,
759 205, -1, 179, 215, -1, 179, 205, -1, 179, 215,
760 205, -1, 211, -1, 215, 211, -1, 179, 215, 211,
761 -1, 146, -1, 120, 208, 121, -1, 209, 124, 170,
762 125, -1, 209, 124, 125, -1, 209, 124, 186, 125,
763 -1, 213, -1, 215, 213, -1, 179, 213, -1, 179,
764 215, 213, -1, 215, 179, 213, -1, 213, -1, 209,
765 -1, 179, 213, -1, 179, 209, -1, 209, 120, -1,
766 212, 216, 121, -1, 212, 219, 121, -1, 212, 121,
767 -1, 185, -1, 214, 185, -1, 128, -1, 128, 214,
768 -1, 128, 215, -1, 128, 214, 215, -1, 217, -1,
769 217, 126, 51, -1, 218, -1, 217, 126, 218, -1,
770 173, 208, -1, 173, 206, -1, 173, -1, 146, -1,
771 219, 126, 146, -1, 172, -1, 172, 206, -1, 167,
772 -1, 143, 223, 144, -1, 143, 223, 126, 144, -1,
773 166, -1, 149, -1, 221, -1, 223, 126, 221, -1,
774 225, -1, 230, -1, 231, -1, 232, -1, 233, -1,
775 234, -1, 146, 140, 224, -1, 52, 170, 140, 224,
776 -1, 53, 140, 224, -1, 171, -1, 226, 171, -1,
777 224, -1, 227, 224, -1, 227, 171, -1, 227, -1,
778 226, -1, 226, 227, -1, 143, -1, 143, 144, -1,
779 229, 228, 144, -1, 142, -1, 169, 142, -1, 54,
780 120, 169, 121, 224, -1, 54, 120, 169, 121, 224,
781 64, 224, -1, 55, 120, 169, 121, 224, -1, 56,
782 120, 169, 121, 224, -1, 57, 224, 56, 120, 169,
783 121, 142, -1, 58, 120, 231, 231, 121, 224, -1,
784 58, 120, 231, 231, 169, 121, 224, -1, 56, 120,
785 121, 224, -1, 58, 120, 231, 121, 224, -1, 58,
786 120, 121, 224, -1, 59, 146, 142, -1, 60, 142,
787 -1, 61, 142, -1, 62, 142, -1, 62, 169, 142,
788 -1, 5, -1, 173, 146, 143, 250, 144, -1, 173,
789 146, 143, 144, -1, 186, 143, 250, 144, -1, 186,
790 143, 144, -1, 146, 143, 250, 144, -1, 146, 143,
791 144, -1, 143, 250, 144, -1, 143, 144, -1, 173,
792 210, -1, 210, -1, 173, 120, 121, -1, 131, 173,
793 120, 121, -1, 78, 173, 210, -1, 78, 210, -1,
794 239, 230, -1, 242, 230, -1, 242, 142, -1, 240,
795 230, -1, 241, 230, -1, 173, 210, -1, 244, 230,
796 -1, 150, 141, 222, -1, 222, -1, 246, -1, 247,
797 126, 246, -1, 247, 142, -1, 248, -1, 245, -1,
798 249, 248, -1, 249, 245, -1, 142, -1, 249, 142,
799 -1, 249, -1, 247, -1, 249, 247, -1, 167, -1
802 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
803 static const yytype_uint16 yyrline[] =
805 0, 216, 216, 221, 222, 227, 229, 231, 233, 234,
806 236, 237, 238, 241, 242, 243, 244, 245, 246, 247,
807 248, 249, 253, 257, 258, 259, 260, 261, 262, 275,
808 276, 277, 307, 308, 309, 310, 314, 315, 316, 319,
809 320, 323, 324, 328, 329, 338, 339, 340, 341, 342,
810 343, 344, 348, 349, 353, 354, 355, 356, 360, 361,
811 362, 366, 367, 368, 372, 373, 374, 375, 376, 380,
812 381, 382, 386, 387, 391, 392, 396, 397, 401, 402,
813 406, 407, 411, 412, 416, 417, 418, 420, 421, 425,
814 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
815 439, 440, 444, 448, 449, 450, 451, 455, 456, 457,
816 458, 459, 460, 461, 462, 466, 467, 468, 469, 470,
817 471, 472, 473, 474, 475, 480, 481, 482, 483, 484,
818 485, 486, 487, 491, 492, 493, 494, 495, 496, 497,
819 498, 499, 500, 504, 505, 509, 510, 514, 515, 516,
820 517, 518, 519, 523, 524, 528, 529, 530, 535, 536,
821 537, 538, 539, 543, 544, 548, 549, 550, 554, 555,
822 559, 560, 561, 565, 590, 594, 595, 596, 597, 598,
823 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
824 609, 610, 611, 612, 613, 617, 618, 619, 620, 621,
825 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
826 632, 633, 634, 635, 640, 641, 642, 643, 644, 647,
827 648, 649, 650, 651, 656, 657, 660, 662, 667, 668,
828 672, 673, 677, 681, 682, 686, 688, 690, 692, 694,
829 697, 699, 701, 703, 705, 708, 710, 712, 714, 716,
830 719, 721, 723, 725, 727, 732, 733, 734, 735, 736,
831 737, 738, 739, 743, 745, 750, 752, 754, 756, 758,
832 763, 764, 768, 770, 771, 772, 773, 777, 779, 784,
833 786, 792, 794, 796, 798, 800, 802, 804, 806, 808,
834 810, 812, 817, 819, 821, 823, 825, 830, 831, 832,
835 833, 834, 835, 839, 840, 841, 842, 843, 844, 890,
836 891, 893, 899, 901, 903, 905, 907, 912, 913, 916,
837 918, 920, 926, 927, 928, 930, 935, 939, 941, 943,
838 948, 949, 953, 954, 955, 956, 960, 961, 965, 966,
839 970, 971, 972, 976, 977, 981, 982, 991, 993, 995,
840 1011, 1012, 1033, 1035, 1040, 1041, 1042, 1043, 1044, 1045,
841 1049, 1051, 1053, 1058, 1059, 1063, 1064, 1067, 1071, 1072,
842 1073, 1077, 1081, 1089, 1094, 1095, 1099, 1100, 1101, 1105,
843 1106, 1107, 1108, 1110, 1111, 1112, 1116, 1117, 1118, 1119,
844 1120, 1124, 1128, 1130, 1135, 1137, 1139, 1141, 1146, 1148,
845 1153, 1155, 1160, 1165, 1170, 1172, 1177, 1179, 1181, 1183,
846 1185, 1191, 1196, 1201, 1202, 1206, 1208, 1213, 1218, 1219,
847 1220, 1221, 1222, 1223, 1227, 1228, 1229, 1233
851 #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
852 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
853 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
854 static const char *const yytname[] =
856 "$end", "error", "$undefined", "IDENTIFIER", "CONSTANT",
857 "STRING_LITERAL", "SIZEOF", "PTR_OP", "INC_OP", "DEC_OP", "LEFT_OP",
858 "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP",
859 "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "ADD_ASSIGN", "SUB_ASSIGN",
860 "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN",
861 "TYPE_NAME", "TYPEDEF", "EXTERN", "STATIC", "AUTO", "REGISTER", "CHAR",
862 "SHORT", "INT", "UINT", "INT64", "LONG", "SIGNED", "UNSIGNED", "FLOAT",
863 "DOUBLE", "CONST", "VOLATILE", "VOID", "VALIST", "STRUCT", "UNION",
864 "ENUM", "ELLIPSIS", "CASE", "DEFAULT", "IF", "SWITCH", "WHILE", "DO",
865 "FOR", "GOTO", "CONTINUE", "BREAK", "RETURN", "IFX", "ELSE", "CLASS",
866 "THISCLASS", "CLASS_NAME", "PROPERTY", "SETPROP", "GETPROP", "NEWOP",
867 "RENEW", "DELETE", "EXT_DECL", "EXT_STORAGE", "IMPORT", "DEFINE",
868 "VIRTUAL", "ATTRIB", "PUBLIC", "PRIVATE", "TYPED_OBJECT", "ANY_OBJECT",
869 "_INCREF", "EXTENSION", "ASM", "TYPEOF", "WATCH", "STOPWATCHING",
870 "FIREWATCHERS", "WATCHABLE", "CLASS_DESIGNER", "CLASS_NO_EXPANSION",
871 "CLASS_FIXED", "ISPROPSET", "CLASS_DEFAULT_PROPERTY",
872 "PROPERTY_CATEGORY", "CLASS_DATA", "CLASS_PROPERTY", "SUBCLASS",
873 "NAMESPACE", "NEW0OP", "RENEW0", "VAARG", "DBTABLE", "DBFIELD",
874 "DBINDEX", "DATABASE_OPEN", "ALIGNOF", "ATTRIB_DEP", "__ATTRIB", "BOOL",
875 "_BOOL", "_COMPLEX", "_IMAGINARY", "RESTRICT", "THREAD",
876 "WIDE_STRING_LITERAL", "BUILTIN_OFFSETOF", "'('", "')'", "'$'", "'.'",
877 "'['", "']'", "','", "'&'", "'*'", "'+'", "'-'", "'~'", "'!'", "'/'",
878 "'%'", "'<'", "'>'", "'^'", "'|'", "'?'", "':'", "'='", "';'", "'{'",
879 "'}'", "$accept", "identifier", "primary_expression",
880 "simple_primary_expression", "anon_instantiation_expression",
881 "postfix_expression", "argument_expression_list",
882 "common_unary_expression", "unary_expression", "unary_operator",
883 "cast_expression", "multiplicative_expression", "additive_expression",
884 "shift_expression", "relational_expression", "equality_expression",
885 "and_expression", "exclusive_or_expression", "inclusive_or_expression",
886 "logical_and_expression", "logical_or_expression",
887 "conditional_expression", "assignment_expression", "assignment_operator",
888 "expression", "constant_expression", "declaration",
889 "specifier_qualifier_list", "declaration_specifiers",
890 "property_specifiers", "renew_specifiers", "init_declarator_list",
891 "init_declarator", "storage_class_specifier", "ext_decl", "_attrib",
892 "attribute_word", "attribute", "attribs_list", "attrib",
893 "type_qualifier", "type", "strict_type", "type_specifier",
894 "strict_type_specifier", "struct_or_union_specifier_compound",
895 "struct_or_union_specifier_nocompound", "struct_or_union",
896 "struct_declaration_list", "default_property", "default_property_list",
897 "property", "struct_declaration", "struct_declarator_list",
898 "struct_declarator", "enum_specifier_nocompound",
899 "enum_specifier_compound", "enumerator_list", "enumerator",
900 "direct_abstract_declarator", "direct_abstract_declarator_noarray",
901 "abstract_declarator", "abstract_declarator_noarray", "declarator",
902 "direct_declarator_nofunction", "declarator_function",
903 "direct_declarator", "direct_declarator_function_start",
904 "direct_declarator_function", "type_qualifier_list", "pointer",
905 "parameter_type_list", "parameter_list", "parameter_declaration",
906 "identifier_list", "type_name", "initializer", "initializer_condition",
907 "initializer_list", "statement", "labeled_statement", "declaration_list",
908 "statement_list", "compound_inside", "compound_start",
909 "compound_statement", "expression_statement", "selection_statement",
910 "iteration_statement", "jump_statement", "string_literal",
911 "instantiation_named", "instantiation_unnamed", "instantiation_anon",
912 "class_function_definition_start",
913 "constructor_function_definition_start",
914 "destructor_function_definition_start",
915 "virtual_class_function_definition_start", "class_function_definition",
916 "instance_class_function_definition_start",
917 "instance_class_function_definition", "data_member_initialization",
918 "data_member_initialization_list",
919 "data_member_initialization_list_coloned",
920 "members_initialization_list_coloned", "members_initialization_list",
926 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
928 static const yytype_uint16 yytoknum[] =
930 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
931 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
932 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
933 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
934 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
935 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
936 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
937 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
938 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
939 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
940 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
941 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
942 40, 41, 36, 46, 91, 93, 44, 38, 42, 43,
943 45, 126, 33, 47, 37, 60, 62, 94, 124, 63,
948 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
949 static const yytype_uint8 yyr1[] =
951 0, 145, 146, 147, 147, 148, 148, 148, 148, 148,
952 148, 148, 148, 148, 148, 148, 148, 148, 148, 148,
953 148, 148, 149, 150, 150, 150, 150, 150, 150, 150,
954 150, 150, 151, 151, 151, 151, 152, 152, 152, 152,
955 152, 152, 152, 153, 153, 154, 154, 154, 154, 154,
956 154, 154, 155, 155, 156, 156, 156, 156, 157, 157,
957 157, 158, 158, 158, 159, 159, 159, 159, 159, 160,
958 160, 160, 161, 161, 162, 162, 163, 163, 164, 164,
959 165, 165, 166, 166, 167, 167, 167, 167, 167, 168,
960 168, 168, 168, 168, 168, 168, 168, 168, 168, 168,
961 169, 169, 170, 171, 171, 171, 171, 172, 172, 172,
962 172, 172, 172, 172, 172, 173, 173, 173, 173, 173,
963 173, 173, 173, 173, 173, 174, 174, 174, 174, 174,
964 174, 174, 174, 175, 175, 175, 175, 175, 175, 175,
965 175, 175, 175, 176, 176, 177, 177, 178, 178, 178,
966 178, 178, 178, 179, 179, 180, 180, 180, 181, 181,
967 181, 181, 181, 182, 182, 183, 183, 183, 184, 184,
968 185, 185, 185, 186, 187, 188, 188, 188, 188, 188,
969 188, 188, 188, 188, 188, 188, 188, 188, 188, 188,
970 188, 188, 188, 188, 188, 189, 189, 189, 189, 189,
971 189, 189, 189, 189, 189, 189, 189, 189, 189, 189,
972 189, 189, 189, 189, 190, 190, 190, 190, 190, 190,
973 190, 190, 190, 190, 191, 191, 191, 191, 192, 192,
974 193, 193, 194, 195, 195, 196, 196, 196, 196, 196,
975 196, 196, 196, 196, 196, 196, 196, 196, 196, 196,
976 196, 196, 196, 196, 196, 197, 197, 197, 197, 197,
977 197, 197, 197, 198, 198, 199, 199, 199, 199, 199,
978 200, 200, 201, 201, 201, 201, 201, 202, 202, 203,
979 203, 204, 204, 204, 204, 204, 204, 204, 204, 204,
980 204, 204, 205, 205, 205, 205, 205, 206, 206, 206,
981 206, 206, 206, 207, 207, 207, 207, 207, 207, 208,
982 208, 208, 209, 209, 209, 209, 209, 210, 210, 210,
983 210, 210, 211, 211, 211, 211, 212, 213, 213, 213,
984 214, 214, 215, 215, 215, 215, 216, 216, 217, 217,
985 218, 218, 218, 219, 219, 220, 220, 221, 221, 221,
986 222, 222, 223, 223, 224, 224, 224, 224, 224, 224,
987 225, 225, 225, 226, 226, 227, 227, 227, 228, 228,
988 228, 229, 230, 230, 231, 231, 232, 232, 232, 233,
989 233, 233, 233, 233, 233, 233, 234, 234, 234, 234,
990 234, 235, 236, 236, 237, 237, 237, 237, 238, 238,
991 239, 239, 240, 241, 242, 242, 243, 243, 243, 243,
992 243, 244, 245, 246, 246, 247, 247, 248, 249, 249,
993 249, 249, 249, 249, 250, 250, 250, 251
996 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
997 static const yytype_uint8 yyr2[] =
999 0, 2, 1, 1, 3, 1, 1, 1, 1, 1,
1000 2, 4, 2, 6, 5, 6, 5, 7, 6, 7,
1001 6, 1, 1, 1, 4, 3, 4, 3, 2, 3,
1002 2, 2, 1, 1, 3, 3, 2, 2, 2, 2,
1003 4, 2, 4, 1, 1, 1, 1, 1, 1, 1,
1004 1, 1, 1, 4, 1, 3, 3, 3, 1, 3,
1005 3, 1, 3, 3, 1, 3, 3, 3, 3, 1,
1006 3, 3, 1, 3, 1, 3, 1, 3, 1, 3,
1007 1, 3, 1, 5, 1, 3, 3, 3, 3, 1,
1008 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1009 1, 3, 1, 2, 3, 2, 5, 1, 2, 1,
1010 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
1011 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
1012 2, 1, 2, 1, 2, 1, 2, 1, 2, 1,
1013 2, 1, 2, 1, 3, 1, 3, 1, 1, 1,
1014 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1015 1, 1, 1, 1, 4, 1, 2, 3, 6, 5,
1016 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1017 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1018 1, 1, 1, 4, 1, 1, 1, 1, 1, 1,
1019 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1020 1, 1, 4, 1, 5, 4, 4, 3, 5, 6,
1021 5, 5, 4, 6, 2, 2, 3, 3, 1, 1,
1022 1, 2, 3, 1, 3, 9, 9, 7, 7, 5,
1023 10, 10, 8, 8, 6, 8, 8, 6, 6, 4,
1024 9, 9, 7, 7, 5, 3, 2, 2, 2, 1,
1025 2, 1, 1, 1, 3, 1, 2, 2, 3, 5,
1026 2, 2, 4, 5, 7, 7, 5, 1, 3, 1,
1027 3, 3, 2, 3, 3, 3, 4, 4, 2, 3,
1028 3, 4, 3, 2, 3, 3, 4, 1, 1, 2,
1029 2, 2, 3, 1, 1, 2, 2, 2, 3, 1,
1030 2, 3, 1, 3, 4, 3, 4, 1, 2, 2,
1031 3, 3, 1, 1, 2, 2, 2, 3, 3, 2,
1032 1, 2, 1, 2, 2, 3, 1, 3, 1, 3,
1033 2, 2, 1, 1, 3, 1, 2, 1, 3, 4,
1034 1, 1, 1, 3, 1, 1, 1, 1, 1, 1,
1035 3, 4, 3, 1, 2, 1, 2, 2, 1, 1,
1036 2, 1, 2, 3, 1, 2, 5, 7, 5, 5,
1037 7, 6, 7, 4, 5, 4, 3, 2, 2, 2,
1038 3, 1, 5, 4, 4, 3, 4, 3, 3, 2,
1039 2, 1, 3, 4, 3, 2, 2, 2, 2, 2,
1040 2, 2, 2, 3, 1, 1, 3, 2, 1, 1,
1041 2, 2, 1, 2, 1, 1, 2, 1
1044 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1045 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1046 means the default is an error. */
1047 static const yytype_uint16 yydefact[] =
1049 0, 21, 2, 7, 391, 0, 0, 0, 174, 0,
1050 0, 51, 0, 0, 0, 8, 0, 0, 45, 46,
1051 47, 48, 49, 50, 5, 23, 3, 44, 43, 52,
1052 0, 54, 58, 61, 64, 69, 72, 74, 76, 78,
1053 80, 82, 84, 427, 0, 173, 9, 6, 0, 0,
1054 39, 0, 36, 37, 147, 148, 149, 150, 151, 176,
1055 177, 178, 179, 180, 182, 185, 186, 183, 184, 170,
1056 171, 175, 181, 228, 229, 0, 194, 172, 187, 0,
1057 189, 188, 152, 0, 115, 117, 192, 119, 123, 190,
1058 0, 191, 121, 52, 102, 0, 0, 0, 0, 41,
1059 12, 100, 0, 345, 107, 192, 109, 113, 111, 0,
1060 10, 0, 0, 30, 31, 0, 0, 0, 28, 90,
1061 91, 92, 93, 94, 95, 96, 97, 98, 99, 89,
1062 0, 38, 0, 0, 0, 0, 0, 0, 0, 0,
1063 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1064 0, 0, 0, 1, 0, 0, 270, 271, 0, 153,
1065 155, 156, 157, 0, 0, 332, 116, 0, 0, 154,
1066 118, 120, 124, 122, 304, 0, 303, 0, 224, 0,
1067 225, 196, 197, 198, 199, 200, 202, 205, 206, 203,
1068 204, 195, 201, 213, 0, 208, 207, 0, 133, 135,
1069 211, 137, 139, 209, 210, 141, 0, 0, 0, 0,
1070 4, 0, 0, 0, 0, 108, 110, 114, 112, 298,
1071 346, 297, 0, 0, 422, 0, 397, 351, 44, 350,
1072 0, 414, 22, 0, 419, 415, 425, 418, 0, 0,
1073 29, 25, 33, 0, 32, 27, 0, 87, 85, 55,
1074 56, 57, 59, 60, 62, 63, 67, 68, 65, 66,
1075 70, 71, 73, 75, 77, 79, 81, 0, 88, 86,
1076 395, 0, 40, 279, 0, 277, 0, 0, 0, 293,
1077 342, 0, 0, 336, 338, 0, 330, 333, 334, 307,
1078 306, 0, 0, 0, 305, 0, 0, 0, 0, 262,
1079 217, 5, 0, 0, 0, 0, 233, 0, 261, 230,
1080 0, 401, 0, 317, 0, 0, 6, 0, 0, 0,
1081 0, 259, 0, 0, 226, 227, 0, 0, 0, 134,
1082 136, 138, 140, 142, 0, 0, 0, 0, 0, 42,
1083 101, 288, 0, 0, 282, 0, 0, 301, 300, 0,
1084 0, 299, 53, 11, 399, 0, 0, 0, 312, 411,
1085 371, 0, 412, 0, 417, 423, 421, 426, 420, 396,
1086 26, 0, 24, 0, 394, 0, 0, 272, 0, 0,
1087 193, 0, 0, 341, 340, 323, 309, 322, 297, 292,
1088 294, 0, 14, 331, 335, 308, 0, 295, 0, 0,
1089 0, 0, 125, 127, 131, 129, 0, 0, 405, 0,
1090 46, 0, 0, 0, 0, 0, 0, 0, 256, 312,
1091 0, 0, 263, 265, 400, 322, 0, 319, 0, 215,
1092 231, 0, 260, 326, 0, 329, 343, 0, 0, 0,
1093 318, 258, 257, 406, 409, 410, 408, 407, 216, 0,
1094 222, 0, 0, 0, 0, 0, 0, 0, 16, 0,
1095 0, 0, 281, 289, 283, 284, 302, 290, 0, 285,
1096 0, 0, 398, 413, 372, 0, 0, 0, 0, 0,
1097 0, 0, 0, 0, 0, 0, 0, 374, 5, 0,
1098 363, 0, 365, 354, 0, 0, 0, 355, 356, 357,
1099 358, 359, 0, 416, 35, 34, 83, 280, 278, 0,
1100 273, 0, 276, 325, 324, 300, 0, 310, 337, 339,
1101 158, 159, 162, 161, 160, 0, 163, 165, 0, 296,
1102 13, 270, 271, 0, 0, 126, 128, 132, 130, 0,
1103 224, 0, 225, 404, 0, 313, 0, 232, 402, 267,
1104 0, 324, 0, 0, 255, 0, 266, 0, 322, 320,
1105 234, 315, 0, 0, 327, 328, 0, 321, 214, 220,
1106 221, 0, 0, 218, 212, 18, 0, 15, 20, 0,
1107 291, 286, 287, 0, 0, 0, 0, 0, 0, 0,
1108 0, 387, 388, 389, 0, 0, 0, 375, 103, 0,
1109 143, 145, 364, 0, 367, 366, 373, 105, 0, 0,
1110 311, 169, 0, 0, 0, 166, 0, 0, 249, 0,
1111 0, 0, 226, 227, 403, 393, 0, 322, 264, 268,
1112 324, 314, 316, 344, 219, 223, 17, 19, 0, 362,
1113 0, 0, 0, 0, 0, 0, 0, 386, 390, 0,
1114 360, 0, 104, 0, 274, 275, 0, 168, 167, 0,
1115 0, 0, 0, 239, 0, 0, 254, 0, 392, 0,
1116 361, 0, 0, 383, 0, 0, 385, 0, 0, 0,
1117 144, 0, 347, 146, 164, 0, 247, 0, 248, 0,
1118 0, 0, 0, 0, 0, 244, 269, 376, 378, 379,
1119 0, 384, 0, 0, 106, 352, 0, 0, 0, 0,
1120 237, 0, 238, 0, 252, 0, 253, 0, 0, 0,
1121 0, 381, 0, 0, 348, 245, 246, 0, 0, 0,
1122 0, 0, 242, 0, 243, 377, 380, 382, 349, 353,
1123 235, 236, 250, 251, 0, 0, 240, 241
1126 /* YYDEFGOTO[NTERM-NUM]. */
1127 static const yytype_int16 yydefgoto[] =
1129 -1, 24, 25, 26, 227, 27, 243, 28, 93, 30,
1130 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1131 41, 42, 101, 130, 489, 95, 604, 103, 303, 401,
1132 197, 599, 600, 84, 304, 168, 526, 527, 528, 169,
1133 85, 44, 45, 87, 201, 88, 89, 90, 305, 306,
1134 307, 308, 309, 421, 422, 91, 92, 274, 275, 219,
1135 174, 342, 175, 412, 310, 311, 386, 312, 313, 287,
1136 314, 343, 283, 284, 438, 109, 683, 231, 706, 492,
1137 493, 494, 495, 496, 361, 497, 498, 499, 500, 501,
1138 46, 315, 47, 232, 317, 318, 319, 320, 321, 233,
1139 234, 235, 236, 237, 238, 239, 48
1142 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1144 #define YYPACT_NINF -619
1145 static const yytype_int16 yypact[] =
1147 5722, -619, -619, -619, -619, 5761, 5795, 5795, -619, 1523,
1148 5722, -619, 1523, 5722, 5868, -619, 5285, 76, -619, -619,
1149 -619, -619, -619, -619, 41, -619, -619, 545, -619, 673,
1150 5722, -619, 236, 97, 347, 59, 360, 34, 60, 121,
1151 246, 17, 673, -619, 146, -619, -619, -619, 330, 5285,
1152 -619, 5435, -619, -619, -619, -619, -619, -619, -619, -619,
1153 -619, -619, -619, -619, -619, -619, -619, -619, -619, -619,
1154 -619, -619, -619, -619, -619, 19, -619, -619, -619, 219,
1155 -619, -619, -619, 6471, -619, -619, -619, -619, -619, -619,
1156 157, -619, -619, -619, -619, 7485, 6572, 7485, 5285, -619,
1157 -619, -619, 126, 6923, -619, 146, -619, -619, -619, 238,
1158 253, 2012, 380, -619, -619, 4276, 380, 5722, -619, -619,
1159 -619, -619, -619, -619, -619, -619, -619, -619, -619, -619,
1160 4318, -619, 5722, 5722, 5722, 5722, 5722, 5722, 5722, 5722,
1161 5722, 5722, 5722, 5722, 5722, 5722, 5722, 5722, 5722, 5722,
1162 5722, 4318, 2144, -619, 273, 380, 260, 262, 368, -619,
1163 -619, -619, -619, 6673, 5722, 78, -619, 129, 294, -619,
1164 -619, -619, -619, -619, 300, 298, 336, 2660, 287, 40,
1165 345, -619, -619, -619, -619, -619, -619, -619, -619, -619,
1166 -619, -619, -619, -619, 357, -619, -619, 6774, -619, -619,
1167 -619, -619, -619, -619, -619, -619, 5722, 326, 6875, 358,
1168 -619, 5722, 6370, 5508, -18, -619, -619, -619, -619, -38,
1169 -619, 341, 5722, 76, -619, 2276, -619, -619, 314, -619,
1170 6175, -619, -619, 350, -619, -619, -49, -619, 2408, 352,
1171 -619, -619, -619, 140, -619, -619, 307, -619, -619, -619,
1172 -619, -619, 236, 236, 97, 97, 347, 347, 347, 347,
1173 59, 59, 360, 34, 60, 121, 246, 93, -619, -619,
1174 -619, 361, -619, 377, 79, -619, 380, 380, 370, -619,
1175 6074, 386, 391, 394, -619, 396, -619, 78, -619, 300,
1176 336, 402, 7024, 5722, 300, 7395, 6175, 5358, 1523, -619,
1177 -619, 41, 378, 4920, 49, 2780, -619, 72, -619, -619,
1178 348, -619, 6276, -619, 537, 381, 383, 350, 350, 350,
1179 297, -619, 2900, 3020, 389, 390, 4529, 368, 5722, -619,
1180 -619, -619, -619, -619, 410, 401, 5722, 5722, 411, -619,
1181 -619, -619, 415, 416, -619, 417, 144, -38, 341, 7118,
1182 5542, -38, -619, -619, -619, 399, 4318, 196, -619, -619,
1183 400, 4109, -619, 4318, -619, -619, -619, -49, -619, -619,
1184 -619, 4318, -619, 5722, -619, 5722, 380, -619, 106, 134,
1185 -619, 5973, 18, -619, -619, 348, -619, -619, 731, -619,
1186 -619, 7305, -619, -619, -619, 300, 50, -619, 424, 422,
1187 73, 4804, -619, -619, -619, -619, 163, 6175, -619, 5153,
1188 605, 49, 429, 537, 7212, 4318, 418, 5722, -619, 408,
1189 49, 162, -619, 313, -619, 412, 537, -619, 47, -619,
1190 -619, 459, -619, -619, 5581, -619, -619, 435, 272, 47,
1191 -619, -619, -619, -619, -619, -619, -619, -619, -619, 3140,
1192 -619, 3260, 3380, 4529, 3500, 437, 440, 5722, -619, 442,
1193 444, 5722, -619, -619, -619, -619, -38, -619, 439, -619,
1194 445, 156, -619, -619, -619, 5722, 423, 454, 455, 456,
1195 4241, 458, 380, 441, 449, 4688, 380, -619, -60, 167,
1196 -619, 5035, -619, -619, 1616, 1748, 436, -619, -619, -619,
1197 -619, -619, 450, -619, -619, -619, -619, -619, -619, 4529,
1198 -619, 4529, -619, 348, -619, 731, 47, -619, -619, -619,
1199 -619, -619, -619, -619, -619, 472, 474, -619, 252, -619,
1200 -619, -619, -619, -3, 452, -619, -619, -619, -619, 14,
1201 -619, 73, -619, -619, 537, -619, 476, -619, -619, -619,
1202 2540, 457, 537, 338, -619, 5722, -619, 47, 461, -619,
1203 -619, -619, 483, 160, -619, -619, 380, -619, -619, -619,
1204 -619, 3620, 3740, -619, -619, -619, 485, -619, -619, 488,
1205 -619, -619, -619, 477, 4241, 5722, 5722, 5615, 543, 4581,
1206 478, -619, -619, -619, 225, 460, 4241, -619, -619, 226,
1207 -619, 473, -619, 1880, -619, -619, -619, -619, 3860, 3980,
1208 -619, -619, 5722, 497, 316, -619, 350, 350, -619, 4,
1209 222, 479, -619, -619, -619, -619, 480, 484, -619, 481,
1210 486, -619, -619, -619, -619, -619, -619, -619, 4241, -619,
1211 290, 292, 4241, 310, 503, 4241, 4615, -619, -619, 5722,
1212 -619, 196, -619, 4409, -619, -619, 321, -619, -619, -25,
1213 -40, 350, 350, -619, 350, 350, -619, 285, -619, 5722,
1214 -619, 4241, 4241, -619, 4241, 5722, -619, 4241, 5688, 493,
1215 -619, 4409, -619, -619, -619, 350, -619, 350, -619, 26,
1216 28, 58, 30, 350, 350, -619, -619, 564, -619, -619,
1217 325, -619, 4241, 333, -619, -619, 189, 492, 495, 350,
1218 -619, 350, -619, 350, -619, 350, -619, 138, 85, 4241,
1219 498, -619, 4241, 1391, -619, -619, -619, 500, 512, 514,
1220 515, 350, -619, 350, -619, -619, -619, -619, -619, -619,
1221 -619, -619, -619, -619, 516, 522, -619, -619
1224 /* YYPGOTO[NTERM-NUM]. */
1225 static const yytype_int16 yypgoto[] =
1227 -619, 329, -619, -619, -92, 438, -619, -619, 0, -619,
1228 -21, 364, 366, 334, 371, 525, 491, 520, 482, 524,
1229 -619, 52, 1, 641, -14, 107, -350, -619, 16, -619,
1230 588, -619, 36, -65, -63, -619, -619, -467, -619, 265,
1231 811, 782, -71, 934, 56, -8, 12, -237, -266, 258,
1232 -619, -619, -261, -619, 150, 38, 1103, 240, 328, -175,
1233 -112, -100, -5, -267, 1059, -182, -334, -619, 992, -619,
1234 756, -153, -619, 315, -619, 20, -618, -286, -619, -340,
1235 -619, -619, 213, -619, -619, 517, -407, -619, -619, -619,
1236 -2, -319, 918, -619, -619, -619, -619, -619, -619, -619,
1237 470, 346, 475, 487, -619, -140, -619
1240 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
1241 positive, shift that token. If negative, reduce the rule which
1242 number is the opposite. If zero, do what YYDEFACT says.
1243 If YYTABLE_NINF, syntax error. */
1244 #define YYTABLE_NINF -425
1245 static const yytype_int16 yytable[] =
1247 29, 43, 102, 220, 157, 50, 52, 53, 107, 131,
1248 282, 490, 271, 384, 99, 110, 29, 2, 166, 180,
1249 167, 2, 2, 242, 200, 83, 200, 179, 96, 687,
1250 198, 166, 198, 167, 149, 102, 423, 102, 247, 347,
1251 214, 107, 502, 2, 430, 685, 351, 8, 359, 29,
1252 2, 29, 2, 520, 517, 289, 449, 451, 406, 268,
1253 454, 615, 94, 705, 294, 94, 616, 617, 8, 154,
1254 473, 139, 140, 661, 662, 172, 2, 363, 521, 517,
1255 596, 4, 349, 111, 102, 355, 350, 202, 172, 202,
1256 107, 207, 517, 364, 522, 217, 709, 711, 29, 715,
1257 167, 8, 212, 246, 688, 739, 213, 203, 325, 203,
1258 165, 249, 250, 251, 408, 29, 244, 29, 209, 686,
1259 97, 424, 69, 70, 523, 524, 200, 230, 713, 547,
1260 29, 248, 329, 204, 167, 204, 267, 200, 381, 398,
1261 588, 618, 213, 329, 602, 167, 165, 658, 663, 214,
1262 29, 29, 269, 77, 733, 605, 150, 620, 281, 437,
1263 2, 145, 155, 229, 406, 166, 2, 357, 230, 357,
1264 710, 525, 712, 466, 716, 502, 502, 165, 395, 280,
1265 383, 610, 646, 323, 111, 8, 571, 572, 430, 332,
1266 430, 8, 334, 430, 141, 142, 468, 146, 431, 2,
1267 332, 352, 714, 338, 229, 376, 165, 347, 731, 203,
1268 610, 29, 340, 351, 432, 166, 94, 382, 610, 211,
1269 203, 353, 172, 377, 601, 543, 135, 136, 280, 734,
1270 402, 159, 376, 373, 411, 204, 160, 159, 166, 678,
1271 420, 230, 160, 608, 639, 609, 204, 210, 509, 163,
1272 510, 439, 211, 331, 230, 520, 650, 165, 94, 147,
1273 376, 370, 148, 605, 331, 94, 371, 161, 162, 465,
1274 159, 285, 172, 161, 162, 160, 511, 229, 512, 504,
1275 521, 582, 732, 102, 502, 632, 423, 152, 553, 152,
1276 229, 664, 665, 211, 411, 172, 522, 29, 670, 152,
1277 177, 539, 673, 152, 554, 676, 161, 162, 280, 597,
1278 430, 430, 407, 335, 414, 723, 357, 2, 382, 520,
1279 345, 112, 113, 114, 165, 516, 523, 524, 280, 532,
1280 153, 697, 698, 724, 699, 542, 535, 701, 214, 158,
1281 466, 2, 166, 541, 521, 94, 411, 430, 430, 166,
1282 516, 211, 651, 411, 693, 694, 118, 137, 138, 222,
1283 522, 29, 721, 557, 132, 280, 666, 648, 652, 133,
1284 134, 29, 505, 613, 143, 144, 223, 491, 614, 735,
1285 94, 2, 737, 2, 601, 112, 113, 114, 94, 94,
1286 523, 524, 160, 565, 272, 102, 8, 280, 566, 172,
1287 399, 107, 94, 276, 156, 277, 172, 280, 229, 29,
1288 626, 671, 159, 672, 291, 229, 211, 160, 211, 178,
1289 292, 2, 293, 161, 162, 506, 166, 94, 411, 695,
1290 322, 674, 372, 211, 115, 456, 211, 116, 117, 446,
1291 360, 240, 684, 459, 460, 245, 720, 211, 161, 162,
1292 336, 211, 516, 555, 722, 356, 163, 470, 357, 211,
1293 1, 212, 2, 3, 4, 213, 165, 229, 433, 94,
1294 623, 594, 434, 256, 257, 258, 259, 327, 417, 339,
1295 29, 516, 507, 172, 273, 29, 94, 8, 326, 516,
1296 411, 380, 159, 360, 29, 29, 369, 160, 115, 252,
1297 253, 116, 117, 254, 255, 374, 301, 389, 324, 94,
1298 491, 491, 390, 94, 260, 261, 378, 379, 375, 415,
1299 391, 392, 396, 441, 549, 442, 458, 94, 161, 162,
1300 9, 10, 452, 453, 457, 461, 462, 463, 357, 548,
1301 2, 562, 464, 472, 474, 529, 165, 530, 2, 228,
1302 545, 550, 112, 113, 114, -317, 564, 118, 574, 358,
1303 580, 12, 13, 584, 576, 575, 230, 577, 579, 578,
1304 581, 640, 641, 643, 585, 586, 587, 15, 589, 51,
1305 606, 17, 583, 591, 29, 29, 29, 29, 411, 29,
1306 228, 592, 607, 611, 612, 619, 29, 624, 656, 644,
1307 -319, 649, 229, 29, -318, 273, 273, 94, 631, 358,
1308 636, 159, 29, 637, 653, 302, 160, 638, 657, 491,
1309 647, 669, 667, 675, 668, 358, 301, -320, 719, -321,
1310 265, 118, 419, 358, 301, 704, 725, 263, 29, 726,
1311 736, 436, 29, 358, 740, 29, 29, 161, 162, 69,
1312 70, 301, 301, 29, 682, 301, 741, 357, 742, 743,
1313 746, 700, 629, 228, 703, 115, 747, 264, 116, 117,
1314 262, 29, 29, 266, 29, 29, 228, 29, 29, -332,
1315 77, 29, 682, 151, -332, 208, 358, 680, 556, 560,
1316 488, 119, 120, 121, 122, 123, 124, 125, 126, 127,
1317 128, 94, 29, 628, 508, 273, 519, 603, 366, 503,
1318 358, 358, 0, 367, 0, -332, -332, 358, 0, 29,
1319 0, 94, 29, 29, 682, 368, 0, 0, 0, 531,
1320 534, 0, 0, 165, 2, 540, 358, 0, 301, 0,
1321 358, 0, 358, 302, 0, 358, 0, 0, 0, 358,
1322 362, 0, 0, 0, 0, 358, 679, 358, 0, 0,
1323 302, 302, 0, 0, 302, 0, 0, 0, 358, 0,
1324 0, 0, 0, 0, 0, 0, 696, 0, 301, 0,
1325 301, 301, 301, 301, 0, 0, 0, 0, 0, 0,
1326 0, 86, 0, 0, 86, 0, 0, 0, 105, 0,
1327 0, 228, 0, 0, 0, 159, 0, 0, 0, 488,
1328 160, 590, 0, 0, 129, 595, 0, 0, 0, 0,
1329 419, 0, 0, 488, 488, 0, 0, 104, 0, 0,
1330 0, 105, 0, 0, 443, 444, 445, 447, 301, 176,
1331 301, 161, 162, 0, 358, 358, 0, 0, 0, 0,
1332 0, 381, 176, 0, 0, 213, 0, 0, 0, 221,
1333 104, 0, 0, 0, 0, 86, 0, 0, 621, 302,
1334 622, 0, 0, 358, 0, 0, 0, 0, 86, 0,
1335 105, 358, 358, 0, 0, 86, 358, 302, 0, 302,
1336 302, 302, 302, 105, 170, 633, 0, 0, 0, 0,
1337 301, 301, 0, 0, 0, 0, 199, 170, 199, 104,
1338 0, 0, 0, 488, 215, 0, 0, 0, 0, 176,
1339 0, 288, 0, 290, 0, 488, 0, 0, 0, 0,
1340 0, 0, 488, 0, 105, 0, 0, 301, 301, 0,
1341 278, 0, 0, 0, 0, 86, 0, 302, 0, 302,
1342 106, 0, 0, 176, 0, 0, 0, 0, 0, 105,
1343 0, 0, 0, 0, 176, 0, 0, 488, 221, 0,
1344 348, 488, 0, 0, 488, 0, 286, 0, 0, 0,
1345 358, 0, 0, 106, 0, 0, 0, 0, 228, 0,
1346 0, 0, 0, 0, 86, 346, 0, 0, 0, 0,
1347 488, 488, 0, 488, 0, 0, 488, 105, 330, 302,
1348 302, 0, 86, 0, 0, 0, 0, 171, 0, 330,
1349 105, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1350 171, 488, 106, 0, 0, 0, 388, 216, 0, 0,
1351 0, 170, 0, 394, 0, 0, 302, 302, 488, 0,
1352 0, 488, 0, 413, 0, 0, 0, 0, 0, 426,
1353 428, 0, 86, 0, 0, 0, 0, 0, 0, 0,
1354 0, 0, 0, 0, 86, 0, 0, 404, 86, 0,
1355 86, 0, 0, 0, 0, 86, 0, 105, 0, 0,
1356 0, 170, 0, 0, 86, 316, 0, 0, 393, 0,
1357 0, 0, 0, 0, 105, 105, 403, 0, 105, 455,
1358 0, 0, 0, 413, 170, 0, 0, 0, 0, 108,
1359 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1360 0, 86, 471, 659, 660, 0, 0, 388, 515, 0,
1361 0, 0, 0, 105, 0, 0, 0, 0, 0, 0,
1362 0, 0, 108, 0, 0, 0, 0, 221, 0, 0,
1363 0, 0, 0, 86, 171, 413, 288, 544, 0, 0,
1364 0, 0, 413, 86, 0, 0, 552, 0, 689, 690,
1365 0, 691, 692, 537, 0, 0, 173, 0, 0, 86,
1366 0, 105, 0, 0, 0, 0, 86, 0, 205, 173,
1367 205, 108, 707, 0, 708, 0, 218, 0, 0, 0,
1368 717, 718, 536, 0, 171, 0, 563, 0, 170, 0,
1369 104, 286, 0, 316, 0, 170, 727, 0, 728, 405,
1370 729, 105, 730, 105, 105, 105, 105, 171, 0, 0,
1371 316, 316, 0, 0, 316, 0, 0, 413, 744, 0,
1372 745, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1373 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1374 0, 0, 387, 86, 0, 0, 105, 105, 0, 0,
1375 0, 0, 0, 0, 0, 0, 0, 0, 0, 387,
1376 0, 105, 0, 105, 0, 425, 427, 0, 0, 0,
1377 333, 0, 170, 0, 0, 0, 440, 0, 0, 413,
1378 0, 333, 0, 0, 0, 0, 0, 0, 0, 0,
1379 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1380 0, 0, 105, 173, 0, 538, 0, 0, 0, 385,
1381 0, 171, 0, 106, 0, 0, 0, 0, 171, 387,
1382 0, 0, 0, 105, 105, 0, 385, 0, 0, 0,
1383 0, 0, 385, 0, 0, 0, 0, 316, 0, 316,
1384 316, 316, 316, 387, 514, 0, 0, 0, 0, 0,
1385 387, 0, 0, 173, 0, 105, 0, 0, 0, 0,
1386 105, 105, 1, 0, 2, 3, 4, 5, 0, 6,
1387 7, 387, 0, 514, 0, 387, 173, 413, 387, 0,
1388 0, 0, 551, 0, 0, 0, 385, 0, 558, 8,
1389 559, 0, 0, 0, 0, 171, 0, 316, 0, 316,
1390 0, 567, 0, 0, 0, 0, 0, 0, 0, 0,
1391 385, 513, 0, 0, 0, 0, 0, 385, 0, 0,
1392 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1393 0, 0, 9, 10, 11, 0, 0, 0, 385, 0,
1394 513, 0, 385, 0, 0, 385, 0, 0, 0, 513,
1395 0, 0, 0, 387, 0, 385, 0, 0, 0, 316,
1396 316, 0, 0, 12, 13, 0, 0, 0, 0, 0,
1397 14, 0, 0, 0, 0, 0, 0, 387, 514, 15,
1398 173, 16, 108, 17, 0, 0, 0, 173, 18, 19,
1399 20, 21, 22, 23, 0, 0, 316, 316, 0, 0,
1400 0, 0, 0, 0, 681, 738, 387, 0, 0, 0,
1401 0, 0, 0, 0, 627, 387, 0, 0, 0, 630,
1402 385, 8, 54, 55, 56, 57, 58, 59, 60, 61,
1403 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1404 72, 73, 74, 75, 385, 513, 0, 0, 0, 0,
1405 0, 0, 0, 0, 0, 0, 0, 0, 0, 76,
1406 0, 0, 0, 0, 173, 0, 0, 0, 77, 0,
1407 0, 0, 0, 385, 0, 0, 0, 0, 78, 0,
1408 0, 385, 385, 0, 0, 0, 513, 1, 0, 2,
1409 3, 4, 5, 79, 6, 7, 0, 0, 0, 0,
1410 0, 0, 0, 0, 0, 80, 81, 0, 0, 0,
1411 82, 0, 0, 387, 8, 54, 55, 56, 57, 58,
1412 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1413 69, 70, 71, 72, 73, 74, 75, 0, 475, 476,
1414 477, 478, 479, 480, 481, 482, 483, 484, 485, 0,
1415 0, 0, 76, 0, 0, 0, 0, 9, 10, 11,
1416 0, 77, 0, 486, 0, 0, 0, 0, 0, 0,
1417 0, 78, 0, 0, 0, 0, 0, 0, 0, 0,
1418 385, 0, 0, 0, 0, 0, 79, 0, 12, 13,
1419 0, 0, 0, 0, 0, 14, 0, 0, 80, 81,
1420 0, 0, 0, 82, 15, 0, 16, 0, 17, 0,
1421 0, 0, 0, 18, 19, 20, 21, 22, 23, 1,
1422 0, 2, 3, 4, 5, 0, 6, 7, 487, 360,
1423 -369, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1424 0, 0, 0, 0, 0, 0, 8, 54, 55, 56,
1425 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1426 67, 68, 69, 70, 71, 72, 73, 74, 75, 0,
1427 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
1428 485, 0, 0, 0, 76, 0, 0, 0, 0, 9,
1429 10, 11, 0, 77, 0, 486, 0, 0, 0, 0,
1430 0, 0, 0, 78, 0, 0, 0, 0, 0, 0,
1431 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,
1432 12, 13, 0, 0, 0, 0, 0, 14, 0, 0,
1433 80, 81, 0, 0, 0, 82, 15, 0, 16, 0,
1434 17, 0, 0, 0, 0, 18, 19, 20, 21, 22,
1435 23, 1, 0, 2, 3, 4, 5, 0, 6, 7,
1436 487, 360, -368, 0, 0, 0, 0, 0, 0, 0,
1437 0, 0, 0, 0, 0, 0, 0, 0, 8, 54,
1438 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1439 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1440 75, 0, 475, 476, 477, 478, 479, 480, 481, 482,
1441 483, 484, 485, 0, 0, 0, 76, 0, 0, 0,
1442 0, 9, 10, 11, 0, 77, 0, 486, 0, 0,
1443 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1444 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1445 79, 0, 12, 13, 0, 0, 0, 0, 0, 14,
1446 0, 0, 80, 81, 0, 0, 0, 82, 15, 0,
1447 16, 0, 17, 0, 0, 0, 0, 18, 19, 20,
1448 21, 22, 23, 1, 0, 2, 3, 4, 5, 0,
1449 6, 7, 487, 360, -370, 0, 0, 0, 0, 0,
1450 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1451 8, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1452 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1453 73, 74, 75, 0, 0, 0, 0, 0, 0, 0,
1454 0, 0, 0, 0, 0, 0, 0, 0, 76, 0,
1455 0, 0, 0, 9, 10, 11, 0, 77, 0, 0,
1456 0, 0, 0, 0, 0, 0, 0, 78, 0, 0,
1457 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1458 0, 0, 79, 0, 12, 13, 0, 0, 0, 0,
1459 0, 14, 0, 0, 80, 81, 0, 0, 0, 82,
1460 15, 0, 16, 0, 17, 0, 0, 0, 0, 18,
1461 19, 20, 21, 22, 23, 1, 0, 2, 3, 4,
1462 5, 0, 6, 7, 224, 225, 226, 0, 0, 0,
1463 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1464 0, 0, 8, 54, 55, 56, 57, 58, 59, 60,
1465 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1466 71, 72, 73, 74, 75, 0, 0, 0, 0, 0,
1467 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1468 76, 0, 0, 0, 0, 9, 10, 11, 0, 77,
1469 0, 0, 0, 0, 0, 0, 0, 0, 0, 78,
1470 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1471 0, 0, 0, 0, 79, 0, 12, 13, 0, 0,
1472 0, 0, 0, 14, 0, 0, 80, 81, 0, 0,
1473 0, 82, 15, 0, 16, 0, 17, 0, 0, 0,
1474 0, 18, 19, 20, 21, 22, 23, 1, 0, 2,
1475 3, 4, 5, 0, 6, 7, 224, 225, 270, 0,
1476 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1477 0, 0, 0, 0, 8, 54, 55, 56, 57, 58,
1478 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1479 69, 70, 71, 72, 73, 74, 75, 0, 0, 0,
1480 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1481 0, 0, 76, 0, 0, 0, 0, 9, 10, 11,
1482 0, 77, 0, 0, 0, 0, 0, 0, 0, 0,
1483 0, 78, 0, 0, 0, 0, 0, 0, 0, 0,
1484 0, 0, 0, 0, 0, 0, 79, 0, 12, 13,
1485 0, 0, 0, 0, 0, 14, 0, 0, 80, 81,
1486 0, 0, 0, 82, 15, 0, 16, 0, 17, 0,
1487 0, 0, 0, 18, 19, 20, 21, 22, 23, 1,
1488 0, 2, 3, 4, 5, 0, 6, 7, 224, 225,
1489 354, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1490 0, 0, 0, 0, 0, 0, 8, 54, 55, 56,
1491 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1492 67, 68, 69, 70, 71, 72, 73, 74, 75, 0,
1493 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1494 0, 0, 0, 0, 76, 0, 0, 0, 0, 9,
1495 10, 11, 0, 77, 0, 0, 0, 0, 0, 0,
1496 0, 0, 0, 78, 0, 0, 0, 0, 0, 0,
1497 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,
1498 12, 13, 0, 0, 0, 0, 0, 14, 0, 0,
1499 80, 81, 0, 0, 0, 82, 15, 0, 16, 0,
1500 17, 0, 0, 0, 0, 18, 19, 20, 21, 22,
1501 23, 1, 0, 2, 3, 4, 5, 0, 6, 7,
1502 365, 225, -424, 0, 0, 0, 0, 0, 0, 0,
1503 0, 0, 0, 0, 0, 0, 0, 0, 8, 54,
1504 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1505 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1506 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1507 0, 0, 0, 0, 0, 0, 76, 0, 0, 0,
1508 0, 9, 10, 11, 0, 77, 0, 0, 0, 0,
1509 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1510 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1511 79, 0, 12, 13, 0, 0, 0, 0, 0, 14,
1512 0, 0, 80, 81, 0, 0, 0, 82, 15, 0,
1513 16, 1, 17, 2, 3, 4, 0, 18, 19, 20,
1514 21, 22, 23, 0, 0, 0, 0, 0, 0, 0,
1515 0, 0, 224, 225, 625, 0, 0, 0, 8, 54,
1516 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1517 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1518 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1519 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1520 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1521 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1522 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1523 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1524 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1525 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1526 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1527 0, 0, 299, 0, 300, 0, 0, 0, 8, 54,
1528 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1529 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1530 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1531 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1532 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1533 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1534 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1535 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1536 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1537 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1538 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1539 0, 0, 299, 0, 429, 0, 0, 0, 8, 54,
1540 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1541 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1542 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1543 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1544 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1545 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1546 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1547 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1548 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1549 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1550 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1551 0, 0, 299, 0, 448, 0, 0, 0, 8, 54,
1552 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1553 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1554 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1555 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1556 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1557 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1558 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1559 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1560 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1561 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1562 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1563 0, 0, 299, 0, 450, 0, 0, 0, 8, 54,
1564 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1565 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1566 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1567 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1568 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1569 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1570 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1571 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1572 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1573 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1574 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1575 0, 0, 299, 0, 568, 0, 0, 0, 8, 54,
1576 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1577 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1578 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1579 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1580 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1581 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1582 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1583 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1584 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1585 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1586 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1587 0, 0, 299, 0, 569, 0, 0, 0, 8, 54,
1588 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1589 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1590 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1591 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1592 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1593 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1594 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1595 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1596 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1597 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1598 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1599 0, 0, 299, 0, 570, 0, 0, 0, 8, 54,
1600 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1601 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1602 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1603 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1604 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1605 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1606 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1607 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1608 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1609 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1610 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1611 0, 0, 299, 0, 573, 0, 0, 0, 8, 54,
1612 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1613 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1614 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1615 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1616 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1617 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1618 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1619 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1620 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1621 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1622 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1623 0, 0, 299, 0, 634, 0, 0, 0, 8, 54,
1624 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1625 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1626 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1627 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1628 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1629 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1630 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1631 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1632 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1633 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1634 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1635 0, 0, 299, 0, 635, 0, 0, 0, 8, 54,
1636 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1637 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1638 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1639 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1640 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1641 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1642 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1643 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1644 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1645 297, 1, 17, 2, 3, 4, 0, 0, 165, 0,
1646 0, 298, 0, 0, 0, 0, 0, 0, 0, 0,
1647 0, 0, 299, 0, 654, 0, 0, 0, 8, 54,
1648 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1649 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1650 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1651 0, 0, 0, 0, 0, 0, 76, 0, 295, 0,
1652 0, 9, 10, 0, 159, 77, 0, 0, 296, 160,
1653 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1654 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1655 79, 0, 12, 13, 0, 0, 0, 0, 0, 0,
1656 161, 162, 80, 81, 0, 0, 0, 82, 15, 0,
1657 297, 0, 17, 0, 0, 0, 0, 0, 165, 0,
1658 1, 298, 2, 3, 4, 5, 0, 6, 7, 0,
1659 0, 0, 299, 0, 655, 0, 0, 0, 0, 0,
1660 0, 0, 0, 0, 0, 0, 0, 8, 54, 55,
1661 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1662 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1663 0, 475, 476, 477, 478, 479, 480, 481, 482, 483,
1664 484, 485, 0, 0, 0, 76, 0, 0, 0, 0,
1665 9, 10, 11, 0, 77, 0, 486, 0, 0, 0,
1666 0, 0, 0, 0, 78, 0, 0, 0, 0, 0,
1667 0, 0, 0, 0, 0, 0, 0, 0, 0, 79,
1668 0, 12, 13, 0, 0, 0, 0, 0, 14, 0,
1669 0, 80, 81, 0, 0, 0, 82, 15, 0, 16,
1670 0, 17, 0, 0, 0, 0, 18, 19, 20, 21,
1671 22, 23, 1, 0, 2, 3, 4, 5, 0, 6,
1672 7, 487, 360, 0, 0, 0, 0, 0, 0, 0,
1673 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
1674 0, 0, 0, 0, 0, 0, 0, 1, 0, 2,
1675 3, 4, 5, 0, 6, 7, 0, 0, 0, 0,
1676 0, 0, 0, 475, 476, 477, 478, 479, 480, 481,
1677 482, 483, 484, 485, 8, 0, 0, 0, 0, 0,
1678 0, 0, 9, 10, 11, 0, 0, 0, 0, 1,
1679 0, 2, 3, 4, 5, 0, 6, 7, 0, 0,
1680 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1681 0, 0, 0, 12, 13, 0, 8, 9, 10, 11,
1682 14, 0, 0, 0, 0, 0, 0, 0, 0, 15,
1683 0, 16, 0, 17, 0, 0, 0, 0, 18, 19,
1684 20, 21, 22, 23, 0, 0, 0, 0, 12, 13,
1685 0, 0, 0, 487, 360, 14, 0, 0, 0, 9,
1686 10, 11, 0, 0, 15, 0, 16, 241, 17, 0,
1687 0, 0, 0, 18, 19, 20, 21, 22, 23, 0,
1688 1, 0, 2, 3, 4, 5, 0, 6, 7, 225,
1689 12, 13, 0, 0, 0, 0, 0, 14, 0, 0,
1690 0, 0, 0, 0, 0, 0, 15, 8, 16, 0,
1691 17, 0, 0, 0, 0, 18, 19, 20, 21, 22,
1692 23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1693 0, 225, 0, 0, 0, 0, 0, 0, 0, 0,
1694 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1695 9, 10, 11, 0, 0, 0, 0, 0, 0, 0,
1696 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1697 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1698 0, 12, 13, 0, 0, 0, 0, 0, 14, 0,
1699 0, 0, 0, 0, 0, 0, 0, 15, 0, 16,
1700 1, 17, 2, 3, 4, 0, 18, 19, 20, 21,
1701 22, 23, 0, 0, 0, 0, 0, 0, 0, 0,
1702 0, 0, 681, 0, 0, 0, 0, 8, 54, 55,
1703 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
1704 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
1705 0, 0, 1, 0, 2, 3, 4, 5, 0, 6,
1706 7, 0, 0, 0, 0, 76, 0, 295, 0, 0,
1707 9, 10, 0, 159, 77, 0, 0, 296, 160, 8,
1708 0, 0, 0, 0, 78, 0, 1, 0, 2, 3,
1709 4, 5, 0, 6, 7, 0, 0, 0, 0, 79,
1710 0, 12, 13, 0, 0, 0, 0, 0, 0, 161,
1711 162, 80, 81, 8, 0, 0, 82, 15, 0, 297,
1712 0, 17, 9, 10, 11, 0, 0, 165, 0, 0,
1713 298, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1714 0, 299, 0, 0, 0, 0, 0, 0, 0, 0,
1715 0, 0, 0, 12, 13, 0, 9, 10, 11, 1,
1716 14, 2, 3, 4, 5, 0, 6, 7, 0, 15,
1717 0, 16, 645, 17, 0, 0, 0, 0, 18, 19,
1718 20, 21, 22, 23, 0, 0, 8, 12, 13, 0,
1719 0, 0, 0, 487, 14, 0, 0, 0, 0, 0,
1720 0, 0, 0, 15, 0, 16, 677, 17, 0, 0,
1721 0, 0, 18, 19, 20, 21, 22, 23, 0, 0,
1722 0, 0, 0, 0, 0, 0, 0, 487, 0, 9,
1723 10, 11, 0, 0, 0, 0, 0, 0, 0, 0,
1724 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1725 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1726 12, 13, 0, 0, 0, 0, 0, 14, 0, 0,
1727 0, 0, 0, 0, 0, 0, 15, 2, 16, 0,
1728 17, 0, 0, 0, 0, 18, 19, 20, 21, 22,
1729 23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1730 593, 0, 8, 54, 55, 56, 57, 58, 59, 60,
1731 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1732 71, 72, 73, 74, 400, 0, 0, 0, 0, 0,
1733 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1734 76, 0, 0, 0, 0, 0, 0, 0, 159, 77,
1735 0, 0, 0, 160, 0, 0, 0, 0, 0, 78,
1736 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1737 0, 0, 0, 0, 79, 0, 0, 0, 0, 0,
1738 0, 0, 0, 0, 161, 162, 80, 81, 0, 0,
1739 0, 82, 0, 2, 212, 0, 0, 0, 213, 0,
1740 0, 0, 165, 0, 0, 0, 0, 0, 0, 0,
1741 0, 0, 0, 0, 0, 0, 0, 533, 8, 54,
1742 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1743 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1744 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1745 0, 0, 0, 0, 0, 0, 76, 0, 0, 0,
1746 0, 0, 0, 0, 159, 77, 0, 0, 0, 160,
1747 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1748 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1749 79, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1750 161, 162, 80, 81, 0, 0, 0, 82, 2, 0,
1751 416, 0, 0, 0, 0, 0, 0, 0, 165, 0,
1752 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1753 417, 0, 418, 8, 54, 55, 56, 57, 58, 59,
1754 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1755 70, 71, 72, 73, 74, 75, 0, 0, 0, 0,
1756 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1757 0, 76, 0, 0, 0, 0, 0, 0, 0, 159,
1758 77, 0, 0, 0, 160, 0, 0, 0, 0, 0,
1759 78, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1760 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1761 0, 0, 0, 0, 0, 161, 162, 80, 81, 0,
1762 0, 0, 82, 0, 1, 357, 2, 3, 4, 5,
1763 0, 6, 7, 165, 0, 0, 0, 0, 0, 0,
1764 0, 0, 0, 0, 0, 0, 0, 598, 0, 0,
1765 0, 8, 0, 0, 0, 0, 0, 59, 60, 61,
1766 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1767 72, 73, 74, 75, 0, 0, 0, 0, 0, 0,
1768 0, 0, 0, 0, 0, 0, 0, 0, 0, 76,
1769 0, 0, 0, 0, 9, 10, 11, 159, 77, 0,
1770 0, 0, 160, 0, 0, 0, 0, 0, 78, 0,
1771 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1772 0, 0, 0, 79, 0, 12, 13, 0, 0, 0,
1773 0, 0, 14, 161, 162, 80, 81, 0, 0, 0,
1774 0, 15, 0, 409, 100, 17, 0, 0, 0, 0,
1775 18, 410, 20, 21, 22, 23, 1, 0, 2, 3,
1776 4, 5, 0, 6, 7, 0, 0, 0, 0, 0,
1777 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1778 0, 0, 0, 8, 0, 0, 0, 0, 0, 59,
1779 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1780 70, 71, 72, 73, 74, 75, 0, 0, 0, 0,
1781 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1782 0, 76, 0, 0, 0, 0, 9, 10, 11, 1,
1783 77, 2, 3, 4, 5, 0, 6, 7, 0, 0,
1784 78, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1785 0, 0, 0, 0, 0, 79, 8, 12, 13, 0,
1786 0, 0, 0, 0, 14, 0, 0, 80, 81, 0,
1787 0, 0, 0, 15, 0, 16, 100, 17, 0, 0,
1788 0, 0, 18, 19, 20, 21, 22, 23, 0, 0,
1789 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
1790 10, 11, 159, 0, 0, 0, 1, 160, 2, 3,
1791 4, 5, 0, 6, 7, 0, 0, 0, 0, 0,
1792 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1793 12, 13, 0, 8, 0, 0, 0, 14, 161, 162,
1794 0, 0, 0, 0, 0, 0, 15, 0, 409, 100,
1795 17, 0, 0, 0, 0, 18, 410, 20, 21, 22,
1796 23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1797 0, 0, 0, 0, 0, 0, 9, 10, 11, 1,
1798 0, 2, 3, 4, 5, 0, 6, 7, 0, 0,
1799 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1800 0, 0, 0, 0, 0, 0, 8, 12, 13, 0,
1801 0, 0, 0, 1, 14, 2, 3, 4, 5, 0,
1802 6, 7, 0, 15, 0, 16, 100, 17, 0, 0,
1803 0, 0, 18, 19, 20, 21, 22, 23, 0, 0,
1804 8, 0, 0, 0, 0, 0, 0, 0, 0, 9,
1805 10, 11, 1, 0, 2, 3, 4, 5, 0, 6,
1806 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1807 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
1808 12, 13, 0, 9, 10, 11, 1, 14, 2, 3,
1809 4, 5, 0, 6, 7, 0, 15, 0, 16, 0,
1810 17, 0, 0, 344, 0, 18, 19, 20, 21, 22,
1811 23, 0, 0, 8, 12, 13, 0, 0, 0, 0,
1812 0, 14, 9, 10, 11, 0, 0, 0, 0, 0,
1813 15, 0, 16, 0, 17, 0, 0, 469, 0, 18,
1814 19, 20, 21, 22, 23, 0, 0, 0, 0, 0,
1815 0, 0, 0, 12, 13, 0, 9, 10, 11, 1,
1816 14, 2, 3, 4, 5, 0, 6, 7, 0, 15,
1817 0, 16, 0, 17, 0, 0, 561, 0, 18, 19,
1818 20, 21, 22, 23, 0, 0, 8, 12, 13, 0,
1819 0, 0, 0, 1, 14, 2, 3, 4, 5, 0,
1820 6, 7, 0, 15, 0, 16, 642, 17, 0, 0,
1821 0, 0, 18, 19, 20, 21, 22, 23, 0, 0,
1822 8, 0, 0, 0, 0, 0, 0, 0, 0, 9,
1823 10, 11, 1, 0, 2, 3, 4, 5, 0, 6,
1824 7, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1825 0, 0, 0, 0, 0, 0, 0, 0, 0, 8,
1826 12, 13, 0, 9, 10, 11, 1, 14, 2, 3,
1827 4, 5, 0, 6, 7, 0, 15, 0, 16, 702,
1828 17, 0, 0, 0, 0, 18, 19, 20, 21, 22,
1829 23, 0, 0, 8, 12, 13, 0, 0, 0, 0,
1830 0, 14, 9, 10, 11, 0, 0, 0, 0, 0,
1831 15, 0, 16, 0, 17, 0, 0, 0, 0, 18,
1832 19, 20, 21, 22, 23, 0, 0, 0, 0, 0,
1833 0, 0, 0, 12, 13, 0, 9, 10, 11, 1,
1834 14, 2, 3, 4, 5, 0, 6, 7, 0, 15,
1835 0, 49, 0, 17, 0, 0, 0, 0, 18, 19,
1836 20, 21, 22, 23, 0, 0, 8, 12, 13, 0,
1837 0, 0, 0, 0, 14, 0, 0, 0, 0, 0,
1838 0, 0, 0, 15, 0, 51, 0, 17, 0, 0,
1839 0, 0, 18, 19, 20, 21, 22, 23, 0, 0,
1840 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,
1841 10, 11, 0, 0, 0, 0, 0, 0, 0, 0,
1842 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1844 12, 13, 0, 0, 0, 0, 2, 14, 0, 0,
1845 0, 0, 0, 0, 0, 0, 15, 0, 98, 0,
1846 17, 0, 0, 0, 0, 18, 19, 20, 21, 22,
1847 23, 8, 54, 55, 56, 57, 58, 59, 60, 61,
1848 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1849 72, 73, 74, 75, 0, 0, 0, 0, 0, 0,
1850 0, 0, 0, 0, 0, 0, 0, 0, 0, 76,
1851 0, 0, 0, 0, 0, 0, 0, 159, 77, 0,
1852 0, 0, 160, 0, 0, 0, 0, 0, 78, 0,
1853 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1854 0, 0, 0, 79, 0, 0, 0, 2, 0, 0,
1855 0, 0, 0, 161, 162, 80, 81, 0, 0, 0,
1856 82, 0, 0, 381, 341, 0, 0, 213, 0, 0,
1857 0, 165, 8, 54, 55, 56, 57, 58, 59, 60,
1858 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1859 71, 72, 73, 74, 75, 0, 0, 0, 0, 0,
1860 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1861 76, 0, 0, 0, 0, 0, 0, 0, 159, 77,
1862 0, 0, 0, 160, 0, 0, 0, 0, 0, 78,
1863 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1864 0, 0, 0, 0, 79, 0, 0, 0, 2, 0,
1865 0, 0, 0, 0, 161, 162, 80, 81, 0, 0,
1866 0, 82, 0, 0, 381, 0, 0, 0, 213, 0,
1867 0, 0, 165, 8, 54, 55, 56, 57, 58, 59,
1868 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1869 70, 71, 72, 73, 74, 75, 0, 0, 0, 0,
1870 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1871 0, 76, 0, 0, 0, 0, 0, 0, 0, 159,
1872 77, 0, 0, 0, 160, 0, 0, 0, 0, 0,
1873 78, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1874 0, 0, 0, 0, 0, 79, 0, 0, 0, 2,
1875 0, 0, 0, 0, 0, 161, 162, 80, 81, 0,
1876 0, 0, 82, 0, 0, 357, 0, 0, 0, 0,
1877 0, 0, 0, 165, 8, 54, 55, 56, 57, 58,
1878 59, 60, 61, 62, 63, 64, 65, 66, 67, 68,
1879 69, 70, 71, 72, 73, 74, 75, 0, 0, 0,
1880 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1881 0, 0, 76, 0, 0, 0, 0, 0, 0, 0,
1882 0, 77, 0, 0, 0, 0, 0, 0, 0, 0,
1883 0, 78, 0, 0, 0, 0, 0, 0, 0, 0,
1884 0, 0, 0, 0, 0, 0, 79, 0, 0, 0,
1885 0, 0, 0, 0, 0, 0, 0, 0, 80, 81,
1886 0, 0, 0, 82, 0, 0, 0, 435, 8, 54,
1887 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
1888 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
1889 75, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1890 0, 0, 0, 0, 0, 0, 76, 0, 0, 0,
1891 0, 0, 0, 0, 159, 77, 0, 0, 0, 160,
1892 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
1893 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1894 79, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1895 161, 162, 80, 81, 0, 0, 0, 82, 0, 0,
1896 212, 341, 0, 0, 213, 0, 0, 0, 165, 8,
1897 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
1898 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
1899 74, 75, 0, 0, 0, 0, 0, 0, 0, 0,
1900 0, 0, 0, 0, 0, 0, 0, 76, 0, 0,
1901 0, 0, 0, 0, 0, 159, 77, 0, 0, 0,
1902 160, 0, 0, 0, 0, 0, 78, 0, 0, 0,
1903 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1904 0, 79, 0, 0, 0, 0, 0, 0, 0, 0,
1905 0, 161, 162, 80, 81, 0, 0, 0, 82, 0,
1906 0, 163, 0, 0, 0, 164, 0, 0, 0, 165,
1907 8, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1908 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1909 73, 74, 75, 0, 0, 0, 0, 0, 0, 0,
1910 0, 0, 0, 0, 0, 0, 0, 0, 76, 0,
1911 0, 0, 0, 0, 0, 0, 159, 77, 0, 0,
1912 0, 160, 0, 0, 0, 0, 0, 78, 0, 0,
1913 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1914 0, 0, 79, 0, 0, 0, 0, 0, 0, 0,
1915 0, 0, 161, 162, 80, 81, 0, 0, 0, 82,
1916 0, 0, 163, 0, 0, 0, 206, 0, 0, 0,
1917 165, 8, 54, 55, 56, 57, 58, 59, 60, 61,
1918 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1919 72, 73, 74, 75, 0, 0, 0, 0, 0, 0,
1920 0, 0, 0, 0, 0, 0, 0, 0, 0, 76,
1921 0, 0, 0, 0, 0, 0, 0, 159, 77, 0,
1922 0, 0, 160, 0, 0, 0, 0, 0, 78, 0,
1923 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1924 0, 0, 0, 79, 0, 0, 0, 0, 0, 0,
1925 0, 0, 0, 161, 162, 80, 81, 0, 0, 0,
1926 82, 0, 0, 163, 279, 0, 0, 0, 0, 0,
1927 0, 165, 8, 54, 55, 56, 57, 58, 181, 182,
1928 183, 184, 185, 186, 187, 188, 189, 190, 69, 70,
1929 191, 192, 73, 74, 75, 0, 0, 0, 0, 0,
1930 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1931 193, 0, 0, 0, 0, 0, 0, 0, 159, 77,
1932 0, 0, 0, 160, 0, 0, 0, 0, 0, 0,
1933 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1934 0, 0, 0, 0, 194, 0, 0, 0, 0, 0,
1935 0, 0, 0, 0, 161, 162, 195, 196, 0, 0,
1936 0, 82, 0, 0, 163, 0, 0, 0, 328, 0,
1937 0, 0, 165, 8, 54, 55, 56, 57, 58, 181,
1938 182, 183, 184, 185, 186, 187, 188, 189, 190, 69,
1939 70, 191, 192, 73, 74, 75, 0, 0, 0, 0,
1940 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1941 0, 193, 0, 0, 0, 0, 0, 0, 0, 159,
1942 77, 8, 0, 0, 160, 0, 0, 59, 60, 61,
1943 62, 63, 64, 65, 66, 67, 68, 69, 70, 71,
1944 72, 73, 74, 75, 0, 194, 0, 0, 0, 0,
1945 0, 0, 0, 0, 0, 161, 162, 195, 196, 76,
1946 0, 0, 82, 0, 0, 163, 0, 159, 77, 337,
1947 0, 0, 160, 165, 0, 0, 0, 0, 78, 0,
1948 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1949 0, 0, 0, 79, 0, 0, 0, 0, 0, 0,
1950 0, 0, 0, 161, 162, 80, 81, 0, 0, 0,
1951 0, 0, 0, 212, 0, 0, 0, 213, 0, 0,
1952 0, 165, 8, 54, 55, 56, 57, 58, 59, 60,
1953 61, 62, 63, 64, 65, 66, 67, 68, 69, 70,
1954 71, 72, 73, 74, 75, 0, 0, 0, 0, 0,
1955 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1956 76, 0, 0, 0, 0, 0, 0, 0, 0, 77,
1957 0, 0, 0, 0, 0, 0, 0, 0, 0, 78,
1958 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1959 0, 0, 0, 0, 79, 0, 0, 0, 0, 0,
1960 0, 0, 0, 0, 0, 0, 80, 81, 0, 0,
1961 0, 82, 0, 0, 0, 397, 8, 54, 55, 56,
1962 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
1963 67, 68, 69, 70, 71, 72, 73, 74, 75, 0,
1964 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1965 0, 0, 0, 0, 76, 0, 0, 0, 0, 0,
1966 0, 0, 0, 77, 0, 0, 0, 0, 0, 0,
1967 0, 0, 0, 78, 0, 0, 0, 0, 0, 0,
1968 0, 0, 0, 0, 0, 0, 0, 0, 79, 0,
1969 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1970 80, 81, 0, 0, 0, 82, 0, 0, 0, 467,
1971 8, 54, 55, 56, 57, 58, 59, 60, 61, 62,
1972 63, 64, 65, 66, 67, 68, 69, 70, 71, 72,
1973 73, 74, 75, 0, 0, 0, 0, 0, 0, 0,
1974 0, 0, 0, 0, 0, 0, 0, 0, 76, 0,
1975 0, 0, 0, 0, 0, 0, 0, 77, 0, 0,
1976 0, 0, 0, 0, 0, 0, 0, 78, 0, 0,
1977 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1978 0, 0, 79, 0, 0, 0, 0, 0, 0, 0,
1979 0, 0, 0, 0, 80, 81, 0, 0, 0, 82,
1980 0, 0, 546, 8, 54, 55, 56, 57, 58, 59,
1981 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1982 70, 71, 72, 73, 74, 75, 518, 0, 0, 0,
1983 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1984 0, 76, 0, 0, 0, 0, 0, 0, 0, 0,
1985 77, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1986 78, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1987 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1988 0, 0, 0, 0, 0, 0, 0, 80, 81, 0,
1989 0, 0, 82, 8, 54, 55, 56, 57, 58, 59,
1990 60, 61, 62, 63, 64, 65, 66, 67, 68, 69,
1991 70, 71, 72, 73, 74, 400, 0, 0, 0, 0,
1992 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1993 0, 76, 0, 0, 0, 0, 0, 0, 0, 0,
1994 77, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1995 78, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1996 0, 0, 0, 0, 0, 79, 0, 0, 0, 0,
1997 0, 0, 0, 0, 0, 0, 0, 80, 81, 0,
1998 0, 0, 82, 8, 54, 55, 56, 57, 58, 181,
1999 182, 183, 184, 185, 186, 187, 188, 189, 190, 69,
2000 70, 191, 192, 73, 74, 75, 0, 0, 0, 0,
2001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2002 0, 193, 0, 0, 0, 0, 0, 0, 0, 0,
2003 77, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2004 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2005 0, 0, 0, 0, 0, 194, 0, 0, 0, 0,
2006 0, 0, 0, 0, 0, 0, 0, 195, 196, 0,
2010 static const yytype_int16 yycheck[] =
2012 0, 0, 16, 103, 75, 5, 6, 7, 16, 30,
2013 163, 361, 152, 280, 14, 17, 16, 3, 83, 90,
2014 83, 3, 3, 115, 95, 9, 97, 90, 12, 69,
2015 95, 96, 97, 96, 17, 49, 303, 51, 130, 214,
2016 103, 49, 361, 3, 305, 70, 221, 28, 230, 49,
2017 3, 51, 3, 3, 388, 167, 322, 323, 295, 151,
2018 326, 528, 10, 681, 176, 13, 69, 70, 28, 49,
2019 356, 12, 13, 69, 70, 83, 3, 126, 28, 413,
2020 140, 5, 120, 143, 98, 225, 124, 95, 96, 97,
2021 98, 96, 426, 142, 44, 103, 70, 69, 98, 69,
2022 163, 28, 120, 117, 144, 723, 124, 95, 179, 97,
2023 128, 132, 133, 134, 296, 115, 115, 117, 98, 144,
2024 13, 303, 44, 45, 74, 75, 197, 111, 70, 415,
2025 130, 130, 197, 95, 197, 97, 150, 208, 120, 292,
2026 480, 144, 124, 208, 494, 208, 128, 614, 144, 212,
2027 150, 151, 151, 75, 69, 495, 139, 143, 163, 312,
2028 3, 127, 143, 111, 401, 230, 3, 120, 152, 120,
2029 144, 121, 144, 348, 144, 494, 495, 128, 290, 163,
2030 280, 515, 589, 143, 143, 28, 452, 453, 449, 197,
2031 451, 28, 197, 454, 135, 136, 349, 137, 126, 3,
2032 208, 222, 144, 208, 152, 126, 128, 382, 70, 197,
2033 544, 211, 211, 388, 142, 280, 164, 280, 552, 126,
2034 208, 223, 230, 144, 491, 407, 129, 130, 212, 144,
2035 295, 74, 126, 140, 297, 197, 79, 74, 303, 646,
2036 303, 225, 79, 509, 584, 511, 208, 121, 142, 120,
2037 144, 314, 126, 197, 238, 3, 596, 128, 206, 138,
2038 126, 121, 16, 603, 208, 213, 126, 110, 111, 125,
2039 74, 164, 280, 110, 111, 79, 142, 225, 144, 371,
2040 28, 125, 144, 297, 603, 125, 553, 143, 126, 143,
2041 238, 69, 70, 126, 357, 303, 44, 297, 638, 143,
2042 143, 401, 642, 143, 142, 645, 110, 111, 292, 142,
2043 571, 572, 296, 206, 298, 126, 120, 3, 381, 3,
2044 213, 7, 8, 9, 128, 388, 74, 75, 312, 400,
2045 0, 671, 672, 144, 674, 406, 401, 677, 401, 120,
2046 515, 3, 407, 406, 28, 293, 409, 608, 609, 414,
2047 413, 126, 126, 416, 69, 70, 27, 10, 11, 121,
2048 44, 361, 702, 426, 128, 349, 144, 142, 142, 133,
2049 134, 371, 371, 121, 14, 15, 123, 361, 126, 719,
2050 328, 3, 722, 3, 651, 7, 8, 9, 336, 337,
2051 74, 75, 79, 121, 121, 409, 28, 381, 126, 407,
2052 293, 409, 350, 143, 75, 143, 414, 391, 356, 409,
2053 550, 121, 74, 121, 120, 363, 126, 79, 126, 90,
2054 120, 3, 124, 110, 111, 373, 491, 375, 491, 144,
2055 143, 121, 125, 126, 120, 328, 126, 123, 124, 142,
2056 143, 112, 121, 336, 337, 116, 121, 126, 110, 111,
2057 124, 126, 515, 140, 121, 141, 120, 350, 120, 126,
2058 1, 120, 3, 4, 5, 124, 128, 415, 120, 417,
2059 541, 485, 124, 139, 140, 141, 142, 120, 140, 121,
2060 480, 544, 375, 491, 155, 485, 434, 28, 143, 552,
2061 553, 121, 74, 143, 494, 495, 144, 79, 120, 135,
2062 136, 123, 124, 137, 138, 144, 177, 121, 179, 457,
2063 494, 495, 121, 461, 143, 144, 276, 277, 141, 141,
2064 126, 125, 120, 142, 417, 142, 125, 475, 110, 111,
2065 71, 72, 143, 143, 124, 124, 121, 121, 120, 121,
2066 3, 434, 125, 144, 144, 121, 128, 125, 3, 111,
2067 121, 143, 7, 8, 9, 143, 121, 228, 121, 230,
2068 121, 102, 103, 140, 457, 125, 550, 125, 461, 125,
2069 125, 585, 586, 587, 120, 120, 120, 118, 120, 120,
2070 144, 122, 475, 142, 584, 585, 586, 587, 651, 589,
2071 152, 142, 142, 121, 120, 143, 596, 121, 612, 56,
2072 143, 141, 550, 603, 143, 276, 277, 555, 125, 280,
2073 125, 74, 612, 125, 141, 177, 79, 140, 121, 603,
2074 142, 140, 143, 120, 144, 296, 297, 143, 64, 143,
2075 148, 302, 303, 304, 305, 142, 144, 146, 638, 144,
2076 142, 312, 642, 314, 144, 645, 646, 110, 111, 44,
2077 45, 322, 323, 653, 653, 326, 144, 120, 144, 144,
2078 144, 675, 555, 225, 678, 120, 144, 147, 123, 124,
2079 145, 671, 672, 149, 674, 675, 238, 677, 678, 74,
2080 75, 681, 681, 42, 79, 97, 357, 651, 423, 431,
2081 361, 18, 19, 20, 21, 22, 23, 24, 25, 26,
2082 27, 649, 702, 553, 376, 376, 391, 494, 238, 363,
2083 381, 382, -1, 238, -1, 110, 111, 388, -1, 719,
2084 -1, 669, 722, 723, 723, 238, -1, -1, -1, 400,
2085 401, -1, -1, 128, 3, 406, 407, -1, 409, -1,
2086 411, -1, 413, 305, -1, 416, -1, -1, -1, 420,
2087 233, -1, -1, -1, -1, 426, 649, 428, -1, -1,
2088 322, 323, -1, -1, 326, -1, -1, -1, 439, -1,
2089 -1, -1, -1, -1, -1, -1, 669, -1, 449, -1,
2090 451, 452, 453, 454, -1, -1, -1, -1, -1, -1,
2091 -1, 9, -1, -1, 12, -1, -1, -1, 16, -1,
2092 -1, 363, -1, -1, -1, 74, -1, -1, -1, 480,
2093 79, 482, -1, -1, 141, 486, -1, -1, -1, -1,
2094 491, -1, -1, 494, 495, -1, -1, 16, -1, -1,
2095 -1, 49, -1, -1, 317, 318, 319, 320, 509, 83,
2096 511, 110, 111, -1, 515, 516, -1, -1, -1, -1,
2097 -1, 120, 96, -1, -1, 124, -1, -1, -1, 103,
2098 49, -1, -1, -1, -1, 83, -1, -1, 539, 431,
2099 541, -1, -1, 544, -1, -1, -1, -1, 96, -1,
2100 98, 552, 553, -1, -1, 103, 557, 449, -1, 451,
2101 452, 453, 454, 111, 83, 566, -1, -1, -1, -1,
2102 571, 572, -1, -1, -1, -1, 95, 96, 97, 98,
2103 -1, -1, -1, 584, 103, -1, -1, -1, -1, 163,
2104 -1, 165, -1, 167, -1, 596, -1, -1, -1, -1,
2105 -1, -1, 603, -1, 152, -1, -1, 608, 609, -1,
2106 158, -1, -1, -1, -1, 163, -1, 509, -1, 511,
2107 16, -1, -1, 197, -1, -1, -1, -1, -1, 177,
2108 -1, -1, -1, -1, 208, -1, -1, 638, 212, -1,
2109 214, 642, -1, -1, 645, -1, 165, -1, -1, -1,
2110 651, -1, -1, 49, -1, -1, -1, -1, 550, -1,
2111 -1, -1, -1, -1, 212, 213, -1, -1, -1, -1,
2112 671, 672, -1, 674, -1, -1, 677, 225, 197, 571,
2113 572, -1, 230, -1, -1, -1, -1, 83, -1, 208,
2114 238, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2115 96, 702, 98, -1, -1, -1, 280, 103, -1, -1,
2116 -1, 230, -1, 287, -1, -1, 608, 609, 719, -1,
2117 -1, 722, -1, 297, -1, -1, -1, -1, -1, 303,
2118 304, -1, 280, -1, -1, -1, -1, -1, -1, -1,
2119 -1, -1, -1, -1, 292, -1, -1, 295, 296, -1,
2120 298, -1, -1, -1, -1, 303, -1, 305, -1, -1,
2121 -1, 280, -1, -1, 312, 177, -1, -1, 287, -1,
2122 -1, -1, -1, -1, 322, 323, 295, -1, 326, 327,
2123 -1, -1, -1, 357, 303, -1, -1, -1, -1, 16,
2124 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2125 -1, 349, 350, 616, 617, -1, -1, 381, 382, -1,
2126 -1, -1, -1, 361, -1, -1, -1, -1, -1, -1,
2127 -1, -1, 49, -1, -1, -1, -1, 401, -1, -1,
2128 -1, -1, -1, 381, 230, 409, 410, 411, -1, -1,
2129 -1, -1, 416, 391, -1, -1, 420, -1, 661, 662,
2130 -1, 664, 665, 401, -1, -1, 83, -1, -1, 407,
2131 -1, 409, -1, -1, -1, -1, 414, -1, 95, 96,
2132 97, 98, 685, -1, 687, -1, 103, -1, -1, -1,
2133 693, 694, 401, -1, 280, -1, 434, -1, 407, -1,
2134 409, 410, -1, 305, -1, 414, 709, -1, 711, 295,
2135 713, 449, 715, 451, 452, 453, 454, 303, -1, -1,
2136 322, 323, -1, -1, 326, -1, -1, 491, 731, -1,
2137 733, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2138 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2139 -1, -1, 280, 491, -1, -1, 494, 495, -1, -1,
2140 -1, -1, -1, -1, -1, -1, -1, -1, -1, 297,
2141 -1, 509, -1, 511, -1, 303, 304, -1, -1, -1,
2142 197, -1, 491, -1, -1, -1, 314, -1, -1, 553,
2143 -1, 208, -1, -1, -1, -1, -1, -1, -1, -1,
2144 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2145 -1, -1, 550, 230, -1, 401, -1, -1, -1, 280,
2146 -1, 407, -1, 409, -1, -1, -1, -1, 414, 357,
2147 -1, -1, -1, 571, 572, -1, 297, -1, -1, -1,
2148 -1, -1, 303, -1, -1, -1, -1, 449, -1, 451,
2149 452, 453, 454, 381, 382, -1, -1, -1, -1, -1,
2150 388, -1, -1, 280, -1, 603, -1, -1, -1, -1,
2151 608, 609, 1, -1, 3, 4, 5, 6, -1, 8,
2152 9, 409, -1, 411, -1, 413, 303, 651, 416, -1,
2153 -1, -1, 420, -1, -1, -1, 357, -1, 426, 28,
2154 428, -1, -1, -1, -1, 491, -1, 509, -1, 511,
2155 -1, 439, -1, -1, -1, -1, -1, -1, -1, -1,
2156 381, 382, -1, -1, -1, -1, -1, 388, -1, -1,
2157 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2158 -1, -1, 71, 72, 73, -1, -1, -1, 409, -1,
2159 411, -1, 413, -1, -1, 416, -1, -1, -1, 420,
2160 -1, -1, -1, 491, -1, 426, -1, -1, -1, 571,
2161 572, -1, -1, 102, 103, -1, -1, -1, -1, -1,
2162 109, -1, -1, -1, -1, -1, -1, 515, 516, 118,
2163 407, 120, 409, 122, -1, -1, -1, 414, 127, 128,
2164 129, 130, 131, 132, -1, -1, 608, 609, -1, -1,
2165 -1, -1, -1, -1, 143, 144, 544, -1, -1, -1,
2166 -1, -1, -1, -1, 552, 553, -1, -1, -1, 557,
2167 491, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2168 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2169 47, 48, 49, 50, 515, 516, -1, -1, -1, -1,
2170 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2171 -1, -1, -1, -1, 491, -1, -1, -1, 75, -1,
2172 -1, -1, -1, 544, -1, -1, -1, -1, 85, -1,
2173 -1, 552, 553, -1, -1, -1, 557, 1, -1, 3,
2174 4, 5, 6, 100, 8, 9, -1, -1, -1, -1,
2175 -1, -1, -1, -1, -1, 112, 113, -1, -1, -1,
2176 117, -1, -1, 651, 28, 29, 30, 31, 32, 33,
2177 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2178 44, 45, 46, 47, 48, 49, 50, -1, 52, 53,
2179 54, 55, 56, 57, 58, 59, 60, 61, 62, -1,
2180 -1, -1, 66, -1, -1, -1, -1, 71, 72, 73,
2181 -1, 75, -1, 77, -1, -1, -1, -1, -1, -1,
2182 -1, 85, -1, -1, -1, -1, -1, -1, -1, -1,
2183 651, -1, -1, -1, -1, -1, 100, -1, 102, 103,
2184 -1, -1, -1, -1, -1, 109, -1, -1, 112, 113,
2185 -1, -1, -1, 117, 118, -1, 120, -1, 122, -1,
2186 -1, -1, -1, 127, 128, 129, 130, 131, 132, 1,
2187 -1, 3, 4, 5, 6, -1, 8, 9, 142, 143,
2188 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2189 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
2190 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2191 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2192 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
2193 62, -1, -1, -1, 66, -1, -1, -1, -1, 71,
2194 72, 73, -1, 75, -1, 77, -1, -1, -1, -1,
2195 -1, -1, -1, 85, -1, -1, -1, -1, -1, -1,
2196 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
2197 102, 103, -1, -1, -1, -1, -1, 109, -1, -1,
2198 112, 113, -1, -1, -1, 117, 118, -1, 120, -1,
2199 122, -1, -1, -1, -1, 127, 128, 129, 130, 131,
2200 132, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2201 142, 143, 144, -1, -1, -1, -1, -1, -1, -1,
2202 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2203 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2204 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2205 50, -1, 52, 53, 54, 55, 56, 57, 58, 59,
2206 60, 61, 62, -1, -1, -1, 66, -1, -1, -1,
2207 -1, 71, 72, 73, -1, 75, -1, 77, -1, -1,
2208 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2209 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2210 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2211 -1, -1, 112, 113, -1, -1, -1, 117, 118, -1,
2212 120, -1, 122, -1, -1, -1, -1, 127, 128, 129,
2213 130, 131, 132, 1, -1, 3, 4, 5, 6, -1,
2214 8, 9, 142, 143, 144, -1, -1, -1, -1, -1,
2215 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2216 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2217 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2218 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2219 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2220 -1, -1, -1, 71, 72, 73, -1, 75, -1, -1,
2221 -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
2222 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2223 -1, -1, 100, -1, 102, 103, -1, -1, -1, -1,
2224 -1, 109, -1, -1, 112, 113, -1, -1, -1, 117,
2225 118, -1, 120, -1, 122, -1, -1, -1, -1, 127,
2226 128, 129, 130, 131, 132, 1, -1, 3, 4, 5,
2227 6, -1, 8, 9, 142, 143, 144, -1, -1, -1,
2228 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2229 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
2230 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2231 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2232 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2233 66, -1, -1, -1, -1, 71, 72, 73, -1, 75,
2234 -1, -1, -1, -1, -1, -1, -1, -1, -1, 85,
2235 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2236 -1, -1, -1, -1, 100, -1, 102, 103, -1, -1,
2237 -1, -1, -1, 109, -1, -1, 112, 113, -1, -1,
2238 -1, 117, 118, -1, 120, -1, 122, -1, -1, -1,
2239 -1, 127, 128, 129, 130, 131, 132, 1, -1, 3,
2240 4, 5, 6, -1, 8, 9, 142, 143, 144, -1,
2241 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2242 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
2243 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2244 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
2245 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2246 -1, -1, 66, -1, -1, -1, -1, 71, 72, 73,
2247 -1, 75, -1, -1, -1, -1, -1, -1, -1, -1,
2248 -1, 85, -1, -1, -1, -1, -1, -1, -1, -1,
2249 -1, -1, -1, -1, -1, -1, 100, -1, 102, 103,
2250 -1, -1, -1, -1, -1, 109, -1, -1, 112, 113,
2251 -1, -1, -1, 117, 118, -1, 120, -1, 122, -1,
2252 -1, -1, -1, 127, 128, 129, 130, 131, 132, 1,
2253 -1, 3, 4, 5, 6, -1, 8, 9, 142, 143,
2254 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2255 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
2256 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2257 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2258 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2259 -1, -1, -1, -1, 66, -1, -1, -1, -1, 71,
2260 72, 73, -1, 75, -1, -1, -1, -1, -1, -1,
2261 -1, -1, -1, 85, -1, -1, -1, -1, -1, -1,
2262 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
2263 102, 103, -1, -1, -1, -1, -1, 109, -1, -1,
2264 112, 113, -1, -1, -1, 117, 118, -1, 120, -1,
2265 122, -1, -1, -1, -1, 127, 128, 129, 130, 131,
2266 132, 1, -1, 3, 4, 5, 6, -1, 8, 9,
2267 142, 143, 144, -1, -1, -1, -1, -1, -1, -1,
2268 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
2269 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2270 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2271 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2272 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2273 -1, 71, 72, 73, -1, 75, -1, -1, -1, -1,
2274 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2275 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2276 100, -1, 102, 103, -1, -1, -1, -1, -1, 109,
2277 -1, -1, 112, 113, -1, -1, -1, 117, 118, -1,
2278 120, 1, 122, 3, 4, 5, -1, 127, 128, 129,
2279 130, 131, 132, -1, -1, -1, -1, -1, -1, -1,
2280 -1, -1, 142, 143, 144, -1, -1, -1, 28, 29,
2281 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2282 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2283 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2284 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2285 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2286 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2287 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2288 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2289 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2290 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2291 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2292 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2293 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2294 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2295 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2296 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2297 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2298 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2299 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2300 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2301 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2302 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2303 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2304 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2305 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2306 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2307 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2308 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2309 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2310 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2311 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2312 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2313 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2314 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2315 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2316 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2317 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2318 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2319 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2320 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2321 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2322 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2323 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2324 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2325 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2326 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2327 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2328 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2329 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2330 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2331 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2332 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2333 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2334 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2335 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2336 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2337 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2338 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2339 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2340 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2341 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2342 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2343 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2344 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2345 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2346 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2347 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2348 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2349 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2350 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2351 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2352 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2353 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2354 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2355 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2356 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2357 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2358 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2359 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2360 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2361 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2362 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2363 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2364 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2365 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2366 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2367 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2368 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2369 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2370 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2371 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2372 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2373 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2374 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2375 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2376 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2377 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2378 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2379 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2380 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2381 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2382 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2383 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2384 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2385 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2386 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2387 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2388 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2389 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2390 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2391 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2392 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2393 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2394 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2395 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2396 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2397 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2398 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2399 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2400 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2401 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2402 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2403 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2404 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2405 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2406 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2407 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2408 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2409 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2410 120, 1, 122, 3, 4, 5, -1, -1, 128, -1,
2411 -1, 131, -1, -1, -1, -1, -1, -1, -1, -1,
2412 -1, -1, 142, -1, 144, -1, -1, -1, 28, 29,
2413 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2414 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2415 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2416 -1, -1, -1, -1, -1, -1, 66, -1, 68, -1,
2417 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
2418 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2419 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2420 100, -1, 102, 103, -1, -1, -1, -1, -1, -1,
2421 110, 111, 112, 113, -1, -1, -1, 117, 118, -1,
2422 120, -1, 122, -1, -1, -1, -1, -1, 128, -1,
2423 1, 131, 3, 4, 5, 6, -1, 8, 9, -1,
2424 -1, -1, 142, -1, 144, -1, -1, -1, -1, -1,
2425 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
2426 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2427 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2428 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
2429 61, 62, -1, -1, -1, 66, -1, -1, -1, -1,
2430 71, 72, 73, -1, 75, -1, 77, -1, -1, -1,
2431 -1, -1, -1, -1, 85, -1, -1, -1, -1, -1,
2432 -1, -1, -1, -1, -1, -1, -1, -1, -1, 100,
2433 -1, 102, 103, -1, -1, -1, -1, -1, 109, -1,
2434 -1, 112, 113, -1, -1, -1, 117, 118, -1, 120,
2435 -1, 122, -1, -1, -1, -1, 127, 128, 129, 130,
2436 131, 132, 1, -1, 3, 4, 5, 6, -1, 8,
2437 9, 142, 143, -1, -1, -1, -1, -1, -1, -1,
2438 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
2439 -1, -1, -1, -1, -1, -1, -1, 1, -1, 3,
2440 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
2441 -1, -1, -1, 52, 53, 54, 55, 56, 57, 58,
2442 59, 60, 61, 62, 28, -1, -1, -1, -1, -1,
2443 -1, -1, 71, 72, 73, -1, -1, -1, -1, 1,
2444 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2445 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2446 -1, -1, -1, 102, 103, -1, 28, 71, 72, 73,
2447 109, -1, -1, -1, -1, -1, -1, -1, -1, 118,
2448 -1, 120, -1, 122, -1, -1, -1, -1, 127, 128,
2449 129, 130, 131, 132, -1, -1, -1, -1, 102, 103,
2450 -1, -1, -1, 142, 143, 109, -1, -1, -1, 71,
2451 72, 73, -1, -1, 118, -1, 120, 121, 122, -1,
2452 -1, -1, -1, 127, 128, 129, 130, 131, 132, -1,
2453 1, -1, 3, 4, 5, 6, -1, 8, 9, 143,
2454 102, 103, -1, -1, -1, -1, -1, 109, -1, -1,
2455 -1, -1, -1, -1, -1, -1, 118, 28, 120, -1,
2456 122, -1, -1, -1, -1, 127, 128, 129, 130, 131,
2457 132, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2458 -1, 143, -1, -1, -1, -1, -1, -1, -1, -1,
2459 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2460 71, 72, 73, -1, -1, -1, -1, -1, -1, -1,
2461 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2462 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2463 -1, 102, 103, -1, -1, -1, -1, -1, 109, -1,
2464 -1, -1, -1, -1, -1, -1, -1, 118, -1, 120,
2465 1, 122, 3, 4, 5, -1, 127, 128, 129, 130,
2466 131, 132, -1, -1, -1, -1, -1, -1, -1, -1,
2467 -1, -1, 143, -1, -1, -1, -1, 28, 29, 30,
2468 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
2469 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
2470 -1, -1, 1, -1, 3, 4, 5, 6, -1, 8,
2471 9, -1, -1, -1, -1, 66, -1, 68, -1, -1,
2472 71, 72, -1, 74, 75, -1, -1, 78, 79, 28,
2473 -1, -1, -1, -1, 85, -1, 1, -1, 3, 4,
2474 5, 6, -1, 8, 9, -1, -1, -1, -1, 100,
2475 -1, 102, 103, -1, -1, -1, -1, -1, -1, 110,
2476 111, 112, 113, 28, -1, -1, 117, 118, -1, 120,
2477 -1, 122, 71, 72, 73, -1, -1, 128, -1, -1,
2478 131, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2479 -1, 142, -1, -1, -1, -1, -1, -1, -1, -1,
2480 -1, -1, -1, 102, 103, -1, 71, 72, 73, 1,
2481 109, 3, 4, 5, 6, -1, 8, 9, -1, 118,
2482 -1, 120, 121, 122, -1, -1, -1, -1, 127, 128,
2483 129, 130, 131, 132, -1, -1, 28, 102, 103, -1,
2484 -1, -1, -1, 142, 109, -1, -1, -1, -1, -1,
2485 -1, -1, -1, 118, -1, 120, 121, 122, -1, -1,
2486 -1, -1, 127, 128, 129, 130, 131, 132, -1, -1,
2487 -1, -1, -1, -1, -1, -1, -1, 142, -1, 71,
2488 72, 73, -1, -1, -1, -1, -1, -1, -1, -1,
2489 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2490 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2491 102, 103, -1, -1, -1, -1, -1, 109, -1, -1,
2492 -1, -1, -1, -1, -1, -1, 118, 3, 120, -1,
2493 122, -1, -1, -1, -1, 127, 128, 129, 130, 131,
2494 132, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2495 142, -1, 28, 29, 30, 31, 32, 33, 34, 35,
2496 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2497 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2498 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2499 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
2500 -1, -1, -1, 79, -1, -1, -1, -1, -1, 85,
2501 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2502 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
2503 -1, -1, -1, -1, 110, 111, 112, 113, -1, -1,
2504 -1, 117, -1, 3, 120, -1, -1, -1, 124, -1,
2505 -1, -1, 128, -1, -1, -1, -1, -1, -1, -1,
2506 -1, -1, -1, -1, -1, -1, -1, 143, 28, 29,
2507 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2508 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2509 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2510 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2511 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
2512 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2513 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2514 100, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2515 110, 111, 112, 113, -1, -1, -1, 117, 3, -1,
2516 120, -1, -1, -1, -1, -1, -1, -1, 128, -1,
2517 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2518 140, -1, 142, 28, 29, 30, 31, 32, 33, 34,
2519 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2520 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2521 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2522 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
2523 75, -1, -1, -1, 79, -1, -1, -1, -1, -1,
2524 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2525 -1, -1, -1, -1, -1, 100, -1, -1, -1, -1,
2526 -1, -1, -1, -1, -1, 110, 111, 112, 113, -1,
2527 -1, -1, 117, -1, 1, 120, 3, 4, 5, 6,
2528 -1, 8, 9, 128, -1, -1, -1, -1, -1, -1,
2529 -1, -1, -1, -1, -1, -1, -1, 142, -1, -1,
2530 -1, 28, -1, -1, -1, -1, -1, 34, 35, 36,
2531 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2532 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2533 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2534 -1, -1, -1, -1, 71, 72, 73, 74, 75, -1,
2535 -1, -1, 79, -1, -1, -1, -1, -1, 85, -1,
2536 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2537 -1, -1, -1, 100, -1, 102, 103, -1, -1, -1,
2538 -1, -1, 109, 110, 111, 112, 113, -1, -1, -1,
2539 -1, 118, -1, 120, 121, 122, -1, -1, -1, -1,
2540 127, 128, 129, 130, 131, 132, 1, -1, 3, 4,
2541 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
2542 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2543 -1, -1, -1, 28, -1, -1, -1, -1, -1, 34,
2544 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2545 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2546 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2547 -1, 66, -1, -1, -1, -1, 71, 72, 73, 1,
2548 75, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2549 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2550 -1, -1, -1, -1, -1, 100, 28, 102, 103, -1,
2551 -1, -1, -1, -1, 109, -1, -1, 112, 113, -1,
2552 -1, -1, -1, 118, -1, 120, 121, 122, -1, -1,
2553 -1, -1, 127, 128, 129, 130, 131, 132, -1, -1,
2554 -1, -1, -1, -1, -1, -1, -1, -1, -1, 71,
2555 72, 73, 74, -1, -1, -1, 1, 79, 3, 4,
2556 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
2557 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2558 102, 103, -1, 28, -1, -1, -1, 109, 110, 111,
2559 -1, -1, -1, -1, -1, -1, 118, -1, 120, 121,
2560 122, -1, -1, -1, -1, 127, 128, 129, 130, 131,
2561 132, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2562 -1, -1, -1, -1, -1, -1, 71, 72, 73, 1,
2563 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
2564 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2565 -1, -1, -1, -1, -1, -1, 28, 102, 103, -1,
2566 -1, -1, -1, 1, 109, 3, 4, 5, 6, -1,
2567 8, 9, -1, 118, -1, 120, 121, 122, -1, -1,
2568 -1, -1, 127, 128, 129, 130, 131, 132, -1, -1,
2569 28, -1, -1, -1, -1, -1, -1, -1, -1, 71,
2570 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
2571 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2572 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
2573 102, 103, -1, 71, 72, 73, 1, 109, 3, 4,
2574 5, 6, -1, 8, 9, -1, 118, -1, 120, -1,
2575 122, -1, -1, 125, -1, 127, 128, 129, 130, 131,
2576 132, -1, -1, 28, 102, 103, -1, -1, -1, -1,
2577 -1, 109, 71, 72, 73, -1, -1, -1, -1, -1,
2578 118, -1, 120, -1, 122, -1, -1, 125, -1, 127,
2579 128, 129, 130, 131, 132, -1, -1, -1, -1, -1,
2580 -1, -1, -1, 102, 103, -1, 71, 72, 73, 1,
2581 109, 3, 4, 5, 6, -1, 8, 9, -1, 118,
2582 -1, 120, -1, 122, -1, -1, 125, -1, 127, 128,
2583 129, 130, 131, 132, -1, -1, 28, 102, 103, -1,
2584 -1, -1, -1, 1, 109, 3, 4, 5, 6, -1,
2585 8, 9, -1, 118, -1, 120, 121, 122, -1, -1,
2586 -1, -1, 127, 128, 129, 130, 131, 132, -1, -1,
2587 28, -1, -1, -1, -1, -1, -1, -1, -1, 71,
2588 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
2589 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2590 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
2591 102, 103, -1, 71, 72, 73, 1, 109, 3, 4,
2592 5, 6, -1, 8, 9, -1, 118, -1, 120, 121,
2593 122, -1, -1, -1, -1, 127, 128, 129, 130, 131,
2594 132, -1, -1, 28, 102, 103, -1, -1, -1, -1,
2595 -1, 109, 71, 72, 73, -1, -1, -1, -1, -1,
2596 118, -1, 120, -1, 122, -1, -1, -1, -1, 127,
2597 128, 129, 130, 131, 132, -1, -1, -1, -1, -1,
2598 -1, -1, -1, 102, 103, -1, 71, 72, 73, 1,
2599 109, 3, 4, 5, 6, -1, 8, 9, -1, 118,
2600 -1, 120, -1, 122, -1, -1, -1, -1, 127, 128,
2601 129, 130, 131, 132, -1, -1, 28, 102, 103, -1,
2602 -1, -1, -1, -1, 109, -1, -1, -1, -1, -1,
2603 -1, -1, -1, 118, -1, 120, -1, 122, -1, -1,
2604 -1, -1, 127, 128, 129, 130, 131, 132, -1, -1,
2605 -1, -1, -1, -1, -1, -1, -1, -1, -1, 71,
2606 72, 73, -1, -1, -1, -1, -1, -1, -1, -1,
2607 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2608 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2609 102, 103, -1, -1, -1, -1, 3, 109, -1, -1,
2610 -1, -1, -1, -1, -1, -1, 118, -1, 120, -1,
2611 122, -1, -1, -1, -1, 127, 128, 129, 130, 131,
2612 132, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2613 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2614 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2615 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2616 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2617 -1, -1, 79, -1, -1, -1, -1, -1, 85, -1,
2618 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2619 -1, -1, -1, 100, -1, -1, -1, 3, -1, -1,
2620 -1, -1, -1, 110, 111, 112, 113, -1, -1, -1,
2621 117, -1, -1, 120, 121, -1, -1, 124, -1, -1,
2622 -1, 128, 28, 29, 30, 31, 32, 33, 34, 35,
2623 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2624 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2625 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2626 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
2627 -1, -1, -1, 79, -1, -1, -1, -1, -1, 85,
2628 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2629 -1, -1, -1, -1, 100, -1, -1, -1, 3, -1,
2630 -1, -1, -1, -1, 110, 111, 112, 113, -1, -1,
2631 -1, 117, -1, -1, 120, -1, -1, -1, 124, -1,
2632 -1, -1, 128, 28, 29, 30, 31, 32, 33, 34,
2633 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2634 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2635 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2636 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
2637 75, -1, -1, -1, 79, -1, -1, -1, -1, -1,
2638 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2639 -1, -1, -1, -1, -1, 100, -1, -1, -1, 3,
2640 -1, -1, -1, -1, -1, 110, 111, 112, 113, -1,
2641 -1, -1, 117, -1, -1, 120, -1, -1, -1, -1,
2642 -1, -1, -1, 128, 28, 29, 30, 31, 32, 33,
2643 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
2644 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
2645 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2646 -1, -1, 66, -1, -1, -1, -1, -1, -1, -1,
2647 -1, 75, -1, -1, -1, -1, -1, -1, -1, -1,
2648 -1, 85, -1, -1, -1, -1, -1, -1, -1, -1,
2649 -1, -1, -1, -1, -1, -1, 100, -1, -1, -1,
2650 -1, -1, -1, -1, -1, -1, -1, -1, 112, 113,
2651 -1, -1, -1, 117, -1, -1, -1, 121, 28, 29,
2652 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
2653 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
2654 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2655 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
2656 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
2657 -1, -1, -1, -1, -1, 85, -1, -1, -1, -1,
2658 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2659 100, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2660 110, 111, 112, 113, -1, -1, -1, 117, -1, -1,
2661 120, 121, -1, -1, 124, -1, -1, -1, 128, 28,
2662 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
2663 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
2664 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
2665 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
2666 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
2667 79, -1, -1, -1, -1, -1, 85, -1, -1, -1,
2668 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2669 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
2670 -1, 110, 111, 112, 113, -1, -1, -1, 117, -1,
2671 -1, 120, -1, -1, -1, 124, -1, -1, -1, 128,
2672 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2673 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2674 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2675 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2676 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
2677 -1, 79, -1, -1, -1, -1, -1, 85, -1, -1,
2678 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2679 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
2680 -1, -1, 110, 111, 112, 113, -1, -1, -1, 117,
2681 -1, -1, 120, -1, -1, -1, 124, -1, -1, -1,
2682 128, 28, 29, 30, 31, 32, 33, 34, 35, 36,
2683 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2684 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
2685 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
2686 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
2687 -1, -1, 79, -1, -1, -1, -1, -1, 85, -1,
2688 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2689 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
2690 -1, -1, -1, 110, 111, 112, 113, -1, -1, -1,
2691 117, -1, -1, 120, 121, -1, -1, -1, -1, -1,
2692 -1, 128, 28, 29, 30, 31, 32, 33, 34, 35,
2693 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2694 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2695 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2696 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
2697 -1, -1, -1, 79, -1, -1, -1, -1, -1, -1,
2698 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2699 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
2700 -1, -1, -1, -1, 110, 111, 112, 113, -1, -1,
2701 -1, 117, -1, -1, 120, -1, -1, -1, 124, -1,
2702 -1, -1, 128, 28, 29, 30, 31, 32, 33, 34,
2703 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2704 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2705 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2706 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
2707 75, 28, -1, -1, 79, -1, -1, 34, 35, 36,
2708 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
2709 47, 48, 49, 50, -1, 100, -1, -1, -1, -1,
2710 -1, -1, -1, -1, -1, 110, 111, 112, 113, 66,
2711 -1, -1, 117, -1, -1, 120, -1, 74, 75, 124,
2712 -1, -1, 79, 128, -1, -1, -1, -1, 85, -1,
2713 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2714 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
2715 -1, -1, -1, 110, 111, 112, 113, -1, -1, -1,
2716 -1, -1, -1, 120, -1, -1, -1, 124, -1, -1,
2717 -1, 128, 28, 29, 30, 31, 32, 33, 34, 35,
2718 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
2719 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
2720 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2721 66, -1, -1, -1, -1, -1, -1, -1, -1, 75,
2722 -1, -1, -1, -1, -1, -1, -1, -1, -1, 85,
2723 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2724 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
2725 -1, -1, -1, -1, -1, -1, 112, 113, -1, -1,
2726 -1, 117, -1, -1, -1, 121, 28, 29, 30, 31,
2727 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
2728 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
2729 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2730 -1, -1, -1, -1, 66, -1, -1, -1, -1, -1,
2731 -1, -1, -1, 75, -1, -1, -1, -1, -1, -1,
2732 -1, -1, -1, 85, -1, -1, -1, -1, -1, -1,
2733 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
2734 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2735 112, 113, -1, -1, -1, 117, -1, -1, -1, 121,
2736 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
2737 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
2738 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
2739 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
2740 -1, -1, -1, -1, -1, -1, -1, 75, -1, -1,
2741 -1, -1, -1, -1, -1, -1, -1, 85, -1, -1,
2742 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2743 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
2744 -1, -1, -1, -1, 112, 113, -1, -1, -1, 117,
2745 -1, -1, 120, 28, 29, 30, 31, 32, 33, 34,
2746 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2747 45, 46, 47, 48, 49, 50, 51, -1, -1, -1,
2748 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2749 -1, 66, -1, -1, -1, -1, -1, -1, -1, -1,
2750 75, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2751 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2752 -1, -1, -1, -1, -1, 100, -1, -1, -1, -1,
2753 -1, -1, -1, -1, -1, -1, -1, 112, 113, -1,
2754 -1, -1, 117, 28, 29, 30, 31, 32, 33, 34,
2755 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2756 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2757 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2758 -1, 66, -1, -1, -1, -1, -1, -1, -1, -1,
2759 75, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2760 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2761 -1, -1, -1, -1, -1, 100, -1, -1, -1, -1,
2762 -1, -1, -1, -1, -1, -1, -1, 112, 113, -1,
2763 -1, -1, 117, 28, 29, 30, 31, 32, 33, 34,
2764 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2765 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
2766 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2767 -1, 66, -1, -1, -1, -1, -1, -1, -1, -1,
2768 75, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2769 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2770 -1, -1, -1, -1, -1, 100, -1, -1, -1, -1,
2771 -1, -1, -1, -1, -1, -1, -1, 112, 113, -1,
2775 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
2776 symbol of state STATE-NUM. */
2777 static const yytype_uint8 yystos[] =
2779 0, 1, 3, 4, 5, 6, 8, 9, 28, 71,
2780 72, 73, 102, 103, 109, 118, 120, 122, 127, 128,
2781 129, 130, 131, 132, 146, 147, 148, 150, 152, 153,
2782 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
2783 164, 165, 166, 167, 186, 187, 235, 237, 251, 120,
2784 153, 120, 153, 153, 29, 30, 31, 32, 33, 34,
2785 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2786 45, 46, 47, 48, 49, 50, 66, 75, 85, 100,
2787 112, 113, 117, 173, 178, 185, 186, 188, 190, 191,
2788 192, 200, 201, 153, 166, 170, 173, 170, 120, 153,
2789 121, 167, 169, 172, 185, 186, 188, 190, 201, 220,
2790 235, 143, 7, 8, 9, 120, 123, 124, 146, 18,
2791 19, 20, 21, 22, 23, 24, 25, 26, 27, 141,
2792 168, 155, 128, 133, 134, 129, 130, 10, 11, 12,
2793 13, 135, 136, 14, 15, 127, 137, 138, 16, 17,
2794 139, 168, 143, 0, 220, 143, 146, 187, 120, 74,
2795 79, 110, 111, 120, 124, 128, 178, 179, 180, 184,
2796 185, 188, 190, 201, 205, 207, 215, 143, 146, 179,
2797 187, 34, 35, 36, 37, 38, 39, 40, 41, 42,
2798 43, 46, 47, 66, 100, 112, 113, 175, 178, 185,
2799 187, 189, 190, 191, 200, 201, 124, 207, 175, 220,
2800 121, 126, 120, 124, 179, 185, 188, 190, 201, 204,
2801 206, 215, 121, 123, 142, 143, 144, 149, 150, 166,
2802 173, 222, 238, 244, 245, 246, 247, 248, 249, 250,
2803 146, 121, 149, 151, 167, 146, 169, 149, 167, 155,
2804 155, 155, 156, 156, 157, 157, 158, 158, 158, 158,
2805 159, 159, 160, 161, 162, 163, 164, 169, 149, 167,
2806 144, 250, 121, 146, 202, 203, 143, 143, 186, 121,
2807 173, 207, 216, 217, 218, 170, 185, 214, 215, 205,
2808 215, 120, 120, 124, 205, 68, 78, 120, 131, 142,
2809 144, 146, 150, 173, 179, 193, 194, 195, 196, 197,
2810 209, 210, 212, 213, 215, 236, 237, 239, 240, 241,
2811 242, 243, 143, 143, 146, 187, 143, 120, 124, 178,
2812 185, 189, 190, 201, 207, 170, 124, 124, 207, 121,
2813 167, 121, 206, 216, 125, 170, 186, 204, 215, 120,
2814 124, 204, 155, 235, 144, 250, 141, 120, 146, 210,
2815 143, 229, 230, 126, 142, 142, 245, 247, 248, 144,
2816 121, 126, 125, 140, 144, 141, 126, 144, 202, 202,
2817 121, 120, 179, 206, 208, 209, 211, 213, 215, 121,
2818 121, 126, 125, 185, 215, 205, 120, 121, 216, 170,
2819 50, 174, 178, 185, 186, 188, 192, 173, 210, 120,
2820 128, 179, 208, 215, 173, 141, 120, 140, 142, 146,
2821 179, 198, 199, 208, 210, 213, 215, 213, 215, 144,
2822 197, 126, 142, 120, 124, 121, 146, 216, 219, 179,
2823 213, 142, 142, 230, 230, 230, 142, 230, 144, 193,
2824 144, 193, 143, 143, 193, 186, 170, 124, 125, 170,
2825 170, 124, 121, 121, 125, 125, 204, 121, 216, 125,
2826 170, 186, 144, 222, 144, 52, 53, 54, 55, 56,
2827 57, 58, 59, 60, 61, 62, 77, 142, 146, 169,
2828 171, 173, 224, 225, 226, 227, 228, 230, 231, 232,
2829 233, 234, 236, 246, 149, 167, 166, 170, 203, 142,
2830 144, 142, 144, 209, 213, 215, 179, 211, 51, 218,
2831 3, 28, 44, 74, 75, 121, 181, 182, 183, 121,
2832 125, 146, 187, 143, 146, 178, 185, 186, 188, 206,
2833 146, 179, 187, 210, 215, 121, 120, 222, 121, 170,
2834 143, 213, 215, 126, 142, 140, 184, 179, 213, 213,
2835 194, 125, 170, 186, 121, 121, 126, 213, 144, 144,
2836 144, 193, 193, 144, 121, 125, 170, 125, 125, 170,
2837 121, 125, 125, 170, 140, 120, 120, 120, 224, 120,
2838 146, 142, 142, 142, 169, 146, 140, 142, 142, 176,
2839 177, 208, 171, 227, 171, 224, 144, 142, 193, 193,
2840 211, 121, 120, 121, 126, 182, 69, 70, 144, 143,
2841 143, 146, 146, 187, 121, 144, 250, 213, 199, 170,
2842 213, 125, 125, 146, 144, 144, 125, 125, 140, 224,
2843 169, 169, 121, 169, 56, 121, 231, 142, 142, 141,
2844 224, 126, 142, 141, 144, 144, 169, 121, 182, 230,
2845 230, 69, 70, 144, 69, 70, 144, 143, 144, 140,
2846 224, 121, 121, 224, 121, 120, 224, 121, 231, 170,
2847 177, 143, 167, 221, 121, 70, 144, 69, 144, 230,
2848 230, 230, 230, 69, 70, 144, 170, 224, 224, 224,
2849 169, 224, 121, 169, 142, 221, 223, 230, 230, 70,
2850 144, 69, 144, 70, 144, 69, 144, 230, 230, 64,
2851 121, 224, 121, 126, 144, 144, 144, 230, 230, 230,
2852 230, 70, 144, 69, 144, 224, 142, 224, 144, 221,
2853 144, 144, 144, 144, 230, 230, 144, 144
2856 #define yyerrok (yyerrstatus = 0)
2857 #define yyclearin (yychar = YYEMPTY)
2858 #define YYEMPTY (-2)
2861 #define YYACCEPT goto yyacceptlab
2862 #define YYABORT goto yyabortlab
2863 #define YYERROR goto yyerrorlab
2866 /* Like YYERROR except do call yyerror. This remains here temporarily
2867 to ease the transition to the new meaning of YYERROR, for GCC.
2868 Once GCC version 2 has supplanted version 1, this can go. However,
2869 YYFAIL appears to be in use. Nevertheless, it is formally deprecated
2870 in Bison 2.4.2's NEWS entry, where a plan to phase it out is
2873 #define YYFAIL goto yyerrlab
2875 /* This is here to suppress warnings from the GCC cpp's
2876 -Wunused-macros. Normally we don't worry about that warning, but
2877 some users do, and we want to make it easy for users to remove
2878 YYFAIL uses, which will produce warnings from Bison 2.5. */
2881 #define YYRECOVERING() (!!yyerrstatus)
2883 #define YYBACKUP(Token, Value) \
2885 if (yychar == YYEMPTY && yylen == 1) \
2889 yytoken = YYTRANSLATE (yychar); \
2895 yyerror (YY_("syntax error: cannot back up")); \
2902 #define YYERRCODE 256
2905 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
2906 If N is 0, then set CURRENT to the empty location which ends
2907 the previous symbol: RHS[0] (always defined). */
2909 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
2910 #ifndef YYLLOC_DEFAULT
2911 # define YYLLOC_DEFAULT(Current, Rhs, N) \
2915 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
2916 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
2917 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
2918 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
2922 (Current).first_line = (Current).last_line = \
2923 YYRHSLOC (Rhs, 0).last_line; \
2924 (Current).first_column = (Current).last_column = \
2925 YYRHSLOC (Rhs, 0).last_column; \
2931 /* YY_LOCATION_PRINT -- Print the location on the stream.
2932 This macro was not mandated originally: define only if we know
2933 we won't break user code: when these are the locations we know. */
2935 #ifndef YY_LOCATION_PRINT
2936 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
2937 # define YY_LOCATION_PRINT(File, Loc) \
2938 fprintf (File, "%d.%d-%d.%d", \
2939 (Loc).first_line, (Loc).first_column, \
2940 (Loc).last_line, (Loc).last_column)
2942 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
2947 /* YYLEX -- calling `yylex' with the right arguments. */
2950 # define YYLEX yylex (YYLEX_PARAM)
2952 # define YYLEX yylex ()
2955 /* Enable debugging if requested. */
2959 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
2960 # define YYFPRINTF fprintf
2963 # define YYDPRINTF(Args) \
2969 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
2973 YYFPRINTF (stderr, "%s ", Title); \
2974 yy_symbol_print (stderr, \
2975 Type, Value, Location); \
2976 YYFPRINTF (stderr, "\n"); \
2981 /*--------------------------------.
2982 | Print this symbol on YYOUTPUT. |
2983 `--------------------------------*/
2986 #if (defined __STDC__ || defined __C99__FUNC__ \
2987 || defined __cplusplus || defined _MSC_VER)
2989 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
2992 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp)
2995 YYSTYPE const * const yyvaluep;
2996 YYLTYPE const * const yylocationp;
3001 YYUSE (yylocationp);
3003 if (yytype < YYNTOKENS)
3004 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
3016 /*--------------------------------.
3017 | Print this symbol on YYOUTPUT. |
3018 `--------------------------------*/
3020 #if (defined __STDC__ || defined __C99__FUNC__ \
3021 || defined __cplusplus || defined _MSC_VER)
3023 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp)
3026 yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp)
3029 YYSTYPE const * const yyvaluep;
3030 YYLTYPE const * const yylocationp;
3033 if (yytype < YYNTOKENS)
3034 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
3036 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
3038 YY_LOCATION_PRINT (yyoutput, *yylocationp);
3039 YYFPRINTF (yyoutput, ": ");
3040 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp);
3041 YYFPRINTF (yyoutput, ")");
3044 /*------------------------------------------------------------------.
3045 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
3047 `------------------------------------------------------------------*/
3049 #if (defined __STDC__ || defined __C99__FUNC__ \
3050 || defined __cplusplus || defined _MSC_VER)
3052 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
3055 yy_stack_print (yybottom, yytop)
3056 yytype_int16 *yybottom;
3057 yytype_int16 *yytop;
3060 YYFPRINTF (stderr, "Stack now");
3061 for (; yybottom <= yytop; yybottom++)
3063 int yybot = *yybottom;
3064 YYFPRINTF (stderr, " %d", yybot);
3066 YYFPRINTF (stderr, "\n");
3069 # define YY_STACK_PRINT(Bottom, Top) \
3072 yy_stack_print ((Bottom), (Top)); \
3076 /*------------------------------------------------.
3077 | Report that the YYRULE is going to be reduced. |
3078 `------------------------------------------------*/
3080 #if (defined __STDC__ || defined __C99__FUNC__ \
3081 || defined __cplusplus || defined _MSC_VER)
3083 yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule)
3086 yy_reduce_print (yyvsp, yylsp, yyrule)
3092 int yynrhs = yyr2[yyrule];
3094 unsigned long int yylno = yyrline[yyrule];
3095 YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
3097 /* The symbols being reduced. */
3098 for (yyi = 0; yyi < yynrhs; yyi++)
3100 YYFPRINTF (stderr, " $%d = ", yyi + 1);
3101 yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
3102 &(yyvsp[(yyi + 1) - (yynrhs)])
3103 , &(yylsp[(yyi + 1) - (yynrhs)]) );
3104 YYFPRINTF (stderr, "\n");
3108 # define YY_REDUCE_PRINT(Rule) \
3111 yy_reduce_print (yyvsp, yylsp, Rule); \
3114 /* Nonzero means print parse trace. It is left uninitialized so that
3115 multiple parsers can coexist. */
3117 #else /* !YYDEBUG */
3118 # define YYDPRINTF(Args)
3119 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
3120 # define YY_STACK_PRINT(Bottom, Top)
3121 # define YY_REDUCE_PRINT(Rule)
3122 #endif /* !YYDEBUG */
3125 /* YYINITDEPTH -- initial size of the parser's stacks. */
3127 # define YYINITDEPTH 200
3130 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
3131 if the built-in stack extension method is used).
3133 Do not make this value too large; the results are undefined if
3134 YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
3135 evaluated with infinite-precision integer arithmetic. */
3138 # define YYMAXDEPTH 10000
3146 # if defined __GLIBC__ && defined _STRING_H
3147 # define yystrlen strlen
3149 /* Return the length of YYSTR. */
3150 #if (defined __STDC__ || defined __C99__FUNC__ \
3151 || defined __cplusplus || defined _MSC_VER)
3153 yystrlen (const char *yystr)
3161 for (yylen = 0; yystr[yylen]; yylen++)
3169 # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
3170 # define yystpcpy stpcpy
3172 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
3174 #if (defined __STDC__ || defined __C99__FUNC__ \
3175 || defined __cplusplus || defined _MSC_VER)
3177 yystpcpy (char *yydest, const char *yysrc)
3180 yystpcpy (yydest, yysrc)
3186 const char *yys = yysrc;
3188 while ((*yyd++ = *yys++) != '\0')
3197 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
3198 quotes and backslashes, so that it's suitable for yyerror. The
3199 heuristic is that double-quoting is unnecessary unless the string
3200 contains an apostrophe, a comma, or backslash (other than
3201 backslash-backslash). YYSTR is taken from yytname. If YYRES is
3202 null, do not copy; instead, return the length of what the result
3205 yytnamerr (char *yyres, const char *yystr)
3210 char const *yyp = yystr;
3217 goto do_not_strip_quotes;
3221 goto do_not_strip_quotes;
3234 do_not_strip_quotes: ;
3238 return yystrlen (yystr);
3240 return yystpcpy (yyres, yystr) - yyres;
3244 /* Copy into YYRESULT an error message about the unexpected token
3245 YYCHAR while in state YYSTATE. Return the number of bytes copied,
3246 including the terminating null byte. If YYRESULT is null, do not
3247 copy anything; just return the number of bytes that would be
3248 copied. As a special case, return 0 if an ordinary "syntax error"
3249 message will do. Return YYSIZE_MAXIMUM if overflow occurs during
3250 size calculation. */
3252 yysyntax_error (char *yyresult, int yystate, int yychar)
3254 int yyn = yypact[yystate];
3256 if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
3260 int yytype = YYTRANSLATE (yychar);
3261 YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
3262 YYSIZE_T yysize = yysize0;
3264 int yysize_overflow = 0;
3265 enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
3266 char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
3270 /* This is so xgettext sees the translatable formats that are
3271 constructed on the fly. */
3272 YY_("syntax error, unexpected %s");
3273 YY_("syntax error, unexpected %s, expecting %s");
3274 YY_("syntax error, unexpected %s, expecting %s or %s");
3275 YY_("syntax error, unexpected %s, expecting %s or %s or %s");
3276 YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
3280 static char const yyunexpected[] = "syntax error, unexpected %s";
3281 static char const yyexpecting[] = ", expecting %s";
3282 static char const yyor[] = " or %s";
3283 char yyformat[sizeof yyunexpected
3284 + sizeof yyexpecting - 1
3285 + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
3286 * (sizeof yyor - 1))];
3287 char const *yyprefix = yyexpecting;
3289 /* Start YYX at -YYN if negative to avoid negative indexes in
3291 int yyxbegin = yyn < 0 ? -yyn : 0;
3293 /* Stay within bounds of both yycheck and yytname. */
3294 int yychecklim = YYLAST - yyn + 1;
3295 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
3298 yyarg[0] = yytname[yytype];
3299 yyfmt = yystpcpy (yyformat, yyunexpected);
3301 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
3302 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
3304 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
3308 yyformat[sizeof yyunexpected - 1] = '\0';
3311 yyarg[yycount++] = yytname[yyx];
3312 yysize1 = yysize + yytnamerr (0, yytname[yyx]);
3313 yysize_overflow |= (yysize1 < yysize);
3315 yyfmt = yystpcpy (yyfmt, yyprefix);
3319 yyf = YY_(yyformat);
3320 yysize1 = yysize + yystrlen (yyf);
3321 yysize_overflow |= (yysize1 < yysize);
3324 if (yysize_overflow)
3325 return YYSIZE_MAXIMUM;
3329 /* Avoid sprintf, as that infringes on the user's name space.
3330 Don't have undefined behavior even if the translation
3331 produced a string with the wrong number of "%s"s. */
3332 char *yyp = yyresult;
3334 while ((*yyp = *yyf) != '\0')
3336 if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
3338 yyp += yytnamerr (yyp, yyarg[yyi++]);
3351 #endif /* YYERROR_VERBOSE */
3354 /*-----------------------------------------------.
3355 | Release the memory associated to this symbol. |
3356 `-----------------------------------------------*/
3359 #if (defined __STDC__ || defined __C99__FUNC__ \
3360 || defined __cplusplus || defined _MSC_VER)
3362 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
3365 yydestruct (yymsg, yytype, yyvaluep, yylocationp)
3369 YYLTYPE *yylocationp;
3373 YYUSE (yylocationp);
3377 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
3381 case 146: /* "identifier" */
3383 /* Line 1009 of yacc.c */
3384 #line 158 "expression.y"
3385 { FreeIdentifier((yyvaluep->id)); };
3387 /* Line 1009 of yacc.c */
3388 #line 3389 "expression.ec"
3390 case 147: /* "primary_expression" */
3392 /* Line 1009 of yacc.c */
3393 #line 160 "expression.y"
3394 { FreeExpression((yyvaluep->exp)); };
3396 /* Line 1009 of yacc.c */
3397 #line 3398 "expression.ec"
3399 case 150: /* "postfix_expression" */
3401 /* Line 1009 of yacc.c */
3402 #line 160 "expression.y"
3403 { FreeExpression((yyvaluep->exp)); };
3405 /* Line 1009 of yacc.c */
3406 #line 3407 "expression.ec"
3408 case 151: /* "argument_expression_list" */
3410 /* Line 1009 of yacc.c */
3411 #line 193 "expression.y"
3412 { FreeList((yyvaluep->list), FreeExpression); };
3414 /* Line 1009 of yacc.c */
3415 #line 3416 "expression.ec"
3417 case 153: /* "unary_expression" */
3419 /* Line 1009 of yacc.c */
3420 #line 160 "expression.y"
3421 { FreeExpression((yyvaluep->exp)); };
3423 /* Line 1009 of yacc.c */
3424 #line 3425 "expression.ec"
3426 case 155: /* "cast_expression" */
3428 /* Line 1009 of yacc.c */
3429 #line 160 "expression.y"
3430 { FreeExpression((yyvaluep->exp)); };
3432 /* Line 1009 of yacc.c */
3433 #line 3434 "expression.ec"
3435 case 156: /* "multiplicative_expression" */
3437 /* Line 1009 of yacc.c */
3438 #line 160 "expression.y"
3439 { FreeExpression((yyvaluep->exp)); };
3441 /* Line 1009 of yacc.c */
3442 #line 3443 "expression.ec"
3444 case 157: /* "additive_expression" */
3446 /* Line 1009 of yacc.c */
3447 #line 160 "expression.y"
3448 { FreeExpression((yyvaluep->exp)); };
3450 /* Line 1009 of yacc.c */
3451 #line 3452 "expression.ec"
3453 case 158: /* "shift_expression" */
3455 /* Line 1009 of yacc.c */
3456 #line 160 "expression.y"
3457 { FreeExpression((yyvaluep->exp)); };
3459 /* Line 1009 of yacc.c */
3460 #line 3461 "expression.ec"
3462 case 159: /* "relational_expression" */
3464 /* Line 1009 of yacc.c */
3465 #line 160 "expression.y"
3466 { FreeExpression((yyvaluep->exp)); };
3468 /* Line 1009 of yacc.c */
3469 #line 3470 "expression.ec"
3471 case 160: /* "equality_expression" */
3473 /* Line 1009 of yacc.c */
3474 #line 160 "expression.y"
3475 { FreeExpression((yyvaluep->exp)); };
3477 /* Line 1009 of yacc.c */
3478 #line 3479 "expression.ec"
3480 case 161: /* "and_expression" */
3482 /* Line 1009 of yacc.c */
3483 #line 160 "expression.y"
3484 { FreeExpression((yyvaluep->exp)); };
3486 /* Line 1009 of yacc.c */
3487 #line 3488 "expression.ec"
3489 case 162: /* "exclusive_or_expression" */
3491 /* Line 1009 of yacc.c */
3492 #line 160 "expression.y"
3493 { FreeExpression((yyvaluep->exp)); };
3495 /* Line 1009 of yacc.c */
3496 #line 3497 "expression.ec"
3498 case 163: /* "inclusive_or_expression" */
3500 /* Line 1009 of yacc.c */
3501 #line 160 "expression.y"
3502 { FreeExpression((yyvaluep->exp)); };
3504 /* Line 1009 of yacc.c */
3505 #line 3506 "expression.ec"
3507 case 164: /* "logical_and_expression" */
3509 /* Line 1009 of yacc.c */
3510 #line 160 "expression.y"
3511 { FreeExpression((yyvaluep->exp)); };
3513 /* Line 1009 of yacc.c */
3514 #line 3515 "expression.ec"
3516 case 165: /* "logical_or_expression" */
3518 /* Line 1009 of yacc.c */
3519 #line 160 "expression.y"
3520 { FreeExpression((yyvaluep->exp)); };
3522 /* Line 1009 of yacc.c */
3523 #line 3524 "expression.ec"
3525 case 166: /* "conditional_expression" */
3527 /* Line 1009 of yacc.c */
3528 #line 160 "expression.y"
3529 { FreeExpression((yyvaluep->exp)); };
3531 /* Line 1009 of yacc.c */
3532 #line 3533 "expression.ec"
3534 case 167: /* "assignment_expression" */
3536 /* Line 1009 of yacc.c */
3537 #line 160 "expression.y"
3538 { FreeExpression((yyvaluep->exp)); };
3540 /* Line 1009 of yacc.c */
3541 #line 3542 "expression.ec"
3543 case 169: /* "expression" */
3545 /* Line 1009 of yacc.c */
3546 #line 193 "expression.y"
3547 { FreeList((yyvaluep->list), FreeExpression); };
3549 /* Line 1009 of yacc.c */
3550 #line 3551 "expression.ec"
3552 case 170: /* "constant_expression" */
3554 /* Line 1009 of yacc.c */
3555 #line 160 "expression.y"
3556 { FreeExpression((yyvaluep->exp)); };
3558 /* Line 1009 of yacc.c */
3559 #line 3560 "expression.ec"
3561 case 171: /* "declaration" */
3563 /* Line 1009 of yacc.c */
3564 #line 179 "expression.y"
3565 { FreeDeclaration((yyvaluep->declaration)); };
3567 /* Line 1009 of yacc.c */
3568 #line 3569 "expression.ec"
3570 case 172: /* "specifier_qualifier_list" */
3572 /* Line 1009 of yacc.c */
3573 #line 195 "expression.y"
3574 { FreeList((yyvaluep->list), FreeSpecifier); };
3576 /* Line 1009 of yacc.c */
3577 #line 3578 "expression.ec"
3579 case 173: /* "declaration_specifiers" */
3581 /* Line 1009 of yacc.c */
3582 #line 195 "expression.y"
3583 { FreeList((yyvaluep->list), FreeSpecifier); };
3585 /* Line 1009 of yacc.c */
3586 #line 3587 "expression.ec"
3588 case 176: /* "init_declarator_list" */
3590 /* Line 1009 of yacc.c */
3591 #line 199 "expression.y"
3592 { FreeList((yyvaluep->list), FreeInitDeclarator); };
3594 /* Line 1009 of yacc.c */
3595 #line 3596 "expression.ec"
3597 case 177: /* "init_declarator" */
3599 /* Line 1009 of yacc.c */
3600 #line 174 "expression.y"
3601 { FreeInitDeclarator((yyvaluep->initDeclarator)); };
3603 /* Line 1009 of yacc.c */
3604 #line 3605 "expression.ec"
3606 case 178: /* "storage_class_specifier" */
3608 /* Line 1009 of yacc.c */
3609 #line 166 "expression.y"
3610 { FreeSpecifier((yyvaluep->specifier)); };
3612 /* Line 1009 of yacc.c */
3613 #line 3614 "expression.ec"
3615 case 179: /* "ext_decl" */
3617 /* Line 1009 of yacc.c */
3618 #line 207 "expression.y"
3619 { FreeExtDecl((yyvaluep->extDecl)); };
3621 /* Line 1009 of yacc.c */
3622 #line 3623 "expression.ec"
3624 case 181: /* "attribute_word" */
3626 /* Line 1009 of yacc.c */
3627 #line 190 "expression.y"
3628 { delete (yyvaluep->string); };
3630 /* Line 1009 of yacc.c */
3631 #line 3632 "expression.ec"
3633 case 182: /* "attribute" */
3635 /* Line 1009 of yacc.c */
3636 #line 208 "expression.y"
3637 { FreeAttribute((yyvaluep->attribute)); };
3639 /* Line 1009 of yacc.c */
3640 #line 3641 "expression.ec"
3642 case 183: /* "attribs_list" */
3644 /* Line 1009 of yacc.c */
3645 #line 209 "expression.y"
3646 { FreeList((yyvaluep->list), FreeAttribute); };
3648 /* Line 1009 of yacc.c */
3649 #line 3650 "expression.ec"
3651 case 184: /* "attrib" */
3653 /* Line 1009 of yacc.c */
3654 #line 206 "expression.y"
3655 { FreeAttrib((yyvaluep->attrib)); };
3657 /* Line 1009 of yacc.c */
3658 #line 3659 "expression.ec"
3660 case 185: /* "type_qualifier" */
3662 /* Line 1009 of yacc.c */
3663 #line 166 "expression.y"
3664 { FreeSpecifier((yyvaluep->specifier)); };
3666 /* Line 1009 of yacc.c */
3667 #line 3668 "expression.ec"
3669 case 186: /* "type" */
3671 /* Line 1009 of yacc.c */
3672 #line 166 "expression.y"
3673 { FreeSpecifier((yyvaluep->specifier)); };
3675 /* Line 1009 of yacc.c */
3676 #line 3677 "expression.ec"
3678 case 187: /* "strict_type" */
3680 /* Line 1009 of yacc.c */
3681 #line 166 "expression.y"
3682 { FreeSpecifier((yyvaluep->specifier)); };
3684 /* Line 1009 of yacc.c */
3685 #line 3686 "expression.ec"
3687 case 188: /* "type_specifier" */
3689 /* Line 1009 of yacc.c */
3690 #line 166 "expression.y"
3691 { FreeSpecifier((yyvaluep->specifier)); };
3693 /* Line 1009 of yacc.c */
3694 #line 3695 "expression.ec"
3696 case 189: /* "strict_type_specifier" */
3698 /* Line 1009 of yacc.c */
3699 #line 166 "expression.y"
3700 { FreeSpecifier((yyvaluep->specifier)); };
3702 /* Line 1009 of yacc.c */
3703 #line 3704 "expression.ec"
3705 case 190: /* "struct_or_union_specifier_compound" */
3707 /* Line 1009 of yacc.c */
3708 #line 166 "expression.y"
3709 { FreeSpecifier((yyvaluep->specifier)); };
3711 /* Line 1009 of yacc.c */
3712 #line 3713 "expression.ec"
3714 case 191: /* "struct_or_union_specifier_nocompound" */
3716 /* Line 1009 of yacc.c */
3717 #line 166 "expression.y"
3718 { FreeSpecifier((yyvaluep->specifier)); };
3720 /* Line 1009 of yacc.c */
3721 #line 3722 "expression.ec"
3723 case 193: /* "struct_declaration_list" */
3725 /* Line 1009 of yacc.c */
3726 #line 202 "expression.y"
3727 { FreeList((yyvaluep->list), FreeClassDef); };
3729 /* Line 1009 of yacc.c */
3730 #line 3731 "expression.ec"
3732 case 194: /* "default_property" */
3734 /* Line 1009 of yacc.c */
3735 #line 183 "expression.y"
3736 { FreeMemberInit((yyvaluep->memberInit)); };
3738 /* Line 1009 of yacc.c */
3739 #line 3740 "expression.ec"
3741 case 195: /* "default_property_list" */
3743 /* Line 1009 of yacc.c */
3744 #line 203 "expression.y"
3745 { FreeList((yyvaluep->list), FreeMemberInit); };
3747 /* Line 1009 of yacc.c */
3748 #line 3749 "expression.ec"
3750 case 196: /* "property" */
3752 /* Line 1009 of yacc.c */
3753 #line 191 "expression.y"
3754 { FreeProperty((yyvaluep->prop)); };
3756 /* Line 1009 of yacc.c */
3757 #line 3758 "expression.ec"
3759 case 197: /* "struct_declaration" */
3761 /* Line 1009 of yacc.c */
3762 #line 189 "expression.y"
3763 { FreeClassDef((yyvaluep->classDef)); };
3765 /* Line 1009 of yacc.c */
3766 #line 3767 "expression.ec"
3768 case 198: /* "struct_declarator_list" */
3770 /* Line 1009 of yacc.c */
3771 #line 196 "expression.y"
3772 { FreeList((yyvaluep->list), FreeDeclarator); };
3774 /* Line 1009 of yacc.c */
3775 #line 3776 "expression.ec"
3777 case 199: /* "struct_declarator" */
3779 /* Line 1009 of yacc.c */
3780 #line 169 "expression.y"
3781 { FreeDeclarator((yyvaluep->declarator)); };
3783 /* Line 1009 of yacc.c */
3784 #line 3785 "expression.ec"
3786 case 200: /* "enum_specifier_nocompound" */
3788 /* Line 1009 of yacc.c */
3789 #line 166 "expression.y"
3790 { FreeSpecifier((yyvaluep->specifier)); };
3792 /* Line 1009 of yacc.c */
3793 #line 3794 "expression.ec"
3795 case 201: /* "enum_specifier_compound" */
3797 /* Line 1009 of yacc.c */
3798 #line 166 "expression.y"
3799 { FreeSpecifier((yyvaluep->specifier)); };
3801 /* Line 1009 of yacc.c */
3802 #line 3803 "expression.ec"
3804 case 202: /* "enumerator_list" */
3806 /* Line 1009 of yacc.c */
3807 #line 194 "expression.y"
3808 { FreeList((yyvaluep->list), FreeEnumerator); };
3810 /* Line 1009 of yacc.c */
3811 #line 3812 "expression.ec"
3813 case 203: /* "enumerator" */
3815 /* Line 1009 of yacc.c */
3816 #line 168 "expression.y"
3817 { FreeEnumerator((yyvaluep->enumerator)); };
3819 /* Line 1009 of yacc.c */
3820 #line 3821 "expression.ec"
3822 case 204: /* "direct_abstract_declarator" */
3824 /* Line 1009 of yacc.c */
3825 #line 169 "expression.y"
3826 { FreeDeclarator((yyvaluep->declarator)); };
3828 /* Line 1009 of yacc.c */
3829 #line 3830 "expression.ec"
3831 case 205: /* "direct_abstract_declarator_noarray" */
3833 /* Line 1009 of yacc.c */
3834 #line 169 "expression.y"
3835 { FreeDeclarator((yyvaluep->declarator)); };
3837 /* Line 1009 of yacc.c */
3838 #line 3839 "expression.ec"
3840 case 206: /* "abstract_declarator" */
3842 /* Line 1009 of yacc.c */
3843 #line 169 "expression.y"
3844 { FreeDeclarator((yyvaluep->declarator)); };
3846 /* Line 1009 of yacc.c */
3847 #line 3848 "expression.ec"
3849 case 207: /* "abstract_declarator_noarray" */
3851 /* Line 1009 of yacc.c */
3852 #line 169 "expression.y"
3853 { FreeDeclarator((yyvaluep->declarator)); };
3855 /* Line 1009 of yacc.c */
3856 #line 3857 "expression.ec"
3858 case 208: /* "declarator" */
3860 /* Line 1009 of yacc.c */
3861 #line 169 "expression.y"
3862 { FreeDeclarator((yyvaluep->declarator)); };
3864 /* Line 1009 of yacc.c */
3865 #line 3866 "expression.ec"
3867 case 209: /* "direct_declarator_nofunction" */
3869 /* Line 1009 of yacc.c */
3870 #line 169 "expression.y"
3871 { FreeDeclarator((yyvaluep->declarator)); };
3873 /* Line 1009 of yacc.c */
3874 #line 3875 "expression.ec"
3876 case 210: /* "declarator_function" */
3878 /* Line 1009 of yacc.c */
3879 #line 169 "expression.y"
3880 { FreeDeclarator((yyvaluep->declarator)); };
3882 /* Line 1009 of yacc.c */
3883 #line 3884 "expression.ec"
3885 case 211: /* "direct_declarator" */
3887 /* Line 1009 of yacc.c */
3888 #line 169 "expression.y"
3889 { FreeDeclarator((yyvaluep->declarator)); };
3891 /* Line 1009 of yacc.c */
3892 #line 3893 "expression.ec"
3894 case 212: /* "direct_declarator_function_start" */
3896 /* Line 1009 of yacc.c */
3897 #line 169 "expression.y"
3898 { FreeDeclarator((yyvaluep->declarator)); };
3900 /* Line 1009 of yacc.c */
3901 #line 3902 "expression.ec"
3903 case 213: /* "direct_declarator_function" */
3905 /* Line 1009 of yacc.c */
3906 #line 169 "expression.y"
3907 { FreeDeclarator((yyvaluep->declarator)); };
3909 /* Line 1009 of yacc.c */
3910 #line 3911 "expression.ec"
3912 case 214: /* "type_qualifier_list" */
3914 /* Line 1009 of yacc.c */
3915 #line 195 "expression.y"
3916 { FreeList((yyvaluep->list), FreeSpecifier); };
3918 /* Line 1009 of yacc.c */
3919 #line 3920 "expression.ec"
3921 case 215: /* "pointer" */
3923 /* Line 1009 of yacc.c */
3924 #line 159 "expression.y"
3925 { FreePointer((yyvaluep->pointer)); };
3927 /* Line 1009 of yacc.c */
3928 #line 3929 "expression.ec"
3930 case 216: /* "parameter_type_list" */
3932 /* Line 1009 of yacc.c */
3933 #line 200 "expression.y"
3934 { FreeList((yyvaluep->list), FreeTypeName); };
3936 /* Line 1009 of yacc.c */
3937 #line 3938 "expression.ec"
3939 case 217: /* "parameter_list" */
3941 /* Line 1009 of yacc.c */
3942 #line 200 "expression.y"
3943 { FreeList((yyvaluep->list), FreeTypeName); };
3945 /* Line 1009 of yacc.c */
3946 #line 3947 "expression.ec"
3948 case 218: /* "parameter_declaration" */
3950 /* Line 1009 of yacc.c */
3951 #line 175 "expression.y"
3952 { FreeTypeName((yyvaluep->typeName)); };
3954 /* Line 1009 of yacc.c */
3955 #line 3956 "expression.ec"
3957 case 219: /* "identifier_list" */
3959 /* Line 1009 of yacc.c */
3960 #line 200 "expression.y"
3961 { FreeList((yyvaluep->list), FreeTypeName); };
3963 /* Line 1009 of yacc.c */
3964 #line 3965 "expression.ec"
3966 case 220: /* "type_name" */
3968 /* Line 1009 of yacc.c */
3969 #line 175 "expression.y"
3970 { FreeTypeName((yyvaluep->typeName)); };
3972 /* Line 1009 of yacc.c */
3973 #line 3974 "expression.ec"
3975 case 221: /* "initializer" */
3977 /* Line 1009 of yacc.c */
3978 #line 173 "expression.y"
3979 { FreeInitializer((yyvaluep->initializer)); };
3981 /* Line 1009 of yacc.c */
3982 #line 3983 "expression.ec"
3984 case 222: /* "initializer_condition" */
3986 /* Line 1009 of yacc.c */
3987 #line 173 "expression.y"
3988 { FreeInitializer((yyvaluep->initializer)); };
3990 /* Line 1009 of yacc.c */
3991 #line 3992 "expression.ec"
3993 case 223: /* "initializer_list" */
3995 /* Line 1009 of yacc.c */
3996 #line 198 "expression.y"
3997 { FreeList((yyvaluep->list), FreeInitializer); };
3999 /* Line 1009 of yacc.c */
4000 #line 4001 "expression.ec"
4002 case 224: /* "statement" */
4004 /* Line 1009 of yacc.c */
4005 #line 176 "expression.y"
4006 { FreeStatement((yyvaluep->stmt)); };
4008 /* Line 1009 of yacc.c */
4009 #line 4010 "expression.ec"
4011 case 225: /* "labeled_statement" */
4013 /* Line 1009 of yacc.c */
4014 #line 176 "expression.y"
4015 { FreeStatement((yyvaluep->stmt)); };
4017 /* Line 1009 of yacc.c */
4018 #line 4019 "expression.ec"
4020 case 226: /* "declaration_list" */
4022 /* Line 1009 of yacc.c */
4023 #line 197 "expression.y"
4024 { FreeList((yyvaluep->list), FreeDeclaration); };
4026 /* Line 1009 of yacc.c */
4027 #line 4028 "expression.ec"
4029 case 227: /* "statement_list" */
4031 /* Line 1009 of yacc.c */
4032 #line 201 "expression.y"
4033 { FreeList((yyvaluep->list), FreeStatement); };
4035 /* Line 1009 of yacc.c */
4036 #line 4037 "expression.ec"
4038 case 228: /* "compound_inside" */
4040 /* Line 1009 of yacc.c */
4041 #line 176 "expression.y"
4042 { FreeStatement((yyvaluep->stmt)); };
4044 /* Line 1009 of yacc.c */
4045 #line 4046 "expression.ec"
4047 case 229: /* "compound_start" */
4049 /* Line 1009 of yacc.c */
4050 #line 205 "expression.y"
4051 { PopContext((yyvaluep->context)); FreeContext((yyvaluep->context)); delete (yyvaluep->context); };
4053 /* Line 1009 of yacc.c */
4054 #line 4055 "expression.ec"
4056 case 230: /* "compound_statement" */
4058 /* Line 1009 of yacc.c */
4059 #line 176 "expression.y"
4060 { FreeStatement((yyvaluep->stmt)); };
4062 /* Line 1009 of yacc.c */
4063 #line 4064 "expression.ec"
4065 case 231: /* "expression_statement" */
4067 /* Line 1009 of yacc.c */
4068 #line 176 "expression.y"
4069 { FreeStatement((yyvaluep->stmt)); };
4071 /* Line 1009 of yacc.c */
4072 #line 4073 "expression.ec"
4074 case 232: /* "selection_statement" */
4076 /* Line 1009 of yacc.c */
4077 #line 176 "expression.y"
4078 { FreeStatement((yyvaluep->stmt)); };
4080 /* Line 1009 of yacc.c */
4081 #line 4082 "expression.ec"
4083 case 233: /* "iteration_statement" */
4085 /* Line 1009 of yacc.c */
4086 #line 176 "expression.y"
4087 { FreeStatement((yyvaluep->stmt)); };
4089 /* Line 1009 of yacc.c */
4090 #line 4091 "expression.ec"
4092 case 234: /* "jump_statement" */
4094 /* Line 1009 of yacc.c */
4095 #line 176 "expression.y"
4096 { FreeStatement((yyvaluep->stmt)); };
4098 /* Line 1009 of yacc.c */
4099 #line 4100 "expression.ec"
4101 case 235: /* "string_literal" */
4103 /* Line 1009 of yacc.c */
4104 #line 190 "expression.y"
4105 { delete (yyvaluep->string); };
4107 /* Line 1009 of yacc.c */
4108 #line 4109 "expression.ec"
4110 case 236: /* "instantiation_named" */
4112 /* Line 1009 of yacc.c */
4113 #line 181 "expression.y"
4114 { FreeInstance((yyvaluep->instance)); };
4116 /* Line 1009 of yacc.c */
4117 #line 4118 "expression.ec"
4119 case 237: /* "instantiation_unnamed" */
4121 /* Line 1009 of yacc.c */
4122 #line 181 "expression.y"
4123 { FreeInstance((yyvaluep->instance)); };
4125 /* Line 1009 of yacc.c */
4126 #line 4127 "expression.ec"
4128 case 239: /* "class_function_definition_start" */
4130 /* Line 1009 of yacc.c */
4131 #line 185 "expression.y"
4132 { FreeClassFunction((yyvaluep->classFunction)); };
4134 /* Line 1009 of yacc.c */
4135 #line 4136 "expression.ec"
4137 case 240: /* "constructor_function_definition_start" */
4139 /* Line 1009 of yacc.c */
4140 #line 185 "expression.y"
4141 { FreeClassFunction((yyvaluep->classFunction)); };
4143 /* Line 1009 of yacc.c */
4144 #line 4145 "expression.ec"
4146 case 241: /* "destructor_function_definition_start" */
4148 /* Line 1009 of yacc.c */
4149 #line 185 "expression.y"
4150 { FreeClassFunction((yyvaluep->classFunction)); };
4152 /* Line 1009 of yacc.c */
4153 #line 4154 "expression.ec"
4155 case 242: /* "virtual_class_function_definition_start" */
4157 /* Line 1009 of yacc.c */
4158 #line 185 "expression.y"
4159 { FreeClassFunction((yyvaluep->classFunction)); };
4161 /* Line 1009 of yacc.c */
4162 #line 4163 "expression.ec"
4164 case 243: /* "class_function_definition" */
4166 /* Line 1009 of yacc.c */
4167 #line 185 "expression.y"
4168 { FreeClassFunction((yyvaluep->classFunction)); };
4170 /* Line 1009 of yacc.c */
4171 #line 4172 "expression.ec"
4173 case 244: /* "instance_class_function_definition_start" */
4175 /* Line 1009 of yacc.c */
4176 #line 185 "expression.y"
4177 { FreeClassFunction((yyvaluep->classFunction)); };
4179 /* Line 1009 of yacc.c */
4180 #line 4181 "expression.ec"
4182 case 245: /* "instance_class_function_definition" */
4184 /* Line 1009 of yacc.c */
4185 #line 185 "expression.y"
4186 { FreeClassFunction((yyvaluep->classFunction)); };
4188 /* Line 1009 of yacc.c */
4189 #line 4190 "expression.ec"
4191 case 246: /* "data_member_initialization" */
4193 /* Line 1009 of yacc.c */
4194 #line 183 "expression.y"
4195 { FreeMemberInit((yyvaluep->memberInit)); };
4197 /* Line 1009 of yacc.c */
4198 #line 4199 "expression.ec"
4200 case 247: /* "data_member_initialization_list" */
4202 /* Line 1009 of yacc.c */
4203 #line 203 "expression.y"
4204 { FreeList((yyvaluep->list), FreeMemberInit); };
4206 /* Line 1009 of yacc.c */
4207 #line 4208 "expression.ec"
4209 case 248: /* "data_member_initialization_list_coloned" */
4211 /* Line 1009 of yacc.c */
4212 #line 203 "expression.y"
4213 { FreeList((yyvaluep->list), FreeMemberInit); };
4215 /* Line 1009 of yacc.c */
4216 #line 4217 "expression.ec"
4218 case 249: /* "members_initialization_list_coloned" */
4220 /* Line 1009 of yacc.c */
4221 #line 204 "expression.y"
4222 { FreeList((yyvaluep->list), FreeMembersInit); };
4224 /* Line 1009 of yacc.c */
4225 #line 4226 "expression.ec"
4227 case 250: /* "members_initialization_list" */
4229 /* Line 1009 of yacc.c */
4230 #line 204 "expression.y"
4231 { FreeList((yyvaluep->list), FreeMembersInit); };
4233 /* Line 1009 of yacc.c */
4234 #line 4235 "expression.ec"
4242 /* Prevent warnings from -Wmissing-prototypes. */
4243 #ifdef YYPARSE_PARAM
4244 #if defined __STDC__ || defined __cplusplus
4245 int yyparse (void *YYPARSE_PARAM);
4249 #else /* ! YYPARSE_PARAM */
4250 #if defined __STDC__ || defined __cplusplus
4255 #endif /* ! YYPARSE_PARAM */
4258 /* The lookahead symbol. */
4261 /* The semantic value of the lookahead symbol. */
4264 /* Location data for the lookahead symbol. */
4267 /* Number of syntax errors so far. */
4272 /*-------------------------.
4273 | yyparse or yypush_parse. |
4274 `-------------------------*/
4276 #ifdef YYPARSE_PARAM
4277 #if (defined __STDC__ || defined __C99__FUNC__ \
4278 || defined __cplusplus || defined _MSC_VER)
4280 yyparse (void *YYPARSE_PARAM)
4283 yyparse (YYPARSE_PARAM)
4284 void *YYPARSE_PARAM;
4286 #else /* ! YYPARSE_PARAM */
4287 #if (defined __STDC__ || defined __C99__FUNC__ \
4288 || defined __cplusplus || defined _MSC_VER)
4301 /* Number of tokens to shift before error messages enabled. */
4304 /* The stacks and their tools:
4305 `yyss': related to states.
4306 `yyvs': related to semantic values.
4307 `yyls': related to locations.
4309 Refer to the stacks thru separate pointers, to allow yyoverflow
4310 to reallocate them elsewhere. */
4312 /* The state stack. */
4313 yytype_int16 yyssa[YYINITDEPTH];
4315 yytype_int16 *yyssp;
4317 /* The semantic value stack. */
4318 YYSTYPE yyvsa[YYINITDEPTH];
4322 /* The location stack. */
4323 YYLTYPE yylsa[YYINITDEPTH];
4327 /* The locations where the error started and ended. */
4328 YYLTYPE yyerror_range[2];
4330 YYSIZE_T yystacksize;
4334 /* Lookahead token as an internal (translated) token number. */
4336 /* The variables used to return semantic value and location from the
4342 /* Buffer for error messages, and its allocated size. */
4344 char *yymsg = yymsgbuf;
4345 YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
4348 #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
4350 /* The number of symbols on the RHS of the reduced rule.
4351 Keep to zero when no symbol should be popped. */
4358 yystacksize = YYINITDEPTH;
4360 YYDPRINTF ((stderr, "Starting parse\n"));
4365 yychar = YYEMPTY; /* Cause a token to be read. */
4367 /* Initialize stack pointers.
4368 Waste one element of value and location stack
4369 so that they stay on the same level as the state stack.
4370 The wasted elements are never initialized. */
4375 #if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
4376 /* Initialize the default location before parsing starts. */
4377 yylloc.first_line = yylloc.last_line = 1;
4378 yylloc.first_column = yylloc.last_column = 1;
4383 /*------------------------------------------------------------.
4384 | yynewstate -- Push a new state, which is found in yystate. |
4385 `------------------------------------------------------------*/
4387 /* In all cases, when you get here, the value and location stacks
4388 have just been pushed. So pushing a state here evens the stacks. */
4394 if (yyss + yystacksize - 1 <= yyssp)
4396 /* Get the current used size of the three stacks, in elements. */
4397 YYSIZE_T yysize = yyssp - yyss + 1;
4401 /* Give user a chance to reallocate the stack. Use copies of
4402 these so that the &'s don't force the real ones into
4404 YYSTYPE *yyvs1 = yyvs;
4405 yytype_int16 *yyss1 = yyss;
4406 YYLTYPE *yyls1 = yyls;
4408 /* Each stack pointer address is followed by the size of the
4409 data in use in that stack, in bytes. This used to be a
4410 conditional around just the two extra args, but that might
4411 be undefined if yyoverflow is a macro. */
4412 yyoverflow (YY_("memory exhausted"),
4413 &yyss1, yysize * sizeof (*yyssp),
4414 &yyvs1, yysize * sizeof (*yyvsp),
4415 &yyls1, yysize * sizeof (*yylsp),
4422 #else /* no yyoverflow */
4423 # ifndef YYSTACK_RELOCATE
4424 goto yyexhaustedlab;
4426 /* Extend the stack our own way. */
4427 if (YYMAXDEPTH <= yystacksize)
4428 goto yyexhaustedlab;
4430 if (YYMAXDEPTH < yystacksize)
4431 yystacksize = YYMAXDEPTH;
4434 yytype_int16 *yyss1 = yyss;
4435 union yyalloc *yyptr =
4436 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
4438 goto yyexhaustedlab;
4439 YYSTACK_RELOCATE (yyss_alloc, yyss);
4440 YYSTACK_RELOCATE (yyvs_alloc, yyvs);
4441 YYSTACK_RELOCATE (yyls_alloc, yyls);
4442 # undef YYSTACK_RELOCATE
4444 YYSTACK_FREE (yyss1);
4447 #endif /* no yyoverflow */
4449 yyssp = yyss + yysize - 1;
4450 yyvsp = yyvs + yysize - 1;
4451 yylsp = yyls + yysize - 1;
4453 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
4454 (unsigned long int) yystacksize));
4456 if (yyss + yystacksize - 1 <= yyssp)
4460 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
4462 if (yystate == YYFINAL)
4472 /* Do appropriate processing given the current state. Read a
4473 lookahead token if we need one and don't already have one. */
4475 /* First try to decide what to do without reference to lookahead token. */
4476 yyn = yypact[yystate];
4477 if (yyn == YYPACT_NINF)
4480 /* Not known => get a lookahead token if don't already have one. */
4482 /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
4483 if (yychar == YYEMPTY)
4485 YYDPRINTF ((stderr, "Reading a token: "));
4489 if (yychar <= YYEOF)
4491 yychar = yytoken = YYEOF;
4492 YYDPRINTF ((stderr, "Now at end of input.\n"));
4496 yytoken = YYTRANSLATE (yychar);
4497 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
4500 /* If the proper action on seeing token YYTOKEN is to reduce or to
4501 detect an error, take that action. */
4503 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
4508 if (yyn == 0 || yyn == YYTABLE_NINF)
4514 /* Count tokens shifted since error; after three, turn off error
4519 /* Shift the lookahead token. */
4520 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
4522 /* Discard the shifted token. */
4531 /*-----------------------------------------------------------.
4532 | yydefault -- do the default action for the current state. |
4533 `-----------------------------------------------------------*/
4535 yyn = yydefact[yystate];
4541 /*-----------------------------.
4542 | yyreduce -- Do a reduction. |
4543 `-----------------------------*/
4545 /* yyn is the number of a rule to reduce with. */
4548 /* If YYLEN is nonzero, implement the default value of the action:
4551 Otherwise, the following line sets YYVAL to garbage.
4552 This behavior is undocumented and Bison
4553 users should not rely upon it. Assigning to YYVAL
4554 unconditionally makes the parser a bit smaller, and it avoids a
4555 GCC warning that YYVAL may be used uninitialized. */
4556 yyval = yyvsp[1-yylen];
4558 /* Default location. */
4559 YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
4560 YY_REDUCE_PRINT (yyn);
4565 /* Line 1464 of yacc.c */
4566 #line 217 "expression.y"
4567 { (yyval.id) = MkIdentifier(yytext); (yyval.id).loc = (yylsp[(1) - (1)]); ;}
4572 /* Line 1464 of yacc.c */
4573 #line 223 "expression.y"
4574 { (yyval.exp) = MkExpBrackets((yyvsp[(2) - (3)].list)); (yyval.exp).loc = (yyloc); ;}
4579 /* Line 1464 of yacc.c */
4580 #line 228 "expression.y"
4581 { (yyval.exp) = MkExpIdentifier((yyvsp[(1) - (1)].id)); (yyval.exp).loc = (yyloc); ;}
4586 /* Line 1464 of yacc.c */
4587 #line 230 "expression.y"
4588 { (yyval.exp) = MkExpInstance((yyvsp[(1) - (1)].instance)); (yyval.exp).loc = (yyloc); ;}
4593 /* Line 1464 of yacc.c */
4594 #line 232 "expression.y"
4595 { (yyval.exp) = MkExpConstant(yytext); (yyval.exp).loc = (yyloc); ;}
4600 /* Line 1464 of yacc.c */
4601 #line 233 "expression.y"
4602 { (yyval.exp) = MkExpWideString(yytext); (yyval.exp).loc = (yyloc); ;}
4607 /* Line 1464 of yacc.c */
4608 #line 235 "expression.y"
4609 { (yyval.exp) = MkExpString((yyvsp[(1) - (1)].string)); delete (yyvsp[(1) - (1)].string); (yyval.exp).loc = (yyloc); ;}
4614 /* Line 1464 of yacc.c */
4615 #line 236 "expression.y"
4616 { (yyval.exp) = MkExpIntlString((yyvsp[(2) - (2)].string), null); delete (yyvsp[(2) - (2)].string); (yyval.exp).loc = (yyloc); ;}
4621 /* Line 1464 of yacc.c */
4622 #line 237 "expression.y"
4623 { (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); ;}
4628 /* Line 1464 of yacc.c */
4629 #line 239 "expression.y"
4630 { 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(); ;}
4635 /* Line 1464 of yacc.c */
4636 #line 241 "expression.y"
4637 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[(2) - (6)].list),(yyvsp[(3) - (6)].declarator)), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
4642 /* Line 1464 of yacc.c */
4643 #line 242 "expression.y"
4644 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[(2) - (5)].list),null), (yyvsp[(4) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
4649 /* Line 1464 of yacc.c */
4650 #line 243 "expression.y"
4651 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[(2) - (6)].list),(yyvsp[(3) - (6)].declarator)), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
4656 /* Line 1464 of yacc.c */
4657 #line 244 "expression.y"
4658 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[(2) - (5)].list),null), (yyvsp[(4) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
4663 /* Line 1464 of yacc.c */
4664 #line 245 "expression.y"
4665 { (yyval.exp) = MkExpRenew((yyvsp[(2) - (7)].exp), MkTypeName((yyvsp[(3) - (7)].list),(yyvsp[(4) - (7)].declarator)), (yyvsp[(6) - (7)].exp)); (yyval.exp).loc = (yyloc); ;}
4670 /* Line 1464 of yacc.c */
4671 #line 246 "expression.y"
4672 { (yyval.exp) = MkExpRenew((yyvsp[(2) - (6)].exp), MkTypeName((yyvsp[(3) - (6)].list),null), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
4677 /* Line 1464 of yacc.c */
4678 #line 247 "expression.y"
4679 { (yyval.exp) = MkExpRenew0((yyvsp[(2) - (7)].exp), MkTypeName((yyvsp[(3) - (7)].list),(yyvsp[(4) - (7)].declarator)), (yyvsp[(6) - (7)].exp)); (yyval.exp).loc = (yyloc); ;}
4684 /* Line 1464 of yacc.c */
4685 #line 248 "expression.y"
4686 { (yyval.exp) = MkExpRenew0((yyvsp[(2) - (6)].exp), MkTypeName((yyvsp[(3) - (6)].list),null), (yyvsp[(5) - (6)].exp)); (yyval.exp).loc = (yyloc); ;}
4691 /* Line 1464 of yacc.c */
4692 #line 249 "expression.y"
4693 { (yyval.exp) = MkExpDummy(); yyerror(); ;}
4698 /* Line 1464 of yacc.c */
4699 #line 253 "expression.y"
4700 { (yyval.exp) = MkExpInstance((yyvsp[(1) - (1)].instance)); (yyval.exp).loc = (yyloc); ;}
4705 /* Line 1464 of yacc.c */
4706 #line 258 "expression.y"
4707 { (yyval.exp) = MkExpIndex((yyvsp[(1) - (4)].exp), (yyvsp[(3) - (4)].list)); (yyval.exp).loc = (yyloc); ;}
4712 /* Line 1464 of yacc.c */
4713 #line 259 "expression.y"
4714 { (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); ;}
4719 /* Line 1464 of yacc.c */
4720 #line 260 "expression.y"
4721 { (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); ;}
4726 /* Line 1464 of yacc.c */
4727 #line 261 "expression.y"
4728 { (yyval.exp) = MkExpMember((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
4733 /* Line 1464 of yacc.c */
4734 #line 263 "expression.y"
4736 char * constant = (yyvsp[(1) - (2)].exp).type == constantExp ? (yyvsp[(1) - (2)].exp).constant : null;
4737 int len = constant ? strlen(constant) : 0;
4738 if(constant && constant[len-1] == '.')
4740 constant[len-1] = 0;
4741 (yyval.exp) = MkExpMember((yyvsp[(1) - (2)].exp), (yyvsp[(2) - (2)].id));
4742 (yyval.exp).loc = (yyloc);
4751 /* Line 1464 of yacc.c */
4752 #line 275 "expression.y"
4753 { (yyval.exp) = MkExpPointer((yyvsp[(1) - (3)].exp), (yyvsp[(3) - (3)].id)); (yyval.exp).loc = (yyloc); ;}
4758 /* Line 1464 of yacc.c */
4759 #line 276 "expression.y"
4760 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
4765 /* Line 1464 of yacc.c */
4766 #line 277 "expression.y"
4767 { (yyval.exp) = MkExpOp((yyvsp[(1) - (2)].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
4772 /* Line 1464 of yacc.c */
4773 #line 307 "expression.y"
4774 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
4779 /* Line 1464 of yacc.c */
4780 #line 308 "expression.y"
4781 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
4786 /* Line 1464 of yacc.c */
4787 #line 309 "expression.y"
4788 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
4793 /* Line 1464 of yacc.c */
4794 #line 310 "expression.y"
4795 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
4800 /* Line 1464 of yacc.c */
4801 #line 314 "expression.y"
4802 { (yyval.exp) = MkExpOp(null, INC_OP, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4807 /* Line 1464 of yacc.c */
4808 #line 315 "expression.y"
4809 { (yyval.exp) = MkExpOp(null, DEC_OP, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4814 /* Line 1464 of yacc.c */
4815 #line 316 "expression.y"
4816 { (yyval.exp) = MkExpOp(null, (yyvsp[(1) - (2)].i), (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4821 /* Line 1464 of yacc.c */
4822 #line 319 "expression.y"
4823 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4828 /* Line 1464 of yacc.c */
4829 #line 320 "expression.y"
4830 { (yyval.exp) = MkExpTypeSize((yyvsp[(3) - (4)].typeName)); (yyval.exp).loc = (yyloc); ;}
4835 /* Line 1464 of yacc.c */
4836 #line 323 "expression.y"
4837 { (yyval.exp) = MkExpOp(null, ALIGNOF, (yyvsp[(2) - (2)].exp)); (yyval.exp).loc = (yyloc); ;}
4842 /* Line 1464 of yacc.c */
4843 #line 324 "expression.y"
4844 { (yyval.exp) = MkExpTypeAlign((yyvsp[(3) - (4)].typeName)); (yyval.exp).loc = (yyloc); ;}
4849 /* Line 1464 of yacc.c */
4850 #line 338 "expression.y"
4851 { (yyval.i) = '&'; ;}
4856 /* Line 1464 of yacc.c */
4857 #line 339 "expression.y"
4858 { (yyval.i) = '*'; ;}
4863 /* Line 1464 of yacc.c */
4864 #line 340 "expression.y"
4865 { (yyval.i) = '+'; ;}
4870 /* Line 1464 of yacc.c */
4871 #line 341 "expression.y"
4872 { (yyval.i) = '-'; ;}
4877 /* Line 1464 of yacc.c */
4878 #line 342 "expression.y"
4879 { (yyval.i) = '~'; ;}
4884 /* Line 1464 of yacc.c */
4885 #line 343 "expression.y"
4886 { (yyval.i) = '!'; ;}
4891 /* Line 1464 of yacc.c */
4892 #line 344 "expression.y"
4893 { (yyval.i) = DELETE; ;}
4898 /* Line 1464 of yacc.c */
4899 #line 349 "expression.y"
4900 { (yyval.exp) = MkExpCast((yyvsp[(2) - (4)].typeName), (yyvsp[(4) - (4)].exp)); (yyval.exp).loc = (yyloc); ;}
4905 /* Line 1464 of yacc.c */
4906 #line 354 "expression.y"
4907 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '*', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4912 /* Line 1464 of yacc.c */
4913 #line 355 "expression.y"
4914 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '/', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4919 /* Line 1464 of yacc.c */
4920 #line 356 "expression.y"
4921 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '%', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4926 /* Line 1464 of yacc.c */
4927 #line 361 "expression.y"
4928 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '+', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4933 /* Line 1464 of yacc.c */
4934 #line 362 "expression.y"
4935 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '-', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4940 /* Line 1464 of yacc.c */
4941 #line 367 "expression.y"
4942 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), LEFT_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4947 /* Line 1464 of yacc.c */
4948 #line 368 "expression.y"
4949 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), RIGHT_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4954 /* Line 1464 of yacc.c */
4955 #line 373 "expression.y"
4956 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '<', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4961 /* Line 1464 of yacc.c */
4962 #line 374 "expression.y"
4963 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '>', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4968 /* Line 1464 of yacc.c */
4969 #line 375 "expression.y"
4970 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), LE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4975 /* Line 1464 of yacc.c */
4976 #line 376 "expression.y"
4977 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), GE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4982 /* Line 1464 of yacc.c */
4983 #line 381 "expression.y"
4984 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), EQ_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4989 /* Line 1464 of yacc.c */
4990 #line 382 "expression.y"
4991 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), NE_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
4996 /* Line 1464 of yacc.c */
4997 #line 387 "expression.y"
4998 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '&', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5003 /* Line 1464 of yacc.c */
5004 #line 392 "expression.y"
5005 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '^', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5010 /* Line 1464 of yacc.c */
5011 #line 397 "expression.y"
5012 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), '|', (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5017 /* Line 1464 of yacc.c */
5018 #line 402 "expression.y"
5019 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), AND_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5024 /* Line 1464 of yacc.c */
5025 #line 407 "expression.y"
5026 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), OR_OP, (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5031 /* Line 1464 of yacc.c */
5032 #line 412 "expression.y"
5033 { (yyval.exp) = MkExpCondition((yyvsp[(1) - (5)].exp), (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].exp)); (yyval.exp).loc = (yyloc); ;}
5038 /* Line 1464 of yacc.c */
5039 #line 417 "expression.y"
5040 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), (yyvsp[(2) - (3)].i), (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5045 /* Line 1464 of yacc.c */
5046 #line 418 "expression.y"
5047 { yyerror(); (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), (yyvsp[(2) - (3)].i), (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5052 /* Line 1464 of yacc.c */
5053 #line 420 "expression.y"
5054 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), (yyvsp[(2) - (3)].i), (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5059 /* Line 1464 of yacc.c */
5060 #line 421 "expression.y"
5061 { (yyval.exp) = MkExpOp((yyvsp[(1) - (3)].exp), (yyvsp[(2) - (3)].i), (yyvsp[(3) - (3)].exp)); (yyval.exp).loc = (yyloc); ;}
5066 /* Line 1464 of yacc.c */
5067 #line 425 "expression.y"
5068 { (yyval.i) = '='; ;}
5073 /* Line 1464 of yacc.c */
5074 #line 426 "expression.y"
5075 { (yyval.i) = MUL_ASSIGN; ;}
5080 /* Line 1464 of yacc.c */
5081 #line 427 "expression.y"
5082 { (yyval.i) = DIV_ASSIGN; ;}
5087 /* Line 1464 of yacc.c */
5088 #line 428 "expression.y"
5089 { (yyval.i) = MOD_ASSIGN; ;}
5094 /* Line 1464 of yacc.c */
5095 #line 429 "expression.y"
5096 { (yyval.i) = ADD_ASSIGN; ;}
5101 /* Line 1464 of yacc.c */
5102 #line 430 "expression.y"
5103 { (yyval.i) = SUB_ASSIGN; ;}
5108 /* Line 1464 of yacc.c */
5109 #line 431 "expression.y"
5110 { (yyval.i) = LEFT_ASSIGN; ;}
5115 /* Line 1464 of yacc.c */
5116 #line 432 "expression.y"
5117 { (yyval.i) = RIGHT_ASSIGN; ;}
5122 /* Line 1464 of yacc.c */
5123 #line 433 "expression.y"
5124 { (yyval.i) = AND_ASSIGN; ;}
5129 /* Line 1464 of yacc.c */
5130 #line 434 "expression.y"
5131 { (yyval.i) = XOR_ASSIGN; ;}
5136 /* Line 1464 of yacc.c */
5137 #line 435 "expression.y"
5138 { (yyval.i) = OR_ASSIGN; ;}
5143 /* Line 1464 of yacc.c */
5144 #line 439 "expression.y"
5145 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].exp)); ;}
5150 /* Line 1464 of yacc.c */
5151 #line 440 "expression.y"
5152 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].exp)); ;}
5157 /* Line 1464 of yacc.c */
5158 #line 448 "expression.y"
5159 { (yyval.declaration) = MkDeclaration((yyvsp[(1) - (2)].list), null); (yyval.declaration).loc = (yyloc); ;}
5164 /* Line 1464 of yacc.c */
5165 #line 449 "expression.y"
5166 { (yyval.declaration) = MkDeclaration((yyvsp[(1) - (3)].list), (yyvsp[(2) - (3)].list)); (yyval.declaration).loc = (yyloc); ;}
5171 /* Line 1464 of yacc.c */
5172 #line 450 "expression.y"
5173 { (yyval.declaration) = MkDeclarationInst((yyvsp[(1) - (2)].instance)); (yyval.declaration).loc = (yyloc); ;}
5178 /* Line 1464 of yacc.c */
5179 #line 451 "expression.y"
5180 { (yyval.declaration) = MkDeclarationDefine((yyvsp[(2) - (5)].id), (yyvsp[(4) - (5)].exp)); (yyval.declaration).loc = (yyloc); ;}
5185 /* Line 1464 of yacc.c */
5186 #line 455 "expression.y"
5187 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5192 /* Line 1464 of yacc.c */
5193 #line 456 "expression.y"
5194 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5199 /* Line 1464 of yacc.c */
5200 #line 457 "expression.y"
5201 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5206 /* Line 1464 of yacc.c */
5207 #line 458 "expression.y"
5208 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5213 /* Line 1464 of yacc.c */
5214 #line 459 "expression.y"
5215 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5220 /* Line 1464 of yacc.c */
5221 #line 460 "expression.y"
5222 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5227 /* Line 1464 of yacc.c */
5228 #line 461 "expression.y"
5229 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5234 /* Line 1464 of yacc.c */
5235 #line 462 "expression.y"
5236 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5241 /* Line 1464 of yacc.c */
5242 #line 466 "expression.y"
5243 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5248 /* Line 1464 of yacc.c */
5249 #line 467 "expression.y"
5250 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5255 /* Line 1464 of yacc.c */
5256 #line 468 "expression.y"
5257 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5262 /* Line 1464 of yacc.c */
5263 #line 469 "expression.y"
5264 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5269 /* Line 1464 of yacc.c */
5270 #line 470 "expression.y"
5271 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5276 /* Line 1464 of yacc.c */
5277 #line 471 "expression.y"
5278 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5283 /* Line 1464 of yacc.c */
5284 #line 472 "expression.y"
5285 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5290 /* Line 1464 of yacc.c */
5291 #line 473 "expression.y"
5292 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5297 /* Line 1464 of yacc.c */
5298 #line 474 "expression.y"
5299 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5304 /* Line 1464 of yacc.c */
5305 #line 475 "expression.y"
5306 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5311 /* Line 1464 of yacc.c */
5312 #line 480 "expression.y"
5313 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5318 /* Line 1464 of yacc.c */
5319 #line 481 "expression.y"
5320 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5325 /* Line 1464 of yacc.c */
5326 #line 482 "expression.y"
5327 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5332 /* Line 1464 of yacc.c */
5333 #line 483 "expression.y"
5334 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5339 /* Line 1464 of yacc.c */
5340 #line 484 "expression.y"
5341 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5346 /* Line 1464 of yacc.c */
5347 #line 485 "expression.y"
5348 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5353 /* Line 1464 of yacc.c */
5354 #line 486 "expression.y"
5355 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5360 /* Line 1464 of yacc.c */
5361 #line 487 "expression.y"
5362 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5367 /* Line 1464 of yacc.c */
5368 #line 491 "expression.y"
5369 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5374 /* Line 1464 of yacc.c */
5375 #line 492 "expression.y"
5376 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5381 /* Line 1464 of yacc.c */
5382 #line 493 "expression.y"
5383 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5388 /* Line 1464 of yacc.c */
5389 #line 494 "expression.y"
5390 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5395 /* Line 1464 of yacc.c */
5396 #line 495 "expression.y"
5397 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5402 /* Line 1464 of yacc.c */
5403 #line 496 "expression.y"
5404 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5409 /* Line 1464 of yacc.c */
5410 #line 497 "expression.y"
5411 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5416 /* Line 1464 of yacc.c */
5417 #line 498 "expression.y"
5418 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5423 /* Line 1464 of yacc.c */
5424 #line 499 "expression.y"
5425 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
5430 /* Line 1464 of yacc.c */
5431 #line 500 "expression.y"
5432 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
5437 /* Line 1464 of yacc.c */
5438 #line 504 "expression.y"
5439 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].initDeclarator)); ;}
5444 /* Line 1464 of yacc.c */
5445 #line 505 "expression.y"
5446 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].initDeclarator)); ;}
5451 /* Line 1464 of yacc.c */
5452 #line 509 "expression.y"
5453 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[(1) - (1)].declarator), null); (yyval.initDeclarator).loc = (yyloc); ;}
5458 /* Line 1464 of yacc.c */
5459 #line 510 "expression.y"
5460 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[(1) - (3)].declarator), (yyvsp[(3) - (3)].initializer)); (yyval.initDeclarator).loc = (yyloc); (yyval.initDeclarator).initializer.loc.start = (yylsp[(2) - (3)]).end; ;}
5465 /* Line 1464 of yacc.c */
5466 #line 514 "expression.y"
5467 { (yyval.specifier) = MkSpecifier(TYPEDEF); ;}
5472 /* Line 1464 of yacc.c */
5473 #line 515 "expression.y"
5474 { (yyval.specifier) = MkSpecifier(EXTERN); ;}
5479 /* Line 1464 of yacc.c */
5480 #line 516 "expression.y"
5481 { (yyval.specifier) = MkSpecifier(STATIC); ;}
5486 /* Line 1464 of yacc.c */
5487 #line 517 "expression.y"
5488 { (yyval.specifier) = MkSpecifier(AUTO); ;}
5493 /* Line 1464 of yacc.c */
5494 #line 518 "expression.y"
5495 { (yyval.specifier) = MkSpecifier(REGISTER); ;}
5500 /* Line 1464 of yacc.c */
5501 #line 519 "expression.y"
5502 { (yyval.specifier) = MkSpecifier(THREAD); ;}
5507 /* Line 1464 of yacc.c */
5508 #line 523 "expression.y"
5509 { (yyval.extDecl) = MkExtDeclString(CopyString(yytext)); ;}
5514 /* Line 1464 of yacc.c */
5515 #line 524 "expression.y"
5516 { (yyval.extDecl) = MkExtDeclAttrib((yyvsp[(1) - (1)].attrib)); ;}
5521 /* Line 1464 of yacc.c */
5522 #line 528 "expression.y"
5523 { (yyval.i) = ATTRIB; ;}
5528 /* Line 1464 of yacc.c */
5529 #line 529 "expression.y"
5530 { (yyval.i) = ATTRIB_DEP; ;}
5535 /* Line 1464 of yacc.c */
5536 #line 530 "expression.y"
5537 { (yyval.i) = __ATTRIB; ;}
5542 /* Line 1464 of yacc.c */
5543 #line 535 "expression.y"
5544 { (yyval.string) = CopyString(yytext); ;}
5549 /* Line 1464 of yacc.c */
5550 #line 536 "expression.y"
5551 { (yyval.string) = CopyString(yytext); ;}
5556 /* Line 1464 of yacc.c */
5557 #line 537 "expression.y"
5558 { (yyval.string) = CopyString(yytext); ;}
5563 /* Line 1464 of yacc.c */
5564 #line 538 "expression.y"
5565 { (yyval.string) = CopyString(yytext); ;}
5570 /* Line 1464 of yacc.c */
5571 #line 539 "expression.y"
5572 { (yyval.string) = CopyString(yytext); ;}
5577 /* Line 1464 of yacc.c */
5578 #line 543 "expression.y"
5579 { (yyval.attribute) = MkAttribute((yyvsp[(1) - (1)].string), null); (yyval.attribute).loc = (yyloc); ;}
5584 /* Line 1464 of yacc.c */
5585 #line 544 "expression.y"
5586 { (yyval.attribute) = MkAttribute((yyvsp[(1) - (4)].string), MkExpBrackets((yyvsp[(3) - (4)].list))); (yyval.attribute).loc = (yyloc); ;}
5591 /* Line 1464 of yacc.c */
5592 #line 548 "expression.y"
5593 { (yyval.list) = MkListOne((yyvsp[(1) - (1)].attribute)); ;}
5598 /* Line 1464 of yacc.c */
5599 #line 549 "expression.y"
5600 { ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].attribute)); (yyval.list) = (yyvsp[(1) - (2)].list); ;}
5605 /* Line 1464 of yacc.c */
5606 #line 550 "expression.y"
5607 { ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].attribute)); (yyval.list) = (yyvsp[(1) - (3)].list); ;}
5612 /* Line 1464 of yacc.c */
5613 #line 554 "expression.y"
5614 { (yyval.attrib) = MkAttrib((yyvsp[(1) - (6)].i), (yyvsp[(4) - (6)].list)); (yyval.attrib).loc = (yyloc); ;}
5619 /* Line 1464 of yacc.c */
5620 #line 555 "expression.y"
5621 { (yyval.attrib) = MkAttrib((yyvsp[(1) - (5)].i), null); (yyval.attrib).loc = (yyloc); ;}
5626 /* Line 1464 of yacc.c */
5627 #line 559 "expression.y"
5628 { (yyval.specifier) = MkSpecifier(CONST); ;}
5633 /* Line 1464 of yacc.c */
5634 #line 560 "expression.y"
5635 { (yyval.specifier) = MkSpecifier(VOLATILE); ;}
5640 /* Line 1464 of yacc.c */
5641 #line 561 "expression.y"
5642 { (yyval.specifier) = MkSpecifierExtended(MkExtDeclString(CopyString(yytext))); ;}
5647 /* Line 1464 of yacc.c */
5648 #line 565 "expression.y"
5649 { (yyval.specifier) = (yyvsp[(1) - (1)].specifier); ;}
5654 /* Line 1464 of yacc.c */
5655 #line 590 "expression.y"
5656 { (yyval.specifier) = MkSpecifierName(yytext); ;}
5661 /* Line 1464 of yacc.c */
5662 #line 594 "expression.y"
5663 { (yyval.specifier) = MkSpecifier(VOID); ;}
5668 /* Line 1464 of yacc.c */
5669 #line 595 "expression.y"
5670 { (yyval.specifier) = MkSpecifier(CHAR); ;}
5675 /* Line 1464 of yacc.c */
5676 #line 596 "expression.y"
5677 { (yyval.specifier) = MkSpecifier(SHORT); ;}
5682 /* Line 1464 of yacc.c */
5683 #line 597 "expression.y"
5684 { (yyval.specifier) = MkSpecifier(INT); ;}
5689 /* Line 1464 of yacc.c */
5690 #line 598 "expression.y"
5691 { (yyval.specifier) = MkSpecifier(UINT); ;}
5696 /* Line 1464 of yacc.c */
5697 #line 599 "expression.y"
5698 { (yyval.specifier) = MkSpecifier(INT64); ;}
5703 /* Line 1464 of yacc.c */
5704 #line 600 "expression.y"
5705 { (yyval.specifier) = MkSpecifier(VALIST); ;}
5710 /* Line 1464 of yacc.c */
5711 #line 601 "expression.y"
5712 { (yyval.specifier) = MkSpecifier(LONG); ;}
5717 /* Line 1464 of yacc.c */
5718 #line 602 "expression.y"
5719 { (yyval.specifier) = MkSpecifier(FLOAT); ;}
5724 /* Line 1464 of yacc.c */
5725 #line 603 "expression.y"
5726 { (yyval.specifier) = MkSpecifier(DOUBLE); ;}
5731 /* Line 1464 of yacc.c */
5732 #line 604 "expression.y"
5733 { (yyval.specifier) = MkSpecifier(SIGNED); ;}
5738 /* Line 1464 of yacc.c */
5739 #line 605 "expression.y"
5740 { (yyval.specifier) = MkSpecifier(UNSIGNED); ;}
5745 /* Line 1464 of yacc.c */
5746 #line 606 "expression.y"
5747 { (yyval.specifier) = MkSpecifier(EXTENSION); ;}
5752 /* Line 1464 of yacc.c */
5753 #line 607 "expression.y"
5754 { (yyval.specifier) = MkSpecifier(_BOOL); ;}
5759 /* Line 1464 of yacc.c */
5760 #line 608 "expression.y"
5761 { (yyval.specifier) = MkSpecifier(BOOL); ;}
5766 /* Line 1464 of yacc.c */
5767 #line 612 "expression.y"
5768 { (yyval.specifier) = MkSpecifierSubClass((yyvsp[(3) - (4)].specifier)); ;}
5773 /* Line 1464 of yacc.c */
5774 #line 613 "expression.y"
5775 { (yyval.specifier) = MkSpecifier(THISCLASS); ;}
5780 /* Line 1464 of yacc.c */
5781 #line 617 "expression.y"
5782 { (yyval.specifier) = MkSpecifier(VOID); ;}
5787 /* Line 1464 of yacc.c */
5788 #line 618 "expression.y"
5789 { (yyval.specifier) = MkSpecifier(CHAR); ;}
5794 /* Line 1464 of yacc.c */
5795 #line 619 "expression.y"
5796 { (yyval.specifier) = MkSpecifier(SHORT); ;}
5801 /* Line 1464 of yacc.c */
5802 #line 620 "expression.y"
5803 { (yyval.specifier) = MkSpecifier(INT); ;}
5808 /* Line 1464 of yacc.c */
5809 #line 621 "expression.y"
5810 { (yyval.specifier) = MkSpecifier(UINT); ;}
5815 /* Line 1464 of yacc.c */
5816 #line 622 "expression.y"
5817 { (yyval.specifier) = MkSpecifier(INT64); ;}
5822 /* Line 1464 of yacc.c */
5823 #line 623 "expression.y"
5824 { (yyval.specifier) = MkSpecifier(VALIST); ;}
5829 /* Line 1464 of yacc.c */
5830 #line 624 "expression.y"
5831 { (yyval.specifier) = MkSpecifier(LONG); ;}
5836 /* Line 1464 of yacc.c */
5837 #line 625 "expression.y"
5838 { (yyval.specifier) = MkSpecifier(FLOAT); ;}
5843 /* Line 1464 of yacc.c */
5844 #line 626 "expression.y"
5845 { (yyval.specifier) = MkSpecifier(DOUBLE); ;}
5850 /* Line 1464 of yacc.c */
5851 #line 627 "expression.y"
5852 { (yyval.specifier) = MkSpecifier(SIGNED); ;}
5857 /* Line 1464 of yacc.c */
5858 #line 628 "expression.y"
5859 { (yyval.specifier) = MkSpecifier(UNSIGNED); ;}
5864 /* Line 1464 of yacc.c */
5865 #line 629 "expression.y"
5866 { (yyval.specifier) = MkSpecifier(_BOOL); ;}
5871 /* Line 1464 of yacc.c */
5872 #line 630 "expression.y"
5873 { (yyval.specifier) = MkSpecifier(BOOL); ;}
5878 /* Line 1464 of yacc.c */
5879 #line 634 "expression.y"
5880 { (yyval.specifier) = MkSpecifierSubClass((yyvsp[(3) - (4)].specifier)); ;}
5885 /* Line 1464 of yacc.c */
5886 #line 635 "expression.y"
5887 { (yyval.specifier) = MkSpecifier(THISCLASS); ;}
5892 /* Line 1464 of yacc.c */
5893 #line 640 "expression.y"
5894 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (5)].specifierType), (yyvsp[(2) - (5)].id), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass((yyvsp[(2) - (5)].id)._class, (yyvsp[(2) - (5)].id).string); ;}
5899 /* Line 1464 of yacc.c */
5900 #line 641 "expression.y"
5901 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (4)].specifierType), null, (yyvsp[(3) - (4)].list)); ;}
5906 /* Line 1464 of yacc.c */
5907 #line 642 "expression.y"
5908 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (4)].specifierType), (yyvsp[(2) - (4)].id), null); if(declMode) DeclClass((yyvsp[(2) - (4)].id)._class, (yyvsp[(2) - (4)].id).string); ;}
5913 /* Line 1464 of yacc.c */
5914 #line 643 "expression.y"
5915 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (3)].specifierType), null, null); ;}
5920 /* Line 1464 of yacc.c */
5921 #line 645 "expression.y"
5922 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (5)].specifierType), MkIdentifier((yyvsp[(2) - (5)].specifier).name), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass((yyvsp[(2) - (5)].specifier).nsSpec, (yyvsp[(2) - (5)].specifier).name); FreeSpecifier((yyvsp[(2) - (5)].specifier)); ;}
5927 /* Line 1464 of yacc.c */
5928 #line 647 "expression.y"
5929 { (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((yyvsp[(3) - (6)].id)._class, (yyvsp[(3) - (6)].id).string); ;}
5934 /* Line 1464 of yacc.c */
5935 #line 648 "expression.y"
5936 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (5)].specifierType), null, (yyvsp[(4) - (5)].list)); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (5)].extDecl); ;}
5941 /* Line 1464 of yacc.c */
5942 #line 649 "expression.y"
5943 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (5)].specifierType), (yyvsp[(3) - (5)].id), null); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (5)].extDecl); if(declMode) DeclClass((yyvsp[(3) - (5)].id)._class, (yyvsp[(3) - (5)].id).string); ;}
5948 /* Line 1464 of yacc.c */
5949 #line 650 "expression.y"
5950 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (4)].specifierType), null, null); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (4)].extDecl); ;}
5955 /* Line 1464 of yacc.c */
5956 #line 652 "expression.y"
5957 { (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((yyvsp[(3) - (6)].specifier).nsSpec, (yyvsp[(3) - (6)].specifier).name); FreeSpecifier((yyvsp[(3) - (6)].specifier)); ;}
5962 /* Line 1464 of yacc.c */
5963 #line 656 "expression.y"
5964 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (2)].specifierType), (yyvsp[(2) - (2)].id), null); if(declMode) DeclClass((yyvsp[(2) - (2)].id)._class, (yyvsp[(2) - (2)].id).string); ;}
5969 /* Line 1464 of yacc.c */
5970 #line 658 "expression.y"
5971 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (2)].specifierType), MkIdentifier((yyvsp[(2) - (2)].specifier).name), null); if(declMode) DeclClass((yyvsp[(2) - (2)].specifier).nsSpec, (yyvsp[(2) - (2)].specifier).name); FreeSpecifier((yyvsp[(2) - (2)].specifier)); ;}
5976 /* Line 1464 of yacc.c */
5977 #line 661 "expression.y"
5978 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (3)].specifierType), (yyvsp[(3) - (3)].id), null); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (3)].extDecl);if(declMode) DeclClass((yyvsp[(3) - (3)].id)._class, (yyvsp[(3) - (3)].id).string); ;}
5983 /* Line 1464 of yacc.c */
5984 #line 663 "expression.y"
5985 { (yyval.specifier) = MkStructOrUnion((yyvsp[(1) - (3)].specifierType), MkIdentifier((yyvsp[(3) - (3)].specifier).name), null); (yyval.specifier).extDeclStruct = (yyvsp[(2) - (3)].extDecl); if(declMode) DeclClass((yyvsp[(3) - (3)].specifier).nsSpec, (yyvsp[(3) - (3)].specifier).name); FreeSpecifier((yyvsp[(3) - (3)].specifier)); ;}
5990 /* Line 1464 of yacc.c */
5991 #line 667 "expression.y"
5992 { (yyval.specifierType) = structSpecifier; ;}
5997 /* Line 1464 of yacc.c */
5998 #line 668 "expression.y"
5999 { (yyval.specifierType) = unionSpecifier; ;}
6004 /* Line 1464 of yacc.c */
6005 #line 672 "expression.y"
6006 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].classDef)); ;}
6011 /* Line 1464 of yacc.c */
6012 #line 673 "expression.y"
6013 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].classDef)); ;}
6018 /* Line 1464 of yacc.c */
6019 #line 677 "expression.y"
6020 { (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; ;}
6025 /* Line 1464 of yacc.c */
6026 #line 681 "expression.y"
6027 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].memberInit)); ((MemberInit)(yyval.list)->last).loc = (yyloc); ;}
6032 /* Line 1464 of yacc.c */
6033 #line 682 "expression.y"
6034 { (yyval.list) = (yyvsp[(1) - (3)].list); ((MemberInit)(yyvsp[(1) - (3)].list)->last).loc.end = (yylsp[(3) - (3)]).start; ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].memberInit)); ;}
6039 /* Line 1464 of yacc.c */
6040 #line 687 "expression.y"
6041 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), null, (yyvsp[(3) - (9)].id), (yyvsp[(6) - (9)].stmt), (yyvsp[(8) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
6046 /* Line 1464 of yacc.c */
6047 #line 689 "expression.y"
6048 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), null, (yyvsp[(3) - (9)].id), (yyvsp[(8) - (9)].stmt), (yyvsp[(6) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
6053 /* Line 1464 of yacc.c */
6054 #line 691 "expression.y"
6055 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), null, (yyvsp[(3) - (7)].id), (yyvsp[(6) - (7)].stmt), null); (yyval.prop).loc = (yyloc); ;}
6060 /* Line 1464 of yacc.c */
6061 #line 693 "expression.y"
6062 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), null, (yyvsp[(3) - (7)].id), null, (yyvsp[(6) - (7)].stmt)); (yyval.prop).loc = (yyloc); ;}
6067 /* Line 1464 of yacc.c */
6068 #line 695 "expression.y"
6069 { (yyval.prop) = MkProperty((yyvsp[(2) - (5)].list), null, (yyvsp[(3) - (5)].id), null, null); (yyval.prop).loc = (yyloc); ;}
6074 /* Line 1464 of yacc.c */
6075 #line 698 "expression.y"
6076 { (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); ;}
6081 /* Line 1464 of yacc.c */
6082 #line 700 "expression.y"
6083 { (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); ;}
6088 /* Line 1464 of yacc.c */
6089 #line 702 "expression.y"
6090 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), (yyvsp[(3) - (8)].declarator), (yyvsp[(4) - (8)].id), (yyvsp[(7) - (8)].stmt), null); (yyval.prop).loc = (yyloc); ;}
6095 /* Line 1464 of yacc.c */
6096 #line 704 "expression.y"
6097 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), (yyvsp[(3) - (8)].declarator), (yyvsp[(4) - (8)].id), null, (yyvsp[(7) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
6102 /* Line 1464 of yacc.c */
6103 #line 706 "expression.y"
6104 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), (yyvsp[(3) - (6)].declarator), (yyvsp[(4) - (6)].id), null, null); (yyval.prop).loc = (yyloc); ;}
6109 /* Line 1464 of yacc.c */
6110 #line 709 "expression.y"
6111 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), null, null, (yyvsp[(5) - (8)].stmt), (yyvsp[(7) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
6116 /* Line 1464 of yacc.c */
6117 #line 711 "expression.y"
6118 { (yyval.prop) = MkProperty((yyvsp[(2) - (8)].list), null, null, (yyvsp[(7) - (8)].stmt), (yyvsp[(5) - (8)].stmt)); (yyval.prop).loc = (yyloc); ;}
6123 /* Line 1464 of yacc.c */
6124 #line 713 "expression.y"
6125 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), null, null, (yyvsp[(5) - (6)].stmt), null); (yyval.prop).loc = (yyloc); ;}
6130 /* Line 1464 of yacc.c */
6131 #line 715 "expression.y"
6132 { (yyval.prop) = MkProperty((yyvsp[(2) - (6)].list), null, null, null, (yyvsp[(5) - (6)].stmt)); (yyval.prop).loc = (yyloc); ;}
6137 /* Line 1464 of yacc.c */
6138 #line 717 "expression.y"
6139 { (yyval.prop) = MkProperty((yyvsp[(2) - (4)].list), null, null, null, null); (yyval.prop).loc = (yyloc); ;}
6144 /* Line 1464 of yacc.c */
6145 #line 720 "expression.y"
6146 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), (yyvsp[(3) - (9)].declarator), null, (yyvsp[(6) - (9)].stmt), (yyvsp[(8) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
6151 /* Line 1464 of yacc.c */
6152 #line 722 "expression.y"
6153 { (yyval.prop) = MkProperty((yyvsp[(2) - (9)].list), (yyvsp[(3) - (9)].declarator), null, (yyvsp[(8) - (9)].stmt), (yyvsp[(6) - (9)].stmt)); (yyval.prop).loc = (yyloc); ;}
6158 /* Line 1464 of yacc.c */
6159 #line 724 "expression.y"
6160 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), (yyvsp[(3) - (7)].declarator), null, (yyvsp[(6) - (7)].stmt), null); (yyval.prop).loc = (yyloc); ;}
6165 /* Line 1464 of yacc.c */
6166 #line 726 "expression.y"
6167 { (yyval.prop) = MkProperty((yyvsp[(2) - (7)].list), (yyvsp[(3) - (7)].declarator), null, null, (yyvsp[(6) - (7)].stmt)); (yyval.prop).loc = (yyloc); ;}
6172 /* Line 1464 of yacc.c */
6173 #line 728 "expression.y"
6174 { (yyval.prop) = MkProperty((yyvsp[(2) - (5)].list), (yyvsp[(3) - (5)].declarator), null, null, null); (yyval.prop).loc = (yyloc); ;}
6179 /* Line 1464 of yacc.c */
6180 #line 732 "expression.y"
6181 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[(1) - (3)].list), (yyvsp[(2) - (3)].list), null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); ;}
6186 /* Line 1464 of yacc.c */
6187 #line 733 "expression.y"
6188 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[(1) - (2)].list), null, null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); ;}
6193 /* Line 1464 of yacc.c */
6194 #line 734 "expression.y"
6195 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[(1) - (2)].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); ;}
6200 /* Line 1464 of yacc.c */
6201 #line 735 "expression.y"
6202 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[(1) - (2)].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); ;}
6207 /* Line 1464 of yacc.c */
6208 #line 736 "expression.y"
6209 { (yyval.classDef) = MkClassDefFunction((yyvsp[(1) - (1)].classFunction)); (yyval.classDef).loc = (yyloc); ;}
6214 /* Line 1464 of yacc.c */
6215 #line 737 "expression.y"
6216 { (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); ;}
6221 /* Line 1464 of yacc.c */
6222 #line 738 "expression.y"
6223 { (yyval.classDef) = MkClassDefProperty((yyvsp[(1) - (1)].prop)); (yyval.classDef).loc = (yyloc); ;}
6228 /* Line 1464 of yacc.c */
6229 #line 739 "expression.y"
6230 { (yyval.classDef) = null; ;}
6235 /* Line 1464 of yacc.c */
6236 #line 744 "expression.y"
6237 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].declarator)); ;}
6242 /* Line 1464 of yacc.c */
6243 #line 746 "expression.y"
6244 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].declarator)); ;}
6249 /* Line 1464 of yacc.c */
6250 #line 751 "expression.y"
6251 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (1)].declarator), null); (yyval.declarator).loc = (yyloc); ;}
6256 /* Line 1464 of yacc.c */
6257 #line 753 "expression.y"
6258 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (2)].declarator), null); (yyval.declarator).structDecl.attrib = (yyvsp[(2) - (2)].attrib); (yyval.declarator).loc = (yyloc); ;}
6263 /* Line 1464 of yacc.c */
6264 #line 755 "expression.y"
6265 { (yyval.declarator) = MkStructDeclarator(null, (yyvsp[(2) - (2)].exp)); (yyval.declarator).loc = (yyloc); ;}
6270 /* Line 1464 of yacc.c */
6271 #line 757 "expression.y"
6272 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (3)].declarator), (yyvsp[(3) - (3)].exp)); (yyval.declarator).loc = (yyloc); ;}
6277 /* Line 1464 of yacc.c */
6278 #line 759 "expression.y"
6279 { (yyval.declarator) = MkStructDeclarator((yyvsp[(1) - (5)].declarator), (yyvsp[(3) - (5)].exp)); (yyval.declarator).structDecl.posExp = (yyvsp[(5) - (5)].exp); (yyval.declarator).loc = (yyloc); ;}
6284 /* Line 1464 of yacc.c */
6285 #line 763 "expression.y"
6286 { (yyval.specifier) = MkEnum((yyvsp[(2) - (2)].id), null); if(declMode) DeclClass((yyvsp[(2) - (2)].id)._class, (yyvsp[(2) - (2)].id).string); ;}
6291 /* Line 1464 of yacc.c */
6292 #line 764 "expression.y"
6293 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[(2) - (2)].specifier).name), null); if(declMode) DeclClass((yyvsp[(2) - (2)].specifier).nsSpec, (yyvsp[(2) - (2)].specifier).name); FreeSpecifier((yyvsp[(2) - (2)].specifier)); ;}
6298 /* Line 1464 of yacc.c */
6299 #line 769 "expression.y"
6300 { (yyval.specifier) = MkEnum(null, (yyvsp[(3) - (4)].list)); ;}
6305 /* Line 1464 of yacc.c */
6306 #line 770 "expression.y"
6307 { (yyval.specifier) = MkEnum((yyvsp[(2) - (5)].id), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass((yyvsp[(2) - (5)].id)._class, (yyvsp[(2) - (5)].id).string); ;}
6312 /* Line 1464 of yacc.c */
6313 #line 771 "expression.y"
6314 { (yyval.specifier) = MkEnum((yyvsp[(2) - (7)].id), (yyvsp[(4) - (7)].list)); (yyval.specifier).definitions = (yyvsp[(6) - (7)].list); if(declMode) DeclClass((yyvsp[(2) - (7)].id)._class, (yyvsp[(2) - (7)].id).string); ;}
6319 /* Line 1464 of yacc.c */
6320 #line 772 "expression.y"
6321 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[(2) - (7)].specifier).name), (yyvsp[(4) - (7)].list)); (yyval.specifier).definitions = (yyvsp[(6) - (7)].list); if(declMode) DeclClass((yyvsp[(2) - (7)].specifier).nsSpec, (yyvsp[(2) - (7)].specifier).name); FreeSpecifier((yyvsp[(2) - (7)].specifier)); ;}
6326 /* Line 1464 of yacc.c */
6327 #line 773 "expression.y"
6328 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[(2) - (5)].specifier).name), (yyvsp[(4) - (5)].list)); if(declMode) DeclClass((yyvsp[(2) - (5)].specifier).nsSpec, (yyvsp[(2) - (5)].specifier).name); FreeSpecifier((yyvsp[(2) - (5)].specifier)); ;}
6333 /* Line 1464 of yacc.c */
6334 #line 778 "expression.y"
6335 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].enumerator)); ;}
6340 /* Line 1464 of yacc.c */
6341 #line 780 "expression.y"
6342 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].enumerator)); ;}
6347 /* Line 1464 of yacc.c */
6348 #line 785 "expression.y"
6349 { (yyval.enumerator) = MkEnumerator((yyvsp[(1) - (1)].id), null); ;}
6354 /* Line 1464 of yacc.c */
6355 #line 787 "expression.y"
6356 { (yyval.enumerator) = MkEnumerator((yyvsp[(1) - (3)].id), (yyvsp[(3) - (3)].exp)); ;}
6361 /* Line 1464 of yacc.c */
6362 #line 793 "expression.y"
6363 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
6368 /* Line 1464 of yacc.c */
6369 #line 795 "expression.y"
6370 { (yyval.declarator) = MkDeclaratorArray(null, null); ;}
6375 /* Line 1464 of yacc.c */
6376 #line 797 "expression.y"
6377 { (yyval.declarator) = MkDeclaratorArray(null, (yyvsp[(2) - (3)].exp)); ;}
6382 /* Line 1464 of yacc.c */
6383 #line 799 "expression.y"
6384 { (yyval.declarator) = MkDeclaratorEnumArray(null, (yyvsp[(2) - (3)].specifier)); ;}
6389 /* Line 1464 of yacc.c */
6390 #line 801 "expression.y"
6391 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (3)].declarator), null); ;}
6396 /* Line 1464 of yacc.c */
6397 #line 803 "expression.y"
6398 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].exp)); ;}
6403 /* Line 1464 of yacc.c */
6404 #line 805 "expression.y"
6405 { (yyval.declarator) = MkDeclaratorEnumArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].specifier)); ;}
6410 /* Line 1464 of yacc.c */
6411 #line 807 "expression.y"
6412 { (yyval.declarator) = MkDeclaratorFunction(null, null); ;}
6417 /* Line 1464 of yacc.c */
6418 #line 809 "expression.y"
6419 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[(2) - (3)].list)); ;}
6424 /* Line 1464 of yacc.c */
6425 #line 811 "expression.y"
6426 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), null); ;}
6431 /* Line 1464 of yacc.c */
6432 #line 813 "expression.y"
6433 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].list)); ;}
6438 /* Line 1464 of yacc.c */
6439 #line 818 "expression.y"
6440 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
6445 /* Line 1464 of yacc.c */
6446 #line 820 "expression.y"
6447 { (yyval.declarator) = MkDeclaratorFunction(null, null); ;}
6452 /* Line 1464 of yacc.c */
6453 #line 822 "expression.y"
6454 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[(2) - (3)].list)); ;}
6459 /* Line 1464 of yacc.c */
6460 #line 824 "expression.y"
6461 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), null); ;}
6466 /* Line 1464 of yacc.c */
6467 #line 826 "expression.y"
6468 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].list)); ;}
6473 /* Line 1464 of yacc.c */
6474 #line 830 "expression.y"
6475 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (1)].pointer), null); ;}
6480 /* Line 1464 of yacc.c */
6481 #line 832 "expression.y"
6482 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
6487 /* Line 1464 of yacc.c */
6488 #line 833 "expression.y"
6489 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (2)].pointer), null)); ;}
6494 /* Line 1464 of yacc.c */
6495 #line 834 "expression.y"
6496 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
6501 /* Line 1464 of yacc.c */
6502 #line 835 "expression.y"
6503 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
6508 /* Line 1464 of yacc.c */
6509 #line 839 "expression.y"
6510 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (1)].pointer), null); ;}
6515 /* Line 1464 of yacc.c */
6516 #line 841 "expression.y"
6517 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
6522 /* Line 1464 of yacc.c */
6523 #line 842 "expression.y"
6524 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (2)].pointer), null)); ;}
6529 /* Line 1464 of yacc.c */
6530 #line 843 "expression.y"
6531 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
6536 /* Line 1464 of yacc.c */
6537 #line 844 "expression.y"
6538 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
6543 /* Line 1464 of yacc.c */
6544 #line 892 "expression.y"
6545 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
6550 /* Line 1464 of yacc.c */
6551 #line 894 "expression.y"
6552 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
6557 /* Line 1464 of yacc.c */
6558 #line 900 "expression.y"
6559 { (yyval.declarator) = MkDeclaratorIdentifier((yyvsp[(1) - (1)].id)); ;}
6564 /* Line 1464 of yacc.c */
6565 #line 902 "expression.y"
6566 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[(2) - (3)].declarator)); ;}
6571 /* Line 1464 of yacc.c */
6572 #line 904 "expression.y"
6573 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].exp)); ;}
6578 /* Line 1464 of yacc.c */
6579 #line 906 "expression.y"
6580 { (yyval.declarator) = MkDeclaratorArray((yyvsp[(1) - (3)].declarator), null); ;}
6585 /* Line 1464 of yacc.c */
6586 #line 908 "expression.y"
6587 { (yyval.declarator) = MkDeclaratorEnumArray((yyvsp[(1) - (4)].declarator), (yyvsp[(3) - (4)].specifier)); ;}
6592 /* Line 1464 of yacc.c */
6593 #line 914 "expression.y"
6594 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (2)].pointer), (yyvsp[(2) - (2)].declarator)); ;}
6599 /* Line 1464 of yacc.c */
6600 #line 917 "expression.y"
6601 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
6606 /* Line 1464 of yacc.c */
6607 #line 919 "expression.y"
6608 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (3)].extDecl), MkDeclaratorPointer((yyvsp[(2) - (3)].pointer), (yyvsp[(3) - (3)].declarator))); ;}
6613 /* Line 1464 of yacc.c */
6614 #line 921 "expression.y"
6615 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[(1) - (3)].pointer), MkDeclaratorExtended((yyvsp[(2) - (3)].extDecl), (yyvsp[(3) - (3)].declarator))); ;}
6620 /* Line 1464 of yacc.c */
6621 #line 929 "expression.y"
6622 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
6627 /* Line 1464 of yacc.c */
6628 #line 931 "expression.y"
6629 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[(1) - (2)].extDecl), (yyvsp[(2) - (2)].declarator)); ;}
6634 /* Line 1464 of yacc.c */
6635 #line 940 "expression.y"
6636 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), (yyvsp[(2) - (3)].list)); ;}
6641 /* Line 1464 of yacc.c */
6642 #line 942 "expression.y"
6643 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (3)].declarator), (yyvsp[(2) - (3)].list)); ;}
6648 /* Line 1464 of yacc.c */
6649 #line 944 "expression.y"
6650 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[(1) - (2)].declarator), null); ;}
6655 /* Line 1464 of yacc.c */
6656 #line 948 "expression.y"
6657 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].specifier)); ;}
6662 /* Line 1464 of yacc.c */
6663 #line 949 "expression.y"
6664 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].specifier)); ;}
6669 /* Line 1464 of yacc.c */
6670 #line 953 "expression.y"
6671 { (yyval.pointer) = MkPointer(null, null); ;}
6676 /* Line 1464 of yacc.c */
6677 #line 954 "expression.y"
6678 { (yyval.pointer) = MkPointer((yyvsp[(2) - (2)].list), null); ;}
6683 /* Line 1464 of yacc.c */
6684 #line 955 "expression.y"
6685 { (yyval.pointer) = MkPointer(null, (yyvsp[(2) - (2)].pointer)); ;}
6690 /* Line 1464 of yacc.c */
6691 #line 956 "expression.y"
6692 { (yyval.pointer) = MkPointer((yyvsp[(2) - (3)].list), (yyvsp[(3) - (3)].pointer)); ;}
6697 /* Line 1464 of yacc.c */
6698 #line 961 "expression.y"
6699 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), MkTypeName(null, null)); ;}
6704 /* Line 1464 of yacc.c */
6705 #line 965 "expression.y"
6706 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].typeName)); ;}
6711 /* Line 1464 of yacc.c */
6712 #line 966 "expression.y"
6713 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typeName)); ;}
6718 /* Line 1464 of yacc.c */
6719 #line 970 "expression.y"
6720 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
6725 /* Line 1464 of yacc.c */
6726 #line 971 "expression.y"
6727 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
6732 /* Line 1464 of yacc.c */
6733 #line 972 "expression.y"
6734 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (1)].list), null); ;}
6739 /* Line 1464 of yacc.c */
6740 #line 976 "expression.y"
6741 { (yyval.list) = MkList(); ListAdd((yyval.list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[(1) - (1)].id)))); ;}
6746 /* Line 1464 of yacc.c */
6747 #line 977 "expression.y"
6748 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[(3) - (3)].id)))); ;}
6753 /* Line 1464 of yacc.c */
6754 #line 981 "expression.y"
6755 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (1)].list), null); ;}
6760 /* Line 1464 of yacc.c */
6761 #line 982 "expression.y"
6762 { (yyval.typeName) = MkTypeName((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declarator)); ;}
6767 /* Line 1464 of yacc.c */
6768 #line 992 "expression.y"
6769 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
6774 /* Line 1464 of yacc.c */
6775 #line 994 "expression.y"
6776 { (yyval.initializer) = MkInitializerList((yyvsp[(2) - (3)].list)); (yyval.initializer).loc = (yyloc); ;}
6781 /* Line 1464 of yacc.c */
6782 #line 996 "expression.y"
6784 (yyval.initializer) = MkInitializerList((yyvsp[(2) - (4)].list));
6785 (yyval.initializer).loc = (yyloc);
6788 Expression exp = MkExpDummy();
6789 Initializer init = MkInitializerAssignment(exp);
6790 init.loc = (yylsp[(3) - (4)]);
6791 exp.loc = (yylsp[(3) - (4)]);
6792 ListAdd((yyvsp[(2) - (4)].list), init);
6799 /* Line 1464 of yacc.c */
6800 #line 1011 "expression.y"
6801 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
6806 /* Line 1464 of yacc.c */
6807 #line 1013 "expression.y"
6808 { (yyval.initializer) = MkInitializerAssignment((yyvsp[(1) - (1)].exp)); (yyval.initializer).loc = (yyloc); ;}
6813 /* Line 1464 of yacc.c */
6814 #line 1034 "expression.y"
6815 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].initializer)); ;}
6820 /* Line 1464 of yacc.c */
6821 #line 1036 "expression.y"
6822 { (yyval.list) = (yyvsp[(1) - (3)].list); ListAdd((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].initializer)); ;}
6827 /* Line 1464 of yacc.c */
6828 #line 1050 "expression.y"
6829 { (yyval.stmt) = MkLabeledStmt((yyvsp[(1) - (3)].id), (yyvsp[(3) - (3)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6834 /* Line 1464 of yacc.c */
6835 #line 1052 "expression.y"
6836 { (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; ;}
6841 /* Line 1464 of yacc.c */
6842 #line 1054 "expression.y"
6843 { (yyval.stmt) = MkCaseStmt(null, (yyvsp[(3) - (3)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6848 /* Line 1464 of yacc.c */
6849 #line 1058 "expression.y"
6850 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].declaration)); ;}
6855 /* Line 1464 of yacc.c */
6856 #line 1059 "expression.y"
6857 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].declaration)); ;}
6862 /* Line 1464 of yacc.c */
6863 #line 1063 "expression.y"
6864 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].stmt)); ;}
6869 /* Line 1464 of yacc.c */
6870 #line 1064 "expression.y"
6871 { (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].stmt)); ;}
6876 /* Line 1464 of yacc.c */
6877 #line 1067 "expression.y"
6878 { 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); ;}
6883 /* Line 1464 of yacc.c */
6884 #line 1071 "expression.y"
6885 { (yyval.stmt) = MkCompoundStmt(null, (yyvsp[(1) - (1)].list)); ;}
6890 /* Line 1464 of yacc.c */
6891 #line 1072 "expression.y"
6892 { (yyval.stmt) = MkCompoundStmt((yyvsp[(1) - (1)].list), null); ;}
6897 /* Line 1464 of yacc.c */
6898 #line 1073 "expression.y"
6899 { (yyval.stmt) = MkCompoundStmt((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].list)); ;}
6904 /* Line 1464 of yacc.c */
6905 #line 1077 "expression.y"
6906 { (yyval.context) = PushContext(); ;}
6911 /* Line 1464 of yacc.c */
6912 #line 1082 "expression.y"
6914 (yyval.stmt) = MkCompoundStmt(null, null);
6915 (yyval.stmt).compound.context = PushContext();
6916 PopContext((yyval.stmt).compound.context);
6917 (yyval.stmt).loc = (yyloc);
6923 /* Line 1464 of yacc.c */
6924 #line 1090 "expression.y"
6925 { (yyval.stmt) = (yyvsp[(2) - (3)].stmt); (yyval.stmt).compound.context = (yyvsp[(1) - (3)].context); PopContext((yyvsp[(1) - (3)].context)); (yyval.stmt).loc = (yyloc); ;}
6930 /* Line 1464 of yacc.c */
6931 #line 1094 "expression.y"
6932 { (yyval.stmt) = MkExpressionStmt(null); (yyval.stmt).loc = (yyloc); ;}
6937 /* Line 1464 of yacc.c */
6938 #line 1095 "expression.y"
6939 { (yyval.stmt) = MkExpressionStmt((yyvsp[(1) - (2)].list)); (yyval.stmt).loc = (yyloc); ;}
6944 /* Line 1464 of yacc.c */
6945 #line 1099 "expression.y"
6946 { (yyval.stmt) = MkIfStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt), null); (yyval.stmt).loc = (yyloc); ;}
6951 /* Line 1464 of yacc.c */
6952 #line 1100 "expression.y"
6953 { (yyval.stmt) = MkIfStmt((yyvsp[(3) - (7)].list), (yyvsp[(5) - (7)].stmt), (yyvsp[(7) - (7)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6958 /* Line 1464 of yacc.c */
6959 #line 1101 "expression.y"
6960 { (yyval.stmt) = MkSwitchStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6965 /* Line 1464 of yacc.c */
6966 #line 1105 "expression.y"
6967 { (yyval.stmt) = MkWhileStmt((yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6972 /* Line 1464 of yacc.c */
6973 #line 1106 "expression.y"
6974 { (yyval.stmt) = MkDoWhileStmt((yyvsp[(2) - (7)].stmt), (yyvsp[(5) - (7)].list)); (yyval.stmt).loc = (yyloc); ;}
6979 /* Line 1464 of yacc.c */
6980 #line 1107 "expression.y"
6981 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (6)].stmt), (yyvsp[(4) - (6)].stmt), null, (yyvsp[(6) - (6)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6986 /* Line 1464 of yacc.c */
6987 #line 1108 "expression.y"
6988 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (7)].stmt), (yyvsp[(4) - (7)].stmt), (yyvsp[(5) - (7)].list), (yyvsp[(7) - (7)].stmt)); (yyval.stmt).loc = (yyloc); ;}
6993 /* Line 1464 of yacc.c */
6994 #line 1110 "expression.y"
6995 { (yyval.stmt) = MkWhileStmt(null, (yyvsp[(4) - (4)].stmt)); (yyval.stmt).loc = (yyloc); ;}
7000 /* Line 1464 of yacc.c */
7001 #line 1111 "expression.y"
7002 { (yyval.stmt) = MkForStmt((yyvsp[(3) - (5)].stmt), null, null, (yyvsp[(5) - (5)].stmt)); (yyval.stmt).loc = (yyloc); ;}
7007 /* Line 1464 of yacc.c */
7008 #line 1112 "expression.y"
7009 { (yyval.stmt) = MkForStmt(null, null, null, (yyvsp[(4) - (4)].stmt)); (yyval.stmt).loc = (yyloc); ;}
7014 /* Line 1464 of yacc.c */
7015 #line 1116 "expression.y"
7016 { (yyval.stmt) = MkGotoStmt((yyvsp[(2) - (3)].id)); (yyval.stmt).loc = (yyloc); ;}
7021 /* Line 1464 of yacc.c */
7022 #line 1117 "expression.y"
7023 { (yyval.stmt) = MkContinueStmt(); (yyval.stmt).loc = (yyloc); ;}
7028 /* Line 1464 of yacc.c */
7029 #line 1118 "expression.y"
7030 { (yyval.stmt) = MkBreakStmt(); (yyval.stmt).loc = (yyloc); ;}
7035 /* Line 1464 of yacc.c */
7036 #line 1119 "expression.y"
7037 { Expression exp = MkExpDummy(); (yyval.stmt) = MkReturnStmt(MkListOne(exp)); (yyval.stmt).loc = (yyloc); exp.loc = (yylsp[(2) - (2)]); ;}
7042 /* Line 1464 of yacc.c */
7043 #line 1120 "expression.y"
7044 { (yyval.stmt) = MkReturnStmt((yyvsp[(2) - (3)].list)); (yyval.stmt).loc = (yyloc); ;}
7049 /* Line 1464 of yacc.c */
7050 #line 1124 "expression.y"
7051 { (yyval.string) = CopyString(yytext); ;}
7056 /* Line 1464 of yacc.c */
7057 #line 1129 "expression.y"
7058 { (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;;}
7063 /* Line 1464 of yacc.c */
7064 #line 1131 "expression.y"
7065 { (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;;}
7070 /* Line 1464 of yacc.c */
7071 #line 1136 "expression.y"
7072 { (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; ;}
7077 /* Line 1464 of yacc.c */
7078 #line 1138 "expression.y"
7079 { (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;;}
7084 /* Line 1464 of yacc.c */
7085 #line 1140 "expression.y"
7086 { 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)); ;}
7091 /* Line 1464 of yacc.c */
7092 #line 1142 "expression.y"
7093 { 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)); ;}
7098 /* Line 1464 of yacc.c */
7099 #line 1147 "expression.y"
7100 { (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; ;}
7105 /* Line 1464 of yacc.c */
7106 #line 1149 "expression.y"
7107 { (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;;}
7112 /* Line 1464 of yacc.c */
7113 #line 1154 "expression.y"
7114 { (yyval.classFunction) = MkClassFunction((yyvsp[(1) - (2)].list), null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).loc = (yyloc); ;}
7119 /* Line 1464 of yacc.c */
7120 #line 1156 "expression.y"
7121 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[(1) - (1)].declarator), null); (yyval.classFunction).loc = (yyloc); ;}
7126 /* Line 1464 of yacc.c */
7127 #line 1161 "expression.y"
7128 { (yyval.classFunction) = MkClassFunction(null, null, null, null); (yyval.classFunction).isConstructor = true; (yyval.classFunction).loc = (yyloc); FreeList /*FreeSpecifier*/((yyvsp[(1) - (3)].list), FreeSpecifier); ;}
7133 /* Line 1464 of yacc.c */
7134 #line 1166 "expression.y"
7135 { (yyval.classFunction) = MkClassFunction(null, null, null, null); (yyval.classFunction).isDestructor = true; (yyval.classFunction).loc = (yyloc); FreeList /*FreeSpecifier*/((yyvsp[(2) - (4)].list), FreeSpecifier); ;}
7140 /* Line 1464 of yacc.c */
7141 #line 1171 "expression.y"
7142 { (yyval.classFunction) = MkClassFunction((yyvsp[(2) - (3)].list), null, (yyvsp[(3) - (3)].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); ;}
7147 /* Line 1464 of yacc.c */
7148 #line 1173 "expression.y"
7149 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); ;}
7154 /* Line 1464 of yacc.c */
7155 #line 1178 "expression.y"
7156 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
7161 /* Line 1464 of yacc.c */
7162 #line 1180 "expression.y"
7163 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
7168 /* Line 1464 of yacc.c */
7169 #line 1182 "expression.y"
7170 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), null); (yyval.classFunction).loc = (yyloc); ;}
7175 /* Line 1464 of yacc.c */
7176 #line 1184 "expression.y"
7177 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
7182 /* Line 1464 of yacc.c */
7183 #line 1186 "expression.y"
7184 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
7189 /* Line 1464 of yacc.c */
7190 #line 1192 "expression.y"
7191 { (yyval.classFunction) = MkClassFunction((yyvsp[(1) - (2)].list), null, (yyvsp[(2) - (2)].declarator), null); (yyval.classFunction).loc = (yyloc); ;}
7196 /* Line 1464 of yacc.c */
7197 #line 1197 "expression.y"
7198 { ProcessClassFunctionBody((yyvsp[(1) - (2)].classFunction), (yyvsp[(2) - (2)].stmt)); (yyval.classFunction).loc = (yyloc); ;}
7203 /* Line 1464 of yacc.c */
7204 #line 1201 "expression.y"
7205 { (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;;}
7210 /* Line 1464 of yacc.c */
7211 #line 1202 "expression.y"
7212 { (yyval.memberInit) = MkMemberInit(null, (yyvsp[(1) - (1)].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc);;}
7217 /* Line 1464 of yacc.c */
7218 #line 1207 "expression.y"
7219 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[(1) - (1)].memberInit)); ;}
7224 /* Line 1464 of yacc.c */
7225 #line 1209 "expression.y"
7226 { ((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); ;}
7231 /* Line 1464 of yacc.c */
7232 #line 1214 "expression.y"
7233 { if((yyvsp[(1) - (2)].list)->last) ((MemberInit)(yyvsp[(1) - (2)].list)->last).loc.end = (yylsp[(2) - (2)]).end; (yyval.list) = (yyvsp[(1) - (2)].list); ;}
7238 /* Line 1464 of yacc.c */
7239 #line 1218 "expression.y"
7240 { MembersInit members = MkMembersInitList((yyvsp[(1) - (1)].list)); (yyval.list) = MkList(); ListAdd((yyval.list), members); members.loc = (yylsp[(1) - (1)]); ;}
7245 /* Line 1464 of yacc.c */
7246 #line 1219 "expression.y"
7247 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitMethod((yyvsp[(1) - (1)].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(1) - (1)]); ;}
7252 /* Line 1464 of yacc.c */
7253 #line 1220 "expression.y"
7254 { MembersInit members = MkMembersInitList((yyvsp[(2) - (2)].list)); ListAdd((yyval.list), members); members.loc = (yylsp[(2) - (2)]); (yyval.list) = (yyvsp[(1) - (2)].list); ;}
7259 /* Line 1464 of yacc.c */
7260 #line 1221 "expression.y"
7261 { ListAdd((yyval.list), MkMembersInitMethod((yyvsp[(2) - (2)].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(2) - (2)]); (yyval.list) = (yyvsp[(1) - (2)].list); ;}
7266 /* Line 1464 of yacc.c */
7267 #line 1222 "expression.y"
7268 { MembersInit members = MkMembersInitList(MkList()); (yyval.list) = MkList(); ListAdd((yyval.list), members); members.loc = (yylsp[(1) - (1)]); ;}
7273 /* Line 1464 of yacc.c */
7274 #line 1223 "expression.y"
7275 { MembersInit members = MkMembersInitList(MkList()); ListAdd((yyval.list), members); members.loc = (yylsp[(2) - (2)]); (yyval.list) = (yyvsp[(1) - (2)].list); ;}
7280 /* Line 1464 of yacc.c */
7281 #line 1228 "expression.y"
7282 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitList((yyvsp[(1) - (1)].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(1) - (1)]); ;}
7287 /* Line 1464 of yacc.c */
7288 #line 1229 "expression.y"
7289 { ListAdd((yyvsp[(1) - (2)].list), MkMembersInitList((yyvsp[(2) - (2)].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[(2) - (2)]); ;}
7294 /* Line 1464 of yacc.c */
7295 #line 1233 "expression.y"
7296 { parsedExpression = (yyvsp[(1) - (1)].exp); ;}
7301 /* Line 1464 of yacc.c */
7302 #line 7303 "expression.ec"
7305 YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
7309 YY_STACK_PRINT (yyss, yyssp);
7314 /* Now `shift' the result of the reduction. Determine what state
7315 that goes to, based on the state we popped back to and the rule
7316 number reduced by. */
7320 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
7321 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
7322 yystate = yytable[yystate];
7324 yystate = yydefgoto[yyn - YYNTOKENS];
7329 /*------------------------------------.
7330 | yyerrlab -- here on detecting error |
7331 `------------------------------------*/
7333 /* If not already recovering from an error, report this error. */
7337 #if ! YYERROR_VERBOSE
7338 yyerror (YY_("syntax error"));
7341 YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
7342 if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
7344 YYSIZE_T yyalloc = 2 * yysize;
7345 if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
7346 yyalloc = YYSTACK_ALLOC_MAXIMUM;
7347 if (yymsg != yymsgbuf)
7348 YYSTACK_FREE (yymsg);
7349 yymsg = (char *) YYSTACK_ALLOC (yyalloc);
7351 yymsg_alloc = yyalloc;
7355 yymsg_alloc = sizeof yymsgbuf;
7359 if (0 < yysize && yysize <= yymsg_alloc)
7361 (void) yysyntax_error (yymsg, yystate, yychar);
7366 yyerror (YY_("syntax error"));
7368 goto yyexhaustedlab;
7374 yyerror_range[0] = yylloc;
7376 if (yyerrstatus == 3)
7378 /* If just tried and failed to reuse lookahead token after an
7379 error, discard it. */
7381 if (yychar <= YYEOF)
7383 /* Return failure if at end of input. */
7384 if (yychar == YYEOF)
7389 yydestruct ("Error: discarding",
7390 yytoken, &yylval, &yylloc);
7395 /* Else will try to reuse lookahead token after shifting the error
7400 /*---------------------------------------------------.
7401 | yyerrorlab -- error raised explicitly by YYERROR. |
7402 `---------------------------------------------------*/
7405 /* Pacify compilers like GCC when the user code never invokes
7406 YYERROR and the label yyerrorlab therefore never appears in user
7408 if (/*CONSTCOND*/ 0)
7411 yyerror_range[0] = yylsp[1-yylen];
7412 /* Do not reclaim the symbols of the rule which action triggered
7416 YY_STACK_PRINT (yyss, yyssp);
7421 /*-------------------------------------------------------------.
7422 | yyerrlab1 -- common code for both syntax error and YYERROR. |
7423 `-------------------------------------------------------------*/
7425 yyerrstatus = 3; /* Each real token shifted decrements this. */
7429 yyn = yypact[yystate];
7430 if (yyn != YYPACT_NINF)
7433 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
7441 /* Pop the current state because it cannot handle the error token. */
7445 yyerror_range[0] = *yylsp;
7446 yydestruct ("Error: popping",
7447 yystos[yystate], yyvsp, yylsp);
7450 YY_STACK_PRINT (yyss, yyssp);
7455 yyerror_range[1] = yylloc;
7456 /* Using YYLLOC is tempting, but would change the location of
7457 the lookahead. YYLOC is available though. */
7458 YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2);
7461 /* Shift the error token. */
7462 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
7468 /*-------------------------------------.
7469 | yyacceptlab -- YYACCEPT comes here. |
7470 `-------------------------------------*/
7475 /*-----------------------------------.
7476 | yyabortlab -- YYABORT comes here. |
7477 `-----------------------------------*/
7482 #if !defined(yyoverflow) || YYERROR_VERBOSE
7483 /*-------------------------------------------------.
7484 | yyexhaustedlab -- memory exhaustion comes here. |
7485 `-------------------------------------------------*/
7487 yyerror (YY_("memory exhausted"));
7493 if (yychar != YYEMPTY)
7494 yydestruct ("Cleanup: discarding lookahead",
7495 yytoken, &yylval, &yylloc);
7496 /* Do not reclaim the symbols of the rule which action triggered
7497 this YYABORT or YYACCEPT. */
7499 YY_STACK_PRINT (yyss, yyssp);
7500 while (yyssp != yyss)
7502 yydestruct ("Cleanup: popping",
7503 yystos[*yyssp], yyvsp, yylsp);
7508 YYSTACK_FREE (yyss);
7511 if (yymsg != yymsgbuf)
7512 YYSTACK_FREE (yymsg);
7514 /* Make sure YYID is used. */
7515 return YYID (yyresult);
7520 /* Line 1684 of yacc.c */
7521 #line 1235 "expression.y"