1 /* A Bison parser, made by GNU Bison 2.0. */
3 /* Skeleton parser for Yacc-like parsing with Bison,
4 Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc.
6 This program is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2, or (at your option)
11 This program is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with this program; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place - Suite 330,
19 Boston, MA 02111-1307, USA. */
21 /* As a special exception, when this file is copied by Bison into a
22 Bison output file, you may use that output file without restriction.
23 This special exception was added by the Free Software Foundation
24 in version 1.24 of Bison. */
26 /* Written by Richard Stallman by simplifying the original so called
27 ``semantic'' parser. */
29 /* All symbols defined below should begin with yy or YY, to avoid
30 infringing on user name space. This should be done even for local
31 variables, as they might otherwise be expanded by user macros.
32 There are some unavoidable exceptions within include files to
33 define necessary library symbols; they are noted "INFRINGES ON
34 USER NAME SPACE" below. */
36 /* Identify Bison output. */
40 #define YYSKELETON_NAME "yacc.c"
45 /* Using locations. */
46 #define YYLSP_NEEDED 1
53 /* Put the tokens into the symbol table, so that GDB and other debuggers
145 CLASS_DESIGNER = 347,
146 CLASS_NO_EXPANSION = 348,
149 CLASS_DEFAULT_PROPERTY = 351,
150 PROPERTY_CATEGORY = 352,
152 CLASS_PROPERTY = 354,
164 #define IDENTIFIER 258
166 #define STRING_LITERAL 260
179 #define MUL_ASSIGN 273
180 #define DIV_ASSIGN 274
181 #define MOD_ASSIGN 275
182 #define ADD_ASSIGN 276
183 #define SUB_ASSIGN 277
184 #define LEFT_ASSIGN 278
185 #define RIGHT_ASSIGN 279
186 #define AND_ASSIGN 280
187 #define XOR_ASSIGN 281
188 #define OR_ASSIGN 282
189 #define TYPE_NAME 283
227 #define THISCLASS 321
228 #define CLASS_NAME 322
236 #define EXT_STORAGE 330
240 #define EXT_ATTRIB 334
243 #define TYPED_OBJECT 337
244 #define ANY_OBJECT 338
246 #define EXTENSION 340
250 #define STOPWATCHING 344
251 #define FIREWATCHERS 345
252 #define WATCHABLE 346
253 #define CLASS_DESIGNER 347
254 #define CLASS_NO_EXPANSION 348
255 #define CLASS_FIXED 349
256 #define ISPROPSET 350
257 #define CLASS_DEFAULT_PROPERTY 351
258 #define PROPERTY_CATEGORY 352
259 #define CLASS_DATA 353
260 #define CLASS_PROPERTY 354
262 #define NAMESPACE 356
269 #define DATABASE_OPEN 363
274 /* Copy the first part of user declarations. */
279 #define YYLTYPE Location
281 #ifndef YYLLOC_DEFAULT
282 # define YYLLOC_DEFAULT(Current, Rhs, N) \
283 (Current).start = (Rhs)[1].start; \
284 (Current).end = (Rhs)[N].end;
288 extern File fileInput;
289 extern char * yytext;
294 bool deleteWatchable = false;
296 #define MAX_STRUCT_LEVELS 256
297 AccessMode memberAccessStack[MAX_STRUCT_LEVELS];
298 int defaultMemberAccess = -1;
300 #define POP_DEFAULT_ACCESS if(defaultMemberAccess > -1) defaultMemberAccess--;
307 /* Enabling traces. */
312 /* Enabling verbose error messages. */
313 #ifdef YYERROR_VERBOSE
314 # undef YYERROR_VERBOSE
315 # define YYERROR_VERBOSE 1
317 # define YYERROR_VERBOSE 0
320 #if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
322 typedef union YYSTYPE {
323 SpecifierType specifierType;
330 Enumerator enumerator;
331 Declarator declarator;
333 Initializer initializer;
334 InitDeclarator initDeclarator;
336 Declaration declaration;
338 FunctionDefinition function;
343 Instantiation instance;
344 MembersInit membersInit;
345 MemberInit memberInit;
346 ClassFunction classFunction;
347 ClassDefinition _class;
352 PropertyWatch propertyWatch;
353 TemplateParameter templateParameter;
354 TemplateArgument templateArgument;
355 TemplateDatatype templateDatatype;
357 DBTableEntry dbtableEntry;
358 DBIndexItem dbindexItem;
359 DBTableDef dbtableDef;
361 /* Line 190 of yacc.c. */
362 #line 363 "grammar.ec"
363 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
364 # define YYSTYPE_IS_DECLARED 1
365 # define YYSTYPE_IS_TRIVIAL 1
368 #if ! defined (YYLTYPE) && ! defined (YYLTYPE_IS_DECLARED)
369 typedef struct YYLTYPE
376 # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
377 # define YYLTYPE_IS_DECLARED 1
378 # define YYLTYPE_IS_TRIVIAL 1
382 /* Copy the second part of user declarations. */
385 /* Line 213 of yacc.c. */
386 #line 387 "grammar.ec"
388 #if ! defined (yyoverflow) || YYERROR_VERBOSE
394 # define YYMALLOC malloc
397 /* The parser invokes alloca or malloc; define the necessary symbols. */
399 # ifdef YYSTACK_USE_ALLOCA
400 # if YYSTACK_USE_ALLOCA
402 # define YYSTACK_ALLOC __builtin_alloca
404 # define YYSTACK_ALLOC alloca
409 # ifdef YYSTACK_ALLOC
410 /* Pacify GCC's `empty if-body' warning. */
411 # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
413 # if defined (__STDC__) || defined (__cplusplus)
414 # include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
415 # define YYSIZE_T size_t
417 # define YYSTACK_ALLOC YYMALLOC
418 # define YYSTACK_FREE YYFREE
420 #endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */
423 #if (! defined (yyoverflow) \
424 && (! defined (__cplusplus) \
425 || (defined (YYLTYPE_IS_TRIVIAL) && YYLTYPE_IS_TRIVIAL \
426 && defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL)))
428 /* A type that is properly aligned for any stack member. */
436 /* The size of the maximum gap between one aligned stack and the next. */
437 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
439 /* The size of an array large to enough to hold all stacks, each with
441 # define YYSTACK_BYTES(N) \
442 ((N) * (sizeof (short int) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
443 + 2 * YYSTACK_GAP_MAXIMUM)
445 /* Copy COUNT objects from FROM to TO. The source and destination do
448 # if defined (__GNUC__) && 1 < __GNUC__
449 # define YYCOPY(To, From, Count) \
450 __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
452 # define YYCOPY(To, From, Count) \
455 register YYSIZE_T yyi; \
456 for (yyi = 0; yyi < (Count); yyi++) \
457 (To)[yyi] = (From)[yyi]; \
463 /* Relocate STACK from its old location to the new one. The
464 local variables YYSIZE and YYSTACKSIZE give the old and new number of
465 elements in the stack, and YYPTR gives the new location of the
466 stack. Advance YYPTR to a properly aligned location for the next
468 # define YYSTACK_RELOCATE(Stack) \
471 YYSIZE_T yynewbytes; \
472 YYCOPY (&yyptr->Stack, Stack, yysize); \
473 Stack = &yyptr->Stack; \
474 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
475 yyptr += yynewbytes / sizeof (*yyptr); \
481 #if defined (__STDC__) || defined (__cplusplus)
482 typedef signed char yysigned_char;
484 typedef short int yysigned_char;
487 /* YYFINAL -- State number of the termination state. */
489 /* YYLAST -- Last index in YYTABLE. */
492 /* YYNTOKENS -- Number of terminals. */
493 #define YYNTOKENS 134
494 /* YYNNTS -- Number of nonterminals. */
496 /* YYNRULES -- Number of rules. */
497 #define YYNRULES 1271
498 /* YYNRULES -- Number of states. */
499 #define YYNSTATES 2060
501 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
503 #define YYMAXUTOK 363
505 #define YYTRANSLATE(YYX) \
506 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
508 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
509 static const unsigned char yytranslate[] =
511 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
512 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
513 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
514 2, 2, 2, 128, 2, 2, 122, 130, 125, 2,
515 112, 113, 109, 126, 117, 127, 120, 129, 2, 2,
516 2, 2, 2, 2, 2, 2, 2, 2, 121, 115,
517 110, 116, 111, 133, 2, 2, 2, 2, 2, 2,
518 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
519 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
520 2, 123, 2, 124, 131, 2, 2, 2, 2, 2,
521 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
522 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
523 2, 2, 2, 119, 132, 118, 114, 2, 2, 2,
524 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
525 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
526 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
527 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
528 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
529 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
530 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
531 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
532 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
533 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
534 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
535 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
536 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
537 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
538 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
539 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
540 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
541 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
542 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
543 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
544 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
545 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
546 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
551 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
553 static const unsigned short int yyprhs[] =
555 0, 0, 3, 6, 9, 11, 14, 16, 18, 20,
556 25, 30, 33, 35, 39, 44, 48, 51, 54, 56,
557 60, 63, 66, 69, 72, 75, 78, 81, 84, 86,
558 89, 91, 94, 97, 100, 103, 106, 109, 111, 113,
559 117, 119, 123, 127, 129, 131, 135, 139, 141, 145,
560 149, 153, 157, 159, 162, 165, 167, 169, 172, 175,
561 178, 181, 183, 186, 189, 191, 193, 196, 199, 201,
562 204, 207, 210, 213, 215, 218, 221, 225, 230, 236,
563 241, 245, 250, 253, 257, 262, 268, 273, 277, 282,
564 288, 294, 299, 302, 306, 310, 314, 318, 321, 326,
565 330, 334, 337, 342, 346, 349, 353, 356, 360, 363,
566 365, 368, 372, 376, 380, 383, 385, 389, 393, 395,
567 399, 403, 406, 411, 417, 421, 426, 430, 432, 436,
568 440, 444, 447, 451, 454, 459, 465, 469, 474, 478,
569 480, 484, 488, 491, 493, 496, 499, 502, 504, 507,
570 513, 521, 531, 538, 547, 552, 559, 561, 564, 568,
571 573, 577, 580, 583, 586, 588, 590, 595, 599, 603,
572 607, 610, 613, 616, 621, 623, 626, 628, 632, 636,
573 638, 640, 644, 652, 654, 657, 662, 664, 667, 670,
574 672, 674, 677, 681, 685, 688, 691, 693, 695, 698,
575 701, 703, 706, 709, 712, 715, 717, 720, 722, 724,
576 727, 732, 737, 744, 747, 752, 757, 764, 766, 768,
577 772, 774, 777, 782, 784, 786, 788, 790, 794, 796,
578 798, 800, 804, 808, 812, 816, 820, 824, 826, 830,
579 832, 835, 838, 842, 846, 852, 858, 865, 872, 875,
580 878, 882, 886, 890, 894, 898, 902, 906, 910, 914,
581 918, 922, 924, 926, 930, 932, 934, 939, 944, 950,
582 959, 961, 963, 966, 971, 974, 981, 988, 994, 1000,
583 1007, 1014, 1020, 1026, 1034, 1042, 1049, 1056, 1064, 1072,
584 1079, 1086, 1091, 1097, 1102, 1109, 1114, 1116, 1118, 1120,
585 1122, 1126, 1128, 1131, 1134, 1137, 1139, 1144, 1149, 1153,
586 1158, 1163, 1167, 1171, 1174, 1177, 1182, 1187, 1191, 1196,
587 1200, 1204, 1207, 1210, 1212, 1217, 1222, 1226, 1231, 1236,
588 1240, 1244, 1247, 1250, 1255, 1260, 1264, 1269, 1273, 1277,
589 1280, 1283, 1285, 1287, 1291, 1295, 1297, 1299, 1303, 1307,
590 1310, 1313, 1316, 1319, 1322, 1327, 1330, 1335, 1341, 1347,
591 1349, 1351, 1353, 1355, 1357, 1359, 1361, 1363, 1365, 1367,
592 1369, 1371, 1373, 1378, 1380, 1384, 1388, 1392, 1396, 1400,
593 1404, 1406, 1410, 1414, 1418, 1422, 1424, 1428, 1432, 1436,
594 1440, 1443, 1445, 1448, 1452, 1456, 1460, 1464, 1468, 1472,
595 1476, 1478, 1482, 1486, 1490, 1494, 1498, 1502, 1506, 1510,
596 1512, 1516, 1520, 1524, 1528, 1530, 1534, 1538, 1542, 1546,
597 1548, 1552, 1556, 1560, 1564, 1566, 1570, 1574, 1576, 1580,
598 1584, 1586, 1592, 1598, 1604, 1610, 1616, 1622, 1628, 1634,
599 1640, 1646, 1652, 1658, 1664, 1670, 1676, 1682, 1684, 1688,
600 1692, 1696, 1700, 1704, 1708, 1712, 1716, 1718, 1720, 1722,
601 1724, 1726, 1728, 1730, 1732, 1734, 1736, 1738, 1740, 1744,
602 1748, 1751, 1753, 1757, 1761, 1763, 1765, 1768, 1771, 1775,
603 1779, 1783, 1787, 1793, 1797, 1801, 1805, 1811, 1815, 1819,
604 1821, 1824, 1827, 1831, 1835, 1839, 1843, 1849, 1853, 1857,
605 1861, 1867, 1871, 1875, 1878, 1881, 1884, 1887, 1891, 1894,
606 1900, 1907, 1914, 1916, 1918, 1920, 1922, 1924, 1929, 1931,
607 1935, 1939, 1943, 1947, 1951, 1955, 1957, 1961, 1965, 1969,
608 1973, 1977, 1981, 1985, 1989, 1991, 1995, 1999, 2003, 2007,
609 2009, 2012, 2016, 2020, 2024, 2028, 2032, 2036, 2040, 2042,
610 2046, 2050, 2054, 2058, 2062, 2066, 2070, 2074, 2078, 2082,
611 2086, 2090, 2092, 2096, 2100, 2104, 2108, 2110, 2114, 2118,
612 2122, 2126, 2128, 2132, 2136, 2140, 2144, 2146, 2150, 2154,
613 2156, 2160, 2164, 2166, 2172, 2178, 2184, 2190, 2195, 2200,
614 2205, 2210, 2216, 2222, 2228, 2234, 2239, 2244, 2249, 2254,
615 2260, 2266, 2272, 2278, 2284, 2290, 2296, 2302, 2306, 2310,
616 2313, 2316, 2318, 2322, 2326, 2330, 2334, 2338, 2342, 2344,
617 2347, 2351, 2355, 2359, 2363, 2366, 2369, 2372, 2375, 2377,
618 2380, 2384, 2388, 2390, 2392, 2394, 2396, 2398, 2400, 2402,
619 2404, 2406, 2408, 2410, 2412, 2414, 2418, 2422, 2424, 2428,
620 2431, 2433, 2436, 2439, 2442, 2447, 2452, 2456, 2460, 2465,
621 2471, 2476, 2483, 2490, 2495, 2501, 2506, 2513, 2520, 2523,
622 2526, 2529, 2535, 2539, 2545, 2552, 2558, 2566, 2574, 2583,
623 2592, 2600, 2608, 2612, 2616, 2620, 2625, 2629, 2635, 2641,
624 2643, 2645, 2647, 2649, 2651, 2653, 2655, 2657, 2659, 2661,
625 2664, 2666, 2668, 2670, 2672, 2674, 2676, 2678, 2680, 2682,
626 2684, 2686, 2688, 2690, 2692, 2694, 2696, 2701, 2706, 2711,
627 2713, 2715, 2717, 2719, 2721, 2723, 2725, 2727, 2729, 2731,
628 2733, 2735, 2737, 2739, 2741, 2743, 2745, 2747, 2749, 2754,
629 2759, 2764, 2766, 2768, 2771, 2774, 2778, 2784, 2787, 2791,
630 2797, 2803, 2809, 2811, 2815, 2818, 2821, 2824, 2828, 2832,
631 2836, 2840, 2844, 2848, 2852, 2856, 2858, 2860, 2865, 2869,
632 2872, 2876, 2880, 2884, 2888, 2892, 2896, 2900, 2904, 2908,
633 2912, 2916, 2920, 2922, 2924, 2926, 2929, 2931, 2934, 2936,
634 2939, 2941, 2944, 2946, 2949, 2951, 2954, 2956, 2959, 2961,
635 2964, 2966, 2969, 2971, 2974, 2976, 2979, 2981, 2984, 2986,
636 2989, 2991, 2994, 2996, 2999, 3001, 3004, 3006, 3009, 3011,
637 3014, 3016, 3019, 3021, 3024, 3026, 3029, 3031, 3034, 3036,
638 3039, 3041, 3044, 3046, 3049, 3051, 3054, 3056, 3058, 3060,
639 3063, 3065, 3068, 3070, 3073, 3075, 3078, 3083, 3089, 3091,
640 3093, 3095, 3098, 3100, 3103, 3105, 3108, 3110, 3113, 3118,
641 3124, 3126, 3129, 3131, 3134, 3136, 3139, 3141, 3144, 3146,
642 3149, 3151, 3154, 3159, 3165, 3167, 3170, 3172, 3175, 3177,
643 3180, 3182, 3185, 3187, 3190, 3192, 3195, 3200, 3206, 3210,
644 3214, 3216, 3220, 3224, 3228, 3232, 3234, 3238, 3243, 3248,
645 3253, 3257, 3260, 3264, 3268, 3272, 3276, 3279, 3282, 3285,
646 3289, 3294, 3296, 3298, 3301, 3304, 3306, 3308, 3313, 3315,
647 3319, 3322, 3326, 3330, 3334, 3338, 3343, 3348, 3353, 3356,
648 3360, 3364, 3368, 3373, 3378, 3382, 3385, 3389, 3393, 3397,
649 3402, 3407, 3409, 3412, 3415, 3419, 3421, 3423, 3426, 3429,
650 3432, 3436, 3438, 3440, 3443, 3446, 3449, 3453, 3455, 3458,
651 3462, 3465, 3467, 3470, 3473, 3477, 3481, 3483, 3486, 3489,
652 3493, 3497, 3499, 3502, 3505, 3509, 3513, 3515, 3519, 3524,
653 3526, 3531, 3534, 3540, 3544, 3546, 3548, 3550, 3552, 3554,
654 3556, 3560, 3564, 3567, 3570, 3572, 3576, 3579, 3583, 3587,
655 3589, 3593, 3597, 3599, 3602, 3606, 3610, 3612, 3615, 3617,
656 3620, 3623, 3626, 3629, 3633, 3635, 3637, 3641, 3645, 3647,
657 3651, 3656, 3660, 3665, 3669, 3673, 3678, 3682, 3687, 3689,
658 3693, 3697, 3702, 3706, 3710, 3714, 3719, 3721, 3725, 3729,
659 3733, 3737, 3741, 3743, 3747, 3750, 3752, 3754, 3756, 3758,
660 3760, 3763, 3765, 3767, 3769, 3771, 3774, 3777, 3780, 3782,
661 3784, 3786, 3788, 3790, 3793, 3795, 3797, 3802, 3804, 3808,
662 3809, 3816, 3825, 3836, 3849, 3858, 3869, 3880, 3886, 3894,
663 3904, 3916, 3924, 3934, 3944, 3948, 3953, 3958, 3962, 3966,
664 3970, 3975, 3980, 3984, 3987, 3991, 3994, 3996, 3998, 4000,
665 4002, 4004, 4007, 4011, 4014, 4017, 4020, 4024, 4028, 4031,
666 4037, 4044, 4047, 4050, 4053, 4056, 4059, 4062, 4064, 4067,
667 4070, 4074, 4076, 4079, 4081, 4084, 4087, 4089, 4092, 4095,
668 4098, 4101, 4104, 4107, 4109, 4111, 4114, 4117, 4119, 4121,
669 4124, 4127, 4129, 4132, 4135, 4137, 4140, 4142, 4145, 4148,
670 4154, 4160, 4168, 4176, 4182, 4188, 4192, 4195, 4201, 4206,
671 4211, 4219, 4226, 4233, 4239, 4247, 4254, 4259, 4267, 4277,
672 4281, 4286, 4291, 4297, 4303, 4309, 4316, 4324, 4331, 4338,
673 4344, 4350, 4355, 4359, 4362, 4364, 4367, 4371, 4376, 4380,
674 4385, 4391, 4396, 4400, 4403, 4406, 4409, 4413, 4417, 4421,
675 4425, 4428, 4431, 4433, 4435, 4440, 4444, 4448, 4451, 4456,
676 4460, 4464, 4467, 4469, 4472, 4474, 4476, 4479, 4481, 4484,
677 4488, 4492, 4494, 4497, 4500, 4503, 4507, 4512, 4517, 4520,
678 4523, 4526, 4529, 4531, 4534, 4536, 4539, 4541, 4544, 4547,
679 4549, 4552, 4554, 4557, 4560, 4563, 4566, 4568, 4571, 4574,
680 4578, 4580, 4582, 4583, 4590, 4597, 4603, 4608, 4610, 4613,
681 4616, 4618, 4622, 4626, 4631, 4633, 4635, 4638, 4641, 4648,
685 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
686 static const short int yyrhs[] =
688 370, 0, -1, 206, 109, -1, 206, 110, -1, 139,
689 -1, 206, 206, -1, 28, -1, 28, -1, 137, -1,
690 137, 110, 200, 111, -1, 137, 110, 200, 11, -1,
691 291, 314, -1, 314, -1, 291, 112, 113, -1, 114,
692 291, 112, 113, -1, 78, 291, 314, -1, 78, 314,
693 -1, 291, 315, -1, 315, -1, 78, 291, 315, -1,
694 78, 315, -1, 140, 354, -1, 143, 354, -1, 143,
695 115, -1, 141, 354, -1, 142, 354, -1, 140, 115,
696 -1, 140, 355, -1, 144, -1, 143, 355, -1, 145,
697 -1, 145, 115, -1, 290, 314, -1, 290, 316, -1,
698 290, 315, -1, 148, 354, -1, 148, 355, -1, 149,
699 -1, 148, -1, 212, 116, 319, -1, 319, -1, 212,
700 116, 320, -1, 212, 116, 1, -1, 320, -1, 152,
701 -1, 154, 117, 152, -1, 155, 117, 152, -1, 153,
702 -1, 154, 117, 153, -1, 155, 117, 153, -1, 154,
703 117, 1, -1, 155, 117, 1, -1, 117, -1, 154,
704 115, -1, 155, 115, -1, 156, -1, 150, -1, 159,
705 156, -1, 159, 150, -1, 157, 156, -1, 157, 150,
706 -1, 115, -1, 159, 115, -1, 157, 115, -1, 157,
707 -1, 154, -1, 157, 154, -1, 159, 154, -1, 151,
708 -1, 158, 151, -1, 159, 151, -1, 157, 151, -1,
709 157, 155, -1, 155, -1, 154, 1, -1, 161, 118,
710 -1, 161, 1, 118, -1, 290, 206, 119, 159, -1,
711 290, 206, 119, 158, 1, -1, 290, 206, 119, 158,
712 -1, 290, 206, 119, -1, 290, 206, 119, 1, -1,
713 163, 118, -1, 163, 1, 118, -1, 291, 206, 119,
714 159, -1, 291, 206, 119, 158, 1, -1, 291, 206,
715 119, 158, -1, 291, 206, 119, -1, 291, 206, 119,
716 1, -1, 292, 206, 119, 158, 118, -1, 292, 206,
717 119, 159, 118, -1, 292, 206, 119, 118, -1, 166,
718 118, -1, 166, 1, 118, -1, 139, 119, 158, -1,
719 206, 119, 158, -1, 139, 119, 159, -1, 139, 119,
720 -1, 139, 119, 158, 1, -1, 139, 119, 1, -1,
721 206, 119, 159, -1, 206, 119, -1, 206, 119, 158,
722 1, -1, 206, 119, 1, -1, 168, 118, -1, 168,
723 1, 118, -1, 119, 159, -1, 119, 158, 1, -1,
724 119, 1, -1, 119, -1, 119, 158, -1, 212, 116,
725 319, -1, 212, 116, 320, -1, 212, 116, 1, -1,
726 212, 1, -1, 169, -1, 171, 117, 169, -1, 172,
727 117, 169, -1, 170, -1, 171, 117, 170, -1, 172,
728 117, 170, -1, 171, 1, -1, 68, 296, 206, 119,
729 -1, 68, 296, 311, 206, 119, -1, 68, 296, 119,
730 -1, 68, 296, 311, 119, -1, 68, 1, 119, -1,
731 173, -1, 174, 69, 354, -1, 174, 70, 354, -1,
732 174, 95, 354, -1, 174, 91, -1, 174, 97, 365,
733 -1, 174, 118, -1, 99, 296, 206, 119, -1, 99,
734 296, 311, 206, 119, -1, 99, 296, 119, -1, 99,
735 296, 311, 119, -1, 99, 1, 119, -1, 176, -1,
736 177, 69, 354, -1, 177, 70, 354, -1, 177, 118,
737 -1, 206, -1, 179, 206, -1, 179, 354, -1, 73,
738 354, -1, 180, -1, 181, 180, -1, 88, 112, 179,
739 113, 354, -1, 88, 112, 233, 113, 119, 181, 118,
740 -1, 233, 120, 88, 112, 233, 113, 119, 181, 118,
741 -1, 89, 112, 233, 117, 179, 113, -1, 233, 120,
742 89, 112, 233, 117, 179, 113, -1, 89, 112, 233,
743 113, -1, 233, 120, 89, 112, 233, 113, -1, 90,
744 -1, 90, 179, -1, 212, 120, 90, -1, 233, 120,
745 90, 179, -1, 291, 278, 115, -1, 291, 115, -1,
746 165, 115, -1, 162, 115, -1, 146, -1, 175, -1,
747 342, 291, 278, 115, -1, 342, 291, 115, -1, 342,
748 165, 115, -1, 342, 162, 115, -1, 342, 146, -1,
749 342, 175, -1, 171, 115, -1, 98, 291, 278, 115,
750 -1, 178, -1, 182, 115, -1, 91, -1, 92, 206,
751 115, -1, 92, 139, 115, -1, 93, -1, 94, -1,
752 96, 206, 115, -1, 99, 112, 206, 113, 116, 319,
753 115, -1, 115, -1, 342, 121, -1, 342, 112, 206,
754 113, -1, 147, -1, 163, 1, -1, 166, 1, -1,
755 162, -1, 165, -1, 342, 147, -1, 342, 163, 1,
756 -1, 342, 166, 1, -1, 342, 162, -1, 342, 165,
757 -1, 172, -1, 186, -1, 188, 186, -1, 189, 186,
758 -1, 187, -1, 188, 1, -1, 189, 1, -1, 188,
759 187, -1, 189, 187, -1, 290, -1, 290, 311, -1,
760 206, -1, 190, -1, 65, 206, -1, 65, 206, 116,
761 191, -1, 65, 206, 121, 190, -1, 65, 206, 121,
762 190, 116, 191, -1, 65, 138, -1, 65, 138, 116,
763 191, -1, 65, 138, 121, 190, -1, 65, 138, 121,
764 190, 116, 191, -1, 206, -1, 206, -1, 206, 116,
765 193, -1, 257, -1, 190, 206, -1, 190, 206, 116,
766 195, -1, 192, -1, 194, -1, 196, -1, 197, -1,
767 198, 117, 197, -1, 195, -1, 193, -1, 191, -1,
768 206, 116, 195, -1, 206, 116, 193, -1, 206, 116,
769 191, -1, 190, 116, 195, -1, 190, 116, 193, -1,
770 190, 116, 191, -1, 199, -1, 200, 117, 199, -1,
771 65, -1, 201, 206, -1, 201, 137, -1, 206, 201,
772 206, -1, 206, 201, 137, -1, 201, 206, 110, 198,
773 111, -1, 201, 137, 110, 198, 111, -1, 206, 201,
774 206, 110, 198, 111, -1, 206, 201, 137, 110, 198,
775 111, -1, 205, 118, -1, 204, 115, -1, 202, 119,
776 118, -1, 204, 119, 118, -1, 201, 206, 115, -1,
777 201, 136, 115, -1, 202, 121, 295, -1, 202, 119,
778 189, -1, 204, 119, 189, -1, 202, 119, 188, -1,
779 204, 119, 188, -1, 202, 119, 1, -1, 204, 119,
780 1, -1, 3, -1, 208, -1, 112, 235, 113, -1,
781 206, -1, 165, -1, 85, 112, 354, 113, -1, 85,
782 112, 235, 113, -1, 85, 112, 326, 113, 317, -1,
783 85, 112, 326, 113, 112, 326, 113, 317, -1, 4,
784 -1, 365, -1, 122, 365, -1, 122, 365, 120, 365,
785 -1, 112, 113, -1, 71, 298, 312, 123, 257, 124,
786 -1, 71, 298, 312, 123, 258, 124, -1, 71, 298,
787 123, 257, 124, -1, 71, 298, 123, 258, 124, -1,
788 102, 298, 312, 123, 257, 124, -1, 102, 298, 312,
789 123, 258, 124, -1, 102, 298, 123, 257, 124, -1,
790 102, 298, 123, 258, 124, -1, 72, 257, 297, 312,
791 123, 257, 124, -1, 72, 257, 297, 312, 123, 258,
792 124, -1, 72, 257, 297, 123, 257, 124, -1, 72,
793 257, 297, 123, 258, 124, -1, 103, 257, 297, 312,
794 123, 257, 124, -1, 103, 257, 297, 312, 123, 258,
795 124, -1, 103, 257, 297, 123, 257, 124, -1, 103,
796 257, 297, 123, 258, 124, -1, 65, 112, 290, 113,
797 -1, 65, 112, 290, 311, 113, -1, 65, 112, 206,
798 113, -1, 104, 112, 233, 117, 326, 113, -1, 98,
799 112, 206, 113, -1, 377, -1, 378, -1, 379, -1,
800 380, -1, 123, 214, 124, -1, 167, -1, 168, 1,
801 -1, 112, 235, -1, 112, 255, -1, 207, -1, 212,
802 123, 235, 124, -1, 212, 123, 255, 124, -1, 212,
803 112, 113, -1, 212, 112, 214, 113, -1, 212, 112,
804 215, 113, -1, 212, 120, 206, -1, 212, 7, 206,
805 -1, 212, 8, -1, 212, 9, -1, 237, 123, 235,
806 124, -1, 237, 123, 255, 124, -1, 237, 112, 113,
807 -1, 237, 112, 214, 113, -1, 237, 120, 206, -1,
808 237, 7, 206, -1, 237, 8, -1, 237, 9, -1,
809 208, -1, 213, 123, 235, 124, -1, 213, 123, 255,
810 124, -1, 213, 112, 113, -1, 213, 112, 214, 113,
811 -1, 213, 112, 215, 113, -1, 213, 120, 206, -1,
812 213, 7, 206, -1, 213, 8, -1, 213, 9, -1,
813 238, 123, 235, 124, -1, 238, 123, 255, 124, -1,
814 238, 112, 113, -1, 238, 112, 214, 113, -1, 238,
815 120, 206, -1, 238, 7, 206, -1, 238, 8, -1,
816 238, 9, -1, 233, -1, 209, -1, 214, 117, 233,
817 -1, 214, 117, 209, -1, 254, -1, 210, -1, 214,
818 117, 254, -1, 214, 117, 210, -1, 214, 117, -1,
819 8, 217, -1, 9, 217, -1, 219, 220, -1, 219,
820 209, -1, 6, 112, 217, 113, -1, 6, 218, -1,
821 6, 112, 327, 113, -1, 6, 112, 65, 136, 113,
822 -1, 6, 112, 65, 135, 113, -1, 216, -1, 212,
823 -1, 216, -1, 213, -1, 125, -1, 109, -1, 126,
824 -1, 127, -1, 114, -1, 128, -1, 73, -1, 84,
825 -1, 217, -1, 112, 326, 113, 220, -1, 220, -1,
826 221, 109, 220, -1, 221, 129, 220, -1, 221, 130,
827 220, -1, 243, 109, 220, -1, 243, 129, 220, -1,
828 243, 130, 220, -1, 221, -1, 222, 126, 221, -1,
829 222, 127, 221, -1, 244, 126, 221, -1, 244, 127,
830 221, -1, 222, -1, 223, 10, 222, -1, 223, 11,
831 222, -1, 245, 10, 222, -1, 245, 11, 222, -1,
832 225, 110, -1, 223, -1, 224, 223, -1, 225, 111,
833 223, -1, 225, 12, 223, -1, 225, 13, 223, -1,
834 246, 110, 223, -1, 246, 111, 223, -1, 246, 12,
835 223, -1, 246, 13, 223, -1, 225, -1, 226, 14,
836 225, -1, 226, 15, 225, -1, 247, 14, 225, -1,
837 247, 15, 225, -1, 226, 14, 209, -1, 226, 15,
838 209, -1, 247, 14, 209, -1, 247, 15, 209, -1,
839 226, -1, 227, 125, 226, -1, 248, 125, 226, -1,
840 227, 125, 209, -1, 248, 125, 209, -1, 227, -1,
841 228, 131, 227, -1, 249, 131, 227, -1, 228, 131,
842 209, -1, 249, 131, 209, -1, 228, -1, 229, 132,
843 228, -1, 250, 132, 228, -1, 229, 132, 209, -1,
844 250, 132, 209, -1, 229, -1, 230, 16, 229, -1,
845 251, 16, 229, -1, 230, -1, 231, 17, 230, -1,
846 252, 17, 230, -1, 231, -1, 231, 133, 235, 121,
847 232, -1, 231, 133, 255, 121, 232, -1, 252, 133,
848 235, 121, 232, -1, 252, 133, 255, 121, 232, -1,
849 231, 133, 236, 121, 232, -1, 231, 133, 256, 121,
850 232, -1, 252, 133, 236, 121, 232, -1, 252, 133,
851 256, 121, 232, -1, 231, 133, 235, 121, 209, -1,
852 231, 133, 255, 121, 209, -1, 252, 133, 235, 121,
853 209, -1, 252, 133, 255, 121, 209, -1, 231, 133,
854 236, 121, 209, -1, 231, 133, 256, 121, 209, -1,
855 252, 133, 236, 121, 209, -1, 252, 133, 256, 121,
856 209, -1, 232, -1, 217, 234, 233, -1, 240, 234,
857 233, -1, 232, 234, 233, -1, 253, 234, 233, -1,
858 217, 234, 209, -1, 240, 234, 209, -1, 232, 234,
859 209, -1, 253, 234, 209, -1, 116, -1, 18, -1,
860 19, -1, 20, -1, 21, -1, 22, -1, 23, -1,
861 24, -1, 25, -1, 26, -1, 27, -1, 233, -1,
862 235, 117, 233, -1, 255, 117, 233, -1, 255, 113,
863 -1, 209, -1, 235, 117, 209, -1, 255, 117, 209,
864 -1, 211, -1, 1, -1, 212, 1, -1, 166, 1,
865 -1, 212, 7, 1, -1, 237, 7, 1, -1, 212,
866 112, 214, -1, 212, 112, 215, -1, 212, 112, 214,
867 117, 1, -1, 212, 112, 1, -1, 212, 120, 1,
868 -1, 237, 112, 215, -1, 237, 112, 214, 117, 1,
869 -1, 237, 112, 1, -1, 237, 120, 1, -1, 1,
870 -1, 213, 1, -1, 166, 1, -1, 213, 7, 1,
871 -1, 238, 7, 1, -1, 213, 112, 214, -1, 213,
872 112, 215, -1, 213, 112, 214, 117, 1, -1, 213,
873 112, 1, -1, 213, 120, 1, -1, 238, 112, 215,
874 -1, 238, 112, 214, 117, 1, -1, 238, 112, 1,
875 -1, 238, 120, 1, -1, 8, 240, -1, 9, 240,
876 -1, 219, 242, -1, 219, 210, -1, 6, 112, 240,
877 -1, 6, 241, -1, 6, 112, 327, 113, 1, -1,
878 6, 112, 65, 136, 113, 1, -1, 6, 112, 65,
879 135, 113, 1, -1, 239, -1, 237, -1, 239, -1,
880 238, -1, 240, -1, 112, 326, 113, 242, -1, 242,
881 -1, 221, 109, 242, -1, 221, 129, 242, -1, 221,
882 130, 242, -1, 243, 109, 242, -1, 243, 129, 242,
883 -1, 243, 130, 242, -1, 243, -1, 222, 126, 243,
884 -1, 222, 126, 1, -1, 222, 127, 243, -1, 222,
885 127, 1, -1, 244, 126, 243, -1, 244, 126, 1,
886 -1, 244, 127, 243, -1, 244, 127, 1, -1, 244,
887 -1, 223, 10, 244, -1, 223, 11, 244, -1, 245,
888 10, 244, -1, 245, 11, 244, -1, 245, -1, 224,
889 245, -1, 225, 111, 245, -1, 225, 12, 245, -1,
890 225, 13, 245, -1, 246, 110, 245, -1, 246, 111,
891 245, -1, 246, 12, 245, -1, 246, 13, 245, -1,
892 246, -1, 226, 14, 246, -1, 226, 15, 246, -1,
893 247, 14, 246, -1, 247, 15, 246, -1, 226, 14,
894 1, -1, 226, 15, 1, -1, 247, 14, 1, -1,
895 247, 15, 1, -1, 226, 14, 210, -1, 226, 15,
896 210, -1, 247, 14, 210, -1, 247, 15, 210, -1,
897 247, -1, 227, 125, 247, -1, 248, 125, 247, -1,
898 227, 125, 210, -1, 248, 125, 210, -1, 248, -1,
899 228, 131, 248, -1, 249, 131, 248, -1, 228, 131,
900 210, -1, 249, 131, 210, -1, 249, -1, 229, 132,
901 249, -1, 250, 132, 249, -1, 229, 132, 210, -1,
902 250, 132, 210, -1, 250, -1, 230, 16, 250, -1,
903 251, 16, 250, -1, 251, -1, 231, 17, 251, -1,
904 252, 17, 251, -1, 252, -1, 231, 133, 235, 121,
905 252, -1, 231, 133, 255, 121, 252, -1, 252, 133,
906 235, 121, 252, -1, 252, 133, 255, 121, 252, -1,
907 231, 133, 235, 121, -1, 231, 133, 255, 121, -1,
908 252, 133, 235, 121, -1, 252, 133, 255, 121, -1,
909 231, 133, 236, 121, 252, -1, 231, 133, 256, 121,
910 252, -1, 252, 133, 236, 121, 252, -1, 252, 133,
911 256, 121, 252, -1, 231, 133, 236, 121, -1, 231,
912 133, 256, 121, -1, 252, 133, 236, 121, -1, 252,
913 133, 256, 121, -1, 231, 133, 235, 121, 210, -1,
914 231, 133, 255, 121, 210, -1, 252, 133, 235, 121,
915 210, -1, 252, 133, 255, 121, 210, -1, 231, 133,
916 236, 121, 210, -1, 231, 133, 256, 121, 210, -1,
917 252, 133, 236, 121, 210, -1, 252, 133, 256, 121,
918 210, -1, 231, 133, 121, -1, 252, 133, 121, -1,
919 231, 133, -1, 252, 133, -1, 253, -1, 217, 234,
920 254, -1, 217, 234, 1, -1, 240, 234, 254, -1,
921 240, 234, 1, -1, 217, 234, 210, -1, 240, 234,
922 210, -1, 254, -1, 233, 1, -1, 235, 117, 254,
923 -1, 255, 117, 254, -1, 235, 117, 1, -1, 255,
924 117, 1, -1, 235, 1, -1, 235, 235, -1, 255,
925 235, -1, 235, 255, -1, 210, -1, 209, 1, -1,
926 235, 117, 210, -1, 255, 117, 210, -1, 232, -1,
927 253, -1, 29, -1, 30, -1, 31, -1, 32, -1,
928 33, -1, 29, -1, 30, -1, 31, -1, 32, -1,
929 33, -1, 206, -1, 206, 116, 257, -1, 206, 116,
930 258, -1, 261, -1, 262, 117, 261, -1, 262, 117,
931 -1, 50, -1, 263, 206, -1, 263, 139, -1, 266,
932 118, -1, 263, 206, 119, 118, -1, 263, 139, 119,
933 118, -1, 263, 119, 262, -1, 263, 119, 1, -1,
934 263, 206, 119, 262, -1, 263, 206, 119, 262, 1,
935 -1, 263, 206, 119, 1, -1, 263, 206, 119, 262,
936 115, 188, -1, 263, 206, 119, 262, 115, 189, -1,
937 263, 139, 119, 262, -1, 263, 139, 119, 262, 1,
938 -1, 263, 139, 119, 1, -1, 263, 139, 119, 262,
939 115, 188, -1, 263, 139, 119, 262, 115, 189, -1,
940 263, 206, -1, 263, 139, -1, 269, 118, -1, 267,
941 121, 295, 119, 118, -1, 267, 119, 118, -1, 267,
942 121, 295, 119, 262, -1, 267, 121, 295, 119, 262,
943 1, -1, 267, 121, 295, 119, 1, -1, 267, 121,
944 295, 119, 262, 115, 188, -1, 267, 121, 295, 119,
945 262, 115, 189, -1, 267, 121, 295, 119, 262, 1,
946 115, 188, -1, 267, 121, 295, 119, 262, 1, 115,
947 189, -1, 267, 121, 295, 119, 1, 115, 188, -1,
948 267, 121, 295, 119, 1, 115, 189, -1, 263, 119,
949 262, -1, 263, 119, 1, -1, 267, 119, 262, -1,
950 267, 119, 262, 1, -1, 267, 119, 1, -1, 267,
951 119, 262, 115, 188, -1, 267, 119, 262, 115, 189,
952 -1, 268, -1, 285, -1, 269, -1, 286, -1, 75,
953 -1, 306, -1, 44, -1, 45, -1, 272, -1, 273,
954 -1, 274, 273, -1, 46, -1, 34, -1, 35, -1,
955 36, -1, 37, -1, 38, -1, 47, -1, 39, -1,
956 42, -1, 43, -1, 40, -1, 41, -1, 85, -1,
957 282, -1, 264, -1, 136, -1, 87, 112, 233, 113,
958 -1, 100, 112, 136, 113, -1, 100, 112, 206, 113,
959 -1, 66, -1, 82, -1, 83, -1, 46, -1, 34,
960 -1, 35, -1, 36, -1, 37, -1, 38, -1, 47,
961 -1, 39, -1, 42, -1, 43, -1, 40, -1, 41,
962 -1, 85, -1, 282, -1, 264, -1, 139, -1, 87,
963 112, 233, 113, -1, 100, 112, 136, 113, -1, 100,
964 112, 206, 113, -1, 66, -1, 316, -1, 316, 307,
965 -1, 121, 257, -1, 316, 121, 257, -1, 316, 121,
966 257, 121, 257, -1, 121, 258, -1, 316, 121, 258,
967 -1, 316, 121, 257, 121, 258, -1, 316, 121, 258,
968 121, 258, -1, 316, 121, 258, 121, 257, -1, 277,
969 -1, 278, 117, 277, -1, 287, 206, -1, 287, 137,
970 -1, 281, 118, -1, 279, 119, 118, -1, 287, 119,
971 118, -1, 279, 119, 188, -1, 279, 119, 189, -1,
972 279, 119, 1, -1, 287, 119, 188, -1, 287, 119,
973 189, -1, 287, 119, 1, -1, 279, -1, 279, -1,
974 279, 110, 198, 111, -1, 283, 121, 295, -1, 286,
975 118, -1, 284, 119, 118, -1, 283, 119, 118, -1,
976 287, 119, 118, -1, 284, 119, 188, -1, 284, 119,
977 189, -1, 284, 119, 1, -1, 283, 119, 188, -1,
978 283, 119, 189, -1, 283, 119, 1, -1, 287, 119,
979 188, -1, 287, 119, 189, -1, 287, 119, 1, -1,
980 48, -1, 49, -1, 273, -1, 288, 273, -1, 275,
981 -1, 288, 275, -1, 265, -1, 288, 265, -1, 280,
982 -1, 288, 280, -1, 273, -1, 289, 273, -1, 275,
983 -1, 289, 275, -1, 135, -1, 289, 135, -1, 265,
984 -1, 289, 265, -1, 280, -1, 289, 280, -1, 259,
985 -1, 290, 259, -1, 273, -1, 290, 273, -1, 276,
986 -1, 290, 276, -1, 265, -1, 290, 265, -1, 280,
987 -1, 290, 280, -1, 259, -1, 291, 259, -1, 273,
988 -1, 291, 273, -1, 275, -1, 291, 275, -1, 135,
989 -1, 291, 135, -1, 280, -1, 291, 280, -1, 265,
990 -1, 291, 265, -1, 260, -1, 292, 260, -1, 273,
991 -1, 292, 273, -1, 275, -1, 292, 275, -1, 135,
992 -1, 292, 135, -1, 270, -1, 292, 270, -1, 271,
993 -1, 292, 271, -1, 81, -1, 80, -1, 259, -1,
994 294, 259, -1, 273, -1, 294, 273, -1, 276, -1,
995 294, 276, -1, 206, -1, 294, 206, -1, 206, 110,
996 200, 111, -1, 294, 206, 110, 200, 111, -1, 294,
997 -1, 287, -1, 259, -1, 296, 259, -1, 273, -1,
998 296, 273, -1, 276, -1, 296, 276, -1, 206, -1,
999 296, 206, -1, 206, 110, 200, 111, -1, 296, 206,
1000 110, 200, 111, -1, 259, -1, 297, 259, -1, 273,
1001 -1, 297, 273, -1, 276, -1, 297, 276, -1, 280,
1002 -1, 297, 280, -1, 265, -1, 297, 265, -1, 206,
1003 -1, 297, 206, -1, 206, 110, 200, 111, -1, 297,
1004 206, 110, 200, 111, -1, 259, -1, 298, 259, -1,
1005 273, -1, 298, 273, -1, 276, -1, 298, 276, -1,
1006 280, -1, 298, 280, -1, 265, -1, 298, 265, -1,
1007 206, -1, 298, 206, -1, 206, 110, 200, 111, -1,
1008 298, 206, 110, 200, 111, -1, 300, 117, 1, -1,
1009 299, 117, 1, -1, 206, -1, 300, 117, 206, -1,
1010 299, 117, 206, -1, 330, 117, 206, -1, 331, 117,
1011 206, -1, 206, -1, 112, 313, 113, -1, 301, 123,
1012 257, 124, -1, 301, 123, 258, 124, -1, 301, 123,
1013 136, 124, -1, 301, 123, 124, -1, 301, 112, -1,
1014 302, 332, 113, -1, 302, 333, 113, -1, 302, 300,
1015 113, -1, 302, 299, 113, -1, 302, 113, -1, 302,
1016 299, -1, 302, 1, -1, 302, 330, 112, -1, 302,
1017 291, 206, 112, -1, 303, -1, 301, -1, 306, 303,
1018 -1, 306, 301, -1, 74, -1, 307, -1, 86, 112,
1019 365, 113, -1, 79, -1, 112, 311, 113, -1, 123,
1020 124, -1, 123, 257, 124, -1, 123, 258, 124, -1,
1021 123, 136, 124, -1, 308, 123, 124, -1, 308, 123,
1022 257, 124, -1, 308, 123, 136, 124, -1, 308, 123,
1023 258, 124, -1, 112, 113, -1, 112, 332, 113, -1,
1024 112, 333, 113, -1, 308, 112, 113, -1, 308, 112,
1025 332, 113, -1, 308, 112, 333, 113, -1, 112, 312,
1026 113, -1, 112, 113, -1, 112, 332, 113, -1, 112,
1027 333, 113, -1, 309, 112, 113, -1, 309, 112, 332,
1028 113, -1, 309, 112, 333, 113, -1, 109, -1, 109,
1029 274, -1, 109, 310, -1, 109, 274, 310, -1, 310,
1030 -1, 308, -1, 310, 308, -1, 306, 310, -1, 306,
1031 308, -1, 306, 310, 308, -1, 310, -1, 309, -1,
1032 310, 309, -1, 306, 310, -1, 306, 309, -1, 306,
1033 310, 309, -1, 305, -1, 310, 305, -1, 306, 310,
1034 305, -1, 313, 306, -1, 303, -1, 310, 303, -1,
1035 306, 303, -1, 306, 310, 303, -1, 310, 306, 303,
1036 -1, 304, -1, 310, 304, -1, 306, 304, -1, 306,
1037 310, 304, -1, 310, 306, 304, -1, 301, -1, 310,
1038 301, -1, 306, 301, -1, 306, 310, 301, -1, 310,
1039 306, 301, -1, 233, -1, 119, 321, 118, -1, 119,
1040 321, 117, 118, -1, 254, -1, 119, 321, 118, 1,
1041 -1, 119, 321, -1, 119, 321, 117, 118, 1, -1,
1042 119, 321, 117, -1, 232, -1, 209, -1, 253, -1,
1043 210, -1, 317, -1, 318, -1, 321, 117, 317, -1,
1044 321, 117, 318, -1, 321, 317, -1, 321, 318, -1,
1045 313, -1, 313, 116, 317, -1, 313, 1, -1, 313,
1046 116, 1, -1, 313, 116, 318, -1, 322, -1, 324,
1047 117, 322, -1, 325, 117, 322, -1, 323, -1, 322,
1048 1, -1, 324, 117, 323, -1, 325, 117, 323, -1,
1049 288, -1, 288, 311, -1, 289, -1, 289, 311, -1,
1050 291, 313, -1, 291, 311, -1, 291, 125, -1, 291,
1051 125, 313, -1, 291, -1, 65, -1, 291, 313, 1,
1052 -1, 291, 311, 1, -1, 328, -1, 330, 117, 328,
1053 -1, 330, 1, 117, 328, -1, 331, 117, 328, -1,
1054 331, 1, 117, 328, -1, 1, 117, 328, -1, 300,
1055 117, 328, -1, 300, 1, 117, 328, -1, 299, 117,
1056 328, -1, 299, 1, 117, 328, -1, 329, -1, 330,
1057 117, 329, -1, 331, 117, 329, -1, 331, 1, 117,
1058 329, -1, 1, 117, 329, -1, 300, 117, 329, -1,
1059 299, 117, 329, -1, 299, 1, 117, 329, -1, 330,
1060 -1, 330, 117, 51, -1, 331, 117, 51, -1, 300,
1061 117, 51, -1, 299, 117, 51, -1, 1, 117, 51,
1062 -1, 331, -1, 330, 117, 1, -1, 331, 1, -1,
1063 339, -1, 79, -1, 354, -1, 115, -1, 121, -1,
1064 235, 115, -1, 357, -1, 359, -1, 361, -1, 338,
1065 -1, 185, 115, -1, 184, 115, -1, 183, 115, -1,
1066 340, -1, 360, -1, 355, -1, 358, -1, 362, -1,
1067 361, 1, -1, 255, -1, 365, -1, 365, 112, 233,
1068 113, -1, 336, -1, 337, 117, 336, -1, -1, 86,
1069 273, 112, 365, 113, 115, -1, 86, 273, 112, 365,
1070 121, 337, 113, 115, -1, 86, 273, 112, 365, 121,
1071 337, 121, 337, 113, 115, -1, 86, 273, 112, 365,
1072 121, 337, 121, 337, 121, 337, 113, 115, -1, 86,
1073 273, 112, 365, 3, 337, 113, 115, -1, 86, 273,
1074 112, 365, 3, 337, 121, 337, 113, 115, -1, 86,
1075 273, 112, 365, 121, 337, 3, 337, 113, 115, -1,
1076 86, 112, 365, 113, 115, -1, 86, 112, 365, 121,
1077 337, 113, 115, -1, 86, 112, 365, 121, 337, 121,
1078 337, 113, 115, -1, 86, 112, 365, 121, 337, 121,
1079 337, 121, 337, 113, 115, -1, 86, 112, 365, 3,
1080 337, 113, 115, -1, 86, 112, 365, 3, 337, 121,
1081 337, 113, 115, -1, 86, 112, 365, 121, 337, 3,
1082 337, 113, 115, -1, 206, 121, 334, -1, 52, 257,
1083 121, 334, -1, 52, 258, 121, 334, -1, 52, 121,
1084 334, -1, 53, 121, 334, -1, 206, 121, 335, -1,
1085 52, 257, 121, 335, -1, 52, 258, 121, 335, -1,
1086 52, 121, 335, -1, 52, 121, -1, 53, 121, 335,
1087 -1, 53, 121, -1, 80, -1, 81, -1, 53, -1,
1088 80, -1, 81, -1, 290, 115, -1, 290, 324, 115,
1089 -1, 160, 115, -1, 346, 115, -1, 292, 115, -1,
1090 292, 324, 115, -1, 293, 324, 115, -1, 164, 115,
1091 -1, 77, 206, 116, 232, 115, -1, 31, 77, 206,
1092 116, 232, 115, -1, 292, 1, -1, 290, 1, -1,
1093 346, 1, -1, 161, 1, -1, 160, 1, -1, 290,
1094 325, -1, 343, -1, 347, 343, -1, 348, 343, -1,
1095 347, 1, 115, -1, 346, -1, 347, 346, -1, 334,
1096 -1, 349, 334, -1, 350, 334, -1, 335, -1, 349,
1097 335, -1, 350, 335, -1, 349, 343, -1, 350, 343,
1098 -1, 349, 346, -1, 350, 346, -1, 349, -1, 347,
1099 -1, 347, 349, -1, 348, 349, -1, 350, -1, 348,
1100 -1, 347, 350, -1, 348, 350, -1, 119, -1, 355,
1101 118, -1, 353, 352, -1, 353, -1, 353, 351, -1,
1102 115, -1, 235, 115, -1, 255, 115, -1, 54, 112,
1103 235, 113, 334, -1, 54, 112, 255, 113, 334, -1,
1104 54, 112, 235, 113, 334, 64, 334, -1, 54, 112,
1105 255, 113, 334, 64, 334, -1, 55, 112, 235, 113,
1106 334, -1, 55, 112, 255, 113, 334, -1, 54, 112,
1107 255, -1, 357, 1, -1, 56, 112, 235, 113, 334,
1108 -1, 56, 112, 255, 334, -1, 56, 112, 113, 334,
1109 -1, 57, 334, 56, 112, 235, 113, 115, -1, 57,
1110 334, 56, 112, 255, 115, -1, 58, 112, 356, 356,
1111 113, 334, -1, 58, 112, 356, 113, 334, -1, 58,
1112 112, 356, 356, 235, 113, 334, -1, 58, 112, 356,
1113 356, 255, 334, -1, 58, 112, 113, 334, -1, 58,
1114 112, 206, 121, 235, 113, 334, -1, 58, 112, 206,
1115 121, 235, 115, 235, 113, 334, -1, 58, 112, 1,
1116 -1, 58, 112, 255, 1, -1, 58, 112, 356, 1,
1117 -1, 58, 112, 356, 255, 1, -1, 58, 112, 356,
1118 356, 1, -1, 58, 112, 356, 356, 255, -1, 58,
1119 112, 356, 356, 113, 335, -1, 58, 112, 356, 356,
1120 235, 113, 335, -1, 58, 112, 356, 356, 255, 335,
1121 -1, 57, 334, 56, 112, 235, 113, -1, 57, 334,
1122 56, 112, 235, -1, 57, 334, 56, 112, 255, -1,
1123 57, 334, 56, 112, -1, 57, 334, 56, -1, 57,
1124 334, -1, 57, -1, 56, 1, -1, 56, 112, 1,
1125 -1, 56, 112, 113, 1, -1, 56, 112, 255, -1,
1126 56, 112, 255, 1, -1, 56, 112, 235, 113, 335,
1127 -1, 56, 112, 255, 335, -1, 59, 206, 115, -1,
1128 60, 115, -1, 61, 115, -1, 62, 115, -1, 62,
1129 235, 115, -1, 62, 255, 115, -1, 62, 209, 115,
1130 -1, 62, 210, 115, -1, 62, 255, -1, 62, 210,
1131 -1, 62, -1, 59, -1, 292, 314, 347, 354, -1,
1132 292, 314, 354, -1, 314, 347, 354, -1, 314, 354,
1133 -1, 292, 314, 347, 355, -1, 292, 314, 355, -1,
1134 314, 347, 355, -1, 314, 355, -1, 5, -1, 365,
1135 5, -1, 363, -1, 203, -1, 292, 203, -1, 344,
1136 -1, 76, 365, -1, 76, 31, 365, -1, 76, 206,
1137 365, -1, 115, -1, 341, 363, -1, 341, 203, -1,
1138 341, 344, -1, 341, 76, 365, -1, 341, 76, 31,
1139 365, -1, 341, 76, 206, 365, -1, 341, 121, -1,
1140 31, 121, -1, 101, 206, -1, 101, 139, -1, 371,
1141 -1, 341, 371, -1, 205, -1, 292, 205, -1, 364,
1142 -1, 341, 205, -1, 341, 364, -1, 345, -1, 341,
1143 345, -1, 367, -1, 369, 367, -1, 368, 367, -1,
1144 369, 1, -1, 368, 1, -1, 366, -1, 369, 366,
1145 -1, 368, 203, -1, 368, 341, 203, -1, 369, -1,
1146 368, -1, -1, 105, 365, 206, 119, 376, 118, -1,
1147 105, 365, 139, 119, 376, 118, -1, 105, 365, 119,
1148 376, 118, -1, 291, 206, 365, 115, -1, 206, -1,
1149 111, 206, -1, 110, 206, -1, 373, -1, 374, 117,
1150 373, -1, 107, 374, 115, -1, 107, 374, 206, 115,
1151 -1, 372, -1, 375, -1, 376, 372, -1, 376, 375,
1152 -1, 108, 112, 233, 117, 233, 113, -1, 106, 112,
1153 365, 117, 206, 113, -1, 107, 112, 365, 117, 206,
1154 113, -1, 105, 112, 365, 113, -1
1157 /* YYRLINE[YYN] -- source line where rule number YYN was defined. */
1158 static const unsigned short int yyrline[] =
1160 0, 254, 254, 282, 340, 341, 441, 445, 448, 449,
1161 450, 499, 501, 506, 511, 516, 518, 523, 525, 530,
1162 532, 537, 539, 541, 543, 545, 549, 554, 556, 558,
1163 560, 562, 568, 570, 575, 580, 585, 587, 589, 594,
1164 595, 599, 600, 611, 615, 616, 618, 623, 624, 626,
1165 629, 640, 650, 669, 671, 676, 677, 678, 679, 680,
1166 681, 682, 683, 684, 688, 689, 690, 691, 695, 696,
1167 697, 698, 699, 700, 701, 705, 707, 712, 714, 716,
1168 718, 720, 750, 752, 757, 759, 761, 763, 765, 794,
1169 796, 798, 803, 805, 810, 812, 816, 818, 820, 822,
1170 827, 830, 833, 836, 901, 903, 908, 910, 912, 914,
1171 916, 947, 951, 952, 953, 957, 958, 959, 963, 964,
1172 965, 966, 970, 973, 976, 979, 982, 987, 988, 990,
1173 992, 994, 996, 1001, 1005, 1008, 1011, 1014, 1017, 1022,
1174 1023, 1025, 1030, 1034, 1036, 1041, 1043, 1048, 1050, 1055,
1175 1060, 1062, 1067, 1069, 1071, 1073, 1078, 1080, 1082, 1084,
1176 1089, 1090, 1091, 1092, 1093, 1094, 1096, 1097, 1098, 1099,
1177 1100, 1101, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110,
1178 1111, 1112, 1113, 1115, 1116, 1118, 1122, 1123, 1124, 1125,
1179 1126, 1128, 1129, 1130, 1131, 1132, 1134, 1138, 1139, 1140,
1180 1144, 1145, 1146, 1147, 1148, 1152, 1153, 1154, 1158, 1162,
1181 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1173, 1177, 1178,
1182 1182, 1186, 1187, 1191, 1192, 1193, 1197, 1198, 1202, 1203,
1183 1204, 1205, 1206, 1207, 1208, 1220, 1232, 1247, 1248, 1252,
1184 1258, 1259, 1267, 1268, 1270, 1271, 1280, 1281, 1285, 1291,
1185 1298, 1304, 1311, 1317, 1326, 1333, 1339, 1345, 1351, 1357,
1186 1363, 1374, 1379, 1380, 1385, 1386, 1387, 1388, 1389, 1390,
1187 1391, 1392, 1393, 1394, 1395, 1396, 1397, 1398, 1399, 1400,
1188 1401, 1402, 1403, 1404, 1405, 1406, 1407, 1408, 1409, 1410,
1189 1411, 1412, 1413, 1414, 1415, 1417, 1418, 1419, 1420, 1421,
1190 1423, 1427, 1431, 1435, 1436, 1440, 1442, 1443, 1444, 1445,
1191 1446, 1447, 1448, 1449, 1450, 1452, 1453, 1454, 1455, 1456,
1192 1457, 1458, 1459, 1463, 1465, 1466, 1467, 1468, 1469, 1470,
1193 1471, 1472, 1473, 1475, 1476, 1477, 1478, 1479, 1480, 1481,
1194 1482, 1486, 1487, 1488, 1489, 1493, 1494, 1495, 1496, 1497,
1195 1501, 1502, 1503, 1504, 1505, 1506, 1507, 1508, 1509, 1513,
1196 1514, 1518, 1519, 1523, 1524, 1525, 1526, 1527, 1528, 1529,
1197 1530, 1534, 1535, 1539, 1540, 1541, 1542, 1543, 1544, 1545,
1198 1549, 1550, 1551, 1552, 1553, 1557, 1558, 1559, 1560, 1561,
1199 1565, 1573, 1574, 1575, 1576, 1577, 1578, 1579, 1580, 1581,
1200 1585, 1586, 1587, 1588, 1589, 1591, 1592, 1593, 1594, 1598,
1201 1599, 1600, 1602, 1603, 1607, 1608, 1609, 1611, 1612, 1616,
1202 1617, 1618, 1620, 1621, 1625, 1626, 1627, 1631, 1632, 1633,
1203 1637, 1638, 1639, 1640, 1641, 1643, 1644, 1645, 1646, 1648,
1204 1649, 1650, 1651, 1653, 1654, 1655, 1656, 1660, 1661, 1662,
1205 1663, 1664, 1666, 1667, 1668, 1669, 1673, 1674, 1675, 1676,
1206 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1687, 1688, 1689,
1207 1690, 1694, 1695, 1696, 1700, 1701, 1702, 1703, 1705, 1706,
1208 1708, 1709, 1710, 1711, 1712, 1714, 1715, 1716, 1717, 1721,
1209 1722, 1723, 1725, 1726, 1728, 1729, 1730, 1731, 1732, 1734,
1210 1735, 1736, 1737, 1741, 1742, 1743, 1744, 1745, 1746, 1747,
1211 1748, 1749, 1753, 1754, 1758, 1759, 1764, 1765, 1769, 1770,
1212 1771, 1772, 1773, 1774, 1775, 1779, 1780, 1781, 1782, 1783,
1213 1784, 1785, 1786, 1787, 1791, 1792, 1793, 1794, 1795, 1799,
1214 1800, 1850, 1851, 1852, 1853, 1854, 1855, 1856, 1860, 1861,
1215 1862, 1863, 1864, 1866, 1867, 1868, 1869, 1871, 1872, 1873,
1216 1874, 1878, 1879, 1880, 1882, 1883, 1887, 1888, 1889, 1891,
1217 1892, 1896, 1897, 1898, 1900, 1901, 1905, 1906, 1907, 1911,
1218 1912, 1913, 1917, 1918, 1919, 1920, 1921, 1922, 1923, 1924,
1219 1925, 1927, 1928, 1929, 1930, 1931, 1932, 1933, 1934, 1936,
1220 1937, 1938, 1939, 1941, 1942, 1943, 1944, 1946, 1953, 1957,
1221 1961, 1968, 1969, 1970, 1971, 1972, 1974, 1975, 1979, 1980,
1222 1981, 1982, 1983, 1984, 1985, 1986, 1987, 1988, 1992, 1993,
1223 1994, 1995, 1999, 2001, 2005, 2006, 2007, 2008, 2009, 2013,
1224 2014, 2015, 2016, 2017, 2021, 2022, 2023, 2027, 2028, 2029,
1225 2033, 2037, 2038, 2042, 2043, 2044, 2048, 2049, 2051, 2052,
1226 2053, 2054, 2055, 2057, 2058, 2059, 2060, 2061, 2065, 2066,
1227 2070, 2071, 2072, 2076, 2077, 2078, 2079, 2080, 2081, 2082,
1228 2083, 2084, 2086, 2087, 2089, 2090, 2091, 2092, 2093, 2097,
1229 2098, 2102, 2103, 2107, 2108, 2112, 2113, 2114, 2119, 2120,
1230 2124, 2125, 2126, 2127, 2128, 2129, 2130, 2131, 2132, 2133,
1231 2134, 2135, 2136, 2137, 2138, 2139, 2140, 2141, 2142, 2143,
1232 2144, 2145, 2149, 2150, 2151, 2152, 2153, 2154, 2155, 2156,
1233 2157, 2158, 2159, 2160, 2161, 2162, 2163, 2164, 2165, 2166,
1234 2167, 2168, 2174, 2176, 2178, 2180, 2182, 2184, 2186, 2188,
1235 2190, 2192, 2197, 2198, 2202, 2208, 2217, 2218, 2219, 2223,
1236 2224, 2225, 2227, 2228, 2229, 2233, 2237, 2245, 2254, 2263,
1237 2264, 2266, 2267, 2271, 2278, 2285, 2288, 2301, 2315, 2318,
1238 2320, 2322, 2327, 2328, 2332, 2333, 2334, 2335, 2336, 2337,
1239 2338, 2339, 2343, 2344, 2345, 2346, 2347, 2348, 2349, 2350,
1240 2351, 2352, 2356, 2357, 2358, 2359, 2360, 2361, 2362, 2363,
1241 2364, 2365, 2369, 2370, 2371, 2372, 2373, 2374, 2375, 2376,
1242 2377, 2378, 2379, 2380, 2384, 2385, 2386, 2387, 2388, 2389,
1243 2390, 2391, 2392, 2393, 2397, 2398, 2402, 2403, 2404, 2405,
1244 2406, 2407, 2408, 2409, 2410, 2412, 2414, 2432, 2449, 2450,
1245 2454, 2455, 2456, 2457, 2458, 2459, 2460, 2461, 2462, 2480,
1246 2497, 2498, 2499, 2500, 2501, 2502, 2503, 2504, 2505, 2506,
1247 2507, 2508, 2509, 2527, 2544, 2545, 2546, 2547, 2548, 2549,
1248 2550, 2551, 2552, 2553, 2554, 2555, 2556, 2574, 2591, 2592,
1249 2596, 2597, 2598, 2599, 2600, 2604, 2605, 2606, 2607, 2608,
1250 2609, 2613, 2617, 2618, 2619, 2620, 2621, 2626, 2635, 2644,
1251 2653, 2666, 2667, 2668, 2670, 2715, 2716, 2717, 2729, 2734,
1252 2736, 2738, 2740, 2742, 2744, 2746, 2748, 2750, 2752, 2754,
1253 2756, 2758, 2760, 2762, 2767, 2769, 2771, 2773, 2775, 2777,
1254 2779, 2784, 2785, 2786, 2787, 2791, 2792, 2793, 2794, 2795,
1255 2796, 2800, 2801, 2802, 2803, 2804, 2805, 2809, 2810, 2812,
1256 2814, 2819, 2820, 2821, 2822, 2823, 2827, 2828, 2829, 2830,
1257 2831, 2835, 2836, 2837, 2838, 2839, 2843, 2844, 2845, 2861,
1258 2862, 2863, 2864, 2877, 2893, 2894, 2899, 2900, 2904, 2905,
1259 2906, 2907, 2910, 2911, 2915, 2916, 2920, 2921, 2922, 2926,
1260 2927, 2928, 2932, 2933, 2934, 2935, 2939, 2940, 2944, 2945,
1261 2950, 2951, 2952, 2953, 2954, 2955, 2974, 2975, 2979, 2980,
1262 2981, 2982, 2983, 2984, 2986, 2987, 2988, 2989, 2993, 2994,
1263 2995, 2996, 2997, 2999, 3000, 3001, 3005, 3006, 3007, 3008,
1264 3009, 3010, 3014, 3015, 3016, 3021, 3022, 3023, 3024, 3025,
1265 3026, 3027, 3028, 3029, 3030, 3032, 3033, 3034, 3038, 3039,
1266 3040, 3041, 3042, 3043, 3044, 3048, 3049, 3053, 3054, 3055,
1267 3059, 3060, 3061, 3062, 3064, 3065, 3066, 3068, 3069, 3070,
1268 3071, 3073, 3074, 3075, 3079, 3080, 3081, 3082, 3083, 3087,
1269 3088, 3089, 3090, 3091, 3092, 3093, 3097, 3098, 3099, 3103,
1270 3104, 3108, 3109, 3110, 3111, 3115, 3116, 3117, 3119, 3120,
1271 3121, 3125, 3129, 3130, 3132, 3133, 3134, 3138, 3139, 3140,
1272 3141, 3145, 3146, 3150, 3151, 3152, 3156, 3157, 3158, 3159,
1273 3160, 3161, 3162, 3166, 3167, 3168, 3169, 3173, 3174, 3175,
1274 3176, 3180, 3184, 3188, 3190, 3193, 3199, 3200, 3201, 3205,
1275 3206, 3207, 3208, 3209, 3210, 3214, 3215, 3219, 3220, 3221,
1276 3223, 3224, 3226, 3227, 3228, 3229, 3230, 3232, 3233, 3237,
1277 3238, 3239, 3240, 3241, 3242, 3243, 3244, 3245, 3247, 3248,
1278 3249, 3250, 3251, 3252, 3253, 3256, 3257, 3258, 3259, 3260,
1279 3261, 3262, 3266, 3267, 3268, 3269, 3270, 3271, 3272, 3273,
1280 3277, 3278, 3279, 3280, 3286, 3287, 3290, 3291, 3294, 3295,
1281 3296, 3297, 3301, 3302, 3314, 3315, 3318, 3321, 3323, 3324,
1282 3325, 3327, 3329, 3330, 3332, 3333, 3334, 3335, 3336, 3337,
1283 3338, 3339, 3340, 3341, 3345, 3346, 3347, 3349, 3350, 3352,
1284 3354, 3358, 3359, 3360, 3361, 3362, 3366, 3367, 3368, 3370,
1285 3375, 3376, 3377, 3381, 3382, 3383, 3387, 3391, 3392, 3393,
1286 3397, 3398, 3402, 3403, 3407, 3408, 3409, 3410, 3414, 3418,
1291 #if YYDEBUG || YYERROR_VERBOSE
1292 /* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
1293 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
1294 static const char *const yytname[] =
1296 "$end", "error", "$undefined", "IDENTIFIER", "CONSTANT",
1297 "STRING_LITERAL", "SIZEOF", "PTR_OP", "INC_OP", "DEC_OP", "LEFT_OP",
1298 "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP",
1299 "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "ADD_ASSIGN", "SUB_ASSIGN",
1300 "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN",
1301 "TYPE_NAME", "TYPEDEF", "EXTERN", "STATIC", "AUTO", "REGISTER", "CHAR",
1302 "SHORT", "INT", "UINT", "INT64", "LONG", "SIGNED", "UNSIGNED", "FLOAT",
1303 "DOUBLE", "CONST", "VOLATILE", "VOID", "VALIST", "STRUCT", "UNION",
1304 "ENUM", "ELLIPSIS", "CASE", "DEFAULT", "IF", "SWITCH", "WHILE", "DO",
1305 "FOR", "GOTO", "CONTINUE", "BREAK", "RETURN", "IFX", "ELSE", "CLASS",
1306 "THISCLASS", "CLASS_NAME", "PROPERTY", "SETPROP", "GETPROP", "NEWOP",
1307 "RENEW", "DELETE", "EXT_DECL", "EXT_STORAGE", "IMPORT", "DEFINE",
1308 "VIRTUAL", "EXT_ATTRIB", "PUBLIC", "PRIVATE", "TYPED_OBJECT",
1309 "ANY_OBJECT", "_INCREF", "EXTENSION", "ASM", "TYPEOF", "WATCH",
1310 "STOPWATCHING", "FIREWATCHERS", "WATCHABLE", "CLASS_DESIGNER",
1311 "CLASS_NO_EXPANSION", "CLASS_FIXED", "ISPROPSET",
1312 "CLASS_DEFAULT_PROPERTY", "PROPERTY_CATEGORY", "CLASS_DATA",
1313 "CLASS_PROPERTY", "SUBCLASS", "NAMESPACE", "NEW0OP", "RENEW0", "VAARG",
1314 "DBTABLE", "DBFIELD", "DBINDEX", "DATABASE_OPEN", "'*'", "'<'", "'>'",
1315 "'('", "')'", "'~'", "';'", "'='", "','", "'}'", "'{'", "'.'", "':'",
1316 "'$'", "'['", "']'", "'&'", "'+'", "'-'", "'!'", "'/'", "'%'", "'^'",
1317 "'|'", "'?'", "$accept", "guess_type", "type", "base_strict_type",
1318 "base_strict_type_name", "strict_type",
1319 "class_function_definition_start",
1320 "constructor_function_definition_start",
1321 "destructor_function_definition_start",
1322 "virtual_class_function_definition_start",
1323 "class_function_definition_start_error",
1324 "virtual_class_function_definition_start_error",
1325 "class_function_definition", "class_function_definition_error",
1326 "instance_class_function_definition_start",
1327 "instance_class_function_definition_start_error",
1328 "instance_class_function_definition",
1329 "instance_class_function_definition_error", "data_member_initialization",
1330 "data_member_initialization_error", "data_member_initialization_list",
1331 "data_member_initialization_list_error",
1332 "data_member_initialization_list_coloned",
1333 "members_initialization_list_coloned", "members_initialization_list",
1334 "members_initialization_list_error", "instantiation_named",
1335 "instantiation_named_error", "guess_instantiation_named",
1336 "guess_instantiation_named_error", "external_guess_instantiation_named",
1337 "instantiation_unnamed", "instantiation_unnamed_error",
1338 "instantiation_anon", "instantiation_anon_error", "default_property",
1339 "default_property_error", "default_property_list",
1340 "default_property_list_error", "property_start", "property_body",
1341 "property", "class_property_start", "class_property_body",
1342 "class_property", "watch_property_list", "property_watch",
1343 "property_watch_list", "self_watch_definition", "watch_definition",
1344 "stopwatching", "firewatchers", "struct_declaration",
1345 "struct_declaration_error", "struct_declaration_list",
1346 "struct_declaration_list_error", "template_datatype",
1347 "template_type_argument", "template_type_parameter",
1348 "template_identifier_argument", "template_identifier_parameter",
1349 "template_expression_argument", "template_expression_parameter",
1350 "template_parameter", "template_parameters_list", "template_argument",
1351 "template_arguments_list", "class_entry", "class_decl", "class",
1352 "class_head", "class_error", "identifier", "primary_expression",
1353 "simple_primary_expression", "anon_instantiation_expression",
1354 "anon_instantiation_expression_error", "primary_expression_error",
1355 "postfix_expression", "simple_postfix_expression",
1356 "argument_expression_list", "argument_expression_list_error",
1357 "common_unary_expression", "unary_expression", "simple_unary_expression",
1358 "unary_operator", "cast_expression", "multiplicative_expression",
1359 "additive_expression", "shift_expression",
1360 "relational_expression_smaller_than", "relational_expression",
1361 "equality_expression", "and_expression", "exclusive_or_expression",
1362 "inclusive_or_expression", "logical_and_expression",
1363 "logical_or_expression", "conditional_expression",
1364 "assignment_expression", "assignment_operator", "expression",
1365 "expression_anon_inst", "postfix_expression_error",
1366 "simple_postfix_expression_error", "common_unary_expression_error",
1367 "unary_expression_error", "simple_unary_expression_error",
1368 "cast_expression_error", "multiplicative_expression_error",
1369 "additive_expression_error", "shift_expression_error",
1370 "relational_expression_error", "equality_expression_error",
1371 "and_expression_error", "exclusive_or_expression_error",
1372 "inclusive_or_expression_error", "logical_and_expression_error",
1373 "logical_or_expression_error", "conditional_expression_error",
1374 "assignment_expression_error", "expression_error",
1375 "expression_anon_inst_error", "constant_expression",
1376 "constant_expression_error", "storage_class_specifier",
1377 "external_storage_class_specifier", "enumerator", "enumerator_list",
1378 "enum_specifier", "enum_specifier_nocompound", "enum_specifier_compound",
1379 "enum_specifier_compound_error", "enum_decl", "enum_class",
1380 "enum_class_error", "class_specifier", "class_specifier_error",
1381 "ext_storage", "type_qualifier", "type_qualifier_list", "type_specifier",
1382 "strict_type_specifier", "struct_declarator", "struct_declarator_list",
1383 "struct_entry", "struct_or_union_specifier_compound",
1384 "struct_or_union_specifier_compound_error",
1385 "struct_or_union_specifier_nocompound", "struct_decl", "struct_head",
1386 "struct_class", "struct_class_error", "struct_or_union",
1387 "specifier_qualifier_list", "guess_specifier_qualifier_list",
1388 "declaration_specifiers", "guess_declaration_specifiers",
1389 "external_guess_declaration_specifiers",
1390 "external_guess_declaration_specifiers_error", "_inheritance_specifiers",
1391 "inheritance_specifiers", "property_specifiers", "renew_specifiers",
1392 "new_specifiers", "identifier_list_error", "identifier_list",
1393 "direct_declarator_nofunction", "direct_declarator_function_start",
1394 "direct_declarator_function", "direct_declarator_function_error",
1395 "direct_declarator", "ext_decl", "ext_attrib",
1396 "direct_abstract_declarator", "direct_abstract_declarator_noarray",
1397 "pointer", "abstract_declarator", "abstract_declarator_noarray",
1398 "declarator", "declarator_function", "declarator_function_error",
1399 "declarator_nofunction", "initializer", "initializer_error",
1400 "initializer_condition", "initializer_condition_error",
1401 "initializer_list", "init_declarator", "init_declarator_error",
1402 "init_declarator_list", "init_declarator_list_error", "type_name",
1403 "guess_type_name", "parameter_declaration",
1404 "parameter_declaration_error", "parameter_list", "parameter_list_error",
1405 "parameter_type_list", "parameter_type_list_error", "statement",
1406 "statement_error", "asm_field", "asm_field_list", "asm_statement",
1407 "labeled_statement", "labeled_statement_error", "declaration_mode",
1408 "member_access", "declaration", "external_guess_declaration",
1409 "external_guess_declaration_error", "declaration_error",
1410 "declaration_list", "declaration_list_error", "statement_list",
1411 "statement_list_error", "compound_inside", "compound_inside_error",
1412 "compound_start", "compound_statement", "compound_statement_error",
1413 "expression_statement", "selection_statement",
1414 "selection_statement_error", "iteration_statement",
1415 "iteration_statement_error", "jump_statement", "jump_statement_error",
1416 "function_definition", "function_definition_error", "string_literal",
1417 "external_declaration", "external_declaration_error",
1418 "translation_unit_error", "translation_unit", "thefile",
1419 "dbtable_definition", "dbfield_entry", "dbindex_item",
1420 "dbindex_item_list", "dbindex_entry", "dbfield_definition_list",
1421 "database_open", "dbfield", "dbindex", "dbtable", 0
1426 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
1428 static const unsigned short int yytoknum[] =
1430 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
1431 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
1432 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
1433 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
1434 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
1435 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
1436 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
1437 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
1438 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
1439 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
1440 355, 356, 357, 358, 359, 360, 361, 362, 363, 42,
1441 60, 62, 40, 41, 126, 59, 61, 44, 125, 123,
1442 46, 58, 36, 91, 93, 38, 43, 45, 33, 47,
1447 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
1448 static const unsigned short int yyr1[] =
1450 0, 134, 135, 135, 136, 136, 137, 138, 139, 139,
1451 139, 140, 140, 141, 142, 143, 143, 144, 144, 145,
1452 145, 146, 146, 146, 146, 146, 146, 147, 147, 147,
1453 147, 147, 148, 148, 149, 150, 151, 151, 151, 152,
1454 152, 153, 153, 153, 154, 154, 154, 155, 155, 155,
1455 155, 155, 155, 156, 156, 157, 157, 157, 157, 157,
1456 157, 157, 157, 157, 158, 158, 158, 158, 159, 159,
1457 159, 159, 159, 159, 159, 160, 160, 161, 161, 161,
1458 161, 161, 162, 162, 163, 163, 163, 163, 163, 164,
1459 164, 164, 165, 165, 166, 166, 166, 166, 166, 166,
1460 166, 166, 166, 166, 167, 167, 168, 168, 168, 168,
1461 168, 169, 170, 170, 170, 171, 171, 171, 172, 172,
1462 172, 172, 173, 173, 173, 173, 173, 174, 174, 174,
1463 174, 174, 174, 175, 176, 176, 176, 176, 176, 177,
1464 177, 177, 178, 179, 179, 180, 180, 181, 181, 182,
1465 183, 183, 184, 184, 184, 184, 185, 185, 185, 185,
1466 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
1467 186, 186, 186, 186, 186, 186, 186, 186, 186, 186,
1468 186, 186, 186, 186, 186, 186, 187, 187, 187, 187,
1469 187, 187, 187, 187, 187, 187, 187, 188, 188, 188,
1470 189, 189, 189, 189, 189, 190, 190, 190, 191, 192,
1471 192, 192, 192, 192, 192, 192, 192, 193, 194, 194,
1472 195, 196, 196, 197, 197, 197, 198, 198, 199, 199,
1473 199, 199, 199, 199, 199, 199, 199, 200, 200, 201,
1474 202, 202, 202, 202, 202, 202, 202, 202, 203, 203,
1475 203, 203, 203, 203, 204, 205, 205, 205, 205, 205,
1476 205, 206, 207, 207, 208, 208, 208, 208, 208, 208,
1477 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
1478 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
1479 208, 208, 208, 208, 208, 208, 208, 208, 208, 208,
1480 208, 209, 210, 211, 211, 212, 212, 212, 212, 212,
1481 212, 212, 212, 212, 212, 212, 212, 212, 212, 212,
1482 212, 212, 212, 213, 213, 213, 213, 213, 213, 213,
1483 213, 213, 213, 213, 213, 213, 213, 213, 213, 213,
1484 213, 214, 214, 214, 214, 215, 215, 215, 215, 215,
1485 216, 216, 216, 216, 216, 216, 216, 216, 216, 217,
1486 217, 218, 218, 219, 219, 219, 219, 219, 219, 219,
1487 219, 220, 220, 221, 221, 221, 221, 221, 221, 221,
1488 222, 222, 222, 222, 222, 223, 223, 223, 223, 223,
1489 224, 225, 225, 225, 225, 225, 225, 225, 225, 225,
1490 226, 226, 226, 226, 226, 226, 226, 226, 226, 227,
1491 227, 227, 227, 227, 228, 228, 228, 228, 228, 229,
1492 229, 229, 229, 229, 230, 230, 230, 231, 231, 231,
1493 232, 232, 232, 232, 232, 232, 232, 232, 232, 232,
1494 232, 232, 232, 232, 232, 232, 232, 233, 233, 233,
1495 233, 233, 233, 233, 233, 233, 234, 234, 234, 234,
1496 234, 234, 234, 234, 234, 234, 234, 235, 235, 235,
1497 235, 236, 236, 236, 237, 237, 237, 237, 237, 237,
1498 237, 237, 237, 237, 237, 237, 237, 237, 237, 238,
1499 238, 238, 238, 238, 238, 238, 238, 238, 238, 238,
1500 238, 238, 238, 239, 239, 239, 239, 239, 239, 239,
1501 239, 239, 240, 240, 241, 241, 242, 242, 243, 243,
1502 243, 243, 243, 243, 243, 244, 244, 244, 244, 244,
1503 244, 244, 244, 244, 245, 245, 245, 245, 245, 246,
1504 246, 246, 246, 246, 246, 246, 246, 246, 247, 247,
1505 247, 247, 247, 247, 247, 247, 247, 247, 247, 247,
1506 247, 248, 248, 248, 248, 248, 249, 249, 249, 249,
1507 249, 250, 250, 250, 250, 250, 251, 251, 251, 252,
1508 252, 252, 253, 253, 253, 253, 253, 253, 253, 253,
1509 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
1510 253, 253, 253, 253, 253, 253, 253, 253, 253, 253,
1511 253, 254, 254, 254, 254, 254, 254, 254, 255, 255,
1512 255, 255, 255, 255, 255, 255, 255, 255, 256, 256,
1513 256, 256, 257, 258, 259, 259, 259, 259, 259, 260,
1514 260, 260, 260, 260, 261, 261, 261, 262, 262, 262,
1515 263, 264, 264, 265, 265, 265, 266, 266, 266, 266,
1516 266, 266, 266, 266, 266, 266, 266, 266, 267, 267,
1517 268, 268, 268, 269, 269, 269, 269, 269, 269, 269,
1518 269, 269, 269, 269, 269, 269, 269, 269, 269, 270,
1519 270, 271, 271, 272, 272, 273, 273, 273, 274, 274,
1520 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
1521 275, 275, 275, 275, 275, 275, 275, 275, 275, 275,
1522 275, 275, 276, 276, 276, 276, 276, 276, 276, 276,
1523 276, 276, 276, 276, 276, 276, 276, 276, 276, 276,
1524 276, 276, 277, 277, 277, 277, 277, 277, 277, 277,
1525 277, 277, 278, 278, 279, 279, 280, 280, 280, 281,
1526 281, 281, 281, 281, 281, 282, 283, 283, 284, 285,
1527 285, 285, 285, 286, 286, 286, 286, 286, 286, 286,
1528 286, 286, 287, 287, 288, 288, 288, 288, 288, 288,
1529 288, 288, 289, 289, 289, 289, 289, 289, 289, 289,
1530 289, 289, 290, 290, 290, 290, 290, 290, 290, 290,
1531 290, 290, 291, 291, 291, 291, 291, 291, 291, 291,
1532 291, 291, 291, 291, 292, 292, 292, 292, 292, 292,
1533 292, 292, 292, 292, 293, 293, 294, 294, 294, 294,
1534 294, 294, 294, 294, 294, 294, 294, 294, 295, 295,
1535 296, 296, 296, 296, 296, 296, 296, 296, 296, 296,
1536 297, 297, 297, 297, 297, 297, 297, 297, 297, 297,
1537 297, 297, 297, 297, 298, 298, 298, 298, 298, 298,
1538 298, 298, 298, 298, 298, 298, 298, 298, 299, 299,
1539 300, 300, 300, 300, 300, 301, 301, 301, 301, 301,
1540 301, 302, 303, 303, 303, 303, 303, 304, 304, 304,
1541 304, 305, 305, 305, 305, 306, 306, 306, 307, 308,
1542 308, 308, 308, 308, 308, 308, 308, 308, 308, 308,
1543 308, 308, 308, 308, 309, 309, 309, 309, 309, 309,
1544 309, 310, 310, 310, 310, 311, 311, 311, 311, 311,
1545 311, 312, 312, 312, 312, 312, 312, 313, 313, 313,
1546 313, 314, 314, 314, 314, 314, 315, 315, 315, 315,
1547 315, 316, 316, 316, 316, 316, 317, 317, 317, 318,
1548 318, 318, 318, 318, 319, 319, 320, 320, 321, 321,
1549 321, 321, 321, 321, 322, 322, 323, 323, 323, 324,
1550 324, 324, 325, 325, 325, 325, 326, 326, 327, 327,
1551 328, 328, 328, 328, 328, 328, 329, 329, 330, 330,
1552 330, 330, 330, 330, 330, 330, 330, 330, 331, 331,
1553 331, 331, 331, 331, 331, 331, 332, 332, 332, 332,
1554 332, 332, 333, 333, 333, 334, 334, 334, 334, 334,
1555 334, 334, 334, 334, 334, 334, 334, 334, 335, 335,
1556 335, 335, 335, 335, 335, 336, 336, 337, 337, 337,
1557 338, 338, 338, 338, 338, 338, 338, 338, 338, 338,
1558 338, 338, 338, 338, 339, 339, 339, 339, 339, 340,
1559 340, 340, 340, 340, 340, 340, 341, 341, 341, 342,
1560 342, 343, 343, 343, 343, 344, 344, 344, 344, 344,
1561 344, 345, 346, 346, 346, 346, 346, 347, 347, 347,
1562 347, 348, 348, 349, 349, 349, 350, 350, 350, 350,
1563 350, 350, 350, 351, 351, 351, 351, 352, 352, 352,
1564 352, 353, 354, 355, 355, 355, 356, 356, 356, 357,
1565 357, 357, 357, 357, 357, 358, 358, 359, 359, 359,
1566 359, 359, 359, 359, 359, 359, 359, 359, 359, 360,
1567 360, 360, 360, 360, 360, 360, 360, 360, 360, 360,
1568 360, 360, 360, 360, 360, 360, 360, 360, 360, 360,
1569 360, 360, 361, 361, 361, 361, 361, 361, 361, 361,
1570 362, 362, 362, 362, 363, 363, 363, 363, 364, 364,
1571 364, 364, 365, 365, 366, 366, 366, 366, 366, 366,
1572 366, 366, 366, 366, 366, 366, 366, 366, 366, 366,
1573 366, 366, 366, 366, 367, 367, 367, 367, 367, 367,
1574 367, 368, 368, 368, 368, 368, 369, 369, 369, 369,
1575 370, 370, 370, 371, 371, 371, 372, 373, 373, 373,
1576 374, 374, 375, 375, 376, 376, 376, 376, 377, 378,
1580 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
1581 static const unsigned char yyr2[] =
1583 0, 2, 2, 2, 1, 2, 1, 1, 1, 4,
1584 4, 2, 1, 3, 4, 3, 2, 2, 1, 3,
1585 2, 2, 2, 2, 2, 2, 2, 2, 1, 2,
1586 1, 2, 2, 2, 2, 2, 2, 1, 1, 3,
1587 1, 3, 3, 1, 1, 3, 3, 1, 3, 3,
1588 3, 3, 1, 2, 2, 1, 1, 2, 2, 2,
1589 2, 1, 2, 2, 1, 1, 2, 2, 1, 2,
1590 2, 2, 2, 1, 2, 2, 3, 4, 5, 4,
1591 3, 4, 2, 3, 4, 5, 4, 3, 4, 5,
1592 5, 4, 2, 3, 3, 3, 3, 2, 4, 3,
1593 3, 2, 4, 3, 2, 3, 2, 3, 2, 1,
1594 2, 3, 3, 3, 2, 1, 3, 3, 1, 3,
1595 3, 2, 4, 5, 3, 4, 3, 1, 3, 3,
1596 3, 2, 3, 2, 4, 5, 3, 4, 3, 1,
1597 3, 3, 2, 1, 2, 2, 2, 1, 2, 5,
1598 7, 9, 6, 8, 4, 6, 1, 2, 3, 4,
1599 3, 2, 2, 2, 1, 1, 4, 3, 3, 3,
1600 2, 2, 2, 4, 1, 2, 1, 3, 3, 1,
1601 1, 3, 7, 1, 2, 4, 1, 2, 2, 1,
1602 1, 2, 3, 3, 2, 2, 1, 1, 2, 2,
1603 1, 2, 2, 2, 2, 1, 2, 1, 1, 2,
1604 4, 4, 6, 2, 4, 4, 6, 1, 1, 3,
1605 1, 2, 4, 1, 1, 1, 1, 3, 1, 1,
1606 1, 3, 3, 3, 3, 3, 3, 1, 3, 1,
1607 2, 2, 3, 3, 5, 5, 6, 6, 2, 2,
1608 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1609 3, 1, 1, 3, 1, 1, 4, 4, 5, 8,
1610 1, 1, 2, 4, 2, 6, 6, 5, 5, 6,
1611 6, 5, 5, 7, 7, 6, 6, 7, 7, 6,
1612 6, 4, 5, 4, 6, 4, 1, 1, 1, 1,
1613 3, 1, 2, 2, 2, 1, 4, 4, 3, 4,
1614 4, 3, 3, 2, 2, 4, 4, 3, 4, 3,
1615 3, 2, 2, 1, 4, 4, 3, 4, 4, 3,
1616 3, 2, 2, 4, 4, 3, 4, 3, 3, 2,
1617 2, 1, 1, 3, 3, 1, 1, 3, 3, 2,
1618 2, 2, 2, 2, 4, 2, 4, 5, 5, 1,
1619 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1620 1, 1, 4, 1, 3, 3, 3, 3, 3, 3,
1621 1, 3, 3, 3, 3, 1, 3, 3, 3, 3,
1622 2, 1, 2, 3, 3, 3, 3, 3, 3, 3,
1623 1, 3, 3, 3, 3, 3, 3, 3, 3, 1,
1624 3, 3, 3, 3, 1, 3, 3, 3, 3, 1,
1625 3, 3, 3, 3, 1, 3, 3, 1, 3, 3,
1626 1, 5, 5, 5, 5, 5, 5, 5, 5, 5,
1627 5, 5, 5, 5, 5, 5, 5, 1, 3, 3,
1628 3, 3, 3, 3, 3, 3, 1, 1, 1, 1,
1629 1, 1, 1, 1, 1, 1, 1, 1, 3, 3,
1630 2, 1, 3, 3, 1, 1, 2, 2, 3, 3,
1631 3, 3, 5, 3, 3, 3, 5, 3, 3, 1,
1632 2, 2, 3, 3, 3, 3, 5, 3, 3, 3,
1633 5, 3, 3, 2, 2, 2, 2, 3, 2, 5,
1634 6, 6, 1, 1, 1, 1, 1, 4, 1, 3,
1635 3, 3, 3, 3, 3, 1, 3, 3, 3, 3,
1636 3, 3, 3, 3, 1, 3, 3, 3, 3, 1,
1637 2, 3, 3, 3, 3, 3, 3, 3, 1, 3,
1638 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1639 3, 1, 3, 3, 3, 3, 1, 3, 3, 3,
1640 3, 1, 3, 3, 3, 3, 1, 3, 3, 1,
1641 3, 3, 1, 5, 5, 5, 5, 4, 4, 4,
1642 4, 5, 5, 5, 5, 4, 4, 4, 4, 5,
1643 5, 5, 5, 5, 5, 5, 5, 3, 3, 2,
1644 2, 1, 3, 3, 3, 3, 3, 3, 1, 2,
1645 3, 3, 3, 3, 2, 2, 2, 2, 1, 2,
1646 3, 3, 1, 1, 1, 1, 1, 1, 1, 1,
1647 1, 1, 1, 1, 1, 3, 3, 1, 3, 2,
1648 1, 2, 2, 2, 4, 4, 3, 3, 4, 5,
1649 4, 6, 6, 4, 5, 4, 6, 6, 2, 2,
1650 2, 5, 3, 5, 6, 5, 7, 7, 8, 8,
1651 7, 7, 3, 3, 3, 4, 3, 5, 5, 1,
1652 1, 1, 1, 1, 1, 1, 1, 1, 1, 2,
1653 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1654 1, 1, 1, 1, 1, 1, 4, 4, 4, 1,
1655 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1656 1, 1, 1, 1, 1, 1, 1, 1, 4, 4,
1657 4, 1, 1, 2, 2, 3, 5, 2, 3, 5,
1658 5, 5, 1, 3, 2, 2, 2, 3, 3, 3,
1659 3, 3, 3, 3, 3, 1, 1, 4, 3, 2,
1660 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
1661 3, 3, 1, 1, 1, 2, 1, 2, 1, 2,
1662 1, 2, 1, 2, 1, 2, 1, 2, 1, 2,
1663 1, 2, 1, 2, 1, 2, 1, 2, 1, 2,
1664 1, 2, 1, 2, 1, 2, 1, 2, 1, 2,
1665 1, 2, 1, 2, 1, 2, 1, 2, 1, 2,
1666 1, 2, 1, 2, 1, 2, 1, 1, 1, 2,
1667 1, 2, 1, 2, 1, 2, 4, 5, 1, 1,
1668 1, 2, 1, 2, 1, 2, 1, 2, 4, 5,
1669 1, 2, 1, 2, 1, 2, 1, 2, 1, 2,
1670 1, 2, 4, 5, 1, 2, 1, 2, 1, 2,
1671 1, 2, 1, 2, 1, 2, 4, 5, 3, 3,
1672 1, 3, 3, 3, 3, 1, 3, 4, 4, 4,
1673 3, 2, 3, 3, 3, 3, 2, 2, 2, 3,
1674 4, 1, 1, 2, 2, 1, 1, 4, 1, 3,
1675 2, 3, 3, 3, 3, 4, 4, 4, 2, 3,
1676 3, 3, 4, 4, 3, 2, 3, 3, 3, 4,
1677 4, 1, 2, 2, 3, 1, 1, 2, 2, 2,
1678 3, 1, 1, 2, 2, 2, 3, 1, 2, 3,
1679 2, 1, 2, 2, 3, 3, 1, 2, 2, 3,
1680 3, 1, 2, 2, 3, 3, 1, 3, 4, 1,
1681 4, 2, 5, 3, 1, 1, 1, 1, 1, 1,
1682 3, 3, 2, 2, 1, 3, 2, 3, 3, 1,
1683 3, 3, 1, 2, 3, 3, 1, 2, 1, 2,
1684 2, 2, 2, 3, 1, 1, 3, 3, 1, 3,
1685 4, 3, 4, 3, 3, 4, 3, 4, 1, 3,
1686 3, 4, 3, 3, 3, 4, 1, 3, 3, 3,
1687 3, 3, 1, 3, 2, 1, 1, 1, 1, 1,
1688 2, 1, 1, 1, 1, 2, 2, 2, 1, 1,
1689 1, 1, 1, 2, 1, 1, 4, 1, 3, 0,
1690 6, 8, 10, 12, 8, 10, 10, 5, 7, 9,
1691 11, 7, 9, 9, 3, 4, 4, 3, 3, 3,
1692 4, 4, 3, 2, 3, 2, 1, 1, 1, 1,
1693 1, 2, 3, 2, 2, 2, 3, 3, 2, 5,
1694 6, 2, 2, 2, 2, 2, 2, 1, 2, 2,
1695 3, 1, 2, 1, 2, 2, 1, 2, 2, 2,
1696 2, 2, 2, 1, 1, 2, 2, 1, 1, 2,
1697 2, 1, 2, 2, 1, 2, 1, 2, 2, 5,
1698 5, 7, 7, 5, 5, 3, 2, 5, 4, 4,
1699 7, 6, 6, 5, 7, 6, 4, 7, 9, 3,
1700 4, 4, 5, 5, 5, 6, 7, 6, 6, 5,
1701 5, 4, 3, 2, 1, 2, 3, 4, 3, 4,
1702 5, 4, 3, 2, 2, 2, 3, 3, 3, 3,
1703 2, 2, 1, 1, 4, 3, 3, 2, 4, 3,
1704 3, 2, 1, 2, 1, 1, 2, 1, 2, 3,
1705 3, 1, 2, 2, 2, 3, 4, 4, 2, 2,
1706 2, 2, 1, 2, 1, 2, 1, 2, 2, 1,
1707 2, 1, 2, 2, 2, 2, 1, 2, 2, 3,
1708 1, 1, 0, 6, 6, 5, 4, 1, 2, 2,
1709 1, 3, 3, 4, 1, 1, 2, 2, 6, 6,
1713 /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
1714 STATE-NUM when YYTABLE doesn't specify something else to do. Zero
1715 means the default is an error. */
1716 static const unsigned short int yydefact[] =
1718 1252, 261, 6, 639, 640, 641, 642, 643, 701, 702,
1719 703, 704, 705, 707, 710, 711, 708, 709, 695, 696,
1720 700, 706, 782, 783, 650, 1098, 239, 719, 915, 693,
1721 0, 0, 918, 1096, 1097, 720, 721, 712, 0, 0,
1722 0, 0, 0, 941, 0, 1221, 830, 715, 8, 4,
1723 0, 0, 0, 1215, 0, 1234, 895, 824, 0, 714,
1724 0, 689, 691, 832, 834, 697, 826, 828, 765, 713,
1725 0, 0, 690, 692, 0, 0, 0, 0, 0, 961,
1726 694, 916, 0, 0, 0, 1217, 1239, 1214, 1236, 1246,
1727 1241, 0, 0, 0, 1232, 0, 1229, 1212, 0, 0,
1728 1218, 0, 0, 0, 0, 1231, 1230, 0, 698, 942,
1729 694, 943, 895, 912, 911, 957, 0, 0, 0, 0,
1730 1108, 0, 241, 240, 0, 0, 249, 0, 248, 2,
1731 3, 0, 5, 0, 652, 651, 0, 0, 670, 0,
1732 0, 0, 0, 769, 0, 755, 754, 1111, 641, 1105,
1733 831, 1216, 1235, 895, 825, 833, 835, 827, 829, 961,
1734 694, 0, 0, 0, 0, 1002, 0, 0, 0, 901,
1735 0, 0, 634, 635, 636, 637, 638, 1015, 906, 818,
1736 890, 812, 0, 822, 0, 814, 816, 765, 820, 0,
1737 0, 1014, 0, 0, 1018, 1028, 0, 0, 0, 0,
1738 963, 0, 962, 0, 723, 724, 725, 726, 727, 729,
1739 732, 733, 730, 731, 722, 728, 741, 734, 0, 0,
1740 1141, 737, 0, 0, 802, 736, 808, 804, 806, 810,
1741 735, 0, 1117, 0, 0, 0, 0, 1207, 1211, 641,
1742 0, 1228, 1223, 1237, 0, 1224, 1240, 1222, 1238, 1233,
1743 1245, 1248, 0, 0, 0, 0, 0, 1243, 1244, 1247,
1744 1242, 1, 0, 1219, 1220, 1213, 0, 0, 475, 270,
1745 0, 0, 0, 0, 0, 0, 369, 370, 0, 0,
1746 0, 0, 0, 0, 0, 0, 0, 364, 0, 367,
1747 0, 0, 363, 365, 366, 368, 0, 265, 0, 264,
1748 305, 262, 474, 0, 359, 371, 0, 373, 380, 385,
1749 391, 0, 400, 409, 414, 419, 424, 427, 430, 447,
1750 0, 513, 512, 516, 518, 525, 534, 539, 548, 561,
1751 566, 571, 576, 579, 582, 0, 271, 296, 297, 298,
1752 299, 0, 0, 0, 0, 0, 699, 944, 914, 913,
1753 0, 958, 0, 896, 960, 734, 737, 208, 230, 229,
1754 228, 237, 0, 264, 371, 430, 632, 516, 0, 220,
1755 205, 253, 0, 0, 252, 259, 0, 0, 1099, 1100,
1756 712, 0, 176, 0, 179, 180, 0, 0, 0, 0,
1757 0, 183, 250, 4, 0, 0, 0, 0, 28, 30,
1758 164, 186, 189, 0, 190, 0, 115, 118, 0, 196,
1759 127, 0, 165, 139, 0, 174, 0, 197, 200, 0,
1760 0, 264, 0, 0, 0, 0, 966, 694, 0, 12,
1761 18, 0, 837, 836, 844, 838, 0, 840, 842, 765,
1762 849, 848, 254, 260, 251, 0, 0, 243, 242, 683,
1763 644, 647, 682, 686, 672, 0, 0, 0, 0, 223,
1764 224, 225, 226, 0, 218, 475, 771, 0, 0, 768,
1765 475, 770, 0, 0, 475, 772, 0, 0, 0, 963,
1766 0, 962, 0, 996, 0, 0, 1205, 1209, 1003, 1106,
1767 0, 0, 1107, 900, 0, 264, 633, 0, 0, 0,
1768 0, 652, 651, 653, 0, 756, 0, 0, 0, 1012,
1769 819, 895, 813, 823, 815, 817, 821, 694, 946, 945,
1770 0, 0, 0, 905, 0, 0, 904, 0, 0, 0,
1771 1044, 0, 902, 903, 964, 965, 0, 0, 1115, 1103,
1772 1114, 75, 1112, 1101, 895, 803, 809, 805, 807, 811,
1773 694, 0, 1116, 1113, 1104, 0, 1118, 0, 1206, 1210,
1774 1119, 0, 0, 0, 0, 0, 0, 0, 0, 1203,
1775 0, 0, 0, 1046, 0, 0, 0, 156, 1048, 1049,
1776 0, 0, 0, 264, 0, 371, 0, 0, 516, 611,
1777 618, 0, 1123, 1126, 1054, 1045, 1058, 0, 0, 0,
1778 0, 1145, 1143, 1047, 1060, 0, 1061, 1052, 1059, 0,
1779 1062, 1142, 0, 0, 1225, 895, 0, 0, 0, 1235,
1780 0, 0, 1211, 1249, 0, 0, 0, 917, 489, 0,
1781 0, 323, 0, 361, 355, 515, 514, 508, 0, 350,
1782 503, 351, 504, 0, 884, 874, 882, 876, 878, 880,
1783 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1784 0, 274, 0, 0, 0, 788, 784, 786, 790, 1006,
1785 0, 272, 0, 301, 0, 342, 0, 341, 0, 477,
1786 92, 0, 476, 0, 313, 314, 0, 0, 0, 457,
1787 458, 459, 460, 461, 462, 463, 464, 465, 466, 456,
1788 0, 0, 353, 506, 352, 505, 0, 0, 0, 0,
1789 0, 0, 0, 392, 540, 0, 0, 390, 0, 0,
1790 0, 0, 0, 0, 0, 0, 0, 0, 716, 0,
1791 321, 322, 0, 0, 0, 0, 0, 0, 0, 0,
1792 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1793 0, 0, 0, 0, 0, 0, 717, 718, 0, 0,
1794 0, 1264, 1265, 0, 0, 0, 959, 0, 10, 9,
1795 0, 0, 0, 0, 0, 694, 945, 206, 0, 208,
1796 0, 264, 0, 0, 856, 850, 852, 854, 0, 0,
1797 0, 16, 20, 0, 0, 0, 0, 0, 0, 0,
1798 0, 364, 0, 264, 0, 26, 21, 27, 24, 0,
1799 25, 23, 22, 29, 31, 163, 187, 82, 162, 188,
1800 121, 172, 0, 0, 0, 0, 131, 0, 0, 133,
1801 0, 0, 142, 175, 201, 198, 203, 202, 199, 204,
1802 114, 0, 0, 161, 0, 895, 752, 0, 971, 694,
1803 0, 11, 17, 742, 908, 1014, 0, 0, 968, 0,
1804 967, 0, 0, 184, 170, 191, 194, 0, 195, 0,
1805 171, 895, 0, 0, 652, 651, 845, 839, 841, 843,
1806 0, 0, 0, 649, 685, 0, 0, 7, 213, 209,
1807 221, 767, 0, 0, 61, 52, 91, 38, 37, 56,
1808 68, 44, 47, 0, 73, 55, 0, 0, 0, 985,
1809 987, 0, 984, 986, 0, 40, 43, 964, 965, 475,
1810 0, 976, 979, 995, 998, 1204, 1208, 1000, 1004, 1001,
1811 1005, 899, 897, 898, 1041, 1023, 1032, 657, 656, 0,
1812 0, 475, 757, 0, 0, 475, 758, 0, 0, 928,
1813 895, 0, 0, 0, 0, 0, 920, 0, 0, 0,
1814 1013, 949, 948, 0, 0, 947, 1017, 1016, 0, 889,
1815 1040, 892, 1026, 1034, 0, 888, 1039, 891, 1024, 1033,
1816 0, 1043, 1037, 893, 1019, 1029, 0, 1038, 894, 1021,
1817 1030, 0, 0, 0, 76, 0, 1102, 1120, 0, 0,
1818 0, 0, 0, 0, 1185, 0, 0, 0, 0, 0,
1819 0, 0, 0, 0, 1046, 0, 264, 0, 1183, 1051,
1820 1053, 0, 0, 1193, 1194, 1195, 0, 1201, 0, 0,
1821 0, 0, 0, 0, 157, 143, 1057, 1056, 1055, 0,
1822 0, 0, 619, 0, 475, 1050, 0, 0, 0, 0,
1823 470, 0, 0, 475, 0, 0, 0, 0, 1124, 1127,
1824 1129, 0, 1125, 1128, 1130, 0, 1156, 1063, 1226, 1227,
1825 241, 240, 0, 0, 0, 1209, 1210, 0, 1109, 0,
1826 796, 264, 0, 507, 798, 792, 794, 800, 1008, 0,
1827 491, 490, 0, 331, 332, 0, 0, 0, 0, 339,
1828 340, 0, 0, 0, 0, 0, 0, 0, 0, 885,
1829 875, 883, 877, 879, 881, 694, 952, 951, 0, 870,
1830 860, 868, 862, 864, 866, 0, 0, 0, 0, 0,
1831 0, 0, 0, 0, 0, 0, 0, 0, 263, 0,
1832 789, 785, 787, 791, 1007, 0, 0, 475, 0, 0,
1833 0, 104, 0, 300, 475, 0, 0, 93, 475, 0,
1834 0, 478, 312, 475, 308, 346, 480, 481, 345, 484,
1835 311, 0, 0, 452, 448, 302, 374, 519, 375, 520,
1836 376, 521, 475, 381, 526, 475, 382, 528, 386, 535,
1837 387, 536, 394, 542, 395, 543, 393, 541, 475, 405,
1838 557, 401, 549, 475, 406, 558, 402, 550, 412, 564,
1839 410, 562, 417, 569, 415, 567, 422, 574, 420, 572,
1840 425, 577, 428, 580, 607, 0, 628, 0, 0, 0,
1841 0, 454, 450, 479, 320, 475, 317, 0, 485, 488,
1842 319, 0, 0, 453, 449, 377, 522, 378, 523, 379,
1843 524, 475, 383, 530, 475, 384, 532, 388, 537, 389,
1844 538, 398, 546, 399, 547, 396, 544, 397, 545, 475,
1845 407, 559, 403, 551, 475, 408, 560, 404, 552, 413,
1846 565, 411, 563, 418, 570, 416, 568, 423, 575, 421,
1847 573, 426, 578, 429, 581, 608, 0, 0, 0, 0,
1848 455, 451, 0, 0, 1257, 1260, 0, 0, 1255, 1266,
1849 1267, 0, 0, 208, 236, 235, 234, 264, 238, 233,
1850 232, 231, 0, 0, 0, 0, 0, 0, 0, 0,
1851 948, 245, 0, 244, 126, 0, 124, 857, 851, 853,
1852 855, 0, 15, 19, 0, 178, 177, 181, 0, 971,
1853 694, 0, 138, 0, 136, 857, 0, 264, 0, 83,
1854 116, 119, 117, 120, 128, 129, 130, 132, 140, 141,
1855 113, 111, 112, 13, 744, 747, 0, 160, 0, 973,
1856 0, 972, 0, 0, 743, 895, 909, 969, 970, 895,
1857 169, 192, 168, 193, 167, 0, 0, 0, 0, 0,
1858 645, 646, 648, 0, 0, 675, 671, 0, 0, 0,
1859 0, 0, 0, 227, 219, 217, 35, 36, 74, 53,
1860 0, 54, 0, 63, 60, 71, 66, 72, 59, 89,
1861 38, 69, 62, 90, 58, 70, 67, 0, 57, 0,
1862 32, 34, 33, 988, 989, 0, 665, 655, 0, 660,
1863 654, 0, 919, 929, 930, 923, 921, 922, 950, 931,
1864 0, 0, 924, 0, 0, 0, 1027, 1035, 1014, 1025,
1865 1020, 1022, 1031, 738, 739, 740, 475, 0, 0, 1087,
1866 1092, 0, 0, 1088, 1094, 0, 0, 0, 0, 475,
1867 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1868 0, 0, 0, 0, 0, 1182, 475, 0, 1146, 264,
1869 0, 0, 0, 1192, 1198, 1199, 1196, 1197, 0, 0,
1870 0, 0, 144, 1084, 1089, 158, 475, 616, 612, 0,
1871 0, 0, 475, 468, 620, 475, 617, 614, 475, 469,
1872 621, 0, 1208, 1110, 0, 0, 354, 797, 799, 793,
1873 795, 801, 1009, 0, 492, 330, 475, 326, 494, 495,
1874 498, 329, 0, 0, 493, 338, 475, 335, 0, 499,
1875 502, 337, 0, 0, 293, 291, 0, 0, 935, 0,
1876 0, 0, 0, 0, 0, 955, 954, 0, 953, 0,
1877 0, 0, 871, 861, 869, 863, 865, 867, 0, 267,
1878 0, 266, 295, 0, 0, 0, 0, 0, 0, 1271,
1879 0, 0, 0, 372, 517, 273, 107, 105, 344, 343,
1880 98, 102, 309, 0, 310, 306, 307, 629, 0, 0,
1881 0, 0, 0, 0, 318, 0, 315, 316, 0, 0,
1882 0, 0, 1259, 1258, 1262, 0, 0, 0, 1254, 1253,
1883 0, 0, 0, 0, 0, 0, 0, 0, 219, 0,
1884 0, 122, 125, 0, 0, 173, 973, 0, 972, 0,
1885 0, 134, 137, 0, 14, 475, 0, 0, 753, 0,
1886 974, 975, 745, 748, 910, 185, 166, 846, 0, 247,
1887 246, 0, 674, 0, 214, 207, 215, 210, 211, 222,
1888 50, 45, 48, 51, 46, 49, 36, 42, 39, 41,
1889 0, 0, 992, 993, 664, 0, 659, 0, 932, 933,
1890 926, 925, 927, 1011, 1010, 78, 1085, 1090, 1086, 1091,
1891 0, 0, 0, 0, 475, 1159, 0, 475, 0, 1158,
1892 1191, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1893 0, 0, 1166, 0, 1147, 475, 1148, 475, 0, 0,
1894 0, 1069, 917, 1069, 0, 0, 154, 0, 0, 0,
1895 159, 0, 0, 509, 327, 0, 328, 324, 325, 336,
1896 0, 333, 334, 292, 886, 934, 936, 937, 277, 278,
1897 0, 956, 938, 0, 0, 0, 0, 0, 0, 0,
1898 0, 0, 0, 0, 268, 281, 282, 0, 0, 0,
1899 0, 0, 0, 0, 0, 0, 475, 348, 347, 472,
1900 630, 439, 599, 431, 583, 443, 603, 435, 591, 473,
1901 631, 440, 600, 432, 584, 444, 604, 436, 592, 475,
1902 441, 601, 433, 585, 445, 605, 437, 593, 442, 602,
1903 434, 586, 446, 606, 438, 594, 1261, 1263, 1256, 858,
1904 0, 123, 149, 974, 975, 0, 135, 85, 0, 0,
1905 847, 0, 0, 0, 0, 0, 0, 0, 0, 990,
1906 991, 980, 0, 0, 0, 0, 1149, 1150, 1153, 1154,
1907 1157, 1190, 0, 0, 0, 0, 0, 0, 0, 1163,
1908 475, 475, 0, 0, 0, 1067, 0, 1065, 1077, 0,
1909 1069, 0, 1069, 0, 0, 0, 0, 511, 510, 475,
1910 475, 887, 939, 940, 275, 276, 872, 285, 286, 0,
1911 0, 0, 0, 0, 279, 280, 289, 290, 0, 0,
1912 294, 1269, 1270, 1268, 859, 0, 746, 749, 751, 750,
1913 0, 0, 216, 212, 982, 0, 0, 0, 0, 0,
1914 0, 0, 1178, 1161, 0, 0, 1162, 1175, 0, 1165,
1915 1177, 0, 0, 1069, 0, 1069, 0, 1069, 0, 1070,
1916 0, 0, 0, 147, 0, 152, 0, 155, 0, 873,
1917 283, 284, 0, 0, 977, 287, 288, 182, 1151, 1152,
1918 0, 0, 1160, 1167, 0, 1164, 1176, 1081, 1068, 0,
1919 0, 0, 1078, 0, 0, 1069, 1069, 0, 1069, 146,
1920 145, 150, 148, 0, 0, 372, 517, 269, 978, 0,
1921 0, 1066, 0, 0, 1069, 1074, 0, 0, 1071, 0,
1922 0, 153, 1168, 1082, 1083, 1079, 0, 0, 0, 0,
1923 1069, 151, 0, 1075, 1076, 1072, 0, 1080, 0, 1073
1926 /* YYDEFGOTO[NTERM-NUM]. */
1927 static const short int yydefgoto[] =
1929 -1, 179, 47, 48, 888, 296, 394, 395, 396, 397,
1930 398, 399, 400, 401, 897, 898, 899, 900, 901, 902,
1931 903, 904, 905, 906, 907, 908, 222, 223, 402, 403,
1932 50, 297, 298, 673, 701, 406, 407, 408, 409, 410,
1933 411, 412, 413, 414, 415, 1982, 1983, 1984, 416, 580,
1934 581, 582, 417, 418, 419, 420, 357, 358, 459, 359,
1935 460, 360, 461, 462, 780, 361, 362, 51, 52, 53,
1936 54, 55, 299, 300, 301, 909, 910, 302, 303, 632,
1937 676, 1167, 304, 585, 634, 306, 307, 308, 309, 310,
1938 311, 312, 313, 314, 315, 316, 317, 318, 319, 662,
1939 755, 587, 1228, 321, 635, 322, 588, 637, 324, 325,
1940 326, 327, 328, 329, 330, 331, 332, 333, 334, 589,
1941 590, 1017, 1230, 369, 498, 181, 57, 451, 452, 182,
1942 59, 183, 184, 60, 61, 62, 63, 64, 65, 185,
1943 109, 186, 228, 846, 847, 187, 188, 189, 69, 70,
1944 71, 72, 73, 190, 669, 1088, 370, 424, 75, 76,
1945 441, 442, 789, 1125, 650, 951, 952, 77, 425, 79,
1946 426, 115, 110, 81, 518, 1116, 428, 520, 1118, 118,
1947 429, 430, 853, 1443, 1444, 915, 916, 1445, 164, 165,
1948 166, 167, 670, 1089, 194, 195, 196, 197, 198, 199,
1949 592, 593, 1905, 1906, 594, 595, 596, 84, 431, 232,
1950 85, 86, 233, 234, 235, 599, 600, 601, 602, 236,
1951 603, 809, 1512, 1019, 606, 607, 608, 1020, 610, 87,
1952 88, 336, 89, 90, 91, 92, 93, 94, 761, 1305,
1953 1306, 762, 763, 337, 338, 339, 340
1956 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
1958 #define YYPACT_NINF -1590
1959 static const int yypact[] =
1961 34238, -1590, -1590, -1590, -1590, 463, -1590, -1590, -1590, -1590,
1962 -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590,
1963 -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590,
1964 770, 107, -1590, -1590, -1590, -1590, -1590, -1590, 84, 190,
1965 295, 372, 141, 1188, 1236, -1590, -1590, -1590, 312, -1590,
1966 218, 372, 870, -1590, 887, 311, 1166, -1590, 378, -1590,
1967 1215, -1590, 319, -1590, -1590, -1590, -1590, -1590, 1221, -1590,
1968 1233, 334, -1590, 361, 729, 33886, 1236, 290, 34500, -1590,
1969 904, -1590, 1001, 36620, 32417, -1590, -1590, -1590, -1590, -1590,
1970 -1590, 34326, 33525, 557, -1590, 107, -1590, -1590, 141, 141,
1971 569, 507, 141, 26501, 372, -1590, -1590, 573, -1590, 1188,
1972 -1590, -1590, -1590, 290, -1590, -1590, 904, 1001, 1242, 20474,
1973 -1590, 556, 527, 570, 27664, 36136, -1590, 27780, -1590, -1590,
1974 -1590, 372, -1590, 1411, 1351, 1389, 163, 36136, -1590, 36282,
1975 27896, 36136, 28012, -1590, 28128, -1590, -1590, -1590, -1590, -1590,
1976 -1590, -1590, 311, 628, -1590, -1590, -1590, -1590, -1590, 712,
1977 904, 1001, 1004, 36620, 209, -1590, 1388, 562, 1396, -1590,
1978 24530, 581, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590,
1979 823, -1590, 871, -1590, 568, -1590, -1590, 657, -1590, 687,
1980 899, 7616, 458, 723, -1590, -1590, 802, 859, 704, 744,
1981 -1590, 322, -1590, 322, -1590, -1590, -1590, -1590, -1590, -1590,
1982 -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, 731, 786,
1983 -1590, -1590, 70, 38, -1590, -1590, -1590, -1590, -1590, -1590,
1984 -1590, 34062, -1590, 15586, 32887, 36803, 15715, -1590, 795, 930,
1985 915, -1590, -1590, 311, 33974, -1590, -1590, -1590, -1590, -1590,
1986 -1590, -1590, 319, 361, 34848, 36620, 35107, -1590, -1590, -1590,
1987 -1590, -1590, 805, 569, 569, -1590, 26501, 379, -1590, -1590,
1988 26574, 26647, 26647, 912, 36355, 26501, -1590, -1590, 926, 949,
1989 36355, 26501, 956, 965, 982, 992, 997, -1590, 20698, -1590,
1990 141, 24603, -1590, -1590, -1590, -1590, 908, -1590, 158, 995,
1991 -1590, -1590, -1590, 10895, -1590, 1416, 24603, -1590, 586, 1154,
1992 1395, 26501, 1088, 1465, 1018, 1019, 985, 1163, 80, 1416,
1993 1057, 811, -1590, 1416, -1590, 941, 1359, 1555, 1176, 1571,
1994 1067, 1105, 1119, 1245, 109, 1416, 569, -1590, -1590, -1590,
1995 -1590, 1151, 99, 35532, 1152, 1172, -1590, -1590, 290, -1590,
1996 1001, -1590, 322, -1590, -1590, 926, 908, 1189, -1590, -1590,
1997 -1590, -1590, 1036, 1097, -1590, 235, -1590, -1590, 275, -1590,
1998 36524, -1590, 20586, 36282, -1590, 929, 35844, 35192, -1590, -1590,
1999 926, 1202, -1590, 372, -1590, -1590, 107, 35277, 35022, 5665,
2000 36209, -1590, -1590, 908, 944, 1243, 1243, 1021, -1590, 1304,
2001 -1590, -1590, 1312, 180, 1153, 223, -1590, -1590, 477, 1315,
2002 -1590, 1326, -1590, -1590, 45, -1590, 1401, -1590, -1590, 27200,
2003 27316, 252, 903, 811, 32605, 34587, -1590, 904, 1001, -1590,
2004 -1590, 32511, -1590, -1590, 1354, -1590, 372, -1590, -1590, -1590,
2005 372, 36355, -1590, 929, -1590, 27432, 27548, 1392, 1412, -1590,
2006 1413, -1590, 1422, -1590, -1590, 791, 1414, 694, 107, -1590,
2007 -1590, -1590, -1590, 747, 159, 1063, -1590, 28244, 28360, -1590,
2008 1148, -1590, 28476, 28592, 1191, -1590, 28708, 28824, 18810, 1094,
2009 1001, 712, 322, -1590, 24676, 32887, -1590, 795, -1590, -1590,
2010 1236, 1236, -1590, -1590, 1426, 131, -1590, 1430, 1472, 35917,
2011 1524, 1470, 1485, -1590, 28940, -1590, 29056, 8275, 24749, 1236,
2012 -1590, 823, -1590, -1590, -1590, -1590, -1590, 83, 515, 184,
2013 544, 468, 1489, -1590, 35619, 1496, -1590, 35694, 1499, 35769,
2014 1503, 35990, -1590, -1590, -1590, -1590, 26501, 372, -1590, -1590,
2015 1513, -1590, -1590, -1590, 1515, -1590, -1590, -1590, -1590, -1590,
2016 904, 1425, 562, -1590, -1590, 1520, -1590, 15844, -1590, 795,
2017 -1590, 302, 24822, 1516, 1530, 1534, 62, 15973, 1539, 107,
2018 1540, 1541, 16102, 34150, 1251, 1542, 1546, 107, -1590, -1590,
2019 1547, 1549, 1551, 1424, 14291, 1416, 14425, 7254, 1416, 1416,
2020 -1590, 14554, -1590, -1590, -1590, -1590, -1590, 16231, 16360, 16489,
2021 16618, -1590, -1590, -1590, 795, 16747, -1590, -1590, -1590, 16876,
2022 -1590, -1590, 141, 141, 569, 602, 372, 1428, 1544, -1590,
2023 36620, 32887, -1590, -1590, 34935, 26501, 1556, -1590, -1590, 20826,
2024 248, -1590, 11046, -1590, -1590, 880, -1590, -1590, 24895, -1590,
2025 -1590, -1590, -1590, 36355, 1560, -1590, -1590, -1590, -1590, -1590,
2026 32033, 36355, 20954, 107, 32129, 36355, 26501, 141, 141, 141,
2027 26501, -1590, 11182, 11343, 11477, -1590, -1590, -1590, -1590, 5854,
2028 1552, 85, 18938, -1590, 281, -1590, 236, -1590, 19066, 1563,
2029 -1590, 19194, -1590, 1543, -1590, -1590, 9505, 1550, 26501, -1590,
2030 -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590,
2031 24603, 286, -1590, -1590, -1590, -1590, 26501, 26501, 26501, 26720,
2032 26793, 26501, 26501, 1395, 1555, 26501, 26501, -1590, 26501, 24968,
2033 25041, 24603, 24603, 24603, 26501, 26501, 11611, 24603, -1590, 1554,
2034 -1590, -1590, 22267, 1557, 26501, 24603, 26501, 26501, 26501, 26866,
2035 26939, 26501, 26501, 26501, 26501, 26501, 26501, 25114, 25187, 24603,
2036 24603, 24603, 26501, 26501, 11745, 24603, -1590, -1590, 674, 823,
2037 36209, -1590, -1590, 33613, 35532, 35532, -1590, 20474, -1590, -1590,
2038 20474, 20474, 24603, 24603, 31368, 521, 793, -1590, 702, 262,
2039 848, 914, 864, 1553, 1568, -1590, -1590, -1590, 372, 8113,
2040 35192, -1590, -1590, 107, 1558, 1567, 1569, 32793, 1564, 107,
2041 31937, 1188, 21066, 1059, 35362, -1590, -1590, 795, -1590, 795,
2042 -1590, -1590, -1590, 795, -1590, -1590, 1572, -1590, -1590, 1103,
2043 -1590, -1590, 3269, 3269, 1243, 1243, -1590, 1243, 141, -1590,
2044 1243, 1243, -1590, -1590, 1034, -1590, -1590, 1034, -1590, -1590,
2045 1115, 25260, 1234, -1590, 26501, 631, -1590, 1446, 290, 904,
2046 1001, -1590, -1590, 244, 581, 7616, 18682, 639, -1590, 322,
2047 -1590, 322, 1236, -1590, -1590, -1590, 1574, 300, 1580, 305,
2048 -1590, 252, 32699, 20474, -1590, -1590, 1582, -1590, -1590, -1590,
2049 36282, 36282, 26501, 107, -1590, 31028, 201, -1590, 763, 836,
2050 1545, -1590, 36282, 107, -1590, -1590, -1590, 1243, -1590, -1590,
2051 -1590, -1590, -1590, 32979, 1447, -1590, 19322, 36712, 19450, -1590,
2052 -1590, 10698, -1590, -1590, 35447, -1590, -1590, 712, 1094, -1590,
2053 25333, -1590, -1590, -1590, -1590, -1590, 795, -1590, -1590, -1590,
2054 -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, 1422, 261,
2055 296, 1578, -1590, 29172, 29288, 1579, -1590, 29404, 29520, -1590,
2056 927, 268, 519, 1585, 1591, 1592, -1590, 1562, 1583, 1586,
2057 1126, 515, 184, 34674, 25406, 515, -1590, -1590, 36063, -1590,
2058 -1590, 823, -1590, -1590, 36063, -1590, -1590, 823, -1590, -1590,
2059 36063, -1590, -1590, 823, -1590, -1590, 36063, -1590, 823, -1590,
2060 -1590, 1593, 1598, 351, -1590, 19578, -1590, -1590, 17005, 1566,
2061 1597, 17134, 26501, 26501, -1590, 25479, 25552, 1600, 1601, 1607,
2062 21153, 1610, 107, 22340, -1590, 1444, 1449, 22413, 1656, -1590,
2063 -1590, 22486, 1608, -1590, -1590, -1590, 1609, 1612, 22559, 14683,
2064 141, 1616, 26501, 26501, 107, -1590, -1590, -1590, -1590, 21281,
2065 354, 25625, -1590, 1336, -1590, -1590, 27012, 11879, 12013, 25698,
2066 -1590, 27085, 12147, 1520, 17263, 17392, 17521, 17650, -1590, -1590,
2067 -1590, 17779, -1590, -1590, -1590, 17908, -1590, -1590, 569, 569,
2068 1619, 1627, 31143, 31258, 32887, -1590, -1590, 1623, -1590, 923,
2069 -1590, 252, 1626, -1590, -1590, -1590, -1590, -1590, 5854, 1630,
2070 1563, -1590, 1570, -1590, -1590, 22632, 1573, 26501, 1576, -1590,
2071 -1590, 22705, 1577, 26501, 1632, 36428, 20474, 34413, 26501, 1637,
2072 -1590, -1590, -1590, -1590, -1590, 484, 1636, 1640, 1631, 1643,
2073 -1590, -1590, -1590, -1590, -1590, 32225, 22778, 1646, 1647, 1650,
2074 26501, 1645, 32321, 1657, 497, 103, 194, 1658, -1590, 107,
2075 -1590, -1590, -1590, -1590, -1590, 26501, 141, 330, 33070, 19706,
2076 1655, -1590, 24603, -1590, 337, 33161, 19834, -1590, 338, 33252,
2077 19962, -1590, -1590, -1590, -1590, -1590, 1074, 1663, -1590, -1590,
2078 -1590, 22851, 6163, -1590, -1590, 1655, -1590, -1590, -1590, -1590,
2079 -1590, -1590, -1590, 586, 941, -1590, 586, 941, 1154, 1359,
2080 1154, 1359, 1395, 1555, 1395, 1555, 1395, 1555, -1590, -1590,
2081 -1590, 1088, 1176, -1590, -1590, -1590, 1088, 1176, -1590, -1590,
2082 1465, 1571, -1590, -1590, 1018, 1067, -1590, -1590, 1019, 1105,
2083 985, 1119, 1163, 1245, -1590, 34, -1590, 22924, 1660, 8972,
2084 1661, -1590, -1590, -1590, -1590, -1590, -1590, 1111, -1590, -1590,
2085 -1590, 22997, 9959, -1590, -1590, -1590, -1590, -1590, -1590, -1590,
2086 -1590, -1590, 586, 941, -1590, 586, 941, 1154, 1359, 1154,
2087 1359, 1395, 1555, 1395, 1555, 1395, 1555, 1395, 1555, -1590,
2088 -1590, -1590, 1088, 1176, -1590, -1590, -1590, 1088, 1176, -1590,
2089 -1590, 1465, 1571, -1590, -1590, 1018, 1067, -1590, -1590, 1019,
2090 1105, 985, 1119, 1163, 1245, -1590, 23070, 1662, 10351, 1664,
2091 -1590, -1590, 107, 107, -1590, -1590, 371, 1180, -1590, -1590,
2092 -1590, 33704, 33795, -1590, -1590, -1590, -1590, 974, -1590, -1590,
2093 -1590, -1590, 23143, 1665, 21537, 1666, 23216, 1667, 21610, 1668,
2094 793, -1590, 20474, -1590, -1590, 20474, -1590, 59, -1590, -1590,
2095 -1590, 585, -1590, -1590, 435, -1590, -1590, -1590, 1466, 1654,
2096 904, 1001, -1590, 1671, -1590, 643, 617, 1055, 1677, -1590,
2097 -1590, -1590, -1590, -1590, -1590, -1590, -1590, 569, -1590, -1590,
2098 3806, -1590, -1590, -1590, -1590, -1590, 20090, -1590, 660, 290,
2099 322, 290, 322, 26501, -1590, 844, -1590, -1590, -1590, 1678,
2100 -1590, 1572, -1590, 1563, -1590, 1477, 934, 20474, 986, 1085,
2101 -1590, -1590, -1590, 29636, 29752, 1679, -1590, 1397, 36355, 36355,
2102 36355, 36355, 26501, -1590, -1590, -1590, -1590, 795, -1590, -1590,
2103 25771, -1590, 25844, -1590, -1590, -1590, 1480, 1447, -1590, -1590,
2104 1243, -1590, -1590, -1590, -1590, -1590, 1480, 1447, -1590, 25917,
2105 -1590, -1590, -1590, -1590, -1590, 18037, -1590, -1590, 142, -1590,
2106 -1590, 217, -1590, -1590, -1590, -1590, -1590, -1590, 515, -1590,
2107 1683, 1684, -1590, 1674, 1682, 1685, -1590, -1590, 7616, -1590,
2108 -1590, -1590, -1590, -1590, -1590, -1590, 347, 33343, 20218, -1590,
2109 -1590, 21281, 21281, -1590, -1590, 23289, 14812, 23362, 23435, -1590,
2110 21409, 23508, 14941, 21153, 1689, 1690, 21153, 26501, 25990, 1722,
2111 23581, 1612, 10136, 141, 21153, 1692, 31748, 21153, -1590, 1479,
2112 23654, 21683, 23727, -1590, -1590, -1590, -1590, -1590, 95, 141,
2113 1695, 1175, -1590, -1590, -1590, -1590, -1590, -1590, -1590, 1700,
2114 1701, 107, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590,
2115 -1590, 36282, -1590, -1590, 1702, 1703, -1590, -1590, -1590, -1590,
2116 -1590, -1590, -1590, 12281, -1590, -1590, -1590, -1590, 1274, 1705,
2117 -1590, -1590, 23800, 21756, -1590, -1590, -1590, -1590, 1334, -1590,
2118 -1590, -1590, 23873, 21829, -1590, -1590, 1706, 1142, -1590, 1707,
2119 1709, 1711, 1704, 1710, 20474, 1636, 1640, 34761, 1636, 26501,
2120 20474, 26501, 1669, -1590, -1590, -1590, -1590, -1590, 1691, -1590,
2121 26063, -1590, -1590, 1712, 1713, 26501, 26501, 1708, 4570, -1590,
2122 107, 107, 26501, -1590, -1590, 569, -1590, -1590, -1590, -1590,
2123 -1590, -1590, -1590, 12415, -1590, -1590, -1590, -1590, 26136, 12549,
2124 12683, 26209, 12817, 12951, -1590, 13085, -1590, -1590, 13219, 13353,
2125 13487, 13621, -1590, -1590, -1590, 674, 1714, 560, -1590, -1590,
2126 24603, 24603, 24603, 24603, 24603, 24603, 24603, 24603, 1781, 1207,
2127 20474, -1590, -1590, 1716, 1243, -1590, 1654, 322, 1654, 322,
2128 1717, -1590, -1590, 1719, -1590, 348, 33434, 20346, -1590, 904,
2129 290, 290, 1718, 1720, -1590, -1590, -1590, -1590, 1250, -1590,
2130 -1590, 31028, 1725, 31028, -1590, -1590, 1727, -1590, 1730, -1590,
2131 2691, -1590, -1590, 2691, -1590, -1590, -1590, 2691, -1590, -1590,
2132 18166, 18295, -1590, -1590, -1590, 31028, -1590, 31028, -1590, -1590,
2133 -1590, -1590, -1590, -1590, 1126, -1590, -1590, -1590, -1590, -1590,
2134 21153, 9138, 21153, 9138, 31463, -1590, 21281, -1590, 15070, -1590,
2135 -1590, 21153, 21153, 23946, 21153, 24019, 10527, 1715, 21902, 24092,
2136 117, 18424, -1590, 26501, -1590, 31558, -1590, 31843, 21153, 21975,
2137 26282, 141, 1732, 141, 195, 1731, -1590, 107, 26501, 26501,
2138 107, 13755, 13889, -1590, -1590, 14023, -1590, -1590, -1590, -1590,
2139 14157, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590,
2140 1255, 1636, -1590, 1738, 1739, 1733, 1735, 1273, 1736, 1740,
2141 20474, 26501, 20698, 25333, -1590, -1590, -1590, 1741, 1742, 1743,
2142 1744, 26501, 1749, 1750, 1756, 1757, -1590, -1590, -1590, -1590,
2143 -1590, -1590, -1590, -1590, 275, -1590, -1590, -1590, 275, -1590,
2144 -1590, -1590, -1590, -1590, 275, -1590, -1590, -1590, 275, -1590,
2145 -1590, -1590, -1590, 275, -1590, -1590, -1590, 275, -1590, -1590,
2146 -1590, 275, -1590, -1590, -1590, 275, -1590, -1590, -1590, -1590,
2147 1275, -1590, -1590, 1654, 1654, 24603, -1590, -1590, 26501, 26501,
2148 -1590, 29868, 29984, 31028, 30100, 30216, 36355, 36355, 18553, -1590,
2149 -1590, -1590, 30332, 30448, 30564, 30680, 1761, 1762, -1590, -1590,
2150 -1590, -1590, 21153, 26501, 26355, 1732, 15199, 15328, 22048, -1590,
2151 31653, -1590, 21281, 24165, 15457, -1590, 1069, 606, -1590, 280,
2152 141, 1764, 141, 423, 546, 1775, 1349, -1590, -1590, -1590,
2153 -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, -1590, 1290,
2154 1765, 1766, 1778, 22121, -1590, -1590, -1590, -1590, 1769, 1772,
2155 -1590, -1590, -1590, -1590, -1590, 1782, -1590, -1590, -1590, -1590,
2156 30796, 30912, -1590, -1590, -1590, 21153, 21153, 24238, 22194, 21153,
2157 24311, 10527, 1783, -1590, 21153, 26501, -1590, -1590, 21281, -1590,
2158 -1590, 1786, 141, 141, 26501, 141, 1790, 141, 1206, -1590,
2159 326, 1243, 625, -1590, 343, -1590, 1737, -1590, 107, -1590,
2160 -1590, -1590, 26428, 24384, -1590, -1590, -1590, -1590, -1590, -1590,
2161 1783, 21153, -1590, -1590, 24457, -1590, -1590, -1590, -1590, 1350,
2162 1793, 1352, -1590, 1260, 1794, 141, 141, 1796, 141, -1590,
2163 -1590, -1590, -1590, 423, 655, -1590, -1590, -1590, -1590, 21153,
2164 1797, -1590, 1802, 1804, 141, -1590, 1374, 1381, -1590, 1262,
2165 714, -1590, -1590, -1590, -1590, -1590, 1382, 1805, 1806, 1808,
2166 141, -1590, 1810, -1590, -1590, -1590, 1384, -1590, 1811, -1590
2169 /* YYPGOTO[NTERM-NUM]. */
2170 static const short int yypgoto[] =
2172 -1590, 2678, -19, 58, -1590, 1803, -1590, -1590, -1590, -1590,
2173 -1590, -1590, 1487, 1498, -864, -1590, -856, -870, 183, 187,
2174 -839, -655, -588, -1590, -543, -524, -1590, -1590, 1500, 1501,
2175 -1590, 2621, 1289, -1590, -197, 792, 800, -1590, -1590, -1590,
2176 -1590, 1502, -1590, -1590, -1590, -570, -1589, -168, -1590, -1590,
2177 -1590, -1590, 1688, 1779, -124, -74, -126, -746, -1590, -743,
2178 -1590, -706, -1590, 1016, -46, 1165, -865, 23, 1694, 74,
2179 1698, -35, 0, -1590, 1676, 8083, 1687, -1590, 3306, -1590,
2180 -614, -703, 1693, 4210, -1590, -1590, -223, 269, 537, -97,
2181 -1590, 726, -576, 87, 57, 92, 100, 2380, 3897, 2799,
2182 -218, 8800, 122, 2176, -1590, 1697, 4723, -1590, -185, 629,
2183 647, 251, 730, 221, 298, 395, 411, 450, 3515, 693,
2184 -381, 8300, 453, 47, 520, 6416, -61, 1054, -109, 1680,
2185 7805, 6959, -1590, -1590, -1590, -68, -60, -65, -1590, 5833,
2186 -1590, 272, 1865, 561, -457, 2689, 7115, -1590, 8253, -1590,
2187 -1590, -1590, -45, 3532, -1590, -1590, 3913, 2524, 5, -1590,
2188 -1590, 1387, 1561, 1283, 1673, -56, -31, 6570, 5956, 6619,
2189 -315, -84, 2756, 1101, -508, -1053, 9765, -264, -566, -16,
2190 358, -247, 1027, -472, -458, -836, -822, 154, 1134, 1136,
2191 -59, 1729, -650, -1590, -302, -292, 1533, -1590, -503, -501,
2192 8441, -366, -10, -717, -1590, -1590, -1590, 1874, -1590, 102,
2193 1885, -30, 110, -108, 1734, 1032, 1035, -1590, -1590, -1590,
2194 -82, 620, -1455, -188, -1590, -1590, -1590, 646, -1590, 1887,
2195 -11, 69, 1880, 1548, -1590, -1590, -1590, 1890, -729, 331,
2196 -1590, -721, 884, -1590, -1590, -1590, -1590
2199 /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
2200 positive, shift that token. If negative, reduce the rule which
2201 number is the opposite. If zero, do what YYDEFACT says.
2202 If YYTABLE_NINF, syntax error. */
2203 #define YYTABLE_NINF -1252
2204 static const short int yytable[] =
2206 56, 237, 1127, 445, 954, 1371, 955, 1034, 1396, 961,
2207 156, 965, 923, 458, 154, 155, 467, 168, 472, 1372,
2208 476, 1314, 192, 252, 1315, 1319, 924, 455, 1320, 1238,
2209 99, 101, 121, 351, 1309, 1627, 1425, 1431, 1435, 540,
2210 152, 106, 1310, 1430, 112, 1749, 253, 193, 605, 243,
2211 1424, 123, 1434, 446, 246, 485, 132, 1760, 135, 162,
2212 162, 1316, 1585, 1004, 1588, 1321, 468, 1426, 473, 1436,
2213 477, 538, 1166, 248, 146, 153, 112, 351, 180, 131,
2214 112, 486, 112, 704, 56, 341, 1, 700, 1131, 244,
2215 265, 56, 56, 463, 674, 262, 254, 725, 1761, 100,
2216 265, 727, 1, 922, 342, 735, 777, 345, 265, 122,
2217 1, 107, 858, 860, 830, 831, 112, 112, 1237, 363,
2218 1761, 705, 265, 132, 421, 434, 753, 421, 597, 1148,
2219 792, 448, 145, 450, 1, 1155, 450, 434, 1159, 464,
2220 421, 434, 421, 1714, 421, 1210, 97, 621, 1149, 151,
2221 1414, 494, 558, 132, 1156, -471, 541, 1160, 242, 679,
2222 112, 112, -207, 832, 453, 251, 1, 263, 264, 1660,
2223 495, 267, 551, 1281, 1005, 521, 131, 852, 1661, 156,
2224 132, 816, 502, 154, 155, 539, 252, 1, 252, 447,
2225 146, 511, 43, 154, 155, 507, 102, 935, 1910, 265,
2226 265, 112, 1405, 112, 1, 1146, 508, 936, 1762, 253,
2227 488, 253, 757, 726, 713, 162, 1763, 497, 1716, 619,
2228 1610, 243, 972, 1344, 819, 978, 246, 984, 162, 989,
2229 1895, 544, 973, 1059, 1063, 979, 583, 985, 1763, 990,
2230 613, 1577, 754, 953, 615, 248, 779, 458, 145, 1090,
2231 681, 1427, 725, 1437, 56, 1, 56, 1715, 28, 883,
2232 -663, 624, 1446, 32, 1, 1, 766, 961, 965, 522,
2233 38, 954, 67, 955, 644, 893, 680, 616, 1431, 1435,
2234 644, 454, 1150, 1975, 1430, 1431, 1435, 1175, 495, 1431,
2235 1435, 1430, 753, 1434, 1894, 1430, 507, 1449, 817, 1,
2236 1434, 1391, 103, 553, 1434, 1168, 1393, 508, 1911, 614,
2237 1436, 1611, 806, 808, 810, 812, 1912, 1436, 1428, 1406,
2238 1438, 1436, 651, 32, -999, 1, -999, 782, 655, 2016,
2239 623, -108, 1717, 120, 883, -658, 556, 560, -99, -103,
2240 1348, 680, 132, 759, 557, 561, 1, 158, -81, -88,
2241 112, 1168, 112, 1152, 1, 1169, 67, 1, 83, 671,
2242 1153, 129, 130, 67, 67, 1383, 680, 1041, 772, 856,
2243 1049, 681, 781, 464, 1, 1, 784, 511, 767, 1447,
2244 943, 1, 947, 795, 265, 524, 796, 759, 784, 803,
2245 759, 938, 1559, 1976, 193, 2022, 766, 1972, 1569, 1151,
2246 2, 1977, 169, 925, 1151, 1144, 2, 104, 773, 605,
2247 605, 605, 605, 170, 1450, 1395, 1981, 554, 817, 421,
2248 421, 132, 119, 680, 845, 180, 1, 112, 112, 128,
2249 944, 871, 948, 163, 44, 351, 875, 138, 1, 2017,
2250 146, 876, 83, 1972, 1525, 421, 421, 2018, -108, 255,
2251 83, 2022, 1477, 142, 1458, -99, -103, 889, 890, 522,
2252 1460, 2021, 1461, 515, 1475, -81, -88, 421, 421, 967,
2253 1659, 1478, 421, 421, 162, 162, 421, 421, 820, 143,
2254 112, 1558, 112, 1176, 1178, 1180, 1644, 1568, 1645, 957,
2255 112, 112, 627, 960, 1437, 132, 1981, 133, 145, 759,
2256 450, 1437, 265, 674, 421, 1437, 421, 950, 495, 112,
2257 953, 132, 1074, 1245, 1247, 1249, 158, 112, 992, 112,
2258 525, 1177, 1179, 1181, 971, 1341, 158, 977, 67, 983,
2259 674, 988, 1688, 1791, 858, 860, 1356, 993, 674, 922,
2260 95, 1579, 28, 1343, 1387, 966, 1388, 32, 1664, 1,
2261 112, 1246, 1248, 1250, 38, 958, 252, 261, 674, 1598,
2262 667, 1438, 714, 154, 155, 265, 1607, 1016, 1438, 1022,
2263 1128, 523, 1438, 1, 265, 524, 1, 1035, 265, 253,
2264 -1010, -1010, 1309, 1309, 96, -1010, 1319, 556, 1, 1658,
2265 1310, 1310, 821, 43, 822, 557, 1107, 583, 583, 583,
2266 583, 2, 163, 1708, 1580, 1, 1581, 1431, 1435, 999,
2267 1609, 265, 620, 1430, 255, 132, 1071, 1709, 1192, 1194,
2268 1, 1196, 1434, 266, 511, 852, 1321, 963, 1, 1081,
2269 43, 1, 1480, 774, 1, 1484, 527, 372, 964, 1436,
2270 528, 1313, -8, 1104, 508, 1313, 1261, 1263, 1265, 1267,
2271 1109, 1119, 495, 1129, 1109, 1119, -1011, -1011, 1, 1985,
2272 1528, -1011, 1694, 1, 1697, 1534, 1466, 1441, 1537, 1139,
2273 1540, 371, 1469, 1524, 1070, 1858, 1467, 1, 1470, 491,
2274 373, 1068, 1069, 1162, 1471, 374, 503, 1170, 1059, 1063,
2275 1059, 1063, 343, 26, 1472, 706, 515, 1, 499, 556,
2276 560, 1060, 1064, 238, 1662, 1, 1699, 557, 561, 1061,
2277 1065, 129, 130, -911, 1168, 707, 708, 1, 1974, 1790,
2278 1168, 478, 887, 556, 525, 1797, 1134, 1135, 1136, 1234,
2279 887, 557, 1, 1240, 28, 791, 1672, 129, 130, 32,
2280 129, 130, 1364, 1365, 220, 1366, 38, 478, 1368, 1369,
2281 1376, 1386, -1036, 1660, 458, 458, 529, 2, 1304, 132,
2282 1307, 1403, 1671, 759, 759, 759, 458, 1317, 2041, 43,
2283 363, 1317, 44, 1, 180, 97, 504, 1407, 889, 890,
2284 1218, 844, 851, 487, 1302, 1303, -911, 1981, 146, 1337,
2285 511, -911, 884, 1035, -684, 1860, 335, 511, -911, 1353,
2286 1355, 98, 1357, 528, 759, 505, 1431, 1435, 1289, 1214,
2287 605, 1404, 1430, 605, 643, 1416, 1220, 532, 729, 730,
2288 731, 1434, 1458, 1437, 1552, 1222, 1, -911, -911, -911,
2289 1448, 1451, 2051, 1676, 1398, 1399, 526, 1285, 1436, 521,
2290 527, 1576, 112, 536, 1291, 132, 145, 1, 144, 112,
2291 112, 605, 1677, 1293, 559, 1385, 604, 533, 891, 112,
2292 530, 112, 1389, 496, 892, -684, 605, 605, 605, 605,
2293 -684, 132, 845, 363, 1, 622, 1297, -684, 766, 1408,
2294 464, 464, 609, 450, 1409, 421, 450, 1098, 1099, 1100,
2295 1438, 1374, 464, 1415, 1323, 1327, 158, 1367, 537, 2,
2296 -684, 1086, 1, -684, 840, 774, 885, 1, 883, -684,
2297 683, 684, 685, 611, 112, -1036, 508, -207, 1, 529,
2298 97, 625, 1613, 732, 667, -207, 1, 2, -890, 1400,
2299 1, 733, 129, 130, 734, 1929, -475, -475, -475, 450,
2300 450, 1142, 1211, 421, 421, 1463, 612, 421, 421, 445,
2301 132, 2, 1410, 129, 130, 674, 1684, 1411, 1812, 1331,
2302 1614, 1770, 112, 180, 495, 892, 1193, 1195, 759, 1197,
2303 1282, 132, -1042, 1712, 759, 1333, 531, 132, 1183, 1186,
2304 759, 892, 620, 132, 335, -207, 759, 1713, 132, 124,
2305 500, 125, 1101, 132, 1262, 1264, 1266, 1268, 583, 446,
2306 1102, 583, 126, 1103, 1, 483, 127, 95, 1252, 1255,
2307 1016, 1464, 1022, 43, 807, 686, 44, 813, 506, 841,
2308 1215, 1509, 1437, 687, 643, -207, 688, 678, 959, 1945,
2309 1332, -207, 515, 681, 1522, 643, 129, 130, 652, 583,
2310 1170, -475, -475, -475, -890, 1687, 1909, 768, 1286, -475,
2311 736, 770, -475, 1494, 583, 583, 583, 583, 1, 805,
2312 1545, 653, 515, 220, 922, 1387, -778, 1388, 656, 515,
2313 737, 738, 421, 421, 667, 28, 515, 657, 28, 759,
2314 32, 132, 1000, 32, 1793, -207, 1794, 38, 759, 1438,
2315 38, -207, 1555, 681, 658, -913, 1561, 1689, 1565, 1518,
2316 715, 716, 1571, 892, 659, 926, 363, 180, -207, 660,
2317 -477, -477, -477, 44, 681, 1727, 1729, 723, 1219, -994,
2318 484, -994, -476, -476, -476, 1592, 1740, 515, 1804, -895,
2319 1952, 1953, 1592, -895, -895, 1221, 811, -778, -895, 132,
2320 220, -895, -778, 721, 515, -895, 1290, 769, 1342, -778,
2321 722, -775, 1932, 770, -475, 1582, 1060, 1064, 1060, 1064,
2322 -265, -265, -265, 1292, 1061, 1065, 1061, 1065, -913, 1,
2323 728, 913, -778, -913, 681, 1223, 556, 1603, 681, 724,
2324 -913, -778, 1971, 1, 557, 97, 1972, 1622, 743, 744,
2325 1973, 1623, 749, 1978, -781, 1980, 1690, 1914, 717, 718,
2326 28, 496, 892, 1294, 1723, 32, 1313, 1299, -207, -913,
2327 -913, -913, 38, 771, -207, 1615, 681, 604, 604, 604,
2328 604, 1157, -775, -477, 1634, 1325, 1329, -775, 1635, 335,
2329 851, 26, 18, 19, -775, -476, 750, 1, 1879, 1,
2330 1075, 1076, 1818, 609, 609, 609, 609, 1534, 1188, 1190,
2331 1540, 751, 1880, 1784, 1818, 496, 2009, -775, 2011, 770,
2332 2013, 752, 28, 29, 756, -781, -775, 32, 818, -265,
2333 -781, 764, 1440, -265, 38, 129, 130, -781, 1257, 1259,
2334 709, 710, 1313, 1696, 1313, 1698, 745, 746, 1766, 129,
2335 130, 765, 1767, 605, 605, 18, 19, 43, 2036, 2037,
2336 -781, 2039, 1642, 1643, 605, 767, 1646, 132, 28, -781,
2337 28, 759, 759, 32, 793, 32, 28, 2046, 1859, 2014,
2338 38, 32, 38, 1972, 770, 28, 29, 2015, 38, 922,
2339 32, 139, 1317, 2056, 136, 363, 137, 38, 1184, 1187,
2340 -766, 1663, -766, 43, 1522, 43, 44, 1373, 44, 335,
2341 112, 112, 140, 335, 141, 353, 1673, 132, 1189, 1191,
2342 1550, 1870, 220, 1030, 1375, 913, 1921, 770, 1253, 1256,
2343 1891, 913, 770, 2033, 913, 2049, 1647, 1972, 112, 1972,
2344 112, 2034, 112, 2050, 1926, 132, 1944, 1774, 1258, 1260,
2345 770, 1775, 770, 335, 1818, 824, 825, 363, 1692, 1818,
2346 -673, 1989, 1401, 421, 421, 711, 712, 770, 1695, 1695,
2347 1695, 1695, 449, 405, 1, 458, 405, 826, 2024, 814,
2348 335, 827, 922, 828, 1529, 1530, 1531, 815, 335, 405,
2349 1682, 405, 823, 405, 689, 690, 691, 692, 693, 694,
2350 695, 696, 697, 698, 829, 1201, 1206, 1779, 335, 1202,
2351 1207, 1780, 1724, 674, 674, 674, 674, 674, 674, 674,
2352 674, 1712, 1987, 2030, 873, 2032, 1988, 1972, 511, 1972,
2353 -669, -673, -669, 1272, 1277, 1713, -673, 1273, 1278, 719,
2354 720, 583, 583, -673, 1465, 739, 740, 2047, 18, 19,
2355 1016, 1972, 583, 1016, 2048, 2052, 1016, 2058, 1972, 1972,
2356 1509, 1972, 880, 489, 1016, 490, -673, 1016, -668, -673,
2357 -668, 492, 1693, 490, 883, -673, 833, 1417, 28, 29,
2358 2027, 1879, 881, 32, 456, 937, 1495, 1, 469, 882,
2359 38, 1035, 699, 886, 913, 1880, 1967, 496, 1970, 883,
2360 996, 464, 490, 681, 1161, 1039, 1, 1072, 605, 125,
2361 931, 1169, 922, 1, 932, 1233, 1503, 1, 1239, 630,
2362 1, 1377, 1421, 1378, 1422, 741, 742, 1871, 681, 1874,
2363 1504, 1554, 1750, 1, 1560, 496, 1, 1564, 1570, 1,
2364 1, 1665, 1862, 1378, 363, 747, 748, 180, 1764, 939,
2365 363, 1882, 1686, 1884, 1378, 1419, 933, 1420, 681, 913,
2366 1753, 913, 2006, 1701, 940, 1704, 968, 1702, 1139, 1705,
2367 1813, 1814, 922, 974, 1360, 1362, 980, 1872, 604, 1875,
2368 986, 604, 1361, 1363, 927, 929, 928, 930, 1583, 1054,
2369 1056, 994, 1055, 1057, 995, 997, 1795, 1001, 1798, 257,
2370 260, 1883, 1002, 1885, 609, 1304, 1003, 609, 1311, 1312,
2371 1604, 1021, 1807, 1809, 1032, 1023, 1024, 496, 1033, 604,
2372 363, 1412, 1036, 1073, 1037, 1145, 1038, 112, 674, 112,
2373 1106, 1078, 1334, 1345, 604, 604, 604, 604, 1335, 112,
2374 58, 1157, 1346, 1352, 1347, 609, 1455, 1481, 913, 1390,
2375 1359, 421, 1397, 421, 1542, 1392, -761, -764, 1452, 496,
2376 609, 609, 609, 609, 1453, 1454, 1473, 1456, 405, 405,
2377 1457, 1474, 1505, 1497, 605, 421, 605, 421, 1482, 1498,
2378 869, 1496, 1500, 1513, 1514, 335, 335, 1515, 1519, 1541,
2379 1016, 1016, 1016, 1016, 405, 405, 583, 373, 1543, 1546,
2380 515, 1016, 1016, 1553, 1016, 1574, 1016, 1584, 1587, 1950,
2381 1313, 1313, 1107, 1590, 1589, 58, 405, 405, 1016, 1600,
2382 1601, 405, 405, 1602, 58, 405, 405, 1035, 1605, 2025,
2383 1522, 58, 58, 1617, 1608, 1612, 1624, 170, 1747, 1800,
2384 605, 1630, 1633, 1639, 1670, 1641, 1651, 1653, 1655, 1657,
2385 1674, 1685, -232, 405, 1691, 405, 1718, 1719, 1720, 1951,
2386 363, 496, 495, 49, 1751, 436, 1721, 2026, 1765, 1722,
2387 1741, 1742, 1768, 1769, 1801, 1771, 1772, 436, 1776, 1783,
2388 1785, 436, 1786, 496, 1787, 1955, 1956, 1893, 1788, 1857,
2389 1907, 1811, 1907, 1865, 1789, 1861, 1805, 1806, 1866, 1868,
2390 1873, 1869, 913, 1876, 105, 335, 1877, 1908, 1930, 913,
2391 1913, 1922, 1923, 913, 49, 2040, 2023, 1924, 1938, 1925,
2392 1927, 134, 1940, 1941, 1928, 1934, 1935, 1936, 1937, 1942,
2393 1943, 421, 421, 421, 421, 421, 1695, 1695, 49, 1979,
2394 667, 49, 421, 421, 421, 421, 221, 49, 1986, 1990,
2395 1991, 1992, 1016, 1995, 49, 49, 1996, 1997, 2002, 2019,
2396 2020, 2007, 583, 1683, 583, 2012, 2031, 49, 1413, 2035,
2397 344, 2038, 2043, 1035, 1522, 1946, 1948, 2044, 864, 2045,
2398 2053, 2054, 356, 2055, 58, 2057, 2059, 393, 221, 865,
2399 393, 866, 867, 870, 58, 1318, 58, 1402, 1132, 1678,
2400 221, 1442, 221, 393, 221, 393, 631, 393, 617, 800,
2401 421, 421, 618, 654, 1384, 1016, 1016, 1933, 857, 1016,
2402 552, 1016, 2008, 633, 1016, 256, 221, 636, 583, 245,
2403 598, 247, 259, 393, 249, 0, 1856, 0, 0, 1907,
2404 0, 1907, 1522, 0, 1035, 501, 0, 0, 1035, 0,
2405 438, 0, 0, 703, 49, 0, 0, 0, 0, 0,
2406 0, 1016, 438, 0, 0, 0, 438, 0, 0, 0,
2407 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2408 0, 0, 0, 1035, 1522, 0, 0, 0, 0, 1016,
2409 0, 0, 0, 0, 221, 0, 0, 221, 221, 356,
2410 1035, 1907, 1907, 0, 1907, 0, 1907, 49, 0, 0,
2411 1706, 0, 0, 0, 0, 0, 436, 49, 221, 49,
2412 0, 0, 0, 0, 0, 0, 0, 0, 436, 913,
2413 0, 0, 0, 0, 667, 0, 496, 221, 0, 0,
2414 0, 0, 0, 221, 1907, 1907, 0, 1907, 0, 0,
2415 0, 393, 0, 0, 0, 0, 548, 0, 0, 0,
2416 0, 604, 604, 1907, 0, 0, 0, 835, 838, 1796,
2417 0, 1799, 604, 913, 0, 913, 0, 0, 0, 1907,
2418 0, 436, 0, 0, 0, 1808, 1810, 609, 609, 0,
2419 0, 0, 913, 835, 838, 0, 0, 0, 609, 648,
2420 0, 0, 0, 0, 0, 648, 49, 0, 0, 0,
2421 0, 0, 0, 0, 0, 835, 838, 0, 0, 0,
2422 835, 838, 0, 0, 835, 838, 0, 0, 0, 0,
2423 0, 913, 0, 221, 405, 356, 221, 0, 0, 221,
2424 49, 0, 0, 0, 0, 0, 794, 0, 0, 0,
2425 49, 221, 0, 49, 0, 0, 0, 0, 836, 839,
2426 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2427 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2428 0, 0, 393, 393, 836, 839, 0, 49, 49, 0,
2429 0, 0, 405, 405, 393, 548, 405, 405, 0, 874,
2430 0, 787, 0, 0, 221, 0, 836, 839, 393, 393,
2431 0, 836, 839, 787, 0, 836, 839, 0, 0, 1027,
2432 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2433 393, 393, 0, 0, 0, 393, 393, 0, 0, 393,
2434 393, 356, 496, 0, 496, 0, 0, 0, 221, 0,
2435 0, 0, 0, 335, 0, 0, 0, 0, 496, 496,
2436 423, 0, 49, 423, 58, 335, 879, 393, 0, 393,
2437 49, 393, 0, 0, 0, 0, 423, 0, 423, 0,
2438 423, 1931, 0, 0, 0, 0, 0, 49, 0, 0,
2439 49, 1939, 49, 0, 49, 0, 0, 0, 0, 0,
2440 49, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2441 0, 0, 0, 0, 0, 0, 604, 0, 0, 0,
2442 0, 405, 405, 0, 0, 0, 0, 0, 0, 0,
2443 913, 0, 0, 1165, 0, 0, 0, 0, 0, 0,
2444 0, 0, 609, 0, 0, 0, 0, 0, 1947, 1949,
2445 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2446 356, 356, 356, 356, 0, 0, 1200, 1205, 1209, 1213,
2447 1217, 0, 0, 1226, 0, 0, 0, 0, 0, 1165,
2448 0, 0, 0, 221, 221, 0, 0, 49, 0, 0,
2449 0, 0, 393, 0, 1271, 1276, 1280, 1284, 1288, 0,
2450 0, 1226, 0, 0, 0, 0, 221, 0, 0, 0,
2451 0, 0, 0, 221, 221, 393, 0, 221, 221, 1226,
2452 1226, 335, 335, 0, 0, 0, 0, 0, 0, 436,
2453 0, 0, 49, 0, 0, 356, 0, 0, 0, 0,
2454 436, 356, 0, 0, 356, 0, 0, 0, 0, 0,
2455 0, 0, 0, 0, 496, 0, 0, 0, 0, 365,
2456 0, 0, 0, 0, 496, 0, 0, 0, 0, 0,
2457 0, 0, 0, 0, 0, 1113, 1123, 0, 0, 1113,
2458 1123, 0, 604, 0, 604, 0, 0, 0, 0, 0,
2459 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2460 0, 0, 0, 0, 0, 0, 0, 0, 609, 0,
2461 609, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2462 0, 496, 496, 49, 0, 0, 49, 49, 49, 0,
2463 356, 0, 0, 356, 356, 0, 0, 49, 0, 0,
2464 0, 0, 0, 0, 0, 0, 0, 0, 604, 0,
2465 0, 0, 221, 49, 0, 423, 423, 0, 0, 0,
2466 49, 0, 191, 221, 0, 393, 0, 49, 0, 0,
2467 0, 0, 0, 0, 609, 0, 0, 0, 0, 0,
2468 0, 423, 423, 0, 0, 0, 0, 0, 0, 0,
2469 0, 835, 838, 0, 0, 835, 838, 0, 0, 0,
2470 0, 0, 0, 423, 423, 0, 365, 0, 423, 423,
2471 0, 0, 423, 423, 1340, 365, 0, 0, 49, 0,
2472 0, 365, 0, 0, 0, 1340, 0, 335, 0, 0,
2473 0, 0, 0, 0, 0, 49, 356, 0, 46, 0,
2474 423, 0, 423, 221, 221, 335, 0, 0, 393, 68,
2475 0, 0, 405, 405, 0, 221, 0, 0, -475, 0,
2476 1501, -475, -475, -475, -475, -475, -475, -475, -475, 356,
2477 221, 356, 0, 0, 0, 0, 0, 221, 0, 0,
2478 0, 0, 836, 839, 0, 0, 836, 839, 1527, 0,
2479 0, 0, 0, 0, 0, 0, 1536, 0, 0, 0,
2480 0, 0, 0, 0, 0, 404, 393, 393, 404, 0,
2481 393, 393, 365, 150, 0, 0, 80, 0, 0, 0,
2482 0, 404, 46, 404, 68, 404, 49, 393, 0, 46,
2483 46, 49, 0, 68, 0, 0, 0, 49, 0, 548,
2484 68, 68, 1165, 49, 0, 0, 0, 0, 1165, 49,
2485 0, 0, 0, 0, 0, 0, 0, 0, 356, 0,
2486 116, -475, -475, 0, 0, 0, 0, 0, 0, 0,
2487 0, -475, 0, 0, 439, 0, 0, 0, 0, 0,
2488 -475, -475, -475, -475, -475, 0, 439, 0, 0, 0,
2489 439, 160, 116, 0, 0, 0, 0, 0, 203, 0,
2490 80, 0, 0, 0, 0, 0, 0, 80, 80, 0,
2491 0, 0, 0, 0, 0, 0, 0, 356, 356, 356,
2492 356, 0, 0, 0, 0, 0, 0, 760, 0, 510,
2493 0, 0, 0, 352, 354, 393, 393, 221, 0, 0,
2494 427, 0, 49, 427, 0, 0, 0, 0, 0, 0,
2495 0, 49, 0, 0, 0, 0, 427, 0, 427, 0,
2496 427, 790, 320, 0, 0, 0, 0, 0, 221, 356,
2497 49, 797, 0, 0, 804, 0, 0, 482, 354, 0,
2498 0, 0, 150, 0, 0, 0, 0, 0, 221, 0,
2499 0, 0, 150, 68, 46, 221, 0, 0, 0, 0,
2500 0, 0, 0, 68, 0, 68, 0, 517, 0, 855,
2501 0, 221, 356, 0, 0, 872, 0, 0, 221, 356,
2502 0, 0, 221, 356, 0, 0, 0, 0, 0, 0,
2503 548, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2504 405, 0, 405, 0, 0, 0, 0, 550, 0, 0,
2505 1596, 0, 0, 0, 0, 0, 0, 1596, 423, 423,
2506 160, 0, 0, 0, 405, 365, 405, 0, 0, 0,
2507 80, 0, 80, 0, 0, 0, 0, 0, 0, 0,
2508 0, 0, 0, 191, 0, 0, 0, 0, 0, 0,
2509 0, 191, 0, 0, 0, 586, 0, 0, 0, 0,
2510 404, 404, 0, 0, 0, 0, 0, 0, 191, 0,
2511 0, 191, 868, 191, 0, 191, 0, 0, 0, 0,
2512 0, 423, 0, 0, 0, 439, 404, 404, 0, 0,
2513 0, 0, 0, 0, 0, 0, 0, 439, 0, 0,
2514 0, 0, 0, 0, 0, 0, 0, 0, 404, 404,
2515 677, 835, 838, 404, 404, 0, 0, 404, 404, 0,
2516 0, 0, 510, 0, 0, 0, 352, 0, 0, 0,
2517 0, 0, 0, 0, 49, 49, 0, 0, 0, 423,
2518 423, 0, 0, 423, 423, 404, 775, 404, 0, 0,
2519 439, 0, 0, 427, 0, 356, 0, 0, 356, 0,
2520 0, 0, 0, 0, 0, 116, 0, 365, 0, 0,
2521 365, 365, 0, 0, 0, 0, 0, 0, 0, 0,
2522 405, 405, 405, 405, 405, 0, 0, 0, 0, 0,
2523 0, 405, 405, 405, 405, 427, 427, 0, 0, 356,
2524 849, 0, 836, 839, 861, 0, 0, 427, 0, 0,
2525 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2526 356, 427, 427, 0, 0, 0, 393, 393, 0, 0,
2527 0, 221, 221, 221, 221, 0, 0, 0, 0, 0,
2528 0, 0, 0, 427, 427, 0, 0, 0, 427, 427,
2529 0, 0, 427, 427, 0, 0, 352, 0, 0, 405,
2530 405, 0, 0, 0, 0, 0, 116, 116, 423, 423,
2531 0, 0, 0, 365, 0, 0, 0, 0, 0, 0,
2532 427, 0, 427, 517, 0, 116, 0, 0, 0, 0,
2533 268, 49, 1, 269, 97, 352, 0, 354, 0, 0,
2534 221, 356, 0, 921, 0, 0, 0, 760, 760, 760,
2535 0, 0, 0, 0, 0, 0, 0, 2, 191, 0,
2536 0, 0, 150, 0, 0, 0, 0, 1080, 0, 0,
2537 1817, 0, 0, 68, 0, 1820, 1822, 1826, 1830, 1832,
2538 1836, 0, 1817, 0, 0, 1841, 1845, 1849, 1853, 0,
2539 0, 0, 0, 0, 273, 991, 0, 0, 0, 0,
2540 274, 275, 0, 0, 221, 0, 0, 0, 0, 0,
2541 0, 0, 0, 0, 278, 0, 0, 0, 0, 0,
2542 0, 0, 0, 0, 0, 0, 586, 279, 0, 0,
2543 0, 280, 281, 282, 283, 284, 285, 286, 0, 0,
2544 80, 638, 0, 0, 0, 0, 0, 356, 0, 0,
2545 49, 290, 291, 356, 0, 0, 586, 586, 586, 586,
2546 0, 0, 0, 0, 0, 0, 1115, 0, 0, 0,
2547 1115, 49, 0, 0, 0, 0, 0, 0, 0, 0,
2548 0, 0, 0, 0, 0, 775, 0, 0, 0, 0,
2549 422, 0, 0, 422, 0, 0, 0, 0, 510, 0,
2550 0, 0, 0, 0, 0, 0, 422, 0, 422, 0,
2551 422, 0, 0, 0, 0, 1133, 0, 0, 0, 1137,
2552 0, 0, 1817, 356, 0, 0, 0, 1817, 510, 0,
2553 0, 0, 0, 0, 0, 510, 0, 0, 439, 221,
2554 356, 0, 510, 0, 0, 677, 365, 191, 0, 439,
2555 0, 0, 191, 0, 393, 0, 393, 0, 1468, 1174,
2556 0, 0, 0, 0, 1468, 0, 404, 0, 0, 0,
2557 191, 0, 0, 0, 0, 0, 0, 0, 393, 0,
2558 393, 0, 0, 0, 0, 0, 1232, 0, 0, 0,
2559 775, 677, 74, 510, 1244, 0, 0, 0, 0, 0,
2560 0, 0, 584, 0, 0, 775, 427, 0, 0, 0,
2561 510, 0, 0, 1350, 1301, 0, 775, 0, 550, 835,
2562 838, 0, 835, 838, 404, 404, 0, 0, 404, 404,
2563 835, 838, 835, 838, 0, 0, 0, 0, 0, 423,
2564 423, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2565 0, 0, 0, 0, 0, 0, 0, 0, 116, 0,
2566 0, 0, 0, 356, 0, 393, 1382, 74, 0, 0,
2567 0, 517, 0, 0, 0, 0, 74, 0, 116, 0,
2568 0, 0, 0, 74, 74, 0, 0, 0, 849, 0,
2569 0, 191, 0, 0, 368, 0, 0, 0, 835, 838,
2570 0, 427, 0, 0, 0, 0, 0, 0, 0, 0,
2571 836, 839, 0, 836, 839, 0, 0, 440, 0, 0,
2572 0, 836, 839, 836, 839, 0, 0, 0, 0, 440,
2573 849, 0, 0, 440, 393, 393, 393, 393, 393, 221,
2574 221, 0, 0, 0, 0, 393, 393, 393, 393, 0,
2575 0, 0, 0, 404, 404, 0, 0, 0, 0, 427,
2576 427, 0, 0, 427, 427, 0, 0, 0, 0, 0,
2577 0, 0, 365, 0, 0, 365, 354, 0, 352, 921,
2578 0, 0, 0, 0, 0, 422, 422, 0, 0, 836,
2579 839, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2580 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2581 0, 422, 422, 393, 393, 0, 0, 1544, 0, 0,
2582 0, 0, 0, 0, 0, 0, 1547, 0, 0, 0,
2583 0, 0, 0, 422, 422, 0, 74, 365, 422, 422,
2584 0, 368, 422, 422, 911, 0, 74, 0, 74, 0,
2585 368, 0, 365, 0, 0, 0, 368, 586, 0, 0,
2586 586, 0, 0, 0, 0, 0, 0, 0, 0, 586,
2587 422, 0, 422, -475, -475, -475, -475, -475, -475, -475,
2588 -475, -475, -475, -475, 0, 0, 0, 0, 427, 427,
2589 0, 1520, 1521, 0, 0, 760, 760, 0, 586, 0,
2590 1174, 0, 0, 0, 775, 1533, 0, 0, 1244, 0,
2591 1539, 0, 0, 586, 586, 586, 586, 0, 0, 0,
2592 0, 775, 0, 1115, 0, 0, 0, 423, 0, 423,
2593 0, 0, 0, 584, 0, 0, 0, 0, 0, 0,
2594 0, 1115, 0, 0, 0, 0, 0, 368, 1115, 0,
2595 0, 423, 0, 423, 677, 0, 0, 0, 0, 0,
2596 677, 0, 0, 584, 584, 584, 584, 0, 788, 0,
2597 0, 0, 0, 0, 0, 0, -475, -475, 0, 0,
2598 788, 0, 0, 0, 0, 0, -475, 0, 0, 0,
2599 0, -475, -475, -475, 0, -475, -475, -475, -475, -475,
2600 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2601 0, 1619, 0, 0, 0, 0, 0, 0, 0, 0,
2602 0, 0, 0, 0, 365, 0, 0, 0, 0, 0,
2603 365, 0, 0, 788, 0, 0, 0, 0, 911, 0,
2604 0, 0, 0, 0, 911, 0, 0, 911, 0, 0,
2605 0, 0, 0, 0, 0, 0, 231, 0, 0, 0,
2606 0, 0, 0, 0, 0, 0, 0, 0, 0, 365,
2607 365, 0, 365, 365, 0, 0, 366, 0, 365, 365,
2608 365, 365, 0, 0, 404, 404, 0, 0, 0, 0,
2609 365, 365, 365, 365, 365, 365, 365, 365, 0, 0,
2610 365, 0, 0, 0, 0, 0, 0, 423, 423, 423,
2611 423, 423, 0, 0, 0, 0, 0, 0, 423, 423,
2612 423, 423, 0, 0, 0, 0, 0, 366, 0, 0,
2613 0, 0, 0, 0, 0, 0, 231, 0, 0, 0,
2614 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2615 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2616 0, 0, 0, 0, 0, 0, 0, 1669, 0, 0,
2617 0, 191, 0, 0, 0, 0, 0, 0, 0, 0,
2618 0, 0, 0, 0, 0, 0, 423, 423, 422, 422,
2619 0, 0, 0, 0, 1679, 0, 0, 0, 0, 0,
2620 368, 0, 0, 0, 0, 0, 510, 231, 231, 231,
2621 0, 0, 0, 0, 0, 0, 74, 0, 0, 427,
2622 427, 0, 0, 626, 0, 0, 0, 0, 231, 0,
2623 0, 0, 366, 0, 0, 0, 0, 0, 366, 0,
2624 365, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2625 0, 422, 0, 0, 0, 0, 0, 0, 0, 0,
2626 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2627 0, 0, 911, 0, 911, 0, 0, 0, 0, 0,
2628 0, 0, 0, 0, 517, 0, 0, 0, 0, 0,
2629 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2630 0, 0, 0, 0, 921, 365, 0, 0, 0, 422,
2631 422, 0, 0, 422, 422, 0, 0, 0, 0, 0,
2632 0, 0, 0, 0, 0, 0, 0, 0, 0, 366,
2633 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2634 586, 586, 368, 0, 0, 368, 368, 0, 0, 586,
2635 0, 586, 586, 0, 0, 586, 0, 0, 0, 0,
2636 0, 911, 0, 586, 584, 0, 586, 584, 0, 0,
2637 0, 0, 404, 305, 404, 0, 584, 0, 0, 0,
2638 0, 788, 0, 0, 0, 0, 0, 0, 0, 364,
2639 0, 0, 788, 0, 0, 0, 404, 0, 404, 0,
2640 0, 0, 0, 0, 0, 584, 0, 0, 0, 0,
2641 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2642 584, 584, 584, 584, 0, 0, 0, 0, 0, 0,
2643 0, 0, 0, 0, 0, 912, 0, 0, 422, 422,
2644 364, 0, 0, 0, 0, 0, 0, 0, 368, 0,
2645 0, 914, 0, 0, 0, 0, 0, 0, 231, 921,
2646 0, 0, 0, 0, 0, 366, 0, 0, 0, 0,
2647 0, 1815, 0, 0, 0, 0, 0, 0, 0, 0,
2648 0, 0, 1619, 0, 0, 0, 0, 1533, 0, 0,
2649 1539, 0, 0, 0, 1619, 0, 0, 0, 0, 0,
2650 0, 0, 0, 0, 0, 0, 0, 427, 0, 427,
2651 0, 0, 0, 0, 0, 911, 0, 0, 0, 366,
2652 0, 0, 911, 0, 0, 0, 911, 0, 0, 0,
2653 0, 427, 0, 427, 0, 0, 364, 0, 0, 0,
2654 354, 639, 641, 0, 0, 364, 0, 0, 0, 0,
2655 0, 364, 404, 404, 404, 404, 404, 0, 0, 0,
2656 0, 305, 0, 404, 404, 404, 404, 0, 0, 921,
2657 231, 231, 231, 231, 0, 0, 364, 0, 0, 0,
2658 0, 364, 1077, 0, 0, 0, 0, 0, 0, 586,
2659 586, 586, 586, 231, 231, 586, 0, 0, 0, 0,
2660 586, 586, 0, 586, 0, 586, 0, 0, 0, 0,
2661 0, 0, 0, 0, 0, 0, 1105, 586, 0, 0,
2662 0, 0, 0, 0, 0, 0, 0, 1915, 1916, 912,
2663 0, 404, 404, 1, 1619, 912, 0, 0, 912, 1619,
2664 0, 0, 364, 0, 0, 914, 0, 0, 0, 0,
2665 0, 914, 0, 0, 914, 0, 0, 0, 2, 0,
2666 0, 0, 921, 0, 8, 9, 10, 11, 12, 13,
2667 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
2668 24, 368, 0, 0, 0, 0, 0, 427, 427, 427,
2669 427, 427, 0, 0, 0, 0, 27, 0, 427, 427,
2670 427, 427, 0, 0, 28, 29, 0, 0, 0, 32,
2671 0, 0, 35, 36, 0, 37, 38, 39, 0, 0,
2672 0, 0, 0, 0, 366, 0, 0, 366, 366, 0,
2673 40, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2674 0, 0, 911, 0, 0, 0, 0, 0, 364, 0,
2675 0, 586, 0, 0, 0, 0, 0, 0, 0, 0,
2676 0, 586, 0, 586, 0, 0, 427, 427, 0, 422,
2677 422, 0, 0, 0, 0, 0, 0, 0, 364, 0,
2678 0, 0, 0, 0, 0, 0, 911, 0, 911, 0,
2679 0, 0, 921, 0, 0, 0, 0, 0, 912, 0,
2680 0, 366, 0, 0, 0, 0, 305, 0, 0, 0,
2681 0, 0, 0, 0, 586, 586, 0, 0, 586, 0,
2682 586, 0, 0, 586, 0, 0, 0, 586, 0, 0,
2683 366, 0, 364, 2010, 0, 0, 0, 0, 0, 366,
2684 0, 0, 0, 0, 911, 0, 0, 584, 584, 0,
2685 0, 921, 921, 0, 0, 0, 584, 0, 584, 584,
2686 586, 0, 584, 912, 0, 912, 0, 0, 0, 0,
2687 584, 0, 0, 584, 0, 0, 0, 0, 0, 914,
2688 914, 914, 0, 0, 0, 0, 323, 0, 586, 0,
2689 0, 0, 0, 0, 0, 364, 0, 0, 0, 1082,
2690 0, 0, 367, 0, 0, 0, 0, 368, 0, 0,
2691 368, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2692 0, 366, 0, 0, 0, 0, 305, 0, 0, 0,
2693 305, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2694 0, 0, 364, 0, 0, 0, 0, 0, 364, 0,
2695 0, 364, 912, 367, 0, 0, 0, 0, 0, 0,
2696 0, 0, 0, 366, 0, 0, 0, 0, 914, 0,
2697 305, 0, 368, 0, 0, 0, 364, 364, 364, 364,
2698 364, 364, 364, 0, 0, 364, 364, 368, 364, 364,
2699 364, 364, 364, 364, 364, 364, 0, 305, 0, 0,
2700 0, 0, 0, 0, 0, 305, 364, 364, 364, 364,
2701 364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
2702 364, 364, 364, 364, 0, 305, 0, 231, 231, 231,
2703 231, 0, 0, 0, 0, 0, 0, 364, 0, 0,
2704 364, 364, 0, 911, 0, 0, 0, 231, 0, 367,
2705 0, 0, 0, 0, 640, 642, 0, 422, 367, 422,
2706 0, 0, 0, 366, 367, 366, 0, 0, 0, 0,
2707 0, 0, 0, 0, 323, 0, 0, 0, 0, 0,
2708 0, 422, 0, 422, 0, 0, 0, 366, 0, 367,
2709 0, 0, 0, 0, 367, 0, 584, 584, 584, 584,
2710 0, 0, 584, 0, 0, 0, 912, 584, 584, 0,
2711 584, 364, 584, 912, 364, 0, 0, 912, 0, 0,
2712 0, 914, 914, 0, 584, 0, 0, 0, 914, 914,
2713 0, 0, 914, 914, 0, 0, 0, 0, 0, 0,
2714 0, 0, 0, 364, 0, 0, 0, 0, 0, 0,
2715 0, 0, 364, 0, 0, 367, 0, 0, 0, 368,
2716 0, 0, 0, 0, 0, 368, 0, 0, 0, 0,
2717 0, 0, 0, 0, 0, 0, 364, 0, 364, 0,
2718 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2719 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2720 0, 0, 0, 0, 1824, 1828, 0, 1834, 1838, 0,
2721 0, 0, 0, 1843, 1847, 1851, 1855, 0, 0, 0,
2722 0, 0, 0, 0, 0, 368, 368, 368, 368, 368,
2723 368, 368, 368, 0, 364, 368, 0, 422, 422, 422,
2724 422, 422, 0, 0, 0, 0, 0, 0, 422, 422,
2725 422, 422, 0, 0, 0, 0, 0, 0, 584, 0,
2726 0, 367, 0, 0, 0, 364, 0, 0, 584, 0,
2727 584, 0, 0, 0, 0, 0, 364, 0, 0, 0,
2728 0, 0, 0, 0, 0, 0, 0, 0, 0, 366,
2729 0, 367, 366, 0, 0, 0, 0, 0, 0, 0,
2730 0, 0, 305, 305, 0, 0, 0, 0, 0, 0,
2731 0, 0, 0, 0, 0, 0, 422, 422, 0, 323,
2732 0, 584, 584, 0, 0, 584, 0, 584, 0, 0,
2733 584, 0, 0, 912, 584, 0, 0, 0, 0, 0,
2734 366, 0, 0, 0, 0, 367, 0, 0, 0, 914,
2735 0, 0, 0, 0, 366, 0, 0, 0, 0, 0,
2736 0, 0, 0, 0, 0, 0, 0, 584, 0, 366,
2737 0, 0, 0, 0, 0, 368, 364, 912, 364, 912,
2738 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2739 0, 0, 0, 0, 0, 584, 912, 0, 0, 0,
2740 364, 0, 0, 0, 0, 0, 0, 0, 367, 0,
2741 0, 0, 1083, 0, 0, 364, 0, 0, 0, 364,
2742 0, 0, 305, 0, 0, 0, 364, 0, 0, 0,
2743 364, 0, 0, 0, 0, 912, 0, 0, 0, 323,
2744 368, 0, 0, 323, 0, 0, 0, 0, 0, 0,
2745 914, 914, 0, 0, 0, 367, 0, 0, 0, 0,
2746 0, 367, 0, 0, 367, 0, 0, 0, 0, 0,
2747 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2748 0, 0, 0, 323, 0, 0, 0, 0, 0, 367,
2749 367, 367, 367, 367, 367, 367, 0, 0, 367, 367,
2750 0, 367, 367, 367, 367, 367, 367, 367, 367, 0,
2751 323, 0, 0, 0, 0, 0, 0, 0, 323, 367,
2752 367, 367, 367, 367, 367, 367, 367, 367, 367, 367,
2753 367, 367, 367, 367, 367, 367, 367, 0, 323, 0,
2754 0, 366, 0, 0, 0, 0, 366, 366, 366, 0,
2755 367, 0, 0, 367, 367, 0, 0, 0, 0, 0,
2756 0, 0, 366, 366, 0, 0, 0, 0, 0, 0,
2757 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2758 0, 0, 0, 0, 0, 0, 1823, 1827, 0, 1833,
2759 1837, 0, 0, 0, 0, 1842, 1846, 1850, 1854, 0,
2760 0, 0, 364, 0, 0, 364, 0, 1823, 1827, 1833,
2761 1837, 1842, 1846, 1850, 1854, 0, 0, 366, 0, 0,
2762 0, 0, 0, 0, 367, 0, 0, 367, 0, 0,
2763 0, 0, 0, 0, 912, 0, 0, 0, 0, 0,
2764 0, 0, 0, 0, 0, 0, 364, 0, 0, 914,
2765 914, 0, 0, 364, 0, 0, 367, 0, 0, 0,
2766 0, 0, 0, 0, 0, 367, 0, 364, 0, 0,
2767 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2768 0, 0, 364, 0, 0, 0, 0, 0, 0, 367,
2769 364, 367, 364, 0, 0, 0, 0, 0, 0, 0,
2770 0, 0, 0, 0, 0, 0, 0, 0, 0, 364,
2771 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2772 0, 0, 0, 0, 0, 0, 268, 0, 1, 269,
2773 97, 270, 0, 271, 272, 0, 0, 0, 0, 0,
2774 0, 0, 0, 0, 0, 0, 0, 367, 364, 0,
2775 0, 0, 0, 2, 0, 0, 0, 366, 366, 0,
2776 0, 0, 0, 0, 0, 0, 0, 0, 366, 0,
2777 0, 0, 0, 0, 0, 0, 0, 0, 367, 0,
2778 0, 0, 0, 0, 0, 0, 0, 0, 0, 367,
2779 273, 0, 0, 0, 0, 0, 274, 275, 276, 28,
2780 0, 0, 0, 0, 32, 0, 0, 0, 0, 277,
2781 278, 38, 0, 0, 0, 323, 323, 0, 0, 0,
2782 0, 0, 912, 279, 0, 366, 366, 280, 281, 282,
2783 283, 284, 285, 286, 801, 0, 0, 802, 661, 289,
2784 0, 0, 0, 0, 0, 0, 0, 290, 291, 0,
2785 292, 293, 294, 295, 364, 0, 0, 0, 0, 364,
2786 364, 364, 0, 0, 0, 0, 0, 0, 0, 0,
2787 305, 0, 0, 0, 0, 364, 364, 0, 0, 0,
2788 0, 0, 305, 0, 0, 0, 0, 0, 0, 367,
2789 0, 367, 0, 66, 0, 0, 0, 0, 0, 364,
2790 364, 0, 364, 364, 0, 0, 0, 0, 364, 364,
2791 364, 364, 0, 367, 0, 0, 0, 1, 0, 0,
2792 364, 364, 364, 364, 364, 364, 364, 364, 367, 0,
2793 364, 0, 367, 0, 0, 323, 108, 0, 0, 367,
2794 0, 0, 2, 367, 0, 0, 0, 364, 8, 9,
2795 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
2796 20, 21, 22, 23, 24, 0, 0, 0, 157, 0,
2797 0, 0, 0, 0, 0, 0, 227, 66, 0, 0,
2798 27, 0, 0, 0, 66, 66, 0, 0, 28, 29,
2799 0, 0, 0, 32, 0, 0, 35, 36, 0, 37,
2800 38, 39, 346, 0, 0, 0, 0, 0, 0, 0,
2801 0, 0, 227, 0, 40, 0, 78, 0, 437, 0,
2802 0, 0, 0, 43, 0, 0, 774, 0, 0, 0,
2803 437, 0, 227, 0, 437, 0, 0, 508, 305, 305,
2804 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2805 0, 0, 0, 0, 0, 0, 227, 0, 0, 0,
2806 78, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2807 364, 364, 0, 0, 0, 0, 0, 0, 0, 0,
2808 0, 364, 0, 0, 514, 0, 0, 0, 0, 0,
2809 0, 78, 78, 0, 0, 0, 78, 0, 78, 0,
2810 78, 0, 0, 0, 0, 0, 0, 78, 78, 0,
2811 0, 0, 0, 0, 0, 367, 0, 0, 367, 0,
2812 0, 0, 0, 0, 547, 0, 0, 227, 227, 227,
2813 0, 0, 78, 78, 0, 364, 0, 157, 364, 364,
2814 0, 0, 0, 0, 0, 0, 0, 157, 227, 66,
2815 0, 0, 0, 0, 0, 0, 0, 0, 0, 367,
2816 0, 0, 0, 0, 0, 0, 367, 647, 0, 0,
2817 0, 0, 0, 647, 0, 0, 78, 78, 0, 0,
2818 367, 666, 0, 0, 0, 0, 0, 0, 0, 0,
2819 0, 0, 0, 0, 0, 367, 0, 0, 0, 0,
2820 0, 0, 0, 367, 0, 367, 0, 78, 0, 0,
2821 0, 0, 0, 0, 0, 0, 0, 78, 0, 78,
2822 0, 0, 367, 0, 268, 0, 1, 269, 97, 270,
2823 0, 271, 272, 0, 0, 0, 0, 0, 0, 0,
2824 0, 0, 0, 0, 305, 0, 0, 78, 0, 0,
2825 0, 2, 0, 0, 0, 0, 0, 0, 0, 0,
2826 78, 367, 305, 547, 0, 227, 227, 0, 0, 786,
2827 78, 0, 78, 0, 0, 0, 0, 0, 0, 0,
2828 0, 786, 0, 0, 0, 0, 0, 0, 273, 0,
2829 0, 0, 0, 0, 274, 275, 276, 0, 0, 0,
2830 0, 0, 0, 0, 0, 0, 0, 277, 278, 0,
2831 0, 0, 0, 0, 0, 0, 0, 514, 0, 0,
2832 0, 279, 0, 0, 0, 280, 281, 282, 283, 284,
2833 285, 286, 287, 0, 878, 288, 1050, 289, 0, 0,
2834 1051, 0, 0, 0, 0, 290, 291, 1626, 292, 293,
2835 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
2836 0, 0, 0, 0, 0, 0, 78, 367, 78, 0,
2837 0, 227, 367, 367, 367, 0, 0, 0, 227, 0,
2838 0, 0, 0, 323, 0, 0, 0, 0, 367, 367,
2839 0, 0, 0, 0, 0, 323, 0, 0, 0, 0,
2840 0, 0, 0, 0, 0, 78, 0, 0, 0, 0,
2841 0, 0, 367, 367, 0, 367, 367, 0, 0, 0,
2842 0, 367, 367, 367, 367, 0, 0, 0, 0, 0,
2843 0, 0, 0, 367, 367, 367, 367, 367, 367, 367,
2844 367, 0, 0, 367, 0, 0, 0, 0, 0, 0,
2845 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2846 367, 0, 0, 0, 0, 0, 0, 1031, 0, 0,
2847 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2848 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2849 227, 227, 227, 227, 0, 0, 78, 0, 78, 0,
2850 0, 0, 0, 0, 0, 0, 78, 78, 0, 0,
2851 0, 0, 0, 227, 227, 0, 0, 157, 0, 0,
2852 0, 0, 1085, 78, 0, 78, 0, 0, 0, 0,
2853 0, 0, 0, 78, 0, 78, 227, 0, 0, 0,
2854 0, 0, 0, 1112, 1122, 666, 0, 1112, 1122, 0,
2855 0, 323, 323, 0, 0, 0, 0, 0, 0, 224,
2856 0, 0, 1141, 0, 0, 227, 78, 0, 0, 0,
2857 0, 227, 0, 0, 227, 0, 0, 0, 0, 0,
2858 0, 0, 0, 367, 367, 0, 0, 0, 0, 0,
2859 0, 0, 0, 0, 367, 224, 0, 0, 0, 0,
2860 0, 435, 0, 0, 0, 0, 0, 0, 0, 0,
2861 0, 0, 0, 435, 0, 224, 0, 435, 0, 0,
2862 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2863 0, 0, 0, 0, 0, 0, 0, 0, 0, 224,
2864 78, 0, 0, 0, 0, 0, 0, 0, 367, 0,
2865 0, 367, 367, 514, 0, 0, 0, 0, 0, 0,
2866 227, 0, 0, 227, 227, 0, 0, 512, 0, 0,
2867 0, 0, 0, 0, 113, 0, 0, 0, 0, 0,
2868 0, 0, 1339, 514, 0, 0, 0, 0, 0, 0,
2869 514, 0, 0, 1339, 108, 666, 0, 514, 0, 0,
2870 0, 0, 0, 0, 0, 113, 113, 545, 0, 0,
2871 224, 224, 224, 0, 0, 0, 0, 0, 0, 0,
2872 0, 0, 0, 114, 0, 0, 0, 0, 0, 0,
2873 0, 224, 0, 0, 0, 0, 0, 0, 0, 0,
2874 0, 0, 0, 0, 0, 0, 348, 113, 514, 0,
2875 645, 0, 0, 0, 159, 114, 645, 323, 0, 200,
2876 0, 202, 0, 0, 0, 514, 227, 0, 0, 0,
2877 0, 0, 0, 227, 227, 323, 0, 0, 0, 0,
2878 0, 0, 0, 0, 0, 227, 0, 0, 0, 0,
2879 348, 113, 0, 0, 0, 349, 114, 0, 0, 227,
2880 227, 227, 0, 0, 0, 0, 0, 547, 0, 0,
2881 0, 0, 0, 0, 0, 0, 0, 0, 78, 0,
2882 0, 113, 0, 0, 0, 0, 0, 0, 0, 0,
2883 0, 0, 0, 0, 0, 0, 0, 0, 0, 479,
2884 481, 0, 0, 0, 0, 0, 545, 0, 224, 224,
2885 0, 0, 785, 0, 0, 0, 0, 0, 78, 0,
2886 0, 113, 0, 0, 785, 0, 0, 0, 0, 0,
2887 114, 78, 0, 0, 113, 0, 0, 0, 78, 0,
2888 534, 0, 535, 0, 0, 0, 0, 0, 227, 0,
2889 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2890 512, 0, 0, 0, 0, 0, 0, 0, 1031, 0,
2891 114, 0, 0, 0, 0, 0, 0, 877, 0, 0,
2892 0, 0, 0, 159, 0, 0, 0, 0, 0, 0,
2893 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2894 0, 0, 0, 0, 0, 0, 0, 227, 227, 227,
2895 227, 0, 0, 0, 224, 0, 0, 0, 0, 0,
2896 0, 224, 0, 0, 0, 0, 0, 227, 0, 0,
2897 0, 0, 0, 0, 0, 0, 0, 0, 78, 0,
2898 113, 1549, 348, 0, 0, 0, 0, 0, 0, 0,
2899 0, 0, 0, 0, 0, 0, 0, 0, 547, 227,
2900 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2901 0, 0, 0, 0, 0, 0, 0, 0, 1595, 113,
2902 0, 0, 0, 0, 0, 1595, 0, 0, 0, 114,
2903 0, 349, 0, 0, 0, 0, 0, 0, 0, 0,
2904 0, 227, 227, 0, 0, 0, 0, 0, 227, 227,
2905 0, 0, 227, 227, 848, 0, 0, 0, 0, 0,
2906 0, 0, 0, 0, 0, 0, 0, 0, 114, 0,
2907 0, 0, 0, 224, 224, 224, 224, 0, 0, 0,
2908 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2909 0, 0, 0, 0, 0, 0, 224, 224, 0, 0,
2910 0, 0, 226, 0, 0, 0, 200, 202, 0, 0,
2911 113, 0, 348, 0, 0, 0, 0, 0, 0, 224,
2912 113, 113, 0, 0, 0, 0, 1110, 1120, 0, 0,
2913 1110, 1120, 0, 0, 0, 0, 0, 113, 226, 113,
2914 0, 0, 0, 0, 0, 0, 0, 348, 224, 113,
2915 0, 0, 0, 0, 224, 0, 0, 224, 226, 917,
2916 0, 918, 0, 0, 0, 0, 0, 0, 0, 114,
2917 114, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2918 348, 0, 226, 0, 0, 0, 114, 0, 114, 0,
2919 0, 0, 0, 0, 0, 0, 349, 0, 114, 0,
2920 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2921 513, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2922 0, 0, 0, 0, 0, 227, 0, 0, 227, 349,
2923 0, 0, 0, 0, 0, 0, 512, 0, 0, 0,
2924 0, 0, 0, 224, 0, 0, 224, 224, 0, 0,
2925 546, 0, 0, 226, 226, 226, 0, 0, 229, 0,
2926 0, 0, 0, 0, 0, 1338, 512, 0, 0, 227,
2927 0, 0, 0, 512, 226, 0, 1338, 0, 0, 0,
2928 512, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2929 227, 0, 0, 646, 229, 0, 0, 0, 0, 646,
2930 0, 227, 227, 227, 227, 0, 0, 665, 0, 0,
2931 0, 0, 0, 0, 229, 1044, 0, 1, 269, 97,
2932 270, 0, 271, 272, 0, 0, 0, 0, 0, 0,
2933 0, 512, 0, 0, 0, 0, 0, 0, 229, 0,
2934 0, 0, 2, 0, 0, 0, 0, 0, 512, 224,
2935 0, 0, 0, 0, 0, 0, 224, 224, 0, 0,
2936 0, 514, 0, 0, 0, 0, 516, 0, 224, 0,
2937 227, 227, 0, 0, 0, 0, 0, 0, 0, 273,
2938 0, 0, 224, 224, 224, 274, 275, 276, 0, 546,
2939 545, 226, 226, 0, 0, 0, 0, 0, 277, 278,
2940 0, 0, 0, 0, 0, 0, 549, 0, 0, 229,
2941 229, 229, 279, 0, 0, 0, 280, 281, 282, 283,
2942 284, 285, 286, 287, 0, 0, 288, 1349, 289, 1045,
2943 229, 1046, 113, 0, 227, 0, 290, 291, 0, 292,
2944 293, 294, 295, 513, 0, 0, 0, 0, 0, 649,
2945 0, 0, 0, 0, 0, 649, 0, 0, 0, 0,
2946 0, 0, 0, 668, 0, 0, 0, 0, 0, 0,
2947 0, 224, 113, 0, 0, 0, 0, 227, 0, 1379,
2948 1381, 114, 0, 227, 78, 113, 0, 0, 0, 0,
2949 0, 0, 113, 0, 0, 0, 0, 226, 0, 0,
2950 0, 666, 848, 0, 226, 0, 0, 0, 0, 0,
2951 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2952 0, 114, 0, 0, 0, 0, 0, 0, 200, 202,
2953 224, 224, 224, 224, 114, 0, 0, 0, 534, 0,
2954 535, 114, 0, 0, 848, 549, 0, 229, 229, 0,
2955 224, 0, 0, 227, 0, 0, 0, 0, 0, 0,
2956 0, 0, 0, 0, 0, 0, 0, 0, 0, 227,
2957 227, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2958 0, 545, 224, 0, 0, 0, 0, 0, 0, 0,
2959 0, 0, 113, 0, 0, 0, 0, 0, 0, 516,
2960 0, 1593, 0, 0, 0, 0, 0, 0, 1593, 0,
2961 0, 0, 0, 0, 0, 0, 226, 226, 226, 226,
2962 0, 0, 0, 0, 224, 224, 0, 0, 0, 0,
2963 0, 224, 224, 0, 0, 224, 224, 0, 0, 226,
2964 226, 114, 0, 0, 0, 0, 0, 0, 1084, 0,
2965 0, 0, 0, 229, 0, 0, 0, 0, 0, 0,
2966 229, 0, 226, 0, 0, 0, 0, 0, 0, 1111,
2967 1121, 665, 0, 1111, 1121, 0, 0, 0, 0, 1,
2968 0, 0, 0, 0, 0, 0, 0, 0, 1140, 0,
2969 0, 226, 0, 227, 0, 666, 0, 226, 0, 0,
2970 226, 0, 0, 0, 2, 172, 173, 174, 175, 176,
2971 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
2972 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
2973 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2974 0, 0, 27, 0, 0, 0, 0, 0, 0, 0,
2975 28, 29, 0, 0, 0, 32, 0, 0, 35, 36,
2976 0, 37, 38, 39, 0, 0, 0, 0, 0, 227,
2977 227, 0, 229, 229, 229, 229, 40, 0, 0, 513,
2978 0, 0, 0, 0, 0, 43, 226, 0, 507, 226,
2979 226, 0, 0, 0, 0, 229, 229, 0, 0, 508,
2980 0, 509, 0, 0, 1087, 0, 0, 0, 224, 513,
2981 0, 224, 0, 0, 0, 0, 513, 0, 229, 0,
2982 0, 665, 0, 513, 0, 1114, 1124, 668, 0, 1114,
2983 1124, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2984 0, 0, 0, 0, 1143, 0, 0, 229, 0, 0,
2985 0, 0, 224, 229, 0, 0, 229, 0, 0, 0,
2986 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2987 0, 0, 0, 224, 513, 0, 0, 0, 0, 0,
2988 0, 0, 0, 0, 224, 224, 224, 224, 0, 0,
2989 0, 513, 226, 0, 0, 0, 0, 0, 0, 226,
2990 226, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2991 0, 226, 0, 0, 0, 0, 0, 0, 0, 0,
2992 0, 0, 0, 0, 0, 226, 226, 226, 0, 0,
2993 0, 0, 0, 546, 0, 516, 0, 0, 0, 0,
2994 0, 0, 229, 0, 512, 229, 229, 0, 225, 0,
2995 0, 0, 0, 224, 224, 0, 0, 0, 0, 0,
2996 0, 0, 0, 0, 0, 516, 0, 0, 0, 0,
2997 0, 0, 516, 0, 0, 0, 0, 668, 0, 516,
2998 1666, 1668, 0, 0, 225, 0, 0, 0, 0, 0,
2999 225, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3000 0, 0, 225, 0, 225, 0, 225, 0, 1349, 0,
3001 1680, 0, 1681, 0, 226, 0, 0, 224, 0, 0,
3002 0, 0, 0, 0, 0, 0, 0, 0, 225, 0,
3003 516, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3004 0, 0, 0, 0, 0, 0, 0, 516, 229, 0,
3005 0, 0, 0, 0, 0, 229, 229, 0, 0, 534,
3006 224, 535, 0, 0, 0, 0, 224, 229, 0, 0,
3007 0, 0, 0, 226, 226, 226, 226, 0, 0, 0,
3008 0, 229, 229, 229, 0, 0, 0, 0, 0, 549,
3009 0, 0, 0, 226, 0, 0, 225, 0, 113, 225,
3010 225, 225, 0, 0, 0, 0, 0, 1548, 0, 0,
3011 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3012 225, 0, 0, 0, 546, 226, 0, 0, 0, 0,
3013 0, 0, 0, 0, 0, 0, 224, 0, 0, 225,
3014 0, 0, 0, 0, 1594, 225, 0, 114, 0, 0,
3015 0, 1594, 224, 224, 0, 0, 0, 0, 0, 0,
3016 0, 0, 0, 0, 0, 0, 0, 226, 226, 0,
3017 229, 0, 0, 0, 226, 226, 1, 0, 226, 226,
3018 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3019 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3020 0, 2, 172, 173, 174, 175, 176, 204, 205, 206,
3021 207, 208, 209, 210, 211, 212, 213, 18, 19, 214,
3022 215, 22, 23, 24, 0, 0, 0, 0, 0, 229,
3023 229, 229, 229, 0, 0, 225, 0, 225, 225, 216,
3024 0, 225, 0, 0, 0, 0, 0, 28, 29, 229,
3025 0, 0, 32, 225, 0, 0, 0, 0, 217, 38,
3026 218, 0, 0, 1551, 0, 0, 0, 0, 0, 0,
3027 0, 0, 0, 219, 0, 0, 224, 0, 0, 0,
3028 549, 229, 43, 0, 0, 774, 0, 0, 0, 0,
3029 0, 0, 1336, 0, 0, 0, 508, 1863, 0, 1864,
3030 1597, 0, 0, 0, 0, 0, 225, 1597, 0, 1666,
3031 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3032 0, 0, 0, 229, 229, 0, 0, 0, 0, 0,
3033 229, 229, 0, 0, 229, 229, 171, 0, 1, 0,
3034 0, 0, 0, 225, 0, 0, 0, 0, 0, 0,
3035 225, 226, 224, 224, 226, 0, 0, 0, 0, 0,
3036 0, 0, 0, 2, 172, 173, 174, 175, 176, 8,
3037 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
3038 19, 20, 21, 22, 23, 24, 0, 0, 0, 0,
3039 0, 0, 0, 0, 0, 226, 230, 0, 0, 0,
3040 177, 27, 0, 0, 0, 0, 0, 0, 0, 28,
3041 29, 0, 0, 0, 32, 0, 226, 35, 36, 0,
3042 37, 38, 39, 0, 0, 0, 0, 226, 226, 226,
3043 226, 0, 230, 0, 675, 40, 0, 0, 230, 0,
3044 0, 0, 0, 0, 43, 0, 0, 507, 949, 702,
3045 230, 0, 230, 0, 230, 0, 0, 0, 508, 0,
3046 0, 0, 225, 225, 225, 225, 0, 0, 0, 0,
3047 0, 0, 0, 0, 0, 0, 230, 0, 0, 0,
3048 0, 0, 0, 0, 0, 225, 225, 513, 0, 0,
3049 0, 0, 0, 0, 0, 0, 226, 226, 0, 0,
3050 0, 0, 0, 0, 0, 0, 0, 229, 225, 0,
3051 229, 0, 0, 0, 0, 225, 225, 0, 0, 225,
3052 225, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3053 0, 0, 0, 0, 0, 0, 0, 225, 0, 0,
3054 0, 0, 0, 225, 230, 0, 225, 230, 230, 230,
3055 0, 229, 0, 0, 0, 0, 0, 0, 0, 0,
3056 226, 0, 0, 0, 0, 0, 0, 0, 230, 0,
3057 0, 0, 229, 0, 0, 0, 0, 0, 0, 0,
3058 0, 0, 0, 229, 229, 229, 229, 230, 0, 0,
3059 0, 0, 0, 230, 0, 0, 591, 0, 0, 0,
3060 0, 0, 0, 226, 0, 0, 0, 0, 0, 226,
3061 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3062 0, 0, 0, 0, 0, 0, 0, 665, 0, 0,
3063 0, 0, 225, 0, 0, 225, 225, 0, 0, 0,
3064 0, 0, 0, 516, 0, 0, 0, 0, 664, 0,
3065 0, 0, 229, 229, 225, 0, 0, 0, 0, 0,
3066 0, 0, 0, 0, 0, 225, 0, 0, 0, 0,
3067 0, 0, 0, 0, 0, 0, 0, 0, 0, 226,
3068 0, 0, 0, 230, 0, 230, 230, 0, 0, 230,
3069 0, 0, 0, 0, 0, 226, 226, 0, 0, 0,
3070 0, 230, 0, 0, 0, 0, 0, 0, 0, 0,
3071 0, 0, 0, 0, 0, 1026, 229, 0, 0, 0,
3072 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3073 0, 0, 0, 0, 0, 0, 0, 0, 225, 0,
3074 0, 0, 0, 0, 0, 225, 225, 0, 0, 664,
3075 0, 0, 0, 0, 230, 0, 0, 225, 0, 229,
3076 0, 0, 0, 0, 0, 229, 0, 0, 0, 0,
3077 0, 225, 225, 225, 0, 0, 0, 0, 0, 225,
3078 0, 0, 0, 668, 0, 0, 0, 0, 0, 0,
3079 0, 230, 0, 0, 0, 0, 0, 0, 230, 0,
3080 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3081 0, 0, 0, 0, 0, 0, 0, 0, 0, 226,
3082 0, 665, 0, 0, 0, 0, 0, 0, 0, 675,
3083 0, 0, 0, 0, 0, 229, 0, 0, 0, 0,
3084 0, 0, 0, 1173, 0, 0, 0, 0, 0, 0,
3085 0, 229, 229, 0, 0, 0, 0, 0, 0, 0,
3086 225, 0, 1199, 1204, 1208, 1212, 1216, 0, 0, 1225,
3087 1231, 0, 0, 0, 0, 675, 0, 0, 1243, 0,
3088 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3089 1270, 1275, 1279, 1283, 1287, 226, 226, 1225, 1300, 0,
3090 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3091 230, 230, 230, 230, 0, 1225, 1225, 0, 0, 225,
3092 225, 225, 225, 0, 0, 0, 0, 0, 0, 0,
3093 0, 0, 1029, 230, 230, 0, 0, 0, 0, 225,
3094 0, 0, 0, 0, 0, 0, 0, 1048, 0, 0,
3095 0, 0, 0, 0, 0, 0, 230, 591, 591, 591,
3096 591, 0, 0, 230, 230, 0, 0, 230, 230, 0,
3097 225, 225, 0, 0, 0, 229, 0, 668, 0, 0,
3098 0, 0, 0, 0, 0, 230, 0, 0, 0, 0,
3099 225, 230, 0, 0, 230, 0, 0, 225, 664, 0,
3100 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3101 0, 0, 0, 225, 225, 0, 0, 0, 0, 0,
3102 225, 225, 0, 1048, 225, 225, 0, 0, 0, 0,
3103 0, 0, 0, 268, 0, 1, 269, 97, 270, 0,
3104 271, 272, 0, 0, 0, 0, 0, 0, 1172, 0,
3105 0, 229, 229, 0, 0, 0, 0, 0, 0, 0,
3106 2, 0, 0, 0, 0, 0, 0, 0, 1018, 0,
3107 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3108 230, 0, 0, 230, 230, 0, 1229, 0, 0, 0,
3109 0, 0, 0, 0, 1242, 0, 0, 273, 0, 0,
3110 1058, 1062, 230, 274, 275, 276, 0, 0, 0, 0,
3111 0, 0, 0, 230, 1298, 0, 277, 278, 0, 0,
3112 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3113 279, 0, 1324, 1328, 280, 281, 282, 283, 284, 285,
3114 286, 287, 0, 0, 288, 1050, 289, 0, 663, 1631,
3115 0, 0, 0, 1632, 290, 291, 1026, 292, 293, 294,
3116 295, 0, 664, 0, 0, 0, 0, 0, 0, 0,
3117 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3118 0, 0, 0, 0, 1173, 0, 230, 0, 0, 0,
3119 0, 0, 1243, 230, 230, 0, 0, 225, 0, 268,
3120 225, 1, 269, 97, 270, 230, 271, 272, 0, 0,
3121 0, 0, 0, 0, 0, 0, 0, 0, 0, 230,
3122 230, 230, 0, 0, 0, 0, 2, 230, 0, 0,
3123 0, 0, 0, 0, 0, 0, 0, 0, 675, 0,
3124 0, 225, 0, 0, 675, 0, 0, 0, 0, 663,
3125 1006, 1007, 1008, 565, 1009, 1010, 1011, 1012, 570, 571,
3126 1013, 0, 225, 273, 0, 0, 0, 0, 0, 274,
3127 275, 276, 0, 225, 225, 225, 225, 1014, 0, 0,
3128 0, 0, 277, 278, 1015, 0, 575, 576, 577, 0,
3129 0, 0, 0, 0, 0, 1618, 279, 0, 0, 0,
3130 280, 281, 282, 283, 284, 285, 286, 287, 230, 0,
3131 288, -470, 289, 578, 0, -470, 0, 220, 0, 579,
3132 290, 291, 0, 292, 293, 294, 295, 0, 0, 0,
3133 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3134 0, 0, 225, 225, 0, 0, 0, 0, 0, 0,
3135 0, 0, 0, 0, 0, 0, 0, 0, 591, 0,
3136 0, 591, 1486, 1488, 0, 1492, 0, 230, 230, 230,
3137 230, 0, 0, 1502, 0, 0, 0, 0, 0, 0,
3138 0, 1511, 0, 0, 0, 0, 0, 230, 1048, 0,
3139 0, 0, 0, 0, 0, 0, 0, 0, 0, 591,
3140 0, 0, 0, 0, 0, 0, 225, 1048, 0, 0,
3141 0, 0, 1048, 0, 591, 591, 591, 591, 230, 230,
3142 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3143 0, 0, 1028, 0, 0, 0, 0, 0, 230, 0,
3144 0, 0, 0, 0, 0, 230, 0, 1047, 0, 225,
3145 0, 1052, 0, 0, 0, 225, 0, 1563, 0, 0,
3146 0, 230, 230, 1573, 0, 0, 0, 0, 230, 230,
3147 0, 0, 230, 230, 0, 0, 0, 0, 0, 0,
3148 0, 0, 0, 0, 0, 0, 1048, 0, 0, 0,
3149 0, 0, 0, 0, 0, 0, 0, 0, 663, 1479,
3150 0, 0, 1483, 0, 0, 0, 0, 0, 0, 0,
3151 0, 1499, 1126, 0, 0, 0, 0, 0, 0, 0,
3152 0, 0, 0, 1047, 1052, 225, 0, 0, 0, 0,
3153 0, 1048, 0, 0, 0, 0, 0, 0, 0, 0,
3154 1523, 225, 225, 0, 0, 0, 0, 0, 1171, 0,
3155 0, 0, 0, 0, 0, 1058, 1062, 1058, 1062, 0,
3156 0, 0, 0, 0, 0, 0, 1163, 0, 1, 269,
3157 97, 270, 0, 271, 272, 0, 0, 0, 0, 0,
3158 0, 0, 0, 0, 0, 0, 1227, 1048, 0, 0,
3159 0, 0, 0, 2, 1241, 0, 0, 0, 0, 0,
3160 0, 1048, 0, 0, 0, 0, 0, 0, 0, 0,
3161 0, 0, 0, 0, 1296, 0, 0, 0, 0, 0,
3162 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3163 273, 0, 1322, 1326, 0, 0, 274, 275, 276, 0,
3164 0, 0, 0, 0, 0, 230, 0, 0, 230, 277,
3165 278, 0, 0, 0, 0, 0, 1048, 0, 0, 0,
3166 0, 0, 663, 279, 0, 225, 0, 280, 281, 282,
3167 283, 284, 285, 286, 287, 0, 0, 288, 1164, 289,
3168 0, 0, 1048, 0, 672, 0, 1048, 290, 291, 230,
3169 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
3170 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3171 230, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3172 0, 230, 230, 230, 230, 0, 0, 0, 0, 0,
3173 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3174 0, 225, 225, 0, 0, 0, 0, 0, 0, 0,
3175 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3176 0, 0, 0, 0, 0, 0, 1618, 0, 0, 0,
3177 0, 1819, 1821, 1825, 1829, 1831, 1835, 0, 1618, 0,
3178 0, 1840, 1844, 1848, 1852, 0, 0, 0, 0, 0,
3179 230, 230, 0, 1821, 1825, 1831, 1835, 1840, 1844, 1848,
3180 1852, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3181 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3182 0, 0, 0, 0, 0, 82, 0, 0, 0, 0,
3183 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3184 0, 591, 591, 0, 0, 1048, 0, 1048, 0, 0,
3185 0, 1048, 591, 0, 230, 0, 0, 1743, 1746, 0,
3186 1748, 0, 1485, 1487, 0, 1491, 0, 0, 111, 117,
3187 1048, 0, 1759, 1028, 0, 0, 0, 1052, 0, 0,
3188 0, 1510, 0, 0, 0, 0, 0, 0, 1047, 1052,
3189 0, 0, 0, 0, 0, 0, 0, 230, 0, 0,
3190 161, 117, 0, 230, 0, 201, 0, 1047, 1052, 82,
3191 0, 0, 1047, 0, 0, 0, 82, 82, 1618, 0,
3192 0, 0, 1048, 1618, 0, 0, 0, 0, 0, 0,
3193 0, 0, 1048, 0, 347, 0, 0, 0, 0, 0,
3194 0, 350, 0, 0, 0, 0, 0, 0, 0, 0,
3195 0, 0, 0, 0, 0, 0, 0, 1562, 0, 0,
3196 0, 0, 0, 1572, 0, 0, 0, 0, 0, 0,
3197 0, 0, 0, 230, 0, 0, 0, 0, 0, 0,
3198 0, 0, 1726, 1728, 0, 480, 1047, 0, 0, 230,
3199 230, 1735, 0, 1739, 1479, 0, 0, 1483, 0, 0,
3200 0, 0, 0, 0, 0, 1523, 0, 0, 1752, 0,
3201 0, 0, 0, 0, 0, 0, 519, 0, 0, 0,
3202 268, 0, 1, 269, 97, 270, 0, 271, 272, 0,
3203 0, 1047, 1052, 0, 0, 0, 0, 0, 0, 0,
3204 0, 0, 0, 0, 0, 0, 0, 2, 0, 0,
3205 0, 0, 0, 0, 0, 0, 117, 0, 0, 0,
3206 0, 0, 0, 0, 0, 0, 0, 0, 0, 161,
3207 0, 0, 0, 0, 0, 0, 0, 0, 0, 82,
3208 0, 82, 0, 0, 273, 0, 0, 1047, 0, 1052,
3209 274, 275, 276, 0, 0, 0, 591, 0, 1048, 0,
3210 0, 1047, 1052, 277, 278, 1048, 0, 0, 0, 1748,
3211 0, 1897, 0, 230, 0, 0, 0, 279, 0, 0,
3212 1904, 280, 281, 282, 283, 284, 285, 286, 287, 0,
3213 0, 288, 1050, 289, 0, 0, 1051, 0, 0, 0,
3214 0, 290, 291, 1637, 292, 293, 294, 295, 0, 0,
3215 0, 0, 0, 0, 0, 0, 1047, 0, 1052, 0,
3216 0, 0, 664, 0, 0, 0, 0, 0, 0, 0,
3217 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3218 0, 0, 1047, 0, 1052, 0, 1047, 0, 1052, 230,
3219 230, 0, 0, 0, 0, 776, 0, 268, 0, 1,
3220 269, 97, 270, 0, 271, 272, 0, 0, 0, 0,
3221 0, 0, 0, 0, 117, 0, 0, 0, 0, 0,
3222 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,
3223 0, 1886, 1887, 1888, 1889, 0, 0, 1890, 0, 0,
3224 0, 0, 1726, 1728, 0, 1735, 0, 1739, 0, 850,
3225 0, 0, 859, 1958, 1961, 0, 1048, 0, 1048, 1899,
3226 0, 273, 591, 1048, 591, 0, 0, 274, 275, 276,
3227 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3228 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
3229 0, 0, 0, 0, 279, 0, 0, 0, 280, 281,
3230 282, 283, 284, 285, 286, 287, 0, 0, 288, 1050,
3231 289, 1517, 0, 1051, 0, 117, 117, 1048, 290, 291,
3232 1048, 292, 293, 294, 295, 0, 0, 0, 591, 0,
3233 0, 0, 519, 0, 117, 0, 0, 0, 0, 0,
3234 0, 0, 962, 0, 0, 1047, 1052, 1047, 1052, 0,
3235 0, 1047, 1738, 0, 0, 0, 0, 1485, 1745, 0,
3236 1510, 0, 1052, 0, 1048, 0, 0, 0, 0, 0,
3237 1047, 1052, 1510, 0, 0, 350, 0, 0, 0, 0,
3238 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3239 0, 0, 0, 1890, 0, 0, 0, 0, 0, 0,
3240 0, 0, 0, 1966, 0, 1969, 0, 0, 0, 0,
3241 0, 0, 268, 0, 1, 269, 97, 270, 0, 271,
3242 272, 0, 1047, 1052, 0, 0, 0, 0, 0, 0,
3243 0, 0, 1047, 1052, 0, 0, 0, 0, 0, 2,
3244 0, 0, 0, 0, 0, 0, 0, 0, 0, 82,
3245 0, 0, 0, 0, 0, 0, 1998, 1999, 0, 0,
3246 1966, 0, 1969, 0, 0, 2003, 0, 0, 0, 2005,
3247 0, 0, 0, 0, 0, 1117, 273, 0, 0, 1117,
3248 0, 0, 274, 275, 276, 0, 0, 0, 0, 0,
3249 0, 0, 0, 0, 776, 277, 278, 0, 0, 0,
3250 0, 0, 2005, 0, 0, 0, 0, 0, 0, 279,
3251 0, 0, 0, 280, 281, 282, 283, 284, 285, 286,
3252 287, 0, 0, 288, 1050, 289, 0, 0, 1631, 0,
3253 2042, 0, 1640, 290, 291, 0, 292, 293, 294, 295,
3254 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3255 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3256 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3257 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3258 0, 0, 0, 0, 0, 0, 0, 0, 268, 0,
3259 1, 269, 97, 270, 0, 271, 272, 0, 1047, 776,
3260 1330, 0, 0, 1052, 0, 1047, 1738, 0, 1052, 1510,
3261 0, 1896, 0, 1898, 776, 2, 0, 0, 0, 1052,
3262 1903, 0, 1351, 0, 0, 776, 111, 117, 0, 0,
3263 0, 0, 0, 0, 0, 0, 0, 0, 0, 1006,
3264 1007, 1008, 565, 1009, 1010, 1011, 1012, 570, 571, 1013,
3265 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
3266 276, 0, 663, 0, 0, 0, 1014, 117, 0, 0,
3267 0, 277, 278, 1015, 1380, 575, 576, 577, 0, 0,
3268 519, 0, 0, 0, 0, 279, 0, 117, 0, 280,
3269 281, 282, 283, 284, 285, 286, 287, 850, 0, 288,
3270 1050, 289, 578, 0, 1051, 0, 220, 0, 579, 290,
3271 291, 0, 292, 293, 294, 295, 0, 0, 0, 0,
3272 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3273 0, 0, 0, 0, 0, 0, 0, 0, 0, 850,
3274 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3275 0, 0, 0, 1957, 1960, 0, 1047, 1052, 1047, 682,
3276 0, 0, 0, 1047, 1738, 683, 684, 685, -360, -360,
3277 -360, -360, -360, -360, -360, -360, 0, 0, 0, 0,
3278 0, 0, 0, 0, 0, 0, -360, -360, -360, -360,
3279 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3280 -360, -360, -360, -360, -360, -360, -360, -360, -360, 0,
3281 0, 0, 0, 0, 0, 0, 0, 1047, 1052, 0,
3282 1047, 1738, 0, 0, -360, 2004, 0, 0, 0, 0,
3283 0, 0, -360, -360, 0, 0, 0, -360, 0, 0,
3284 0, 0, 0, -360, -360, -360, 0, 0, 0, 0,
3285 0, 0, 0, 0, 0, 0, 0, 0, -360, 0,
3286 0, 0, 0, 0, 1047, 0, 0, -360, -360, -360,
3287 686, 0, 0, -360, 1439, -360, -360, 0, 687, 0,
3288 0, 688, 0, -360, -360, -360, 0, -360, -360, -360,
3289 -360, -360, 0, 0, 0, 0, 0, 0, 0, 0,
3290 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3291 0, 0, 0, 776, 0, 0, 0, 0, 0, 0,
3292 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3293 776, 0, 1117, 0, 0, 0, 0, 0, 0, 0,
3294 1586, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3295 1117, 0, 0, 0, 0, -360, 682, 1117, -360, -360,
3296 -360, -360, 683, 684, 685, -360, -360, -360, -360, -360,
3297 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3298 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3299 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3300 -360, -360, -360, -360, -360, -360, 0, -360, -360, -360,
3301 -360, -360, -360, -360, -360, -360, -360, -360, 0, 0,
3302 -360, -360, 0, -360, 0, 0, -360, -360, -360, -360,
3303 -360, 0, 0, -360, -360, -360, -360, -360, -360, -360,
3304 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3305 0, -360, 0, -360, -360, -360, 0, -360, -360, -360,
3306 -360, -360, -360, -360, -360, -360, -360, 686, -360, -360,
3307 -360, -360, -360, -360, -360, 687, -360, -360, 688, -360,
3308 -360, -360, -360, -360, -360, -360, -360, -360, -360, 0,
3309 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3310 0, 0, 0, 0, 0, 0, -362, 1091, 0, -362,
3311 -362, -362, -362, 1092, 1093, 1094, -362, -362, -362, -362,
3312 -362, -362, -362, -362, -362, -362, -362, -362, -362, -362,
3313 -362, -362, -362, -362, -362, -362, -362, -362, -362, -362,
3314 -362, -362, -362, -362, -362, -362, -362, -362, -362, -362,
3315 -362, -362, -362, -362, -362, -362, -362, 0, -362, -362,
3316 -362, -362, -362, -362, -362, -362, -362, -362, -362, 0,
3317 0, -362, -362, 0, -362, 1667, 0, -362, -362, -362,
3318 -362, -362, 0, 0, -362, -362, -362, -362, -362, -362,
3319 -362, -362, -362, -362, -362, -362, -362, -362, -362, -362,
3320 -362, 0, -362, 1351, -362, -362, -362, 0, -362, -362,
3321 -362, -362, -362, -362, -362, -362, -362, -362, 1095, -362,
3322 -362, -362, -362, -362, -362, -362, 1096, -362, -362, 1097,
3323 -362, -362, -362, -362, -362, -362, -362, -362, -362, -362,
3324 0, 0, -467, 1042, 0, -467, -467, -467, -467, -467,
3325 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3326 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3327 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3328 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3329 -467, -467, -467, 519, -467, -467, -467, -467, -467, -467,
3330 -467, -467, -467, -467, -467, 0, 0, -467, -467, 0,
3331 -467, 0, 0, -467, -467, -467, -467, -467, 0, 0,
3332 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3333 -467, -467, -467, -467, -467, -467, -467, 0, -467, 0,
3334 -467, -467, -467, 0, -467, -467, -467, -467, -467, -467,
3335 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3336 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3337 -467, -467, -467, -467, -467, -467, 0, 0, 0, 0,
3338 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3339 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3340 0, 0, 0, -303, 1044, 0, 1, 269, 97, 270,
3341 -303, 271, 272, -303, -303, -303, -303, -303, -303, -303,
3342 -303, -303, -303, -303, -303, -303, -303, -303, -303, -303,
3343 -303, 2, -303, -303, -303, -303, -303, -303, -303, -303,
3344 -303, -303, -303, -303, -303, -303, -303, -303, -303, -303,
3345 -303, -303, -303, -303, 0, -303, -303, -303, -303, -303,
3346 -303, -303, -303, -303, -303, -303, 0, 0, 273, -303,
3347 0, -303, 0, 0, 274, 275, 276, -303, -303, 0,
3348 0, -303, -303, -303, -303, -303, -303, 277, 278, -303,
3349 -303, -303, -303, -303, -303, -303, -303, -303, 0, -303,
3350 0, 279, -303, -303, 1667, 280, 281, 282, 283, 284,
3351 285, 286, 287, -303, -303, 288, 1138, 289, -303, -303,
3352 1046, -303, -303, -303, -303, 290, 291, -303, 292, 293,
3353 294, 295, -303, -303, -303, -303, -303, -304, 268, 0,
3354 1, 269, 97, 270, -304, 271, 272, -304, -304, -304,
3355 -304, -304, -304, -304, -304, -304, -304, -304, -304, -304,
3356 -304, -304, -304, -304, -304, 2, -304, -304, -304, -304,
3357 -304, -304, -304, -304, -304, -304, -304, -304, -304, -304,
3358 -304, -304, -304, -304, -304, -304, -304, -304, 0, -304,
3359 -304, -304, -304, -304, -304, -304, -304, -304, -304, -304,
3360 0, 0, 273, -304, 0, -304, 0, 0, 274, 275,
3361 276, -304, -304, 0, 0, -304, -304, -304, -304, -304,
3362 -304, 277, 278, -304, -304, -304, -304, -304, -304, -304,
3363 -304, -304, 0, -304, 0, 279, -304, -304, 0, 280,
3364 281, 282, 283, 284, 285, 286, 287, -304, -304, 288,
3365 1050, 289, -304, -304, 1051, -304, -304, -304, -304, 290,
3366 291, -304, 292, 293, 294, 295, -304, -304, -304, -304,
3367 -304, -609, 268, 0, 1, 269, 97, 270, -609, 271,
3368 272, -609, -609, -609, -609, -609, -609, -609, -609, -609,
3369 -609, -609, -609, -609, -609, -609, -609, -609, -609, 2,
3370 -609, -609, -609, -609, -609, -609, -609, -609, -609, -609,
3371 -609, -609, -609, -609, -609, -609, -609, -609, -609, -609,
3372 -609, -609, 0, -609, -609, -609, -609, -609, -609, -609,
3373 -609, -609, -609, -609, 0, 0, 273, -609, 0, -609,
3374 0, 0, 274, 275, 276, -609, -609, 0, 0, -609,
3375 -609, -609, -609, -609, -609, 277, 278, -609, -609, -609,
3376 -609, -609, -609, -609, -609, -609, 0, -609, 0, 279,
3377 -609, -609, 0, 280, 281, 282, 283, 284, 285, 286,
3378 287, -609, -609, 288, -609, 289, -609, -609, -609, -609,
3379 672, -609, 1224, 290, 291, -609, 292, 293, 294, 295,
3380 -609, -609, -609, -609, -609, -610, 268, 0, 1, 269,
3381 97, 270, -610, 271, 272, -610, -610, -610, -610, -610,
3382 -610, -610, -610, -610, -610, -610, -610, -610, -610, -610,
3383 -610, -610, -610, 2, -610, -610, -610, -610, -610, -610,
3384 -610, -610, -610, -610, -610, -610, -610, -610, -610, -610,
3385 -610, -610, -610, -610, -610, -610, 0, -610, -610, -610,
3386 -610, -610, -610, -610, -610, -610, -610, -610, 0, 0,
3387 273, -610, 0, -610, 0, 0, 274, 275, 276, -610,
3388 -610, 0, 0, -610, -610, -610, -610, -610, -610, 277,
3389 278, -610, -610, -610, -610, -610, -610, -610, -610, -610,
3390 0, -610, 0, 279, -610, -610, 0, 280, 281, 282,
3391 283, 284, 285, 286, 287, -610, -610, 288, -610, 289,
3392 -610, -610, -610, -610, 672, -610, 1295, 290, 291, -610,
3393 292, 293, 294, 295, -610, -610, -610, -610, -610, -625,
3394 1044, 0, 1, 269, 97, 270, -625, 271, 272, -625,
3395 -625, -625, -625, -625, -625, -625, -625, -625, -625, -625,
3396 -625, -625, -625, -625, -625, -625, -625, 2, -625, -625,
3397 -625, -625, -625, -625, -625, -625, -625, -625, -625, -625,
3398 -625, -625, -625, -625, -625, -625, -625, -625, -625, -625,
3399 0, -625, -625, -625, -625, -625, -625, -625, -625, -625,
3400 -625, -625, 0, 0, 273, -625, 0, -625, 0, 0,
3401 274, 275, 276, -625, -625, 0, 0, -625, -625, -625,
3402 -625, -625, -625, 277, 278, -625, -625, -625, -625, -625,
3403 -625, -625, -625, -625, 0, -625, 0, 279, -625, -625,
3404 0, 280, 281, 282, 283, 284, 285, 286, 287, -625,
3405 -625, 288, -625, 289, -625, -625, 1046, -625, -625, -625,
3406 -625, 290, 291, -625, 292, 293, 294, 295, -625, -625,
3407 -625, -625, -625, -627, 268, 0, 1, 269, 97, 270,
3408 -627, 271, 272, -627, -627, -627, -627, -627, -627, -627,
3409 -627, -627, -627, -627, -627, -627, -627, -627, -627, -627,
3410 -627, 2, -627, -627, -627, -627, -627, -627, -627, -627,
3411 -627, -627, -627, -627, -627, -627, -627, -627, -627, -627,
3412 -627, -627, -627, -627, 0, -627, -627, -627, -627, -627,
3413 -627, -627, -627, -627, -627, -627, 0, 0, 273, -627,
3414 0, -627, 0, 0, 274, 275, 276, -627, -627, 0,
3415 0, -627, -627, -627, -627, -627, -627, 277, 278, -627,
3416 -627, -627, -627, -627, -627, -627, -627, -627, 0, -627,
3417 0, 279, -627, -627, 0, 280, 281, 282, 283, 284,
3418 285, 286, 287, -627, -627, 288, 1050, 289, -627, -627,
3419 1051, -627, -627, -627, -627, 290, 291, -627, 292, 293,
3420 294, 295, -627, -627, -627, -627, -627, -626, 1044, 0,
3421 1, 269, 97, 270, -626, 271, 272, -626, -626, -626,
3422 -626, -626, -626, -626, -626, -626, -626, -626, -626, -626,
3423 -626, -626, -626, -626, -626, 2, -626, -626, -626, -626,
3424 -626, -626, -626, -626, -626, -626, -626, -626, -626, -626,
3425 -626, -626, -626, -626, -626, -626, -626, -626, 0, -626,
3426 -626, -626, -626, -626, -626, -626, -626, -626, -626, -626,
3427 0, 0, 273, -626, 0, -626, 0, 0, 274, 275,
3428 276, -626, -626, 0, 0, -626, -626, -626, -626, -626,
3429 -626, 277, 278, -626, -626, -626, -626, -626, -626, -626,
3430 -626, -626, 0, -626, 0, 279, -626, -626, 0, 280,
3431 281, 282, 283, 284, 285, 286, 287, -626, -626, 288,
3432 -626, 289, -626, -626, 1046, -626, -626, -626, -626, 290,
3433 291, -626, 292, 293, 294, 295, -626, -626, -626, -626,
3434 -626, -356, 1773, 0, -356, -356, -356, -356, -356, -356,
3435 -356, -356, -356, -356, -356, -356, -356, -356, -356, -356,
3436 -356, -356, -356, -356, -356, -356, -356, -356, -356, -356,
3437 -356, -356, -356, -356, -356, -356, -356, -356, -356, -356,
3438 -356, -356, -356, -356, -356, -356, -356, -356, -356, -356,
3439 -356, -356, 0, -356, -356, -356, -356, -356, -356, -356,
3440 -356, -356, -356, -356, 0, 0, -356, -356, 0, -356,
3441 0, 0, -356, -356, -356, -356, -356, 0, 0, -356,
3442 -356, -356, -356, -356, -356, -356, -356, -356, -356, -356,
3443 -356, -356, -356, -356, -356, -356, 0, -356, 0, -356,
3444 -356, -356, 0, -356, -356, -356, -356, -356, -356, -356,
3445 -356, -356, -356, -356, -356, -356, -356, -356, -356, -356,
3446 -356, -356, -356, -356, -356, -356, -356, -356, -356, -356,
3447 -356, -356, -356, -356, -356, -349, 1816, 0, 1, 269,
3448 97, 270, -349, 271, 272, -349, -349, -349, -349, -349,
3449 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3450 -349, -349, -349, 2, -349, -349, -349, -349, -349, -349,
3451 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3452 -349, -349, -349, -349, -349, -349, 0, -349, -349, -349,
3453 -349, -349, -349, -349, -349, -349, -349, -349, 0, 0,
3454 273, -349, 0, -349, 0, 0, 274, 275, 276, -349,
3455 -349, 0, 0, -349, -349, -349, -349, -349, -349, 277,
3456 278, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3457 0, -349, 0, 279, -349, -349, 0, 280, 281, 282,
3458 283, 284, 285, 286, 287, -349, -349, 288, -349, 289,
3459 -349, -349, -349, -349, 672, -349, -349, 290, 291, -349,
3460 292, 293, 294, 295, -349, -349, -349, -349, -349, -587,
3461 268, 0, 1, 269, 97, 270, -587, 271, 272, -587,
3462 -587, -587, -587, -587, -587, -587, -587, -587, -587, -587,
3463 -587, -587, -587, -587, -587, -587, -587, 2, -587, -587,
3464 -587, -587, -587, -587, -587, -587, -587, -587, -587, -587,
3465 -587, -587, -587, -587, -587, -587, -587, -587, -587, -587,
3466 0, -587, -587, -587, -587, -587, -587, -587, -587, -587,
3467 -587, -587, 0, 0, 273, -587, 0, -587, 0, 0,
3468 274, 275, 276, -587, -587, 0, 0, -587, -587, -587,
3469 -587, -587, -587, 277, 278, -587, -587, -587, -587, -587,
3470 -587, -587, -587, -587, 0, -587, 0, 279, -587, -587,
3471 0, 280, 281, 282, 283, 284, 285, 286, 287, -587,
3472 -587, 288, -587, 289, -587, -587, -587, -587, 672, -587,
3473 -587, 290, 291, -587, 292, 293, 294, 295, -587, -587,
3474 -587, -587, -587, -595, 268, 0, 1, 269, 97, 270,
3475 -595, 271, 272, -595, -595, -595, -595, -595, -595, -595,
3476 -595, -595, -595, -595, -595, -595, -595, -595, -595, -595,
3477 -595, 2, -595, -595, -595, -595, -595, -595, -595, -595,
3478 -595, -595, -595, -595, -595, -595, -595, -595, -595, -595,
3479 -595, -595, -595, -595, 0, -595, -595, -595, -595, -595,
3480 -595, -595, -595, -595, -595, -595, 0, 0, 273, -595,
3481 0, -595, 0, 0, 274, 275, 276, -595, -595, 0,
3482 0, -595, -595, -595, -595, -595, -595, 277, 278, -595,
3483 -595, -595, -595, -595, -595, -595, -595, -595, 0, -595,
3484 0, 279, -595, -595, 0, 280, 281, 282, 283, 284,
3485 285, 286, 287, -595, -595, 288, -595, 289, -595, -595,
3486 -595, -595, 672, -595, -595, 290, 291, -595, 292, 293,
3487 294, 295, -595, -595, -595, -595, -595, -588, 268, 0,
3488 1, 269, 97, 270, -588, 271, 272, -588, -588, -588,
3489 -588, -588, -588, -588, -588, -588, -588, -588, -588, -588,
3490 -588, -588, -588, -588, -588, 2, -588, -588, -588, -588,
3491 -588, -588, -588, -588, -588, -588, -588, -588, -588, -588,
3492 -588, -588, -588, -588, -588, -588, -588, -588, 0, -588,
3493 -588, -588, -588, -588, -588, -588, -588, -588, -588, -588,
3494 0, 0, 273, -588, 0, -588, 0, 0, 274, 275,
3495 276, -588, -588, 0, 0, -588, -588, -588, -588, -588,
3496 -588, 277, 278, -588, -588, -588, -588, -588, -588, -588,
3497 -588, -588, 0, -588, 0, 279, -588, -588, 0, 280,
3498 281, 282, 283, 284, 285, 286, 287, -588, -588, 288,
3499 -588, 289, -588, -588, -588, -588, 672, -588, -588, 290,
3500 291, -588, 292, 293, 294, 295, -588, -588, -588, -588,
3501 -588, -596, 268, 0, 1, 269, 97, 270, -596, 271,
3502 272, -596, -596, -596, -596, -596, -596, -596, -596, -596,
3503 -596, -596, -596, -596, -596, -596, -596, -596, -596, 2,
3504 -596, -596, -596, -596, -596, -596, -596, -596, -596, -596,
3505 -596, -596, -596, -596, -596, -596, -596, -596, -596, -596,
3506 -596, -596, 0, -596, -596, -596, -596, -596, -596, -596,
3507 -596, -596, -596, -596, 0, 0, 273, -596, 0, -596,
3508 0, 0, 274, 275, 276, -596, -596, 0, 0, -596,
3509 -596, -596, -596, -596, -596, 277, 278, -596, -596, -596,
3510 -596, -596, -596, -596, -596, -596, 0, -596, 0, 279,
3511 -596, -596, 0, 280, 281, 282, 283, 284, 285, 286,
3512 287, -596, -596, 288, -596, 289, -596, -596, -596, -596,
3513 672, -596, -596, 290, 291, -596, 292, 293, 294, 295,
3514 -596, -596, -596, -596, -596, -349, 1839, 0, 1, 269,
3515 97, 270, -349, 271, 272, -349, -349, -349, -349, -349,
3516 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3517 -349, -349, -349, 2, -349, -349, -349, -349, -349, -349,
3518 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3519 -349, -349, -349, -349, -349, -349, 0, -349, -349, -349,
3520 -349, -349, -349, -349, -349, -349, -349, -349, 0, 0,
3521 273, -349, 0, -349, 0, 0, 274, 275, 276, -349,
3522 -349, 0, 0, -349, -349, -349, -349, -349, -349, 277,
3523 278, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3524 0, -349, 0, 279, -349, -349, 0, 280, 281, 282,
3525 283, 284, 285, 286, 287, -349, -349, 288, -349, 289,
3526 -349, -349, -349, -349, 672, -349, -349, 290, 291, -349,
3527 292, 293, 294, 295, -349, -349, -349, -349, -349, -589,
3528 268, 0, 1, 269, 97, 270, -589, 271, 272, -589,
3529 -589, -589, -589, -589, -589, -589, -589, -589, -589, -589,
3530 -589, -589, -589, -589, -589, -589, -589, 2, -589, -589,
3531 -589, -589, -589, -589, -589, -589, -589, -589, -589, -589,
3532 -589, -589, -589, -589, -589, -589, -589, -589, -589, -589,
3533 0, -589, -589, -589, -589, -589, -589, -589, -589, -589,
3534 -589, -589, 0, 0, 273, -589, 0, -589, 0, 0,
3535 274, 275, 276, -589, -589, 0, 0, -589, -589, -589,
3536 -589, -589, -589, 277, 278, -589, -589, -589, -589, -589,
3537 -589, -589, -589, -589, 0, -589, 0, 279, -589, -589,
3538 0, 280, 281, 282, 283, 284, 285, 286, 287, -589,
3539 -589, 288, -589, 289, -589, -589, -589, -589, 672, -589,
3540 -589, 290, 291, -589, 292, 293, 294, 295, -589, -589,
3541 -589, -589, -589, -597, 268, 0, 1, 269, 97, 270,
3542 -597, 271, 272, -597, -597, -597, -597, -597, -597, -597,
3543 -597, -597, -597, -597, -597, -597, -597, -597, -597, -597,
3544 -597, 2, -597, -597, -597, -597, -597, -597, -597, -597,
3545 -597, -597, -597, -597, -597, -597, -597, -597, -597, -597,
3546 -597, -597, -597, -597, 0, -597, -597, -597, -597, -597,
3547 -597, -597, -597, -597, -597, -597, 0, 0, 273, -597,
3548 0, -597, 0, 0, 274, 275, 276, -597, -597, 0,
3549 0, -597, -597, -597, -597, -597, -597, 277, 278, -597,
3550 -597, -597, -597, -597, -597, -597, -597, -597, 0, -597,
3551 0, 279, -597, -597, 0, 280, 281, 282, 283, 284,
3552 285, 286, 287, -597, -597, 288, -597, 289, -597, -597,
3553 -597, -597, 672, -597, -597, 290, 291, -597, 292, 293,
3554 294, 295, -597, -597, -597, -597, -597, -590, 268, 0,
3555 1, 269, 97, 270, -590, 271, 272, -590, -590, -590,
3556 -590, -590, -590, -590, -590, -590, -590, -590, -590, -590,
3557 -590, -590, -590, -590, -590, 2, -590, -590, -590, -590,
3558 -590, -590, -590, -590, -590, -590, -590, -590, -590, -590,
3559 -590, -590, -590, -590, -590, -590, -590, -590, 0, -590,
3560 -590, -590, -590, -590, -590, -590, -590, -590, -590, -590,
3561 0, 0, 273, -590, 0, -590, 0, 0, 274, 275,
3562 276, -590, -590, 0, 0, -590, -590, -590, -590, -590,
3563 -590, 277, 278, -590, -590, -590, -590, -590, -590, -590,
3564 -590, -590, 0, -590, 0, 279, -590, -590, 0, 280,
3565 281, 282, 283, 284, 285, 286, 287, -590, -590, 288,
3566 -590, 289, -590, -590, -590, -590, 672, -590, -590, 290,
3567 291, -590, 292, 293, 294, 295, -590, -590, -590, -590,
3568 -590, -598, 268, 0, 1, 269, 97, 270, -598, 271,
3569 272, -598, -598, -598, -598, -598, -598, -598, -598, -598,
3570 -598, -598, -598, -598, -598, -598, -598, -598, -598, 2,
3571 -598, -598, -598, -598, -598, -598, -598, -598, -598, -598,
3572 -598, -598, -598, -598, -598, -598, -598, -598, -598, -598,
3573 -598, -598, 0, -598, -598, -598, -598, -598, -598, -598,
3574 -598, -598, -598, -598, 0, 0, 273, -598, 0, -598,
3575 0, 0, 274, 275, 276, -598, -598, 0, 0, -598,
3576 -598, -598, -598, -598, -598, 277, 278, -598, -598, -598,
3577 -598, -598, -598, -598, -598, -598, 0, -598, 0, 279,
3578 -598, -598, 0, 280, 281, 282, 283, 284, 285, 286,
3579 287, -598, -598, 288, -598, 289, -598, -598, -598, -598,
3580 672, -598, -598, 290, 291, -598, 292, 293, 294, 295,
3581 -598, -598, -598, -598, -598, -358, 1917, 0, -358, -358,
3582 -358, -358, -358, -358, -358, -358, -358, -358, -358, -358,
3583 -358, -358, -358, -358, -358, -358, -358, -358, -358, -358,
3584 -358, -358, -358, -358, -358, -358, -358, -358, -358, -358,
3585 -358, -358, -358, -358, -358, -358, -358, -358, -358, -358,
3586 -358, -358, -358, -358, -358, -358, 0, -358, -358, -358,
3587 -358, -358, -358, -358, -358, -358, -358, -358, 0, 0,
3588 -358, -358, 0, -358, 0, 0, -358, -358, -358, -358,
3589 -358, 0, 0, -358, -358, -358, -358, -358, -358, -358,
3590 -358, -358, -358, -358, -358, -358, -358, -358, -358, -358,
3591 0, -358, 0, -358, -358, -358, 0, -358, -358, -358,
3592 -358, -358, -358, -358, -358, -358, -358, -358, -358, -358,
3593 -358, -358, -358, -358, -358, -358, -358, -358, -358, -358,
3594 -358, -358, -358, -358, -358, -358, -358, -358, -358, -357,
3595 1918, 0, -357, -357, -357, -357, -357, -357, -357, -357,
3596 -357, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3597 -357, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3598 -357, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3599 -357, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3600 0, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3601 -357, -357, 0, 0, -357, -357, 0, -357, 0, 0,
3602 -357, -357, -357, -357, -357, 0, 0, -357, -357, -357,
3603 -357, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3604 -357, -357, -357, -357, 0, -357, 0, -357, -357, -357,
3605 0, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3606 -357, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3607 -357, -357, -357, -357, -357, -357, -357, -357, -357, -357,
3608 -357, -357, -357, -349, 1919, 0, 1, 269, 97, 270,
3609 -349, 271, 272, -349, -349, -349, -349, -349, -349, -349,
3610 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3611 -349, 2, -349, -349, -349, -349, -349, -349, -349, -349,
3612 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3613 -349, -349, -349, -349, 0, -349, -349, -349, -349, -349,
3614 -349, -349, -349, -349, -349, -349, 0, 0, 273, -349,
3615 0, -349, 0, 0, 274, 275, 276, -349, -349, 0,
3616 0, -349, -349, -349, -349, -349, -349, 277, 278, -349,
3617 -349, -349, -349, -349, -349, -349, -349, -349, 0, -349,
3618 0, 279, -349, -349, 0, 280, 281, 282, 283, 284,
3619 285, 286, 287, -349, -349, 288, -349, 289, -349, -349,
3620 -349, -349, 672, -349, -349, 290, 291, -349, 292, 293,
3621 294, 295, -349, -349, -349, -349, -349, -349, 1920, 0,
3622 1, 269, 97, 270, -349, 271, 272, -349, -349, -349,
3623 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3624 -349, -349, -349, -349, -349, 2, -349, -349, -349, -349,
3625 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3626 -349, -349, -349, -349, -349, -349, -349, -349, 0, -349,
3627 -349, -349, -349, -349, -349, -349, -349, -349, -349, -349,
3628 0, 0, 273, -349, 0, -349, 0, 0, 274, 275,
3629 276, -349, -349, 0, 0, -349, -349, -349, -349, -349,
3630 -349, 277, 278, -349, -349, -349, -349, -349, -349, -349,
3631 -349, -349, 0, -349, 0, 279, -349, -349, 0, 280,
3632 281, 282, 283, 284, 285, 286, 287, -349, -349, 288,
3633 -349, 289, -349, -349, -349, -349, 672, -349, -349, 290,
3634 291, -349, 292, 293, 294, 295, -349, -349, -349, -349,
3635 -349, -360, 682, 0, -360, -360, -360, -360, 683, 684,
3636 685, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3637 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3638 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3639 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3640 -360, -360, 0, -360, -360, -360, -360, -360, -360, -360,
3641 -360, -360, -360, -360, 0, 0, -360, -360, 0, -360,
3642 0, 0, -360, -360, -360, -360, -360, 0, 0, -360,
3643 -360, -360, -360, -360, -360, -360, -360, -360, -360, -360,
3644 -360, -360, -360, -360, -360, -360, 0, -360, 0, -360,
3645 -360, -360, 0, -360, -360, -360, -360, -360, -360, -360,
3646 -360, -360, -360, 686, -360, -360, -360, -360, -360, -360,
3647 -360, 1040, -360, -360, 688, 0, -360, -360, -360, -360,
3648 -360, -360, -360, -360, -360, -467, 1042, 0, -467, -467,
3649 -467, -467, 0, -467, -467, 0, 0, 0, 0, 0,
3650 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3651 0, 0, 0, -467, -467, -467, -467, -467, -467, -467,
3652 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3653 -467, -467, -467, -467, -467, -467, 0, -467, -467, -467,
3654 -467, -467, -467, -467, -467, -467, -467, -467, 0, 0,
3655 -467, -467, 0, -467, 0, 0, -467, -467, -467, -467,
3656 -467, 0, 0, -467, -467, -467, -467, -467, -467, -467,
3657 -467, -467, -467, -467, -467, -467, -467, -467, -467, -467,
3658 0, -467, 0, -467, -467, -467, 0, -467, -467, -467,
3659 -467, -467, -467, -467, -467, 0, 0, -467, -467, -467,
3660 -467, 0, -467, -467, -467, 1043, -467, -467, -467, 0,
3661 -467, -467, -467, -467, -1064, 268, 0, 1, 269, 97,
3662 270, 0, 271, 272, 0, 0, 0, 0, 0, 0,
3663 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3664 0, 0, 2, -1064, -1064, -1064, -1064, -1064, -1064, -1064,
3665 -1064, -1064, -1064, -1064, -1064, -1064, -1064, -1064, -1064, -1064,
3666 -1064, -1064, -1064, -1064, -1064, 0, -1064, -1064, -1064, -1064,
3667 -1064, -1064, -1064, -1064, -1064, -1064, -1064, 0, 0, 273,
3668 -1064, 0, -1064, 0, 0, 274, 275, 276, -1064, -1064,
3669 0, 0, -1064, -1064, -1064, -1064, -1064, -1064, 277, 278,
3670 -1064, -1064, -1064, -1064, -1064, -1064, -1064, -1064, -1064, 0,
3671 -1064, 0, 279, -1064, -1064, 0, 280, 281, 282, 283,
3672 284, 285, 286, 287, 0, 0, 288, 1050, 289, -1064,
3673 0, 1051, -1064, -1064, 0, -1064, 290, 291, 0, 292,
3674 293, 294, 295, -1200, 268, 0, 1, 269, 97, 270,
3675 0, 271, 272, 0, 0, 0, 0, 0, 0, 0,
3676 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3677 0, 2, -1200, -1200, -1200, -1200, -1200, -1200, -1200, -1200,
3678 -1200, -1200, -1200, -1200, -1200, -1200, -1200, -1200, -1200, -1200,
3679 -1200, -1200, -1200, -1200, 0, -1200, -1200, -1200, -1200, -1200,
3680 -1200, -1200, -1200, -1200, -1200, -1200, 0, 0, 273, -1200,
3681 0, -1200, 0, 0, 274, 275, 276, -1200, -1200, 0,
3682 0, -1200, -1200, -1200, -1200, -1200, -1200, 277, 278, -1200,
3683 -1200, -1200, -1200, -1200, -1200, -1200, -1200, -1200, 0, -1200,
3684 0, 279, -1200, -1200, 0, 280, 281, 282, 283, 284,
3685 285, 286, 287, 0, 0, 288, 1050, 289, 1517, 0,
3686 1051, -1200, -1200, 0, -1200, 290, 291, 0, 292, 293,
3687 294, 295, -1155, 268, 0, 1, 269, 97, 270, 0,
3688 271, 272, 0, 0, 0, 0, 0, 0, 0, 0,
3689 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3690 2, -1155, -1155, -1155, -1155, -1155, -1155, -1155, -1155, -1155,
3691 -1155, -1155, -1155, -1155, -1155, -1155, -1155, -1155, -1155, -1155,
3692 -1155, -1155, -1155, 0, -1155, -1155, -1155, -1155, -1155, -1155,
3693 -1155, -1155, -1155, -1155, -1155, 0, 0, 273, -1155, 0,
3694 -1155, 0, 0, 274, 275, 276, -1155, -1155, 0, 0,
3695 -1155, -1155, -1155, -1155, -1155, -1155, 277, 278, -1155, -1155,
3696 -1155, -1155, -1155, -1155, -1155, -1155, -1155, 0, -1155, 0,
3697 279, -1155, -1155, 0, 280, 281, 282, 283, 284, 285,
3698 286, 287, 0, 0, 288, 1731, 289, -1155, 0, 1051,
3699 -1155, -1155, 0, -1155, 290, 291, 0, 292, 293, 294,
3700 295, -1188, 1737, 0, 1, 269, 97, 270, 0, 271,
3701 272, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3702 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
3703 -1188, -1188, -1188, -1188, -1188, -1188, -1188, -1188, -1188, -1188,
3704 -1188, -1188, -1188, -1188, -1188, -1188, -1188, -1188, -1188, -1188,
3705 -1188, -1188, 0, 562, 563, 564, 565, 566, 567, 568,
3706 569, 570, 571, 572, 0, 0, 273, -1188, 0, -1188,
3707 0, 0, 274, 275, 276, -1188, -1188, 0, 0, -1188,
3708 1014, -1188, -1188, -1188, -1188, 277, 278, 1015, -1188, 575,
3709 576, 577, -1188, -1188, -1188, -1188, 0, -1188, 0, 279,
3710 -1188, -1188, 0, 280, 281, 282, 283, 284, 285, 286,
3711 287, 0, 0, 288, 1050, 289, 578, 0, 1051, -1188,
3712 220, 0, 579, 290, 291, 0, 292, 293, 294, 295,
3713 -626, 1044, 0, 1, 269, 97, 270, 0, 271, 272,
3714 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3715 0, 0, 0, 0, 0, 0, 0, 0, 2, -626,
3716 -626, -626, -626, -626, -626, -626, -626, -626, -626, -626,
3717 -626, -626, -626, -626, -626, -626, -626, -626, -626, -626,
3718 -626, 0, -626, -626, -626, -626, -626, -626, -626, -626,
3719 -626, -626, -626, 0, 0, 273, -626, 0, -626, 0,
3720 0, 274, 275, 276, -626, -626, 0, 0, -626, -626,
3721 -626, -626, -626, -626, 277, 278, -626, -626, -626, -626,
3722 -626, -626, -626, -626, -626, 0, -626, 0, 279, -626,
3723 -626, 0, 280, 281, 282, 283, 284, 285, 286, 287,
3724 0, 0, 288, -626, 289, 1045, 0, 1046, -626, -626,
3725 0, -626, 290, 291, 0, 292, 293, 294, 295, -1179,
3726 1044, 0, 1, 269, 97, 270, 0, 271, 272, 0,
3727 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3728 0, 0, 0, 0, 0, 0, 0, 2, -1179, -1179,
3729 -1179, -1179, -1179, -1179, -1179, -1179, -1179, -1179, -1179, -1179,
3730 -1179, -1179, -1179, -1179, -1179, -1179, -1179, -1179, -1179, -1179,
3731 0, -1179, -1179, -1179, -1179, -1179, -1179, -1179, -1179, -1179,
3732 -1179, -1179, 0, 0, 273, -1179, 0, -1179, 0, 0,
3733 274, 275, 276, -1179, -1179, 0, 0, -1179, -1179, -1179,
3734 -1179, -1179, -1179, 277, 278, -1179, -1179, -1179, -1179, -1179,
3735 -1179, -1179, -1179, -1179, 0, -1179, 0, 279, -1179, -1179,
3736 0, 280, 281, 282, 283, 284, 285, 286, 287, 0,
3737 0, 288, 1962, 289, -1179, 0, 1046, -1179, -1179, 0,
3738 -1179, 290, 291, 0, 292, 293, 294, 295, -1180, 268,
3739 0, 1, 269, 97, 270, 0, 271, 272, 0, 0,
3740 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3741 0, 0, 0, 0, 0, 0, 2, -1180, -1180, -1180,
3742 -1180, -1180, -1180, -1180, -1180, -1180, -1180, -1180, -1180, -1180,
3743 -1180, -1180, -1180, -1180, -1180, -1180, -1180, -1180, -1180, 0,
3744 -1180, -1180, -1180, -1180, -1180, -1180, -1180, -1180, -1180, -1180,
3745 -1180, 0, 0, 273, -1180, 0, -1180, 0, 0, 274,
3746 275, 276, -1180, -1180, 0, 0, -1180, -1180, -1180, -1180,
3747 -1180, -1180, 277, 278, -1180, -1180, -1180, -1180, -1180, -1180,
3748 -1180, -1180, -1180, 0, -1180, 0, 279, -1180, -1180, 0,
3749 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
3750 288, 1050, 289, 1963, 0, 1051, -1180, -1180, 0, -1180,
3751 290, 291, 0, 292, 293, 294, 295, -1174, 268, 0,
3752 1, 269, 97, 270, 0, 271, 272, 0, 0, 0,
3753 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3754 0, 0, 0, 0, 0, 2, -1174, -1174, -1174, -1174,
3755 -1174, -1174, -1174, -1174, -1174, -1174, -1174, -1174, -1174, -1174,
3756 -1174, -1174, -1174, -1174, -1174, -1174, -1174, -1174, 0, 562,
3757 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
3758 0, 0, 273, -1174, 0, -1174, 0, 0, 274, 275,
3759 276, -1174, -1174, 0, 0, -1174, 1014, -1174, -1174, -1174,
3760 -1174, 277, 278, 1015, -1174, 575, 576, 577, -1174, -1174,
3761 -1174, -1174, 0, -1174, 0, 279, -1174, -1174, 0, 280,
3762 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
3763 1050, 289, 578, 0, 1051, -1174, 220, 0, 579, 290,
3764 291, 0, 292, 293, 294, 295, -1121, 553, 0, -1121,
3765 -1121, -1121, -1121, 0, -1121, -1121, 0, 0, 0, 0,
3766 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3767 0, 0, 0, 0, -1121, -1121, -1121, -1121, -1121, -1121,
3768 -1121, -1121, -1121, -1121, -1121, -1121, -1121, -1121, -1121, -1121,
3769 -1121, -1121, -1121, -1121, -1121, -1121, -1121, 0, -1121, -1121,
3770 -1121, -1121, -1121, -1121, -1121, -1121, -1121, -1121, -1121, 0,
3771 0, -1121, -1121, 0, -1121, 0, 0, -1121, -1121, -1121,
3772 -1121, -1121, 0, 0, -1121, -1121, -1121, -1121, -1121, -1121,
3773 -1121, -1121, -1121, -1121, -1121, -1121, -1121, -1121, -1121, -1121,
3774 -1121, 0, -1121, 0, -1121, -1121, -1121, 0, -1121, -1121,
3775 -1121, -1121, -1121, -1121, -1121, -1121, 0, 0, -1121, 0,
3776 -1121, 554, 0, -1121, -1121, -1121, 0, -1121, -1121, -1121,
3777 0, -1121, -1121, -1121, -1121, -1144, 268, 0, 1, 269,
3778 97, 270, 0, 271, 272, 0, 0, 0, 0, 0,
3779 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3780 0, 0, 0, 2, 172, 173, 174, 175, 176, 204,
3781 205, 206, 207, 208, 209, 210, 211, 212, 213, 18,
3782 19, 214, 215, 22, 23, 24, 0, 562, 563, 564,
3783 565, 566, 567, 568, 569, 570, 571, 572, 0, 0,
3784 273, 216, 0, -1144, 0, 0, 274, 275, 276, 28,
3785 29, 0, 0, -1144, 573, -1144, -1144, -1144, -1144, 277,
3786 355, 574, 218, 575, 576, 577, -1144, -1144, -1144, -1144,
3787 0, -1144, 0, 279, -1144, 219, 0, 280, 281, 282,
3788 283, 284, 285, 286, 287, 0, 0, 288, 0, 289,
3789 578, 0, -1144, -1144, 220, 0, 579, 290, 291, 0,
3790 292, 293, 294, 295, -1122, 553, 0, -1122, -1122, -1122,
3791 -1122, 0, -1122, -1122, 0, 0, 0, 0, 0, 0,
3792 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3793 0, 0, -1122, -1122, -1122, -1122, -1122, -1122, -1122, -1122,
3794 -1122, -1122, -1122, -1122, -1122, -1122, -1122, -1122, -1122, -1122,
3795 -1122, -1122, -1122, -1122, -1122, 0, -1122, -1122, -1122, -1122,
3796 -1122, -1122, -1122, -1122, -1122, -1122, -1122, 0, 0, -1122,
3797 -1122, 0, -1122, 0, 0, -1122, -1122, -1122, -1122, -1122,
3798 0, 0, -1122, -1122, -1122, -1122, -1122, -1122, -1122, -1122,
3799 -1122, -1122, -1122, -1122, -1122, -1122, -1122, -1122, -1122, 0,
3800 -1122, 0, -1122, -1122, -1122, 0, -1122, -1122, -1122, -1122,
3801 -1122, -1122, -1122, -1122, 0, 0, -1122, 0, -1122, 554,
3802 0, -1122, -1122, -1122, 0, -1122, -1122, -1122, 0, -1122,
3803 -1122, -1122, -1122, -1184, 268, 0, 1, 269, 97, 270,
3804 0, 271, 272, 0, 0, 0, 0, 0, 0, 0,
3805 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3806 0, 2, -1184, -1184, -1184, -1184, -1184, -1184, -1184, -1184,
3807 -1184, -1184, -1184, -1184, -1184, -1184, -1184, -1184, -1184, -1184,
3808 -1184, -1184, -1184, -1184, 0, 1006, 1007, 1008, 565, 1009,
3809 1010, 1011, 1012, 570, 571, 1013, 0, 0, 273, -1184,
3810 0, -1184, 0, 0, 274, 275, 276, -1184, -1184, 0,
3811 0, -1184, 1014, -1184, -1184, -1184, -1184, 277, 278, 1015,
3812 -1184, 575, 576, 577, -1184, -1184, -1184, -1184, 0, -1184,
3813 0, 279, -1184, -1184, 0, 280, 281, 282, 283, 284,
3814 285, 286, 287, 0, 0, 288, 0, 289, 578, 0,
3815 -1184, -1184, 220, 0, 579, 290, 291, 0, 292, 293,
3816 294, 295, -1202, 268, 0, 1, 269, 97, 270, 0,
3817 271, 272, 0, 0, 0, 0, 0, 0, 0, 0,
3818 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3819 2, -1202, -1202, -1202, -1202, -1202, -1202, -1202, -1202, -1202,
3820 -1202, -1202, -1202, -1202, -1202, -1202, -1202, -1202, -1202, -1202,
3821 -1202, -1202, -1202, 0, -1202, -1202, -1202, -1202, -1202, -1202,
3822 -1202, -1202, -1202, -1202, -1202, 0, 0, 273, -1202, 0,
3823 -1202, 0, 0, 274, 275, 276, -1202, -1202, 0, 0,
3824 -1202, -1202, -1202, -1202, -1202, -1202, 277, 278, -1202, -1202,
3825 -1202, -1202, -1202, -1202, -1202, -1202, -1202, 0, -1202, 0,
3826 279, -1202, -1202, 0, 280, 281, 282, 283, 284, 285,
3827 286, 287, 0, 0, 288, 0, 289, 1025, 0, -1202,
3828 -1202, 672, 0, -1202, 290, 291, 0, 292, 293, 294,
3829 295, -1134, 1053, 0, 1, 269, 97, 270, 0, 271,
3830 272, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3831 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
3832 172, 173, 174, 175, 176, 204, 205, 206, 207, 208,
3833 209, 210, 211, 212, 213, 18, 19, 214, 215, 22,
3834 23, 24, 0, 562, 563, 564, 565, 566, 567, 568,
3835 569, 570, 571, 572, 0, 0, 273, 216, 0, -1134,
3836 0, 0, 274, 275, 276, 28, 29, 0, 0, -1134,
3837 573, -1134, -1134, -1134, -1134, 277, 355, 574, 218, 575,
3838 576, 577, -1134, -1134, -1134, -1134, 0, -1134, 0, 279,
3839 -1134, 219, 0, 280, 281, 282, 283, 284, 285, 286,
3840 287, 0, 0, 288, 0, 289, 578, 0, -1134, -1134,
3841 220, 0, 579, 290, 291, 0, 292, 293, 294, 295,
3842 -1138, 268, 0, 1, 269, 97, 270, 0, 271, 272,
3843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3844 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
3845 173, 174, 175, 176, 204, 205, 206, 207, 208, 209,
3846 210, 211, 212, 213, 18, 19, 214, 215, 22, 23,
3847 24, 0, 562, 563, 564, 565, 566, 567, 568, 569,
3848 570, 571, 572, 0, 0, 273, 216, 0, -1138, 0,
3849 0, 274, 275, 276, 28, 29, 0, 0, -1138, 573,
3850 -1138, -1138, -1138, -1138, 277, 355, 574, 218, 575, 576,
3851 577, -1138, -1138, -1138, -1138, 0, -1138, 0, 279, -1138,
3852 219, 0, 280, 281, 282, 283, 284, 285, 286, 287,
3853 0, 0, 288, 0, 289, 578, 0, -1138, -1138, 220,
3854 0, 579, 290, 291, 0, 292, 293, 294, 295, -1133,
3855 268, 0, 1, 269, 97, 270, 0, 271, 272, 0,
3856 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3857 0, 0, 0, 0, 0, 0, 0, 2, 172, 173,
3858 174, 175, 176, 204, 205, 206, 207, 208, 209, 210,
3859 211, 212, 213, 18, 19, 214, 215, 22, 23, 24,
3860 0, 562, 563, 564, 565, 566, 567, 568, 569, 570,
3861 571, 572, 0, 0, 273, 216, 0, -1133, 0, 0,
3862 274, 275, 276, 28, 29, 0, 0, -1133, 573, -1133,
3863 -1133, -1133, -1133, 277, 355, 574, 218, 575, 576, 577,
3864 -1133, -1133, -1133, -1133, 0, -1133, 0, 279, -1133, 219,
3865 0, 280, 281, 282, 283, 284, 285, 286, 287, 0,
3866 0, 288, 0, 289, 578, 0, -1133, -1133, 220, 0,
3867 579, 290, 291, 0, 292, 293, 294, 295, -1137, 268,
3868 0, 1, 269, 97, 270, 0, 271, 272, 0, 0,
3869 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3870 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
3871 175, 176, 204, 205, 206, 207, 208, 209, 210, 211,
3872 212, 213, 18, 19, 214, 215, 22, 23, 24, 0,
3873 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
3874 572, 0, 0, 273, 216, 0, -1137, 0, 0, 274,
3875 275, 276, 28, 29, 0, 0, -1137, 573, -1137, -1137,
3876 -1137, -1137, 277, 355, 574, 218, 575, 576, 577, -1137,
3877 -1137, -1137, -1137, 0, -1137, 0, 279, -1137, 219, 0,
3878 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
3879 288, 0, 289, 578, 0, -1137, -1137, 220, 0, 579,
3880 290, 291, 0, 292, 293, 294, 295, -1051, 1066, 0,
3881 -1051, -1051, -1051, -1051, 0, -1051, -1051, 0, 0, 0,
3882 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3883 0, 0, 0, 0, 0, -1051, -1051, -1051, -1051, -1051,
3884 -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051,
3885 -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051, 0, -1051,
3886 -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051,
3887 0, 0, -1051, -1051, 0, -1051, 0, 0, -1051, -1051,
3888 -1051, -1051, -1051, 0, 0, -1051, -1051, -1051, -1051, -1051,
3889 -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051, -1051,
3890 -1051, -1051, 0, -1051, 0, -1051, -1051, -1051, 0, -1051,
3891 -1051, -1051, -1051, -1051, -1051, -1051, -1051, 0, 0, -1051,
3892 0, -1051, -1051, 0, -1051, -1051, -1051, 0, -1051, -1051,
3893 -1051, 0, -1051, -1051, -1051, -1051, -1053, 1067, 0, -1053,
3894 -1053, -1053, -1053, 0, -1053, -1053, 0, 0, 0, 0,
3895 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3896 0, 0, 0, 0, -1053, -1053, -1053, -1053, -1053, -1053,
3897 -1053, -1053, -1053, -1053, -1053, -1053, -1053, -1053, -1053, -1053,
3898 -1053, -1053, -1053, -1053, -1053, -1053, -1053, 0, -1053, -1053,
3899 -1053, -1053, -1053, -1053, -1053, -1053, -1053, -1053, -1053, 0,
3900 0, -1053, -1053, 0, -1053, 0, 0, -1053, -1053, -1053,
3901 -1053, -1053, 0, 0, -1053, -1053, -1053, -1053, -1053, -1053,
3902 -1053, -1053, -1053, -1053, -1053, -1053, -1053, -1053, -1053, -1053,
3903 -1053, 0, -1053, 0, -1053, -1053, -1053, 0, -1053, -1053,
3904 -1053, -1053, -1053, -1053, -1053, -1053, 0, 0, -1053, 0,
3905 -1053, -1053, 0, -1053, -1053, -1053, 0, -1053, -1053, -1053,
3906 0, -1053, -1053, -1053, -1053, -1093, 268, 0, 1, 269,
3907 97, 270, 0, 271, 272, 0, 0, 0, 0, 0,
3908 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3909 0, 0, 0, 2, -1093, -1093, -1093, -1093, -1093, -1093,
3910 -1093, -1093, -1093, -1093, -1093, -1093, -1093, -1093, -1093, -1093,
3911 -1093, -1093, -1093, -1093, -1093, -1093, 0, 562, 563, 564,
3912 565, 566, 567, 568, 569, 570, 571, 572, 0, 0,
3913 273, -1093, 0, -1093, 0, 0, 274, 275, 276, -1093,
3914 -1093, 0, 0, -1093, 1014, -1093, -1093, -1093, -1093, 277,
3915 278, 1015, -1093, 575, 576, 577, -1093, -1093, -1093, -1093,
3916 0, -1093, 0, 279, -1093, -1093, 0, 280, 281, 282,
3917 283, 284, 285, 286, 287, 0, 0, 288, 0, 289,
3918 578, 0, -1093, -1093, 220, 0, 579, 290, 291, 0,
3919 292, 293, 294, 295, -1095, 268, 0, 1, 269, 97,
3920 270, 0, 271, 272, 0, 0, 0, 0, 0, 0,
3921 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3922 0, 0, 2, -1095, -1095, -1095, -1095, -1095, -1095, -1095,
3923 -1095, -1095, -1095, -1095, -1095, -1095, -1095, -1095, -1095, -1095,
3924 -1095, -1095, -1095, -1095, -1095, 0, 562, 563, 564, 565,
3925 566, 567, 568, 569, 570, 571, 572, 0, 0, 273,
3926 -1095, 0, -1095, 0, 0, 274, 275, 276, -1095, -1095,
3927 0, 0, -1095, 1014, -1095, -1095, -1095, -1095, 277, 278,
3928 1015, -1095, 575, 576, 577, -1095, -1095, -1095, -1095, 0,
3929 -1095, 0, 279, -1095, -1095, 0, 280, 281, 282, 283,
3930 284, 285, 286, 287, 0, 0, 288, 0, 289, 578,
3931 0, -1095, -1095, 220, 0, 579, 290, 291, 0, 292,
3932 293, 294, 295, -1135, 268, 0, 1, 269, 97, 270,
3933 0, 271, 272, 0, 0, 0, 0, 0, 0, 0,
3934 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3935 0, 2, 172, 173, 174, 175, 176, 204, 205, 206,
3936 207, 208, 209, 210, 211, 212, 213, 18, 19, 214,
3937 215, 22, 23, 24, 0, 562, 563, 564, 565, 566,
3938 567, 568, 569, 570, 571, 572, 0, 0, 273, 216,
3939 0, -1135, 0, 0, 274, 275, 276, 28, 29, 0,
3940 0, -1135, 573, -1135, -1135, -1135, -1135, 277, 355, 574,
3941 218, 575, 576, 577, -1135, -1135, -1135, -1135, 0, -1135,
3942 0, 279, -1135, 219, 0, 280, 281, 282, 283, 284,
3943 285, 286, 287, 0, 0, 288, 0, 289, 578, 0,
3944 -1135, -1135, 220, 0, 579, 290, 291, 0, 292, 293,
3945 294, 295, -1139, 268, 0, 1, 269, 97, 270, 0,
3946 271, 272, 0, 0, 0, 0, 0, 0, 0, 0,
3947 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3948 2, 172, 173, 174, 175, 176, 204, 205, 206, 207,
3949 208, 209, 210, 211, 212, 213, 18, 19, 214, 215,
3950 22, 23, 24, 0, 562, 563, 564, 565, 566, 567,
3951 568, 569, 570, 571, 572, 0, 0, 273, 216, 0,
3952 -1139, 0, 0, 274, 275, 276, 28, 29, 0, 0,
3953 -1139, 573, -1139, -1139, -1139, -1139, 277, 355, 574, 218,
3954 575, 576, 577, -1139, -1139, -1139, -1139, 0, -1139, 0,
3955 279, -1139, 219, 0, 280, 281, 282, 283, 284, 285,
3956 286, 287, 0, 0, 288, 0, 289, 578, 0, -1139,
3957 -1139, 220, 0, 579, 290, 291, 0, 292, 293, 294,
3958 295, -1136, 268, 0, 1, 269, 97, 270, 0, 271,
3959 272, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3960 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
3961 172, 173, 174, 175, 176, 204, 205, 206, 207, 208,
3962 209, 210, 211, 212, 213, 18, 19, 214, 215, 22,
3963 23, 24, 0, 562, 563, 564, 565, 566, 567, 568,
3964 569, 570, 571, 572, 0, 0, 273, 216, 0, -1136,
3965 0, 0, 274, 275, 276, 28, 29, 0, 0, -1136,
3966 573, -1136, -1136, -1136, -1136, 277, 355, 574, 218, 575,
3967 576, 577, -1136, -1136, -1136, -1136, 0, -1136, 0, 279,
3968 -1136, 219, 0, 280, 281, 282, 283, 284, 285, 286,
3969 287, 0, 0, 288, 0, 289, 578, 0, -1136, -1136,
3970 220, 0, 579, 290, 291, 0, 292, 293, 294, 295,
3971 -1140, 268, 0, 1, 269, 97, 270, 0, 271, 272,
3972 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3973 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
3974 173, 174, 175, 176, 204, 205, 206, 207, 208, 209,
3975 210, 211, 212, 213, 18, 19, 214, 215, 22, 23,
3976 24, 0, 562, 563, 564, 565, 566, 567, 568, 569,
3977 570, 571, 572, 0, 0, 273, 216, 0, -1140, 0,
3978 0, 274, 275, 276, 28, 29, 0, 0, -1140, 573,
3979 -1140, -1140, -1140, -1140, 277, 355, 574, 218, 575, 576,
3980 577, -1140, -1140, -1140, -1140, 0, -1140, 0, 279, -1140,
3981 219, 0, 280, 281, 282, 283, 284, 285, 286, 287,
3982 0, 0, 288, 0, 289, 578, 0, -1140, -1140, 220,
3983 0, 579, 290, 291, 0, 292, 293, 294, 295, -1131,
3984 553, 0, -1131, -1131, -1131, -1131, 0, -1131, -1131, 0,
3985 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3986 0, 0, 0, 0, 0, 0, 0, -1131, -1131, -1131,
3987 -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131,
3988 -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131,
3989 0, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131,
3990 -1131, -1131, 0, 0, -1131, -1131, 0, -1131, 0, 0,
3991 -1131, -1131, -1131, -1131, -1131, 0, 0, -1131, -1131, -1131,
3992 -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131,
3993 -1131, -1131, -1131, -1131, 0, -1131, 0, -1131, -1131, -1131,
3994 0, -1131, -1131, -1131, -1131, -1131, -1131, -1131, -1131, 0,
3995 0, -1131, 0, -1131, 554, 0, -1131, -1131, -1131, 0,
3996 -1131, -1131, -1131, 0, -1131, -1131, -1131, -1131, -1132, 553,
3997 0, -1132, -1132, -1132, -1132, 0, -1132, -1132, 0, 0,
3998 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3999 0, 0, 0, 0, 0, 0, -1132, -1132, -1132, -1132,
4000 -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132,
4001 -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, 0,
4002 -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132,
4003 -1132, 0, 0, -1132, -1132, 0, -1132, 0, 0, -1132,
4004 -1132, -1132, -1132, -1132, 0, 0, -1132, -1132, -1132, -1132,
4005 -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132,
4006 -1132, -1132, -1132, 0, -1132, 0, -1132, -1132, -1132, 0,
4007 -1132, -1132, -1132, -1132, -1132, -1132, -1132, -1132, 0, 0,
4008 -1132, 0, -1132, 554, 0, -1132, -1132, -1132, 0, -1132,
4009 -1132, -1132, 0, -1132, -1132, -1132, -1132, -981, 268, 0,
4010 1, 269, 97, 270, 0, 271, 272, 0, 0, 0,
4011 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4012 0, 0, 0, 0, 0, 2, -981, -981, -981, -981,
4013 -981, -981, -981, -981, -981, -981, -981, -981, -981, -981,
4014 -981, -981, -981, -981, -981, -981, -981, -981, 0, -981,
4015 -981, -981, -981, -981, -981, -981, -981, -981, -981, -981,
4016 0, 0, 273, -981, 0, -981, 0, 0, 274, 275,
4017 276, -981, -981, 0, 0, -981, -981, -981, -981, -981,
4018 -981, 277, 278, -981, -981, -981, -981, -981, -981, -981,
4019 -981, -981, 0, -981, 0, 279, -981, -981, 0, 280,
4020 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
4021 0, 289, -981, 0, 1710, 1711, 920, 0, -981, 290,
4022 291, 0, 292, 293, 294, 295, -983, 268, 0, 1,
4023 269, 97, 270, 0, 271, 272, 0, 0, 0, 0,
4024 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4025 0, 0, 0, 0, 2, -983, -983, -983, -983, -983,
4026 -983, -983, -983, -983, -983, -983, -983, -983, -983, -983,
4027 -983, -983, -983, -983, -983, -983, -983, 0, -983, -983,
4028 -983, -983, -983, -983, -983, -983, -983, -983, -983, 0,
4029 0, 273, -983, 0, -983, 0, 0, 274, 275, 276,
4030 -983, -983, 0, 0, -983, -983, -983, -983, -983, -983,
4031 277, 278, -983, -983, -983, -983, -983, -983, -983, -983,
4032 -983, 0, -983, 0, 279, -983, -983, 0, 280, 281,
4033 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4034 289, -983, 0, -983, 1878, 920, 0, -983, 290, 291,
4035 0, 292, 293, 294, 295, -977, 1881, 0, -977, -977,
4036 -977, -977, 0, -977, -977, 0, 0, 0, 0, 0,
4037 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4038 0, 0, 0, -977, -977, -977, -977, -977, -977, -977,
4039 -977, -977, -977, -977, -977, -977, -977, -977, -977, -977,
4040 -977, -977, -977, -977, -977, -977, 0, -977, -977, -977,
4041 -977, -977, -977, -977, -977, -977, -977, -977, 0, 0,
4042 -977, -977, 0, -977, 0, 0, -977, -977, -977, -977,
4043 -977, 0, 0, -977, -977, -977, -977, -977, -977, -977,
4044 -977, -977, -977, -977, -977, -977, -977, -977, -977, -977,
4045 0, -977, 0, -977, -977, -977, 0, -977, -977, -977,
4046 -977, -977, -977, -977, -977, 0, 0, -977, 0, -977,
4047 -977, 0, -977, -977, -977, 0, -977, -977, -977, 0,
4048 -977, -977, -977, -977, -1181, 268, 0, 1, 269, 97,
4049 270, 0, 271, 272, 0, 0, 0, 0, 0, 0,
4050 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4051 0, 0, 2, -1181, -1181, -1181, -1181, -1181, -1181, -1181,
4052 -1181, -1181, -1181, -1181, -1181, -1181, -1181, -1181, -1181, -1181,
4053 -1181, -1181, -1181, -1181, -1181, 0, -1181, -1181, -1181, -1181,
4054 -1181, -1181, -1181, -1181, -1181, -1181, -1181, 0, 0, 273,
4055 -1181, 0, -1181, 0, 0, 274, 275, 276, -1181, -1181,
4056 0, 0, -1181, -1181, -1181, -1181, -1181, -1181, 277, 278,
4057 -1181, -1181, -1181, -1181, -1181, -1181, -1181, -1181, -1181, 0,
4058 -1181, 0, 279, -1181, -1181, 0, 280, 281, 282, 283,
4059 284, 285, 286, 287, 0, 0, 288, 0, 289, -1181,
4060 0, -1181, -1181, -1181, 0, -1181, 290, 291, 0, 292,
4061 293, 294, 295, -978, 1954, 0, -978, -978, -978, -978,
4062 0, -978, -978, 0, 0, 0, 0, 0, 0, 0,
4063 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4064 0, -978, -978, -978, -978, -978, -978, -978, -978, -978,
4065 -978, -978, -978, -978, -978, -978, -978, -978, -978, -978,
4066 -978, -978, -978, -978, 0, -978, -978, -978, -978, -978,
4067 -978, -978, -978, -978, -978, -978, 0, 0, -978, -978,
4068 0, -978, 0, 0, -978, -978, -978, -978, -978, 0,
4069 0, -978, -978, -978, -978, -978, -978, -978, -978, -978,
4070 -978, -978, -978, -978, -978, -978, -978, -978, 0, -978,
4071 0, -978, -978, -978, 0, -978, -978, -978, -978, -978,
4072 -978, -978, -978, 0, 0, -978, 0, -978, -978, 0,
4073 -978, -978, -978, 0, -978, -978, -978, 0, -978, -978,
4074 -978, -978, -907, 522, 0, -907, -907, -907, -907, 0,
4075 -907, -907, 0, 0, 0, 0, 0, 0, 0, 0,
4076 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4077 -907, -907, -907, -907, -907, -907, -907, -907, -907, -907,
4078 -907, -907, -907, -907, -907, -907, -907, -907, -907, -907,
4079 -907, -907, -907, 0, 0, -907, 0, 0, 0, 0,
4080 0, 0, 0, 0, 0, 0, 0, -907, -907, 0,
4081 -907, 0, 0, -907, -907, -907, -907, -907, 0, 0,
4082 -907, -907, -907, -907, -907, -907, -907, -907, -907, -907,
4083 -907, 0, 0, -907, -907, -907, -907, 0, -907, 0,
4084 -907, -907, -907, 0, -907, -907, -907, -907, -907, -907,
4085 -907, -907, 0, 0, -907, 523, -907, -907, 0, 524,
4086 -907, -907, 0, 0, -907, -907, 0, -907, -907, -907,
4087 -907, 268, 0, 1, 269, 97, 270, 0, 271, 272,
4088 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4089 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
4090 173, 174, 175, 176, 204, 205, 206, 207, 208, 209,
4091 210, 211, 212, 213, 18, 19, 214, 215, 22, 23,
4092 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4093 0, 0, 0, 0, 0, 273, 216, 0, 0, 0,
4094 0, 274, 275, 276, 28, 29, 0, 0, 0, 32,
4095 0, 0, 0, 0, 277, 355, 38, 218, 0, 0,
4096 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4097 219, 0, 280, 281, 282, 283, 284, 285, 286, 287,
4098 0, 0, 288, 0, 289, 894, 0, 895, 896, 672,
4099 0, 0, 290, 291, 0, 292, 293, 294, 295, 1147,
4100 0, 1, 269, 97, 270, 0, 271, 272, 0, 0,
4101 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4102 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
4103 175, 176, 204, 205, 206, 207, 208, 209, 210, 211,
4104 212, 213, 18, 19, 214, 215, 22, 23, 24, 0,
4105 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4106 0, 0, 0, 273, 216, 0, 0, 0, 0, 274,
4107 275, 276, 28, 29, 0, 0, 0, 32, 0, 0,
4108 0, 0, 277, 355, 38, 218, 0, 0, 0, 0,
4109 0, 0, 0, 0, 0, 0, 279, 0, 219, 0,
4110 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4111 288, 0, 289, 894, 0, 895, -109, 672, 0, 0,
4112 290, 291, 0, 292, 293, 294, 295, 1154, 0, 1,
4113 269, 97, 270, 0, 271, 272, 0, 0, 0, 0,
4114 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4115 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
4116 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
4117 18, 19, 214, 215, 22, 23, 24, 0, 0, 0,
4118 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4119 0, 273, 216, 0, 0, 0, 0, 274, 275, 276,
4120 28, 29, 0, 0, 0, 32, 0, 0, 0, 0,
4121 277, 355, 38, 218, 0, 0, 0, 0, 0, 0,
4122 0, 0, 0, 0, 279, 0, 219, 0, 280, 281,
4123 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4124 289, 894, 0, 895, -97, 672, 0, 0, 290, 291,
4125 0, 292, 293, 294, 295, 1158, 0, 1, 269, 97,
4126 270, 0, 271, 272, 0, 0, 0, 0, 0, 0,
4127 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4128 0, 0, 2, 172, 173, 174, 175, 176, 204, 205,
4129 206, 207, 208, 209, 210, 211, 212, 213, 18, 19,
4130 214, 215, 22, 23, 24, 0, 0, 0, 0, 0,
4131 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4132 216, 0, 0, 0, 0, 274, 275, 276, 28, 29,
4133 0, 0, 0, 32, 0, 0, 0, 0, 277, 355,
4134 38, 218, 0, 0, 0, 0, 0, 0, 0, 0,
4135 0, 0, 279, 0, 219, 0, 280, 281, 282, 283,
4136 284, 285, 286, 287, 0, 0, 288, 0, 289, 894,
4137 0, 895, -101, 672, 0, 0, 290, 291, 0, 292,
4138 293, 294, 295, 268, 0, 1, 269, 97, 270, 0,
4139 271, 272, 0, 0, 0, 0, 0, 0, 0, 0,
4140 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4141 2, 172, 173, 174, 175, 176, 204, 205, 206, 207,
4142 208, 209, 210, 211, 212, 213, 18, 19, 214, 215,
4143 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
4144 0, 0, 0, 0, 0, 0, 0, 273, 216, 0,
4145 0, 0, 0, 274, 275, 276, 28, 29, 0, 0,
4146 0, 32, 0, 0, 0, 0, 277, 355, 38, 218,
4147 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4148 279, 0, 219, 0, 280, 281, 282, 283, 284, 285,
4149 286, 287, 0, 0, 288, 0, 289, 1423, 0, 895,
4150 -64, 672, 0, 0, 290, 291, 0, 292, 293, 294,
4151 295, 268, 0, 1, 269, 97, 270, 0, 271, 272,
4152 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4153 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
4154 173, 174, 175, 176, 204, 205, 206, 207, 208, 209,
4155 210, 211, 212, 213, 18, 19, 214, 215, 22, 23,
4156 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4157 0, 0, 0, 0, 0, 273, 216, 0, 0, 0,
4158 0, 274, 275, 276, 28, 29, 0, 0, 0, 32,
4159 0, 0, 0, 0, 277, 355, 38, 218, 0, 0,
4160 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4161 219, 0, 280, 281, 282, 283, 284, 285, 286, 287,
4162 0, 0, 288, 0, 289, 1432, 0, 895, 1433, 672,
4163 0, 0, 290, 291, 0, 292, 293, 294, 295, 1476,
4164 0, 1, 269, 97, 270, 0, 271, 272, 0, 0,
4165 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4166 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
4167 175, 176, 204, 205, 206, 207, 208, 209, 210, 211,
4168 212, 213, 18, 19, 214, 215, 22, 23, 24, 0,
4169 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4170 0, 0, 0, 273, 216, 0, 0, 0, 0, 274,
4171 275, 276, 28, 29, 0, 0, 0, 32, 0, 0,
4172 0, 0, 277, 355, 38, 218, 0, 0, 0, 0,
4173 0, 0, 0, 0, 0, 0, 279, 0, 219, 0,
4174 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4175 288, 0, 289, 894, 0, 895, -80, 672, 0, 0,
4176 290, 291, 0, 292, 293, 294, 295, 268, 0, 1,
4177 269, 97, 270, 0, 271, 272, 0, 0, 0, 0,
4178 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4179 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
4180 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
4181 18, 19, 214, 215, 22, 23, 24, 0, 0, 0,
4182 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4183 0, 273, 216, 0, 0, 0, 0, 274, 275, 276,
4184 28, 29, 0, 0, 0, 32, 0, 0, 0, 0,
4185 277, 355, 38, 218, 0, 0, 0, 0, 0, 0,
4186 0, 0, 0, 0, 279, 0, 219, 0, 280, 281,
4187 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4188 289, 1432, 0, 895, -106, 672, 0, 0, 290, 291,
4189 0, 292, 293, 294, 295, 268, 0, 1, 269, 97,
4190 270, 0, 271, 272, 0, 0, 0, 0, 0, 0,
4191 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4192 0, 0, 2, 172, 173, 174, 175, 176, 204, 205,
4193 206, 207, 208, 209, 210, 211, 212, 213, 18, 19,
4194 214, 215, 22, 23, 24, 0, 0, 0, 0, 0,
4195 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4196 216, 0, 0, 0, 0, 274, 275, 276, 28, 29,
4197 0, 0, 0, 32, 0, 0, 0, 0, 277, 355,
4198 38, 218, 0, 0, 0, 0, 0, 0, 0, 0,
4199 0, 0, 279, 0, 219, 0, 280, 281, 282, 283,
4200 284, 285, 286, 287, 0, 0, 288, 0, 289, 1432,
4201 0, 895, -96, 672, 0, 0, 290, 291, 0, 292,
4202 293, 294, 295, 268, 0, 1, 269, 97, 270, 0,
4203 271, 272, 0, 0, 0, 0, 0, 0, 0, 0,
4204 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4205 2, 172, 173, 174, 175, 176, 204, 205, 206, 207,
4206 208, 209, 210, 211, 212, 213, 18, 19, 214, 215,
4207 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
4208 0, 0, 0, 0, 0, 0, 0, 273, 216, 0,
4209 0, 0, 0, 274, 275, 276, 28, 29, 0, 0,
4210 0, 32, 0, 0, 0, 0, 277, 355, 38, 218,
4211 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4212 279, 0, 219, 0, 280, 281, 282, 283, 284, 285,
4213 286, 287, 0, 0, 288, 0, 289, 1432, 0, 895,
4214 -100, 672, 0, 0, 290, 291, 0, 292, 293, 294,
4215 295, 1675, 0, 1, 269, 97, 270, 0, 271, 272,
4216 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4217 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
4218 173, 174, 175, 176, 204, 205, 206, 207, 208, 209,
4219 210, 211, 212, 213, 18, 19, 214, 215, 22, 23,
4220 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4221 0, 0, 0, 0, 0, 273, 216, 0, 0, 0,
4222 0, 274, 275, 276, 28, 29, 0, 0, 0, 32,
4223 0, 0, 0, 0, 277, 355, 38, 218, 0, 0,
4224 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4225 219, 0, 280, 281, 282, 283, 284, 285, 286, 287,
4226 0, 0, 288, 0, 289, 894, 0, 895, -87, 672,
4227 0, 0, 290, 291, 0, 292, 293, 294, 295, 268,
4228 0, 1, 269, 97, 270, 0, 271, 272, 0, 0,
4229 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4230 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
4231 175, 176, 204, 205, 206, 207, 208, 209, 210, 211,
4232 212, 213, 18, 19, 214, 215, 22, 23, 24, 0,
4233 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4234 0, 0, 0, 273, 216, 0, 0, 0, 0, 274,
4235 275, 276, 28, 29, 0, 0, 0, 32, 0, 0,
4236 0, 0, 277, 355, 38, 218, 0, 0, 0, 0,
4237 0, 0, 0, 0, 0, 0, 279, 0, 219, 0,
4238 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4239 288, 0, 289, 1432, 0, 895, -77, 672, 0, 0,
4240 290, 291, 0, 292, 293, 294, 295, 268, 0, 1,
4241 269, 97, 270, 0, 271, 272, 0, 0, 0, 0,
4242 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4243 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
4244 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
4245 18, 19, 214, 215, 22, 23, 24, 0, 0, 0,
4246 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4247 0, 273, 216, 0, 0, 0, 0, 274, 275, 276,
4248 28, 29, 0, 0, 0, 32, 0, 0, 0, 0,
4249 277, 355, 38, 218, 0, 0, 0, 0, 0, 0,
4250 0, 0, 0, 0, 279, 0, 219, 0, 280, 281,
4251 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4252 289, 1432, 0, 895, -84, 672, 0, 0, 290, 291,
4253 0, 292, 293, 294, 295, 268, 0, 1, 269, 97,
4254 270, 0, 271, 272, 0, 0, 0, 0, 0, 0,
4255 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4256 0, 0, 2, 172, 173, 174, 175, 176, 204, 205,
4257 206, 207, 208, 209, 210, 211, 212, 213, 18, 19,
4258 214, 215, 22, 23, 24, 0, 0, 0, 0, 0,
4259 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4260 216, 0, 0, 0, 0, 274, 275, 276, 28, 29,
4261 0, 0, 0, 32, 0, 0, 0, 0, 277, 355,
4262 38, 218, 0, 0, 0, 0, 0, 0, 0, 0,
4263 0, 0, 279, 0, 219, 0, 280, 281, 282, 283,
4264 284, 285, 286, 287, 0, 0, 288, 268, 289, 1,
4265 269, 97, 270, 0, 271, 272, 290, 291, 0, 292,
4266 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4267 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
4268 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
4269 18, 19, 214, 215, 22, 23, 24, 0, 0, 0,
4270 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4271 0, 778, 216, 0, 0, 0, 0, 274, 275, 276,
4272 28, 29, 0, 0, 0, 32, 0, 0, 0, 0,
4273 277, 355, 38, 218, 0, 0, 0, 0, 0, 0,
4274 0, 0, 0, 0, 279, 0, 219, 0, 280, 281,
4275 282, 283, 284, 285, 286, 287, 0, 0, 288, 268,
4276 289, 1, 269, 97, 270, 0, 271, 272, 290, 291,
4277 0, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4278 0, 0, 0, 0, 0, 0, 2, 0, 0, 0,
4279 0, 0, 8, 9, 10, 11, 12, 13, 14, 15,
4280 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
4281 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4282 0, 0, 0, 273, 27, 0, 0, 0, 0, 274,
4283 275, 276, 28, 29, 0, 0, 0, 32, 0, 0,
4284 35, 36, 277, 380, 38, 39, 0, 0, 0, 0,
4285 0, 0, 0, 0, 0, 0, 279, 0, 40, 0,
4286 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4287 288, 661, 289, 0, 0, 0, 0, 0, 0, 0,
4288 290, 291, 0, 292, 293, 294, 295, 268, 0, 1,
4289 269, 97, 270, 0, 271, 272, 0, 0, 0, 0,
4290 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4291 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,
4292 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
4293 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
4294 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4295 0, 1079, 27, 0, 0, 0, 0, 274, 275, 276,
4296 28, 29, 0, 0, 0, 32, 0, 0, 35, 36,
4297 277, 380, 38, 39, 0, 0, 0, 0, 0, 0,
4298 0, 0, 0, 0, 279, 0, 40, 0, 280, 281,
4299 282, 283, 284, 285, 286, 287, 0, 0, 638, 661,
4300 289, 0, 0, 0, 0, 0, 0, 0, 290, 291,
4301 0, 292, 293, 294, 295, 268, 0, 1, 269, 97,
4302 270, 0, 271, 272, 0, 0, 0, 0, 0, 0,
4303 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4304 0, 0, 2, 0, 0, 0, 0, 0, 8, 9,
4305 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
4306 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
4307 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4308 27, 0, 0, 0, 0, 274, 275, 276, 28, 29,
4309 0, 0, 0, 32, 0, 0, 35, 36, 277, 380,
4310 38, 39, 0, 0, 0, 0, 0, 0, 0, 0,
4311 0, 0, 279, 0, 40, 0, 280, 281, 282, 283,
4312 284, 285, 286, 287, 0, 0, 288, 268, 289, 1,
4313 269, 97, 270, 220, 271, 272, 290, 291, 0, 292,
4314 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4315 0, 0, 0, 0, 2, 0, 0, 0, 0, 0,
4316 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
4317 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
4318 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4319 0, 273, 27, 0, 0, 0, 0, 274, 275, 276,
4320 28, 29, 0, 0, 0, 32, 0, 0, 35, 36,
4321 277, 380, 38, 39, 268, 0, 1, 269, 97, 270,
4322 0, 271, 272, 0, 279, 0, 40, 0, 280, 281,
4323 282, 283, 284, 285, 286, 801, 0, 0, 802, 661,
4324 289, 2, 0, 0, 0, 0, 0, 0, 290, 291,
4325 0, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4326 0, 0, 0, 0, 0, 1006, 1007, 1008, 565, 1009,
4327 1010, 1011, 1012, 570, 571, 1013, 0, 0, 273, 0,
4328 0, 0, 0, 0, 274, 275, 276, 0, 0, 0,
4329 0, 0, 1014, 0, 0, 0, 0, 277, 278, 1015,
4330 0, 575, 576, 577, 0, 0, 0, 0, 0, 0,
4331 0, 279, 0, 0, 0, 280, 281, 282, 283, 284,
4332 285, 286, 287, 0, 0, 288, 0, 289, 578, 0,
4333 0, 0, 220, 0, 579, 290, 291, 0, 292, 293,
4334 294, 295, 268, 0, 1, 269, 97, 270, 0, 271,
4335 272, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4336 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,
4337 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4338 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4339 0, 0, 0, 562, 563, 564, 565, 566, 567, 568,
4340 569, 570, 571, 572, 0, 0, 273, 0, 0, 0,
4341 0, 0, 274, 275, 276, 0, 0, 0, 0, 0,
4342 1014, 0, 0, 0, 0, 277, 278, 1015, 0, 575,
4343 576, 577, 0, 0, 0, 0, 0, 0, 0, 279,
4344 0, 0, 0, 280, 281, 282, 283, 284, 285, 286,
4345 287, 0, 0, 288, 0, 289, 578, 0, 0, 0,
4346 220, 0, 579, 290, 291, 0, 292, 293, 294, 295,
4347 1734, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4348 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4349 0, 0, 0, 0, 0, 0, 0, 2, 0, 0,
4350 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4351 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4352 0, 1006, 1007, 1008, 565, 1009, 1010, 1011, 1012, 570,
4353 571, 1013, 0, 0, 273, 0, 0, 0, 0, 0,
4354 274, 275, 276, 0, 0, 0, 0, 0, 1014, 0,
4355 0, 0, 0, 277, 278, 1015, 0, 575, 576, 577,
4356 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4357 0, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4358 0, 288, 0, 289, 578, 0, 0, 0, 220, 0,
4359 579, 290, 291, 0, 292, 293, 294, 295, 268, 0,
4360 1, 269, 97, 270, 0, 271, 272, 0, 0, 0,
4361 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4362 0, 0, 0, 0, 0, 2, 0, 0, 0, 0,
4363 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4364 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4365 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4366 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
4367 276, 268, 0, 1, 269, 97, 270, 0, 271, 272,
4368 0, 277, 278, 0, 0, 0, 0, 0, 0, 0,
4369 0, 0, 0, 0, 0, 279, 0, 0, 2, 280,
4370 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
4371 1050, 289, 0, 0, 1631, 0, 0, 0, 1652, 290,
4372 291, 0, 292, 293, 294, 295, 0, 0, 0, 0,
4373 0, 0, 0, 0, 0, 273, 0, 0, 0, 0,
4374 0, 274, 275, 276, 1755, 0, 1, 269, 97, 270,
4375 0, 271, 272, 0, 277, 278, 0, 0, 0, 0,
4376 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4377 0, 2, 280, 281, 282, 283, 284, 285, 286, 287,
4378 0, 0, 288, 1050, 289, 0, 0, 1631, 0, 0,
4379 0, 1656, 290, 291, 0, 292, 293, 294, 295, 0,
4380 0, 0, 0, 0, 0, 0, 0, 0, 273, 0,
4381 0, 0, 0, 0, 274, 275, 276, 268, 0, 1,
4382 269, 97, 270, 0, 271, 272, 0, 277, 278, 0,
4383 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4384 0, 279, 0, 0, 2, 280, 281, 282, 283, 284,
4385 285, 286, 287, 0, 0, 288, 1050, 289, 1756, 0,
4386 1051, 0, 0, 0, 0, 290, 291, 0, 292, 293,
4387 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
4388 0, 273, 0, 0, 0, 0, 0, 274, 275, 276,
4389 268, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4390 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
4391 0, 0, 0, 0, 279, 0, 0, 2, 280, 281,
4392 282, 283, 284, 285, 286, 287, 0, 0, 288, 1050,
4393 289, 0, 0, 1051, 0, 0, 0, 0, 290, 291,
4394 1778, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4395 0, 0, 0, 0, 273, 0, 0, 0, 0, 0,
4396 274, 275, 276, 268, 0, 1, 269, 97, 270, 0,
4397 271, 272, 0, 277, 278, 0, 0, 0, 0, 0,
4398 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4399 2, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4400 0, 288, 1050, 289, 0, 0, 1051, 0, 0, 0,
4401 0, 290, 291, 1782, 292, 293, 294, 295, 0, 0,
4402 0, 0, 0, 0, 0, 0, 0, 273, 0, 0,
4403 0, 0, 0, 274, 275, 276, 1900, 0, 1, 269,
4404 97, 270, 0, 271, 272, 0, 277, 278, 0, 0,
4405 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4406 279, 0, 0, 2, 280, 281, 282, 283, 284, 285,
4407 286, 287, 0, 0, 288, 1050, 289, 1756, 0, 1051,
4408 0, 0, 0, 0, 290, 291, 0, 292, 293, 294,
4409 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4410 273, 0, 0, 0, 0, 0, 274, 275, 276, 1044,
4411 0, 1, 269, 97, 270, 0, 271, 272, 0, 277,
4412 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4413 0, 0, 0, 279, 0, 0, 2, 280, 281, 282,
4414 283, 284, 285, 286, 287, 0, 0, 288, 1050, 289,
4415 1756, 0, 1051, 0, 0, 0, 0, 290, 291, 0,
4416 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
4417 0, 0, 0, 273, 0, 0, 0, 0, 0, 274,
4418 275, 276, 268, 0, 1, 269, 97, 270, 0, 271,
4419 272, 0, 277, 278, 0, 0, 0, 0, 0, 0,
4420 0, 0, 0, 0, 0, 0, 279, 0, 0, 2,
4421 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4422 288, 1964, 289, 1965, 0, 1046, 0, 0, 0, 0,
4423 290, 291, 0, 292, 293, 294, 295, 0, 0, 0,
4424 0, 0, 0, 0, 0, 0, 273, 0, 0, 0,
4425 0, 0, 274, 275, 276, 268, 0, 1, 269, 97,
4426 270, 0, 271, 272, 0, 277, 278, 0, 0, 0,
4427 0, 0, 0, 0, 0, 0, 0, 0, 0, 279,
4428 0, 0, 2, 280, 281, 282, 283, 284, 285, 286,
4429 287, 0, 0, 288, 0, 289, 0, 0, 1993, 1994,
4430 920, 0, 0, 290, 291, 0, 292, 293, 294, 295,
4431 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4432 0, 0, 0, 0, 0, 274, 275, 276, 1235, 0,
4433 1, 269, 97, 270, 0, 271, 272, 0, 277, 278,
4434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4435 0, 0, 279, 0, 0, 2, 280, 281, 282, 283,
4436 284, 285, 286, 287, 0, 0, 288, 1050, 289, 1963,
4437 0, 1051, 0, 0, 0, 0, 290, 291, 0, 292,
4438 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4439 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
4440 276, 268, 0, 1, 269, 97, 270, 0, 271, 272,
4441 0, 277, 278, 0, 0, 0, 0, 0, 0, 0,
4442 0, 0, 0, 0, 0, 279, 0, 0, 2, 280,
4443 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
4444 1236, 289, 0, 0, 0, 0, 672, 0, 0, 290,
4445 291, 0, 292, 293, 294, 295, 0, 0, 0, 0,
4446 0, 0, 0, 0, 0, 273, 0, 0, 0, 0,
4447 0, 274, 275, 276, 268, 0, 1, 269, 97, 270,
4448 0, 271, 272, 0, 277, 278, 0, 0, 0, 0,
4449 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4450 0, 2, 280, 281, 282, 283, 284, 285, 286, 287,
4451 0, 0, 288, 0, 289, 1025, 0, 0, 0, 672,
4452 0, 0, 290, 291, 0, 292, 293, 294, 295, 0,
4453 0, 0, 0, 0, 0, 0, 0, 0, 273, 0,
4454 0, 0, 0, 0, 274, 275, 276, 1506, 0, 1,
4455 269, 97, 270, 0, 271, 272, 0, 277, 278, 0,
4456 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4457 0, 279, 0, 0, 2, 280, 281, 282, 283, 284,
4458 285, 286, 287, 0, 0, 288, 1050, 289, 0, 0,
4459 1051, 0, 0, 0, 0, 290, 291, 0, 292, 293,
4460 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
4461 0, 273, 0, 0, 0, 0, 0, 274, 275, 276,
4462 1044, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4463 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
4464 0, 0, 0, 0, 279, 0, 0, 2, 280, 281,
4465 282, 283, 284, 285, 286, 287, 0, 0, 288, 1507,
4466 289, 1508, 0, 0, 0, 0, 0, 0, 290, 291,
4467 0, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4468 0, 0, 0, 0, 273, 0, 0, 0, 0, 0,
4469 274, 275, 276, 1556, 0, 1, 269, 97, 270, 0,
4470 271, 272, 0, 277, 278, 0, 0, 0, 0, 0,
4471 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4472 2, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4473 0, 288, 0, 289, 1516, 0, 1046, 0, 0, 0,
4474 0, 290, 291, 0, 292, 293, 294, 295, 0, 0,
4475 0, 0, 0, 0, 0, 0, 0, 273, 0, 0,
4476 0, 0, 0, 274, 275, 276, 1566, 0, 1, 269,
4477 97, 270, 0, 271, 272, 0, 277, 278, 0, 0,
4478 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4479 279, 0, 0, 2, 280, 281, 282, 283, 284, 285,
4480 286, 287, 0, 0, 288, 1557, 289, 0, 0, 0,
4481 0, 672, 0, 0, 290, 291, 0, 292, 293, 294,
4482 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4483 273, 0, 0, 0, 0, 0, 274, 275, 276, 1044,
4484 0, 1, 269, 97, 270, 0, 271, 272, 0, 277,
4485 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4486 0, 0, 0, 279, 0, 0, 2, 280, 281, 282,
4487 283, 284, 285, 286, 287, 0, 0, 288, 1567, 289,
4488 0, 0, 0, 0, 672, 0, 0, 290, 291, 0,
4489 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
4490 0, 0, 0, 273, 0, 0, 0, 0, 0, 274,
4491 275, 276, 1044, 0, 1, 269, 97, 270, 0, 271,
4492 272, 0, 277, 278, 0, 0, 0, 0, 0, 0,
4493 0, 0, 0, 0, 0, 0, 279, 0, 0, 2,
4494 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4495 288, 1599, 289, 0, 0, 1046, 0, 0, 0, 0,
4496 290, 291, 0, 292, 293, 294, 295, 0, 0, 0,
4497 0, 0, 0, 0, 0, 0, 273, 0, 0, 0,
4498 0, 0, 274, 275, 276, 1044, 0, 1, 269, 97,
4499 270, 0, 271, 272, 0, 277, 278, 0, 0, 0,
4500 0, 0, 0, 0, 0, 0, 0, 0, 0, 279,
4501 0, 0, 2, 280, 281, 282, 283, 284, 285, 286,
4502 287, 0, 0, 288, 0, 289, 0, 0, 1046, 0,
4503 0, 0, 0, 290, 291, 1625, 292, 293, 294, 295,
4504 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4505 0, 0, 0, 0, 0, 274, 275, 276, 1044, 0,
4506 1, 269, 97, 270, 0, 271, 272, 0, 277, 278,
4507 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4508 0, 0, 279, 0, 0, 2, 280, 281, 282, 283,
4509 284, 285, 286, 287, 0, 0, 288, 0, 289, 0,
4510 0, 1628, 0, 0, 0, 1629, 290, 291, 0, 292,
4511 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4512 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
4513 276, 1044, 0, 1, 269, 97, 270, 0, 271, 272,
4514 0, 277, 278, 0, 0, 0, 0, 0, 0, 0,
4515 0, 0, 0, 0, 0, 279, 0, 0, 2, 280,
4516 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
4517 0, 289, 0, 0, 1046, 0, 0, 0, 0, 290,
4518 291, 1636, 292, 293, 294, 295, 0, 0, 0, 0,
4519 0, 0, 0, 0, 0, 273, 0, 0, 0, 0,
4520 0, 274, 275, 276, 1044, 0, 1, 269, 97, 270,
4521 0, 271, 272, 0, 277, 278, 0, 0, 0, 0,
4522 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4523 0, 2, 280, 281, 282, 283, 284, 285, 286, 287,
4524 0, 0, 288, 0, 289, 0, 0, 1628, 0, 0,
4525 0, 1638, 290, 291, 0, 292, 293, 294, 295, 0,
4526 0, 0, 0, 0, 0, 0, 0, 0, 273, 0,
4527 0, 0, 0, 0, 274, 275, 276, 1044, 0, 1,
4528 269, 97, 270, 0, 271, 272, 0, 277, 278, 0,
4529 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4530 0, 279, 0, 0, 2, 280, 281, 282, 283, 284,
4531 285, 286, 287, 0, 0, 288, 0, 289, 0, 0,
4532 1628, 0, 0, 0, 1650, 290, 291, 0, 292, 293,
4533 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
4534 0, 273, 0, 0, 0, 0, 0, 274, 275, 276,
4535 1044, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4536 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
4537 0, 0, 0, 0, 279, 0, 0, 2, 280, 281,
4538 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4539 289, 0, 0, 1628, 0, 0, 0, 1654, 290, 291,
4540 0, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4541 0, 0, 0, 0, 273, 0, 0, 0, 0, 0,
4542 274, 275, 276, 1044, 0, 1, 269, 97, 270, 0,
4543 271, 272, 0, 277, 278, 0, 0, 0, 0, 0,
4544 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4545 2, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4546 0, 288, 1730, 289, 0, 0, 1046, 0, 0, 0,
4547 0, 290, 291, 0, 292, 293, 294, 295, 0, 0,
4548 0, 0, 0, 0, 0, 0, 0, 273, 0, 0,
4549 0, 0, 0, 274, 275, 276, 268, 0, 1, 269,
4550 97, 270, 0, 271, 272, 0, 277, 278, 0, 0,
4551 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4552 279, 0, 0, 2, 280, 281, 282, 283, 284, 285,
4553 286, 287, 0, 0, 288, 1732, 289, 0, 0, 1046,
4554 0, 0, 0, 0, 290, 291, 0, 292, 293, 294,
4555 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4556 273, 0, 0, 0, 0, 0, 274, 275, 276, 1044,
4557 0, 1, 269, 97, 270, 0, 271, 272, 0, 277,
4558 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4559 0, 0, 0, 279, 0, 0, 2, 280, 281, 282,
4560 283, 284, 285, 286, 287, 0, 0, 288, 1733, 289,
4561 0, 0, 1051, 0, 0, 0, 0, 290, 291, 0,
4562 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
4563 0, 0, 0, 273, 0, 0, 0, 0, 0, 274,
4564 275, 276, 268, 0, 1, 269, 97, 270, 0, 271,
4565 272, 0, 277, 278, 0, 0, 0, 0, 0, 0,
4566 0, 0, 0, 0, 0, 0, 279, 0, 0, 2,
4567 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4568 288, 1736, 289, 0, 0, 1046, 0, 0, 0, 0,
4569 290, 291, 0, 292, 293, 294, 295, 0, 0, 0,
4570 0, 0, 0, 0, 0, 0, 273, 0, 0, 0,
4571 0, 0, 274, 275, 276, 1044, 0, 1, 269, 97,
4572 270, 0, 271, 272, 0, 277, 278, 0, 0, 0,
4573 0, 0, 0, 0, 0, 0, 0, 0, 0, 279,
4574 0, 0, 2, 280, 281, 282, 283, 284, 285, 286,
4575 287, 0, 0, 288, 1507, 289, 1508, 0, 0, 0,
4576 0, 0, 0, 290, 291, 0, 292, 293, 294, 295,
4577 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4578 0, 0, 0, 0, 0, 274, 275, 276, 1757, 0,
4579 1, 269, 97, 270, 0, 271, 272, 0, 277, 278,
4580 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4581 0, 0, 279, 0, 0, 2, 280, 281, 282, 283,
4582 284, 285, 286, 287, 0, 0, 288, 0, 289, 1754,
4583 0, 1046, 0, 0, 0, 0, 290, 291, 0, 292,
4584 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4585 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
4586 276, 1044, 0, 1, 269, 97, 270, 0, 271, 272,
4587 0, 277, 278, 0, 0, 0, 0, 0, 0, 0,
4588 0, 0, 0, 0, 0, 279, 0, 0, 2, 280,
4589 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
4590 1758, 289, 1508, 0, 0, 0, 0, 0, 0, 290,
4591 291, 0, 292, 293, 294, 295, 0, 0, 0, 0,
4592 0, 0, 0, 0, 0, 273, 0, 0, 0, 0,
4593 0, 274, 275, 276, 1044, 0, 1, 269, 97, 270,
4594 0, 271, 272, 0, 277, 278, 0, 0, 0, 0,
4595 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4596 0, 2, 280, 281, 282, 283, 284, 285, 286, 287,
4597 0, 0, 288, 0, 289, 0, 0, 1046, 0, 0,
4598 0, 0, 290, 291, 1777, 292, 293, 294, 295, 0,
4599 0, 0, 0, 0, 0, 0, 0, 0, 273, 0,
4600 0, 0, 0, 0, 274, 275, 276, 268, 0, 1,
4601 269, 97, 270, 0, 271, 272, 0, 277, 278, 0,
4602 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4603 0, 279, 0, 0, 2, 280, 281, 282, 283, 284,
4604 285, 286, 287, 0, 0, 288, 0, 289, 0, 0,
4605 1046, 0, 0, 0, 0, 290, 291, 1781, 292, 293,
4606 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
4607 0, 273, 0, 0, 0, 0, 0, 274, 275, 276,
4608 1044, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4609 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
4610 0, 0, 0, 0, 279, 0, 0, 2, 280, 281,
4611 282, 283, 284, 285, 286, 287, 0, 0, 288, 1731,
4612 289, 0, 0, 1051, 0, 0, 0, 0, 290, 291,
4613 0, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4614 0, 0, 0, 0, 273, 0, 0, 0, 0, 0,
4615 274, 275, 276, 268, 0, 1, 269, 97, 270, 0,
4616 271, 272, 0, 277, 278, 0, 0, 0, 0, 0,
4617 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4618 2, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4619 0, 288, 1892, 289, 0, 0, 1046, 0, 0, 0,
4620 0, 290, 291, 0, 292, 293, 294, 295, 0, 0,
4621 0, 0, 0, 0, 0, 0, 0, 273, 0, 0,
4622 0, 0, 0, 274, 275, 276, 1044, 0, 1, 269,
4623 97, 270, 0, 271, 272, 0, 277, 278, 0, 0,
4624 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4625 279, 0, 0, 2, 280, 281, 282, 283, 284, 285,
4626 286, 287, 0, 0, 288, 1758, 289, 1508, 0, 0,
4627 0, 0, 0, 0, 290, 291, 0, 292, 293, 294,
4628 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4629 273, 0, 0, 0, 0, 0, 274, 275, 276, 1044,
4630 0, 1, 269, 97, 270, 0, 271, 272, 0, 277,
4631 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4632 0, 0, 0, 279, 0, 0, 2, 280, 281, 282,
4633 283, 284, 285, 286, 287, 0, 0, 288, 1968, 289,
4634 0, 0, 1046, 0, 0, 0, 0, 290, 291, 0,
4635 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
4636 0, 0, 0, 273, 0, 0, 0, 0, 0, 274,
4637 275, 276, 1044, 0, 1, 269, 97, 270, 0, 271,
4638 272, 0, 277, 278, 0, 0, 0, 0, 0, 0,
4639 0, 0, 0, 0, 0, 0, 279, 0, 0, 2,
4640 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4641 288, 2000, 289, 0, 0, 1046, 0, 0, 0, 0,
4642 290, 291, 0, 292, 293, 294, 295, 0, 0, 0,
4643 0, 0, 0, 0, 0, 0, 273, 0, 0, 0,
4644 0, 0, 274, 275, 276, 268, 0, 1, 269, 97,
4645 270, 0, 271, 272, 0, 277, 278, 0, 0, 0,
4646 0, 0, 0, 0, 0, 0, 0, 0, 0, 279,
4647 0, 0, 2, 280, 281, 282, 283, 284, 285, 286,
4648 287, 0, 0, 288, 2001, 289, 0, 0, 1046, 0,
4649 0, 0, 0, 290, 291, 0, 292, 293, 294, 295,
4650 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4651 0, 0, 0, 0, 0, 274, 275, 276, 1044, 0,
4652 1, 269, 97, 270, 0, 271, 272, 0, 277, 278,
4653 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4654 0, 0, 279, 0, 0, 2, 280, 281, 282, 283,
4655 284, 285, 286, 287, 0, 0, 288, 0, 289, 0,
4656 0, 0, 2028, 920, 0, 0, 290, 291, 0, 292,
4657 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4658 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
4659 276, 268, 0, 1, 269, 97, 270, 0, 271, 272,
4660 0, 277, 278, 0, 0, 0, 0, 0, 0, 0,
4661 0, 0, 0, 0, 0, 279, 0, 0, 2, 280,
4662 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
4663 2029, 289, 0, 0, 1046, 0, 0, 0, 0, 290,
4664 291, 0, 292, 293, 294, 295, 0, 0, 0, 0,
4665 0, 0, 0, 0, 0, 273, 0, 0, 0, 0,
4666 0, 274, 275, 276, 268, 0, 1, 269, 97, 270,
4667 0, 271, 272, 0, 277, 278, 0, 0, 0, 0,
4668 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4669 0, 2, 280, 281, 282, 283, 284, 285, 286, 287,
4670 0, 0, 288, 0, 289, 0, 0, 0, 0, 0,
4671 0, 0, 290, 291, 493, 292, 293, 294, 295, 0,
4672 0, 0, 0, 0, 0, 0, 0, 0, 273, 0,
4673 0, 0, 0, 0, 274, 275, 276, 919, 0, 1,
4674 269, 97, 270, 0, 271, 272, 0, 277, 278, 0,
4675 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4676 0, 279, 0, 0, 2, 280, 281, 282, 283, 284,
4677 285, 286, 287, 0, 0, 288, 0, 289, 0, 0,
4678 0, 0, 672, 0, 0, 290, 291, 0, 292, 293,
4679 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
4680 0, 273, 0, 0, 0, 0, 0, 274, 275, 276,
4681 268, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4682 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
4683 0, 0, 0, 0, 279, 0, 0, 2, 280, 281,
4684 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4685 289, 0, 0, 0, 0, 920, 0, 0, 290, 291,
4686 0, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4687 0, 0, 0, 0, 273, 0, 0, 0, 0, 0,
4688 274, 275, 276, 268, 0, 1, 269, 97, 270, 0,
4689 271, 272, 0, 277, 278, 0, 0, 0, 0, 0,
4690 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4691 2, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4692 0, 288, 0, 289, 0, 0, 0, 0, 0, 0,
4693 0, 290, 291, 956, 292, 293, 294, 295, 0, 0,
4694 0, 0, 0, 0, 0, 0, 0, 273, 0, 0,
4695 0, 0, 0, 274, 275, 276, 268, 0, 1, 269,
4696 97, 270, 0, 271, 272, 0, 277, 278, 0, 0,
4697 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4698 279, 0, 0, 2, 280, 281, 282, 283, 284, 285,
4699 286, 287, 0, 0, 288, 0, 289, 0, 0, 0,
4700 0, 0, 0, 998, 290, 291, 0, 292, 293, 294,
4701 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4702 273, 0, 0, 0, 0, 0, 274, 275, 276, 1198,
4703 0, 1, 269, 97, 270, 0, 271, 272, 0, 277,
4704 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4705 0, 0, 0, 279, 0, 0, 2, 280, 281, 282,
4706 283, 284, 285, 286, 287, 0, 0, 288, 661, 289,
4707 0, 0, 0, 0, 0, 0, 0, 290, 291, 0,
4708 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
4709 0, 0, 0, 273, 0, 0, 0, 0, 0, 274,
4710 275, 276, 1203, 0, 1, 269, 97, 270, 0, 271,
4711 272, 0, 277, 278, 0, 0, 0, 0, 0, 0,
4712 0, 0, 0, 0, 0, 0, 279, 0, 0, 2,
4713 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4714 288, 0, 289, 0, 0, 0, 0, 672, 0, 0,
4715 290, 291, 0, 292, 293, 294, 295, 0, 0, 0,
4716 0, 0, 0, 0, 0, 0, 273, 0, 0, 0,
4717 0, 0, 274, 275, 276, 1269, 0, 1, 269, 97,
4718 270, 0, 271, 272, 0, 277, 278, 0, 0, 0,
4719 0, 0, 0, 0, 0, 0, 0, 0, 0, 279,
4720 0, 0, 2, 280, 281, 282, 283, 284, 285, 286,
4721 287, 0, 0, 288, 0, 289, 0, 0, 0, 0,
4722 672, 0, 0, 290, 291, 0, 292, 293, 294, 295,
4723 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4724 0, 0, 0, 0, 0, 274, 275, 276, 1274, 0,
4725 1, 269, 97, 270, 0, 271, 272, 0, 277, 278,
4726 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4727 0, 0, 279, 0, 0, 2, 280, 281, 282, 283,
4728 284, 285, 286, 287, 0, 0, 288, 0, 289, 0,
4729 0, 0, 0, 672, 0, 0, 290, 291, 0, 292,
4730 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4731 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
4732 276, 1370, 0, 1, 269, 97, 270, 0, 271, 272,
4733 0, 277, 278, 0, 0, 0, 0, 0, 0, 0,
4734 0, 0, 0, 0, 0, 279, 0, 0, 2, 280,
4735 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
4736 0, 289, 0, 0, 0, 0, 672, 0, 0, 290,
4737 291, 0, 292, 293, 294, 295, 0, 0, 0, 0,
4738 0, 0, 0, 0, 0, 273, 0, 0, 0, 0,
4739 0, 274, 275, 276, 268, 0, 1, 269, 97, 270,
4740 0, 271, 272, 0, 277, 278, 0, 0, 0, 0,
4741 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4742 0, 2, 280, 281, 282, 283, 284, 285, 286, 287,
4743 0, 0, 288, 0, 289, 0, 0, 0, 0, 672,
4744 0, 0, 290, 291, 0, 292, 293, 294, 295, 0,
4745 0, 0, 0, 0, 0, 0, 0, 0, 273, 0,
4746 0, 0, 0, 0, 274, 275, 276, 268, 0, 1,
4747 269, 97, 270, 0, 271, 272, 0, 277, 278, 0,
4748 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4749 0, 279, 0, 0, 2, 280, 281, 282, 283, 284,
4750 285, 286, 287, 0, 0, 288, 0, 289, 0, 0,
4751 0, 0, 920, 0, 0, 290, 291, 0, 292, 293,
4752 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
4753 0, 273, 0, 0, 0, 0, 0, 274, 275, 276,
4754 1489, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4755 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
4756 0, 0, 0, 0, 279, 0, 0, 2, 280, 281,
4757 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4758 289, 0, 0, 0, 0, 0, 0, 0, 290, 291,
4759 1462, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4760 0, 0, 0, 0, 273, 0, 0, 0, 0, 0,
4761 274, 275, 276, 268, 0, 1, 269, 97, 270, 0,
4762 271, 272, 0, 277, 278, 0, 0, 0, 0, 0,
4763 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4764 2, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4765 0, 288, 1490, 289, 0, 0, 0, 0, 0, 0,
4766 0, 290, 291, 0, 292, 293, 294, 295, 0, 0,
4767 0, 0, 0, 0, 0, 0, 0, 273, 0, 0,
4768 0, 0, 0, 274, 275, 276, 1526, 0, 1, 269,
4769 97, 270, 0, 271, 272, 0, 277, 278, 0, 0,
4770 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4771 279, 0, 0, 2, 280, 281, 282, 283, 284, 285,
4772 286, 287, 0, 0, 288, 0, 289, 0, 0, 0,
4773 0, 0, 0, 1493, 290, 291, 0, 292, 293, 294,
4774 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4775 273, 0, 0, 0, 0, 0, 274, 275, 276, 1535,
4776 0, 1, 269, 97, 270, 0, 271, 272, 0, 277,
4777 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4778 0, 0, 0, 279, 0, 0, 2, 280, 281, 282,
4779 283, 284, 285, 286, 287, 0, 0, 288, 0, 289,
4780 0, 0, 0, 0, 672, 0, 0, 290, 291, 0,
4781 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
4782 0, 0, 0, 273, 0, 0, 0, 0, 0, 274,
4783 275, 276, 1700, 0, 1, 269, 97, 270, 0, 271,
4784 272, 0, 277, 278, 0, 0, 0, 0, 0, 0,
4785 0, 0, 0, 0, 0, 0, 279, 0, 0, 2,
4786 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4787 288, 0, 289, 0, 0, 0, 0, 672, 0, 0,
4788 290, 291, 0, 292, 293, 294, 295, 0, 0, 0,
4789 0, 0, 0, 0, 0, 0, 273, 0, 0, 0,
4790 0, 0, 274, 275, 276, 1703, 0, 1, 269, 97,
4791 270, 0, 271, 272, 0, 277, 278, 0, 0, 0,
4792 0, 0, 0, 0, 0, 0, 0, 0, 0, 279,
4793 0, 0, 2, 280, 281, 282, 283, 284, 285, 286,
4794 287, 0, 0, 288, 0, 289, 0, 0, 0, 0,
4795 672, 0, 0, 290, 291, 0, 292, 293, 294, 295,
4796 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4797 0, 0, 0, 0, 0, 274, 275, 276, 1707, 0,
4798 1, 269, 97, 270, 0, 271, 272, 0, 277, 278,
4799 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4800 0, 0, 279, 0, 0, 2, 280, 281, 282, 283,
4801 284, 285, 286, 287, 0, 0, 288, 0, 289, 0,
4802 0, 0, 0, 672, 0, 0, 290, 291, 0, 292,
4803 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4804 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
4805 276, 268, 0, 1, 269, 97, 270, 0, 271, 272,
4806 0, 277, 278, 0, 0, 0, 0, 0, 0, 0,
4807 0, 0, 0, 0, 0, 279, 0, 0, 2, 280,
4808 281, 282, 283, 284, 285, 286, 287, 0, 0, 288,
4809 0, 289, 0, 0, 0, 0, 672, 0, 0, 290,
4810 291, 0, 292, 293, 294, 295, 0, 0, 0, 0,
4811 0, 0, 0, 0, 0, 273, 0, 0, 0, 0,
4812 0, 274, 275, 276, 268, 0, 1, 269, 97, 270,
4813 0, 271, 272, 0, 277, 278, 0, 0, 0, 0,
4814 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4815 0, 2, 280, 281, 282, 283, 284, 285, 286, 287,
4816 0, 0, 288, 1744, 289, 0, 0, 0, 0, 0,
4817 0, 0, 290, 291, 0, 292, 293, 294, 295, 0,
4818 0, 0, 0, 0, 0, 0, 0, 0, 273, 0,
4819 0, 0, 0, 0, 274, 275, 276, 1532, 0, 1,
4820 269, 97, 270, 0, 271, 272, 0, 277, 278, 0,
4821 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4822 0, 279, 0, 0, 2, 280, 281, 282, 283, 284,
4823 285, 286, 287, 0, 0, 1802, 0, 289, 0, 0,
4824 0, 0, 1803, 0, 0, 290, 291, 0, 292, 293,
4825 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
4826 0, 273, 0, 0, 0, 0, 0, 274, 275, 276,
4827 1538, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4828 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
4829 0, 0, 0, 0, 279, 0, 0, 2, 280, 281,
4830 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4831 289, 0, 0, 0, 0, 672, 0, 0, 290, 291,
4832 0, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4833 0, 0, 0, 0, 273, 0, 0, 0, 0, 0,
4834 274, 275, 276, 1901, 0, 1, 269, 97, 270, 0,
4835 271, 272, 0, 277, 278, 0, 0, 0, 0, 0,
4836 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4837 2, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4838 0, 288, 0, 289, 0, 0, 0, 0, 672, 0,
4839 0, 290, 291, 0, 292, 293, 294, 295, 0, 0,
4840 0, 0, 0, 0, 0, 0, 0, 273, 0, 0,
4841 0, 0, 0, 274, 275, 276, 268, 0, 1, 269,
4842 97, 270, 0, 271, 272, 0, 277, 278, 0, 0,
4843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4844 279, 0, 0, 2, 280, 281, 282, 283, 284, 285,
4845 286, 287, 0, 0, 288, 1902, 289, 0, 0, 0,
4846 0, 0, 0, 0, 290, 291, 0, 292, 293, 294,
4847 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4848 273, 0, 0, 0, 0, 0, 274, 275, 276, 268,
4849 0, 1, 269, 97, 270, 0, 271, 272, 0, 277,
4850 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4851 0, 0, 0, 279, 0, 0, 2, 280, 281, 282,
4852 283, 284, 285, 286, 287, 0, 0, 288, 1959, 289,
4853 0, 0, 0, 0, 0, 0, 0, 290, 291, 0,
4854 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
4855 0, 0, 0, 273, 0, 0, 0, 0, 0, 274,
4856 275, 276, 268, 0, 1, 269, 97, 270, 0, 271,
4857 272, 0, 277, 278, 0, 0, 0, 0, 0, 0,
4858 0, 0, 0, 0, 0, 0, 279, 0, 0, 2,
4859 280, 281, 282, 283, 284, 285, 286, 287, 0, 0,
4860 288, 0, 289, 0, 0, 0, 0, 1803, 0, 0,
4861 290, 291, 0, 292, 293, 294, 295, 0, 0, 0,
4862 0, 0, 0, 0, 0, 0, 273, 0, 0, 0,
4863 0, 0, 274, 275, 276, 628, 0, 1, 269, 97,
4864 270, 0, 271, 272, 0, 277, 278, 0, 0, 0,
4865 0, 0, 0, 0, 0, 0, 0, 0, 0, 279,
4866 0, 0, 2, 280, 281, 282, 283, 284, 285, 286,
4867 287, 0, 0, 288, 0, 289, 0, 0, 0, 0,
4868 0, 0, 0, 290, 291, 0, 292, 293, 294, 295,
4869 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4870 0, 0, 0, 0, 0, 274, 275, 276, 268, 0,
4871 1, 269, 97, 270, 0, 271, 272, 0, 277, 278,
4872 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4873 0, 0, 279, 0, 0, 2, 280, 281, 282, 283,
4874 284, 285, 286, 287, 0, 0, 629, 0, 289, 0,
4875 0, 0, 0, 0, 0, 0, 290, 291, 0, 292,
4876 293, 294, 295, 0, 0, 0, 0, 0, 0, 0,
4877 0, 0, 273, 0, 0, 0, 0, 0, 274, 275,
4878 276, 1182, 0, 1, 269, 97, 270, 0, 271, 272,
4879 0, 277, 278, 0, 0, 0, 0, 0, 0, 0,
4880 0, 0, 0, 0, 0, 279, 0, 0, 2, 280,
4881 281, 282, 283, 284, 285, 286, 287, 0, 0, 638,
4882 0, 289, 0, 0, 0, 0, 0, 0, 0, 290,
4883 291, 0, 292, 293, 294, 295, 0, 0, 0, 0,
4884 0, 0, 0, 0, 0, 273, 0, 0, 0, 0,
4885 0, 274, 275, 276, 1185, 0, 1, 269, 97, 270,
4886 0, 271, 272, 0, 277, 278, 0, 0, 0, 0,
4887 0, 0, 0, 0, 0, 0, 0, 0, 279, 0,
4888 0, 2, 280, 281, 282, 283, 284, 285, 286, 287,
4889 0, 0, 288, 0, 289, 0, 0, 0, 0, 0,
4890 0, 0, 290, 291, 0, 292, 293, 294, 295, 0,
4891 0, 0, 0, 0, 0, 0, 0, 0, 273, 0,
4892 0, 0, 0, 0, 274, 275, 276, 1251, 0, 1,
4893 269, 97, 270, 0, 271, 272, 0, 277, 278, 0,
4894 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4895 0, 279, 0, 0, 2, 280, 281, 282, 283, 284,
4896 285, 286, 287, 0, 0, 288, 0, 289, 0, 0,
4897 0, 0, 0, 0, 0, 290, 291, 0, 292, 293,
4898 294, 295, 0, 0, 0, 0, 0, 0, 0, 0,
4899 0, 273, 0, 0, 0, 0, 0, 274, 275, 276,
4900 1254, 0, 1, 269, 97, 270, 0, 271, 272, 0,
4901 277, 278, 0, 0, 0, 0, 0, 0, 0, 0,
4902 0, 0, 0, 0, 279, 0, 0, 2, 280, 281,
4903 282, 283, 284, 285, 286, 287, 0, 0, 288, 0,
4904 289, 0, 0, 0, 0, 0, 0, 0, 290, 291,
4905 0, 292, 293, 294, 295, 0, 0, 0, 0, 0,
4906 0, 0, 0, 0, 273, 0, 0, 0, 0, 0,
4907 274, 275, 276, 1532, 0, 1, 269, 97, 270, 0,
4908 271, 272, 0, 277, 278, 0, 0, 0, 0, 0,
4909 0, 0, 0, 0, 0, 0, 0, 279, 0, 0,
4910 2, 280, 281, 282, 283, 284, 285, 286, 287, 0,
4911 0, 288, 0, 289, 0, 0, 0, 0, 0, 0,
4912 0, 290, 291, 0, 292, 293, 294, 295, 0, 0,
4913 0, 0, 0, 0, 0, 0, 0, 273, 0, 0,
4914 0, 0, 0, 274, 275, 276, 1538, 0, 1, 269,
4915 97, 270, 0, 271, 272, 0, 277, 278, 0, 0,
4916 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4917 279, 0, 0, 2, 280, 281, 282, 283, 284, 285,
4918 286, 287, 0, 0, 288, 0, 289, 0, 0, 0,
4919 0, 0, 0, 0, 290, 291, 0, 292, 293, 294,
4920 295, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4921 273, 0, 0, 0, 0, 0, 274, 275, 276, 0,
4922 0, 0, 0, 0, 0, 0, 0, 0, 0, 277,
4923 278, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4924 0, 0, 0, 279, 0, 0, 0, 280, 281, 282,
4925 283, 284, 285, 286, 287, 0, 0, 288, 0, 289,
4926 -257, 834, 0, 1, 269, 97, 0, 290, 291, 0,
4927 292, 293, 294, 295, 0, 0, 0, 0, 0, 0,
4928 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
4929 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
4930 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
4931 24, 0, 0, -257, 0, 0, 0, 0, 0, 0,
4932 0, 0, 0, 0, 0, 273, 27, 0, 376, 0,
4933 0, 274, 275, 0, 28, 29, 0, 0, 377, 32,
4934 378, 379, 35, 36, 0, 380, 38, 39, 381, 0,
4935 0, 382, 383, 384, 385, 0, 386, 0, 387, 388,
4936 40, 0, 280, 281, 282, 283, 284, 285, 286, 43,
4937 0, 0, 389, 0, 390, 391, -255, 837, -257, 1,
4938 269, 97, 290, 291, 0, 0, 0, 0, 0, 0,
4939 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4940 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
4941 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
4942 18, 19, 20, 21, 22, 23, 24, 0, 0, -255,
4943 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4944 0, 273, 27, 0, 376, 0, 0, 274, 275, 0,
4945 28, 29, 0, 0, 377, 32, 378, 379, 35, 36,
4946 0, 380, 38, 39, 381, 0, 0, 382, 383, 384,
4947 385, 0, 386, 0, 387, 388, 40, 0, 280, 281,
4948 282, 283, 284, 285, 286, 43, 0, 0, 389, 0,
4949 390, 391, -258, 834, -255, 1, 269, 97, 290, 291,
4950 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4951 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4952 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
4953 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
4954 22, 23, 24, 0, 0, -258, 0, 0, 0, 0,
4955 0, 0, 0, 0, 0, 0, 0, 273, 27, 0,
4956 376, 0, 0, 274, 275, 0, 28, 29, 0, 0,
4957 377, 32, 378, 379, 35, 36, 0, 380, 38, 39,
4958 381, 0, 0, 382, 383, 384, 385, 0, 386, 0,
4959 387, 388, 40, 0, 280, 281, 282, 283, 284, 285,
4960 286, 43, 0, 0, 389, 0, 390, 391, -256, 837,
4961 -258, 1, 269, 97, 290, 291, 0, 0, 0, 0,
4962 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4963 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
4964 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
4965 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
4966 0, -256, 0, 0, 0, 0, 0, 0, 0, 0,
4967 0, 0, 0, 273, 27, 0, 376, 0, 0, 274,
4968 275, 0, 28, 29, 0, 0, 377, 32, 378, 379,
4969 35, 36, 0, 380, 38, 39, 381, 0, 0, 382,
4970 383, 384, 385, 0, 386, 0, 387, 388, 40, 0,
4971 280, 281, 282, 283, 284, 285, 286, 43, 0, 0,
4972 389, 0, 390, 391, 0, 375, -256, 1, 269, 97,
4973 290, 291, 0, 0, 0, 0, 0, 0, 0, 0,
4974 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4975 0, 0, 2, 172, 173, 174, 175, 176, 8, 9,
4976 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
4977 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
4978 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
4979 27, 0, 376, 0, 0, 274, 275, 0, 28, 29,
4980 0, 0, 377, 32, 378, 379, 35, 36, 0, 380,
4981 38, 39, 381, 0, 0, 382, 383, 384, 385, 0,
4982 386, 0, 387, 388, 40, 0, 280, 281, 282, 283,
4983 284, 285, 286, 43, 0, 0, 389, 0, 390, 391,
4984 0, 443, 392, 1, 269, 97, 290, 291, 0, 0,
4985 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4986 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
4987 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
4988 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
4989 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4990 0, 0, 0, 0, 0, 273, 27, 0, 376, 0,
4991 0, 274, 275, 0, 28, 29, 0, 0, 377, 32,
4992 378, 379, 35, 36, 0, 380, 38, 39, 381, 0,
4993 0, 382, 383, 384, 385, 0, 386, 0, 387, 388,
4994 40, 0, 280, 281, 282, 283, 284, 285, 286, 43,
4995 0, 0, 389, 0, 390, 391, 0, 465, 444, 1,
4996 269, 97, 290, 291, 0, 0, 0, 0, 0, 0,
4997 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4998 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
4999 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
5000 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
5001 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5002 0, 273, 27, 0, 376, 0, 0, 274, 275, 0,
5003 28, 29, 0, 0, 377, 32, 378, 379, 35, 36,
5004 0, 380, 38, 39, 381, 0, 0, 382, 383, 384,
5005 385, 0, 386, 0, 387, 388, 40, 0, 280, 281,
5006 282, 283, 284, 285, 286, 43, 0, 0, 389, 0,
5007 390, 391, 0, 470, 466, 1, 269, 97, 290, 291,
5008 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5009 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5010 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5011 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5012 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5013 0, 0, 0, 0, 0, 0, 0, 273, 27, 0,
5014 376, 0, 0, 274, 275, 0, 28, 29, 0, 0,
5015 377, 32, 378, 379, 35, 36, 0, 380, 38, 39,
5016 381, 0, 0, 382, 383, 384, 385, 0, 386, 0,
5017 387, 388, 40, 0, 280, 281, 282, 283, 284, 285,
5018 286, 43, 0, 0, 389, 0, 390, 391, 0, 474,
5019 471, 1, 269, 97, 290, 291, 0, 0, 0, 0,
5020 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5021 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
5022 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
5023 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5024 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5025 0, 0, 0, 273, 27, 0, 376, 0, 0, 274,
5026 275, 0, 28, 29, 0, 0, 377, 32, 378, 379,
5027 35, 36, 0, 380, 38, 39, 381, 0, 0, 382,
5028 383, 384, 385, 0, 386, 0, 387, 388, 40, 0,
5029 280, 281, 282, 283, 284, 285, 286, 43, 0, 0,
5030 389, 0, 390, 391, 0, 834, 475, 1, 269, 97,
5031 290, 291, 0, 0, 0, 0, 0, 0, 0, 0,
5032 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5033 0, 0, 2, 172, 173, 174, 175, 176, 8, 9,
5034 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5035 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
5036 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
5037 27, 0, 376, 0, 0, 274, 275, 0, 28, 29,
5038 0, 0, 377, 32, 378, 379, 35, 36, 0, 380,
5039 38, 39, 381, 0, 0, 382, 383, 384, 385, 0,
5040 386, 0, 387, 388, 40, 0, 280, 281, 282, 283,
5041 284, 285, 286, 43, 0, 0, 389, 0, 390, 391,
5042 0, 837, -776, 1, 269, 97, 290, 291, 0, 0,
5043 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5044 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
5045 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
5046 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
5047 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5048 0, 0, 0, 0, 0, 273, 27, 0, 376, 0,
5049 0, 274, 275, 0, 28, 29, 0, 0, 377, 32,
5050 378, 379, 35, 36, 0, 380, 38, 39, 381, 0,
5051 0, 382, 383, 384, 385, 0, 386, 0, 387, 388,
5052 40, 0, 280, 281, 282, 283, 284, 285, 286, 43,
5053 0, 0, 389, 0, 390, 391, 0, 834, -777, 1,
5054 269, 97, 290, 291, 0, 0, 0, 0, 0, 0,
5055 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5056 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
5057 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
5058 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
5059 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5060 0, 273, 27, 0, 376, 0, 0, 274, 275, 0,
5061 28, 29, 0, 0, 377, 32, 378, 379, 35, 36,
5062 0, 380, 38, 39, 381, 0, 0, 382, 383, 384,
5063 385, 0, 386, 0, 387, 388, 40, 0, 280, 281,
5064 282, 283, 284, 285, 286, 43, 0, 0, 389, 0,
5065 390, 391, 0, 837, -773, 1, 269, 97, 290, 291,
5066 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5067 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5068 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5069 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5070 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5071 0, 0, 0, 0, 0, 0, 0, 273, 27, 0,
5072 376, 0, 0, 274, 275, 0, 28, 29, 0, 0,
5073 377, 32, 378, 379, 35, 36, 0, 380, 38, 39,
5074 381, 0, 0, 382, 383, 384, 385, 0, 386, 0,
5075 387, 388, 40, 0, 280, 281, 282, 283, 284, 285,
5076 286, 43, 0, 0, 389, 0, 390, 391, 0, 834,
5077 -774, 1, 269, 97, 290, 291, 0, 0, 0, 0,
5078 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5079 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
5080 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
5081 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5082 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5083 0, 0, 0, 273, 27, 0, 376, 0, 0, 274,
5084 275, 0, 28, 29, 0, 0, 377, 32, 378, 379,
5085 35, 36, 0, 380, 38, 39, 381, 0, 0, 382,
5086 383, 384, 385, 0, 386, 0, 387, 388, 40, 0,
5087 280, 281, 282, 283, 284, 285, 286, 43, 0, 0,
5088 389, 0, 390, 391, 0, 837, -779, 1, 269, 97,
5089 290, 291, 0, 0, 0, 0, 0, 0, 0, 0,
5090 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5091 0, 0, 2, 172, 173, 174, 175, 176, 8, 9,
5092 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5093 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
5094 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
5095 27, 0, 376, 0, 0, 274, 275, 0, 28, 29,
5096 0, 0, 377, 32, 378, 379, 35, 36, 0, 380,
5097 38, 39, 381, 0, 0, 382, 383, 384, 385, 0,
5098 386, 0, 387, 388, 40, 0, 280, 281, 282, 283,
5099 284, 285, 286, 43, 0, 0, 389, 0, 390, 391,
5100 0, 941, -780, 1, 269, 97, 290, 291, 0, 0,
5101 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5102 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
5103 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
5104 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
5105 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5106 0, 0, 0, 0, 0, 273, 27, 0, 376, 0,
5107 0, 274, 275, 0, 28, 29, 0, 0, 377, 32,
5108 378, 379, 35, 36, 0, 380, 38, 39, 381, 0,
5109 0, 382, 383, 384, 385, 0, 386, 0, 387, 388,
5110 40, 0, 280, 281, 282, 283, 284, 285, 286, 43,
5111 0, 0, 389, 0, 390, 391, 0, 945, 942, 1,
5112 269, 97, 290, 291, 0, 0, 0, 0, 0, 0,
5113 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5114 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
5115 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
5116 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
5117 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5118 0, 273, 27, 0, 376, 0, 0, 274, 275, 0,
5119 28, 29, 0, 0, 377, 32, 378, 379, 35, 36,
5120 0, 380, 38, 39, 381, 0, 0, 382, 383, 384,
5121 385, 0, 386, 0, 387, 388, 40, 0, 280, 281,
5122 282, 283, 284, 285, 286, 43, 0, 0, 389, 0,
5123 390, 391, 0, 834, 946, 1, 269, 97, 290, 291,
5124 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5125 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5126 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5127 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5128 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5129 0, 0, 0, 0, 0, 0, 0, 273, 27, 0,
5130 376, 0, 0, 274, 275, 0, 28, 29, 0, 0,
5131 377, 32, 378, 379, 35, 36, 0, 380, 38, 39,
5132 381, 0, 0, 382, 383, 384, 385, 0, 386, 0,
5133 387, 388, 40, 0, 280, 281, 282, 283, 284, 285,
5134 286, 43, 0, 0, 389, 0, 390, 391, 0, 837,
5135 -759, 1, 269, 97, 290, 291, 0, 0, 0, 0,
5136 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5137 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
5138 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
5139 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5140 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5141 0, 0, 0, 273, 27, 0, 376, 0, 0, 274,
5142 275, 0, 28, 29, 0, 0, 377, 32, 378, 379,
5143 35, 36, 0, 380, 38, 39, 381, 0, 0, 382,
5144 383, 384, 385, 0, 386, 0, 387, 388, 40, 0,
5145 280, 281, 282, 283, 284, 285, 286, 43, 0, 0,
5146 389, 0, 390, 391, 0, 834, -760, 1, 269, 97,
5147 290, 291, 0, 0, 0, 0, 0, 0, 0, 0,
5148 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5149 0, 0, 2, 172, 173, 174, 175, 176, 8, 9,
5150 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5151 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
5152 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
5153 27, 0, 376, 0, 0, 274, 275, 0, 28, 29,
5154 0, 0, 377, 32, 378, 379, 35, 36, 0, 380,
5155 38, 39, 381, 0, 0, 382, 383, 384, 385, 0,
5156 386, 0, 387, 388, 40, 0, 280, 281, 282, 283,
5157 284, 285, 286, 43, 0, 0, 389, 0, 390, 391,
5158 0, 837, -762, 1, 269, 97, 290, 291, 0, 0,
5159 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5160 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
5161 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
5162 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
5163 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5164 0, 0, 0, 0, 0, 273, 27, 0, 376, 0,
5165 0, 274, 275, 0, 28, 29, 0, 0, 377, 32,
5166 378, 379, 35, 36, 0, 380, 38, 39, 381, 0,
5167 0, 382, 383, 384, 385, 0, 386, 0, 387, 388,
5168 40, 0, 280, 281, 282, 283, 284, 285, 286, 43,
5169 0, 0, 389, 0, 390, 391, 0, 834, -763, 1,
5170 269, 97, 290, 291, 0, 0, 0, 0, 0, 0,
5171 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5172 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
5173 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
5174 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
5175 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5176 0, 273, 27, 0, 376, 0, 0, 274, 275, 0,
5177 28, 29, 0, 0, 377, 32, 378, 379, 35, 36,
5178 0, 380, 38, 39, 381, 0, 0, 382, 383, 384,
5179 385, 0, 386, 0, 387, 388, 40, 0, 280, 281,
5180 282, 283, 284, 285, 286, 43, 0, 0, 389, 0,
5181 390, 391, 0, 837, -687, 1, 269, 97, 290, 291,
5182 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5183 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5184 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5185 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5186 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5187 0, 0, 0, 0, 0, 0, 0, 273, 27, 0,
5188 376, 0, 0, 274, 275, 0, 28, 29, 0, 0,
5189 377, 32, 378, 379, 35, 36, 0, 380, 38, 39,
5190 381, 0, 0, 382, 383, 384, 385, 0, 386, 0,
5191 387, 388, 40, 0, 280, 281, 282, 283, 284, 285,
5192 286, 43, 0, 0, 389, 0, 390, 391, 0, 834,
5193 -688, 1, 269, 97, 290, 291, 0, 0, 0, 0,
5194 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5195 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
5196 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
5197 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5198 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5199 0, 0, 0, 273, 27, 0, 376, 0, 0, 274,
5200 275, 0, 28, 29, 0, 0, 377, 32, 378, 379,
5201 35, 36, 0, 380, 38, 39, 381, 0, 0, 382,
5202 383, 384, 385, 0, 386, 0, 387, 388, 40, 0,
5203 280, 281, 282, 283, 284, 285, 286, 43, 0, 0,
5204 389, 0, 390, 391, 0, 837, -680, 1, 269, 97,
5205 290, 291, 0, 0, 0, 0, 0, 0, 0, 0,
5206 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5207 0, 0, 2, 172, 173, 174, 175, 176, 8, 9,
5208 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5209 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
5210 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
5211 27, 0, 376, 0, 0, 274, 275, 0, 28, 29,
5212 0, 0, 377, 32, 378, 379, 35, 36, 0, 380,
5213 38, 39, 381, 0, 0, 382, 383, 384, 385, 0,
5214 386, 0, 387, 388, 40, 0, 280, 281, 282, 283,
5215 284, 285, 286, 43, 0, 0, 389, 0, 390, 391,
5216 0, 834, -681, 1, 269, 97, 290, 291, 0, 0,
5217 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5218 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
5219 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
5220 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
5221 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5222 0, 0, 0, 0, 0, 273, 27, 0, 376, 0,
5223 0, 274, 275, 0, 28, 29, 0, 0, 377, 32,
5224 378, 379, 35, 36, 0, 380, 38, 39, 381, 0,
5225 0, 382, 383, 384, 385, 0, 386, 0, 387, 388,
5226 40, 0, 280, 281, 282, 283, 284, 285, 286, 43,
5227 0, 0, 389, 0, 390, 391, 0, 837, -676, 1,
5228 269, 97, 290, 291, 0, 0, 0, 0, 0, 0,
5229 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5230 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
5231 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
5232 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
5233 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5234 0, 273, 27, 0, 376, 0, 0, 274, 275, 0,
5235 28, 29, 0, 0, 377, 32, 378, 379, 35, 36,
5236 0, 380, 38, 39, 381, 0, 0, 382, 383, 384,
5237 385, 0, 386, 0, 387, 388, 40, 0, 280, 281,
5238 282, 283, 284, 285, 286, 43, 0, 0, 389, 0,
5239 390, 391, 0, 834, -677, 1, 269, 97, 290, 291,
5240 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5241 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5242 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5243 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5244 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5245 0, 0, 0, 0, 0, 0, 0, 273, 27, 0,
5246 376, 0, 0, 274, 275, 0, 28, 29, 0, 0,
5247 377, 32, 378, 379, 35, 36, 0, 380, 38, 39,
5248 381, 0, 0, 382, 383, 384, 385, 0, 386, 0,
5249 387, 388, 40, 0, 280, 281, 282, 283, 284, 285,
5250 286, 43, 0, 0, 389, 0, 390, 391, 0, 837,
5251 -666, 1, 269, 97, 290, 291, 0, 0, 0, 0,
5252 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5253 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
5254 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
5255 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5256 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5257 0, 0, 0, 273, 27, 0, 376, 0, 0, 274,
5258 275, 0, 28, 29, 0, 0, 377, 32, 378, 379,
5259 35, 36, 0, 380, 38, 39, 381, 0, 0, 382,
5260 383, 384, 385, 0, 386, 0, 387, 388, 40, 0,
5261 280, 281, 282, 283, 284, 285, 286, 43, 0, 0,
5262 389, 0, 390, 391, 0, 834, -667, 1, 269, 97,
5263 290, 291, 0, 0, 0, 0, 0, 0, 0, 0,
5264 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5265 0, 0, 2, 172, 173, 174, 175, 176, 8, 9,
5266 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5267 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
5268 0, 0, 0, 0, 0, 0, 0, 0, 0, 273,
5269 27, 0, 376, 0, 0, 274, 275, 0, 28, 29,
5270 0, 0, 377, 32, 378, 379, 35, 36, 0, 380,
5271 38, 39, 381, 0, 0, 382, 383, 384, 385, 0,
5272 386, 0, 387, 388, 40, 0, 280, 281, 282, 283,
5273 284, 285, 286, 43, 0, 0, 389, 0, 390, 391,
5274 0, 837, -661, 1, 269, 97, 290, 291, 0, 0,
5275 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5276 0, 0, 0, 0, 0, 0, 0, 0, 2, 172,
5277 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
5278 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
5279 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5280 0, 0, 0, 0, 0, 273, 27, 0, 376, 0,
5281 0, 274, 275, 0, 28, 29, 0, 0, 377, 32,
5282 378, 379, 35, 36, 0, 380, 38, 39, 381, 0,
5283 0, 382, 383, 384, 385, 0, 386, 0, 387, 388,
5284 40, 0, 280, 281, 282, 283, 284, 285, 286, 43,
5285 0, 0, 389, 0, 390, 391, 0, 834, -662, 1,
5286 269, 97, 290, 291, 0, 0, 0, 0, 0, 0,
5287 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5288 0, 0, 0, 0, 2, 172, 173, 174, 175, 176,
5289 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
5290 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
5291 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5292 0, 273, 27, 0, 376, 0, 0, 274, 275, 0,
5293 28, 29, 0, 0, 377, 32, 378, 379, 35, 36,
5294 0, 380, 38, 39, 381, 0, 0, 382, 383, 384,
5295 385, 0, 386, 0, 387, 388, 40, 0, 280, 281,
5296 282, 283, 284, 285, 286, 43, 0, 0, 389, 0,
5297 390, 391, 0, 837, -678, 1, 269, 97, 290, 291,
5298 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5299 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5300 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5301 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5302 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5303 0, 0, 0, 0, 0, 0, 0, 273, 27, 0,
5304 376, 0, 0, 274, 275, 0, 28, 29, 0, 0,
5305 377, 32, 378, 379, 35, 36, 0, 380, 38, 39,
5306 381, 0, 0, 382, 383, 384, 385, 0, 386, 0,
5307 387, 388, 40, 0, 280, 281, 282, 283, 284, 285,
5308 286, 43, 0, 0, 389, 0, 390, 391, 0, 268,
5309 -679, 1, 269, 97, 290, 291, 0, 0, 0, 0,
5310 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5311 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
5312 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
5313 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5314 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5315 0, 0, 0, 273, 27, 0, 376, 0, 0, 274,
5316 275, 0, 28, 29, 0, 0, 377, 32, 378, 379,
5317 35, 36, 0, 380, 38, 39, 381, 0, 0, 382,
5318 383, 384, 385, 0, 386, 0, 387, 388, 40, 0,
5319 280, 281, 282, 283, 284, 285, 286, 43, 0, 0,
5320 389, 0, 390, 391, 375, 0, 1, 269, 97, 0,
5321 290, 291, 0, 0, 0, 0, 0, 0, 0, 0,
5322 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5323 0, 2, 172, 173, 174, 175, 176, 8, 9, 10,
5324 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
5325 21, 22, 23, 24, 0, 0, 0, 0, 0, 0,
5326 0, 0, 0, 0, 0, 0, 0, 0, 273, 27,
5327 0, 376, 0, 0, 274, 275, 0, 28, 29, 0,
5328 0, 377, 32, 378, 379, 35, 36, 0, 380, 38,
5329 39, 381, 0, 0, 382, 383, 384, 385, 0, 386,
5330 0, 387, 388, 40, 0, 280, 281, 282, 283, 284,
5331 285, 286, 43, 0, 0, 389, 0, 390, 391, 443,
5332 0, 1, 269, 97, 0, 290, 291, 0, 0, 0,
5333 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5334 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
5335 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
5336 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5337 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5338 0, 0, 0, 273, 27, 0, 376, 0, 0, 274,
5339 275, 0, 28, 29, 0, 0, 377, 32, 378, 379,
5340 35, 36, 0, 380, 38, 39, 381, 0, 0, 382,
5341 383, 384, 385, 0, 386, 0, 387, 388, 40, 0,
5342 280, 281, 282, 283, 284, 285, 286, 43, 0, 171,
5343 389, 1, 390, 391, 0, 0, 0, 0, 0, 0,
5344 290, 291, 0, 0, 0, 0, 0, 0, 0, 0,
5345 0, 0, 0, 0, 0, 0, 2, 172, 173, 174,
5346 175, 176, 8, 9, 10, 11, 12, 13, 14, 15,
5347 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5348 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5349 0, 0, 0, 177, 27, 0, 0, 0, 0, 0,
5350 0, 0, 28, 29, 0, 0, 0, 32, 0, 0,
5351 35, 36, 0, 37, 38, 39, 0, 0, 0, 0,
5352 0, 0, 0, -1187, 0, 0, 0, 0, 40, 0,
5353 0, 0, 0, 0, 0, 0, 0, 43, 0, 0,
5354 774, 949, 0, 0, 0, 0, 0, 0, 0, 0,
5355 0, 508, -1187, -1187, -1187, -1187, -1187, -1187, -1187, -1187,
5356 -1187, -1187, -1187, -1187, -1187, -1187, -1187, -1187, -1187, -1187,
5357 -1187, -1187, -1187, -1187, 0, -1187, -1187, -1187, -1187, -1187,
5358 -1187, -1187, -1187, -1187, -1187, -1187, 0, 0, 0, -1187,
5359 0, -1187, 0, 0, 0, 0, 0, -1187, -1187, 0,
5360 0, -1187, -1187, -1187, -1187, -1187, -1187, 0, 0, -1187,
5361 -1187, -1187, -1187, -1187, -1187, -1187, -1187, -1187, -1170, -1187,
5362 0, 0, -1187, -1187, 0, 0, 0, 0, 0, 0,
5363 0, 0, 0, 0, 0, 0, 0, 0, -1187, 0,
5364 0, -1187, -1187, 0, -1187, 0, 0, -1170, -1170, -1170,
5365 -1170, -1170, -1170, -1170, -1170, -1170, -1170, -1170, -1170, -1170,
5366 -1170, -1170, -1170, -1170, -1170, -1170, -1170, -1170, -1170, 0,
5367 -1170, -1170, -1170, -1170, -1170, -1170, -1170, -1170, -1170, -1170,
5368 -1170, 0, 0, 0, -1170, 0, -1170, 0, 0, 0,
5369 0, 0, -1170, -1170, 0, 0, -1170, -1170, -1170, -1170,
5370 -1170, -1170, 0, 0, -1170, -1170, -1170, -1170, -1170, -1170,
5371 -1170, -1170, -1170, -1172, -1170, 0, 0, -1170, -1170, 0,
5372 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5373 0, 0, 0, -1170, 0, 0, -1170, -1170, 0, -1170,
5374 0, 0, -1172, -1172, -1172, -1172, -1172, -1172, -1172, -1172,
5375 -1172, -1172, -1172, -1172, -1172, -1172, -1172, -1172, -1172, -1172,
5376 -1172, -1172, -1172, -1172, 0, -1172, -1172, -1172, -1172, -1172,
5377 -1172, -1172, -1172, -1172, -1172, -1172, 0, 0, 0, -1172,
5378 0, -1172, 0, 0, 0, 0, 0, -1172, -1172, 0,
5379 0, -1172, -1172, -1172, -1172, -1172, -1172, 0, 0, -1172,
5380 -1172, -1172, -1172, -1172, -1172, -1172, -1172, -1172, -1169, -1172,
5381 0, 0, -1172, -1172, 0, 0, 0, 0, 0, 0,
5382 0, 0, 0, 0, 0, 0, 0, 0, -1172, 0,
5383 0, -1172, -1172, 0, -1172, 0, 0, -1169, -1169, -1169,
5384 -1169, -1169, -1169, -1169, -1169, -1169, -1169, -1169, -1169, -1169,
5385 -1169, -1169, -1169, -1169, -1169, -1169, -1169, -1169, -1169, 0,
5386 -1169, -1169, -1169, -1169, -1169, -1169, -1169, -1169, -1169, -1169,
5387 -1169, 0, 0, 0, -1169, 0, -1169, 0, 0, 0,
5388 0, 0, -1169, -1169, 0, 0, -1169, -1169, -1169, -1169,
5389 -1169, -1169, 0, 0, -1169, -1169, -1169, -1169, -1169, -1169,
5390 -1169, -1169, -1169, -1171, -1169, 0, 0, -1169, -1169, 0,
5391 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5392 0, 0, 0, 0, 0, 0, -1169, -1169, 0, -1169,
5393 0, 0, -1171, -1171, -1171, -1171, -1171, -1171, -1171, -1171,
5394 -1171, -1171, -1171, -1171, -1171, -1171, -1171, -1171, -1171, -1171,
5395 -1171, -1171, -1171, -1171, 0, -1171, -1171, -1171, -1171, -1171,
5396 -1171, -1171, -1171, -1171, -1171, -1171, 0, 0, 0, -1171,
5397 0, -1171, 0, 0, 0, 0, 0, -1171, -1171, 0,
5398 0, -1171, -1171, -1171, -1171, -1171, -1171, 0, 0, -1171,
5399 -1171, -1171, -1171, -1171, -1171, -1171, -1171, -1171, 0, -1171,
5400 1, 0, -1171, -1171, 0, 0, 0, 0, 0, 0,
5401 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5402 0, -1171, -1171, 0, -1171, 2, 172, 173, 174, 175,
5403 176, 204, 205, 206, 207, 208, 209, 210, 211, 212,
5404 213, 18, 19, 214, 215, 22, 23, 24, 0, 0,
5405 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5406 0, 0, 0, 216, 0, 0, 0, 0, 0, 0,
5407 0, 28, 29, 0, 0, 0, 32, 0, 0, 0,
5408 0, 0, 217, 38, 218, 0, 0, 0, 0, 0,
5409 0, 0, 0, 0, 0, 0, 1, 219, 0, 0,
5410 0, 0, 0, 0, 0, 0, 43, 0, 0, 774,
5411 0, 0, 0, 0, 0, 0, 1354, 0, 0, 0,
5412 508, 2, 172, 173, 174, 175, 176, 204, 205, 206,
5413 207, 208, 209, 210, 211, 212, 213, 18, 19, 214,
5414 215, 22, 23, 24, 0, 0, 0, 0, 0, 0,
5415 0, 0, 0, 0, 0, 0, 0, 0, 0, 216,
5416 0, 0, 0, 0, 0, 0, 0, 28, 29, 0,
5417 0, 0, 32, 0, 0, 0, 0, 0, 217, 38,
5418 218, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5419 0, 0, 1, 219, 0, 0, 0, 0, 0, 0,
5420 0, 0, 43, 0, 0, 1107, 0, 0, 0, 0,
5421 0, 0, 0, 0, 0, 0, 1108, 2, 172, 173,
5422 174, 175, 176, 204, 205, 206, 207, 208, 209, 210,
5423 211, 212, 213, 18, 19, 214, 215, 22, 23, 24,
5424 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5425 0, 0, 0, 0, 0, 216, 0, 0, 0, 0,
5426 0, 0, 0, 28, 29, 0, 0, 0, 32, 0,
5427 0, 0, 0, 0, 217, 38, 218, 0, 0, 0,
5428 0, 0, 0, 0, 0, 0, 0, 0, 1, 219,
5429 0, 0, 0, 0, 0, 0, 0, 0, 43, 0,
5430 0, 1107, 0, 0, 0, 0, 0, 0, 0, 0,
5431 0, 0, 1130, 2, 172, 173, 174, 175, 176, 204,
5432 205, 206, 207, 208, 209, 210, 211, 212, 213, 18,
5433 19, 214, 215, 22, 23, 24, 0, 0, 0, 0,
5434 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5435 0, 216, 0, 0, 0, 0, 0, 0, 0, 28,
5436 29, 0, 0, 0, 32, 0, 0, 0, 0, 0,
5437 217, 38, 218, 0, 0, 0, 0, 0, 0, 0,
5438 0, 0, 0, 0, 1, 219, 0, 0, 0, 0,
5439 0, 0, 0, 0, 43, 0, 0, 1107, 0, 0,
5440 0, 0, 0, 0, 0, 0, 0, 0, 1591, 2,
5441 172, 173, 174, 175, 176, 204, 205, 206, 207, 208,
5442 209, 210, 211, 212, 213, 18, 19, 214, 215, 22,
5443 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
5444 0, 0, 0, 0, 0, 0, 0, 216, 0, 0,
5445 0, 0, 0, 0, 0, 28, 29, 0, 0, 0,
5446 32, 0, 0, 0, 0, 0, 217, 38, 218, 0,
5447 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5448 1, 219, 0, 0, 0, 0, 0, 0, 0, 0,
5449 43, 0, 0, 1107, 0, 0, 0, 0, 0, 0,
5450 0, 0, 0, 0, 1606, 2, 3, 4, 239, 6,
5451 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
5452 17, 18, 19, 20, 21, 22, 23, 24, 0, 0,
5453 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5454 0, 0, 26, 27, 0, 0, 0, 0, 0, 0,
5455 0, 28, 29, 240, 31, 0, 32, 0, 0, 35,
5456 36, 0, 37, 38, 39, 0, 0, 0, 0, 0,
5457 0, 0, 0, 0, 1, 0, 0, 40, 0, 0,
5458 0, 0, 42, 0, 0, 0, 43, 0, 0, 44,
5459 0, 0, 0, 0, 0, 0, 0, 0, 241, 2,
5460 172, 173, 174, 175, 176, 8, 9, 10, 11, 12,
5461 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
5462 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
5463 0, 0, 0, 0, 0, 0, 0, 27, 0, 376,
5464 0, 0, 0, 0, 0, 28, 29, 0, 0, 377,
5465 32, 0, 0, 35, 36, 0, 37, 38, 39, 0,
5466 0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
5467 0, 40, 0, 0, 0, 0, 0, 0, 0, 0,
5468 43, 0, 0, 862, 0, 390, 0, 0, 0, 0,
5469 0, 0, 863, 2, 172, 173, 174, 175, 176, 8,
5470 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
5471 19, 20, 21, 22, 23, 24, 0, 0, 0, 0,
5472 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5473 0, 27, 0, 0, 0, 0, 0, 0, 0, 28,
5474 29, 0, 0, 0, 32, 0, 0, 35, 36, 0,
5475 37, 38, 39, 0, 0, 0, 0, 0, 0, 0,
5476 0, 0, 1, 0, 0, 40, 0, 0, 0, 0,
5477 0, 0, 0, 0, 43, 0, 0, 842, 0, 0,
5478 843, 0, 0, 0, 0, 0, 844, 2, 172, 173,
5479 174, 175, 176, 8, 9, 10, 11, 12, 13, 14,
5480 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
5481 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5482 0, 0, 0, 0, 0, 27, 0, 0, 0, 0,
5483 0, 0, 0, 28, 29, 0, 0, 0, 32, 0,
5484 0, 35, 36, 0, 37, 38, 39, 0, 0, 0,
5485 0, 0, 0, 0, 0, 0, 1, 0, 0, 40,
5486 0, 0, 0, 0, 0, 0, 0, 0, 43, 0,
5487 0, 842, 0, 0, 1394, 0, 0, 0, 0, 0,
5488 844, 2, 172, 173, 174, 175, 176, 8, 9, 10,
5489 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
5490 21, 22, 23, 24, 0, 0, 0, 0, 0, 0,
5491 0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
5492 0, 0, 0, 0, 0, 0, 0, 28, 29, 0,
5493 0, 0, 32, 0, 0, 35, 36, 0, 37, 38,
5494 39, 0, 0, 0, 0, 0, 0, 0, 555, 0,
5495 0, 0, 0, 40, 0, 0, 0, 0, 0, 0,
5496 0, 0, 43, 0, 0, 44, 0, 0, 0, 0,
5497 0, 0, 0, 0, 844, 2, 172, 173, 174, 175,
5498 176, 204, 205, 206, 207, 208, 209, 210, 211, 212,
5499 213, 18, 19, 214, 215, 22, 23, 24, 0, 0,
5500 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5501 0, 0, 0, 216, 0, 0, 0, 0, 0, 0,
5502 0, 28, 29, 0, 0, 0, 32, 0, 0, 0,
5503 0, 0, 217, 38, 218, 0, 0, 0, 0, 0,
5504 1418, 0, 0, 0, 0, 0, 0, 219, 0, 0,
5505 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5506 0, 0, 0, 0, 0, 0, 220, -65, -65, -65,
5507 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65,
5508 -65, -65, -65, -65, -65, -65, -65, -65, -65, -65,
5509 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5510 0, 0, 0, 0, 0, -65, 0, 0, 0, 0,
5511 0, 0, 0, -65, -65, 0, 0, 0, -65, 0,
5512 0, 0, 0, 0, -65, -65, -65, 0, 0, 0,
5513 0, 1616, 0, 0, 0, 0, 0, 0, 0, -65,
5514 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5515 0, 0, 0, 0, 1419, 0, 1420, -65, 2, 172,
5516 173, 174, 175, 176, 204, 205, 206, 207, 208, 209,
5517 210, 211, 212, 213, 18, 19, 214, 215, 22, 23,
5518 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5519 0, 0, 0, 0, 0, 0, 216, 0, 0, 0,
5520 0, 0, 0, 0, 28, 29, 0, 0, 0, 32,
5521 0, 0, 0, 0, 0, 217, 38, 218, 0, 0,
5522 0, 0, 1620, 0, 0, 0, 0, 0, 0, 0,
5523 219, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5524 0, 0, 0, 0, 0, 0, 0, 0, -110, 2,
5525 172, 173, 174, 175, 176, 204, 205, 206, 207, 208,
5526 209, 210, 211, 212, 213, 18, 19, 214, 215, 22,
5527 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
5528 0, 0, 0, 0, 0, 0, 0, 216, 0, 0,
5529 0, 0, 0, 0, 0, 28, 29, 0, 0, 0,
5530 32, 0, 0, 0, 0, 0, 217, 38, 218, 0,
5531 0, 0, 0, 1621, 0, 0, 0, 0, 0, 0,
5532 0, 219, 0, 0, 0, 0, 0, 0, 0, 0,
5533 0, 0, 0, 0, 0, 0, 0, 0, 0, -94,
5534 2, 172, 173, 174, 175, 176, 204, 205, 206, 207,
5535 208, 209, 210, 211, 212, 213, 18, 19, 214, 215,
5536 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5537 0, 0, 0, 0, 0, 0, 0, 0, 216, 0,
5538 0, 0, 0, 0, 0, 0, 28, 29, 0, 0,
5539 0, 32, 0, 0, 0, 0, 0, 217, 38, 218,
5540 0, 0, 0, 0, 1725, 0, 0, 0, 0, 0,
5541 0, 0, 219, 0, 0, 0, 0, 0, 0, 0,
5542 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5543 -95, 2, 172, 173, 174, 175, 176, 204, 205, 206,
5544 207, 208, 209, 210, 211, 212, 213, 18, 19, 214,
5545 215, 22, 23, 24, 0, 0, 0, 0, 0, 0,
5546 0, 0, 0, 0, 0, 0, 0, 0, 0, 216,
5547 0, 0, 0, 0, 0, 0, 0, 28, 29, 0,
5548 0, 0, 32, 0, 0, 0, 0, 0, 217, 38,
5549 218, 0, 0, 0, 0, 1867, 0, 0, 0, 0,
5550 0, 0, 0, 219, 0, 0, 0, 0, 0, 0,
5551 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5552 0, -79, 2, 172, 173, 174, 175, 176, 204, 205,
5553 206, 207, 208, 209, 210, 211, 212, 213, 18, 19,
5554 214, 215, 22, 23, 24, 0, 0, 0, 0, 0,
5555 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5556 216, 0, 0, 0, 0, 0, 0, 0, 28, 29,
5557 0, 0, 0, 32, 0, 0, 0, 0, 0, 217,
5558 38, 218, 0, 0, 0, -1250, 258, 0, 1, 0,
5559 0, 0, 0, 0, 219, 0, 0, 0, 0, 0,
5560 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5561 0, 0, -86, 2, 3, 4, 5, 6, 7, 8,
5562 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
5563 19, 20, 21, 22, 23, 24, 0, 0, 25, 0,
5564 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5565 26, 27, 0, 0, 0, 0, 0, 0, 0, 28,
5566 29, 30, 31, 0, 32, 33, 34, 35, 36, 0,
5567 37, 38, 39, 0, 0, 0, 1, 0, 0, 0,
5568 0, 0, 0, 0, 0, 40, 41, 0, 0, 0,
5569 42, 0, 0, 0, 43, 0, 0, 44, 0, 0,
5570 45, 2, 172, 173, 174, 175, 176, 8, 9, 10,
5571 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
5572 21, 22, 23, 24, 0, 0, 0, 0, 0, 0,
5573 0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
5574 0, 0, 0, 0, 0, 0, 0, 28, 29, 0,
5575 0, 0, 32, 0, 0, 35, 36, 0, 37, 38,
5576 39, 0, 0, 0, 0, 0, 0, 1, 0, 0,
5577 0, 0, 0, 40, 0, 0, 0, 0, 0, 0,
5578 758, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5579 0, 1308, 2, 172, 173, 174, 175, 176, 8, 9,
5580 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5581 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
5582 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5583 27, 0, 0, 0, 0, 0, 0, 0, 28, 29,
5584 0, 0, 0, 32, 0, 0, 35, 36, 0, 37,
5585 38, 39, 0, 0, 0, 0, 0, 0, 1, 0,
5586 0, 0, 0, 0, 40, 0, 0, 0, 0, 0,
5587 0, 758, 0, 0, 0, 0, 0, 0, 0, 0,
5588 0, 0, 1648, 2, 172, 173, 174, 175, 176, 8,
5589 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
5590 19, 20, 21, 22, 23, 24, 0, 0, 0, 0,
5591 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5592 0, 27, 0, 0, 0, 0, 0, 0, 0, 28,
5593 29, 0, 0, 0, 32, 0, 0, 35, 36, 0,
5594 37, 38, 39, 0, 0, 0, 0, 147, 0, 1,
5595 0, 0, 0, 0, 0, 40, 0, 0, 0, 0,
5596 0, 0, 758, 0, 0, 0, 0, 0, 0, 0,
5597 0, 0, 0, 1649, 2, 3, 4, 148, 6, 7,
5598 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
5599 18, 19, 20, 21, 22, 23, 24, 0, 0, 0,
5600 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5601 0, 26, 27, 0, 0, 0, 0, 0, 0, 0,
5602 28, 29, 0, 0, 0, 32, 0, 0, 35, 36,
5603 0, 37, 38, 39, 0, 147, 0, 1, 0, 0,
5604 0, 0, 0, 0, 0, 0, 40, 0, 0, 0,
5605 0, 0, 0, 0, 0, 43, 0, 0, 44, 0,
5606 0, 149, 2, 3, 4, 148, 6, 7, 8, 9,
5607 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5608 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
5609 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5610 27, 0, 0, 0, 0, 0, 0, 0, 28, 29,
5611 0, 0, 0, 32, 0, 0, 35, 36, 0, 37,
5612 38, 39, 0, 542, 0, 1, 0, 0, 0, 0,
5613 0, 0, 0, 0, 40, 0, 0, 0, 0, 0,
5614 0, 0, 0, 43, 0, 0, 44, 0, 0, 149,
5615 2, 172, 173, 174, 175, 176, 204, 205, 206, 207,
5616 208, 209, 210, 211, 212, 213, 18, 19, 214, 215,
5617 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5618 0, 0, 0, 0, 0, 0, 0, 0, 216, 0,
5619 0, 0, 0, 0, 0, 0, 28, 29, 0, 0,
5620 0, 32, 0, 0, 0, 0, 0, 217, 38, 218,
5621 0, -918, 0, -918, 0, 0, 0, 0, 0, 0,
5622 0, 0, 219, 0, 0, 0, 0, 0, 0, 0,
5623 0, 43, 0, 0, 44, 0, 0, 543, -918, -918,
5624 -918, -918, -918, -918, -918, -918, -918, -918, -918, -918,
5625 -918, -918, -918, -918, -918, -918, -918, -918, -918, -918,
5626 -918, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5627 0, 0, 0, 0, 0, 0, -918, 0, 0, 0,
5628 0, 0, 0, 0, -918, -918, 0, 0, 0, -918,
5629 0, 0, 0, 0, 0, -918, -918, -918, 0, 0,
5630 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
5631 -918, 0, 0, 0, 0, 0, 0, 0, 0, -918,
5632 0, 0, -918, 0, 0, -918, 2, 3, 4, 5,
5633 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
5634 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5635 0, 25, 0, 0, 0, 0, 0, 0, 0, 0,
5636 0, 0, 0, 26, 27, 0, 0, 0, 0, 0,
5637 0, 0, 28, 29, 30, 31, 0, 32, 33, 34,
5638 35, 36, 0, 37, 38, 39, -1251, 250, 0, 1,
5639 0, 0, 0, 0, 0, 0, 0, 0, 40, 41,
5640 0, 0, 0, 42, 0, 0, 0, 43, 0, 0,
5641 44, 0, 0, 45, 2, 3, 4, 148, 6, 7,
5642 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
5643 18, 19, 20, 21, 22, 23, 24, 0, 0, 25,
5644 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5645 0, 26, 27, 0, 0, 0, 0, 0, 0, 0,
5646 28, 29, 0, 0, 0, 32, 33, 34, 35, 36,
5647 0, 37, 38, 39, 171, 0, 1, 0, 0, 0,
5648 0, 0, 0, 0, 0, 0, 40, 0, 0, 0,
5649 0, 0, 0, 0, 0, 43, 0, 0, 44, 0,
5650 0, 2, 172, 173, 174, 175, 176, 8, 9, 10,
5651 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
5652 21, 22, 23, 24, 0, 0, 0, 0, 0, 0,
5653 0, 0, 0, 0, 0, 0, 0, 0, 177, 27,
5654 0, 0, 0, 0, 0, 0, 0, 28, 29, 0,
5655 0, 0, 32, 0, 0, 35, 36, 0, 37, 38,
5656 39, 171, 0, 1, 0, 0, 0, 0, 0, 0,
5657 0, 0, 0, 40, 0, 0, 0, 0, 0, 0,
5658 0, 0, 43, 0, 0, 1107, 1578, 0, 2, 172,
5659 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
5660 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
5661 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5662 0, 0, 0, 0, 0, 177, 27, 0, 0, 0,
5663 0, 0, 0, 0, 28, 29, 0, 0, 0, 32,
5664 0, 0, 35, 36, 0, 37, 38, 39, 854, 0,
5665 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5666 40, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5667 0, 0, 0, 178, 0, 2, 172, 173, 174, 175,
5668 176, 8, 9, 10, 11, 12, 13, 14, 15, 16,
5669 17, 18, 19, 20, 21, 22, 23, 24, 0, 0,
5670 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5671 0, 0, 177, 27, 0, 0, 0, 0, 0, 0,
5672 0, 28, 29, 0, 0, 0, 32, 0, 0, 35,
5673 36, 0, 37, 38, 39, 171, 0, 1, 0, 0,
5674 0, 0, 0, 0, 0, 0, 0, 40, 0, 0,
5675 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5676 178, 0, 2, 172, 173, 174, 175, 176, 8, 9,
5677 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5678 20, 21, 22, 23, 24, 0, 0, 0, 0, 0,
5679 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
5680 27, 0, 0, 0, 0, 0, 0, 0, 28, 29,
5681 0, 0, 0, 32, 0, 0, 35, 36, 0, 37,
5682 38, 39, 171, 0, 1, 0, 0, 0, 0, 0,
5683 0, 0, 0, 0, 40, 0, 0, 0, 0, 0,
5684 0, 0, 0, 0, 0, 0, 0, 1459, 0, 2,
5685 172, 173, 174, 175, 176, 8, 9, 10, 11, 12,
5686 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
5687 23, 24, 0, 0, 0, 0, 0, 0, 0, 0,
5688 0, 0, 0, 0, 0, 0, 177, 27, 0, 0,
5689 0, 0, 0, 0, 0, 28, 29, 0, 0, 0,
5690 32, 0, 0, 35, 36, 0, 37, 38, 39, 147,
5691 0, 1, 0, 0, 0, 0, 0, 0, 0, 0,
5692 0, 40, 0, 0, 0, 0, 0, 0, 0, 0,
5693 0, 0, 0, 0, 1792, 0, 2, 3, 4, 148,
5694 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
5695 16, 17, 18, 19, 20, 21, 22, 23, 24, 0,
5696 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5697 0, 0, 0, 26, 27, 0, 0, 0, 0, 0,
5698 0, 0, 28, 29, 0, 0, 0, 32, 0, 0,
5699 35, 36, 0, 37, 38, 39, 147, 0, 1, 0,
5700 0, 0, 0, 0, 0, 0, 0, 0, 40, 0,
5701 0, 0, 0, 0, 0, 0, 0, 43, 0, 0,
5702 44, 0, 0, 2, 3, 4, 148, 6, 7, 8,
5703 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
5704 19, 20, 21, 22, 23, 24, 0, 0, 0, 0,
5705 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5706 0, 27, 0, 0, 0, 0, 0, 0, 0, 28,
5707 29, 0, 0, 0, 32, 0, 0, 35, 36, 0,
5708 37, 38, 39, 798, 0, 1, 0, 0, 0, 0,
5709 0, 0, 0, 0, 0, 40, 0, 0, 0, 0,
5710 0, 0, 0, 0, 43, 0, 0, 44, 0, 0,
5711 2, 172, 173, 174, 175, 176, 204, 205, 206, 207,
5712 208, 209, 210, 211, 212, 213, 18, 19, 214, 215,
5713 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5714 0, 0, 0, 0, 0, 0, 0, 0, 216, 0,
5715 0, 0, 0, 0, 0, 0, 28, 29, 0, 0,
5716 0, 32, 0, 0, 0, 0, 0, 217, 38, 218,
5717 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5718 0, 0, 219, 0, 0, 0, 0, 0, 0, 0,
5719 0, 0, 0, 0, 799, 2, 3, 4, 148, 6,
5720 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
5721 17, 18, 19, 20, 21, 22, 23, 24, 0, 0,
5722 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5723 0, 0, 26, 27, 0, 0, 0, 0, 0, 0,
5724 0, 28, 29, 0, 0, 0, 32, 0, 0, 35,
5725 36, 0, 37, 38, 39, 1, 0, 0, 0, 0,
5726 0, 0, 0, 0, 0, 0, 0, 40, 0, 0,
5727 0, 0, 0, 0, 0, 0, 43, 0, 0, 44,
5728 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5729 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5730 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5731 0, 0, 0, 0, 0, 0, 0, 0, 27, 0,
5732 0, 0, 0, 0, 0, 0, 28, 29, 0, 0,
5733 0, 32, 0, 0, 35, 36, 0, 37, 38, 39,
5734 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5735 0, 0, 40, 0, 0, 0, 0, 0, 0, 0,
5736 0, 43, 0, 0, 44, 2, 172, 173, 174, 175,
5737 176, 8, 9, 10, 11, 12, 13, 14, 15, 16,
5738 17, 18, 19, 20, 21, 22, 23, 24, 0, 0,
5739 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5740 0, 0, 0, 27, 0, 0, 0, 0, 0, 0,
5741 0, 28, 29, 0, 0, 0, 32, 0, 0, 35,
5742 36, 0, 37, 38, 39, 1, 0, 0, 0, 0,
5743 0, 0, 0, 0, 0, 0, 0, 40, 0, 0,
5744 0, 0, 0, 0, 0, 0, 0, 0, 0, 653,
5745 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5746 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5747 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5748 0, 0, 0, 0, 0, 0, 0, 0, 27, 0,
5749 0, 0, 0, 0, 0, 0, 28, 29, 0, 0,
5750 0, 32, 0, 0, 35, 36, 0, 37, 38, 39,
5751 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5752 0, 0, 40, 0, 0, 0, 0, 0, 0, 0,
5753 0, 0, 0, 0, 1358, 2, 172, 173, 174, 175,
5754 176, 204, 205, 206, 207, 208, 209, 210, 211, 212,
5755 213, 18, 19, 214, 215, 22, 23, 24, 0, 0,
5756 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5757 0, 0, 0, 216, 0, 0, 0, 0, 0, 0,
5758 0, 28, 29, 0, 0, 0, 32, 0, 0, 0,
5759 0, 0, 217, 38, 218, 1, 0, 0, 0, 0,
5760 0, 0, 0, 0, 0, 0, 0, 219, 0, 0,
5761 0, 0, 0, 0, 0, 0, 43, 0, 0, 44,
5762 2, 172, 173, 174, 175, 176, 8, 9, 10, 11,
5763 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
5764 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5765 0, 0, 0, 0, 0, 0, 0, 0, 27, 0,
5766 0, 0, 0, 0, 0, 0, 28, 29, 0, 0,
5767 0, 32, 0, 0, 35, 36, 0, 37, 38, 39,
5768 969, 0, 1, 0, 0, 0, 0, 0, 0, 0,
5769 0, 0, 40, 0, 0, 0, 0, 0, 0, 758,
5770 0, 0, 0, 0, 0, 0, 0, 2, 172, 173,
5771 174, 175, 176, 8, 9, 10, 11, 12, 13, 14,
5772 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
5773 970, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5774 0, 0, 0, 0, 177, 27, 0, 0, 0, 0,
5775 0, 0, 0, 28, 29, 975, 0, 1, 32, 0,
5776 0, 35, 36, 0, 37, 38, 39, 0, 0, 0,
5777 0, 0, 0, 0, 0, 0, 0, 0, 0, 40,
5778 0, 0, 2, 172, 173, 174, 175, 176, 8, 9,
5779 10, 11, 12, 13, 14, 15, 16, 17, 18, 19,
5780 20, 21, 22, 23, 24, 976, 0, 0, 0, 0,
5781 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
5782 27, 0, 0, 0, 0, 0, 0, 0, 28, 29,
5783 981, 0, 1, 32, 0, 0, 35, 36, 0, 37,
5784 38, 39, 0, 0, 0, 0, 0, 0, 0, 0,
5785 0, 0, 0, 0, 40, 0, 0, 2, 172, 173,
5786 174, 175, 176, 8, 9, 10, 11, 12, 13, 14,
5787 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
5788 982, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5789 0, 0, 0, 0, 177, 27, 0, 0, 0, 0,
5790 0, 0, 0, 28, 29, 783, 0, 1, 32, 0,
5791 0, 35, 36, 0, 37, 38, 39, 0, 0, 0,
5792 0, 0, 0, 0, 0, 0, 0, 0, 0, 40,
5793 0, 0, 2, 172, 173, 174, 175, 176, 204, 205,
5794 206, 207, 208, 209, 210, 211, 212, 213, 18, 19,
5795 214, 215, 22, 23, 24, 0, 0, 0, 0, 0,
5796 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5797 216, 0, 0, 0, 0, 0, 0, 0, 28, 29,
5798 1, 0, 0, 32, 0, 0, 0, 0, 0, 217,
5799 38, 218, 0, 0, 0, 0, 0, 0, 0, 0,
5800 0, 0, 0, 0, 219, 2, 172, 173, 174, 175,
5801 176, 8, 9, 10, 11, 12, 13, 14, 15, 16,
5802 17, 18, 19, 20, 21, 22, 23, 24, 934, 0,
5803 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5804 0, 0, 177, 27, 0, 0, 0, 0, 0, 0,
5805 0, 28, 29, 1, 0, 0, 32, 0, 0, 35,
5806 36, 0, 37, 38, 39, 0, 0, 0, 0, 0,
5807 0, 0, 0, 0, 0, 0, 0, 40, 2, 172,
5808 173, 174, 175, 176, 8, 9, 10, 11, 12, 13,
5809 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
5810 24, 987, 0, 0, 0, 0, 0, 0, 0, 0,
5811 0, 0, 0, 0, 0, 177, 27, 0, 0, 0,
5812 0, 0, 0, 0, 28, 29, 1, 0, 0, 32,
5813 0, 0, 35, 36, 0, 37, 38, 39, 0, 0,
5814 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5815 40, 2, 172, 173, 174, 175, 176, 8, 9, 10,
5816 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
5817 21, 22, 23, 24, 0, 0, 0, 0, 0, 0,
5818 0, 0, 0, 0, 0, 0, 0, 0, 177, 27,
5819 0, 0, 0, 0, 0, 0, 0, 28, 29, 1,
5820 0, 0, 32, 0, 0, 35, 36, 0, 37, 38,
5821 39, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5822 0, 0, 0, 40, 2, 172, 173, 174, 175, 176,
5823 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
5824 18, 19, 214, 215, 22, 23, 24, 0, 0, 0,
5825 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5826 0, 0, 216, 0, 0, 0, 0, 0, 0, 0,
5827 28, 29, 1, 0, 0, 32, 432, 433, 0, 0,
5828 0, 217, 38, 218, 0, 0, 0, 0, 0, 0,
5829 0, 0, 0, 0, 0, 0, 219, 2, 172, 173,
5830 174, 175, 176, 8, 9, 10, 11, 12, 13, 14,
5831 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
5832 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5833 0, 0, 0, 0, 0, 27, 0, 0, 0, 0,
5834 0, 0, 0, 28, 29, 1, 0, 0, 32, 0,
5835 0, 35, 36, 0, 37, 38, 39, 0, 0, 0,
5836 0, 0, 0, 0, 0, 0, 0, 0, 0, 40,
5837 2, 172, 173, 174, 175, 176, 204, 205, 206, 207,
5838 208, 209, 210, 211, 212, 213, 18, 19, 214, 215,
5839 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5840 0, 0, 0, 0, 0, 0, 0, 457, 216, 0,
5841 0, 0, 0, 0, 0, 0, 28, 29, 1, 0,
5842 0, 32, 0, 0, 0, 0, 0, 217, 38, 218,
5843 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5844 0, 0, 219, 2, 172, 173, 174, 175, 176, 204,
5845 205, 206, 207, 208, 209, 210, 211, 212, 213, 18,
5846 19, 214, 215, 22, 23, 24, 0, 0, 0, 0,
5847 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5848 0, 216, 0, 0, 0, 0, 0, 0, 0, 28,
5849 29, 0, 0, 0, 32, 0, 0, 0, 0, 0,
5850 217, 38, 218, 0, 0, 0, 0, 0, 0, 0,
5851 0, 0, 0, 0, 0, 219, 2, 172, 173, 174,
5852 175, 176, 204, 205, 206, 207, 208, 209, 210, 211,
5853 212, 213, 18, 19, 214, 215, 22, 23, 24, 0,
5854 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5855 0, 0, 0, 0, 216, 0, 0, 0, 0, 0,
5856 0, 0, 28, 29, 0, 0, 0, 32, 0, 0,
5857 0, 0, 0, 217, 38, 218, 0, 0, 0, 0,
5858 0, 0, 0, 0, 0, 0, 0, 0, 219, 0,
5859 0, 0, 0, 0, 0, 0, 0, 43, 0, 0,
5860 774, 1575, 0, 0, 0, 0, 0, 0, 0, 0,
5861 0, 508, 2, 172, 173, 174, 175, 176, 204, 205,
5862 206, 207, 208, 209, 210, 211, 212, 213, 18, 19,
5863 214, 215, 22, 23, 24, 0, 0, 0, 0, 0,
5864 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5865 216, 0, 0, 0, 0, 0, 0, 0, 28, 29,
5866 0, 0, 0, 32, 0, 0, 0, 0, 0, 217,
5867 38, 218, 0, 0, 0, 0, 0, 0, 0, 0,
5868 0, 0, 0, 0, 219, 0, 0, 0, 0, 0,
5869 0, 0, 0, 43, 0, 0, 774, 0, 0, 0,
5870 0, 0, 0, 0, 0, 0, 0, 508, 2, 172,
5871 173, 174, 175, 176, 204, 205, 206, 207, 208, 209,
5872 210, 211, 212, 213, 18, 19, 214, 215, 22, 23,
5873 24, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5874 0, 0, 0, 0, 0, 0, 216, 0, 0, 0,
5875 0, 0, 0, 0, 28, 29, 0, 0, 0, 32,
5876 0, 0, 0, 0, 0, 217, 38, 218, 0, 0,
5877 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5878 219, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5879 0, 0, 0, 0, 0, 0, 0, 0, 0, 220,
5880 2, 172, 173, 174, 175, 176, 204, 205, 206, 207,
5881 208, 209, 210, 211, 212, 213, 18, 19, 214, 215,
5882 22, 23, 24, 0, 0, 0, 0, 0, 0, 0,
5883 0, 0, 0, 0, 0, 0, 0, 0, 216, 0,
5884 0, 0, 0, 0, 0, 0, 28, 29, 0, 0,
5885 0, 32, 0, 0, 0, 0, 0, 217, 38, 218,
5886 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5887 0, 0, 219, 0, 0, 0, 0, 0, 0, 0,
5888 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5889 1429, 2, 172, 173, 174, 175, 176, 204, 205, 206,
5890 207, 208, 209, 210, 211, 212, 213, 18, 19, 214,
5891 215, 22, 23, 24, 0, 0, 0, 0, 0, 0,
5892 0, 0, 0, 0, 0, 0, 0, 0, 0, 216,
5893 0, 0, 0, 0, 0, 0, 0, 28, 29, 0,
5894 0, 0, 32, 0, 0, 0, 0, 0, 217, 38,
5895 218, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5899 static const short int yycheck[] =
5901 0, 83, 652, 127, 507, 841, 507, 577, 873, 517,
5902 75, 519, 484, 139, 75, 75, 140, 76, 142, 841,
5903 144, 767, 78, 91, 767, 771, 484, 136, 771, 732,
5904 30, 31, 51, 117, 763, 1, 906, 907, 908, 1,
5905 75, 41, 763, 907, 44, 1500, 91, 78, 236, 84,
5906 906, 51, 908, 127, 84, 163, 56, 1512, 58, 75,
5907 76, 767, 1115, 1, 1117, 771, 140, 906, 142, 908,
5908 144, 1, 686, 84, 74, 75, 76, 161, 78, 56,
5909 80, 163, 82, 306, 84, 104, 3, 305, 654, 84,
5910 5, 91, 92, 139, 291, 95, 91, 17, 3, 30,
5911 5, 319, 3, 484, 104, 323, 370, 107, 5, 51,
5912 3, 42, 427, 428, 69, 70, 116, 117, 732, 119,
5913 3, 306, 5, 123, 124, 125, 17, 127, 236, 672,
5914 377, 131, 74, 133, 3, 678, 136, 137, 681, 139,
5915 140, 141, 142, 1, 144, 721, 5, 255, 672, 75,
5916 893, 170, 234, 153, 678, 121, 118, 681, 84, 1,
5917 160, 161, 3, 118, 1, 91, 3, 98, 99, 110,
5918 170, 102, 231, 749, 112, 191, 153, 424, 119, 244,
5919 180, 1, 182, 244, 244, 115, 254, 3, 256, 131,
5920 190, 191, 109, 254, 254, 112, 112, 499, 3, 5,
5921 5, 201, 1, 203, 3, 120, 123, 499, 113, 254,
5922 1, 256, 113, 133, 311, 231, 121, 170, 1, 254,
5923 117, 256, 524, 793, 1, 527, 256, 529, 244, 531,
5924 113, 231, 524, 599, 600, 527, 236, 529, 121, 531,
5925 240, 1106, 133, 507, 244, 256, 372, 373, 190, 1,
5926 119, 906, 17, 908, 254, 3, 256, 115, 74, 117,
5927 118, 256, 1, 79, 3, 3, 350, 775, 776, 1,
5928 86, 774, 0, 774, 274, 116, 118, 254, 1148, 1149,
5929 280, 118, 1, 3, 1148, 1155, 1156, 1, 288, 1159,
5930 1160, 1155, 17, 1149, 1749, 1159, 112, 1, 118, 3,
5931 1156, 1, 112, 1, 1160, 686, 1, 123, 113, 240,
5932 1149, 117, 394, 395, 396, 397, 121, 1156, 906, 118,
5933 908, 1160, 275, 79, 115, 3, 117, 373, 281, 3,
5934 256, 1, 115, 115, 117, 118, 234, 235, 1, 1,
5935 797, 118, 342, 343, 234, 235, 3, 75, 1, 1,
5936 350, 732, 352, 117, 3, 1, 84, 3, 0, 290,
5937 124, 109, 110, 91, 92, 121, 118, 585, 133, 425,
5938 588, 119, 372, 373, 3, 3, 376, 377, 116, 118,
5939 504, 3, 506, 383, 5, 117, 386, 387, 388, 389,
5940 390, 500, 1095, 113, 425, 1984, 480, 117, 1101, 118,
5941 28, 121, 112, 485, 118, 669, 28, 112, 133, 597,
5942 598, 599, 600, 123, 118, 872, 73, 115, 118, 419,
5943 420, 421, 110, 118, 424, 425, 3, 427, 428, 118,
5944 504, 431, 506, 75, 112, 519, 436, 118, 3, 113,
5945 440, 441, 84, 117, 90, 445, 446, 121, 118, 91,
5946 92, 2040, 995, 119, 962, 118, 118, 457, 458, 1,
5947 963, 118, 963, 191, 113, 118, 118, 467, 468, 1,
5948 1335, 995, 472, 473, 490, 491, 476, 477, 1, 118,
5949 480, 1095, 482, 706, 707, 708, 115, 1101, 117, 508,
5950 490, 491, 113, 509, 1149, 495, 73, 119, 440, 499,
5951 500, 1156, 5, 700, 504, 1160, 506, 507, 508, 509,
5952 774, 511, 620, 736, 737, 738, 244, 517, 537, 519,
5953 1, 706, 707, 708, 524, 789, 254, 527, 256, 529,
5954 727, 531, 1397, 1586, 849, 850, 800, 537, 735, 920,
5955 77, 1107, 74, 790, 859, 1, 861, 79, 113, 3,
5956 550, 736, 737, 738, 86, 508, 624, 0, 755, 1125,
5957 288, 1149, 311, 624, 624, 5, 1132, 567, 1156, 569,
5958 652, 113, 1160, 3, 5, 117, 3, 577, 5, 624,
5959 112, 113, 1311, 1312, 121, 117, 1332, 485, 3, 1332,
5960 1311, 1312, 115, 109, 117, 485, 112, 597, 598, 599,
5961 600, 28, 244, 1439, 1107, 3, 1107, 1477, 1478, 562,
5962 113, 5, 254, 1477, 256, 615, 616, 1439, 715, 716,
5963 3, 718, 1478, 116, 624, 872, 1332, 112, 3, 629,
5964 109, 3, 998, 112, 3, 1001, 117, 110, 123, 1478,
5965 1, 767, 115, 643, 123, 771, 743, 744, 745, 746,
5966 650, 651, 652, 653, 654, 655, 112, 113, 3, 113,
5967 1041, 117, 1408, 3, 1410, 1046, 968, 914, 1049, 669,
5968 1051, 115, 974, 1039, 616, 115, 968, 3, 980, 117,
5969 110, 612, 613, 683, 986, 115, 118, 687, 1054, 1055,
5970 1056, 1057, 119, 65, 986, 109, 424, 3, 117, 597,
5971 598, 599, 600, 83, 119, 3, 1412, 597, 598, 599,
5972 600, 109, 110, 1, 1095, 129, 130, 3, 112, 1584,
5973 1101, 119, 28, 621, 1, 1590, 657, 658, 659, 729,
5974 28, 621, 3, 733, 74, 377, 119, 109, 110, 79,
5975 109, 110, 824, 825, 119, 827, 86, 119, 830, 831,
5976 119, 112, 113, 110, 880, 881, 117, 28, 758, 759,
5977 760, 885, 119, 763, 764, 765, 892, 767, 113, 109,
5978 770, 771, 112, 3, 774, 5, 119, 886, 778, 779,
5979 723, 121, 424, 163, 110, 111, 74, 73, 788, 789,
5980 790, 79, 1, 793, 3, 1660, 103, 797, 86, 799,
5981 800, 31, 802, 1, 804, 118, 1676, 1677, 751, 722,
5982 998, 885, 1676, 1001, 112, 897, 724, 113, 7, 8,
5983 9, 1677, 1330, 1478, 1088, 725, 3, 115, 116, 117,
5984 939, 940, 118, 1376, 880, 881, 113, 750, 1677, 855,
5985 117, 1105, 842, 112, 752, 845, 788, 3, 119, 849,
5986 850, 1039, 1376, 753, 234, 855, 236, 113, 111, 859,
5987 1, 861, 862, 170, 117, 74, 1054, 1055, 1056, 1057,
5988 79, 871, 872, 873, 3, 255, 754, 86, 962, 116,
5989 880, 881, 236, 883, 121, 885, 886, 7, 8, 9,
5990 1478, 844, 892, 893, 772, 773, 624, 828, 112, 28,
5991 109, 629, 3, 112, 1, 112, 115, 3, 117, 118,
5992 7, 8, 9, 118, 914, 113, 123, 3, 3, 117,
5993 5, 116, 1145, 112, 652, 11, 3, 28, 1, 882,
5994 3, 120, 109, 110, 123, 1800, 7, 8, 9, 939,
5995 940, 669, 721, 943, 944, 964, 31, 947, 948, 1073,
5996 950, 28, 116, 109, 110, 1152, 112, 121, 1608, 111,
5997 1145, 1531, 962, 963, 964, 117, 715, 716, 968, 718,
5998 749, 971, 113, 1445, 974, 111, 117, 977, 709, 710,
5999 980, 117, 624, 983, 291, 11, 986, 1445, 988, 119,
6000 119, 121, 112, 993, 743, 744, 745, 746, 998, 1073,
6001 120, 1001, 115, 123, 3, 1, 119, 77, 739, 740,
6002 1010, 964, 1012, 109, 394, 112, 112, 397, 119, 116,
6003 722, 1021, 1677, 120, 112, 111, 123, 119, 508, 1865,
6004 116, 117, 760, 119, 1034, 112, 109, 110, 112, 1039,
6005 1040, 7, 8, 9, 117, 111, 1763, 11, 750, 120,
6006 109, 117, 123, 1006, 1054, 1055, 1056, 1057, 3, 115,
6007 1079, 112, 790, 119, 1445, 1380, 3, 1382, 112, 797,
6008 129, 130, 1072, 1073, 802, 74, 804, 112, 74, 1079,
6009 79, 1081, 562, 79, 1587, 111, 1587, 86, 1088, 1677,
6010 86, 117, 1092, 119, 112, 1, 1096, 111, 1098, 1030,
6011 12, 13, 1102, 117, 112, 485, 1106, 1107, 11, 112,
6012 7, 8, 9, 112, 119, 1481, 1482, 132, 723, 115,
6013 116, 117, 7, 8, 9, 1125, 1492, 855, 1600, 74,
6014 1876, 1877, 1132, 74, 79, 724, 115, 74, 79, 1139,
6015 119, 86, 79, 125, 872, 86, 751, 111, 790, 86,
6016 131, 3, 1802, 117, 120, 1108, 1054, 1055, 1056, 1057,
6017 7, 8, 9, 752, 1054, 1055, 1056, 1057, 74, 3,
6018 113, 478, 109, 79, 119, 725, 1074, 1130, 119, 16,
6019 86, 118, 113, 3, 1074, 5, 117, 113, 12, 13,
6020 121, 117, 125, 1910, 3, 1912, 111, 1767, 110, 111,
6021 74, 508, 117, 753, 1468, 79, 1332, 754, 111, 115,
6022 116, 117, 86, 116, 117, 1146, 119, 597, 598, 599,
6023 600, 118, 74, 120, 113, 772, 773, 79, 117, 536,
6024 872, 65, 44, 45, 86, 120, 131, 3, 1710, 3,
6025 620, 621, 1623, 597, 598, 599, 600, 1628, 711, 712,
6026 1631, 132, 1710, 111, 1635, 562, 1973, 109, 1975, 117,
6027 1977, 16, 74, 75, 113, 74, 118, 79, 115, 116,
6028 79, 119, 914, 120, 86, 109, 110, 86, 741, 742,
6029 126, 127, 1408, 1409, 1410, 1411, 110, 111, 113, 109,
6030 110, 119, 117, 1481, 1482, 44, 45, 109, 2015, 2016,
6031 109, 2018, 1302, 1303, 1492, 116, 1306, 1307, 74, 118,
6032 74, 1311, 1312, 79, 112, 79, 74, 2034, 111, 113,
6033 86, 79, 86, 117, 117, 74, 75, 121, 86, 1710,
6034 79, 110, 1332, 2050, 119, 1335, 121, 86, 709, 710,
6035 119, 1341, 121, 109, 1344, 109, 112, 113, 112, 656,
6036 1350, 1351, 119, 660, 121, 113, 1356, 1357, 711, 712,
6037 1088, 111, 119, 112, 844, 672, 111, 117, 739, 740,
6038 1736, 678, 117, 113, 681, 113, 1307, 117, 1378, 117,
6039 1380, 121, 1382, 121, 111, 1385, 111, 113, 741, 742,
6040 117, 117, 117, 700, 1775, 69, 70, 1397, 1, 1780,
6041 3, 111, 882, 1403, 1404, 10, 11, 117, 1408, 1409,
6042 1410, 1411, 1, 124, 3, 1541, 127, 91, 1988, 115,
6043 727, 95, 1803, 97, 88, 89, 90, 115, 735, 140,
6044 1383, 142, 117, 144, 18, 19, 20, 21, 22, 23,
6045 24, 25, 26, 27, 118, 719, 720, 113, 755, 719,
6046 720, 117, 1468, 1650, 1651, 1652, 1653, 1654, 1655, 1656,
6047 1657, 1933, 113, 113, 110, 113, 117, 117, 1468, 117,
6048 119, 74, 121, 747, 748, 1933, 79, 747, 748, 14,
6049 15, 1481, 1482, 86, 964, 126, 127, 113, 44, 45,
6050 1490, 117, 1492, 1493, 113, 113, 1496, 113, 117, 117,
6051 1500, 117, 110, 115, 1504, 117, 109, 1507, 119, 112,
6052 121, 115, 115, 117, 117, 118, 115, 897, 74, 75,
6053 1992, 1993, 110, 79, 137, 1, 1006, 3, 141, 116,
6054 86, 1531, 116, 119, 841, 1993, 1902, 844, 1904, 117,
6055 115, 1541, 117, 119, 1, 121, 3, 119, 1736, 121,
6056 124, 1, 1933, 3, 124, 1, 112, 3, 1, 270,
6057 3, 115, 115, 117, 117, 10, 11, 1691, 119, 1693,
6058 121, 1, 1503, 3, 1, 882, 3, 1, 1, 3,
6059 3, 115, 1664, 117, 1584, 14, 15, 1587, 1519, 119,
6060 1590, 1715, 115, 1717, 117, 115, 124, 117, 119, 906,
6061 121, 908, 1968, 1420, 119, 1422, 117, 1420, 1608, 1422,
6062 1610, 1611, 1993, 117, 822, 823, 117, 1691, 998, 1693,
6063 117, 1001, 822, 823, 490, 491, 490, 491, 1108, 597,
6064 598, 118, 597, 598, 119, 115, 1589, 121, 1591, 91,
6065 92, 1715, 112, 1717, 998, 1645, 112, 1001, 764, 765,
6066 1130, 112, 1605, 1606, 112, 115, 115, 964, 112, 1039,
6067 1660, 116, 115, 119, 115, 113, 115, 1667, 1865, 1669,
6068 110, 115, 119, 115, 1054, 1055, 1056, 1057, 110, 1679,
6069 0, 118, 115, 119, 115, 1039, 124, 121, 995, 115,
6070 118, 1691, 110, 1693, 1074, 115, 118, 118, 113, 1006,
6071 1054, 1055, 1056, 1057, 113, 113, 113, 124, 419, 420,
6072 124, 113, 56, 112, 1902, 1715, 1904, 1717, 121, 112,
6073 431, 121, 112, 115, 115, 1032, 1033, 115, 112, 110,
6074 1730, 1731, 1732, 1733, 445, 446, 1736, 110, 115, 113,
6075 1468, 1741, 1742, 113, 1744, 113, 1746, 110, 112, 1873,
6076 1876, 1877, 112, 110, 123, 75, 467, 468, 1758, 113,
6077 113, 472, 473, 113, 84, 476, 477, 1767, 123, 1992,
6078 1770, 91, 92, 118, 117, 117, 113, 123, 56, 110,
6079 1968, 121, 121, 121, 113, 121, 121, 121, 121, 121,
6080 113, 113, 11, 504, 115, 506, 113, 113, 124, 1873,
6081 1800, 1108, 1802, 0, 112, 125, 124, 1992, 113, 124,
6082 121, 121, 112, 112, 123, 113, 113, 137, 113, 113,
6083 113, 141, 113, 1130, 113, 64, 64, 112, 124, 115,
6084 1761, 123, 1763, 116, 124, 119, 124, 124, 119, 121,
6085 115, 121, 1149, 116, 41, 1152, 116, 115, 1801, 1156,
6086 119, 113, 113, 1160, 51, 2023, 119, 124, 1811, 124,
6087 124, 58, 113, 113, 124, 124, 124, 124, 124, 113,
6088 113, 1871, 1872, 1873, 1874, 1875, 1876, 1877, 75, 115,
6089 1608, 78, 1882, 1883, 1884, 1885, 83, 84, 113, 124,
6090 124, 113, 1892, 124, 91, 92, 124, 115, 115, 1981,
6091 1982, 115, 1902, 1383, 1904, 115, 113, 104, 892, 115,
6092 107, 115, 115, 1913, 1914, 1868, 1869, 115, 431, 115,
6093 115, 115, 119, 115, 244, 115, 115, 124, 125, 431,
6094 127, 431, 431, 431, 254, 770, 256, 883, 655, 1378,
6095 137, 914, 139, 140, 141, 142, 270, 144, 254, 388,
6096 1950, 1951, 254, 280, 853, 1955, 1956, 1803, 425, 1959,
6097 231, 1961, 1972, 270, 1964, 91, 163, 270, 1968, 84,
6098 236, 84, 92, 170, 84, -1, 1645, -1, -1, 1910,
6099 -1, 1912, 1982, -1, 1984, 182, -1, -1, 1988, -1,
6100 125, -1, -1, 306, 191, -1, -1, -1, -1, -1,
6101 -1, 2001, 137, -1, -1, -1, 141, -1, -1, -1,
6102 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6103 -1, -1, -1, 2023, 2024, -1, -1, -1, -1, 2029,
6104 -1, -1, -1, -1, 231, -1, -1, 234, 235, 236,
6105 2040, 1972, 1973, -1, 1975, -1, 1977, 244, -1, -1,
6106 1430, -1, -1, -1, -1, -1, 376, 254, 255, 256,
6107 -1, -1, -1, -1, -1, -1, -1, -1, 388, 1376,
6108 -1, -1, -1, -1, 1802, -1, 1383, 274, -1, -1,
6109 -1, -1, -1, 280, 2015, 2016, -1, 2018, -1, -1,
6110 -1, 288, -1, -1, -1, -1, 231, -1, -1, -1,
6111 -1, 1481, 1482, 2034, -1, -1, -1, 419, 420, 1589,
6112 -1, 1591, 1492, 1420, -1, 1422, -1, -1, -1, 2050,
6113 -1, 441, -1, -1, -1, 1605, 1606, 1481, 1482, -1,
6114 -1, -1, 1439, 445, 446, -1, -1, -1, 1492, 274,
6115 -1, -1, -1, -1, -1, 280, 343, -1, -1, -1,
6116 -1, -1, -1, -1, -1, 467, 468, -1, -1, -1,
6117 472, 473, -1, -1, 476, 477, -1, -1, -1, -1,
6118 -1, 1478, -1, 370, 885, 372, 373, -1, -1, 376,
6119 377, -1, -1, -1, -1, -1, 383, -1, -1, -1,
6120 387, 388, -1, 390, -1, -1, -1, -1, 419, 420,
6121 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6122 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6123 -1, -1, 419, 420, 445, 446, -1, 424, 425, -1,
6124 -1, -1, 943, 944, 431, 370, 947, 948, -1, 436,
6125 -1, 376, -1, -1, 441, -1, 467, 468, 445, 446,
6126 -1, 472, 473, 388, -1, 476, 477, -1, -1, 572,
6127 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6128 467, 468, -1, -1, -1, 472, 473, -1, -1, 476,
6129 477, 478, 1589, -1, 1591, -1, -1, -1, 485, -1,
6130 -1, -1, -1, 1600, -1, -1, -1, -1, 1605, 1606,
6131 124, -1, 499, 127, 624, 1612, 441, 504, -1, 506,
6132 507, 508, -1, -1, -1, -1, 140, -1, 142, -1,
6133 144, 1801, -1, -1, -1, -1, -1, 524, -1, -1,
6134 527, 1811, 529, -1, 531, -1, -1, -1, -1, -1,
6135 537, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6136 -1, -1, -1, -1, -1, -1, 1736, -1, -1, -1,
6137 -1, 1072, 1073, -1, -1, -1, -1, -1, -1, -1,
6138 1677, -1, -1, 686, -1, -1, -1, -1, -1, -1,
6139 -1, -1, 1736, -1, -1, -1, -1, -1, 1868, 1869,
6140 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6141 597, 598, 599, 600, -1, -1, 719, 720, 721, 722,
6142 723, -1, -1, 726, -1, -1, -1, -1, -1, 732,
6143 -1, -1, -1, 620, 621, -1, -1, 624, -1, -1,
6144 -1, -1, 629, -1, 747, 748, 749, 750, 751, -1,
6145 -1, 754, -1, -1, -1, -1, 643, -1, -1, -1,
6146 -1, -1, -1, 650, 651, 652, -1, 654, 655, 772,
6147 773, 1768, 1769, -1, -1, -1, -1, -1, -1, 789,
6148 -1, -1, 669, -1, -1, 672, -1, -1, -1, -1,
6149 800, 678, -1, -1, 681, -1, -1, -1, -1, -1,
6150 -1, -1, -1, -1, 1801, -1, -1, -1, -1, 119,
6151 -1, -1, -1, -1, 1811, -1, -1, -1, -1, -1,
6152 -1, -1, -1, -1, -1, 650, 651, -1, -1, 654,
6153 655, -1, 1902, -1, 1904, -1, -1, -1, -1, -1,
6154 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6155 -1, -1, -1, -1, -1, -1, -1, -1, 1902, -1,
6156 1904, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6157 -1, 1868, 1869, 760, -1, -1, 763, 764, 765, -1,
6158 767, -1, -1, 770, 771, -1, -1, 774, -1, -1,
6159 -1, -1, -1, -1, -1, -1, -1, -1, 1968, -1,
6160 -1, -1, 789, 790, -1, 419, 420, -1, -1, -1,
6161 797, -1, 78, 800, -1, 802, -1, 804, -1, -1,
6162 -1, -1, -1, -1, 1968, -1, -1, -1, -1, -1,
6163 -1, 445, 446, -1, -1, -1, -1, -1, -1, -1,
6164 -1, 943, 944, -1, -1, 947, 948, -1, -1, -1,
6165 -1, -1, -1, 467, 468, -1, 266, -1, 472, 473,
6166 -1, -1, 476, 477, 789, 275, -1, -1, 855, -1,
6167 -1, 281, -1, -1, -1, 800, -1, 1974, -1, -1,
6168 -1, -1, -1, -1, -1, 872, 873, -1, 0, -1,
6169 504, -1, 506, 880, 881, 1992, -1, -1, 885, 0,
6170 -1, -1, 1403, 1404, -1, 892, -1, -1, 7, -1,
6171 1013, 10, 11, 12, 13, 14, 15, 16, 17, 906,
6172 907, 908, -1, -1, -1, -1, -1, 914, -1, -1,
6173 -1, -1, 943, 944, -1, -1, 947, 948, 1041, -1,
6174 -1, -1, -1, -1, -1, -1, 1049, -1, -1, -1,
6175 -1, -1, -1, -1, -1, 124, 943, 944, 127, -1,
6176 947, 948, 372, 75, -1, -1, 0, -1, -1, -1,
6177 -1, 140, 84, 142, 75, 144, 963, 964, -1, 91,
6178 92, 968, -1, 84, -1, -1, -1, 974, -1, 914,
6179 91, 92, 1095, 980, -1, -1, -1, -1, 1101, 986,
6180 -1, -1, -1, -1, -1, -1, -1, -1, 995, -1,
6181 44, 110, 111, -1, -1, -1, -1, -1, -1, -1,
6182 -1, 120, -1, -1, 125, -1, -1, -1, -1, -1,
6183 129, 130, 131, 132, 133, -1, 137, -1, -1, -1,
6184 141, 75, 76, -1, -1, -1, -1, -1, 82, -1,
6185 84, -1, -1, -1, -1, -1, -1, 91, 92, -1,
6186 -1, -1, -1, -1, -1, -1, -1, 1054, 1055, 1056,
6187 1057, -1, -1, -1, -1, -1, -1, 343, -1, 191,
6188 -1, -1, -1, 117, 118, 1072, 1073, 1074, -1, -1,
6189 124, -1, 1079, 127, -1, -1, -1, -1, -1, -1,
6190 -1, 1088, -1, -1, -1, -1, 140, -1, 142, -1,
6191 144, 377, 103, -1, -1, -1, -1, -1, 1105, 1106,
6192 1107, 387, -1, -1, 390, -1, -1, 161, 162, -1,
6193 -1, -1, 244, -1, -1, -1, -1, -1, 1125, -1,
6194 -1, -1, 254, 244, 256, 1132, -1, -1, -1, -1,
6195 -1, -1, -1, 254, -1, 256, -1, 191, -1, 425,
6196 -1, 1148, 1149, -1, -1, 431, -1, -1, 1155, 1156,
6197 -1, -1, 1159, 1160, -1, -1, -1, -1, -1, -1,
6198 1105, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6199 1691, -1, 1693, -1, -1, -1, -1, 231, -1, -1,
6200 1125, -1, -1, -1, -1, -1, -1, 1132, 822, 823,
6201 244, -1, -1, -1, 1715, 625, 1717, -1, -1, -1,
6202 254, -1, 256, -1, -1, -1, -1, -1, -1, -1,
6203 -1, -1, -1, 499, -1, -1, -1, -1, -1, -1,
6204 -1, 507, -1, -1, -1, 236, -1, -1, -1, -1,
6205 419, 420, -1, -1, -1, -1, -1, -1, 524, -1,
6206 -1, 527, 431, 529, -1, 531, -1, -1, -1, -1,
6207 -1, 885, -1, -1, -1, 376, 445, 446, -1, -1,
6208 -1, -1, -1, -1, -1, -1, -1, 388, -1, -1,
6209 -1, -1, -1, -1, -1, -1, -1, -1, 467, 468,
6210 291, 1403, 1404, 472, 473, -1, -1, 476, 477, -1,
6211 -1, -1, 424, -1, -1, -1, 350, -1, -1, -1,
6212 -1, -1, -1, -1, 1311, 1312, -1, -1, -1, 943,
6213 944, -1, -1, 947, 948, 504, 370, 506, -1, -1,
6214 441, -1, -1, 377, -1, 1332, -1, -1, 1335, -1,
6215 -1, -1, -1, -1, -1, 389, -1, 767, -1, -1,
6216 770, 771, -1, -1, -1, -1, -1, -1, -1, -1,
6217 1871, 1872, 1873, 1874, 1875, -1, -1, -1, -1, -1,
6218 -1, 1882, 1883, 1884, 1885, 419, 420, -1, -1, 1376,
6219 424, -1, 1403, 1404, 428, -1, -1, 431, -1, -1,
6220 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6221 1397, 445, 446, -1, -1, -1, 1403, 1404, -1, -1,
6222 -1, 1408, 1409, 1410, 1411, -1, -1, -1, -1, -1,
6223 -1, -1, -1, 467, 468, -1, -1, -1, 472, 473,
6224 -1, -1, 476, 477, -1, -1, 480, -1, -1, 1950,
6225 1951, -1, -1, -1, -1, -1, 490, 491, 1072, 1073,
6226 -1, -1, -1, 873, -1, -1, -1, -1, -1, -1,
6227 504, -1, 506, 507, -1, 509, -1, -1, -1, -1,
6228 1, 1468, 3, 4, 5, 519, -1, 521, -1, -1,
6229 1477, 1478, -1, 484, -1, -1, -1, 763, 764, 765,
6230 -1, -1, -1, -1, -1, -1, -1, 28, 774, -1,
6231 -1, -1, 624, -1, -1, -1, -1, 629, -1, -1,
6232 1623, -1, -1, 624, -1, 1628, 1629, 1630, 1631, 1632,
6233 1633, -1, 1635, -1, -1, 1638, 1639, 1640, 1641, -1,
6234 -1, -1, -1, -1, 65, 536, -1, -1, -1, -1,
6235 71, 72, -1, -1, 1541, -1, -1, -1, -1, -1,
6236 -1, -1, -1, -1, 85, -1, -1, -1, -1, -1,
6237 -1, -1, -1, -1, -1, -1, 567, 98, -1, -1,
6238 -1, 102, 103, 104, 105, 106, 107, 108, -1, -1,
6239 624, 112, -1, -1, -1, -1, -1, 1584, -1, -1,
6240 1587, 122, 123, 1590, -1, -1, 597, 598, 599, 600,
6241 -1, -1, -1, -1, -1, -1, 650, -1, -1, -1,
6242 654, 1608, -1, -1, -1, -1, -1, -1, -1, -1,
6243 -1, -1, -1, -1, -1, 669, -1, -1, -1, -1,
6244 124, -1, -1, 127, -1, -1, -1, -1, 760, -1,
6245 -1, -1, -1, -1, -1, -1, 140, -1, 142, -1,
6246 144, -1, -1, -1, -1, 656, -1, -1, -1, 660,
6247 -1, -1, 1775, 1660, -1, -1, -1, 1780, 790, -1,
6248 -1, -1, -1, -1, -1, 797, -1, -1, 789, 1676,
6249 1677, -1, 804, -1, -1, 686, 1106, 963, -1, 800,
6250 -1, -1, 968, -1, 1691, -1, 1693, -1, 974, 700,
6251 -1, -1, -1, -1, 980, -1, 885, -1, -1, -1,
6252 986, -1, -1, -1, -1, -1, -1, -1, 1715, -1,
6253 1717, -1, -1, -1, -1, -1, 727, -1, -1, -1,
6254 774, 732, 0, 855, 735, -1, -1, -1, -1, -1,
6255 -1, -1, 236, -1, -1, 789, 790, -1, -1, -1,
6256 872, -1, -1, 797, 755, -1, 800, -1, 802, 1871,
6257 1872, -1, 1874, 1875, 943, 944, -1, -1, 947, 948,
6258 1882, 1883, 1884, 1885, -1, -1, -1, -1, -1, 1403,
6259 1404, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6260 -1, -1, -1, -1, -1, -1, -1, -1, 842, -1,
6261 -1, -1, -1, 1800, -1, 1802, 850, 75, -1, -1,
6262 -1, 855, -1, -1, -1, -1, 84, -1, 862, -1,
6263 -1, -1, -1, 91, 92, -1, -1, -1, 872, -1,
6264 -1, 1107, -1, -1, 119, -1, -1, -1, 1950, 1951,
6265 -1, 885, -1, -1, -1, -1, -1, -1, -1, -1,
6266 1871, 1872, -1, 1874, 1875, -1, -1, 125, -1, -1,
6267 -1, 1882, 1883, 1884, 1885, -1, -1, -1, -1, 137,
6268 914, -1, -1, 141, 1871, 1872, 1873, 1874, 1875, 1876,
6269 1877, -1, -1, -1, -1, 1882, 1883, 1884, 1885, -1,
6270 -1, -1, -1, 1072, 1073, -1, -1, -1, -1, 943,
6271 944, -1, -1, 947, 948, -1, -1, -1, -1, -1,
6272 -1, -1, 1332, -1, -1, 1335, 960, -1, 962, 920,
6273 -1, -1, -1, -1, -1, 419, 420, -1, -1, 1950,
6274 1951, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6275 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6276 -1, 445, 446, 1950, 1951, -1, -1, 1079, -1, -1,
6277 -1, -1, -1, -1, -1, -1, 1088, -1, -1, -1,
6278 -1, -1, -1, 467, 468, -1, 244, 1397, 472, 473,
6279 -1, 266, 476, 477, 478, -1, 254, -1, 256, -1,
6280 275, -1, 1412, -1, -1, -1, 281, 998, -1, -1,
6281 1001, -1, -1, -1, -1, -1, -1, -1, -1, 1010,
6282 504, -1, 506, 7, 8, 9, 10, 11, 12, 13,
6283 14, 15, 16, 17, -1, -1, -1, -1, 1072, 1073,
6284 -1, 1032, 1033, -1, -1, 1311, 1312, -1, 1039, -1,
6285 1041, -1, -1, -1, 1088, 1046, -1, -1, 1049, -1,
6286 1051, -1, -1, 1054, 1055, 1056, 1057, -1, -1, -1,
6287 -1, 1105, -1, 1107, -1, -1, -1, 1691, -1, 1693,
6288 -1, -1, -1, 567, -1, -1, -1, -1, -1, -1,
6289 -1, 1125, -1, -1, -1, -1, -1, 372, 1132, -1,
6290 -1, 1715, -1, 1717, 1095, -1, -1, -1, -1, -1,
6291 1101, -1, -1, 597, 598, 599, 600, -1, 376, -1,
6292 -1, -1, -1, -1, -1, -1, 110, 111, -1, -1,
6293 388, -1, -1, -1, -1, -1, 120, -1, -1, -1,
6294 -1, 125, 126, 127, -1, 129, 130, 131, 132, 133,
6295 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6296 -1, 1152, -1, -1, -1, -1, -1, -1, -1, -1,
6297 -1, -1, -1, -1, 1584, -1, -1, -1, -1, -1,
6298 1590, -1, -1, 441, -1, -1, -1, -1, 672, -1,
6299 -1, -1, -1, -1, 678, -1, -1, 681, -1, -1,
6300 -1, -1, -1, -1, -1, -1, 83, -1, -1, -1,
6301 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1629,
6302 1630, -1, 1632, 1633, -1, -1, 119, -1, 1638, 1639,
6303 1640, 1641, -1, -1, 1403, 1404, -1, -1, -1, -1,
6304 1650, 1651, 1652, 1653, 1654, 1655, 1656, 1657, -1, -1,
6305 1660, -1, -1, -1, -1, -1, -1, 1871, 1872, 1873,
6306 1874, 1875, -1, -1, -1, -1, -1, -1, 1882, 1883,
6307 1884, 1885, -1, -1, -1, -1, -1, 170, -1, -1,
6308 -1, -1, -1, -1, -1, -1, 163, -1, -1, -1,
6309 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6310 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6311 -1, -1, -1, -1, -1, -1, -1, 1351, -1, -1,
6312 -1, 1587, -1, -1, -1, -1, -1, -1, -1, -1,
6313 -1, -1, -1, -1, -1, -1, 1950, 1951, 822, 823,
6314 -1, -1, -1, -1, 1378, -1, -1, -1, -1, -1,
6315 625, -1, -1, -1, -1, -1, 1468, 234, 235, 236,
6316 -1, -1, -1, -1, -1, -1, 624, -1, -1, 1403,
6317 1404, -1, -1, 266, -1, -1, -1, -1, 255, -1,
6318 -1, -1, 275, -1, -1, -1, -1, -1, 281, -1,
6319 1800, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6320 -1, 885, -1, -1, -1, -1, -1, -1, -1, -1,
6321 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6322 -1, -1, 906, -1, 908, -1, -1, -1, -1, -1,
6323 -1, -1, -1, -1, 1468, -1, -1, -1, -1, -1,
6324 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6325 -1, -1, -1, -1, 1445, 1865, -1, -1, -1, 943,
6326 944, -1, -1, 947, 948, -1, -1, -1, -1, -1,
6327 -1, -1, -1, -1, -1, -1, -1, -1, -1, 372,
6328 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6329 1481, 1482, 767, -1, -1, 770, 771, -1, -1, 1490,
6330 -1, 1492, 1493, -1, -1, 1496, -1, -1, -1, -1,
6331 -1, 995, -1, 1504, 998, -1, 1507, 1001, -1, -1,
6332 -1, -1, 1691, 103, 1693, -1, 1010, -1, -1, -1,
6333 -1, 789, -1, -1, -1, -1, -1, -1, -1, 119,
6334 -1, -1, 800, -1, -1, -1, 1715, -1, 1717, -1,
6335 -1, -1, -1, -1, -1, 1039, -1, -1, -1, -1,
6336 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6337 1054, 1055, 1056, 1057, -1, -1, -1, -1, -1, -1,
6338 -1, -1, -1, -1, -1, 478, -1, -1, 1072, 1073,
6339 170, -1, -1, -1, -1, -1, -1, -1, 873, -1,
6340 -1, 478, -1, -1, -1, -1, -1, -1, 485, 1600,
6341 -1, -1, -1, -1, -1, 508, -1, -1, -1, -1,
6342 -1, 1612, -1, -1, -1, -1, -1, -1, -1, -1,
6343 -1, -1, 1623, -1, -1, -1, -1, 1628, -1, -1,
6344 1631, -1, -1, -1, 1635, -1, -1, -1, -1, -1,
6345 -1, -1, -1, -1, -1, -1, -1, 1691, -1, 1693,
6346 -1, -1, -1, -1, -1, 1149, -1, -1, -1, 562,
6347 -1, -1, 1156, -1, -1, -1, 1160, -1, -1, -1,
6348 -1, 1715, -1, 1717, -1, -1, 266, -1, -1, -1,
6349 1724, 271, 272, -1, -1, 275, -1, -1, -1, -1,
6350 -1, 281, 1871, 1872, 1873, 1874, 1875, -1, -1, -1,
6351 -1, 291, -1, 1882, 1883, 1884, 1885, -1, -1, 1710,
6352 597, 598, 599, 600, -1, -1, 306, -1, -1, -1,
6353 -1, 311, 625, -1, -1, -1, -1, -1, -1, 1730,
6354 1731, 1732, 1733, 620, 621, 1736, -1, -1, -1, -1,
6355 1741, 1742, -1, 1744, -1, 1746, -1, -1, -1, -1,
6356 -1, -1, -1, -1, -1, -1, 643, 1758, -1, -1,
6357 -1, -1, -1, -1, -1, -1, -1, 1768, 1769, 672,
6358 -1, 1950, 1951, 3, 1775, 678, -1, -1, 681, 1780,
6359 -1, -1, 372, -1, -1, 672, -1, -1, -1, -1,
6360 -1, 678, -1, -1, 681, -1, -1, -1, 28, -1,
6361 -1, -1, 1803, -1, 34, 35, 36, 37, 38, 39,
6362 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
6363 50, 1106, -1, -1, -1, -1, -1, 1871, 1872, 1873,
6364 1874, 1875, -1, -1, -1, -1, 66, -1, 1882, 1883,
6365 1884, 1885, -1, -1, 74, 75, -1, -1, -1, 79,
6366 -1, -1, 82, 83, -1, 85, 86, 87, -1, -1,
6367 -1, -1, -1, -1, 767, -1, -1, 770, 771, -1,
6368 100, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6369 -1, -1, 1376, -1, -1, -1, -1, -1, 478, -1,
6370 -1, 1892, -1, -1, -1, -1, -1, -1, -1, -1,
6371 -1, 1902, -1, 1904, -1, -1, 1950, 1951, -1, 1403,
6372 1404, -1, -1, -1, -1, -1, -1, -1, 508, -1,
6373 -1, -1, -1, -1, -1, -1, 1420, -1, 1422, -1,
6374 -1, -1, 1933, -1, -1, -1, -1, -1, 841, -1,
6375 -1, 844, -1, -1, -1, -1, 536, -1, -1, -1,
6376 -1, -1, -1, -1, 1955, 1956, -1, -1, 1959, -1,
6377 1961, -1, -1, 1964, -1, -1, -1, 1968, -1, -1,
6378 873, -1, 562, 1974, -1, -1, -1, -1, -1, 882,
6379 -1, -1, -1, -1, 1478, -1, -1, 1481, 1482, -1,
6380 -1, 1992, 1993, -1, -1, -1, 1490, -1, 1492, 1493,
6381 2001, -1, 1496, 906, -1, 908, -1, -1, -1, -1,
6382 1504, -1, -1, 1507, -1, -1, -1, -1, -1, 906,
6383 907, 908, -1, -1, -1, -1, 103, -1, 2029, -1,
6384 -1, -1, -1, -1, -1, 625, -1, -1, -1, 629,
6385 -1, -1, 119, -1, -1, -1, -1, 1332, -1, -1,
6386 1335, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6387 -1, 964, -1, -1, -1, -1, 656, -1, -1, -1,
6388 660, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6389 -1, -1, 672, -1, -1, -1, -1, -1, 678, -1,
6390 -1, 681, 995, 170, -1, -1, -1, -1, -1, -1,
6391 -1, -1, -1, 1006, -1, -1, -1, -1, 995, -1,
6392 700, -1, 1397, -1, -1, -1, 706, 707, 708, 709,
6393 710, 711, 712, -1, -1, 715, 716, 1412, 718, 719,
6394 720, 721, 722, 723, 724, 725, -1, 727, -1, -1,
6395 -1, -1, -1, -1, -1, 735, 736, 737, 738, 739,
6396 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
6397 750, 751, 752, 753, -1, 755, -1, 1054, 1055, 1056,
6398 1057, -1, -1, -1, -1, -1, -1, 767, -1, -1,
6399 770, 771, -1, 1677, -1, -1, -1, 1074, -1, 266,
6400 -1, -1, -1, -1, 271, 272, -1, 1691, 275, 1693,
6401 -1, -1, -1, 1106, 281, 1108, -1, -1, -1, -1,
6402 -1, -1, -1, -1, 291, -1, -1, -1, -1, -1,
6403 -1, 1715, -1, 1717, -1, -1, -1, 1130, -1, 306,
6404 -1, -1, -1, -1, 311, -1, 1730, 1731, 1732, 1733,
6405 -1, -1, 1736, -1, -1, -1, 1149, 1741, 1742, -1,
6406 1744, 841, 1746, 1156, 844, -1, -1, 1160, -1, -1,
6407 -1, 1148, 1149, -1, 1758, -1, -1, -1, 1155, 1156,
6408 -1, -1, 1159, 1160, -1, -1, -1, -1, -1, -1,
6409 -1, -1, -1, 873, -1, -1, -1, -1, -1, -1,
6410 -1, -1, 882, -1, -1, 372, -1, -1, -1, 1584,
6411 -1, -1, -1, -1, -1, 1590, -1, -1, -1, -1,
6412 -1, -1, -1, -1, -1, -1, 906, -1, 908, -1,
6413 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6414 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6415 -1, -1, -1, -1, 1629, 1630, -1, 1632, 1633, -1,
6416 -1, -1, -1, 1638, 1639, 1640, 1641, -1, -1, -1,
6417 -1, -1, -1, -1, -1, 1650, 1651, 1652, 1653, 1654,
6418 1655, 1656, 1657, -1, 964, 1660, -1, 1871, 1872, 1873,
6419 1874, 1875, -1, -1, -1, -1, -1, -1, 1882, 1883,
6420 1884, 1885, -1, -1, -1, -1, -1, -1, 1892, -1,
6421 -1, 478, -1, -1, -1, 995, -1, -1, 1902, -1,
6422 1904, -1, -1, -1, -1, -1, 1006, -1, -1, -1,
6423 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1332,
6424 -1, 508, 1335, -1, -1, -1, -1, -1, -1, -1,
6425 -1, -1, 1032, 1033, -1, -1, -1, -1, -1, -1,
6426 -1, -1, -1, -1, -1, -1, 1950, 1951, -1, 536,
6427 -1, 1955, 1956, -1, -1, 1959, -1, 1961, -1, -1,
6428 1964, -1, -1, 1376, 1968, -1, -1, -1, -1, -1,
6429 1383, -1, -1, -1, -1, 562, -1, -1, -1, 1376,
6430 -1, -1, -1, -1, 1397, -1, -1, -1, -1, -1,
6431 -1, -1, -1, -1, -1, -1, -1, 2001, -1, 1412,
6432 -1, -1, -1, -1, -1, 1800, 1106, 1420, 1108, 1422,
6433 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6434 -1, -1, -1, -1, -1, 2029, 1439, -1, -1, -1,
6435 1130, -1, -1, -1, -1, -1, -1, -1, 625, -1,
6436 -1, -1, 629, -1, -1, 1145, -1, -1, -1, 1149,
6437 -1, -1, 1152, -1, -1, -1, 1156, -1, -1, -1,
6438 1160, -1, -1, -1, -1, 1478, -1, -1, -1, 656,
6439 1865, -1, -1, 660, -1, -1, -1, -1, -1, -1,
6440 1477, 1478, -1, -1, -1, 672, -1, -1, -1, -1,
6441 -1, 678, -1, -1, 681, -1, -1, -1, -1, -1,
6442 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6443 -1, -1, -1, 700, -1, -1, -1, -1, -1, 706,
6444 707, 708, 709, 710, 711, 712, -1, -1, 715, 716,
6445 -1, 718, 719, 720, 721, 722, 723, 724, 725, -1,
6446 727, -1, -1, -1, -1, -1, -1, -1, 735, 736,
6447 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
6448 747, 748, 749, 750, 751, 752, 753, -1, 755, -1,
6449 -1, 1584, -1, -1, -1, -1, 1589, 1590, 1591, -1,
6450 767, -1, -1, 770, 771, -1, -1, -1, -1, -1,
6451 -1, -1, 1605, 1606, -1, -1, -1, -1, -1, -1,
6452 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6453 -1, -1, -1, -1, -1, -1, 1629, 1630, -1, 1632,
6454 1633, -1, -1, -1, -1, 1638, 1639, 1640, 1641, -1,
6455 -1, -1, 1332, -1, -1, 1335, -1, 1650, 1651, 1652,
6456 1653, 1654, 1655, 1656, 1657, -1, -1, 1660, -1, -1,
6457 -1, -1, -1, -1, 841, -1, -1, 844, -1, -1,
6458 -1, -1, -1, -1, 1677, -1, -1, -1, -1, -1,
6459 -1, -1, -1, -1, -1, -1, 1376, -1, -1, 1676,
6460 1677, -1, -1, 1383, -1, -1, 873, -1, -1, -1,
6461 -1, -1, -1, -1, -1, 882, -1, 1397, -1, -1,
6462 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6463 -1, -1, 1412, -1, -1, -1, -1, -1, -1, 906,
6464 1420, 908, 1422, -1, -1, -1, -1, -1, -1, -1,
6465 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1439,
6466 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6467 -1, -1, -1, -1, -1, -1, 1, -1, 3, 4,
6468 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
6469 -1, -1, -1, -1, -1, -1, -1, 964, 1478, -1,
6470 -1, -1, -1, 28, -1, -1, -1, 1800, 1801, -1,
6471 -1, -1, -1, -1, -1, -1, -1, -1, 1811, -1,
6472 -1, -1, -1, -1, -1, -1, -1, -1, 995, -1,
6473 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1006,
6474 65, -1, -1, -1, -1, -1, 71, 72, 73, 74,
6475 -1, -1, -1, -1, 79, -1, -1, -1, -1, 84,
6476 85, 86, -1, -1, -1, 1032, 1033, -1, -1, -1,
6477 -1, -1, 1865, 98, -1, 1868, 1869, 102, 103, 104,
6478 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
6479 -1, -1, -1, -1, -1, -1, -1, 122, 123, -1,
6480 125, 126, 127, 128, 1584, -1, -1, -1, -1, 1589,
6481 1590, 1591, -1, -1, -1, -1, -1, -1, -1, -1,
6482 1600, -1, -1, -1, -1, 1605, 1606, -1, -1, -1,
6483 -1, -1, 1612, -1, -1, -1, -1, -1, -1, 1106,
6484 -1, 1108, -1, 0, -1, -1, -1, -1, -1, 1629,
6485 1630, -1, 1632, 1633, -1, -1, -1, -1, 1638, 1639,
6486 1640, 1641, -1, 1130, -1, -1, -1, 3, -1, -1,
6487 1650, 1651, 1652, 1653, 1654, 1655, 1656, 1657, 1145, -1,
6488 1660, -1, 1149, -1, -1, 1152, 43, -1, -1, 1156,
6489 -1, -1, 28, 1160, -1, -1, -1, 1677, 34, 35,
6490 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
6491 46, 47, 48, 49, 50, -1, -1, -1, 75, -1,
6492 -1, -1, -1, -1, -1, -1, 83, 84, -1, -1,
6493 66, -1, -1, -1, 91, 92, -1, -1, 74, 75,
6494 -1, -1, -1, 79, -1, -1, 82, 83, -1, 85,
6495 86, 87, 109, -1, -1, -1, -1, -1, -1, -1,
6496 -1, -1, 119, -1, 100, -1, 0, -1, 125, -1,
6497 -1, -1, -1, 109, -1, -1, 112, -1, -1, -1,
6498 137, -1, 139, -1, 141, -1, -1, 123, 1768, 1769,
6499 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6500 -1, -1, -1, -1, -1, -1, 163, -1, -1, -1,
6501 44, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6502 1800, 1801, -1, -1, -1, -1, -1, -1, -1, -1,
6503 -1, 1811, -1, -1, 191, -1, -1, -1, -1, -1,
6504 -1, 75, 76, -1, -1, -1, 80, -1, 82, -1,
6505 84, -1, -1, -1, -1, -1, -1, 91, 92, -1,
6506 -1, -1, -1, -1, -1, 1332, -1, -1, 1335, -1,
6507 -1, -1, -1, -1, 231, -1, -1, 234, 235, 236,
6508 -1, -1, 116, 117, -1, 1865, -1, 244, 1868, 1869,
6509 -1, -1, -1, -1, -1, -1, -1, 254, 255, 256,
6510 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1376,
6511 -1, -1, -1, -1, -1, -1, 1383, 274, -1, -1,
6512 -1, -1, -1, 280, -1, -1, 160, 161, -1, -1,
6513 1397, 288, -1, -1, -1, -1, -1, -1, -1, -1,
6514 -1, -1, -1, -1, -1, 1412, -1, -1, -1, -1,
6515 -1, -1, -1, 1420, -1, 1422, -1, 191, -1, -1,
6516 -1, -1, -1, -1, -1, -1, -1, 201, -1, 203,
6517 -1, -1, 1439, -1, 1, -1, 3, 4, 5, 6,
6518 -1, 8, 9, -1, -1, -1, -1, -1, -1, -1,
6519 -1, -1, -1, -1, 1974, -1, -1, 231, -1, -1,
6520 -1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
6521 244, 1478, 1992, 370, -1, 372, 373, -1, -1, 376,
6522 254, -1, 256, -1, -1, -1, -1, -1, -1, -1,
6523 -1, 388, -1, -1, -1, -1, -1, -1, 65, -1,
6524 -1, -1, -1, -1, 71, 72, 73, -1, -1, -1,
6525 -1, -1, -1, -1, -1, -1, -1, 84, 85, -1,
6526 -1, -1, -1, -1, -1, -1, -1, 424, -1, -1,
6527 -1, 98, -1, -1, -1, 102, 103, 104, 105, 106,
6528 107, 108, 109, -1, 441, 112, 113, 114, -1, -1,
6529 117, -1, -1, -1, -1, 122, 123, 124, 125, 126,
6530 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
6531 -1, -1, -1, -1, -1, -1, 350, 1584, 352, -1,
6532 -1, 478, 1589, 1590, 1591, -1, -1, -1, 485, -1,
6533 -1, -1, -1, 1600, -1, -1, -1, -1, 1605, 1606,
6534 -1, -1, -1, -1, -1, 1612, -1, -1, -1, -1,
6535 -1, -1, -1, -1, -1, 389, -1, -1, -1, -1,
6536 -1, -1, 1629, 1630, -1, 1632, 1633, -1, -1, -1,
6537 -1, 1638, 1639, 1640, 1641, -1, -1, -1, -1, -1,
6538 -1, -1, -1, 1650, 1651, 1652, 1653, 1654, 1655, 1656,
6539 1657, -1, -1, 1660, -1, -1, -1, -1, -1, -1,
6540 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6541 1677, -1, -1, -1, -1, -1, -1, 574, -1, -1,
6542 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6543 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6544 597, 598, 599, 600, -1, -1, 480, -1, 482, -1,
6545 -1, -1, -1, -1, -1, -1, 490, 491, -1, -1,
6546 -1, -1, -1, 620, 621, -1, -1, 624, -1, -1,
6547 -1, -1, 629, 507, -1, 509, -1, -1, -1, -1,
6548 -1, -1, -1, 517, -1, 519, 643, -1, -1, -1,
6549 -1, -1, -1, 650, 651, 652, -1, 654, 655, -1,
6550 -1, 1768, 1769, -1, -1, -1, -1, -1, -1, 83,
6551 -1, -1, 669, -1, -1, 672, 550, -1, -1, -1,
6552 -1, 678, -1, -1, 681, -1, -1, -1, -1, -1,
6553 -1, -1, -1, 1800, 1801, -1, -1, -1, -1, -1,
6554 -1, -1, -1, -1, 1811, 119, -1, -1, -1, -1,
6555 -1, 125, -1, -1, -1, -1, -1, -1, -1, -1,
6556 -1, -1, -1, 137, -1, 139, -1, 141, -1, -1,
6557 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6558 -1, -1, -1, -1, -1, -1, -1, -1, -1, 163,
6559 624, -1, -1, -1, -1, -1, -1, -1, 1865, -1,
6560 -1, 1868, 1869, 760, -1, -1, -1, -1, -1, -1,
6561 767, -1, -1, 770, 771, -1, -1, 191, -1, -1,
6562 -1, -1, -1, -1, 44, -1, -1, -1, -1, -1,
6563 -1, -1, 789, 790, -1, -1, -1, -1, -1, -1,
6564 797, -1, -1, 800, 801, 802, -1, 804, -1, -1,
6565 -1, -1, -1, -1, -1, 75, 76, 231, -1, -1,
6566 234, 235, 236, -1, -1, -1, -1, -1, -1, -1,
6567 -1, -1, -1, 44, -1, -1, -1, -1, -1, -1,
6568 -1, 255, -1, -1, -1, -1, -1, -1, -1, -1,
6569 -1, -1, -1, -1, -1, -1, 116, 117, 855, -1,
6570 274, -1, -1, -1, 75, 76, 280, 1974, -1, 80,
6571 -1, 82, -1, -1, -1, 872, 873, -1, -1, -1,
6572 -1, -1, -1, 880, 881, 1992, -1, -1, -1, -1,
6573 -1, -1, -1, -1, -1, 892, -1, -1, -1, -1,
6574 160, 161, -1, -1, -1, 116, 117, -1, -1, 906,
6575 907, 908, -1, -1, -1, -1, -1, 914, -1, -1,
6576 -1, -1, -1, -1, -1, -1, -1, -1, 802, -1,
6577 -1, 191, -1, -1, -1, -1, -1, -1, -1, -1,
6578 -1, -1, -1, -1, -1, -1, -1, -1, -1, 160,
6579 161, -1, -1, -1, -1, -1, 370, -1, 372, 373,
6580 -1, -1, 376, -1, -1, -1, -1, -1, 842, -1,
6581 -1, 231, -1, -1, 388, -1, -1, -1, -1, -1,
6582 191, 855, -1, -1, 244, -1, -1, -1, 862, -1,
6583 201, -1, 203, -1, -1, -1, -1, -1, 995, -1,
6584 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6585 424, -1, -1, -1, -1, -1, -1, -1, 1015, -1,
6586 231, -1, -1, -1, -1, -1, -1, 441, -1, -1,
6587 -1, -1, -1, 244, -1, -1, -1, -1, -1, -1,
6588 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6589 -1, -1, -1, -1, -1, -1, -1, 1054, 1055, 1056,
6590 1057, -1, -1, -1, 478, -1, -1, -1, -1, -1,
6591 -1, 485, -1, -1, -1, -1, -1, 1074, -1, -1,
6592 -1, -1, -1, -1, -1, -1, -1, -1, 962, -1,
6593 350, 1088, 352, -1, -1, -1, -1, -1, -1, -1,
6594 -1, -1, -1, -1, -1, -1, -1, -1, 1105, 1106,
6595 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6596 -1, -1, -1, -1, -1, -1, -1, -1, 1125, 389,
6597 -1, -1, -1, -1, -1, 1132, -1, -1, -1, 350,
6598 -1, 352, -1, -1, -1, -1, -1, -1, -1, -1,
6599 -1, 1148, 1149, -1, -1, -1, -1, -1, 1155, 1156,
6600 -1, -1, 1159, 1160, 424, -1, -1, -1, -1, -1,
6601 -1, -1, -1, -1, -1, -1, -1, -1, 389, -1,
6602 -1, -1, -1, 597, 598, 599, 600, -1, -1, -1,
6603 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6604 -1, -1, -1, -1, -1, -1, 620, 621, -1, -1,
6605 -1, -1, 83, -1, -1, -1, 427, 428, -1, -1,
6606 480, -1, 482, -1, -1, -1, -1, -1, -1, 643,
6607 490, 491, -1, -1, -1, -1, 650, 651, -1, -1,
6608 654, 655, -1, -1, -1, -1, -1, 507, 119, 509,
6609 -1, -1, -1, -1, -1, -1, -1, 517, 672, 519,
6610 -1, -1, -1, -1, 678, -1, -1, 681, 139, 480,
6611 -1, 482, -1, -1, -1, -1, -1, -1, -1, 490,
6612 491, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6613 550, -1, 163, -1, -1, -1, 507, -1, 509, -1,
6614 -1, -1, -1, -1, -1, -1, 517, -1, 519, -1,
6615 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6616 191, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6617 -1, -1, -1, -1, -1, 1332, -1, -1, 1335, 550,
6618 -1, -1, -1, -1, -1, -1, 760, -1, -1, -1,
6619 -1, -1, -1, 767, -1, -1, 770, 771, -1, -1,
6620 231, -1, -1, 234, 235, 236, -1, -1, 83, -1,
6621 -1, -1, -1, -1, -1, 789, 790, -1, -1, 1376,
6622 -1, -1, -1, 797, 255, -1, 800, -1, -1, -1,
6623 804, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6624 1397, -1, -1, 274, 119, -1, -1, -1, -1, 280,
6625 -1, 1408, 1409, 1410, 1411, -1, -1, 288, -1, -1,
6626 -1, -1, -1, -1, 139, 1, -1, 3, 4, 5,
6627 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
6628 -1, 855, -1, -1, -1, -1, -1, -1, 163, -1,
6629 -1, -1, 28, -1, -1, -1, -1, -1, 872, 873,
6630 -1, -1, -1, -1, -1, -1, 880, 881, -1, -1,
6631 -1, 1468, -1, -1, -1, -1, 191, -1, 892, -1,
6632 1477, 1478, -1, -1, -1, -1, -1, -1, -1, 65,
6633 -1, -1, 906, 907, 908, 71, 72, 73, -1, 370,
6634 914, 372, 373, -1, -1, -1, -1, -1, 84, 85,
6635 -1, -1, -1, -1, -1, -1, 231, -1, -1, 234,
6636 235, 236, 98, -1, -1, -1, 102, 103, 104, 105,
6637 106, 107, 108, 109, -1, -1, 112, 797, 114, 115,
6638 255, 117, 802, -1, 1541, -1, 122, 123, -1, 125,
6639 126, 127, 128, 424, -1, -1, -1, -1, -1, 274,
6640 -1, -1, -1, -1, -1, 280, -1, -1, -1, -1,
6641 -1, -1, -1, 288, -1, -1, -1, -1, -1, -1,
6642 -1, 995, 842, -1, -1, -1, -1, 1584, -1, 849,
6643 850, 802, -1, 1590, 1468, 855, -1, -1, -1, -1,
6644 -1, -1, 862, -1, -1, -1, -1, 478, -1, -1,
6645 -1, 1608, 872, -1, 485, -1, -1, -1, -1, -1,
6646 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6647 -1, 842, -1, -1, -1, -1, -1, -1, 849, 850,
6648 1054, 1055, 1056, 1057, 855, -1, -1, -1, 859, -1,
6649 861, 862, -1, -1, 914, 370, -1, 372, 373, -1,
6650 1074, -1, -1, 1660, -1, -1, -1, -1, -1, -1,
6651 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1676,
6652 1677, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6653 -1, 1105, 1106, -1, -1, -1, -1, -1, -1, -1,
6654 -1, -1, 962, -1, -1, -1, -1, -1, -1, 424,
6655 -1, 1125, -1, -1, -1, -1, -1, -1, 1132, -1,
6656 -1, -1, -1, -1, -1, -1, 597, 598, 599, 600,
6657 -1, -1, -1, -1, 1148, 1149, -1, -1, -1, -1,
6658 -1, 1155, 1156, -1, -1, 1159, 1160, -1, -1, 620,
6659 621, 962, -1, -1, -1, -1, -1, -1, 629, -1,
6660 -1, -1, -1, 478, -1, -1, -1, -1, -1, -1,
6661 485, -1, 643, -1, -1, -1, -1, -1, -1, 650,
6662 651, 652, -1, 654, 655, -1, -1, -1, -1, 3,
6663 -1, -1, -1, -1, -1, -1, -1, -1, 669, -1,
6664 -1, 672, -1, 1800, -1, 1802, -1, 678, -1, -1,
6665 681, -1, -1, -1, 28, 29, 30, 31, 32, 33,
6666 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
6667 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
6668 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6669 -1, -1, 66, -1, -1, -1, -1, -1, -1, -1,
6670 74, 75, -1, -1, -1, 79, -1, -1, 82, 83,
6671 -1, 85, 86, 87, -1, -1, -1, -1, -1, 1876,
6672 1877, -1, 597, 598, 599, 600, 100, -1, -1, 760,
6673 -1, -1, -1, -1, -1, 109, 767, -1, 112, 770,
6674 771, -1, -1, -1, -1, 620, 621, -1, -1, 123,
6675 -1, 125, -1, -1, 629, -1, -1, -1, 1332, 790,
6676 -1, 1335, -1, -1, -1, -1, 797, -1, 643, -1,
6677 -1, 802, -1, 804, -1, 650, 651, 652, -1, 654,
6678 655, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6679 -1, -1, -1, -1, 669, -1, -1, 672, -1, -1,
6680 -1, -1, 1376, 678, -1, -1, 681, -1, -1, -1,
6681 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6682 -1, -1, -1, 1397, 855, -1, -1, -1, -1, -1,
6683 -1, -1, -1, -1, 1408, 1409, 1410, 1411, -1, -1,
6684 -1, 872, 873, -1, -1, -1, -1, -1, -1, 880,
6685 881, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6686 -1, 892, -1, -1, -1, -1, -1, -1, -1, -1,
6687 -1, -1, -1, -1, -1, 906, 907, 908, -1, -1,
6688 -1, -1, -1, 914, -1, 760, -1, -1, -1, -1,
6689 -1, -1, 767, -1, 1468, 770, 771, -1, 83, -1,
6690 -1, -1, -1, 1477, 1478, -1, -1, -1, -1, -1,
6691 -1, -1, -1, -1, -1, 790, -1, -1, -1, -1,
6692 -1, -1, 797, -1, -1, -1, -1, 802, -1, 804,
6693 1350, 1351, -1, -1, 119, -1, -1, -1, -1, -1,
6694 125, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6695 -1, -1, 137, -1, 139, -1, 141, -1, 1378, -1,
6696 1380, -1, 1382, -1, 995, -1, -1, 1541, -1, -1,
6697 -1, -1, -1, -1, -1, -1, -1, -1, 163, -1,
6698 855, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6699 -1, -1, -1, -1, -1, -1, -1, 872, 873, -1,
6700 -1, -1, -1, -1, -1, 880, 881, -1, -1, 1380,
6701 1584, 1382, -1, -1, -1, -1, 1590, 892, -1, -1,
6702 -1, -1, -1, 1054, 1055, 1056, 1057, -1, -1, -1,
6703 -1, 906, 907, 908, -1, -1, -1, -1, -1, 914,
6704 -1, -1, -1, 1074, -1, -1, 231, -1, 1468, 234,
6705 235, 236, -1, -1, -1, -1, -1, 1088, -1, -1,
6706 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6707 255, -1, -1, -1, 1105, 1106, -1, -1, -1, -1,
6708 -1, -1, -1, -1, -1, -1, 1660, -1, -1, 274,
6709 -1, -1, -1, -1, 1125, 280, -1, 1468, -1, -1,
6710 -1, 1132, 1676, 1677, -1, -1, -1, -1, -1, -1,
6711 -1, -1, -1, -1, -1, -1, -1, 1148, 1149, -1,
6712 995, -1, -1, -1, 1155, 1156, 3, -1, 1159, 1160,
6713 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6714 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6715 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
6716 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
6717 47, 48, 49, 50, -1, -1, -1, -1, -1, 1054,
6718 1055, 1056, 1057, -1, -1, 370, -1, 372, 373, 66,
6719 -1, 376, -1, -1, -1, -1, -1, 74, 75, 1074,
6720 -1, -1, 79, 388, -1, -1, -1, -1, 85, 86,
6721 87, -1, -1, 1088, -1, -1, -1, -1, -1, -1,
6722 -1, -1, -1, 100, -1, -1, 1800, -1, -1, -1,
6723 1105, 1106, 109, -1, -1, 112, -1, -1, -1, -1,
6724 -1, -1, 119, -1, -1, -1, 123, 1667, -1, 1669,
6725 1125, -1, -1, -1, -1, -1, 441, 1132, -1, 1679,
6726 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6727 -1, -1, -1, 1148, 1149, -1, -1, -1, -1, -1,
6728 1155, 1156, -1, -1, 1159, 1160, 1, -1, 3, -1,
6729 -1, -1, -1, 478, -1, -1, -1, -1, -1, -1,
6730 485, 1332, 1876, 1877, 1335, -1, -1, -1, -1, -1,
6731 -1, -1, -1, 28, 29, 30, 31, 32, 33, 34,
6732 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
6733 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
6734 -1, -1, -1, -1, -1, 1376, 83, -1, -1, -1,
6735 65, 66, -1, -1, -1, -1, -1, -1, -1, 74,
6736 75, -1, -1, -1, 79, -1, 1397, 82, 83, -1,
6737 85, 86, 87, -1, -1, -1, -1, 1408, 1409, 1410,
6738 1411, -1, 119, -1, 291, 100, -1, -1, 125, -1,
6739 -1, -1, -1, -1, 109, -1, -1, 112, 113, 306,
6740 137, -1, 139, -1, 141, -1, -1, -1, 123, -1,
6741 -1, -1, 597, 598, 599, 600, -1, -1, -1, -1,
6742 -1, -1, -1, -1, -1, -1, 163, -1, -1, -1,
6743 -1, -1, -1, -1, -1, 620, 621, 1468, -1, -1,
6744 -1, -1, -1, -1, -1, -1, 1477, 1478, -1, -1,
6745 -1, -1, -1, -1, -1, -1, -1, 1332, 643, -1,
6746 1335, -1, -1, -1, -1, 650, 651, -1, -1, 654,
6747 655, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6748 -1, -1, -1, -1, -1, -1, -1, 672, -1, -1,
6749 -1, -1, -1, 678, 231, -1, 681, 234, 235, 236,
6750 -1, 1376, -1, -1, -1, -1, -1, -1, -1, -1,
6751 1541, -1, -1, -1, -1, -1, -1, -1, 255, -1,
6752 -1, -1, 1397, -1, -1, -1, -1, -1, -1, -1,
6753 -1, -1, -1, 1408, 1409, 1410, 1411, 274, -1, -1,
6754 -1, -1, -1, 280, -1, -1, 236, -1, -1, -1,
6755 -1, -1, -1, 1584, -1, -1, -1, -1, -1, 1590,
6756 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6757 -1, -1, -1, -1, -1, -1, -1, 1608, -1, -1,
6758 -1, -1, 767, -1, -1, 770, 771, -1, -1, -1,
6759 -1, -1, -1, 1468, -1, -1, -1, -1, 288, -1,
6760 -1, -1, 1477, 1478, 789, -1, -1, -1, -1, -1,
6761 -1, -1, -1, -1, -1, 800, -1, -1, -1, -1,
6762 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1660,
6763 -1, -1, -1, 370, -1, 372, 373, -1, -1, 376,
6764 -1, -1, -1, -1, -1, 1676, 1677, -1, -1, -1,
6765 -1, 388, -1, -1, -1, -1, -1, -1, -1, -1,
6766 -1, -1, -1, -1, -1, 572, 1541, -1, -1, -1,
6767 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6768 -1, -1, -1, -1, -1, -1, -1, -1, 873, -1,
6769 -1, -1, -1, -1, -1, 880, 881, -1, -1, 389,
6770 -1, -1, -1, -1, 441, -1, -1, 892, -1, 1584,
6771 -1, -1, -1, -1, -1, 1590, -1, -1, -1, -1,
6772 -1, 906, 907, 908, -1, -1, -1, -1, -1, 914,
6773 -1, -1, -1, 1608, -1, -1, -1, -1, -1, -1,
6774 -1, 478, -1, -1, -1, -1, -1, -1, 485, -1,
6775 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6776 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1800,
6777 -1, 1802, -1, -1, -1, -1, -1, -1, -1, 686,
6778 -1, -1, -1, -1, -1, 1660, -1, -1, -1, -1,
6779 -1, -1, -1, 700, -1, -1, -1, -1, -1, -1,
6780 -1, 1676, 1677, -1, -1, -1, -1, -1, -1, -1,
6781 995, -1, 719, 720, 721, 722, 723, -1, -1, 726,
6782 727, -1, -1, -1, -1, 732, -1, -1, 735, -1,
6783 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6784 747, 748, 749, 750, 751, 1876, 1877, 754, 755, -1,
6785 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6786 597, 598, 599, 600, -1, 772, 773, -1, -1, 1054,
6787 1055, 1056, 1057, -1, -1, -1, -1, -1, -1, -1,
6788 -1, -1, 572, 620, 621, -1, -1, -1, -1, 1074,
6789 -1, -1, -1, -1, -1, -1, -1, 587, -1, -1,
6790 -1, -1, -1, -1, -1, -1, 643, 597, 598, 599,
6791 600, -1, -1, 650, 651, -1, -1, 654, 655, -1,
6792 1105, 1106, -1, -1, -1, 1800, -1, 1802, -1, -1,
6793 -1, -1, -1, -1, -1, 672, -1, -1, -1, -1,
6794 1125, 678, -1, -1, 681, -1, -1, 1132, 638, -1,
6795 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6796 -1, -1, -1, 1148, 1149, -1, -1, -1, -1, -1,
6797 1155, 1156, -1, 663, 1159, 1160, -1, -1, -1, -1,
6798 -1, -1, -1, 1, -1, 3, 4, 5, 6, -1,
6799 8, 9, -1, -1, -1, -1, -1, -1, 688, -1,
6800 -1, 1876, 1877, -1, -1, -1, -1, -1, -1, -1,
6801 28, -1, -1, -1, -1, -1, -1, -1, 567, -1,
6802 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6803 767, -1, -1, 770, 771, -1, 726, -1, -1, -1,
6804 -1, -1, -1, -1, 734, -1, -1, 65, -1, -1,
6805 599, 600, 789, 71, 72, 73, -1, -1, -1, -1,
6806 -1, -1, -1, 800, 754, -1, 84, 85, -1, -1,
6807 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6808 98, -1, 772, 773, 102, 103, 104, 105, 106, 107,
6809 108, 109, -1, -1, 112, 113, 114, -1, 288, 117,
6810 -1, -1, -1, 121, 122, 123, 1013, 125, 126, 127,
6811 128, -1, 802, -1, -1, -1, -1, -1, -1, -1,
6812 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6813 -1, -1, -1, -1, 1041, -1, 873, -1, -1, -1,
6814 -1, -1, 1049, 880, 881, -1, -1, 1332, -1, 1,
6815 1335, 3, 4, 5, 6, 892, 8, 9, -1, -1,
6816 -1, -1, -1, -1, -1, -1, -1, -1, -1, 906,
6817 907, 908, -1, -1, -1, -1, 28, 914, -1, -1,
6818 -1, -1, -1, -1, -1, -1, -1, -1, 1095, -1,
6819 -1, 1376, -1, -1, 1101, -1, -1, -1, -1, 389,
6820 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
6821 62, -1, 1397, 65, -1, -1, -1, -1, -1, 71,
6822 72, 73, -1, 1408, 1409, 1410, 1411, 79, -1, -1,
6823 -1, -1, 84, 85, 86, -1, 88, 89, 90, -1,
6824 -1, -1, -1, -1, -1, 1152, 98, -1, -1, -1,
6825 102, 103, 104, 105, 106, 107, 108, 109, 995, -1,
6826 112, 113, 114, 115, -1, 117, -1, 119, -1, 121,
6827 122, 123, -1, 125, 126, 127, 128, -1, -1, -1,
6828 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6829 -1, -1, 1477, 1478, -1, -1, -1, -1, -1, -1,
6830 -1, -1, -1, -1, -1, -1, -1, -1, 998, -1,
6831 -1, 1001, 1002, 1003, -1, 1005, -1, 1054, 1055, 1056,
6832 1057, -1, -1, 1013, -1, -1, -1, -1, -1, -1,
6833 -1, 1021, -1, -1, -1, -1, -1, 1074, 1028, -1,
6834 -1, -1, -1, -1, -1, -1, -1, -1, -1, 1039,
6835 -1, -1, -1, -1, -1, -1, 1541, 1047, -1, -1,
6836 -1, -1, 1052, -1, 1054, 1055, 1056, 1057, 1105, 1106,
6837 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6838 -1, -1, 572, -1, -1, -1, -1, -1, 1125, -1,
6839 -1, -1, -1, -1, -1, 1132, -1, 587, -1, 1584,
6840 -1, 591, -1, -1, -1, 1590, -1, 1097, -1, -1,
6841 -1, 1148, 1149, 1103, -1, -1, -1, -1, 1155, 1156,
6842 -1, -1, 1159, 1160, -1, -1, -1, -1, -1, -1,
6843 -1, -1, -1, -1, -1, -1, 1126, -1, -1, -1,
6844 -1, -1, -1, -1, -1, -1, -1, -1, 638, 998,
6845 -1, -1, 1001, -1, -1, -1, -1, -1, -1, -1,
6846 -1, 1010, 652, -1, -1, -1, -1, -1, -1, -1,
6847 -1, -1, -1, 663, 664, 1660, -1, -1, -1, -1,
6848 -1, 1171, -1, -1, -1, -1, -1, -1, -1, -1,
6849 1039, 1676, 1677, -1, -1, -1, -1, -1, 688, -1,
6850 -1, -1, -1, -1, -1, 1054, 1055, 1056, 1057, -1,
6851 -1, -1, -1, -1, -1, -1, 1, -1, 3, 4,
6852 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
6853 -1, -1, -1, -1, -1, -1, 726, 1227, -1, -1,
6854 -1, -1, -1, 28, 734, -1, -1, -1, -1, -1,
6855 -1, 1241, -1, -1, -1, -1, -1, -1, -1, -1,
6856 -1, -1, -1, -1, 754, -1, -1, -1, -1, -1,
6857 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6858 65, -1, 772, 773, -1, -1, 71, 72, 73, -1,
6859 -1, -1, -1, -1, -1, 1332, -1, -1, 1335, 84,
6860 85, -1, -1, -1, -1, -1, 1296, -1, -1, -1,
6861 -1, -1, 802, 98, -1, 1800, -1, 102, 103, 104,
6862 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
6863 -1, -1, 1322, -1, 119, -1, 1326, 122, 123, 1376,
6864 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
6865 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6866 1397, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6867 -1, 1408, 1409, 1410, 1411, -1, -1, -1, -1, -1,
6868 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6869 -1, 1876, 1877, -1, -1, -1, -1, -1, -1, -1,
6870 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6871 -1, -1, -1, -1, -1, -1, 1623, -1, -1, -1,
6872 -1, 1628, 1629, 1630, 1631, 1632, 1633, -1, 1635, -1,
6873 -1, 1638, 1639, 1640, 1641, -1, -1, -1, -1, -1,
6874 1477, 1478, -1, 1650, 1651, 1652, 1653, 1654, 1655, 1656,
6875 1657, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6876 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6877 -1, -1, -1, -1, -1, 0, -1, -1, -1, -1,
6878 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6879 -1, 1481, 1482, -1, -1, 1485, -1, 1487, -1, -1,
6880 -1, 1491, 1492, -1, 1541, -1, -1, 1497, 1498, -1,
6881 1500, -1, 1002, 1003, -1, 1005, -1, -1, 43, 44,
6882 1510, -1, 1512, 1013, -1, -1, -1, 1017, -1, -1,
6883 -1, 1021, -1, -1, -1, -1, -1, -1, 1028, 1029,
6884 -1, -1, -1, -1, -1, -1, -1, 1584, -1, -1,
6885 75, 76, -1, 1590, -1, 80, -1, 1047, 1048, 84,
6886 -1, -1, 1052, -1, -1, -1, 91, 92, 1775, -1,
6887 -1, -1, 1562, 1780, -1, -1, -1, -1, -1, -1,
6888 -1, -1, 1572, -1, 109, -1, -1, -1, -1, -1,
6889 -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
6890 -1, -1, -1, -1, -1, -1, -1, 1097, -1, -1,
6891 -1, -1, -1, 1103, -1, -1, -1, -1, -1, -1,
6892 -1, -1, -1, 1660, -1, -1, -1, -1, -1, -1,
6893 -1, -1, 1481, 1482, -1, 160, 1126, -1, -1, 1676,
6894 1677, 1490, -1, 1492, 1493, -1, -1, 1496, -1, -1,
6895 -1, -1, -1, -1, -1, 1504, -1, -1, 1507, -1,
6896 -1, -1, -1, -1, -1, -1, 191, -1, -1, -1,
6897 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
6898 -1, 1171, 1172, -1, -1, -1, -1, -1, -1, -1,
6899 -1, -1, -1, -1, -1, -1, -1, 28, -1, -1,
6900 -1, -1, -1, -1, -1, -1, 231, -1, -1, -1,
6901 -1, -1, -1, -1, -1, -1, -1, -1, -1, 244,
6902 -1, -1, -1, -1, -1, -1, -1, -1, -1, 254,
6903 -1, 256, -1, -1, 65, -1, -1, 1227, -1, 1229,
6904 71, 72, 73, -1, -1, -1, 1736, -1, 1738, -1,
6905 -1, 1241, 1242, 84, 85, 1745, -1, -1, -1, 1749,
6906 -1, 1751, -1, 1800, -1, -1, -1, 98, -1, -1,
6907 1760, 102, 103, 104, 105, 106, 107, 108, 109, -1,
6908 -1, 112, 113, 114, -1, -1, 117, -1, -1, -1,
6909 -1, 122, 123, 124, 125, 126, 127, 128, -1, -1,
6910 -1, -1, -1, -1, -1, -1, 1296, -1, 1298, -1,
6911 -1, -1, 1802, -1, -1, -1, -1, -1, -1, -1,
6912 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6913 -1, -1, 1322, -1, 1324, -1, 1326, -1, 1328, 1876,
6914 1877, -1, -1, -1, -1, 370, -1, 1, -1, 3,
6915 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
6916 -1, -1, -1, -1, 389, -1, -1, -1, -1, -1,
6917 -1, -1, -1, -1, 28, -1, -1, -1, -1, -1,
6918 -1, 1730, 1731, 1732, 1733, -1, -1, 1736, -1, -1,
6919 -1, -1, 1741, 1742, -1, 1744, -1, 1746, -1, 424,
6920 -1, -1, 427, 1893, 1894, -1, 1896, -1, 1898, 1758,
6921 -1, 65, 1902, 1903, 1904, -1, -1, 71, 72, 73,
6922 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6923 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
6924 -1, -1, -1, -1, 98, -1, -1, -1, 102, 103,
6925 104, 105, 106, 107, 108, 109, -1, -1, 112, 113,
6926 114, 115, -1, 117, -1, 490, 491, 1957, 122, 123,
6927 1960, 125, 126, 127, 128, -1, -1, -1, 1968, -1,
6928 -1, -1, 507, -1, 509, -1, -1, -1, -1, -1,
6929 -1, -1, 517, -1, -1, 1485, 1486, 1487, 1488, -1,
6930 -1, 1491, 1492, -1, -1, -1, -1, 1497, 1498, -1,
6931 1500, -1, 1502, -1, 2004, -1, -1, -1, -1, -1,
6932 1510, 1511, 1512, -1, -1, 550, -1, -1, -1, -1,
6933 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6934 -1, -1, -1, 1892, -1, -1, -1, -1, -1, -1,
6935 -1, -1, -1, 1902, -1, 1904, -1, -1, -1, -1,
6936 -1, -1, 1, -1, 3, 4, 5, 6, -1, 8,
6937 9, -1, 1562, 1563, -1, -1, -1, -1, -1, -1,
6938 -1, -1, 1572, 1573, -1, -1, -1, -1, -1, 28,
6939 -1, -1, -1, -1, -1, -1, -1, -1, -1, 624,
6940 -1, -1, -1, -1, -1, -1, 1955, 1956, -1, -1,
6941 1959, -1, 1961, -1, -1, 1964, -1, -1, -1, 1968,
6942 -1, -1, -1, -1, -1, 650, 65, -1, -1, 654,
6943 -1, -1, 71, 72, 73, -1, -1, -1, -1, -1,
6944 -1, -1, -1, -1, 669, 84, 85, -1, -1, -1,
6945 -1, -1, 2001, -1, -1, -1, -1, -1, -1, 98,
6946 -1, -1, -1, 102, 103, 104, 105, 106, 107, 108,
6947 109, -1, -1, 112, 113, 114, -1, -1, 117, -1,
6948 2029, -1, 121, 122, 123, -1, 125, 126, 127, 128,
6949 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6950 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6951 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6952 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6953 -1, -1, -1, -1, -1, -1, -1, -1, 1, -1,
6954 3, 4, 5, 6, -1, 8, 9, -1, 1738, 774,
6955 775, -1, -1, 1743, -1, 1745, 1746, -1, 1748, 1749,
6956 -1, 1751, -1, 1753, 789, 28, -1, -1, -1, 1759,
6957 1760, -1, 797, -1, -1, 800, 801, 802, -1, -1,
6958 -1, -1, -1, -1, -1, -1, -1, -1, -1, 52,
6959 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
6960 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
6961 73, -1, 1802, -1, -1, -1, 79, 842, -1, -1,
6962 -1, 84, 85, 86, 849, 88, 89, 90, -1, -1,
6963 855, -1, -1, -1, -1, 98, -1, 862, -1, 102,
6964 103, 104, 105, 106, 107, 108, 109, 872, -1, 112,
6965 113, 114, 115, -1, 117, -1, 119, -1, 121, 122,
6966 123, -1, 125, 126, 127, 128, -1, -1, -1, -1,
6967 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6968 -1, -1, -1, -1, -1, -1, -1, -1, -1, 914,
6969 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6970 -1, -1, -1, 1893, 1894, -1, 1896, 1897, 1898, 1,
6971 -1, -1, -1, 1903, 1904, 7, 8, 9, 10, 11,
6972 12, 13, 14, 15, 16, 17, -1, -1, -1, -1,
6973 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
6974 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
6975 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
6976 -1, -1, -1, -1, -1, -1, -1, 1957, 1958, -1,
6977 1960, 1961, -1, -1, 66, 1965, -1, -1, -1, -1,
6978 -1, -1, 74, 75, -1, -1, -1, 79, -1, -1,
6979 -1, -1, -1, 85, 86, 87, -1, -1, -1, -1,
6980 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
6981 -1, -1, -1, -1, 2004, -1, -1, 109, 110, 111,
6982 112, -1, -1, 115, 116, 117, 118, -1, 120, -1,
6983 -1, 123, -1, 125, 126, 127, -1, 129, 130, 131,
6984 132, 133, -1, -1, -1, -1, -1, -1, -1, -1,
6985 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6986 -1, -1, -1, 1088, -1, -1, -1, -1, -1, -1,
6987 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6988 1105, -1, 1107, -1, -1, -1, -1, -1, -1, -1,
6989 1115, -1, -1, -1, -1, -1, -1, -1, -1, -1,
6990 1125, -1, -1, -1, -1, 0, 1, 1132, 3, 4,
6991 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
6992 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
6993 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
6994 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
6995 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
6996 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
6997 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
6998 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
6999 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7000 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7001 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
7002 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
7003 125, 126, 127, 128, 129, 130, 131, 132, 133, -1,
7004 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7005 -1, -1, -1, -1, -1, -1, 0, 1, -1, 3,
7006 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,
7007 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,
7008 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
7009 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7010 44, 45, 46, 47, 48, 49, 50, -1, 52, 53,
7011 54, 55, 56, 57, 58, 59, 60, 61, 62, -1,
7012 -1, 65, 66, -1, 68, 1350, -1, 71, 72, 73,
7013 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
7014 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
7015 94, -1, 96, 1378, 98, 99, 100, -1, 102, 103,
7016 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
7017 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
7018 124, 125, 126, 127, 128, 129, 130, 131, 132, 133,
7019 -1, -1, 0, 1, -1, 3, 4, 5, 6, 7,
7020 8, 9, 10, 11, 12, 13, 14, 15, 16, 17,
7021 18, 19, 20, 21, 22, 23, 24, 25, 26, 27,
7022 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
7023 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
7024 48, 49, 50, 1468, 52, 53, 54, 55, 56, 57,
7025 58, 59, 60, 61, 62, -1, -1, 65, 66, -1,
7026 68, -1, -1, 71, 72, 73, 74, 75, -1, -1,
7027 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
7028 88, 89, 90, 91, 92, 93, 94, -1, 96, -1,
7029 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
7030 108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
7031 118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
7032 128, 129, 130, 131, 132, 133, -1, -1, -1, -1,
7033 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7034 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7035 -1, -1, -1, 0, 1, -1, 3, 4, 5, 6,
7036 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
7037 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
7038 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7039 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7040 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7041 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7042 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7043 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7044 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7045 -1, 98, 99, 100, 1679, 102, 103, 104, 105, 106,
7046 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
7047 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
7048 127, 128, 129, 130, 131, 132, 133, 0, 1, -1,
7049 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
7050 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
7051 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
7052 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
7053 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
7054 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
7055 -1, -1, 65, 66, -1, 68, -1, -1, 71, 72,
7056 73, 74, 75, -1, -1, 78, 79, 80, 81, 82,
7057 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
7058 93, 94, -1, 96, -1, 98, 99, 100, -1, 102,
7059 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
7060 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
7061 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
7062 133, 0, 1, -1, 3, 4, 5, 6, 7, 8,
7063 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
7064 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
7065 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
7066 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
7067 49, 50, -1, 52, 53, 54, 55, 56, 57, 58,
7068 59, 60, 61, 62, -1, -1, 65, 66, -1, 68,
7069 -1, -1, 71, 72, 73, 74, 75, -1, -1, 78,
7070 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
7071 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
7072 99, 100, -1, 102, 103, 104, 105, 106, 107, 108,
7073 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
7074 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
7075 129, 130, 131, 132, 133, 0, 1, -1, 3, 4,
7076 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
7077 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
7078 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
7079 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
7080 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
7081 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
7082 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
7083 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
7084 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7085 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7086 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
7087 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
7088 125, 126, 127, 128, 129, 130, 131, 132, 133, 0,
7089 1, -1, 3, 4, 5, 6, 7, 8, 9, 10,
7090 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
7091 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
7092 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
7093 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
7094 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
7095 61, 62, -1, -1, 65, 66, -1, 68, -1, -1,
7096 71, 72, 73, 74, 75, -1, -1, 78, 79, 80,
7097 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
7098 91, 92, 93, 94, -1, 96, -1, 98, 99, 100,
7099 -1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
7100 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
7101 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
7102 131, 132, 133, 0, 1, -1, 3, 4, 5, 6,
7103 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
7104 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
7105 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7106 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7107 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7108 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7109 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7110 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7111 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7112 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
7113 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
7114 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
7115 127, 128, 129, 130, 131, 132, 133, 0, 1, -1,
7116 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
7117 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
7118 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
7119 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
7120 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
7121 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
7122 -1, -1, 65, 66, -1, 68, -1, -1, 71, 72,
7123 73, 74, 75, -1, -1, 78, 79, 80, 81, 82,
7124 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
7125 93, 94, -1, 96, -1, 98, 99, 100, -1, 102,
7126 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
7127 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
7128 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
7129 133, 0, 1, -1, 3, 4, 5, 6, 7, 8,
7130 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
7131 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
7132 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
7133 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
7134 49, 50, -1, 52, 53, 54, 55, 56, 57, 58,
7135 59, 60, 61, 62, -1, -1, 65, 66, -1, 68,
7136 -1, -1, 71, 72, 73, 74, 75, -1, -1, 78,
7137 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
7138 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
7139 99, 100, -1, 102, 103, 104, 105, 106, 107, 108,
7140 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
7141 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
7142 129, 130, 131, 132, 133, 0, 1, -1, 3, 4,
7143 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
7144 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
7145 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
7146 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
7147 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
7148 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
7149 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
7150 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
7151 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7152 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7153 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
7154 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
7155 125, 126, 127, 128, 129, 130, 131, 132, 133, 0,
7156 1, -1, 3, 4, 5, 6, 7, 8, 9, 10,
7157 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
7158 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
7159 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
7160 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
7161 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
7162 61, 62, -1, -1, 65, 66, -1, 68, -1, -1,
7163 71, 72, 73, 74, 75, -1, -1, 78, 79, 80,
7164 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
7165 91, 92, 93, 94, -1, 96, -1, 98, 99, 100,
7166 -1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
7167 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
7168 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
7169 131, 132, 133, 0, 1, -1, 3, 4, 5, 6,
7170 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
7171 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
7172 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7173 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7174 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7175 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7176 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7177 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7178 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7179 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
7180 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
7181 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
7182 127, 128, 129, 130, 131, 132, 133, 0, 1, -1,
7183 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
7184 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
7185 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
7186 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
7187 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
7188 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
7189 -1, -1, 65, 66, -1, 68, -1, -1, 71, 72,
7190 73, 74, 75, -1, -1, 78, 79, 80, 81, 82,
7191 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
7192 93, 94, -1, 96, -1, 98, 99, 100, -1, 102,
7193 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
7194 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
7195 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
7196 133, 0, 1, -1, 3, 4, 5, 6, 7, 8,
7197 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
7198 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
7199 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
7200 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
7201 49, 50, -1, 52, 53, 54, 55, 56, 57, 58,
7202 59, 60, 61, 62, -1, -1, 65, 66, -1, 68,
7203 -1, -1, 71, 72, 73, 74, 75, -1, -1, 78,
7204 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
7205 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
7206 99, 100, -1, 102, 103, 104, 105, 106, 107, 108,
7207 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
7208 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
7209 129, 130, 131, 132, 133, 0, 1, -1, 3, 4,
7210 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
7211 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
7212 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
7213 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
7214 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
7215 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
7216 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
7217 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
7218 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7219 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7220 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
7221 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
7222 125, 126, 127, 128, 129, 130, 131, 132, 133, 0,
7223 1, -1, 3, 4, 5, 6, 7, 8, 9, 10,
7224 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
7225 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
7226 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
7227 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
7228 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
7229 61, 62, -1, -1, 65, 66, -1, 68, -1, -1,
7230 71, 72, 73, 74, 75, -1, -1, 78, 79, 80,
7231 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
7232 91, 92, 93, 94, -1, 96, -1, 98, 99, 100,
7233 -1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
7234 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
7235 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
7236 131, 132, 133, 0, 1, -1, 3, 4, 5, 6,
7237 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
7238 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
7239 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7240 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7241 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7242 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7243 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7244 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7245 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7246 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
7247 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
7248 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
7249 127, 128, 129, 130, 131, 132, 133, 0, 1, -1,
7250 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
7251 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
7252 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
7253 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
7254 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
7255 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
7256 -1, -1, 65, 66, -1, 68, -1, -1, 71, 72,
7257 73, 74, 75, -1, -1, 78, 79, 80, 81, 82,
7258 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
7259 93, 94, -1, 96, -1, 98, 99, 100, -1, 102,
7260 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
7261 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
7262 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
7263 133, 0, 1, -1, 3, 4, 5, 6, 7, 8,
7264 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
7265 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
7266 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
7267 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
7268 49, 50, -1, 52, 53, 54, 55, 56, 57, 58,
7269 59, 60, 61, 62, -1, -1, 65, 66, -1, 68,
7270 -1, -1, 71, 72, 73, 74, 75, -1, -1, 78,
7271 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
7272 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
7273 99, 100, -1, 102, 103, 104, 105, 106, 107, 108,
7274 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
7275 119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
7276 129, 130, 131, 132, 133, 0, 1, -1, 3, 4,
7277 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
7278 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
7279 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
7280 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
7281 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
7282 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
7283 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
7284 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
7285 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7286 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7287 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
7288 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
7289 125, 126, 127, 128, 129, 130, 131, 132, 133, 0,
7290 1, -1, 3, 4, 5, 6, 7, 8, 9, 10,
7291 11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
7292 21, 22, 23, 24, 25, 26, 27, 28, 29, 30,
7293 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
7294 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
7295 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
7296 61, 62, -1, -1, 65, 66, -1, 68, -1, -1,
7297 71, 72, 73, 74, 75, -1, -1, 78, 79, 80,
7298 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
7299 91, 92, 93, 94, -1, 96, -1, 98, 99, 100,
7300 -1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
7301 111, 112, 113, 114, 115, 116, 117, 118, 119, 120,
7302 121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
7303 131, 132, 133, 0, 1, -1, 3, 4, 5, 6,
7304 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
7305 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
7306 27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7307 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7308 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7309 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7310 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7311 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7312 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7313 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
7314 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
7315 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
7316 127, 128, 129, 130, 131, 132, 133, 0, 1, -1,
7317 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
7318 13, 14, 15, 16, 17, 18, 19, 20, 21, 22,
7319 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
7320 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
7321 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
7322 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
7323 -1, -1, 65, 66, -1, 68, -1, -1, 71, 72,
7324 73, 74, 75, -1, -1, 78, 79, 80, 81, 82,
7325 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
7326 93, 94, -1, 96, -1, 98, 99, 100, -1, 102,
7327 103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
7328 113, 114, 115, 116, 117, 118, 119, 120, 121, 122,
7329 123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
7330 133, 0, 1, -1, 3, 4, 5, 6, 7, 8,
7331 9, 10, 11, 12, 13, 14, 15, 16, 17, 18,
7332 19, 20, 21, 22, 23, 24, 25, 26, 27, 28,
7333 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
7334 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
7335 49, 50, -1, 52, 53, 54, 55, 56, 57, 58,
7336 59, 60, 61, 62, -1, -1, 65, 66, -1, 68,
7337 -1, -1, 71, 72, 73, 74, 75, -1, -1, 78,
7338 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
7339 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
7340 99, 100, -1, 102, 103, 104, 105, 106, 107, 108,
7341 109, 110, 111, 112, 113, 114, 115, 116, 117, 118,
7342 119, 120, 121, 122, 123, -1, 125, 126, 127, 128,
7343 129, 130, 131, 132, 133, 0, 1, -1, 3, 4,
7344 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
7345 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7346 -1, -1, -1, 28, 29, 30, 31, 32, 33, 34,
7347 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
7348 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
7349 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
7350 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
7351 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
7352 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7353 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7354 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
7355 115, -1, 117, 118, 119, 120, 121, 122, 123, -1,
7356 125, 126, 127, 128, 0, 1, -1, 3, 4, 5,
7357 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
7358 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7359 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
7360 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
7361 46, 47, 48, 49, 50, -1, 52, 53, 54, 55,
7362 56, 57, 58, 59, 60, 61, 62, -1, -1, 65,
7363 66, -1, 68, -1, -1, 71, 72, 73, 74, 75,
7364 -1, -1, 78, 79, 80, 81, 82, 83, 84, 85,
7365 86, 87, 88, 89, 90, 91, 92, 93, 94, -1,
7366 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
7367 106, 107, 108, 109, -1, -1, 112, 113, 114, 115,
7368 -1, 117, 118, 119, -1, 121, 122, 123, -1, 125,
7369 126, 127, 128, 0, 1, -1, 3, 4, 5, 6,
7370 -1, 8, 9, -1, -1, -1, -1, -1, -1, -1,
7371 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7372 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7373 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7374 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7375 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7376 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7377 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7378 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7379 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
7380 107, 108, 109, -1, -1, 112, 113, 114, 115, -1,
7381 117, 118, 119, -1, 121, 122, 123, -1, 125, 126,
7382 127, 128, 0, 1, -1, 3, 4, 5, 6, -1,
7383 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
7384 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7385 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
7386 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
7387 48, 49, 50, -1, 52, 53, 54, 55, 56, 57,
7388 58, 59, 60, 61, 62, -1, -1, 65, 66, -1,
7389 68, -1, -1, 71, 72, 73, 74, 75, -1, -1,
7390 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
7391 88, 89, 90, 91, 92, 93, 94, -1, 96, -1,
7392 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
7393 108, 109, -1, -1, 112, 113, 114, 115, -1, 117,
7394 118, 119, -1, 121, 122, 123, -1, 125, 126, 127,
7395 128, 0, 1, -1, 3, 4, 5, 6, -1, 8,
7396 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7397 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
7398 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
7399 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
7400 49, 50, -1, 52, 53, 54, 55, 56, 57, 58,
7401 59, 60, 61, 62, -1, -1, 65, 66, -1, 68,
7402 -1, -1, 71, 72, 73, 74, 75, -1, -1, 78,
7403 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
7404 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
7405 99, 100, -1, 102, 103, 104, 105, 106, 107, 108,
7406 109, -1, -1, 112, 113, 114, 115, -1, 117, 118,
7407 119, -1, 121, 122, 123, -1, 125, 126, 127, 128,
7408 0, 1, -1, 3, 4, 5, 6, -1, 8, 9,
7409 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7410 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
7411 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
7412 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
7413 50, -1, 52, 53, 54, 55, 56, 57, 58, 59,
7414 60, 61, 62, -1, -1, 65, 66, -1, 68, -1,
7415 -1, 71, 72, 73, 74, 75, -1, -1, 78, 79,
7416 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
7417 90, 91, 92, 93, 94, -1, 96, -1, 98, 99,
7418 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
7419 -1, -1, 112, 113, 114, 115, -1, 117, 118, 119,
7420 -1, 121, 122, 123, -1, 125, 126, 127, 128, 0,
7421 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
7422 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7423 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
7424 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
7425 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
7426 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
7427 61, 62, -1, -1, 65, 66, -1, 68, -1, -1,
7428 71, 72, 73, 74, 75, -1, -1, 78, 79, 80,
7429 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
7430 91, 92, 93, 94, -1, 96, -1, 98, 99, 100,
7431 -1, 102, 103, 104, 105, 106, 107, 108, 109, -1,
7432 -1, 112, 113, 114, 115, -1, 117, 118, 119, -1,
7433 121, 122, 123, -1, 125, 126, 127, 128, 0, 1,
7434 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
7435 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7436 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
7437 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
7438 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
7439 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
7440 62, -1, -1, 65, 66, -1, 68, -1, -1, 71,
7441 72, 73, 74, 75, -1, -1, 78, 79, 80, 81,
7442 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
7443 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
7444 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
7445 112, 113, 114, 115, -1, 117, 118, 119, -1, 121,
7446 122, 123, -1, 125, 126, 127, 128, 0, 1, -1,
7447 3, 4, 5, 6, -1, 8, 9, -1, -1, -1,
7448 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7449 -1, -1, -1, -1, -1, 28, 29, 30, 31, 32,
7450 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
7451 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
7452 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
7453 -1, -1, 65, 66, -1, 68, -1, -1, 71, 72,
7454 73, 74, 75, -1, -1, 78, 79, 80, 81, 82,
7455 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
7456 93, 94, -1, 96, -1, 98, 99, 100, -1, 102,
7457 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
7458 113, 114, 115, -1, 117, 118, 119, -1, 121, 122,
7459 123, -1, 125, 126, 127, 128, 0, 1, -1, 3,
7460 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
7461 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7462 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
7463 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7464 44, 45, 46, 47, 48, 49, 50, -1, 52, 53,
7465 54, 55, 56, 57, 58, 59, 60, 61, 62, -1,
7466 -1, 65, 66, -1, 68, -1, -1, 71, 72, 73,
7467 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
7468 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
7469 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
7470 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
7471 114, 115, -1, 117, 118, 119, -1, 121, 122, 123,
7472 -1, 125, 126, 127, 128, 0, 1, -1, 3, 4,
7473 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
7474 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7475 -1, -1, -1, 28, 29, 30, 31, 32, 33, 34,
7476 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
7477 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
7478 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
7479 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
7480 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
7481 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7482 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7483 105, 106, 107, 108, 109, -1, -1, 112, -1, 114,
7484 115, -1, 117, 118, 119, -1, 121, 122, 123, -1,
7485 125, 126, 127, 128, 0, 1, -1, 3, 4, 5,
7486 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
7487 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7488 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
7489 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
7490 46, 47, 48, 49, 50, -1, 52, 53, 54, 55,
7491 56, 57, 58, 59, 60, 61, 62, -1, -1, 65,
7492 66, -1, 68, -1, -1, 71, 72, 73, 74, 75,
7493 -1, -1, 78, 79, 80, 81, 82, 83, 84, 85,
7494 86, 87, 88, 89, 90, 91, 92, 93, 94, -1,
7495 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
7496 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
7497 -1, 117, 118, 119, -1, 121, 122, 123, -1, 125,
7498 126, 127, 128, 0, 1, -1, 3, 4, 5, 6,
7499 -1, 8, 9, -1, -1, -1, -1, -1, -1, -1,
7500 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7501 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7502 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7503 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7504 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7505 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7506 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7507 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7508 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
7509 107, 108, 109, -1, -1, 112, -1, 114, 115, -1,
7510 117, 118, 119, -1, 121, 122, 123, -1, 125, 126,
7511 127, 128, 0, 1, -1, 3, 4, 5, 6, -1,
7512 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
7513 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7514 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
7515 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
7516 48, 49, 50, -1, 52, 53, 54, 55, 56, 57,
7517 58, 59, 60, 61, 62, -1, -1, 65, 66, -1,
7518 68, -1, -1, 71, 72, 73, 74, 75, -1, -1,
7519 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
7520 88, 89, 90, 91, 92, 93, 94, -1, 96, -1,
7521 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
7522 108, 109, -1, -1, 112, -1, 114, 115, -1, 117,
7523 118, 119, -1, 121, 122, 123, -1, 125, 126, 127,
7524 128, 0, 1, -1, 3, 4, 5, 6, -1, 8,
7525 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7526 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
7527 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
7528 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
7529 49, 50, -1, 52, 53, 54, 55, 56, 57, 58,
7530 59, 60, 61, 62, -1, -1, 65, 66, -1, 68,
7531 -1, -1, 71, 72, 73, 74, 75, -1, -1, 78,
7532 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
7533 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
7534 99, 100, -1, 102, 103, 104, 105, 106, 107, 108,
7535 109, -1, -1, 112, -1, 114, 115, -1, 117, 118,
7536 119, -1, 121, 122, 123, -1, 125, 126, 127, 128,
7537 0, 1, -1, 3, 4, 5, 6, -1, 8, 9,
7538 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7539 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
7540 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
7541 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
7542 50, -1, 52, 53, 54, 55, 56, 57, 58, 59,
7543 60, 61, 62, -1, -1, 65, 66, -1, 68, -1,
7544 -1, 71, 72, 73, 74, 75, -1, -1, 78, 79,
7545 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
7546 90, 91, 92, 93, 94, -1, 96, -1, 98, 99,
7547 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
7548 -1, -1, 112, -1, 114, 115, -1, 117, 118, 119,
7549 -1, 121, 122, 123, -1, 125, 126, 127, 128, 0,
7550 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
7551 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7552 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
7553 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
7554 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
7555 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
7556 61, 62, -1, -1, 65, 66, -1, 68, -1, -1,
7557 71, 72, 73, 74, 75, -1, -1, 78, 79, 80,
7558 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
7559 91, 92, 93, 94, -1, 96, -1, 98, 99, 100,
7560 -1, 102, 103, 104, 105, 106, 107, 108, 109, -1,
7561 -1, 112, -1, 114, 115, -1, 117, 118, 119, -1,
7562 121, 122, 123, -1, 125, 126, 127, 128, 0, 1,
7563 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
7564 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7565 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
7566 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
7567 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
7568 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
7569 62, -1, -1, 65, 66, -1, 68, -1, -1, 71,
7570 72, 73, 74, 75, -1, -1, 78, 79, 80, 81,
7571 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
7572 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
7573 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
7574 112, -1, 114, 115, -1, 117, 118, 119, -1, 121,
7575 122, 123, -1, 125, 126, 127, 128, 0, 1, -1,
7576 3, 4, 5, 6, -1, 8, 9, -1, -1, -1,
7577 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7578 -1, -1, -1, -1, -1, 28, 29, 30, 31, 32,
7579 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
7580 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
7581 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
7582 -1, -1, 65, 66, -1, 68, -1, -1, 71, 72,
7583 73, 74, 75, -1, -1, 78, 79, 80, 81, 82,
7584 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
7585 93, 94, -1, 96, -1, 98, 99, 100, -1, 102,
7586 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
7587 -1, 114, 115, -1, 117, 118, 119, -1, 121, 122,
7588 123, -1, 125, 126, 127, 128, 0, 1, -1, 3,
7589 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
7590 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7591 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
7592 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7593 44, 45, 46, 47, 48, 49, 50, -1, 52, 53,
7594 54, 55, 56, 57, 58, 59, 60, 61, 62, -1,
7595 -1, 65, 66, -1, 68, -1, -1, 71, 72, 73,
7596 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
7597 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
7598 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
7599 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
7600 114, 115, -1, 117, 118, 119, -1, 121, 122, 123,
7601 -1, 125, 126, 127, 128, 0, 1, -1, 3, 4,
7602 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
7603 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7604 -1, -1, -1, 28, 29, 30, 31, 32, 33, 34,
7605 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
7606 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
7607 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
7608 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
7609 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
7610 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7611 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7612 105, 106, 107, 108, 109, -1, -1, 112, -1, 114,
7613 115, -1, 117, 118, 119, -1, 121, 122, 123, -1,
7614 125, 126, 127, 128, 0, 1, -1, 3, 4, 5,
7615 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
7616 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7617 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
7618 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
7619 46, 47, 48, 49, 50, -1, 52, 53, 54, 55,
7620 56, 57, 58, 59, 60, 61, 62, -1, -1, 65,
7621 66, -1, 68, -1, -1, 71, 72, 73, 74, 75,
7622 -1, -1, 78, 79, 80, 81, 82, 83, 84, 85,
7623 86, 87, 88, 89, 90, 91, 92, 93, 94, -1,
7624 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
7625 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
7626 -1, 117, 118, 119, -1, 121, 122, 123, -1, 125,
7627 126, 127, 128, 0, 1, -1, 3, 4, 5, 6,
7628 -1, 8, 9, -1, -1, -1, -1, -1, -1, -1,
7629 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7630 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7631 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7632 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7633 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7634 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7635 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7636 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7637 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
7638 107, 108, 109, -1, -1, 112, -1, 114, 115, -1,
7639 117, 118, 119, -1, 121, 122, 123, -1, 125, 126,
7640 127, 128, 0, 1, -1, 3, 4, 5, 6, -1,
7641 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
7642 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7643 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
7644 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
7645 48, 49, 50, -1, 52, 53, 54, 55, 56, 57,
7646 58, 59, 60, 61, 62, -1, -1, 65, 66, -1,
7647 68, -1, -1, 71, 72, 73, 74, 75, -1, -1,
7648 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
7649 88, 89, 90, 91, 92, 93, 94, -1, 96, -1,
7650 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
7651 108, 109, -1, -1, 112, -1, 114, 115, -1, 117,
7652 118, 119, -1, 121, 122, 123, -1, 125, 126, 127,
7653 128, 0, 1, -1, 3, 4, 5, 6, -1, 8,
7654 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7655 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
7656 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
7657 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
7658 49, 50, -1, 52, 53, 54, 55, 56, 57, 58,
7659 59, 60, 61, 62, -1, -1, 65, 66, -1, 68,
7660 -1, -1, 71, 72, 73, 74, 75, -1, -1, 78,
7661 79, 80, 81, 82, 83, 84, 85, 86, 87, 88,
7662 89, 90, 91, 92, 93, 94, -1, 96, -1, 98,
7663 99, 100, -1, 102, 103, 104, 105, 106, 107, 108,
7664 109, -1, -1, 112, -1, 114, 115, -1, 117, 118,
7665 119, -1, 121, 122, 123, -1, 125, 126, 127, 128,
7666 0, 1, -1, 3, 4, 5, 6, -1, 8, 9,
7667 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7668 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
7669 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
7670 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
7671 50, -1, 52, 53, 54, 55, 56, 57, 58, 59,
7672 60, 61, 62, -1, -1, 65, 66, -1, 68, -1,
7673 -1, 71, 72, 73, 74, 75, -1, -1, 78, 79,
7674 80, 81, 82, 83, 84, 85, 86, 87, 88, 89,
7675 90, 91, 92, 93, 94, -1, 96, -1, 98, 99,
7676 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
7677 -1, -1, 112, -1, 114, 115, -1, 117, 118, 119,
7678 -1, 121, 122, 123, -1, 125, 126, 127, 128, 0,
7679 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
7680 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7681 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
7682 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
7683 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
7684 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
7685 61, 62, -1, -1, 65, 66, -1, 68, -1, -1,
7686 71, 72, 73, 74, 75, -1, -1, 78, 79, 80,
7687 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
7688 91, 92, 93, 94, -1, 96, -1, 98, 99, 100,
7689 -1, 102, 103, 104, 105, 106, 107, 108, 109, -1,
7690 -1, 112, -1, 114, 115, -1, 117, 118, 119, -1,
7691 121, 122, 123, -1, 125, 126, 127, 128, 0, 1,
7692 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
7693 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7694 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
7695 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
7696 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
7697 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
7698 62, -1, -1, 65, 66, -1, 68, -1, -1, 71,
7699 72, 73, 74, 75, -1, -1, 78, 79, 80, 81,
7700 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,
7701 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
7702 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
7703 112, -1, 114, 115, -1, 117, 118, 119, -1, 121,
7704 122, 123, -1, 125, 126, 127, 128, 0, 1, -1,
7705 3, 4, 5, 6, -1, 8, 9, -1, -1, -1,
7706 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7707 -1, -1, -1, -1, -1, 28, 29, 30, 31, 32,
7708 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
7709 43, 44, 45, 46, 47, 48, 49, 50, -1, 52,
7710 53, 54, 55, 56, 57, 58, 59, 60, 61, 62,
7711 -1, -1, 65, 66, -1, 68, -1, -1, 71, 72,
7712 73, 74, 75, -1, -1, 78, 79, 80, 81, 82,
7713 83, 84, 85, 86, 87, 88, 89, 90, 91, 92,
7714 93, 94, -1, 96, -1, 98, 99, 100, -1, 102,
7715 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
7716 -1, 114, 115, -1, 117, 118, 119, -1, 121, 122,
7717 123, -1, 125, 126, 127, 128, 0, 1, -1, 3,
7718 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
7719 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7720 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
7721 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7722 44, 45, 46, 47, 48, 49, 50, -1, 52, 53,
7723 54, 55, 56, 57, 58, 59, 60, 61, 62, -1,
7724 -1, 65, 66, -1, 68, -1, -1, 71, 72, 73,
7725 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
7726 84, 85, 86, 87, 88, 89, 90, 91, 92, 93,
7727 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
7728 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
7729 114, 115, -1, 117, 118, 119, -1, 121, 122, 123,
7730 -1, 125, 126, 127, 128, 0, 1, -1, 3, 4,
7731 5, 6, -1, 8, 9, -1, -1, -1, -1, -1,
7732 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7733 -1, -1, -1, 28, 29, 30, 31, 32, 33, 34,
7734 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
7735 45, 46, 47, 48, 49, 50, -1, 52, 53, 54,
7736 55, 56, 57, 58, 59, 60, 61, 62, -1, -1,
7737 65, 66, -1, 68, -1, -1, 71, 72, 73, 74,
7738 75, -1, -1, 78, 79, 80, 81, 82, 83, 84,
7739 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
7740 -1, 96, -1, 98, 99, 100, -1, 102, 103, 104,
7741 105, 106, 107, 108, 109, -1, -1, 112, -1, 114,
7742 115, -1, 117, 118, 119, -1, 121, 122, 123, -1,
7743 125, 126, 127, 128, 0, 1, -1, 3, 4, 5,
7744 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
7745 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7746 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
7747 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
7748 46, 47, 48, 49, 50, -1, 52, 53, 54, 55,
7749 56, 57, 58, 59, 60, 61, 62, -1, -1, 65,
7750 66, -1, 68, -1, -1, 71, 72, 73, 74, 75,
7751 -1, -1, 78, 79, 80, 81, 82, 83, 84, 85,
7752 86, 87, 88, 89, 90, 91, 92, 93, 94, -1,
7753 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
7754 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
7755 -1, 117, 118, 119, -1, 121, 122, 123, -1, 125,
7756 126, 127, 128, 0, 1, -1, 3, 4, 5, 6,
7757 -1, 8, 9, -1, -1, -1, -1, -1, -1, -1,
7758 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7759 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
7760 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
7761 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
7762 57, 58, 59, 60, 61, 62, -1, -1, 65, 66,
7763 -1, 68, -1, -1, 71, 72, 73, 74, 75, -1,
7764 -1, 78, 79, 80, 81, 82, 83, 84, 85, 86,
7765 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
7766 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
7767 107, 108, 109, -1, -1, 112, -1, 114, 115, -1,
7768 117, 118, 119, -1, 121, 122, 123, -1, 125, 126,
7769 127, 128, 0, 1, -1, 3, 4, 5, 6, -1,
7770 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
7771 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7772 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
7773 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
7774 48, 49, 50, -1, -1, 53, -1, -1, -1, -1,
7775 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
7776 68, -1, -1, 71, 72, 73, 74, 75, -1, -1,
7777 78, 79, 80, 81, 82, 83, 84, 85, 86, 87,
7778 88, -1, -1, 91, 92, 93, 94, -1, 96, -1,
7779 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
7780 108, 109, -1, -1, 112, 113, 114, 115, -1, 117,
7781 118, 119, -1, -1, 122, 123, -1, 125, 126, 127,
7782 128, 1, -1, 3, 4, 5, 6, -1, 8, 9,
7783 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7784 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
7785 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
7786 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
7787 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7788 -1, -1, -1, -1, -1, 65, 66, -1, -1, -1,
7789 -1, 71, 72, 73, 74, 75, -1, -1, -1, 79,
7790 -1, -1, -1, -1, 84, 85, 86, 87, -1, -1,
7791 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
7792 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
7793 -1, -1, 112, -1, 114, 115, -1, 117, 118, 119,
7794 -1, -1, 122, 123, -1, 125, 126, 127, 128, 1,
7795 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
7796 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7797 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
7798 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
7799 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
7800 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7801 -1, -1, -1, 65, 66, -1, -1, -1, -1, 71,
7802 72, 73, 74, 75, -1, -1, -1, 79, -1, -1,
7803 -1, -1, 84, 85, 86, 87, -1, -1, -1, -1,
7804 -1, -1, -1, -1, -1, -1, 98, -1, 100, -1,
7805 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
7806 112, -1, 114, 115, -1, 117, 118, 119, -1, -1,
7807 122, 123, -1, 125, 126, 127, 128, 1, -1, 3,
7808 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
7809 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7810 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
7811 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7812 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
7813 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7814 -1, 65, 66, -1, -1, -1, -1, 71, 72, 73,
7815 74, 75, -1, -1, -1, 79, -1, -1, -1, -1,
7816 84, 85, 86, 87, -1, -1, -1, -1, -1, -1,
7817 -1, -1, -1, -1, 98, -1, 100, -1, 102, 103,
7818 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
7819 114, 115, -1, 117, 118, 119, -1, -1, 122, 123,
7820 -1, 125, 126, 127, 128, 1, -1, 3, 4, 5,
7821 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
7822 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7823 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
7824 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
7825 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
7826 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
7827 66, -1, -1, -1, -1, 71, 72, 73, 74, 75,
7828 -1, -1, -1, 79, -1, -1, -1, -1, 84, 85,
7829 86, 87, -1, -1, -1, -1, -1, -1, -1, -1,
7830 -1, -1, 98, -1, 100, -1, 102, 103, 104, 105,
7831 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
7832 -1, 117, 118, 119, -1, -1, 122, 123, -1, 125,
7833 126, 127, 128, 1, -1, 3, 4, 5, 6, -1,
7834 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
7835 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7836 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
7837 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
7838 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
7839 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
7840 -1, -1, -1, 71, 72, 73, 74, 75, -1, -1,
7841 -1, 79, -1, -1, -1, -1, 84, 85, 86, 87,
7842 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7843 98, -1, 100, -1, 102, 103, 104, 105, 106, 107,
7844 108, 109, -1, -1, 112, -1, 114, 115, -1, 117,
7845 118, 119, -1, -1, 122, 123, -1, 125, 126, 127,
7846 128, 1, -1, 3, 4, 5, 6, -1, 8, 9,
7847 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7848 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
7849 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
7850 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
7851 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7852 -1, -1, -1, -1, -1, 65, 66, -1, -1, -1,
7853 -1, 71, 72, 73, 74, 75, -1, -1, -1, 79,
7854 -1, -1, -1, -1, 84, 85, 86, 87, -1, -1,
7855 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
7856 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
7857 -1, -1, 112, -1, 114, 115, -1, 117, 118, 119,
7858 -1, -1, 122, 123, -1, 125, 126, 127, 128, 1,
7859 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
7860 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7861 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
7862 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
7863 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
7864 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7865 -1, -1, -1, 65, 66, -1, -1, -1, -1, 71,
7866 72, 73, 74, 75, -1, -1, -1, 79, -1, -1,
7867 -1, -1, 84, 85, 86, 87, -1, -1, -1, -1,
7868 -1, -1, -1, -1, -1, -1, 98, -1, 100, -1,
7869 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
7870 112, -1, 114, 115, -1, 117, 118, 119, -1, -1,
7871 122, 123, -1, 125, 126, 127, 128, 1, -1, 3,
7872 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
7873 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7874 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
7875 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7876 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
7877 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7878 -1, 65, 66, -1, -1, -1, -1, 71, 72, 73,
7879 74, 75, -1, -1, -1, 79, -1, -1, -1, -1,
7880 84, 85, 86, 87, -1, -1, -1, -1, -1, -1,
7881 -1, -1, -1, -1, 98, -1, 100, -1, 102, 103,
7882 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
7883 114, 115, -1, 117, 118, 119, -1, -1, 122, 123,
7884 -1, 125, 126, 127, 128, 1, -1, 3, 4, 5,
7885 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
7886 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7887 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
7888 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
7889 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
7890 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
7891 66, -1, -1, -1, -1, 71, 72, 73, 74, 75,
7892 -1, -1, -1, 79, -1, -1, -1, -1, 84, 85,
7893 86, 87, -1, -1, -1, -1, -1, -1, -1, -1,
7894 -1, -1, 98, -1, 100, -1, 102, 103, 104, 105,
7895 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
7896 -1, 117, 118, 119, -1, -1, 122, 123, -1, 125,
7897 126, 127, 128, 1, -1, 3, 4, 5, 6, -1,
7898 8, 9, -1, -1, -1, -1, -1, -1, -1, -1,
7899 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7900 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
7901 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
7902 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
7903 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
7904 -1, -1, -1, 71, 72, 73, 74, 75, -1, -1,
7905 -1, 79, -1, -1, -1, -1, 84, 85, 86, 87,
7906 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7907 98, -1, 100, -1, 102, 103, 104, 105, 106, 107,
7908 108, 109, -1, -1, 112, -1, 114, 115, -1, 117,
7909 118, 119, -1, -1, 122, 123, -1, 125, 126, 127,
7910 128, 1, -1, 3, 4, 5, 6, -1, 8, 9,
7911 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7912 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
7913 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
7914 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
7915 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7916 -1, -1, -1, -1, -1, 65, 66, -1, -1, -1,
7917 -1, 71, 72, 73, 74, 75, -1, -1, -1, 79,
7918 -1, -1, -1, -1, 84, 85, 86, 87, -1, -1,
7919 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
7920 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
7921 -1, -1, 112, -1, 114, 115, -1, 117, 118, 119,
7922 -1, -1, 122, 123, -1, 125, 126, 127, 128, 1,
7923 -1, 3, 4, 5, 6, -1, 8, 9, -1, -1,
7924 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7925 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
7926 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
7927 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
7928 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7929 -1, -1, -1, 65, 66, -1, -1, -1, -1, 71,
7930 72, 73, 74, 75, -1, -1, -1, 79, -1, -1,
7931 -1, -1, 84, 85, 86, 87, -1, -1, -1, -1,
7932 -1, -1, -1, -1, -1, -1, 98, -1, 100, -1,
7933 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
7934 112, -1, 114, 115, -1, 117, 118, 119, -1, -1,
7935 122, 123, -1, 125, 126, 127, 128, 1, -1, 3,
7936 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
7937 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7938 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
7939 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7940 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
7941 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7942 -1, 65, 66, -1, -1, -1, -1, 71, 72, 73,
7943 74, 75, -1, -1, -1, 79, -1, -1, -1, -1,
7944 84, 85, 86, 87, -1, -1, -1, -1, -1, -1,
7945 -1, -1, -1, -1, 98, -1, 100, -1, 102, 103,
7946 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
7947 114, 115, -1, 117, 118, 119, -1, -1, 122, 123,
7948 -1, 125, 126, 127, 128, 1, -1, 3, 4, 5,
7949 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
7950 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7951 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
7952 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
7953 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
7954 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
7955 66, -1, -1, -1, -1, 71, 72, 73, 74, 75,
7956 -1, -1, -1, 79, -1, -1, -1, -1, 84, 85,
7957 86, 87, -1, -1, -1, -1, -1, -1, -1, -1,
7958 -1, -1, 98, -1, 100, -1, 102, 103, 104, 105,
7959 106, 107, 108, 109, -1, -1, 112, 1, 114, 3,
7960 4, 5, 6, -1, 8, 9, 122, 123, -1, 125,
7961 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
7962 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
7963 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7964 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
7965 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7966 -1, 65, 66, -1, -1, -1, -1, 71, 72, 73,
7967 74, 75, -1, -1, -1, 79, -1, -1, -1, -1,
7968 84, 85, 86, 87, -1, -1, -1, -1, -1, -1,
7969 -1, -1, -1, -1, 98, -1, 100, -1, 102, 103,
7970 104, 105, 106, 107, 108, 109, -1, -1, 112, 1,
7971 114, 3, 4, 5, 6, -1, 8, 9, 122, 123,
7972 -1, 125, 126, 127, 128, -1, -1, -1, -1, -1,
7973 -1, -1, -1, -1, -1, -1, 28, -1, -1, -1,
7974 -1, -1, 34, 35, 36, 37, 38, 39, 40, 41,
7975 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
7976 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7977 -1, -1, -1, 65, 66, -1, -1, -1, -1, 71,
7978 72, 73, 74, 75, -1, -1, -1, 79, -1, -1,
7979 82, 83, 84, 85, 86, 87, -1, -1, -1, -1,
7980 -1, -1, -1, -1, -1, -1, 98, -1, 100, -1,
7981 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
7982 112, 113, 114, -1, -1, -1, -1, -1, -1, -1,
7983 122, 123, -1, 125, 126, 127, 128, 1, -1, 3,
7984 4, 5, 6, -1, 8, 9, -1, -1, -1, -1,
7985 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7986 -1, -1, -1, -1, 28, -1, -1, -1, -1, -1,
7987 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
7988 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
7989 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7990 -1, 65, 66, -1, -1, -1, -1, 71, 72, 73,
7991 74, 75, -1, -1, -1, 79, -1, -1, 82, 83,
7992 84, 85, 86, 87, -1, -1, -1, -1, -1, -1,
7993 -1, -1, -1, -1, 98, -1, 100, -1, 102, 103,
7994 104, 105, 106, 107, 108, 109, -1, -1, 112, 113,
7995 114, -1, -1, -1, -1, -1, -1, -1, 122, 123,
7996 -1, 125, 126, 127, 128, 1, -1, 3, 4, 5,
7997 6, -1, 8, 9, -1, -1, -1, -1, -1, -1,
7998 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
7999 -1, -1, 28, -1, -1, -1, -1, -1, 34, 35,
8000 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
8001 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
8002 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8003 66, -1, -1, -1, -1, 71, 72, 73, 74, 75,
8004 -1, -1, -1, 79, -1, -1, 82, 83, 84, 85,
8005 86, 87, -1, -1, -1, -1, -1, -1, -1, -1,
8006 -1, -1, 98, -1, 100, -1, 102, 103, 104, 105,
8007 106, 107, 108, 109, -1, -1, 112, 1, 114, 3,
8008 4, 5, 6, 119, 8, 9, 122, 123, -1, 125,
8009 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
8010 -1, -1, -1, -1, 28, -1, -1, -1, -1, -1,
8011 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
8012 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
8013 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8014 -1, 65, 66, -1, -1, -1, -1, 71, 72, 73,
8015 74, 75, -1, -1, -1, 79, -1, -1, 82, 83,
8016 84, 85, 86, 87, 1, -1, 3, 4, 5, 6,
8017 -1, 8, 9, -1, 98, -1, 100, -1, 102, 103,
8018 104, 105, 106, 107, 108, 109, -1, -1, 112, 113,
8019 114, 28, -1, -1, -1, -1, -1, -1, 122, 123,
8020 -1, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8021 -1, -1, -1, -1, -1, 52, 53, 54, 55, 56,
8022 57, 58, 59, 60, 61, 62, -1, -1, 65, -1,
8023 -1, -1, -1, -1, 71, 72, 73, -1, -1, -1,
8024 -1, -1, 79, -1, -1, -1, -1, 84, 85, 86,
8025 -1, 88, 89, 90, -1, -1, -1, -1, -1, -1,
8026 -1, 98, -1, -1, -1, 102, 103, 104, 105, 106,
8027 107, 108, 109, -1, -1, 112, -1, 114, 115, -1,
8028 -1, -1, 119, -1, 121, 122, 123, -1, 125, 126,
8029 127, 128, 1, -1, 3, 4, 5, 6, -1, 8,
8030 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8031 -1, -1, -1, -1, -1, -1, -1, -1, -1, 28,
8032 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8033 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8034 -1, -1, -1, 52, 53, 54, 55, 56, 57, 58,
8035 59, 60, 61, 62, -1, -1, 65, -1, -1, -1,
8036 -1, -1, 71, 72, 73, -1, -1, -1, -1, -1,
8037 79, -1, -1, -1, -1, 84, 85, 86, -1, 88,
8038 89, 90, -1, -1, -1, -1, -1, -1, -1, 98,
8039 -1, -1, -1, 102, 103, 104, 105, 106, 107, 108,
8040 109, -1, -1, 112, -1, 114, 115, -1, -1, -1,
8041 119, -1, 121, 122, 123, -1, 125, 126, 127, 128,
8042 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8043 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8044 -1, -1, -1, -1, -1, -1, -1, 28, -1, -1,
8045 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8046 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8047 -1, 52, 53, 54, 55, 56, 57, 58, 59, 60,
8048 61, 62, -1, -1, 65, -1, -1, -1, -1, -1,
8049 71, 72, 73, -1, -1, -1, -1, -1, 79, -1,
8050 -1, -1, -1, 84, 85, 86, -1, 88, 89, 90,
8051 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8052 -1, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8053 -1, 112, -1, 114, 115, -1, -1, -1, 119, -1,
8054 121, 122, 123, -1, 125, 126, 127, 128, 1, -1,
8055 3, 4, 5, 6, -1, 8, 9, -1, -1, -1,
8056 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8057 -1, -1, -1, -1, -1, 28, -1, -1, -1, -1,
8058 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8059 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8060 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8061 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
8062 73, 1, -1, 3, 4, 5, 6, -1, 8, 9,
8063 -1, 84, 85, -1, -1, -1, -1, -1, -1, -1,
8064 -1, -1, -1, -1, -1, 98, -1, -1, 28, 102,
8065 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
8066 113, 114, -1, -1, 117, -1, -1, -1, 121, 122,
8067 123, -1, 125, 126, 127, 128, -1, -1, -1, -1,
8068 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
8069 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
8070 -1, 8, 9, -1, 84, 85, -1, -1, -1, -1,
8071 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
8072 -1, 28, 102, 103, 104, 105, 106, 107, 108, 109,
8073 -1, -1, 112, 113, 114, -1, -1, 117, -1, -1,
8074 -1, 121, 122, 123, -1, 125, 126, 127, 128, -1,
8075 -1, -1, -1, -1, -1, -1, -1, -1, 65, -1,
8076 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
8077 4, 5, 6, -1, 8, 9, -1, 84, 85, -1,
8078 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8079 -1, 98, -1, -1, 28, 102, 103, 104, 105, 106,
8080 107, 108, 109, -1, -1, 112, 113, 114, 115, -1,
8081 117, -1, -1, -1, -1, 122, 123, -1, 125, 126,
8082 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
8083 -1, 65, -1, -1, -1, -1, -1, 71, 72, 73,
8084 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8085 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
8086 -1, -1, -1, -1, 98, -1, -1, 28, 102, 103,
8087 104, 105, 106, 107, 108, 109, -1, -1, 112, 113,
8088 114, -1, -1, 117, -1, -1, -1, -1, 122, 123,
8089 124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8090 -1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
8091 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
8092 8, 9, -1, 84, 85, -1, -1, -1, -1, -1,
8093 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8094 28, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8095 -1, 112, 113, 114, -1, -1, 117, -1, -1, -1,
8096 -1, 122, 123, 124, 125, 126, 127, 128, -1, -1,
8097 -1, -1, -1, -1, -1, -1, -1, 65, -1, -1,
8098 -1, -1, -1, 71, 72, 73, 1, -1, 3, 4,
8099 5, 6, -1, 8, 9, -1, 84, 85, -1, -1,
8100 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8101 98, -1, -1, 28, 102, 103, 104, 105, 106, 107,
8102 108, 109, -1, -1, 112, 113, 114, 115, -1, 117,
8103 -1, -1, -1, -1, 122, 123, -1, 125, 126, 127,
8104 128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8105 65, -1, -1, -1, -1, -1, 71, 72, 73, 1,
8106 -1, 3, 4, 5, 6, -1, 8, 9, -1, 84,
8107 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8108 -1, -1, -1, 98, -1, -1, 28, 102, 103, 104,
8109 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
8110 115, -1, 117, -1, -1, -1, -1, 122, 123, -1,
8111 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
8112 -1, -1, -1, 65, -1, -1, -1, -1, -1, 71,
8113 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
8114 9, -1, 84, 85, -1, -1, -1, -1, -1, -1,
8115 -1, -1, -1, -1, -1, -1, 98, -1, -1, 28,
8116 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8117 112, 113, 114, 115, -1, 117, -1, -1, -1, -1,
8118 122, 123, -1, 125, 126, 127, 128, -1, -1, -1,
8119 -1, -1, -1, -1, -1, -1, 65, -1, -1, -1,
8120 -1, -1, 71, 72, 73, 1, -1, 3, 4, 5,
8121 6, -1, 8, 9, -1, 84, 85, -1, -1, -1,
8122 -1, -1, -1, -1, -1, -1, -1, -1, -1, 98,
8123 -1, -1, 28, 102, 103, 104, 105, 106, 107, 108,
8124 109, -1, -1, 112, -1, 114, -1, -1, 117, 118,
8125 119, -1, -1, 122, 123, -1, 125, 126, 127, 128,
8126 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8127 -1, -1, -1, -1, -1, 71, 72, 73, 1, -1,
8128 3, 4, 5, 6, -1, 8, 9, -1, 84, 85,
8129 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8130 -1, -1, 98, -1, -1, 28, 102, 103, 104, 105,
8131 106, 107, 108, 109, -1, -1, 112, 113, 114, 115,
8132 -1, 117, -1, -1, -1, -1, 122, 123, -1, 125,
8133 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
8134 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
8135 73, 1, -1, 3, 4, 5, 6, -1, 8, 9,
8136 -1, 84, 85, -1, -1, -1, -1, -1, -1, -1,
8137 -1, -1, -1, -1, -1, 98, -1, -1, 28, 102,
8138 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
8139 113, 114, -1, -1, -1, -1, 119, -1, -1, 122,
8140 123, -1, 125, 126, 127, 128, -1, -1, -1, -1,
8141 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
8142 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
8143 -1, 8, 9, -1, 84, 85, -1, -1, -1, -1,
8144 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
8145 -1, 28, 102, 103, 104, 105, 106, 107, 108, 109,
8146 -1, -1, 112, -1, 114, 115, -1, -1, -1, 119,
8147 -1, -1, 122, 123, -1, 125, 126, 127, 128, -1,
8148 -1, -1, -1, -1, -1, -1, -1, -1, 65, -1,
8149 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
8150 4, 5, 6, -1, 8, 9, -1, 84, 85, -1,
8151 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8152 -1, 98, -1, -1, 28, 102, 103, 104, 105, 106,
8153 107, 108, 109, -1, -1, 112, 113, 114, -1, -1,
8154 117, -1, -1, -1, -1, 122, 123, -1, 125, 126,
8155 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
8156 -1, 65, -1, -1, -1, -1, -1, 71, 72, 73,
8157 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8158 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
8159 -1, -1, -1, -1, 98, -1, -1, 28, 102, 103,
8160 104, 105, 106, 107, 108, 109, -1, -1, 112, 113,
8161 114, 115, -1, -1, -1, -1, -1, -1, 122, 123,
8162 -1, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8163 -1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
8164 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
8165 8, 9, -1, 84, 85, -1, -1, -1, -1, -1,
8166 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8167 28, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8168 -1, 112, -1, 114, 115, -1, 117, -1, -1, -1,
8169 -1, 122, 123, -1, 125, 126, 127, 128, -1, -1,
8170 -1, -1, -1, -1, -1, -1, -1, 65, -1, -1,
8171 -1, -1, -1, 71, 72, 73, 1, -1, 3, 4,
8172 5, 6, -1, 8, 9, -1, 84, 85, -1, -1,
8173 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8174 98, -1, -1, 28, 102, 103, 104, 105, 106, 107,
8175 108, 109, -1, -1, 112, 113, 114, -1, -1, -1,
8176 -1, 119, -1, -1, 122, 123, -1, 125, 126, 127,
8177 128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8178 65, -1, -1, -1, -1, -1, 71, 72, 73, 1,
8179 -1, 3, 4, 5, 6, -1, 8, 9, -1, 84,
8180 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8181 -1, -1, -1, 98, -1, -1, 28, 102, 103, 104,
8182 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
8183 -1, -1, -1, -1, 119, -1, -1, 122, 123, -1,
8184 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
8185 -1, -1, -1, 65, -1, -1, -1, -1, -1, 71,
8186 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
8187 9, -1, 84, 85, -1, -1, -1, -1, -1, -1,
8188 -1, -1, -1, -1, -1, -1, 98, -1, -1, 28,
8189 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8190 112, 113, 114, -1, -1, 117, -1, -1, -1, -1,
8191 122, 123, -1, 125, 126, 127, 128, -1, -1, -1,
8192 -1, -1, -1, -1, -1, -1, 65, -1, -1, -1,
8193 -1, -1, 71, 72, 73, 1, -1, 3, 4, 5,
8194 6, -1, 8, 9, -1, 84, 85, -1, -1, -1,
8195 -1, -1, -1, -1, -1, -1, -1, -1, -1, 98,
8196 -1, -1, 28, 102, 103, 104, 105, 106, 107, 108,
8197 109, -1, -1, 112, -1, 114, -1, -1, 117, -1,
8198 -1, -1, -1, 122, 123, 124, 125, 126, 127, 128,
8199 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8200 -1, -1, -1, -1, -1, 71, 72, 73, 1, -1,
8201 3, 4, 5, 6, -1, 8, 9, -1, 84, 85,
8202 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8203 -1, -1, 98, -1, -1, 28, 102, 103, 104, 105,
8204 106, 107, 108, 109, -1, -1, 112, -1, 114, -1,
8205 -1, 117, -1, -1, -1, 121, 122, 123, -1, 125,
8206 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
8207 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
8208 73, 1, -1, 3, 4, 5, 6, -1, 8, 9,
8209 -1, 84, 85, -1, -1, -1, -1, -1, -1, -1,
8210 -1, -1, -1, -1, -1, 98, -1, -1, 28, 102,
8211 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
8212 -1, 114, -1, -1, 117, -1, -1, -1, -1, 122,
8213 123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
8214 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
8215 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
8216 -1, 8, 9, -1, 84, 85, -1, -1, -1, -1,
8217 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
8218 -1, 28, 102, 103, 104, 105, 106, 107, 108, 109,
8219 -1, -1, 112, -1, 114, -1, -1, 117, -1, -1,
8220 -1, 121, 122, 123, -1, 125, 126, 127, 128, -1,
8221 -1, -1, -1, -1, -1, -1, -1, -1, 65, -1,
8222 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
8223 4, 5, 6, -1, 8, 9, -1, 84, 85, -1,
8224 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8225 -1, 98, -1, -1, 28, 102, 103, 104, 105, 106,
8226 107, 108, 109, -1, -1, 112, -1, 114, -1, -1,
8227 117, -1, -1, -1, 121, 122, 123, -1, 125, 126,
8228 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
8229 -1, 65, -1, -1, -1, -1, -1, 71, 72, 73,
8230 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8231 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
8232 -1, -1, -1, -1, 98, -1, -1, 28, 102, 103,
8233 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8234 114, -1, -1, 117, -1, -1, -1, 121, 122, 123,
8235 -1, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8236 -1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
8237 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
8238 8, 9, -1, 84, 85, -1, -1, -1, -1, -1,
8239 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8240 28, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8241 -1, 112, 113, 114, -1, -1, 117, -1, -1, -1,
8242 -1, 122, 123, -1, 125, 126, 127, 128, -1, -1,
8243 -1, -1, -1, -1, -1, -1, -1, 65, -1, -1,
8244 -1, -1, -1, 71, 72, 73, 1, -1, 3, 4,
8245 5, 6, -1, 8, 9, -1, 84, 85, -1, -1,
8246 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8247 98, -1, -1, 28, 102, 103, 104, 105, 106, 107,
8248 108, 109, -1, -1, 112, 113, 114, -1, -1, 117,
8249 -1, -1, -1, -1, 122, 123, -1, 125, 126, 127,
8250 128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8251 65, -1, -1, -1, -1, -1, 71, 72, 73, 1,
8252 -1, 3, 4, 5, 6, -1, 8, 9, -1, 84,
8253 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8254 -1, -1, -1, 98, -1, -1, 28, 102, 103, 104,
8255 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
8256 -1, -1, 117, -1, -1, -1, -1, 122, 123, -1,
8257 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
8258 -1, -1, -1, 65, -1, -1, -1, -1, -1, 71,
8259 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
8260 9, -1, 84, 85, -1, -1, -1, -1, -1, -1,
8261 -1, -1, -1, -1, -1, -1, 98, -1, -1, 28,
8262 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8263 112, 113, 114, -1, -1, 117, -1, -1, -1, -1,
8264 122, 123, -1, 125, 126, 127, 128, -1, -1, -1,
8265 -1, -1, -1, -1, -1, -1, 65, -1, -1, -1,
8266 -1, -1, 71, 72, 73, 1, -1, 3, 4, 5,
8267 6, -1, 8, 9, -1, 84, 85, -1, -1, -1,
8268 -1, -1, -1, -1, -1, -1, -1, -1, -1, 98,
8269 -1, -1, 28, 102, 103, 104, 105, 106, 107, 108,
8270 109, -1, -1, 112, 113, 114, 115, -1, -1, -1,
8271 -1, -1, -1, 122, 123, -1, 125, 126, 127, 128,
8272 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8273 -1, -1, -1, -1, -1, 71, 72, 73, 1, -1,
8274 3, 4, 5, 6, -1, 8, 9, -1, 84, 85,
8275 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8276 -1, -1, 98, -1, -1, 28, 102, 103, 104, 105,
8277 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
8278 -1, 117, -1, -1, -1, -1, 122, 123, -1, 125,
8279 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
8280 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
8281 73, 1, -1, 3, 4, 5, 6, -1, 8, 9,
8282 -1, 84, 85, -1, -1, -1, -1, -1, -1, -1,
8283 -1, -1, -1, -1, -1, 98, -1, -1, 28, 102,
8284 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
8285 113, 114, 115, -1, -1, -1, -1, -1, -1, 122,
8286 123, -1, 125, 126, 127, 128, -1, -1, -1, -1,
8287 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
8288 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
8289 -1, 8, 9, -1, 84, 85, -1, -1, -1, -1,
8290 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
8291 -1, 28, 102, 103, 104, 105, 106, 107, 108, 109,
8292 -1, -1, 112, -1, 114, -1, -1, 117, -1, -1,
8293 -1, -1, 122, 123, 124, 125, 126, 127, 128, -1,
8294 -1, -1, -1, -1, -1, -1, -1, -1, 65, -1,
8295 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
8296 4, 5, 6, -1, 8, 9, -1, 84, 85, -1,
8297 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8298 -1, 98, -1, -1, 28, 102, 103, 104, 105, 106,
8299 107, 108, 109, -1, -1, 112, -1, 114, -1, -1,
8300 117, -1, -1, -1, -1, 122, 123, 124, 125, 126,
8301 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
8302 -1, 65, -1, -1, -1, -1, -1, 71, 72, 73,
8303 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8304 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
8305 -1, -1, -1, -1, 98, -1, -1, 28, 102, 103,
8306 104, 105, 106, 107, 108, 109, -1, -1, 112, 113,
8307 114, -1, -1, 117, -1, -1, -1, -1, 122, 123,
8308 -1, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8309 -1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
8310 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
8311 8, 9, -1, 84, 85, -1, -1, -1, -1, -1,
8312 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8313 28, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8314 -1, 112, 113, 114, -1, -1, 117, -1, -1, -1,
8315 -1, 122, 123, -1, 125, 126, 127, 128, -1, -1,
8316 -1, -1, -1, -1, -1, -1, -1, 65, -1, -1,
8317 -1, -1, -1, 71, 72, 73, 1, -1, 3, 4,
8318 5, 6, -1, 8, 9, -1, 84, 85, -1, -1,
8319 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8320 98, -1, -1, 28, 102, 103, 104, 105, 106, 107,
8321 108, 109, -1, -1, 112, 113, 114, 115, -1, -1,
8322 -1, -1, -1, -1, 122, 123, -1, 125, 126, 127,
8323 128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8324 65, -1, -1, -1, -1, -1, 71, 72, 73, 1,
8325 -1, 3, 4, 5, 6, -1, 8, 9, -1, 84,
8326 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8327 -1, -1, -1, 98, -1, -1, 28, 102, 103, 104,
8328 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
8329 -1, -1, 117, -1, -1, -1, -1, 122, 123, -1,
8330 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
8331 -1, -1, -1, 65, -1, -1, -1, -1, -1, 71,
8332 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
8333 9, -1, 84, 85, -1, -1, -1, -1, -1, -1,
8334 -1, -1, -1, -1, -1, -1, 98, -1, -1, 28,
8335 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8336 112, 113, 114, -1, -1, 117, -1, -1, -1, -1,
8337 122, 123, -1, 125, 126, 127, 128, -1, -1, -1,
8338 -1, -1, -1, -1, -1, -1, 65, -1, -1, -1,
8339 -1, -1, 71, 72, 73, 1, -1, 3, 4, 5,
8340 6, -1, 8, 9, -1, 84, 85, -1, -1, -1,
8341 -1, -1, -1, -1, -1, -1, -1, -1, -1, 98,
8342 -1, -1, 28, 102, 103, 104, 105, 106, 107, 108,
8343 109, -1, -1, 112, 113, 114, -1, -1, 117, -1,
8344 -1, -1, -1, 122, 123, -1, 125, 126, 127, 128,
8345 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8346 -1, -1, -1, -1, -1, 71, 72, 73, 1, -1,
8347 3, 4, 5, 6, -1, 8, 9, -1, 84, 85,
8348 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8349 -1, -1, 98, -1, -1, 28, 102, 103, 104, 105,
8350 106, 107, 108, 109, -1, -1, 112, -1, 114, -1,
8351 -1, -1, 118, 119, -1, -1, 122, 123, -1, 125,
8352 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
8353 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
8354 73, 1, -1, 3, 4, 5, 6, -1, 8, 9,
8355 -1, 84, 85, -1, -1, -1, -1, -1, -1, -1,
8356 -1, -1, -1, -1, -1, 98, -1, -1, 28, 102,
8357 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
8358 113, 114, -1, -1, 117, -1, -1, -1, -1, 122,
8359 123, -1, 125, 126, 127, 128, -1, -1, -1, -1,
8360 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
8361 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
8362 -1, 8, 9, -1, 84, 85, -1, -1, -1, -1,
8363 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
8364 -1, 28, 102, 103, 104, 105, 106, 107, 108, 109,
8365 -1, -1, 112, -1, 114, -1, -1, -1, -1, -1,
8366 -1, -1, 122, 123, 124, 125, 126, 127, 128, -1,
8367 -1, -1, -1, -1, -1, -1, -1, -1, 65, -1,
8368 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
8369 4, 5, 6, -1, 8, 9, -1, 84, 85, -1,
8370 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8371 -1, 98, -1, -1, 28, 102, 103, 104, 105, 106,
8372 107, 108, 109, -1, -1, 112, -1, 114, -1, -1,
8373 -1, -1, 119, -1, -1, 122, 123, -1, 125, 126,
8374 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
8375 -1, 65, -1, -1, -1, -1, -1, 71, 72, 73,
8376 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8377 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
8378 -1, -1, -1, -1, 98, -1, -1, 28, 102, 103,
8379 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8380 114, -1, -1, -1, -1, 119, -1, -1, 122, 123,
8381 -1, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8382 -1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
8383 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
8384 8, 9, -1, 84, 85, -1, -1, -1, -1, -1,
8385 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8386 28, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8387 -1, 112, -1, 114, -1, -1, -1, -1, -1, -1,
8388 -1, 122, 123, 124, 125, 126, 127, 128, -1, -1,
8389 -1, -1, -1, -1, -1, -1, -1, 65, -1, -1,
8390 -1, -1, -1, 71, 72, 73, 1, -1, 3, 4,
8391 5, 6, -1, 8, 9, -1, 84, 85, -1, -1,
8392 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8393 98, -1, -1, 28, 102, 103, 104, 105, 106, 107,
8394 108, 109, -1, -1, 112, -1, 114, -1, -1, -1,
8395 -1, -1, -1, 121, 122, 123, -1, 125, 126, 127,
8396 128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8397 65, -1, -1, -1, -1, -1, 71, 72, 73, 1,
8398 -1, 3, 4, 5, 6, -1, 8, 9, -1, 84,
8399 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8400 -1, -1, -1, 98, -1, -1, 28, 102, 103, 104,
8401 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
8402 -1, -1, -1, -1, -1, -1, -1, 122, 123, -1,
8403 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
8404 -1, -1, -1, 65, -1, -1, -1, -1, -1, 71,
8405 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
8406 9, -1, 84, 85, -1, -1, -1, -1, -1, -1,
8407 -1, -1, -1, -1, -1, -1, 98, -1, -1, 28,
8408 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8409 112, -1, 114, -1, -1, -1, -1, 119, -1, -1,
8410 122, 123, -1, 125, 126, 127, 128, -1, -1, -1,
8411 -1, -1, -1, -1, -1, -1, 65, -1, -1, -1,
8412 -1, -1, 71, 72, 73, 1, -1, 3, 4, 5,
8413 6, -1, 8, 9, -1, 84, 85, -1, -1, -1,
8414 -1, -1, -1, -1, -1, -1, -1, -1, -1, 98,
8415 -1, -1, 28, 102, 103, 104, 105, 106, 107, 108,
8416 109, -1, -1, 112, -1, 114, -1, -1, -1, -1,
8417 119, -1, -1, 122, 123, -1, 125, 126, 127, 128,
8418 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8419 -1, -1, -1, -1, -1, 71, 72, 73, 1, -1,
8420 3, 4, 5, 6, -1, 8, 9, -1, 84, 85,
8421 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8422 -1, -1, 98, -1, -1, 28, 102, 103, 104, 105,
8423 106, 107, 108, 109, -1, -1, 112, -1, 114, -1,
8424 -1, -1, -1, 119, -1, -1, 122, 123, -1, 125,
8425 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
8426 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
8427 73, 1, -1, 3, 4, 5, 6, -1, 8, 9,
8428 -1, 84, 85, -1, -1, -1, -1, -1, -1, -1,
8429 -1, -1, -1, -1, -1, 98, -1, -1, 28, 102,
8430 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
8431 -1, 114, -1, -1, -1, -1, 119, -1, -1, 122,
8432 123, -1, 125, 126, 127, 128, -1, -1, -1, -1,
8433 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
8434 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
8435 -1, 8, 9, -1, 84, 85, -1, -1, -1, -1,
8436 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
8437 -1, 28, 102, 103, 104, 105, 106, 107, 108, 109,
8438 -1, -1, 112, -1, 114, -1, -1, -1, -1, 119,
8439 -1, -1, 122, 123, -1, 125, 126, 127, 128, -1,
8440 -1, -1, -1, -1, -1, -1, -1, -1, 65, -1,
8441 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
8442 4, 5, 6, -1, 8, 9, -1, 84, 85, -1,
8443 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8444 -1, 98, -1, -1, 28, 102, 103, 104, 105, 106,
8445 107, 108, 109, -1, -1, 112, -1, 114, -1, -1,
8446 -1, -1, 119, -1, -1, 122, 123, -1, 125, 126,
8447 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
8448 -1, 65, -1, -1, -1, -1, -1, 71, 72, 73,
8449 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8450 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
8451 -1, -1, -1, -1, 98, -1, -1, 28, 102, 103,
8452 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8453 114, -1, -1, -1, -1, -1, -1, -1, 122, 123,
8454 124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8455 -1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
8456 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
8457 8, 9, -1, 84, 85, -1, -1, -1, -1, -1,
8458 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8459 28, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8460 -1, 112, 113, 114, -1, -1, -1, -1, -1, -1,
8461 -1, 122, 123, -1, 125, 126, 127, 128, -1, -1,
8462 -1, -1, -1, -1, -1, -1, -1, 65, -1, -1,
8463 -1, -1, -1, 71, 72, 73, 1, -1, 3, 4,
8464 5, 6, -1, 8, 9, -1, 84, 85, -1, -1,
8465 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8466 98, -1, -1, 28, 102, 103, 104, 105, 106, 107,
8467 108, 109, -1, -1, 112, -1, 114, -1, -1, -1,
8468 -1, -1, -1, 121, 122, 123, -1, 125, 126, 127,
8469 128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8470 65, -1, -1, -1, -1, -1, 71, 72, 73, 1,
8471 -1, 3, 4, 5, 6, -1, 8, 9, -1, 84,
8472 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8473 -1, -1, -1, 98, -1, -1, 28, 102, 103, 104,
8474 105, 106, 107, 108, 109, -1, -1, 112, -1, 114,
8475 -1, -1, -1, -1, 119, -1, -1, 122, 123, -1,
8476 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
8477 -1, -1, -1, 65, -1, -1, -1, -1, -1, 71,
8478 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
8479 9, -1, 84, 85, -1, -1, -1, -1, -1, -1,
8480 -1, -1, -1, -1, -1, -1, 98, -1, -1, 28,
8481 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8482 112, -1, 114, -1, -1, -1, -1, 119, -1, -1,
8483 122, 123, -1, 125, 126, 127, 128, -1, -1, -1,
8484 -1, -1, -1, -1, -1, -1, 65, -1, -1, -1,
8485 -1, -1, 71, 72, 73, 1, -1, 3, 4, 5,
8486 6, -1, 8, 9, -1, 84, 85, -1, -1, -1,
8487 -1, -1, -1, -1, -1, -1, -1, -1, -1, 98,
8488 -1, -1, 28, 102, 103, 104, 105, 106, 107, 108,
8489 109, -1, -1, 112, -1, 114, -1, -1, -1, -1,
8490 119, -1, -1, 122, 123, -1, 125, 126, 127, 128,
8491 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8492 -1, -1, -1, -1, -1, 71, 72, 73, 1, -1,
8493 3, 4, 5, 6, -1, 8, 9, -1, 84, 85,
8494 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8495 -1, -1, 98, -1, -1, 28, 102, 103, 104, 105,
8496 106, 107, 108, 109, -1, -1, 112, -1, 114, -1,
8497 -1, -1, -1, 119, -1, -1, 122, 123, -1, 125,
8498 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
8499 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
8500 73, 1, -1, 3, 4, 5, 6, -1, 8, 9,
8501 -1, 84, 85, -1, -1, -1, -1, -1, -1, -1,
8502 -1, -1, -1, -1, -1, 98, -1, -1, 28, 102,
8503 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
8504 -1, 114, -1, -1, -1, -1, 119, -1, -1, 122,
8505 123, -1, 125, 126, 127, 128, -1, -1, -1, -1,
8506 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
8507 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
8508 -1, 8, 9, -1, 84, 85, -1, -1, -1, -1,
8509 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
8510 -1, 28, 102, 103, 104, 105, 106, 107, 108, 109,
8511 -1, -1, 112, 113, 114, -1, -1, -1, -1, -1,
8512 -1, -1, 122, 123, -1, 125, 126, 127, 128, -1,
8513 -1, -1, -1, -1, -1, -1, -1, -1, 65, -1,
8514 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
8515 4, 5, 6, -1, 8, 9, -1, 84, 85, -1,
8516 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8517 -1, 98, -1, -1, 28, 102, 103, 104, 105, 106,
8518 107, 108, 109, -1, -1, 112, -1, 114, -1, -1,
8519 -1, -1, 119, -1, -1, 122, 123, -1, 125, 126,
8520 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
8521 -1, 65, -1, -1, -1, -1, -1, 71, 72, 73,
8522 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8523 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
8524 -1, -1, -1, -1, 98, -1, -1, 28, 102, 103,
8525 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8526 114, -1, -1, -1, -1, 119, -1, -1, 122, 123,
8527 -1, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8528 -1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
8529 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
8530 8, 9, -1, 84, 85, -1, -1, -1, -1, -1,
8531 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8532 28, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8533 -1, 112, -1, 114, -1, -1, -1, -1, 119, -1,
8534 -1, 122, 123, -1, 125, 126, 127, 128, -1, -1,
8535 -1, -1, -1, -1, -1, -1, -1, 65, -1, -1,
8536 -1, -1, -1, 71, 72, 73, 1, -1, 3, 4,
8537 5, 6, -1, 8, 9, -1, 84, 85, -1, -1,
8538 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8539 98, -1, -1, 28, 102, 103, 104, 105, 106, 107,
8540 108, 109, -1, -1, 112, 113, 114, -1, -1, -1,
8541 -1, -1, -1, -1, 122, 123, -1, 125, 126, 127,
8542 128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8543 65, -1, -1, -1, -1, -1, 71, 72, 73, 1,
8544 -1, 3, 4, 5, 6, -1, 8, 9, -1, 84,
8545 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8546 -1, -1, -1, 98, -1, -1, 28, 102, 103, 104,
8547 105, 106, 107, 108, 109, -1, -1, 112, 113, 114,
8548 -1, -1, -1, -1, -1, -1, -1, 122, 123, -1,
8549 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
8550 -1, -1, -1, 65, -1, -1, -1, -1, -1, 71,
8551 72, 73, 1, -1, 3, 4, 5, 6, -1, 8,
8552 9, -1, 84, 85, -1, -1, -1, -1, -1, -1,
8553 -1, -1, -1, -1, -1, -1, 98, -1, -1, 28,
8554 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8555 112, -1, 114, -1, -1, -1, -1, 119, -1, -1,
8556 122, 123, -1, 125, 126, 127, 128, -1, -1, -1,
8557 -1, -1, -1, -1, -1, -1, 65, -1, -1, -1,
8558 -1, -1, 71, 72, 73, 1, -1, 3, 4, 5,
8559 6, -1, 8, 9, -1, 84, 85, -1, -1, -1,
8560 -1, -1, -1, -1, -1, -1, -1, -1, -1, 98,
8561 -1, -1, 28, 102, 103, 104, 105, 106, 107, 108,
8562 109, -1, -1, 112, -1, 114, -1, -1, -1, -1,
8563 -1, -1, -1, 122, 123, -1, 125, 126, 127, 128,
8564 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8565 -1, -1, -1, -1, -1, 71, 72, 73, 1, -1,
8566 3, 4, 5, 6, -1, 8, 9, -1, 84, 85,
8567 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8568 -1, -1, 98, -1, -1, 28, 102, 103, 104, 105,
8569 106, 107, 108, 109, -1, -1, 112, -1, 114, -1,
8570 -1, -1, -1, -1, -1, -1, 122, 123, -1, 125,
8571 126, 127, 128, -1, -1, -1, -1, -1, -1, -1,
8572 -1, -1, 65, -1, -1, -1, -1, -1, 71, 72,
8573 73, 1, -1, 3, 4, 5, 6, -1, 8, 9,
8574 -1, 84, 85, -1, -1, -1, -1, -1, -1, -1,
8575 -1, -1, -1, -1, -1, 98, -1, -1, 28, 102,
8576 103, 104, 105, 106, 107, 108, 109, -1, -1, 112,
8577 -1, 114, -1, -1, -1, -1, -1, -1, -1, 122,
8578 123, -1, 125, 126, 127, 128, -1, -1, -1, -1,
8579 -1, -1, -1, -1, -1, 65, -1, -1, -1, -1,
8580 -1, 71, 72, 73, 1, -1, 3, 4, 5, 6,
8581 -1, 8, 9, -1, 84, 85, -1, -1, -1, -1,
8582 -1, -1, -1, -1, -1, -1, -1, -1, 98, -1,
8583 -1, 28, 102, 103, 104, 105, 106, 107, 108, 109,
8584 -1, -1, 112, -1, 114, -1, -1, -1, -1, -1,
8585 -1, -1, 122, 123, -1, 125, 126, 127, 128, -1,
8586 -1, -1, -1, -1, -1, -1, -1, -1, 65, -1,
8587 -1, -1, -1, -1, 71, 72, 73, 1, -1, 3,
8588 4, 5, 6, -1, 8, 9, -1, 84, 85, -1,
8589 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8590 -1, 98, -1, -1, 28, 102, 103, 104, 105, 106,
8591 107, 108, 109, -1, -1, 112, -1, 114, -1, -1,
8592 -1, -1, -1, -1, -1, 122, 123, -1, 125, 126,
8593 127, 128, -1, -1, -1, -1, -1, -1, -1, -1,
8594 -1, 65, -1, -1, -1, -1, -1, 71, 72, 73,
8595 1, -1, 3, 4, 5, 6, -1, 8, 9, -1,
8596 84, 85, -1, -1, -1, -1, -1, -1, -1, -1,
8597 -1, -1, -1, -1, 98, -1, -1, 28, 102, 103,
8598 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8599 114, -1, -1, -1, -1, -1, -1, -1, 122, 123,
8600 -1, 125, 126, 127, 128, -1, -1, -1, -1, -1,
8601 -1, -1, -1, -1, 65, -1, -1, -1, -1, -1,
8602 71, 72, 73, 1, -1, 3, 4, 5, 6, -1,
8603 8, 9, -1, 84, 85, -1, -1, -1, -1, -1,
8604 -1, -1, -1, -1, -1, -1, -1, 98, -1, -1,
8605 28, 102, 103, 104, 105, 106, 107, 108, 109, -1,
8606 -1, 112, -1, 114, -1, -1, -1, -1, -1, -1,
8607 -1, 122, 123, -1, 125, 126, 127, 128, -1, -1,
8608 -1, -1, -1, -1, -1, -1, -1, 65, -1, -1,
8609 -1, -1, -1, 71, 72, 73, 1, -1, 3, 4,
8610 5, 6, -1, 8, 9, -1, 84, 85, -1, -1,
8611 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8612 98, -1, -1, 28, 102, 103, 104, 105, 106, 107,
8613 108, 109, -1, -1, 112, -1, 114, -1, -1, -1,
8614 -1, -1, -1, -1, 122, 123, -1, 125, 126, 127,
8615 128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8616 65, -1, -1, -1, -1, -1, 71, 72, 73, -1,
8617 -1, -1, -1, -1, -1, -1, -1, -1, -1, 84,
8618 85, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8619 -1, -1, -1, 98, -1, -1, -1, 102, 103, 104,
8620 105, 106, 107, 108, 109, -1, -1, 112, -1, 114,
8621 0, 1, -1, 3, 4, 5, -1, 122, 123, -1,
8622 125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
8623 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
8624 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
8625 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
8626 50, -1, -1, 53, -1, -1, -1, -1, -1, -1,
8627 -1, -1, -1, -1, -1, 65, 66, -1, 68, -1,
8628 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
8629 80, 81, 82, 83, -1, 85, 86, 87, 88, -1,
8630 -1, 91, 92, 93, 94, -1, 96, -1, 98, 99,
8631 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
8632 -1, -1, 112, -1, 114, 115, 0, 1, 118, 3,
8633 4, 5, 122, 123, -1, -1, -1, -1, -1, -1,
8634 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8635 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
8636 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
8637 44, 45, 46, 47, 48, 49, 50, -1, -1, 53,
8638 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8639 -1, 65, 66, -1, 68, -1, -1, 71, 72, -1,
8640 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
8641 -1, 85, 86, 87, 88, -1, -1, 91, 92, 93,
8642 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
8643 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8644 114, 115, 0, 1, 118, 3, 4, 5, 122, 123,
8645 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8646 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8647 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
8648 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
8649 48, 49, 50, -1, -1, 53, -1, -1, -1, -1,
8650 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
8651 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
8652 78, 79, 80, 81, 82, 83, -1, 85, 86, 87,
8653 88, -1, -1, 91, 92, 93, 94, -1, 96, -1,
8654 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
8655 108, 109, -1, -1, 112, -1, 114, 115, 0, 1,
8656 118, 3, 4, 5, 122, 123, -1, -1, -1, -1,
8657 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8658 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
8659 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
8660 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
8661 -1, 53, -1, -1, -1, -1, -1, -1, -1, -1,
8662 -1, -1, -1, 65, 66, -1, 68, -1, -1, 71,
8663 72, -1, 74, 75, -1, -1, 78, 79, 80, 81,
8664 82, 83, -1, 85, 86, 87, 88, -1, -1, 91,
8665 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
8666 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8667 112, -1, 114, 115, -1, 1, 118, 3, 4, 5,
8668 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
8669 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8670 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
8671 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
8672 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
8673 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8674 66, -1, 68, -1, -1, 71, 72, -1, 74, 75,
8675 -1, -1, 78, 79, 80, 81, 82, 83, -1, 85,
8676 86, 87, 88, -1, -1, 91, 92, 93, 94, -1,
8677 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
8678 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
8679 -1, 1, 118, 3, 4, 5, 122, 123, -1, -1,
8680 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8681 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
8682 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
8683 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
8684 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8685 -1, -1, -1, -1, -1, 65, 66, -1, 68, -1,
8686 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
8687 80, 81, 82, 83, -1, 85, 86, 87, 88, -1,
8688 -1, 91, 92, 93, 94, -1, 96, -1, 98, 99,
8689 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
8690 -1, -1, 112, -1, 114, 115, -1, 1, 118, 3,
8691 4, 5, 122, 123, -1, -1, -1, -1, -1, -1,
8692 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8693 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
8694 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
8695 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
8696 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8697 -1, 65, 66, -1, 68, -1, -1, 71, 72, -1,
8698 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
8699 -1, 85, 86, 87, 88, -1, -1, 91, 92, 93,
8700 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
8701 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8702 114, 115, -1, 1, 118, 3, 4, 5, 122, 123,
8703 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8704 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8705 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
8706 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
8707 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
8708 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
8709 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
8710 78, 79, 80, 81, 82, 83, -1, 85, 86, 87,
8711 88, -1, -1, 91, 92, 93, 94, -1, 96, -1,
8712 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
8713 108, 109, -1, -1, 112, -1, 114, 115, -1, 1,
8714 118, 3, 4, 5, 122, 123, -1, -1, -1, -1,
8715 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8716 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
8717 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
8718 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
8719 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8720 -1, -1, -1, 65, 66, -1, 68, -1, -1, 71,
8721 72, -1, 74, 75, -1, -1, 78, 79, 80, 81,
8722 82, 83, -1, 85, 86, 87, 88, -1, -1, 91,
8723 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
8724 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8725 112, -1, 114, 115, -1, 1, 118, 3, 4, 5,
8726 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
8727 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8728 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
8729 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
8730 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
8731 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8732 66, -1, 68, -1, -1, 71, 72, -1, 74, 75,
8733 -1, -1, 78, 79, 80, 81, 82, 83, -1, 85,
8734 86, 87, 88, -1, -1, 91, 92, 93, 94, -1,
8735 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
8736 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
8737 -1, 1, 118, 3, 4, 5, 122, 123, -1, -1,
8738 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8739 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
8740 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
8741 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
8742 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8743 -1, -1, -1, -1, -1, 65, 66, -1, 68, -1,
8744 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
8745 80, 81, 82, 83, -1, 85, 86, 87, 88, -1,
8746 -1, 91, 92, 93, 94, -1, 96, -1, 98, 99,
8747 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
8748 -1, -1, 112, -1, 114, 115, -1, 1, 118, 3,
8749 4, 5, 122, 123, -1, -1, -1, -1, -1, -1,
8750 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8751 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
8752 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
8753 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
8754 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8755 -1, 65, 66, -1, 68, -1, -1, 71, 72, -1,
8756 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
8757 -1, 85, 86, 87, 88, -1, -1, 91, 92, 93,
8758 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
8759 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8760 114, 115, -1, 1, 118, 3, 4, 5, 122, 123,
8761 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8762 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8763 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
8764 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
8765 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
8766 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
8767 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
8768 78, 79, 80, 81, 82, 83, -1, 85, 86, 87,
8769 88, -1, -1, 91, 92, 93, 94, -1, 96, -1,
8770 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
8771 108, 109, -1, -1, 112, -1, 114, 115, -1, 1,
8772 118, 3, 4, 5, 122, 123, -1, -1, -1, -1,
8773 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8774 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
8775 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
8776 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
8777 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8778 -1, -1, -1, 65, 66, -1, 68, -1, -1, 71,
8779 72, -1, 74, 75, -1, -1, 78, 79, 80, 81,
8780 82, 83, -1, 85, 86, 87, 88, -1, -1, 91,
8781 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
8782 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8783 112, -1, 114, 115, -1, 1, 118, 3, 4, 5,
8784 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
8785 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8786 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
8787 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
8788 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
8789 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8790 66, -1, 68, -1, -1, 71, 72, -1, 74, 75,
8791 -1, -1, 78, 79, 80, 81, 82, 83, -1, 85,
8792 86, 87, 88, -1, -1, 91, 92, 93, 94, -1,
8793 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
8794 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
8795 -1, 1, 118, 3, 4, 5, 122, 123, -1, -1,
8796 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8797 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
8798 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
8799 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
8800 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8801 -1, -1, -1, -1, -1, 65, 66, -1, 68, -1,
8802 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
8803 80, 81, 82, 83, -1, 85, 86, 87, 88, -1,
8804 -1, 91, 92, 93, 94, -1, 96, -1, 98, 99,
8805 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
8806 -1, -1, 112, -1, 114, 115, -1, 1, 118, 3,
8807 4, 5, 122, 123, -1, -1, -1, -1, -1, -1,
8808 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8809 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
8810 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
8811 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
8812 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8813 -1, 65, 66, -1, 68, -1, -1, 71, 72, -1,
8814 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
8815 -1, 85, 86, 87, 88, -1, -1, 91, 92, 93,
8816 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
8817 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8818 114, 115, -1, 1, 118, 3, 4, 5, 122, 123,
8819 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8820 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8821 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
8822 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
8823 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
8824 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
8825 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
8826 78, 79, 80, 81, 82, 83, -1, 85, 86, 87,
8827 88, -1, -1, 91, 92, 93, 94, -1, 96, -1,
8828 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
8829 108, 109, -1, -1, 112, -1, 114, 115, -1, 1,
8830 118, 3, 4, 5, 122, 123, -1, -1, -1, -1,
8831 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8832 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
8833 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
8834 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
8835 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8836 -1, -1, -1, 65, 66, -1, 68, -1, -1, 71,
8837 72, -1, 74, 75, -1, -1, 78, 79, 80, 81,
8838 82, 83, -1, 85, 86, 87, 88, -1, -1, 91,
8839 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
8840 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8841 112, -1, 114, 115, -1, 1, 118, 3, 4, 5,
8842 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
8843 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8844 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
8845 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
8846 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
8847 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8848 66, -1, 68, -1, -1, 71, 72, -1, 74, 75,
8849 -1, -1, 78, 79, 80, 81, 82, 83, -1, 85,
8850 86, 87, 88, -1, -1, 91, 92, 93, 94, -1,
8851 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
8852 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
8853 -1, 1, 118, 3, 4, 5, 122, 123, -1, -1,
8854 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8855 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
8856 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
8857 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
8858 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8859 -1, -1, -1, -1, -1, 65, 66, -1, 68, -1,
8860 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
8861 80, 81, 82, 83, -1, 85, 86, 87, 88, -1,
8862 -1, 91, 92, 93, 94, -1, 96, -1, 98, 99,
8863 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
8864 -1, -1, 112, -1, 114, 115, -1, 1, 118, 3,
8865 4, 5, 122, 123, -1, -1, -1, -1, -1, -1,
8866 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8867 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
8868 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
8869 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
8870 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8871 -1, 65, 66, -1, 68, -1, -1, 71, 72, -1,
8872 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
8873 -1, 85, 86, 87, 88, -1, -1, 91, 92, 93,
8874 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
8875 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8876 114, 115, -1, 1, 118, 3, 4, 5, 122, 123,
8877 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8878 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8879 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
8880 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
8881 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
8882 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
8883 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
8884 78, 79, 80, 81, 82, 83, -1, 85, 86, 87,
8885 88, -1, -1, 91, 92, 93, 94, -1, 96, -1,
8886 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
8887 108, 109, -1, -1, 112, -1, 114, 115, -1, 1,
8888 118, 3, 4, 5, 122, 123, -1, -1, -1, -1,
8889 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8890 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
8891 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
8892 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
8893 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8894 -1, -1, -1, 65, 66, -1, 68, -1, -1, 71,
8895 72, -1, 74, 75, -1, -1, 78, 79, 80, 81,
8896 82, 83, -1, 85, 86, 87, 88, -1, -1, 91,
8897 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
8898 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8899 112, -1, 114, 115, -1, 1, 118, 3, 4, 5,
8900 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
8901 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8902 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
8903 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
8904 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
8905 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8906 66, -1, 68, -1, -1, 71, 72, -1, 74, 75,
8907 -1, -1, 78, 79, 80, 81, 82, 83, -1, 85,
8908 86, 87, 88, -1, -1, 91, 92, 93, 94, -1,
8909 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
8910 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
8911 -1, 1, 118, 3, 4, 5, 122, 123, -1, -1,
8912 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8913 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
8914 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
8915 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
8916 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8917 -1, -1, -1, -1, -1, 65, 66, -1, 68, -1,
8918 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
8919 80, 81, 82, 83, -1, 85, 86, 87, 88, -1,
8920 -1, 91, 92, 93, 94, -1, 96, -1, 98, 99,
8921 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
8922 -1, -1, 112, -1, 114, 115, -1, 1, 118, 3,
8923 4, 5, 122, 123, -1, -1, -1, -1, -1, -1,
8924 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8925 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
8926 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
8927 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
8928 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8929 -1, 65, 66, -1, 68, -1, -1, 71, 72, -1,
8930 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
8931 -1, 85, 86, 87, 88, -1, -1, 91, 92, 93,
8932 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
8933 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8934 114, 115, -1, 1, 118, 3, 4, 5, 122, 123,
8935 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8936 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8937 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
8938 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
8939 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
8940 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
8941 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
8942 78, 79, 80, 81, 82, 83, -1, 85, 86, 87,
8943 88, -1, -1, 91, 92, 93, 94, -1, 96, -1,
8944 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
8945 108, 109, -1, -1, 112, -1, 114, 115, -1, 1,
8946 118, 3, 4, 5, 122, 123, -1, -1, -1, -1,
8947 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8948 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
8949 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
8950 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
8951 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8952 -1, -1, -1, 65, 66, -1, 68, -1, -1, 71,
8953 72, -1, 74, 75, -1, -1, 78, 79, 80, 81,
8954 82, 83, -1, 85, 86, 87, 88, -1, -1, 91,
8955 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
8956 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
8957 112, -1, 114, 115, -1, 1, 118, 3, 4, 5,
8958 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
8959 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8960 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
8961 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
8962 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
8963 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
8964 66, -1, 68, -1, -1, 71, 72, -1, 74, 75,
8965 -1, -1, 78, 79, 80, 81, 82, 83, -1, 85,
8966 86, 87, 88, -1, -1, 91, 92, 93, 94, -1,
8967 96, -1, 98, 99, 100, -1, 102, 103, 104, 105,
8968 106, 107, 108, 109, -1, -1, 112, -1, 114, 115,
8969 -1, 1, 118, 3, 4, 5, 122, 123, -1, -1,
8970 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8971 -1, -1, -1, -1, -1, -1, -1, -1, 28, 29,
8972 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
8973 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
8974 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8975 -1, -1, -1, -1, -1, 65, 66, -1, 68, -1,
8976 -1, 71, 72, -1, 74, 75, -1, -1, 78, 79,
8977 80, 81, 82, 83, -1, 85, 86, 87, 88, -1,
8978 -1, 91, 92, 93, 94, -1, 96, -1, 98, 99,
8979 100, -1, 102, 103, 104, 105, 106, 107, 108, 109,
8980 -1, -1, 112, -1, 114, 115, -1, 1, 118, 3,
8981 4, 5, 122, 123, -1, -1, -1, -1, -1, -1,
8982 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8983 -1, -1, -1, -1, 28, 29, 30, 31, 32, 33,
8984 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
8985 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
8986 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8987 -1, 65, 66, -1, 68, -1, -1, 71, 72, -1,
8988 74, 75, -1, -1, 78, 79, 80, 81, 82, 83,
8989 -1, 85, 86, 87, 88, -1, -1, 91, 92, 93,
8990 94, -1, 96, -1, 98, 99, 100, -1, 102, 103,
8991 104, 105, 106, 107, 108, 109, -1, -1, 112, -1,
8992 114, 115, -1, 1, 118, 3, 4, 5, 122, 123,
8993 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8994 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
8995 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
8996 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
8997 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
8998 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
8999 68, -1, -1, 71, 72, -1, 74, 75, -1, -1,
9000 78, 79, 80, 81, 82, 83, -1, 85, 86, 87,
9001 88, -1, -1, 91, 92, 93, 94, -1, 96, -1,
9002 98, 99, 100, -1, 102, 103, 104, 105, 106, 107,
9003 108, 109, -1, -1, 112, -1, 114, 115, -1, 1,
9004 118, 3, 4, 5, 122, 123, -1, -1, -1, -1,
9005 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9006 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
9007 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
9008 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
9009 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9010 -1, -1, -1, 65, 66, -1, 68, -1, -1, 71,
9011 72, -1, 74, 75, -1, -1, 78, 79, 80, 81,
9012 82, 83, -1, 85, 86, 87, 88, -1, -1, 91,
9013 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
9014 102, 103, 104, 105, 106, 107, 108, 109, -1, -1,
9015 112, -1, 114, 115, 1, -1, 3, 4, 5, -1,
9016 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
9017 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9018 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
9019 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9020 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
9021 -1, -1, -1, -1, -1, -1, -1, -1, 65, 66,
9022 -1, 68, -1, -1, 71, 72, -1, 74, 75, -1,
9023 -1, 78, 79, 80, 81, 82, 83, -1, 85, 86,
9024 87, 88, -1, -1, 91, 92, 93, 94, -1, 96,
9025 -1, 98, 99, 100, -1, 102, 103, 104, 105, 106,
9026 107, 108, 109, -1, -1, 112, -1, 114, 115, 1,
9027 -1, 3, 4, 5, -1, 122, 123, -1, -1, -1,
9028 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9029 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
9030 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
9031 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
9032 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9033 -1, -1, -1, 65, 66, -1, 68, -1, -1, 71,
9034 72, -1, 74, 75, -1, -1, 78, 79, 80, 81,
9035 82, 83, -1, 85, 86, 87, 88, -1, -1, 91,
9036 92, 93, 94, -1, 96, -1, 98, 99, 100, -1,
9037 102, 103, 104, 105, 106, 107, 108, 109, -1, 1,
9038 112, 3, 114, 115, -1, -1, -1, -1, -1, -1,
9039 122, 123, -1, -1, -1, -1, -1, -1, -1, -1,
9040 -1, -1, -1, -1, -1, -1, 28, 29, 30, 31,
9041 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
9042 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
9043 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9044 -1, -1, -1, 65, 66, -1, -1, -1, -1, -1,
9045 -1, -1, 74, 75, -1, -1, -1, 79, -1, -1,
9046 82, 83, -1, 85, 86, 87, -1, -1, -1, -1,
9047 -1, -1, -1, 0, -1, -1, -1, -1, 100, -1,
9048 -1, -1, -1, -1, -1, -1, -1, 109, -1, -1,
9049 112, 113, -1, -1, -1, -1, -1, -1, -1, -1,
9050 -1, 123, 29, 30, 31, 32, 33, 34, 35, 36,
9051 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9052 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
9053 57, 58, 59, 60, 61, 62, -1, -1, -1, 66,
9054 -1, 68, -1, -1, -1, -1, -1, 74, 75, -1,
9055 -1, 78, 79, 80, 81, 82, 83, -1, -1, 86,
9056 87, 88, 89, 90, 91, 92, 93, 94, 0, 96,
9057 -1, -1, 99, 100, -1, -1, -1, -1, -1, -1,
9058 -1, -1, -1, -1, -1, -1, -1, -1, 115, -1,
9059 -1, 118, 119, -1, 121, -1, -1, 29, 30, 31,
9060 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
9061 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
9062 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
9063 62, -1, -1, -1, 66, -1, 68, -1, -1, -1,
9064 -1, -1, 74, 75, -1, -1, 78, 79, 80, 81,
9065 82, 83, -1, -1, 86, 87, 88, 89, 90, 91,
9066 92, 93, 94, 0, 96, -1, -1, 99, 100, -1,
9067 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9068 -1, -1, -1, 115, -1, -1, 118, 119, -1, 121,
9069 -1, -1, 29, 30, 31, 32, 33, 34, 35, 36,
9070 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9071 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
9072 57, 58, 59, 60, 61, 62, -1, -1, -1, 66,
9073 -1, 68, -1, -1, -1, -1, -1, 74, 75, -1,
9074 -1, 78, 79, 80, 81, 82, 83, -1, -1, 86,
9075 87, 88, 89, 90, 91, 92, 93, 94, 0, 96,
9076 -1, -1, 99, 100, -1, -1, -1, -1, -1, -1,
9077 -1, -1, -1, -1, -1, -1, -1, -1, 115, -1,
9078 -1, 118, 119, -1, 121, -1, -1, 29, 30, 31,
9079 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
9080 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
9081 52, 53, 54, 55, 56, 57, 58, 59, 60, 61,
9082 62, -1, -1, -1, 66, -1, 68, -1, -1, -1,
9083 -1, -1, 74, 75, -1, -1, 78, 79, 80, 81,
9084 82, 83, -1, -1, 86, 87, 88, 89, 90, 91,
9085 92, 93, 94, 0, 96, -1, -1, 99, 100, -1,
9086 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9087 -1, -1, -1, -1, -1, -1, 118, 119, -1, 121,
9088 -1, -1, 29, 30, 31, 32, 33, 34, 35, 36,
9089 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9090 47, 48, 49, 50, -1, 52, 53, 54, 55, 56,
9091 57, 58, 59, 60, 61, 62, -1, -1, -1, 66,
9092 -1, 68, -1, -1, -1, -1, -1, 74, 75, -1,
9093 -1, 78, 79, 80, 81, 82, 83, -1, -1, 86,
9094 87, 88, 89, 90, 91, 92, 93, 94, -1, 96,
9095 3, -1, 99, 100, -1, -1, -1, -1, -1, -1,
9096 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9097 -1, 118, 119, -1, 121, 28, 29, 30, 31, 32,
9098 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
9099 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
9100 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9101 -1, -1, -1, 66, -1, -1, -1, -1, -1, -1,
9102 -1, 74, 75, -1, -1, -1, 79, -1, -1, -1,
9103 -1, -1, 85, 86, 87, -1, -1, -1, -1, -1,
9104 -1, -1, -1, -1, -1, -1, 3, 100, -1, -1,
9105 -1, -1, -1, -1, -1, -1, 109, -1, -1, 112,
9106 -1, -1, -1, -1, -1, -1, 119, -1, -1, -1,
9107 123, 28, 29, 30, 31, 32, 33, 34, 35, 36,
9108 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9109 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
9110 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
9111 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
9112 -1, -1, 79, -1, -1, -1, -1, -1, 85, 86,
9113 87, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9114 -1, -1, 3, 100, -1, -1, -1, -1, -1, -1,
9115 -1, -1, 109, -1, -1, 112, -1, -1, -1, -1,
9116 -1, -1, -1, -1, -1, -1, 123, 28, 29, 30,
9117 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
9118 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
9119 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9120 -1, -1, -1, -1, -1, 66, -1, -1, -1, -1,
9121 -1, -1, -1, 74, 75, -1, -1, -1, 79, -1,
9122 -1, -1, -1, -1, 85, 86, 87, -1, -1, -1,
9123 -1, -1, -1, -1, -1, -1, -1, -1, 3, 100,
9124 -1, -1, -1, -1, -1, -1, -1, -1, 109, -1,
9125 -1, 112, -1, -1, -1, -1, -1, -1, -1, -1,
9126 -1, -1, 123, 28, 29, 30, 31, 32, 33, 34,
9127 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
9128 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
9129 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9130 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
9131 75, -1, -1, -1, 79, -1, -1, -1, -1, -1,
9132 85, 86, 87, -1, -1, -1, -1, -1, -1, -1,
9133 -1, -1, -1, -1, 3, 100, -1, -1, -1, -1,
9134 -1, -1, -1, -1, 109, -1, -1, 112, -1, -1,
9135 -1, -1, -1, -1, -1, -1, -1, -1, 123, 28,
9136 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
9137 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
9138 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
9139 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
9140 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
9141 79, -1, -1, -1, -1, -1, 85, 86, 87, -1,
9142 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9143 3, 100, -1, -1, -1, -1, -1, -1, -1, -1,
9144 109, -1, -1, 112, -1, -1, -1, -1, -1, -1,
9145 -1, -1, -1, -1, 123, 28, 29, 30, 31, 32,
9146 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
9147 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
9148 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9149 -1, -1, 65, 66, -1, -1, -1, -1, -1, -1,
9150 -1, 74, 75, 76, 77, -1, 79, -1, -1, 82,
9151 83, -1, 85, 86, 87, -1, -1, -1, -1, -1,
9152 -1, -1, -1, -1, 3, -1, -1, 100, -1, -1,
9153 -1, -1, 105, -1, -1, -1, 109, -1, -1, 112,
9154 -1, -1, -1, -1, -1, -1, -1, -1, 121, 28,
9155 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
9156 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
9157 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
9158 -1, -1, -1, -1, -1, -1, -1, 66, -1, 68,
9159 -1, -1, -1, -1, -1, 74, 75, -1, -1, 78,
9160 79, -1, -1, 82, 83, -1, 85, 86, 87, -1,
9161 -1, -1, -1, -1, -1, -1, -1, -1, 3, -1,
9162 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
9163 109, -1, -1, 112, -1, 114, -1, -1, -1, -1,
9164 -1, -1, 121, 28, 29, 30, 31, 32, 33, 34,
9165 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
9166 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
9167 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9168 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
9169 75, -1, -1, -1, 79, -1, -1, 82, 83, -1,
9170 85, 86, 87, -1, -1, -1, -1, -1, -1, -1,
9171 -1, -1, 3, -1, -1, 100, -1, -1, -1, -1,
9172 -1, -1, -1, -1, 109, -1, -1, 112, -1, -1,
9173 115, -1, -1, -1, -1, -1, 121, 28, 29, 30,
9174 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
9175 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
9176 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9177 -1, -1, -1, -1, -1, 66, -1, -1, -1, -1,
9178 -1, -1, -1, 74, 75, -1, -1, -1, 79, -1,
9179 -1, 82, 83, -1, 85, 86, 87, -1, -1, -1,
9180 -1, -1, -1, -1, -1, -1, 3, -1, -1, 100,
9181 -1, -1, -1, -1, -1, -1, -1, -1, 109, -1,
9182 -1, 112, -1, -1, 115, -1, -1, -1, -1, -1,
9183 121, 28, 29, 30, 31, 32, 33, 34, 35, 36,
9184 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9185 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
9186 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
9187 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
9188 -1, -1, 79, -1, -1, 82, 83, -1, 85, 86,
9189 87, -1, -1, -1, -1, -1, -1, -1, 1, -1,
9190 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
9191 -1, -1, 109, -1, -1, 112, -1, -1, -1, -1,
9192 -1, -1, -1, -1, 121, 28, 29, 30, 31, 32,
9193 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
9194 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
9195 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9196 -1, -1, -1, 66, -1, -1, -1, -1, -1, -1,
9197 -1, 74, 75, -1, -1, -1, 79, -1, -1, -1,
9198 -1, -1, 85, 86, 87, -1, -1, -1, -1, -1,
9199 1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
9200 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9201 -1, -1, -1, -1, -1, -1, 119, 28, 29, 30,
9202 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
9203 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
9204 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9205 -1, -1, -1, -1, -1, 66, -1, -1, -1, -1,
9206 -1, -1, -1, 74, 75, -1, -1, -1, 79, -1,
9207 -1, -1, -1, -1, 85, 86, 87, -1, -1, -1,
9208 -1, 1, -1, -1, -1, -1, -1, -1, -1, 100,
9209 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9210 -1, -1, -1, -1, 115, -1, 117, 118, 28, 29,
9211 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
9212 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
9213 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9214 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
9215 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
9216 -1, -1, -1, -1, -1, 85, 86, 87, -1, -1,
9217 -1, -1, 1, -1, -1, -1, -1, -1, -1, -1,
9218 100, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9219 -1, -1, -1, -1, -1, -1, -1, -1, 118, 28,
9220 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
9221 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
9222 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
9223 -1, -1, -1, -1, -1, -1, -1, 66, -1, -1,
9224 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
9225 79, -1, -1, -1, -1, -1, 85, 86, 87, -1,
9226 -1, -1, -1, 1, -1, -1, -1, -1, -1, -1,
9227 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
9228 -1, -1, -1, -1, -1, -1, -1, -1, -1, 118,
9229 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
9230 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
9231 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
9232 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
9233 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
9234 -1, 79, -1, -1, -1, -1, -1, 85, 86, 87,
9235 -1, -1, -1, -1, 1, -1, -1, -1, -1, -1,
9236 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
9237 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9238 118, 28, 29, 30, 31, 32, 33, 34, 35, 36,
9239 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9240 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
9241 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
9242 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
9243 -1, -1, 79, -1, -1, -1, -1, -1, 85, 86,
9244 87, -1, -1, -1, -1, 1, -1, -1, -1, -1,
9245 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
9246 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9247 -1, 118, 28, 29, 30, 31, 32, 33, 34, 35,
9248 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
9249 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
9250 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9251 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
9252 -1, -1, -1, 79, -1, -1, -1, -1, -1, 85,
9253 86, 87, -1, -1, -1, 0, 1, -1, 3, -1,
9254 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
9255 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9256 -1, -1, 118, 28, 29, 30, 31, 32, 33, 34,
9257 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
9258 45, 46, 47, 48, 49, 50, -1, -1, 53, -1,
9259 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9260 65, 66, -1, -1, -1, -1, -1, -1, -1, 74,
9261 75, 76, 77, -1, 79, 80, 81, 82, 83, -1,
9262 85, 86, 87, -1, -1, -1, 3, -1, -1, -1,
9263 -1, -1, -1, -1, -1, 100, 101, -1, -1, -1,
9264 105, -1, -1, -1, 109, -1, -1, 112, -1, -1,
9265 115, 28, 29, 30, 31, 32, 33, 34, 35, 36,
9266 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9267 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
9268 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
9269 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
9270 -1, -1, 79, -1, -1, 82, 83, -1, 85, 86,
9271 87, -1, -1, -1, -1, -1, -1, 3, -1, -1,
9272 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
9273 107, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9274 -1, 118, 28, 29, 30, 31, 32, 33, 34, 35,
9275 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
9276 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
9277 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9278 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
9279 -1, -1, -1, 79, -1, -1, 82, 83, -1, 85,
9280 86, 87, -1, -1, -1, -1, -1, -1, 3, -1,
9281 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
9282 -1, 107, -1, -1, -1, -1, -1, -1, -1, -1,
9283 -1, -1, 118, 28, 29, 30, 31, 32, 33, 34,
9284 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
9285 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
9286 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9287 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
9288 75, -1, -1, -1, 79, -1, -1, 82, 83, -1,
9289 85, 86, 87, -1, -1, -1, -1, 1, -1, 3,
9290 -1, -1, -1, -1, -1, 100, -1, -1, -1, -1,
9291 -1, -1, 107, -1, -1, -1, -1, -1, -1, -1,
9292 -1, -1, -1, 118, 28, 29, 30, 31, 32, 33,
9293 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
9294 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
9295 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9296 -1, 65, 66, -1, -1, -1, -1, -1, -1, -1,
9297 74, 75, -1, -1, -1, 79, -1, -1, 82, 83,
9298 -1, 85, 86, 87, -1, 1, -1, 3, -1, -1,
9299 -1, -1, -1, -1, -1, -1, 100, -1, -1, -1,
9300 -1, -1, -1, -1, -1, 109, -1, -1, 112, -1,
9301 -1, 115, 28, 29, 30, 31, 32, 33, 34, 35,
9302 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
9303 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
9304 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9305 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
9306 -1, -1, -1, 79, -1, -1, 82, 83, -1, 85,
9307 86, 87, -1, 1, -1, 3, -1, -1, -1, -1,
9308 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
9309 -1, -1, -1, 109, -1, -1, 112, -1, -1, 115,
9310 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
9311 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
9312 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
9313 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
9314 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
9315 -1, 79, -1, -1, -1, -1, -1, 85, 86, 87,
9316 -1, 1, -1, 3, -1, -1, -1, -1, -1, -1,
9317 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
9318 -1, 109, -1, -1, 112, -1, -1, 115, 28, 29,
9319 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
9320 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
9321 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9322 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
9323 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
9324 -1, -1, -1, -1, -1, 85, 86, 87, -1, -1,
9325 -1, 3, -1, -1, -1, -1, -1, -1, -1, -1,
9326 100, -1, -1, -1, -1, -1, -1, -1, -1, 109,
9327 -1, -1, 112, -1, -1, 115, 28, 29, 30, 31,
9328 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
9329 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
9330 -1, 53, -1, -1, -1, -1, -1, -1, -1, -1,
9331 -1, -1, -1, 65, 66, -1, -1, -1, -1, -1,
9332 -1, -1, 74, 75, 76, 77, -1, 79, 80, 81,
9333 82, 83, -1, 85, 86, 87, 0, 1, -1, 3,
9334 -1, -1, -1, -1, -1, -1, -1, -1, 100, 101,
9335 -1, -1, -1, 105, -1, -1, -1, 109, -1, -1,
9336 112, -1, -1, 115, 28, 29, 30, 31, 32, 33,
9337 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
9338 44, 45, 46, 47, 48, 49, 50, -1, -1, 53,
9339 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9340 -1, 65, 66, -1, -1, -1, -1, -1, -1, -1,
9341 74, 75, -1, -1, -1, 79, 80, 81, 82, 83,
9342 -1, 85, 86, 87, 1, -1, 3, -1, -1, -1,
9343 -1, -1, -1, -1, -1, -1, 100, -1, -1, -1,
9344 -1, -1, -1, -1, -1, 109, -1, -1, 112, -1,
9345 -1, 28, 29, 30, 31, 32, 33, 34, 35, 36,
9346 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9347 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
9348 -1, -1, -1, -1, -1, -1, -1, -1, 65, 66,
9349 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
9350 -1, -1, 79, -1, -1, 82, 83, -1, 85, 86,
9351 87, 1, -1, 3, -1, -1, -1, -1, -1, -1,
9352 -1, -1, -1, 100, -1, -1, -1, -1, -1, -1,
9353 -1, -1, 109, -1, -1, 112, 113, -1, 28, 29,
9354 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
9355 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
9356 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9357 -1, -1, -1, -1, -1, 65, 66, -1, -1, -1,
9358 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
9359 -1, -1, 82, 83, -1, 85, 86, 87, 1, -1,
9360 3, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9361 100, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9362 -1, -1, -1, 113, -1, 28, 29, 30, 31, 32,
9363 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
9364 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
9365 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9366 -1, -1, 65, 66, -1, -1, -1, -1, -1, -1,
9367 -1, 74, 75, -1, -1, -1, 79, -1, -1, 82,
9368 83, -1, 85, 86, 87, 1, -1, 3, -1, -1,
9369 -1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
9370 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9371 113, -1, 28, 29, 30, 31, 32, 33, 34, 35,
9372 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
9373 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
9374 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
9375 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
9376 -1, -1, -1, 79, -1, -1, 82, 83, -1, 85,
9377 86, 87, 1, -1, 3, -1, -1, -1, -1, -1,
9378 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
9379 -1, -1, -1, -1, -1, -1, -1, 113, -1, 28,
9380 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
9381 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
9382 49, 50, -1, -1, -1, -1, -1, -1, -1, -1,
9383 -1, -1, -1, -1, -1, -1, 65, 66, -1, -1,
9384 -1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
9385 79, -1, -1, 82, 83, -1, 85, 86, 87, 1,
9386 -1, 3, -1, -1, -1, -1, -1, -1, -1, -1,
9387 -1, 100, -1, -1, -1, -1, -1, -1, -1, -1,
9388 -1, -1, -1, -1, 113, -1, 28, 29, 30, 31,
9389 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
9390 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
9391 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9392 -1, -1, -1, 65, 66, -1, -1, -1, -1, -1,
9393 -1, -1, 74, 75, -1, -1, -1, 79, -1, -1,
9394 82, 83, -1, 85, 86, 87, 1, -1, 3, -1,
9395 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
9396 -1, -1, -1, -1, -1, -1, -1, 109, -1, -1,
9397 112, -1, -1, 28, 29, 30, 31, 32, 33, 34,
9398 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
9399 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
9400 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9401 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
9402 75, -1, -1, -1, 79, -1, -1, 82, 83, -1,
9403 85, 86, 87, 1, -1, 3, -1, -1, -1, -1,
9404 -1, -1, -1, -1, -1, 100, -1, -1, -1, -1,
9405 -1, -1, -1, -1, 109, -1, -1, 112, -1, -1,
9406 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
9407 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
9408 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
9409 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
9410 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
9411 -1, 79, -1, -1, -1, -1, -1, 85, 86, 87,
9412 3, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9413 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
9414 -1, -1, -1, -1, 112, 28, 29, 30, 31, 32,
9415 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
9416 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
9417 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9418 -1, -1, 65, 66, -1, -1, -1, -1, -1, -1,
9419 -1, 74, 75, -1, -1, -1, 79, -1, -1, 82,
9420 83, -1, 85, 86, 87, 3, -1, -1, -1, -1,
9421 -1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
9422 -1, -1, -1, -1, -1, -1, 109, -1, -1, 112,
9423 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
9424 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
9425 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
9426 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
9427 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
9428 -1, 79, -1, -1, 82, 83, -1, 85, 86, 87,
9429 3, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9430 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
9431 -1, 109, -1, -1, 112, 28, 29, 30, 31, 32,
9432 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
9433 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
9434 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9435 -1, -1, -1, 66, -1, -1, -1, -1, -1, -1,
9436 -1, 74, 75, -1, -1, -1, 79, -1, -1, 82,
9437 83, -1, 85, 86, 87, 3, -1, -1, -1, -1,
9438 -1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
9439 -1, -1, -1, -1, -1, -1, -1, -1, -1, 112,
9440 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
9441 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
9442 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
9443 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
9444 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
9445 -1, 79, -1, -1, 82, 83, -1, 85, 86, 87,
9446 3, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9447 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
9448 -1, -1, -1, -1, 112, 28, 29, 30, 31, 32,
9449 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
9450 43, 44, 45, 46, 47, 48, 49, 50, -1, -1,
9451 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9452 -1, -1, -1, 66, -1, -1, -1, -1, -1, -1,
9453 -1, 74, 75, -1, -1, -1, 79, -1, -1, -1,
9454 -1, -1, 85, 86, 87, 3, -1, -1, -1, -1,
9455 -1, -1, -1, -1, -1, -1, -1, 100, -1, -1,
9456 -1, -1, -1, -1, -1, -1, 109, -1, -1, 112,
9457 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
9458 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
9459 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
9460 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
9461 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
9462 -1, 79, -1, -1, 82, 83, -1, 85, 86, 87,
9463 1, -1, 3, -1, -1, -1, -1, -1, -1, -1,
9464 -1, -1, 100, -1, -1, -1, -1, -1, -1, 107,
9465 -1, -1, -1, -1, -1, -1, -1, 28, 29, 30,
9466 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
9467 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
9468 51, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9469 -1, -1, -1, -1, 65, 66, -1, -1, -1, -1,
9470 -1, -1, -1, 74, 75, 1, -1, 3, 79, -1,
9471 -1, 82, 83, -1, 85, 86, 87, -1, -1, -1,
9472 -1, -1, -1, -1, -1, -1, -1, -1, -1, 100,
9473 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
9474 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
9475 46, 47, 48, 49, 50, 51, -1, -1, -1, -1,
9476 -1, -1, -1, -1, -1, -1, -1, -1, -1, 65,
9477 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
9478 1, -1, 3, 79, -1, -1, 82, 83, -1, 85,
9479 86, 87, -1, -1, -1, -1, -1, -1, -1, -1,
9480 -1, -1, -1, -1, 100, -1, -1, 28, 29, 30,
9481 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
9482 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
9483 51, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9484 -1, -1, -1, -1, 65, 66, -1, -1, -1, -1,
9485 -1, -1, -1, 74, 75, 1, -1, 3, 79, -1,
9486 -1, 82, 83, -1, 85, 86, 87, -1, -1, -1,
9487 -1, -1, -1, -1, -1, -1, -1, -1, -1, 100,
9488 -1, -1, 28, 29, 30, 31, 32, 33, 34, 35,
9489 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
9490 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
9491 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9492 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
9493 3, -1, -1, 79, -1, -1, -1, -1, -1, 85,
9494 86, 87, -1, -1, -1, -1, -1, -1, -1, -1,
9495 -1, -1, -1, -1, 100, 28, 29, 30, 31, 32,
9496 33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
9497 43, 44, 45, 46, 47, 48, 49, 50, 51, -1,
9498 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9499 -1, -1, 65, 66, -1, -1, -1, -1, -1, -1,
9500 -1, 74, 75, 3, -1, -1, 79, -1, -1, 82,
9501 83, -1, 85, 86, 87, -1, -1, -1, -1, -1,
9502 -1, -1, -1, -1, -1, -1, -1, 100, 28, 29,
9503 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
9504 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
9505 50, 51, -1, -1, -1, -1, -1, -1, -1, -1,
9506 -1, -1, -1, -1, -1, 65, 66, -1, -1, -1,
9507 -1, -1, -1, -1, 74, 75, 3, -1, -1, 79,
9508 -1, -1, 82, 83, -1, 85, 86, 87, -1, -1,
9509 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9510 100, 28, 29, 30, 31, 32, 33, 34, 35, 36,
9511 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9512 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
9513 -1, -1, -1, -1, -1, -1, -1, -1, 65, 66,
9514 -1, -1, -1, -1, -1, -1, -1, 74, 75, 3,
9515 -1, -1, 79, -1, -1, 82, 83, -1, 85, 86,
9516 87, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9517 -1, -1, -1, 100, 28, 29, 30, 31, 32, 33,
9518 34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
9519 44, 45, 46, 47, 48, 49, 50, -1, -1, -1,
9520 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9521 -1, -1, 66, -1, -1, -1, -1, -1, -1, -1,
9522 74, 75, 3, -1, -1, 79, 80, 81, -1, -1,
9523 -1, 85, 86, 87, -1, -1, -1, -1, -1, -1,
9524 -1, -1, -1, -1, -1, -1, 100, 28, 29, 30,
9525 31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
9526 41, 42, 43, 44, 45, 46, 47, 48, 49, 50,
9527 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9528 -1, -1, -1, -1, -1, 66, -1, -1, -1, -1,
9529 -1, -1, -1, 74, 75, 3, -1, -1, 79, -1,
9530 -1, 82, 83, -1, 85, 86, 87, -1, -1, -1,
9531 -1, -1, -1, -1, -1, -1, -1, -1, -1, 100,
9532 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
9533 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
9534 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
9535 -1, -1, -1, -1, -1, -1, -1, 65, 66, -1,
9536 -1, -1, -1, -1, -1, -1, 74, 75, 3, -1,
9537 -1, 79, -1, -1, -1, -1, -1, 85, 86, 87,
9538 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9539 -1, -1, 100, 28, 29, 30, 31, 32, 33, 34,
9540 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
9541 45, 46, 47, 48, 49, 50, -1, -1, -1, -1,
9542 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9543 -1, 66, -1, -1, -1, -1, -1, -1, -1, 74,
9544 75, -1, -1, -1, 79, -1, -1, -1, -1, -1,
9545 85, 86, 87, -1, -1, -1, -1, -1, -1, -1,
9546 -1, -1, -1, -1, -1, 100, 28, 29, 30, 31,
9547 32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
9548 42, 43, 44, 45, 46, 47, 48, 49, 50, -1,
9549 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9550 -1, -1, -1, -1, 66, -1, -1, -1, -1, -1,
9551 -1, -1, 74, 75, -1, -1, -1, 79, -1, -1,
9552 -1, -1, -1, 85, 86, 87, -1, -1, -1, -1,
9553 -1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
9554 -1, -1, -1, -1, -1, -1, -1, 109, -1, -1,
9555 112, 113, -1, -1, -1, -1, -1, -1, -1, -1,
9556 -1, 123, 28, 29, 30, 31, 32, 33, 34, 35,
9557 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
9558 46, 47, 48, 49, 50, -1, -1, -1, -1, -1,
9559 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9560 66, -1, -1, -1, -1, -1, -1, -1, 74, 75,
9561 -1, -1, -1, 79, -1, -1, -1, -1, -1, 85,
9562 86, 87, -1, -1, -1, -1, -1, -1, -1, -1,
9563 -1, -1, -1, -1, 100, -1, -1, -1, -1, -1,
9564 -1, -1, -1, 109, -1, -1, 112, -1, -1, -1,
9565 -1, -1, -1, -1, -1, -1, -1, 123, 28, 29,
9566 30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
9567 40, 41, 42, 43, 44, 45, 46, 47, 48, 49,
9568 50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9569 -1, -1, -1, -1, -1, -1, 66, -1, -1, -1,
9570 -1, -1, -1, -1, 74, 75, -1, -1, -1, 79,
9571 -1, -1, -1, -1, -1, 85, 86, 87, -1, -1,
9572 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9573 100, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9574 -1, -1, -1, -1, -1, -1, -1, -1, -1, 119,
9575 28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
9576 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,
9577 48, 49, 50, -1, -1, -1, -1, -1, -1, -1,
9578 -1, -1, -1, -1, -1, -1, -1, -1, 66, -1,
9579 -1, -1, -1, -1, -1, -1, 74, 75, -1, -1,
9580 -1, 79, -1, -1, -1, -1, -1, 85, 86, 87,
9581 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9582 -1, -1, 100, -1, -1, -1, -1, -1, -1, -1,
9583 -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9584 118, 28, 29, 30, 31, 32, 33, 34, 35, 36,
9585 37, 38, 39, 40, 41, 42, 43, 44, 45, 46,
9586 47, 48, 49, 50, -1, -1, -1, -1, -1, -1,
9587 -1, -1, -1, -1, -1, -1, -1, -1, -1, 66,
9588 -1, -1, -1, -1, -1, -1, -1, 74, 75, -1,
9589 -1, -1, 79, -1, -1, -1, -1, -1, 85, 86,
9590 87, -1, -1, -1, -1, -1, -1, -1, -1, -1,
9594 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
9595 symbol of state STATE-NUM. */
9596 static const unsigned short int yystos[] =
9598 0, 3, 28, 29, 30, 31, 32, 33, 34, 35,
9599 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
9600 46, 47, 48, 49, 50, 53, 65, 66, 74, 75,
9601 76, 77, 79, 80, 81, 82, 83, 85, 86, 87,
9602 100, 101, 105, 109, 112, 115, 135, 136, 137, 139,
9603 164, 201, 202, 203, 204, 205, 206, 260, 263, 264,
9604 267, 268, 269, 270, 271, 272, 273, 275, 279, 282,
9605 283, 284, 285, 286, 287, 292, 293, 301, 302, 303,
9606 306, 307, 310, 314, 341, 344, 345, 363, 364, 366,
9607 367, 368, 369, 370, 371, 77, 121, 5, 31, 206,
9608 365, 206, 112, 112, 112, 139, 206, 365, 273, 274,
9609 306, 310, 206, 301, 303, 305, 306, 310, 313, 110,
9610 115, 136, 137, 206, 119, 121, 115, 119, 118, 109,
9611 110, 201, 206, 119, 139, 206, 119, 121, 118, 110,
9612 119, 121, 119, 118, 119, 137, 206, 1, 31, 115,
9613 135, 203, 205, 206, 260, 270, 271, 273, 275, 303,
9614 306, 310, 313, 314, 322, 323, 324, 325, 324, 112,
9615 123, 1, 29, 30, 31, 32, 33, 65, 113, 135,
9616 206, 259, 263, 265, 266, 273, 275, 279, 280, 281,
9617 287, 291, 299, 300, 328, 329, 330, 331, 332, 333,
9618 303, 310, 303, 306, 34, 35, 36, 37, 38, 39,
9619 40, 41, 42, 43, 46, 47, 66, 85, 87, 100,
9620 119, 139, 160, 161, 259, 264, 265, 273, 276, 280,
9621 282, 290, 343, 346, 347, 348, 353, 354, 355, 31,
9622 76, 121, 203, 205, 292, 344, 345, 363, 364, 371,
9623 1, 203, 269, 286, 292, 314, 341, 367, 1, 366,
9624 367, 0, 206, 365, 365, 5, 116, 365, 1, 4,
9625 6, 8, 9, 65, 71, 72, 73, 84, 85, 98,
9626 102, 103, 104, 105, 106, 107, 108, 109, 112, 114,
9627 122, 123, 125, 126, 127, 128, 139, 165, 166, 206,
9628 207, 208, 211, 212, 216, 217, 219, 220, 221, 222,
9629 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
9630 233, 237, 239, 240, 242, 243, 244, 245, 246, 247,
9631 248, 249, 250, 251, 252, 253, 365, 377, 378, 379,
9632 380, 136, 206, 119, 139, 206, 273, 310, 301, 303,
9633 310, 305, 306, 113, 306, 85, 139, 190, 191, 193,
9634 195, 199, 200, 206, 217, 231, 232, 240, 252, 257,
9635 290, 115, 110, 110, 115, 1, 68, 78, 80, 81,
9636 85, 88, 91, 92, 93, 94, 96, 98, 99, 112,
9637 114, 115, 118, 139, 140, 141, 142, 143, 144, 145,
9638 146, 147, 162, 163, 165, 166, 169, 170, 171, 172,
9639 173, 174, 175, 176, 177, 178, 182, 186, 187, 188,
9640 189, 206, 212, 237, 291, 302, 304, 306, 310, 314,
9641 315, 342, 80, 81, 206, 259, 263, 273, 276, 279,
9642 287, 294, 295, 1, 118, 188, 189, 137, 206, 1,
9643 206, 261, 262, 1, 118, 262, 295, 65, 190, 192,
9644 194, 196, 197, 198, 206, 1, 118, 188, 189, 295,
9645 1, 118, 188, 189, 1, 118, 188, 189, 119, 303,
9646 310, 303, 306, 1, 116, 347, 354, 355, 1, 115,
9647 117, 117, 115, 124, 136, 206, 253, 257, 258, 117,
9648 119, 139, 206, 118, 119, 118, 119, 112, 123, 125,
9649 135, 206, 259, 265, 273, 275, 280, 306, 308, 310,
9650 311, 313, 1, 113, 117, 1, 113, 117, 1, 117,
9651 1, 117, 113, 113, 303, 303, 112, 112, 1, 115,
9652 1, 118, 1, 115, 206, 259, 265, 273, 276, 280,
9653 306, 324, 325, 1, 115, 1, 343, 346, 354, 355,
9654 343, 346, 52, 53, 54, 55, 56, 57, 58, 59,
9655 60, 61, 62, 79, 86, 88, 89, 90, 115, 121,
9656 183, 184, 185, 206, 212, 217, 233, 235, 240, 253,
9657 254, 255, 334, 335, 338, 339, 340, 347, 348, 349,
9658 350, 351, 352, 354, 355, 357, 358, 359, 360, 361,
9659 362, 118, 31, 206, 365, 206, 201, 202, 204, 205,
9660 314, 347, 355, 203, 292, 116, 232, 113, 1, 112,
9661 166, 208, 213, 216, 218, 238, 239, 241, 112, 217,
9662 240, 217, 240, 112, 206, 259, 265, 273, 276, 280,
9663 298, 257, 112, 112, 298, 257, 112, 112, 112, 112,
9664 112, 113, 233, 235, 255, 265, 273, 275, 280, 288,
9665 326, 365, 119, 167, 168, 209, 214, 233, 119, 1,
9666 118, 119, 1, 7, 8, 9, 112, 120, 123, 18,
9667 19, 20, 21, 22, 23, 24, 25, 26, 27, 116,
9668 234, 168, 209, 210, 220, 242, 109, 129, 130, 126,
9669 127, 10, 11, 223, 245, 12, 13, 110, 111, 14,
9670 15, 125, 131, 132, 16, 17, 133, 234, 113, 7,
9671 8, 9, 112, 120, 123, 234, 109, 129, 130, 126,
9672 127, 10, 11, 12, 13, 110, 111, 14, 15, 125,
9673 131, 132, 16, 17, 133, 234, 113, 113, 107, 206,
9674 291, 372, 375, 376, 119, 119, 305, 116, 11, 111,
9675 117, 116, 133, 133, 112, 306, 310, 311, 65, 190,
9676 198, 206, 198, 1, 206, 259, 273, 276, 287, 296,
9677 291, 314, 315, 112, 139, 206, 206, 291, 1, 112,
9678 296, 109, 112, 206, 291, 115, 354, 355, 354, 355,
9679 354, 115, 354, 355, 115, 115, 1, 118, 115, 1,
9680 1, 115, 117, 117, 69, 70, 91, 95, 97, 118,
9681 69, 70, 118, 115, 1, 186, 187, 1, 186, 187,
9682 1, 116, 112, 115, 121, 206, 277, 278, 301, 306,
9683 310, 314, 315, 316, 1, 291, 299, 330, 304, 310,
9684 304, 306, 112, 121, 146, 147, 162, 163, 165, 166,
9685 175, 206, 291, 110, 139, 206, 206, 259, 273, 276,
9686 110, 110, 116, 117, 1, 115, 119, 28, 138, 206,
9687 206, 111, 117, 116, 115, 117, 118, 148, 149, 150,
9688 151, 152, 153, 154, 155, 156, 157, 158, 159, 209,
9689 210, 212, 232, 253, 290, 319, 320, 303, 303, 1,
9690 119, 233, 254, 317, 318, 354, 355, 322, 323, 322,
9691 323, 124, 124, 124, 51, 328, 329, 1, 262, 119,
9692 119, 1, 118, 188, 189, 1, 118, 188, 189, 113,
9693 206, 299, 300, 311, 332, 333, 124, 136, 257, 258,
9694 313, 308, 310, 112, 123, 308, 1, 1, 117, 1,
9695 51, 206, 328, 329, 117, 1, 51, 206, 328, 329,
9696 117, 1, 51, 206, 328, 329, 117, 51, 206, 328,
9697 329, 233, 136, 206, 118, 119, 115, 115, 121, 257,
9698 258, 121, 112, 112, 1, 112, 52, 53, 54, 56,
9699 57, 58, 59, 62, 79, 86, 206, 255, 334, 357,
9700 361, 112, 206, 115, 115, 115, 209, 210, 235, 255,
9701 112, 273, 112, 112, 179, 206, 115, 115, 115, 121,
9702 120, 234, 1, 120, 1, 115, 117, 235, 255, 234,
9703 113, 117, 235, 1, 349, 350, 349, 350, 334, 335,
9704 343, 346, 334, 335, 343, 346, 1, 1, 365, 365,
9705 137, 206, 119, 119, 347, 355, 355, 232, 115, 65,
9706 135, 206, 217, 240, 265, 273, 275, 280, 289, 327,
9707 1, 1, 7, 8, 9, 112, 120, 123, 7, 8,
9708 9, 112, 120, 123, 206, 290, 110, 112, 123, 206,
9709 259, 265, 273, 276, 280, 306, 309, 310, 312, 206,
9710 259, 265, 273, 276, 280, 297, 235, 326, 354, 206,
9711 123, 312, 297, 233, 365, 365, 365, 233, 113, 206,
9712 265, 273, 275, 280, 311, 113, 120, 1, 158, 159,
9713 1, 118, 117, 124, 1, 158, 159, 118, 1, 158,
9714 159, 1, 206, 1, 113, 210, 214, 215, 254, 1,
9715 206, 235, 255, 209, 233, 1, 220, 242, 220, 242,
9716 220, 242, 1, 221, 243, 1, 221, 243, 222, 244,
9717 222, 244, 223, 245, 223, 245, 223, 245, 1, 209,
9718 210, 225, 246, 1, 209, 210, 225, 246, 209, 210,
9719 226, 247, 209, 210, 227, 248, 209, 210, 228, 249,
9720 229, 250, 230, 251, 121, 209, 210, 235, 236, 255,
9721 256, 209, 233, 1, 206, 1, 113, 214, 215, 1,
9722 206, 235, 255, 209, 233, 220, 242, 220, 242, 220,
9723 242, 1, 221, 243, 1, 221, 243, 222, 244, 222,
9724 244, 223, 245, 223, 245, 223, 245, 223, 245, 1,
9725 209, 210, 225, 246, 1, 209, 210, 225, 246, 209,
9726 210, 226, 247, 209, 210, 227, 248, 209, 210, 228,
9727 249, 229, 250, 230, 251, 121, 235, 236, 255, 256,
9728 209, 233, 110, 111, 206, 373, 374, 206, 118, 372,
9729 375, 376, 376, 190, 191, 193, 195, 206, 199, 191,
9730 193, 195, 235, 236, 255, 256, 235, 236, 255, 256,
9731 310, 111, 116, 111, 119, 110, 119, 206, 259, 273,
9732 276, 311, 314, 315, 179, 115, 115, 115, 278, 301,
9733 306, 310, 119, 206, 119, 206, 311, 206, 112, 118,
9734 169, 170, 169, 170, 354, 354, 354, 365, 354, 354,
9735 1, 319, 320, 113, 257, 258, 119, 115, 117, 301,
9736 310, 301, 306, 121, 307, 206, 112, 304, 304, 206,
9737 115, 1, 115, 1, 115, 278, 200, 110, 198, 198,
9738 257, 258, 261, 188, 189, 1, 118, 262, 116, 121,
9739 116, 121, 116, 197, 193, 206, 354, 355, 1, 115,
9740 117, 115, 117, 115, 150, 151, 154, 155, 156, 118,
9741 148, 151, 115, 118, 150, 151, 154, 155, 156, 116,
9742 314, 315, 316, 317, 318, 321, 1, 118, 262, 1,
9743 118, 262, 113, 113, 113, 124, 124, 124, 308, 113,
9744 332, 333, 124, 136, 257, 258, 328, 329, 291, 328,
9745 328, 328, 329, 113, 113, 113, 1, 158, 159, 334,
9746 335, 121, 121, 334, 335, 235, 255, 235, 255, 1,
9747 113, 235, 255, 121, 257, 258, 121, 112, 112, 334,
9748 112, 210, 255, 112, 121, 56, 1, 113, 115, 206,
9749 235, 255, 356, 115, 115, 115, 115, 115, 365, 112,
9750 233, 233, 206, 334, 335, 90, 1, 210, 254, 88,
9751 89, 90, 1, 233, 254, 1, 210, 254, 1, 233,
9752 254, 110, 355, 115, 135, 136, 113, 135, 265, 273,
9753 275, 280, 311, 113, 1, 206, 1, 113, 214, 215,
9754 1, 206, 235, 255, 1, 206, 1, 113, 214, 215,
9755 1, 206, 235, 255, 113, 113, 311, 200, 113, 312,
9756 332, 333, 257, 258, 110, 309, 310, 112, 309, 123,
9757 110, 123, 206, 259, 265, 273, 276, 280, 312, 113,
9758 113, 113, 113, 257, 258, 123, 123, 312, 117, 113,
9759 117, 117, 117, 220, 242, 365, 1, 118, 209, 233,
9760 1, 1, 113, 117, 113, 124, 124, 1, 117, 121,
9761 121, 117, 121, 121, 113, 117, 124, 124, 121, 121,
9762 121, 121, 206, 206, 115, 117, 206, 365, 118, 118,
9763 121, 121, 121, 121, 121, 121, 121, 121, 193, 200,
9764 110, 119, 119, 206, 113, 115, 301, 310, 301, 306,
9765 113, 119, 119, 206, 113, 1, 158, 159, 277, 306,
9766 301, 301, 257, 258, 112, 113, 115, 111, 200, 111,
9767 111, 115, 1, 115, 191, 206, 190, 191, 190, 195,
9768 1, 152, 153, 1, 152, 153, 355, 1, 319, 320,
9769 117, 118, 317, 318, 1, 115, 1, 115, 113, 113,
9770 124, 124, 124, 311, 313, 1, 334, 335, 334, 335,
9771 113, 113, 113, 113, 1, 334, 113, 1, 235, 334,
9772 335, 121, 121, 255, 113, 235, 255, 56, 255, 356,
9773 365, 112, 334, 121, 115, 1, 115, 1, 113, 255,
9774 356, 3, 113, 121, 365, 113, 113, 117, 112, 112,
9775 179, 113, 113, 1, 113, 117, 113, 124, 124, 113,
9776 117, 124, 124, 113, 111, 113, 113, 113, 124, 124,
9777 200, 309, 113, 332, 333, 257, 258, 200, 257, 258,
9778 110, 123, 112, 119, 317, 124, 124, 257, 258, 257,
9779 258, 123, 326, 206, 206, 233, 1, 210, 254, 209,
9780 210, 209, 210, 232, 252, 209, 210, 232, 252, 209,
9781 210, 209, 210, 232, 252, 209, 210, 232, 252, 1,
9782 209, 210, 232, 252, 209, 210, 232, 252, 209, 210,
9783 232, 252, 209, 210, 232, 252, 373, 115, 115, 111,
9784 200, 119, 354, 301, 301, 116, 119, 1, 121, 121,
9785 111, 188, 189, 115, 188, 189, 116, 116, 118, 317,
9786 318, 1, 188, 189, 188, 189, 334, 334, 334, 334,
9787 334, 335, 113, 112, 356, 113, 235, 255, 235, 334,
9788 1, 1, 113, 235, 255, 336, 337, 365, 115, 337,
9789 3, 113, 121, 119, 179, 233, 233, 1, 1, 1,
9790 1, 111, 113, 113, 124, 124, 111, 124, 124, 200,
9791 257, 258, 326, 321, 124, 124, 124, 124, 257, 258,
9792 113, 113, 113, 113, 111, 319, 257, 258, 257, 258,
9793 188, 189, 191, 191, 1, 64, 64, 235, 255, 113,
9794 235, 255, 113, 115, 113, 115, 334, 335, 113, 334,
9795 335, 113, 117, 121, 112, 3, 113, 121, 337, 115,
9796 337, 73, 179, 180, 181, 113, 113, 113, 117, 111,
9797 124, 124, 113, 117, 118, 124, 124, 115, 334, 334,
9798 113, 113, 115, 334, 235, 334, 335, 115, 336, 337,
9799 233, 337, 115, 337, 113, 121, 3, 113, 121, 354,
9800 354, 118, 180, 119, 179, 220, 242, 317, 118, 113,
9801 113, 113, 113, 113, 121, 115, 337, 337, 115, 337,
9802 181, 113, 334, 115, 115, 115, 337, 113, 113, 113,
9803 121, 118, 113, 115, 115, 115, 337, 115, 113, 115
9806 #if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__)
9807 # define YYSIZE_T __SIZE_TYPE__
9809 #if ! defined (YYSIZE_T) && defined (size_t)
9810 # define YYSIZE_T size_t
9812 #if ! defined (YYSIZE_T)
9813 # if defined (__STDC__) || defined (__cplusplus)
9814 # include <stddef.h> /* INFRINGES ON USER NAME SPACE */
9815 # define YYSIZE_T size_t
9818 #if ! defined (YYSIZE_T)
9819 # define YYSIZE_T unsigned int
9822 #define yyerrok (yyerrstatus = 0)
9823 #define yyclearin (yychar = YYEMPTY)
9824 #define YYEMPTY (-2)
9827 #define YYACCEPT goto yyacceptlab
9828 #define YYABORT goto yyabortlab
9829 #define YYERROR goto yyerrorlab
9832 /* Like YYERROR except do call yyerror. This remains here temporarily
9833 to ease the transition to the new meaning of YYERROR, for GCC.
9834 Once GCC version 2 has supplanted version 1, this can go. */
9836 #define YYFAIL goto yyerrlab
9838 #define YYRECOVERING() (!!yyerrstatus)
9840 #define YYBACKUP(Token, Value) \
9842 if (yychar == YYEMPTY && yylen == 1) \
9846 yytoken = YYTRANSLATE (yychar); \
9852 yyerror ("syntax error: cannot back up");\
9859 #define YYERRCODE 256
9862 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
9863 If N is 0, then set CURRENT to the empty location which ends
9864 the previous symbol: RHS[0] (always defined). */
9866 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
9867 #ifndef YYLLOC_DEFAULT
9868 # define YYLLOC_DEFAULT(Current, Rhs, N) \
9872 (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
9873 (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
9874 (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
9875 (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
9879 (Current).first_line = (Current).last_line = \
9880 YYRHSLOC (Rhs, 0).last_line; \
9881 (Current).first_column = (Current).last_column = \
9882 YYRHSLOC (Rhs, 0).last_column; \
9888 /* YY_LOCATION_PRINT -- Print the location on the stream.
9889 This macro was not mandated originally: define only if we know
9890 we won't break user code: when these are the locations we know. */
9892 #ifndef YY_LOCATION_PRINT
9893 # if YYLTYPE_IS_TRIVIAL
9894 # define YY_LOCATION_PRINT(File, Loc) \
9895 fprintf (File, "%d.%d-%d.%d", \
9896 (Loc).first_line, (Loc).first_column, \
9897 (Loc).last_line, (Loc).last_column)
9899 # define YY_LOCATION_PRINT(File, Loc) ((void) 0)
9904 /* YYLEX -- calling `yylex' with the right arguments. */
9907 # define YYLEX yylex (YYLEX_PARAM)
9909 # define YYLEX yylex ()
9912 /* Enable debugging if requested. */
9916 # include <stdio.h> /* INFRINGES ON USER NAME SPACE */
9917 # define YYFPRINTF fprintf
9920 # define YYDPRINTF(Args) \
9926 # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
9930 YYFPRINTF (stderr, "%s ", Title); \
9931 yysymprint (stderr, \
9932 Type, Value, Location); \
9933 YYFPRINTF (stderr, "\n"); \
9937 /*------------------------------------------------------------------.
9938 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
9940 `------------------------------------------------------------------*/
9942 #if defined (__STDC__) || defined (__cplusplus)
9944 yy_stack_print (short int *bottom, short int *top)
9947 yy_stack_print (bottom, top)
9952 YYFPRINTF (stderr, "Stack now");
9953 for (/* Nothing. */; bottom <= top; ++bottom)
9954 YYFPRINTF (stderr, " %d", *bottom);
9955 YYFPRINTF (stderr, "\n");
9958 # define YY_STACK_PRINT(Bottom, Top) \
9961 yy_stack_print ((Bottom), (Top)); \
9965 /*------------------------------------------------.
9966 | Report that the YYRULE is going to be reduced. |
9967 `------------------------------------------------*/
9969 #if defined (__STDC__) || defined (__cplusplus)
9971 yy_reduce_print (int yyrule)
9974 yy_reduce_print (yyrule)
9979 unsigned int yylno = yyrline[yyrule];
9980 YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ",
9982 /* Print the symbols being reduced, and their result. */
9983 for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++)
9984 YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]);
9985 YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]);
9988 # define YY_REDUCE_PRINT(Rule) \
9991 yy_reduce_print (Rule); \
9994 /* Nonzero means print parse trace. It is left uninitialized so that
9995 multiple parsers can coexist. */
9997 #else /* !YYDEBUG */
9998 # define YYDPRINTF(Args)
9999 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
10000 # define YY_STACK_PRINT(Bottom, Top)
10001 # define YY_REDUCE_PRINT(Rule)
10002 #endif /* !YYDEBUG */
10005 /* YYINITDEPTH -- initial size of the parser's stacks. */
10006 #ifndef YYINITDEPTH
10007 # define YYINITDEPTH 200
10010 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
10011 if the built-in stack extension method is used).
10013 Do not make this value too large; the results are undefined if
10014 SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH)
10015 evaluated with infinite-precision integer arithmetic. */
10018 # define YYMAXDEPTH 10000
10023 #if YYERROR_VERBOSE
10026 # if defined (__GLIBC__) && defined (_STRING_H)
10027 # define yystrlen strlen
10029 /* Return the length of YYSTR. */
10031 # if defined (__STDC__) || defined (__cplusplus)
10032 yystrlen (const char *yystr)
10038 register const char *yys = yystr;
10040 while (*yys++ != '\0')
10043 return yys - yystr - 1;
10049 # if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE)
10050 # define yystpcpy stpcpy
10052 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
10055 # if defined (__STDC__) || defined (__cplusplus)
10056 yystpcpy (char *yydest, const char *yysrc)
10058 yystpcpy (yydest, yysrc)
10063 register char *yyd = yydest;
10064 register const char *yys = yysrc;
10066 while ((*yyd++ = *yys++) != '\0')
10074 #endif /* !YYERROR_VERBOSE */
10079 /*--------------------------------.
10080 | Print this symbol on YYOUTPUT. |
10081 `--------------------------------*/
10083 #if defined (__STDC__) || defined (__cplusplus)
10085 yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
10088 yysymprint (yyoutput, yytype, yyvaluep, yylocationp)
10092 YYLTYPE *yylocationp;
10095 /* Pacify ``unused variable'' warnings. */
10097 (void) yylocationp;
10099 if (yytype < YYNTOKENS)
10100 YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
10102 YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
10104 YY_LOCATION_PRINT (yyoutput, *yylocationp);
10105 fprintf (yyoutput, ": ");
10108 if (yytype < YYNTOKENS)
10109 YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
10116 YYFPRINTF (yyoutput, ")");
10119 #endif /* ! YYDEBUG */
10120 /*-----------------------------------------------.
10121 | Release the memory associated to this symbol. |
10122 `-----------------------------------------------*/
10124 #if defined (__STDC__) || defined (__cplusplus)
10126 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp)
10129 yydestruct (yymsg, yytype, yyvaluep, yylocationp)
10133 YYLTYPE *yylocationp;
10136 /* Pacify ``unused variable'' warnings. */
10138 (void) yylocationp;
10141 yymsg = "Deleting";
10142 YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
10146 case 136: /* type */
10147 #line 199 "grammar.y"
10148 { FreeSpecifier((yyvaluep->specifier)); };
10149 #line 10150 "grammar.ec"
10151 case 140: /* class_function_definition_start */
10152 #line 224 "grammar.y"
10153 { FreeClassFunction((yyvaluep->classFunction)); };
10154 #line 10155 "grammar.ec"
10156 case 141: /* constructor_function_definition_start */
10157 #line 224 "grammar.y"
10158 { FreeClassFunction((yyvaluep->classFunction)); };
10159 #line 10160 "grammar.ec"
10161 case 142: /* destructor_function_definition_start */
10162 #line 224 "grammar.y"
10163 { FreeClassFunction((yyvaluep->classFunction)); };
10164 #line 10165 "grammar.ec"
10166 case 143: /* virtual_class_function_definition_start */
10167 #line 224 "grammar.y"
10168 { FreeClassFunction((yyvaluep->classFunction)); };
10169 #line 10170 "grammar.ec"
10171 case 144: /* class_function_definition_start_error */
10172 #line 224 "grammar.y"
10173 { FreeClassFunction((yyvaluep->classFunction)); };
10174 #line 10175 "grammar.ec"
10176 case 145: /* virtual_class_function_definition_start_error */
10177 #line 224 "grammar.y"
10178 { FreeClassFunction((yyvaluep->classFunction)); };
10179 #line 10180 "grammar.ec"
10181 case 146: /* class_function_definition */
10182 #line 224 "grammar.y"
10183 { FreeClassFunction((yyvaluep->classFunction)); };
10184 #line 10185 "grammar.ec"
10186 case 147: /* class_function_definition_error */
10187 #line 224 "grammar.y"
10188 { FreeClassFunction((yyvaluep->classFunction)); };
10189 #line 10190 "grammar.ec"
10191 case 148: /* instance_class_function_definition_start */
10192 #line 224 "grammar.y"
10193 { FreeClassFunction((yyvaluep->classFunction)); };
10194 #line 10195 "grammar.ec"
10196 case 149: /* instance_class_function_definition_start_error */
10197 #line 224 "grammar.y"
10198 { FreeClassFunction((yyvaluep->classFunction)); };
10199 #line 10200 "grammar.ec"
10201 case 150: /* instance_class_function_definition */
10202 #line 224 "grammar.y"
10203 { FreeClassFunction((yyvaluep->classFunction)); };
10204 #line 10205 "grammar.ec"
10206 case 151: /* instance_class_function_definition_error */
10207 #line 224 "grammar.y"
10208 { FreeClassFunction((yyvaluep->classFunction)); };
10209 #line 10210 "grammar.ec"
10211 case 152: /* data_member_initialization */
10212 #line 222 "grammar.y"
10213 { FreeMemberInit((yyvaluep->memberInit)); };
10214 #line 10215 "grammar.ec"
10216 case 153: /* data_member_initialization_error */
10217 #line 222 "grammar.y"
10218 { FreeMemberInit((yyvaluep->memberInit)); };
10219 #line 10220 "grammar.ec"
10221 case 154: /* data_member_initialization_list */
10222 #line 244 "grammar.y"
10223 { FreeList((yyvaluep->list), FreeMemberInit); };
10224 #line 10225 "grammar.ec"
10226 case 155: /* data_member_initialization_list_error */
10227 #line 244 "grammar.y"
10228 { FreeList((yyvaluep->list), FreeMemberInit); };
10229 #line 10230 "grammar.ec"
10231 case 156: /* data_member_initialization_list_coloned */
10232 #line 244 "grammar.y"
10233 { FreeList((yyvaluep->list), FreeMemberInit); };
10234 #line 10235 "grammar.ec"
10236 case 157: /* members_initialization_list_coloned */
10237 #line 245 "grammar.y"
10238 { FreeList((yyvaluep->list), FreeMembersInit); };
10239 #line 10240 "grammar.ec"
10241 case 158: /* members_initialization_list */
10242 #line 245 "grammar.y"
10243 { FreeList((yyvaluep->list), FreeMembersInit); };
10244 #line 10245 "grammar.ec"
10246 case 159: /* members_initialization_list_error */
10247 #line 245 "grammar.y"
10248 { FreeList((yyvaluep->list), FreeMembersInit); };
10249 #line 10250 "grammar.ec"
10251 case 160: /* instantiation_named */
10252 #line 220 "grammar.y"
10253 { FreeInstance((yyvaluep->instance)); };
10254 #line 10255 "grammar.ec"
10256 case 161: /* instantiation_named_error */
10257 #line 220 "grammar.y"
10258 { FreeInstance((yyvaluep->instance)); };
10259 #line 10260 "grammar.ec"
10261 case 165: /* instantiation_unnamed */
10262 #line 220 "grammar.y"
10263 { FreeInstance((yyvaluep->instance)); };
10264 #line 10265 "grammar.ec"
10266 case 166: /* instantiation_unnamed_error */
10267 #line 220 "grammar.y"
10268 { FreeInstance((yyvaluep->instance)); };
10269 #line 10270 "grammar.ec"
10271 case 169: /* default_property */
10272 #line 222 "grammar.y"
10273 { FreeMemberInit((yyvaluep->memberInit)); };
10274 #line 10275 "grammar.ec"
10276 case 170: /* default_property_error */
10277 #line 222 "grammar.y"
10278 { FreeMemberInit((yyvaluep->memberInit)); };
10279 #line 10280 "grammar.ec"
10281 case 171: /* default_property_list */
10282 #line 244 "grammar.y"
10283 { FreeList((yyvaluep->list), FreeMemberInit); };
10284 #line 10285 "grammar.ec"
10286 case 172: /* default_property_list_error */
10287 #line 244 "grammar.y"
10288 { FreeList((yyvaluep->list), FreeMemberInit); };
10289 #line 10290 "grammar.ec"
10291 case 175: /* property */
10292 #line 231 "grammar.y"
10293 { FreeProperty((yyvaluep->prop)); };
10294 #line 10295 "grammar.ec"
10296 case 186: /* struct_declaration */
10297 #line 229 "grammar.y"
10298 { FreeClassDef((yyvaluep->classDef)); };
10299 #line 10300 "grammar.ec"
10301 case 187: /* struct_declaration_error */
10302 #line 229 "grammar.y"
10303 { FreeClassDef((yyvaluep->classDef)); };
10304 #line 10305 "grammar.ec"
10306 case 188: /* struct_declaration_list */
10307 #line 243 "grammar.y"
10308 { FreeList((yyvaluep->list), FreeClassDef); };
10309 #line 10310 "grammar.ec"
10311 case 189: /* struct_declaration_list_error */
10312 #line 243 "grammar.y"
10313 { FreeList((yyvaluep->list), FreeClassDef); };
10314 #line 10315 "grammar.ec"
10316 case 203: /* class */
10317 #line 228 "grammar.y"
10318 { FreeClass((yyvaluep->_class)); };
10319 #line 10320 "grammar.ec"
10321 case 205: /* class_error */
10322 #line 228 "grammar.y"
10323 { FreeClass((yyvaluep->_class)); };
10324 #line 10325 "grammar.ec"
10326 case 206: /* identifier */
10327 #line 186 "grammar.y"
10328 { FreeIdentifier((yyvaluep->id)); };
10329 #line 10330 "grammar.ec"
10331 case 207: /* primary_expression */
10332 #line 188 "grammar.y"
10333 { FreeExpression((yyvaluep->exp)); };
10334 #line 10335 "grammar.ec"
10336 case 211: /* primary_expression_error */
10337 #line 188 "grammar.y"
10338 { FreeExpression((yyvaluep->exp)); };
10339 #line 10340 "grammar.ec"
10341 case 212: /* postfix_expression */
10342 #line 188 "grammar.y"
10343 { FreeExpression((yyvaluep->exp)); };
10344 #line 10345 "grammar.ec"
10346 case 214: /* argument_expression_list */
10347 #line 233 "grammar.y"
10348 { FreeList((yyvaluep->list), FreeExpression); };
10349 #line 10350 "grammar.ec"
10351 case 215: /* argument_expression_list_error */
10352 #line 233 "grammar.y"
10353 { FreeList((yyvaluep->list), FreeExpression); };
10354 #line 10355 "grammar.ec"
10356 case 217: /* unary_expression */
10357 #line 188 "grammar.y"
10358 { FreeExpression((yyvaluep->exp)); };
10359 #line 10360 "grammar.ec"
10361 case 220: /* cast_expression */
10362 #line 188 "grammar.y"
10363 { FreeExpression((yyvaluep->exp)); };
10364 #line 10365 "grammar.ec"
10366 case 221: /* multiplicative_expression */
10367 #line 188 "grammar.y"
10368 { FreeExpression((yyvaluep->exp)); };
10369 #line 10370 "grammar.ec"
10371 case 222: /* additive_expression */
10372 #line 188 "grammar.y"
10373 { FreeExpression((yyvaluep->exp)); };
10374 #line 10375 "grammar.ec"
10376 case 223: /* shift_expression */
10377 #line 188 "grammar.y"
10378 { FreeExpression((yyvaluep->exp)); };
10379 #line 10380 "grammar.ec"
10381 case 225: /* relational_expression */
10382 #line 188 "grammar.y"
10383 { FreeExpression((yyvaluep->exp)); };
10384 #line 10385 "grammar.ec"
10386 case 226: /* equality_expression */
10387 #line 188 "grammar.y"
10388 { FreeExpression((yyvaluep->exp)); };
10389 #line 10390 "grammar.ec"
10391 case 227: /* and_expression */
10392 #line 188 "grammar.y"
10393 { FreeExpression((yyvaluep->exp)); };
10394 #line 10395 "grammar.ec"
10396 case 228: /* exclusive_or_expression */
10397 #line 188 "grammar.y"
10398 { FreeExpression((yyvaluep->exp)); };
10399 #line 10400 "grammar.ec"
10401 case 229: /* inclusive_or_expression */
10402 #line 188 "grammar.y"
10403 { FreeExpression((yyvaluep->exp)); };
10404 #line 10405 "grammar.ec"
10406 case 230: /* logical_and_expression */
10407 #line 188 "grammar.y"
10408 { FreeExpression((yyvaluep->exp)); };
10409 #line 10410 "grammar.ec"
10411 case 231: /* logical_or_expression */
10412 #line 188 "grammar.y"
10413 { FreeExpression((yyvaluep->exp)); };
10414 #line 10415 "grammar.ec"
10416 case 232: /* conditional_expression */
10417 #line 188 "grammar.y"
10418 { FreeExpression((yyvaluep->exp)); };
10419 #line 10420 "grammar.ec"
10421 case 233: /* assignment_expression */
10422 #line 188 "grammar.y"
10423 { FreeExpression((yyvaluep->exp)); };
10424 #line 10425 "grammar.ec"
10426 case 235: /* expression */
10427 #line 233 "grammar.y"
10428 { FreeList((yyvaluep->list), FreeExpression); };
10429 #line 10430 "grammar.ec"
10431 case 237: /* postfix_expression_error */
10432 #line 188 "grammar.y"
10433 { FreeExpression((yyvaluep->exp)); };
10434 #line 10435 "grammar.ec"
10436 case 240: /* unary_expression_error */
10437 #line 188 "grammar.y"
10438 { FreeExpression((yyvaluep->exp)); };
10439 #line 10440 "grammar.ec"
10441 case 242: /* cast_expression_error */
10442 #line 188 "grammar.y"
10443 { FreeExpression((yyvaluep->exp)); };
10444 #line 10445 "grammar.ec"
10446 case 243: /* multiplicative_expression_error */
10447 #line 188 "grammar.y"
10448 { FreeExpression((yyvaluep->exp)); };
10449 #line 10450 "grammar.ec"
10451 case 244: /* additive_expression_error */
10452 #line 188 "grammar.y"
10453 { FreeExpression((yyvaluep->exp)); };
10454 #line 10455 "grammar.ec"
10456 case 245: /* shift_expression_error */
10457 #line 188 "grammar.y"
10458 { FreeExpression((yyvaluep->exp)); };
10459 #line 10460 "grammar.ec"
10461 case 246: /* relational_expression_error */
10462 #line 188 "grammar.y"
10463 { FreeExpression((yyvaluep->exp)); };
10464 #line 10465 "grammar.ec"
10466 case 247: /* equality_expression_error */
10467 #line 188 "grammar.y"
10468 { FreeExpression((yyvaluep->exp)); };
10469 #line 10470 "grammar.ec"
10471 case 248: /* and_expression_error */
10472 #line 188 "grammar.y"
10473 { FreeExpression((yyvaluep->exp)); };
10474 #line 10475 "grammar.ec"
10476 case 249: /* exclusive_or_expression_error */
10477 #line 188 "grammar.y"
10478 { FreeExpression((yyvaluep->exp)); };
10479 #line 10480 "grammar.ec"
10481 case 250: /* inclusive_or_expression_error */
10482 #line 188 "grammar.y"
10483 { FreeExpression((yyvaluep->exp)); };
10484 #line 10485 "grammar.ec"
10486 case 251: /* logical_and_expression_error */
10487 #line 188 "grammar.y"
10488 { FreeExpression((yyvaluep->exp)); };
10489 #line 10490 "grammar.ec"
10491 case 252: /* logical_or_expression_error */
10492 #line 188 "grammar.y"
10493 { FreeExpression((yyvaluep->exp)); };
10494 #line 10495 "grammar.ec"
10496 case 253: /* conditional_expression_error */
10497 #line 188 "grammar.y"
10498 { FreeExpression((yyvaluep->exp)); };
10499 #line 10500 "grammar.ec"
10501 case 254: /* assignment_expression_error */
10502 #line 188 "grammar.y"
10503 { FreeExpression((yyvaluep->exp)); };
10504 #line 10505 "grammar.ec"
10506 case 255: /* expression_error */
10507 #line 233 "grammar.y"
10508 { FreeList((yyvaluep->list), FreeExpression); };
10509 #line 10510 "grammar.ec"
10511 case 257: /* constant_expression */
10512 #line 188 "grammar.y"
10513 { FreeExpression((yyvaluep->exp)); };
10514 #line 10515 "grammar.ec"
10516 case 258: /* constant_expression_error */
10517 #line 188 "grammar.y"
10518 { FreeExpression((yyvaluep->exp)); };
10519 #line 10520 "grammar.ec"
10521 case 259: /* storage_class_specifier */
10522 #line 199 "grammar.y"
10523 { FreeSpecifier((yyvaluep->specifier)); };
10524 #line 10525 "grammar.ec"
10526 case 260: /* external_storage_class_specifier */
10527 #line 199 "grammar.y"
10528 { FreeSpecifier((yyvaluep->specifier)); };
10529 #line 10530 "grammar.ec"
10531 case 261: /* enumerator */
10532 #line 203 "grammar.y"
10533 { FreeEnumerator((yyvaluep->enumerator)); };
10534 #line 10535 "grammar.ec"
10536 case 262: /* enumerator_list */
10537 #line 234 "grammar.y"
10538 { FreeList((yyvaluep->list), FreeEnumerator); };
10539 #line 10540 "grammar.ec"
10541 case 266: /* enum_specifier_compound_error */
10542 #line 199 "grammar.y"
10543 { FreeSpecifier((yyvaluep->specifier)); };
10544 #line 10545 "grammar.ec"
10546 case 270: /* class_specifier */
10547 #line 199 "grammar.y"
10548 { FreeSpecifier((yyvaluep->specifier)); };
10549 #line 10550 "grammar.ec"
10551 case 271: /* class_specifier_error */
10552 #line 199 "grammar.y"
10553 { FreeSpecifier((yyvaluep->specifier)); };
10554 #line 10555 "grammar.ec"
10556 case 272: /* ext_storage */
10557 #line 199 "grammar.y"
10558 { FreeSpecifier((yyvaluep->specifier)); };
10559 #line 10560 "grammar.ec"
10561 case 273: /* type_qualifier */
10562 #line 199 "grammar.y"
10563 { FreeSpecifier((yyvaluep->specifier)); };
10564 #line 10565 "grammar.ec"
10566 case 274: /* type_qualifier_list */
10567 #line 235 "grammar.y"
10568 { FreeList((yyvaluep->list), FreeSpecifier); };
10569 #line 10570 "grammar.ec"
10571 case 275: /* type_specifier */
10572 #line 199 "grammar.y"
10573 { FreeSpecifier((yyvaluep->specifier)); };
10574 #line 10575 "grammar.ec"
10576 case 277: /* struct_declarator */
10577 #line 204 "grammar.y"
10578 { FreeDeclarator((yyvaluep->declarator)); };
10579 #line 10580 "grammar.ec"
10581 case 278: /* struct_declarator_list */
10582 #line 236 "grammar.y"
10583 { FreeList((yyvaluep->list), FreeDeclarator); };
10584 #line 10585 "grammar.ec"
10586 case 280: /* struct_or_union_specifier_compound */
10587 #line 199 "grammar.y"
10588 { FreeSpecifier((yyvaluep->specifier)); };
10589 #line 10590 "grammar.ec"
10591 case 281: /* struct_or_union_specifier_compound_error */
10592 #line 199 "grammar.y"
10593 { FreeSpecifier((yyvaluep->specifier)); };
10594 #line 10595 "grammar.ec"
10596 case 282: /* struct_or_union_specifier_nocompound */
10597 #line 199 "grammar.y"
10598 { FreeSpecifier((yyvaluep->specifier)); };
10599 #line 10600 "grammar.ec"
10601 case 285: /* struct_class */
10602 #line 199 "grammar.y"
10603 { FreeSpecifier((yyvaluep->specifier)); };
10604 #line 10605 "grammar.ec"
10606 case 286: /* struct_class_error */
10607 #line 199 "grammar.y"
10608 { FreeSpecifier((yyvaluep->specifier)); };
10609 #line 10610 "grammar.ec"
10611 case 288: /* specifier_qualifier_list */
10612 #line 235 "grammar.y"
10613 { FreeList((yyvaluep->list), FreeSpecifier); };
10614 #line 10615 "grammar.ec"
10616 case 290: /* declaration_specifiers */
10617 #line 235 "grammar.y"
10618 { FreeList((yyvaluep->list), FreeSpecifier); };
10619 #line 10620 "grammar.ec"
10621 case 294: /* _inheritance_specifiers */
10622 #line 235 "grammar.y"
10623 { FreeList((yyvaluep->list), FreeSpecifier); };
10624 #line 10625 "grammar.ec"
10626 case 295: /* inheritance_specifiers */
10627 #line 235 "grammar.y"
10628 { FreeList((yyvaluep->list), FreeSpecifier); };
10629 #line 10630 "grammar.ec"
10631 case 299: /* identifier_list_error */
10632 #line 240 "grammar.y"
10633 { FreeList((yyvaluep->list), FreeTypeName); };
10634 #line 10635 "grammar.ec"
10636 case 300: /* identifier_list */
10637 #line 240 "grammar.y"
10638 { FreeList((yyvaluep->list), FreeTypeName); };
10639 #line 10640 "grammar.ec"
10641 case 301: /* direct_declarator_nofunction */
10642 #line 204 "grammar.y"
10643 { FreeDeclarator((yyvaluep->declarator)); };
10644 #line 10645 "grammar.ec"
10646 case 302: /* direct_declarator_function_start */
10647 #line 204 "grammar.y"
10648 { FreeDeclarator((yyvaluep->declarator)); };
10649 #line 10650 "grammar.ec"
10651 case 303: /* direct_declarator_function */
10652 #line 204 "grammar.y"
10653 { FreeDeclarator((yyvaluep->declarator)); };
10654 #line 10655 "grammar.ec"
10656 case 304: /* direct_declarator_function_error */
10657 #line 204 "grammar.y"
10658 { FreeDeclarator((yyvaluep->declarator)); };
10659 #line 10660 "grammar.ec"
10661 case 305: /* direct_declarator */
10662 #line 204 "grammar.y"
10663 { FreeDeclarator((yyvaluep->declarator)); };
10664 #line 10665 "grammar.ec"
10666 case 306: /* ext_decl */
10667 #line 230 "grammar.y"
10668 { delete (yyvaluep->string); };
10669 #line 10670 "grammar.ec"
10671 case 308: /* direct_abstract_declarator */
10672 #line 204 "grammar.y"
10673 { FreeDeclarator((yyvaluep->declarator)); };
10674 #line 10675 "grammar.ec"
10676 case 309: /* direct_abstract_declarator_noarray */
10677 #line 204 "grammar.y"
10678 { FreeDeclarator((yyvaluep->declarator)); };
10679 #line 10680 "grammar.ec"
10681 case 310: /* pointer */
10682 #line 187 "grammar.y"
10683 { FreePointer((yyvaluep->pointer)); };
10684 #line 10685 "grammar.ec"
10686 case 311: /* abstract_declarator */
10687 #line 204 "grammar.y"
10688 { FreeDeclarator((yyvaluep->declarator)); };
10689 #line 10690 "grammar.ec"
10691 case 312: /* abstract_declarator_noarray */
10692 #line 204 "grammar.y"
10693 { FreeDeclarator((yyvaluep->declarator)); };
10694 #line 10695 "grammar.ec"
10696 case 313: /* declarator */
10697 #line 204 "grammar.y"
10698 { FreeDeclarator((yyvaluep->declarator)); };
10699 #line 10700 "grammar.ec"
10701 case 314: /* declarator_function */
10702 #line 204 "grammar.y"
10703 { FreeDeclarator((yyvaluep->declarator)); };
10704 #line 10705 "grammar.ec"
10706 case 315: /* declarator_function_error */
10707 #line 204 "grammar.y"
10708 { FreeDeclarator((yyvaluep->declarator)); };
10709 #line 10710 "grammar.ec"
10711 case 316: /* declarator_nofunction */
10712 #line 204 "grammar.y"
10713 { FreeDeclarator((yyvaluep->declarator)); };
10714 #line 10715 "grammar.ec"
10716 case 317: /* initializer */
10717 #line 209 "grammar.y"
10718 { FreeInitializer((yyvaluep->initializer)); };
10719 #line 10720 "grammar.ec"
10721 case 318: /* initializer_error */
10722 #line 209 "grammar.y"
10723 { FreeInitializer((yyvaluep->initializer)); };
10724 #line 10725 "grammar.ec"
10726 case 319: /* initializer_condition */
10727 #line 209 "grammar.y"
10728 { FreeInitializer((yyvaluep->initializer)); };
10729 #line 10730 "grammar.ec"
10731 case 320: /* initializer_condition_error */
10732 #line 209 "grammar.y"
10733 { FreeInitializer((yyvaluep->initializer)); };
10734 #line 10735 "grammar.ec"
10736 case 321: /* initializer_list */
10737 #line 238 "grammar.y"
10738 { FreeList((yyvaluep->list), FreeInitializer); };
10739 #line 10740 "grammar.ec"
10741 case 322: /* init_declarator */
10742 #line 210 "grammar.y"
10743 { FreeInitDeclarator((yyvaluep->initDeclarator)); };
10744 #line 10745 "grammar.ec"
10746 case 323: /* init_declarator_error */
10747 #line 210 "grammar.y"
10748 { FreeInitDeclarator((yyvaluep->initDeclarator)); };
10749 #line 10750 "grammar.ec"
10751 case 324: /* init_declarator_list */
10752 #line 239 "grammar.y"
10753 { FreeList((yyvaluep->list), FreeInitDeclarator); };
10754 #line 10755 "grammar.ec"
10756 case 325: /* init_declarator_list_error */
10757 #line 239 "grammar.y"
10758 { FreeList((yyvaluep->list), FreeInitDeclarator); };
10759 #line 10760 "grammar.ec"
10761 case 326: /* type_name */
10762 #line 211 "grammar.y"
10763 { FreeTypeName((yyvaluep->typeName)); };
10764 #line 10765 "grammar.ec"
10766 case 327: /* guess_type_name */
10767 #line 211 "grammar.y"
10768 { FreeTypeName((yyvaluep->typeName)); };
10769 #line 10770 "grammar.ec"
10771 case 328: /* parameter_declaration */
10772 #line 211 "grammar.y"
10773 { FreeTypeName((yyvaluep->typeName)); };
10774 #line 10775 "grammar.ec"
10776 case 329: /* parameter_declaration_error */
10777 #line 211 "grammar.y"
10778 { FreeTypeName((yyvaluep->typeName)); };
10779 #line 10780 "grammar.ec"
10781 case 330: /* parameter_list */
10782 #line 240 "grammar.y"
10783 { FreeList((yyvaluep->list), FreeTypeName); };
10784 #line 10785 "grammar.ec"
10786 case 331: /* parameter_list_error */
10787 #line 240 "grammar.y"
10788 { FreeList((yyvaluep->list), FreeTypeName); };
10789 #line 10790 "grammar.ec"
10791 case 332: /* parameter_type_list */
10792 #line 240 "grammar.y"
10793 { FreeList((yyvaluep->list), FreeTypeName); };
10794 #line 10795 "grammar.ec"
10796 case 333: /* parameter_type_list_error */
10797 #line 240 "grammar.y"
10798 { FreeList((yyvaluep->list), FreeTypeName); };
10799 #line 10800 "grammar.ec"
10801 case 334: /* statement */
10802 #line 212 "grammar.y"
10803 { FreeStatement((yyvaluep->stmt)); };
10804 #line 10805 "grammar.ec"
10806 case 335: /* statement_error */
10807 #line 212 "grammar.y"
10808 { FreeStatement((yyvaluep->stmt)); };
10809 #line 10810 "grammar.ec"
10811 case 339: /* labeled_statement */
10812 #line 212 "grammar.y"
10813 { FreeStatement((yyvaluep->stmt)); };
10814 #line 10815 "grammar.ec"
10816 case 340: /* labeled_statement_error */
10817 #line 212 "grammar.y"
10818 { FreeStatement((yyvaluep->stmt)); };
10819 #line 10820 "grammar.ec"
10821 case 341: /* declaration_mode */
10822 #line 246 "grammar.y"
10824 #line 10825 "grammar.ec"
10826 case 343: /* declaration */
10827 #line 216 "grammar.y"
10828 { FreeDeclaration((yyvaluep->declaration)); };
10829 #line 10830 "grammar.ec"
10831 case 347: /* declaration_list */
10832 #line 237 "grammar.y"
10833 { FreeList((yyvaluep->list), FreeDeclaration); };
10834 #line 10835 "grammar.ec"
10836 case 348: /* declaration_list_error */
10837 #line 237 "grammar.y"
10838 { FreeList((yyvaluep->list), FreeDeclaration); };
10839 #line 10840 "grammar.ec"
10841 case 349: /* statement_list */
10842 #line 241 "grammar.y"
10843 { FreeList((yyvaluep->list), FreeStatement); };
10844 #line 10845 "grammar.ec"
10846 case 350: /* statement_list_error */
10847 #line 241 "grammar.y"
10848 { FreeList((yyvaluep->list), FreeStatement); };
10849 #line 10850 "grammar.ec"
10851 case 351: /* compound_inside */
10852 #line 212 "grammar.y"
10853 { FreeStatement((yyvaluep->stmt)); };
10854 #line 10855 "grammar.ec"
10856 case 352: /* compound_inside_error */
10857 #line 212 "grammar.y"
10858 { FreeStatement((yyvaluep->stmt)); };
10859 #line 10860 "grammar.ec"
10861 case 354: /* compound_statement */
10862 #line 212 "grammar.y"
10863 { FreeStatement((yyvaluep->stmt)); };
10864 #line 10865 "grammar.ec"
10866 case 355: /* compound_statement_error */
10867 #line 212 "grammar.y"
10868 { FreeStatement((yyvaluep->stmt)); };
10869 #line 10870 "grammar.ec"
10871 case 356: /* expression_statement */
10872 #line 212 "grammar.y"
10873 { FreeStatement((yyvaluep->stmt)); };
10874 #line 10875 "grammar.ec"
10876 case 357: /* selection_statement */
10877 #line 212 "grammar.y"
10878 { FreeStatement((yyvaluep->stmt)); };
10879 #line 10880 "grammar.ec"
10881 case 358: /* selection_statement_error */
10882 #line 212 "grammar.y"
10883 { FreeStatement((yyvaluep->stmt)); };
10884 #line 10885 "grammar.ec"
10886 case 359: /* iteration_statement */
10887 #line 212 "grammar.y"
10888 { FreeStatement((yyvaluep->stmt)); };
10889 #line 10890 "grammar.ec"
10891 case 360: /* iteration_statement_error */
10892 #line 212 "grammar.y"
10893 { FreeStatement((yyvaluep->stmt)); };
10894 #line 10895 "grammar.ec"
10896 case 361: /* jump_statement */
10897 #line 212 "grammar.y"
10898 { FreeStatement((yyvaluep->stmt)); };
10899 #line 10900 "grammar.ec"
10901 case 362: /* jump_statement_error */
10902 #line 212 "grammar.y"
10903 { FreeStatement((yyvaluep->stmt)); };
10904 #line 10905 "grammar.ec"
10906 case 363: /* function_definition */
10907 #line 217 "grammar.y"
10908 { FreeFunction((yyvaluep->function)); };
10909 #line 10910 "grammar.ec"
10911 case 364: /* function_definition_error */
10912 #line 217 "grammar.y"
10913 { FreeFunction((yyvaluep->function)); };
10914 #line 10915 "grammar.ec"
10916 case 365: /* string_literal */
10917 #line 230 "grammar.y"
10918 { delete (yyvaluep->string); };
10919 #line 10920 "grammar.ec"
10921 case 366: /* external_declaration */
10922 #line 218 "grammar.y"
10923 { FreeExternal((yyvaluep->external)); };
10924 #line 10925 "grammar.ec"
10926 case 367: /* external_declaration_error */
10927 #line 218 "grammar.y"
10928 { FreeExternal((yyvaluep->external)); };
10929 #line 10930 "grammar.ec"
10931 case 368: /* translation_unit_error */
10932 #line 242 "grammar.y"
10933 { if((yyvaluep->list) != ast) FreeList((yyvaluep->list), FreeExternal); };
10934 #line 10935 "grammar.ec"
10936 case 369: /* translation_unit */
10937 #line 242 "grammar.y"
10938 { if((yyvaluep->list) != ast) FreeList((yyvaluep->list), FreeExternal); };
10939 #line 10940 "grammar.ec"
10948 /* Prevent warnings from -Wmissing-prototypes. */
10950 #ifdef YYPARSE_PARAM
10951 # if defined (__STDC__) || defined (__cplusplus)
10952 int yyparse (void *YYPARSE_PARAM);
10956 #else /* ! YYPARSE_PARAM */
10957 #if defined (__STDC__) || defined (__cplusplus)
10958 int yyparse (void);
10962 #endif /* ! YYPARSE_PARAM */
10966 /* The look-ahead symbol. */
10969 /* The semantic value of the look-ahead symbol. */
10972 /* Number of syntax errors so far. */
10974 /* Location data for the look-ahead symbol. */
10983 #ifdef YYPARSE_PARAM
10984 # if defined (__STDC__) || defined (__cplusplus)
10985 int yyparse (void *YYPARSE_PARAM)
10987 int yyparse (YYPARSE_PARAM)
10988 void *YYPARSE_PARAM;
10990 #else /* ! YYPARSE_PARAM */
10991 #if defined (__STDC__) || defined (__cplusplus)
11002 register int yystate;
11005 /* Number of tokens to shift before error messages enabled. */
11007 /* Look-ahead token as an internal (translated) token number. */
11010 /* Three stacks and their tools:
11011 `yyss': related to states,
11012 `yyvs': related to semantic values,
11013 `yyls': related to locations.
11015 Refer to the stacks thru separate pointers, to allow yyoverflow
11016 to reallocate them elsewhere. */
11018 /* The state stack. */
11019 short int yyssa[YYINITDEPTH];
11020 short int *yyss = yyssa;
11021 register short int *yyssp;
11023 /* The semantic value stack. */
11024 YYSTYPE yyvsa[YYINITDEPTH];
11025 YYSTYPE *yyvs = yyvsa;
11026 register YYSTYPE *yyvsp;
11028 /* The location stack. */
11029 YYLTYPE yylsa[YYINITDEPTH];
11030 YYLTYPE *yyls = yylsa;
11032 /* The locations where the error started and ended. */
11033 YYLTYPE yyerror_range[2];
11035 #define YYPOPSTACK (yyvsp--, yyssp--, yylsp--)
11037 YYSIZE_T yystacksize = YYINITDEPTH;
11039 /* The variables used to return semantic value and location from the
11040 action routines. */
11044 /* When reducing, the number of symbols on the RHS of the reduced
11048 YYDPRINTF ((stderr, "Starting parse\n"));
11053 yychar = YYEMPTY; /* Cause a token to be read. */
11055 /* Initialize stack pointers.
11056 Waste one element of value and location stack
11057 so that they stay on the same level as the state stack.
11058 The wasted elements are never initialized. */
11063 #if YYLTYPE_IS_TRIVIAL
11064 /* Initialize the default location before parsing starts. */
11065 yylloc.first_line = yylloc.last_line = 1;
11066 yylloc.first_column = yylloc.last_column = 0;
11075 /*------------------------------------------------------------.
11076 | yynewstate -- Push a new state, which is found in yystate. |
11077 `------------------------------------------------------------*/
11079 /* In all cases, when you get here, the value and location stacks
11080 have just been pushed. so pushing a state here evens the stacks.
11087 if (yyss + yystacksize - 1 <= yyssp)
11089 /* Get the current used size of the three stacks, in elements. */
11090 YYSIZE_T yysize = yyssp - yyss + 1;
11094 /* Give user a chance to reallocate the stack. Use copies of
11095 these so that the &'s don't force the real ones into
11097 YYSTYPE *yyvs1 = yyvs;
11098 short int *yyss1 = yyss;
11099 YYLTYPE *yyls1 = yyls;
11101 /* Each stack pointer address is followed by the size of the
11102 data in use in that stack, in bytes. This used to be a
11103 conditional around just the two extra args, but that might
11104 be undefined if yyoverflow is a macro. */
11105 yyoverflow ("parser stack overflow",
11106 &yyss1, yysize * sizeof (*yyssp),
11107 &yyvs1, yysize * sizeof (*yyvsp),
11108 &yyls1, yysize * sizeof (*yylsp),
11114 #else /* no yyoverflow */
11115 # ifndef YYSTACK_RELOCATE
11116 goto yyoverflowlab;
11118 /* Extend the stack our own way. */
11119 if (YYMAXDEPTH <= yystacksize)
11120 goto yyoverflowlab;
11122 if (YYMAXDEPTH < yystacksize)
11123 yystacksize = YYMAXDEPTH;
11126 short int *yyss1 = yyss;
11127 union yyalloc *yyptr =
11128 (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
11130 goto yyoverflowlab;
11131 YYSTACK_RELOCATE (yyss);
11132 YYSTACK_RELOCATE (yyvs);
11133 YYSTACK_RELOCATE (yyls);
11134 # undef YYSTACK_RELOCATE
11135 if (yyss1 != yyssa)
11136 YYSTACK_FREE (yyss1);
11139 #endif /* no yyoverflow */
11141 yyssp = yyss + yysize - 1;
11142 yyvsp = yyvs + yysize - 1;
11143 yylsp = yyls + yysize - 1;
11145 YYDPRINTF ((stderr, "Stack size increased to %lu\n",
11146 (unsigned long int) yystacksize));
11148 if (yyss + yystacksize - 1 <= yyssp)
11152 YYDPRINTF ((stderr, "Entering state %d\n", yystate));
11161 /* Do appropriate processing given the current state. */
11162 /* Read a look-ahead token if we need one and don't already have one. */
11165 /* First try to decide what to do without reference to look-ahead token. */
11167 yyn = yypact[yystate];
11168 if (yyn == YYPACT_NINF)
11171 /* Not known => get a look-ahead token if don't already have one. */
11173 /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */
11174 if (yychar == YYEMPTY)
11176 YYDPRINTF ((stderr, "Reading a token: "));
11180 if (yychar <= YYEOF)
11182 yychar = yytoken = YYEOF;
11183 YYDPRINTF ((stderr, "Now at end of input.\n"));
11187 yytoken = YYTRANSLATE (yychar);
11188 YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
11191 /* If the proper action on seeing token YYTOKEN is to reduce or to
11192 detect an error, take that action. */
11194 if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
11196 yyn = yytable[yyn];
11199 if (yyn == 0 || yyn == YYTABLE_NINF)
11205 if (yyn == YYFINAL)
11208 /* Shift the look-ahead token. */
11209 YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
11211 /* Discard the token being shifted unless it is eof. */
11212 if (yychar != YYEOF)
11218 /* Count tokens shifted since error; after three, turn off error
11227 /*-----------------------------------------------------------.
11228 | yydefault -- do the default action for the current state. |
11229 `-----------------------------------------------------------*/
11231 yyn = yydefact[yystate];
11237 /*-----------------------------.
11238 | yyreduce -- Do a reduction. |
11239 `-----------------------------*/
11241 /* yyn is the number of a rule to reduce with. */
11244 /* If YYLEN is nonzero, implement the default value of the action:
11247 Otherwise, the following line sets YYVAL to garbage.
11248 This behavior is undocumented and Bison
11249 users should not rely upon it. Assigning to YYVAL
11250 unconditionally makes the parser a bit smaller, and it avoids a
11251 GCC warning that YYVAL may be used uninitialized. */
11252 yyval = yyvsp[1-yylen];
11254 /* Default location. */
11255 YYLLOC_DEFAULT (yyloc, yylsp - yylen, yylen);
11256 YY_REDUCE_PRINT (yyn);
11260 #line 255 "grammar.y"
11262 // if($1._class && !$1._class.name)
11263 if((yyvsp[-1].id)._class)
11266 strcpy(name, (yyvsp[-1].id)._class.name ? (yyvsp[-1].id)._class.name : "");
11267 strcat(name, "::");
11268 strcat(name, (yyvsp[-1].id).string);
11269 _DeclClass(0, name);
11272 _DeclClass(0, (yyvsp[-1].id).string);
11274 FreeIdentifier((yyvsp[-1].id));
11276 fileInput.Seek((yylsp[-1]).start.pos, start);
11277 resetScannerPos(&(yylsp[-1]).start);
11282 YY_STACK_PRINT (yyss, yyssp);
11285 YY_STACK_PRINT (yyss, yyssp);
11291 #line 283 "grammar.y"
11294 // if($1._class && !$1._class.name)
11295 if((yyvsp[-1].id)._class)
11298 strcpy(name, (yyvsp[-1].id)._class.name ? (yyvsp[-1].id)._class.name : "");
11299 strcat(name, "::");
11300 strcat(name, (yyvsp[-1].id).string);
11301 _DeclClass(0, name);
11304 _DeclClass(0, (yyvsp[-1].id).string);
11306 FreeIdentifier((yyvsp[-1].id));
11308 fileInput.Seek((yylsp[-1]).start.pos, start);
11309 resetScannerPos(&(yylsp[-1]).start);
11314 YY_STACK_PRINT (yyss, yyssp);
11317 YY_STACK_PRINT (yyss, yyssp);
11324 #line 340 "grammar.y"
11325 { (yyval.specifier) = (yyvsp[0].specifier); ;}
11329 #line 342 "grammar.y"
11332 // if($1._class && !$1._class.name)
11333 if((yyvsp[-1].id)._class)
11336 strcpy(name, (yyvsp[-1].id)._class.name ? (yyvsp[-1].id)._class.name : "");
11337 strcat(name, "::");
11338 strcat(name, (yyvsp[-1].id).string);
11339 _DeclClass(0, name);
11342 _DeclClass(0, (yyvsp[-1].id).string);
11343 FreeIdentifier((yyvsp[-1].id));
11344 FreeIdentifier((yyvsp[0].id));
11346 fileInput.Seek((yylsp[-1]).start.pos, start);
11347 resetScannerPos(&(yylsp[-1]).start);
11352 YY_STACK_PRINT (yyss, yyssp);
11355 YY_STACK_PRINT (yyss, yyssp);
11358 Location tmpLoc = yylloc; (yyval.specifier) = (yyvsp[0].id); yylloc = (yylsp[-1]);
11359 Compiler_Error("Not a type: %s\n", (yyvsp[-1].id).string);
11360 yylloc = tmpLoc; (yyvsp[0].id).badID = (yyvsp[-1].id);
11366 #line 441 "grammar.y"
11367 { (yyval.specifier) = MkSpecifierName(yytext); ;}
11371 #line 445 "grammar.y"
11372 { (yyval.string) = CopyString(yytext); ;}
11376 #line 449 "grammar.y"
11377 { (yyval.specifier) = (yyvsp[-3].specifier); SetClassTemplateArgs((yyval.specifier), (yyvsp[-1].list)); (yyval.specifier).loc = (yyloc); ;}
11381 #line 451 "grammar.y"
11383 (yyval.specifier) = (yyvsp[-3].specifier);
11384 SetClassTemplateArgs((yyval.specifier), (yyvsp[-1].list));
11385 (yyval.specifier).loc = (yyloc);
11387 (yylsp[0]).end.pos--;
11388 fileInput.Seek((yylsp[0]).end.pos, start);
11389 resetScannerPos(&(yylsp[0]).end);
11395 #line 500 "grammar.y"
11396 { (yyval.classFunction) = MkClassFunction((yyvsp[-1].list), null, (yyvsp[0].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11400 #line 502 "grammar.y"
11401 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[0].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11405 #line 507 "grammar.y"
11406 { (yyval.classFunction) = MkClassFunction(null, null, null, null); (yyval.classFunction).isConstructor = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; FreeList((yyvsp[-2].list), FreeSpecifier); ;}
11410 #line 512 "grammar.y"
11411 { (yyval.classFunction) = MkClassFunction(null, null, null, null); (yyval.classFunction).isDestructor = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; FreeList((yyvsp[-2].list), FreeSpecifier) ;}
11415 #line 517 "grammar.y"
11416 { (yyval.classFunction) = MkClassFunction((yyvsp[-1].list), null, (yyvsp[0].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11420 #line 519 "grammar.y"
11421 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[0].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11425 #line 524 "grammar.y"
11426 { (yyval.classFunction) = MkClassFunction((yyvsp[-1].list), null, (yyvsp[0].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11430 #line 526 "grammar.y"
11431 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[0].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11435 #line 531 "grammar.y"
11436 { (yyval.classFunction) = MkClassFunction((yyvsp[-1].list), null, (yyvsp[0].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11440 #line 533 "grammar.y"
11441 { (yyval.classFunction) = MkClassFunction(null, null, (yyvsp[0].declarator), null); (yyval.classFunction).isVirtual = true; (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11445 #line 538 "grammar.y"
11446 { ProcessClassFunctionBody((yyvsp[-1].classFunction), (yyvsp[0].stmt)); (yyval.classFunction).loc = (yyloc); ;}
11450 #line 540 "grammar.y"
11451 { ProcessClassFunctionBody((yyvsp[-1].classFunction), (yyvsp[0].stmt)); (yyval.classFunction).loc = (yyloc); ;}
11455 #line 542 "grammar.y"
11456 { ProcessClassFunctionBody((yyvsp[-1].classFunction), null); (yyval.classFunction).loc = (yyloc); ;}
11460 #line 544 "grammar.y"
11461 { ProcessClassFunctionBody((yyvsp[-1].classFunction), (yyvsp[0].stmt)); (yyval.classFunction).loc = (yyloc); ;}
11465 #line 546 "grammar.y"
11466 { ProcessClassFunctionBody((yyvsp[-1].classFunction), (yyvsp[0].stmt)); (yyval.classFunction).loc = (yyloc); ;}
11470 #line 550 "grammar.y"
11471 { ProcessClassFunctionBody((yyvsp[-1].classFunction), null); (yyval.classFunction).loc = (yyloc); ;}
11475 #line 555 "grammar.y"
11476 { ProcessClassFunctionBody((yyvsp[-1].classFunction), (yyvsp[0].stmt)); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).loc.end = (yyvsp[0].stmt).loc.end; ;}
11480 #line 557 "grammar.y"
11481 { ProcessClassFunctionBody((yyvsp[0].classFunction), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).loc.end.charPos++; (yyval.classFunction).loc.end.pos++;;}
11485 #line 559 "grammar.y"
11486 { ProcessClassFunctionBody((yyvsp[-1].classFunction), (yyvsp[0].stmt)); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).loc.end = (yyvsp[0].stmt).loc.end; ;}
11490 #line 561 "grammar.y"
11491 { ProcessClassFunctionBody((yyvsp[0].classFunction), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).loc.end.charPos++; (yyval.classFunction).loc.end.pos++;;}
11495 #line 563 "grammar.y"
11496 { ProcessClassFunctionBody((yyvsp[-1].classFunction), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).loc.end.charPos++; (yyval.classFunction).loc.end.pos++;;}
11500 #line 569 "grammar.y"
11501 { (yyval.classFunction) = MkClassFunction((yyvsp[-1].list), null, (yyvsp[0].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11505 #line 571 "grammar.y"
11506 { (yyval.classFunction) = MkClassFunction((yyvsp[-1].list), null, MkDeclaratorFunction((yyvsp[0].declarator), null), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11510 #line 576 "grammar.y"
11511 { (yyval.classFunction) = MkClassFunction((yyvsp[-1].list), null, (yyvsp[0].declarator), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).id = ++globalContext.nextID; ;}
11515 #line 581 "grammar.y"
11516 { ProcessClassFunctionBody((yyvsp[-1].classFunction), (yyvsp[0].stmt)); (yyval.classFunction).loc = (yyloc); ;}
11520 #line 586 "grammar.y"
11521 { ProcessClassFunctionBody((yyvsp[-1].classFunction), (yyvsp[0].stmt)); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).loc.end = (yyvsp[0].stmt).loc.end; (yyval.classFunction).loc.end.charPos++; (yyval.classFunction).loc.end.pos++;;}
11525 #line 588 "grammar.y"
11526 { ProcessClassFunctionBody((yyvsp[0].classFunction), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).loc.end.charPos++; (yyval.classFunction).loc.end.pos++;;}
11530 #line 590 "grammar.y"
11531 { ProcessClassFunctionBody((yyvsp[0].classFunction), null); (yyval.classFunction).loc = (yyloc); (yyval.classFunction).loc.end.charPos++; (yyval.classFunction).loc.end.pos++;;}
11535 #line 594 "grammar.y"
11536 { (yyval.memberInit) = MkMemberInitExp((yyvsp[-2].exp), (yyvsp[0].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); (yyval.memberInit).initializer.loc.start = (yylsp[-1]).end;;}
11540 #line 595 "grammar.y"
11541 { (yyval.memberInit) = MkMemberInit(null, (yyvsp[0].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc);;}
11545 #line 599 "grammar.y"
11546 { (yyval.memberInit) = MkMemberInitExp((yyvsp[-2].exp), (yyvsp[0].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); (yyval.memberInit).initializer.loc.start = (yylsp[-1]).end;;}
11550 #line 601 "grammar.y"
11552 (yyval.memberInit) = MkMemberInitExp((yyvsp[-2].exp), MkInitializerAssignment(MkExpDummy()));
11553 (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); (yyval.memberInit).initializer.loc.start = (yyval.memberInit).initializer.loc.end = (yylsp[-1]).end;
11555 fileInput.Seek((yylsp[-1]).end.pos, start);
11557 resetScannerPos(&(yylsp[-1]).end);
11558 (yyloc).start = (yylsp[-2]).start;
11559 (yyloc).end = (yylsp[-1]).end;
11564 #line 611 "grammar.y"
11565 { (yyval.memberInit) = MkMemberInit(null, (yyvsp[0].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc);;}
11569 #line 615 "grammar.y"
11570 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].memberInit)); ;}
11574 #line 617 "grammar.y"
11575 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[0]).start; ListAdd((yyvsp[-2].list), (yyvsp[0].memberInit)); ;}
11579 #line 619 "grammar.y"
11580 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[0]).start; ListAdd((yyvsp[-2].list), (yyvsp[0].memberInit)); ;}
11584 #line 623 "grammar.y"
11585 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].memberInit)); ;}
11589 #line 625 "grammar.y"
11590 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[0]).start; ListAdd((yyvsp[-2].list), (yyvsp[0].memberInit)); ;}
11594 #line 627 "grammar.y"
11595 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[0]).start; ListAdd((yyvsp[-2].list), (yyvsp[0].memberInit)); ;}
11599 #line 630 "grammar.y"
11600 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[-1]).end;
11602 Initializer dummy = MkInitializerAssignment(MkExpDummy());
11603 MemberInit memberInit = MkMemberInit(null, dummy);
11604 memberInit.realLoc.start = memberInit.loc.start = dummy.loc.start = (yylsp[-1]).end;
11605 memberInit.realLoc.end = memberInit.loc.end = dummy.loc.end = (yylsp[-1]).end;
11606 ListAdd((yyvsp[-2].list), memberInit);
11612 #line 641 "grammar.y"
11613 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[-1]).end;
11615 Initializer dummy = MkInitializerAssignment(MkExpDummy());
11616 MemberInit memberInit = MkMemberInit(null, dummy);
11617 memberInit.realLoc.start = memberInit.loc.start = dummy.loc.start = (yylsp[-1]).end;
11618 memberInit.realLoc.end = memberInit.loc.end = dummy.loc.end = (yylsp[-1]).end;
11619 ListAdd((yyvsp[-2].list), memberInit);
11625 #line 651 "grammar.y"
11627 Initializer dummy = MkInitializerAssignment(MkExpDummy());
11628 MemberInit memberInit = MkMemberInit(null, dummy);
11629 memberInit.realLoc.start = memberInit.loc.start = dummy.loc.start = (yylsp[0]).start;
11630 memberInit.realLoc.end = memberInit.loc.end = dummy.loc.end = (yylsp[0]).start;
11632 (yyval.list) = MkList();
11633 ListAdd((yyval.list), memberInit);
11635 dummy = MkInitializerAssignment(MkExpDummy());
11636 memberInit = MkMemberInit(null, dummy);
11637 memberInit.realLoc.start = memberInit.loc.start = dummy.loc.start = (yylsp[0]).end;
11638 memberInit.realLoc.end = memberInit.loc.end = dummy.loc.end = (yylsp[0]).end;
11639 ListAdd((yyval.list), memberInit);
11644 #line 670 "grammar.y"
11645 { if((yyvsp[-1].list)->last) ((MemberInit)(yyvsp[-1].list)->last).loc.end = (yylsp[0]).end; ;}
11649 #line 672 "grammar.y"
11650 { if((yyvsp[-1].list)->last) ((MemberInit)(yyvsp[-1].list)->last).loc.end = (yylsp[0]).end; ;}
11654 #line 676 "grammar.y"
11655 { MembersInit members = MkMembersInitList((yyvsp[0].list)); (yyval.list) = MkList(); ListAdd((yyval.list), members); members.loc = (yylsp[0]); ;}
11659 #line 677 "grammar.y"
11660 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitMethod((yyvsp[0].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11664 #line 678 "grammar.y"
11665 { MembersInit members = MkMembersInitList((yyvsp[0].list)); ListAdd((yyval.list), members); members.loc = (yylsp[0]); ;}
11669 #line 679 "grammar.y"
11670 { ListAdd((yyval.list), MkMembersInitMethod((yyvsp[0].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11674 #line 680 "grammar.y"
11675 { MembersInit members = MkMembersInitList((yyvsp[0].list)); ListAdd((yyval.list), members); members.loc = (yylsp[0]); ;}
11679 #line 681 "grammar.y"
11680 { ListAdd((yyval.list), MkMembersInitMethod((yyvsp[0].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11684 #line 682 "grammar.y"
11685 { MembersInit members = MkMembersInitList(MkList()); (yyval.list) = MkList(); ListAdd((yyval.list), members); members.loc = (yylsp[0]); ;}
11689 #line 684 "grammar.y"
11690 { MembersInit members = MkMembersInitList(MkList()); ListAdd((yyval.list), members); members.loc = (yylsp[0]); ;}
11694 #line 689 "grammar.y"
11695 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitList((yyvsp[0].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11699 #line 690 "grammar.y"
11700 { ListAdd((yyvsp[-1].list), MkMembersInitList((yyvsp[0].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11704 #line 691 "grammar.y"
11705 { ListAdd((yyvsp[-1].list), MkMembersInitList((yyvsp[0].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11709 #line 695 "grammar.y"
11710 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitMethod((yyvsp[0].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11714 #line 696 "grammar.y"
11715 { ListAdd((yyval.list), MkMembersInitMethod((yyvsp[0].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11719 #line 697 "grammar.y"
11720 { ListAdd((yyval.list), MkMembersInitMethod((yyvsp[0].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11724 #line 698 "grammar.y"
11725 { ListAdd((yyval.list), MkMembersInitMethod((yyvsp[0].classFunction))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11729 #line 699 "grammar.y"
11730 { ListAdd((yyval.list), MkMembersInitList((yyvsp[0].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11734 #line 700 "grammar.y"
11735 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitList((yyvsp[0].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11739 #line 701 "grammar.y"
11740 { (yyval.list) = MkList(); ListAdd((yyval.list), MkMembersInitList((yyvsp[-1].list))); ((MembersInit)(yyval.list)->last).loc = (yylsp[0]); ;}
11744 #line 706 "grammar.y"
11745 { (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.end = (yylsp[0]).start; ;}
11749 #line 708 "grammar.y"
11750 { (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.end = (yylsp[-1]).start; ;}
11754 #line 713 "grammar.y"
11755 { (yyval.instance) = MkInstantiationNamed((yyvsp[-3].list), MkExpIdentifier((yyvsp[-2].id)), (yyvsp[0].list)); (yyval.instance).exp.loc = (yylsp[-2]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-2]); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11759 #line 715 "grammar.y"
11760 { (yyval.instance) = MkInstantiationNamed((yyvsp[-4].list), MkExpIdentifier((yyvsp[-3].id)), (yyvsp[-1].list)); (yyval.instance).exp.loc = (yylsp[-3]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-3]); (yyval.instance).insideLoc.start = (yylsp[-2]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11764 #line 717 "grammar.y"
11765 { (yyval.instance) = MkInstantiationNamed((yyvsp[-3].list), MkExpIdentifier((yyvsp[-2].id)), (yyvsp[0].list)); (yyval.instance).exp.loc = (yylsp[-2]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-2]); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11769 #line 719 "grammar.y"
11770 { (yyval.instance) = MkInstantiationNamed((yyvsp[-2].list), MkExpIdentifier((yyvsp[-1].id)), null); (yyval.instance).exp.loc = (yylsp[-1]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-1]); (yyval.instance).insideLoc.start = (yylsp[0]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11774 #line 721 "grammar.y"
11775 { (yyval.instance) = MkInstantiationNamed((yyvsp[-3].list), MkExpIdentifier((yyvsp[-2].id)), null);(yyval.instance).exp.loc = (yylsp[-2]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-2]); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11779 #line 751 "grammar.y"
11780 { (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.end = (yylsp[0]).start; ;}
11784 #line 753 "grammar.y"
11785 { (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.end = (yylsp[-1]).start; ;}
11789 #line 758 "grammar.y"
11790 { (yyval.instance) = MkInstantiationNamed((yyvsp[-3].list), MkExpIdentifier((yyvsp[-2].id)), (yyvsp[0].list));(yyval.instance).exp.loc = (yylsp[-2]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-2]); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11794 #line 760 "grammar.y"
11795 { (yyval.instance) = MkInstantiationNamed((yyvsp[-4].list), MkExpIdentifier((yyvsp[-3].id)), (yyvsp[-1].list)); (yyval.instance).exp.loc = (yylsp[-3]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-3]); (yyval.instance).insideLoc.start = (yylsp[-2]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11799 #line 762 "grammar.y"
11800 { (yyval.instance) = MkInstantiationNamed((yyvsp[-3].list), MkExpIdentifier((yyvsp[-2].id)), (yyvsp[0].list));(yyval.instance).exp.loc = (yylsp[-2]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-2]); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11804 #line 764 "grammar.y"
11805 { (yyval.instance) = MkInstantiationNamed((yyvsp[-2].list), MkExpIdentifier((yyvsp[-1].id)), null);(yyval.instance).exp.loc = (yylsp[-1]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-1]); (yyval.instance).insideLoc.start = (yylsp[0]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11809 #line 766 "grammar.y"
11810 { (yyval.instance) = MkInstantiationNamed((yyvsp[-3].list), MkExpIdentifier((yyvsp[-2].id)), null);(yyval.instance).exp.loc = (yylsp[-2]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-2]); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11814 #line 795 "grammar.y"
11815 { (yyval.instance) = MkInstantiationNamed((yyvsp[-4].list), MkExpIdentifier((yyvsp[-3].id)), (yyvsp[-1].list)); (yyval.instance).exp.loc = (yylsp[-3]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-3]); (yyval.instance).insideLoc.start = (yylsp[-2]).end; (yyval.instance).insideLoc.end = (yylsp[0]).start;;}
11819 #line 797 "grammar.y"
11820 { (yyval.instance) = MkInstantiationNamed((yyvsp[-4].list), MkExpIdentifier((yyvsp[-3].id)), (yyvsp[-1].list)); (yyval.instance).exp.loc = (yylsp[-3]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-3]); (yyval.instance).insideLoc.start = (yylsp[-2]).end; (yyval.instance).insideLoc.end = (yylsp[0]).start;;}
11824 #line 799 "grammar.y"
11825 { (yyval.instance) = MkInstantiationNamed((yyvsp[-3].list), MkExpIdentifier((yyvsp[-2].id)), MkList()); (yyval.instance).exp.loc = (yylsp[-2]); (yyval.instance).loc = (yyloc); (yyval.instance).nameLoc = (yylsp[-2]); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).start;;}
11829 #line 804 "grammar.y"
11830 { (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.end = (yylsp[0]).start; ;}
11834 #line 806 "grammar.y"
11835 { (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.end = (yylsp[-1]).start; ;}
11839 #line 811 "grammar.y"
11840 { (yyval.instance) = MkInstantiation((yyvsp[-2].specifier), null, (yyvsp[0].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11844 #line 813 "grammar.y"
11845 { Location tmpLoc = yylloc; yylloc = (yylsp[-2]);
11846 yylloc = tmpLoc; (yyval.instance) = MkInstantiation(MkSpecifierName((yyvsp[-2].id).string), null, (yyvsp[0].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; FreeIdentifier((yyvsp[-2].id)); ;}
11850 #line 817 "grammar.y"
11851 { (yyval.instance) = MkInstantiation((yyvsp[-2].specifier), null, (yyvsp[0].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11855 #line 819 "grammar.y"
11856 { (yyval.instance) = MkInstantiation((yyvsp[-1].specifier), null, null); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[0]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11860 #line 821 "grammar.y"
11861 { (yyval.instance) = MkInstantiation((yyvsp[-3].specifier), null, (yyvsp[-1].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-2]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11865 #line 823 "grammar.y"
11866 { (yyval.instance) = MkInstantiation((yyvsp[-2].specifier), null, null); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11870 #line 828 "grammar.y"
11871 { Location tmpLoc = yylloc; yylloc = (yylsp[-2]);
11872 yylloc = tmpLoc; (yyval.instance) = MkInstantiation(MkSpecifierName((yyvsp[-2].id).string), null, (yyvsp[0].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; FreeIdentifier((yyvsp[-2].id)); ;}
11876 #line 831 "grammar.y"
11877 { Location tmpLoc = yylloc; yylloc = (yylsp[-1]);
11878 yylloc = tmpLoc; (yyval.instance) = MkInstantiation(MkSpecifierName((yyvsp[-1].id).string), null, null); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[0]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; FreeIdentifier((yyvsp[-1].id)); ;}
11882 #line 834 "grammar.y"
11883 { Location tmpLoc = yylloc; yylloc = (yylsp[-3]);
11884 yylloc = tmpLoc; (yyval.instance) = MkInstantiation(MkSpecifierName((yyvsp[-3].id).string), null, (yyvsp[-1].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-2]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; FreeIdentifier((yyvsp[-3].id)); ;}
11888 #line 837 "grammar.y"
11889 { Location tmpLoc = yylloc; yylloc = (yylsp[-2]);
11890 yylloc = tmpLoc; (yyval.instance) = MkInstantiation(MkSpecifierName((yyvsp[-2].id).string), null, null); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; FreeIdentifier((yyvsp[-2].id)); ;}
11894 #line 902 "grammar.y"
11895 { (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.end = (yylsp[0]).start; ;}
11899 #line 904 "grammar.y"
11900 { (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.end = (yylsp[-1]).start; ;}
11904 #line 909 "grammar.y"
11905 { (yyval.instance) = MkInstantiation(null, null, (yyvsp[0].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11909 #line 911 "grammar.y"
11910 { (yyval.instance) = MkInstantiation(null, null, (yyvsp[-1].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-2]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11914 #line 913 "grammar.y"
11915 { (yyval.instance) = MkInstantiation(null, null, null); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[-1]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11919 #line 915 "grammar.y"
11920 { (yyval.instance) = MkInstantiation(null, null, null); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[0]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11924 #line 917 "grammar.y"
11925 { (yyval.instance) = MkInstantiation(null, null, (yyvsp[0].list)); (yyval.instance).loc = (yyloc); (yyval.instance).insideLoc.start = (yylsp[-1]).end; (yyval.instance).insideLoc.end = (yylsp[0]).end; (yyval.instance).loc.end.charPos++; (yyval.instance).loc.end.pos++; ;}
11929 #line 947 "grammar.y"
11930 { (yyval.memberInit) = MkMemberInitExp((yyvsp[-2].exp), (yyvsp[0].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); ;}
11934 #line 951 "grammar.y"
11935 { (yyval.memberInit) = MkMemberInitExp((yyvsp[-2].exp), (yyvsp[0].initializer)); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); (yyval.memberInit).initializer.loc.start = (yylsp[-1]).end; ;}
11939 #line 952 "grammar.y"
11940 { (yyval.memberInit) = MkMemberInitExp((yyvsp[-2].exp), MkInitializerAssignment(MkExpDummy())); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); (yyval.memberInit).initializer.loc.start = (yylsp[-1]).end; (yyval.memberInit).initializer.loc.end = (yylsp[-1]).end; ;}
11944 #line 953 "grammar.y"
11945 { (yyval.memberInit) = MkMemberInitExp((yyvsp[-1].exp), null); (yyval.memberInit).loc = (yyloc); (yyval.memberInit).realLoc = (yyloc); ;}
11949 #line 957 "grammar.y"
11950 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].memberInit)); ((MemberInit)(yyval.list)->last).loc = (yyloc); ;}
11954 #line 958 "grammar.y"
11955 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[0]).start; ListAdd((yyvsp[-2].list), (yyvsp[0].memberInit)); ;}
11959 #line 959 "grammar.y"
11960 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[0]).start; ListAdd((yyvsp[-2].list), (yyvsp[0].memberInit)); ;}
11964 #line 963 "grammar.y"
11965 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].memberInit)); ((MemberInit)(yyval.list)->last).loc = (yyloc); ;}
11969 #line 964 "grammar.y"
11970 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[0]).start; ListAdd((yyvsp[-2].list), (yyvsp[0].memberInit)); ;}
11974 #line 965 "grammar.y"
11975 { ((MemberInit)(yyvsp[-2].list)->last).loc.end = (yylsp[0]).start; ListAdd((yyvsp[-2].list), (yyvsp[0].memberInit)); ;}
11979 #line 971 "grammar.y"
11980 { (yyval.prop) = MkProperty((yyvsp[-2].list), null, (yyvsp[-1].id), null, null); (yyval.prop).loc = (yyloc); ;}
11984 #line 974 "grammar.y"
11985 { (yyval.prop) = MkProperty((yyvsp[-3].list), (yyvsp[-2].declarator), (yyvsp[-1].id), null, null); (yyval.prop).loc = (yyloc); ;}
11989 #line 977 "grammar.y"
11990 { (yyval.prop) = MkProperty((yyvsp[-1].list), null, null, null, null); (yyval.prop).loc = (yyloc); ;}
11994 #line 980 "grammar.y"
11995 { (yyval.prop) = MkProperty((yyvsp[-2].list), (yyvsp[-1].declarator), null, null, null); (yyval.prop).loc = (yyloc); ;}
11999 #line 983 "grammar.y"
12000 { (yyval.prop) = MkProperty(null, null, null, null, null); (yyval.prop).loc = (yyloc); ;}
12004 #line 989 "grammar.y"
12005 { (yyvsp[-2].prop).setStmt = (yyvsp[0].stmt); ;}
12009 #line 991 "grammar.y"
12010 { (yyvsp[-2].prop).getStmt = (yyvsp[0].stmt); ;}
12014 #line 993 "grammar.y"
12015 { (yyvsp[-2].prop).issetStmt = (yyvsp[0].stmt); ;}
12019 #line 995 "grammar.y"
12020 { (yyvsp[-1].prop).isWatchable = true; ;}
12024 #line 997 "grammar.y"
12025 { (yyvsp[-2].prop).category = (yyvsp[0].string); ;}
12029 #line 1001 "grammar.y"
12030 { (yyvsp[-1].prop).loc.end = (yylsp[0]).end; ;}
12034 #line 1006 "grammar.y"
12035 { (yyval.prop) = MkProperty((yyvsp[-2].list), null, (yyvsp[-1].id), null, null); (yyval.prop).loc = (yyloc); ;}
12039 #line 1009 "grammar.y"
12040 { (yyval.prop) = MkProperty((yyvsp[-3].list), (yyvsp[-2].declarator), (yyvsp[-1].id), null, null); (yyval.prop).loc = (yyloc); ;}
12044 #line 1012 "grammar.y"
12045 { (yyval.prop) = MkProperty((yyvsp[-1].list), null, null, null, null); (yyval.prop).loc = (yyloc); ;}
12049 #line 1015 "grammar.y"
12050 { (yyval.prop) = MkProperty((yyvsp[-2].list), (yyvsp[-1].declarator), null, null, null); (yyval.prop).loc = (yyloc); ;}
12054 #line 1018 "grammar.y"
12055 { (yyval.prop) = MkProperty(null, null, null, null, null); (yyval.prop).loc = (yyloc); ;}
12059 #line 1024 "grammar.y"
12060 { (yyvsp[-2].prop).setStmt = (yyvsp[0].stmt); ;}
12064 #line 1026 "grammar.y"
12065 { (yyvsp[-2].prop).getStmt = (yyvsp[0].stmt); ;}
12069 #line 1030 "grammar.y"
12070 { (yyvsp[-1].prop).loc.end = (yylsp[0]).end; ;}
12074 #line 1035 "grammar.y"
12075 { (yyval.list) = MkListOne((yyvsp[0].id)); ;}
12079 #line 1037 "grammar.y"
12080 { ListAdd((yyvsp[-1].list), (yyvsp[0].id)); ;}
12084 #line 1042 "grammar.y"
12085 { (yyval.propertyWatch) = MkPropertyWatch((yyvsp[-1].list), (yyvsp[0].stmt)); ;}
12089 #line 1044 "grammar.y"
12090 { (yyval.propertyWatch) = MkDeleteWatch((yyvsp[0].stmt)); ;}
12094 #line 1049 "grammar.y"
12095 { (yyval.list) = MkListOne((yyvsp[0].propertyWatch)); ;}
12099 #line 1051 "grammar.y"
12100 { ListAdd((yyvsp[-1].list), (yyvsp[0].propertyWatch)); ;}
12104 #line 1056 "grammar.y"
12105 { (yyval.propertyWatch) = MkPropertyWatch((yyvsp[-2].list), (yyvsp[0].stmt)); ;}
12109 #line 1061 "grammar.y"
12110 { (yyval.stmt) = MkWatchStmt(null, (yyvsp[-4].exp), (yyvsp[-1].list)); ;}
12114 #line 1063 "grammar.y"
12115 { (yyval.stmt) = MkWatchStmt((yyvsp[-8].exp), (yyvsp[-4].exp), (yyvsp[-1].list)); ;}
12119 #line 1068 "grammar.y"
12120 { (yyval.stmt) = MkStopWatchingStmt(null, (yyvsp[-3].exp), (yyvsp[-1].list)); ;}
12124 #line 1070 "grammar.y"
12125 { (yyval.stmt) = MkStopWatchingStmt((yyvsp[-7].exp), (yyvsp[-3].exp), (yyvsp[-1].list)); ;}
12129 #line 1072 "grammar.y"
12130 { (yyval.stmt) = MkStopWatchingStmt(null, (yyvsp[-1].exp), null); ;}
12134 #line 1074 "grammar.y"
12135 { (yyval.stmt) = MkStopWatchingStmt((yyvsp[-5].exp), (yyvsp[-1].exp), null); ;}
12139 #line 1079 "grammar.y"
12140 { (yyval.stmt) = MkFireWatchersStmt(null, null); ;}
12144 #line 1081 "grammar.y"
12145 { (yyval.stmt) = MkFireWatchersStmt(null, (yyvsp[0].list)); ;}
12149 #line 1083 "grammar.y"
12150 { (yyval.stmt) = MkFireWatchersStmt((yyvsp[-2].exp), null); ;}
12154 #line 1085 "grammar.y"
12155 { (yyval.stmt) = MkFireWatchersStmt((yyvsp[-3].exp), (yyvsp[0].list)); ;}
12159 #line 1089 "grammar.y"
12160 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[-2].list), (yyvsp[-1].list), null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12164 #line 1090 "grammar.y"
12165 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[-1].list), null, null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12169 #line 1091 "grammar.y"
12170 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[-1].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12174 #line 1092 "grammar.y"
12175 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[-1].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12179 #line 1093 "grammar.y"
12180 { (yyval.classDef) = MkClassDefFunction((yyvsp[0].classFunction)); (yyval.classDef).loc = (yyloc); (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12184 #line 1094 "grammar.y"
12185 { (yyval.classDef) = MkClassDefProperty((yyvsp[0].prop)); (yyval.classDef).loc = (yyloc); globalContext.nextID++; (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12189 #line 1096 "grammar.y"
12190 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[-2].list), (yyvsp[-1].list), null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); (yyval.classDef).memberAccess = (yyvsp[-3].declMode); ;}
12194 #line 1097 "grammar.y"
12195 { (yyval.classDef) = MkClassDefDeclaration(MkStructDeclaration((yyvsp[-1].list), null, null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); (yyval.classDef).memberAccess = (yyvsp[-2].declMode); ;}
12199 #line 1098 "grammar.y"
12200 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[-1].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).memberAccess = (yyvsp[-2].declMode); ;}
12204 #line 1099 "grammar.y"
12205 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[-1].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).memberAccess = (yyvsp[-2].declMode); ;}
12209 #line 1100 "grammar.y"
12210 { (yyval.classDef) = MkClassDefFunction((yyvsp[0].classFunction)); (yyval.classDef).loc = (yyloc); (yyval.classDef).memberAccess = (yyvsp[-1].declMode); ;}
12214 #line 1101 "grammar.y"
12215 { (yyval.classDef) = MkClassDefProperty((yyvsp[0].prop)); (yyval.classDef).loc = (yyloc); globalContext.nextID++; (yyval.classDef).memberAccess = (yyvsp[-1].declMode); ;}
12219 #line 1103 "grammar.y"
12220 { (yyval.classDef) = MkClassDefDefaultProperty((yyvsp[-1].list)); if((yyvsp[-1].list)->last) ((MemberInit)(yyvsp[-1].list)->last).loc.end = (yylsp[0]).start; (yyval.classDef).loc = (yyloc); ;}
12224 #line 1104 "grammar.y"
12225 { (yyval.classDef) = MkClassDefClassData(MkStructDeclaration((yyvsp[-2].list), (yyvsp[-1].list), null)); (yyval.classDef).decl.loc = (yyloc); (yyval.classDef).loc = (yyloc); ;}
12229 #line 1105 "grammar.y"
12230 { (yyval.classDef) = MkClassDefClassProperty((yyvsp[0].prop)); (yyval.classDef).loc = (yyloc); globalContext.nextID++; ;}
12234 #line 1106 "grammar.y"
12235 { (yyval.classDef) = MkClassDefPropertyWatch((yyvsp[-1].propertyWatch)); (yyval.classDef).loc = (yyloc); globalContext.nextID++; ;}
12239 #line 1107 "grammar.y"
12240 { (yyval.classDef) = null; deleteWatchable = true; ;}
12244 #line 1108 "grammar.y"
12245 { (yyval.classDef) = MkClassDefDesigner((yyvsp[-1].id).string); FreeIdentifier((yyvsp[-1].id)); ;}
12249 #line 1109 "grammar.y"
12250 { (yyval.classDef) = MkClassDefDesigner((yyvsp[-1].specifier).name); FreeSpecifier((yyvsp[-1].specifier)); ;}
12254 #line 1110 "grammar.y"
12255 { (yyval.classDef) = MkClassDefNoExpansion(); ;}
12259 #line 1111 "grammar.y"
12260 { (yyval.classDef) = MkClassDefFixed(); ;}
12264 #line 1112 "grammar.y"
12265 { (yyval.classDef) = MkClassDefDesignerDefaultProperty((yyvsp[-1].id)); ;}
12269 #line 1113 "grammar.y"
12270 { (yyval.classDef) = MkClassDefClassPropertyValue((yyvsp[-4].id), (yyvsp[-1].initializer)); (yyval.classDef).loc = (yyloc); ;}
12274 #line 1115 "grammar.y"
12275 { (yyval.classDef) = null; ;}
12279 #line 1116 "grammar.y"
12280 { memberAccessStack[defaultMemberAccess] = (yyvsp[-1].declMode); if(defaultMemberAccess == 0) { (yyval.classDef) = MkClassDefMemberAccess(); (yyval.classDef).memberAccess = (yyvsp[-1].declMode); (yyval.classDef).loc = (yyloc); } else (yyval.classDef) = null; ;}
12284 #line 1118 "grammar.y"
12285 { (yyval.classDef) = MkClassDefAccessOverride((yyvsp[-3].declMode), (yyvsp[-1].id)); (yyval.classDef).loc = (yyloc); ;}
12289 #line 1122 "grammar.y"
12290 { (yyval.classDef) = MkClassDefFunction((yyvsp[0].classFunction)); (yyval.classDef).loc = (yyvsp[0].classFunction).loc; (yyval.classDef).loc.end.charPos++; (yyval.classDef).loc.end.pos++; (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12294 #line 1123 "grammar.y"
12295 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[-1].instance))); (yyval.classDef).loc = (yyvsp[-1].instance).loc; (yyval.classDef).decl.loc = (yyval.classDef).loc; (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12299 #line 1124 "grammar.y"
12300 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[-1].instance))); (yyval.classDef).loc = (yyvsp[-1].instance).loc; (yyval.classDef).decl.loc = (yyval.classDef).loc; (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12304 #line 1125 "grammar.y"
12305 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[0].instance))); (yyval.classDef).loc = (yyvsp[0].instance).loc; (yyval.classDef).decl.loc = (yyval.classDef).loc; (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12309 #line 1126 "grammar.y"
12310 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[0].instance))); (yyval.classDef).loc = (yyvsp[0].instance).loc; (yyval.classDef).decl.loc = (yyval.classDef).loc; (yyval.classDef).memberAccess = memberAccessStack[defaultMemberAccess]; ;}
12314 #line 1128 "grammar.y"
12315 { (yyval.classDef) = MkClassDefFunction((yyvsp[0].classFunction)); (yyval.classDef).loc = (yyloc); (yyval.classDef).loc.end.charPos++; (yyval.classDef).loc.end.pos++; (yyval.classDef).memberAccess = (yyvsp[-1].declMode); ;}
12319 #line 1129 "grammar.y"
12320 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[-1].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyval.classDef).loc; (yyval.classDef).memberAccess = (yyvsp[-2].declMode); ;}
12324 #line 1130 "grammar.y"
12325 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[-1].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyval.classDef).loc; (yyval.classDef).memberAccess = (yyvsp[-2].declMode); ;}
12329 #line 1131 "grammar.y"
12330 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[0].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyval.classDef).loc; (yyval.classDef).memberAccess = (yyvsp[-1].declMode); ;}
12334 #line 1132 "grammar.y"
12335 { (yyval.classDef) = MkClassDefDeclaration(MkDeclarationClassInst((yyvsp[0].instance))); (yyval.classDef).loc = (yyloc); (yyval.classDef).decl.loc = (yyval.classDef).loc; (yyval.classDef).memberAccess = (yyvsp[-1].declMode); ;}
12339 #line 1134 "grammar.y"
12340 { (yyval.classDef) = MkClassDefDefaultProperty((yyvsp[0].list)); (yyval.classDef).loc = (yyloc); (yyval.classDef).loc.end.charPos++; (yyval.classDef).loc.end.pos++; ;}
12344 #line 1138 "grammar.y"
12345 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].classDef)); ;}
12349 #line 1139 "grammar.y"
12350 { ListAdd((yyvsp[-1].list), (yyvsp[0].classDef)); ;}
12354 #line 1140 "grammar.y"
12355 { ListAdd((yyvsp[-1].list), (yyvsp[0].classDef)); ;}
12359 #line 1144 "grammar.y"
12360 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].classDef)); ;}
12364 #line 1147 "grammar.y"
12365 { ListAdd((yyval.list), (yyvsp[0].classDef)); ;}
12369 #line 1148 "grammar.y"
12370 { ListAdd((yyval.list), (yyvsp[0].classDef)); ;}
12374 #line 1152 "grammar.y"
12375 { (yyval.templateDatatype) = MkTemplateDatatype((yyvsp[0].list), null); ;}
12379 #line 1153 "grammar.y"
12380 { (yyval.templateDatatype) = MkTemplateDatatype((yyvsp[-1].list), (yyvsp[0].declarator)); ;}
12384 #line 1154 "grammar.y"
12385 { (yyval.templateDatatype) = MkTemplateDatatype(MkListOne(MkSpecifierName((yyvsp[0].id).string)), null); FreeIdentifier((yyvsp[0].id)); ;}
12389 #line 1158 "grammar.y"
12390 { (yyval.templateArgument) = MkTemplateTypeArgument((yyvsp[0].templateDatatype)); ;}
12394 #line 1162 "grammar.y"
12395 { (yyval.templateParameter) = MkTypeTemplateParameter((yyvsp[0].id), null, null); ;}
12399 #line 1163 "grammar.y"
12400 { (yyval.templateParameter) = MkTypeTemplateParameter((yyvsp[-2].id), null, (yyvsp[0].templateArgument)); ;}
12404 #line 1164 "grammar.y"
12405 { (yyval.templateParameter) = MkTypeTemplateParameter((yyvsp[-2].id), (yyvsp[0].templateDatatype), null); ;}
12409 #line 1165 "grammar.y"
12410 { (yyval.templateParameter) = MkTypeTemplateParameter((yyvsp[-4].id), (yyvsp[-2].templateDatatype), (yyvsp[0].templateArgument)); ;}
12414 #line 1166 "grammar.y"
12415 { (yyval.templateParameter) = MkTypeTemplateParameter(MkIdentifier((yyvsp[0].string)), null, null); delete (yyvsp[0].string); ;}
12419 #line 1167 "grammar.y"
12420 { (yyval.templateParameter) = MkTypeTemplateParameter(MkIdentifier((yyvsp[-2].string)), null, (yyvsp[0].templateArgument)); ;}
12424 #line 1168 "grammar.y"
12425 { (yyval.templateParameter) = MkTypeTemplateParameter(MkIdentifier((yyvsp[-2].string)), (yyvsp[0].templateDatatype), null); ;}
12429 #line 1169 "grammar.y"
12430 { (yyval.templateParameter) = MkTypeTemplateParameter(MkIdentifier((yyvsp[-4].string)), (yyvsp[-2].templateDatatype), (yyvsp[0].templateArgument)); ;}
12434 #line 1173 "grammar.y"
12435 { (yyval.templateArgument) = MkTemplateIdentifierArgument((yyvsp[0].id)); ;}
12439 #line 1177 "grammar.y"
12440 { (yyval.templateParameter) = MkIdentifierTemplateParameter((yyvsp[0].id), dataMember, null); ;}
12444 #line 1178 "grammar.y"
12445 { (yyval.templateParameter) = MkIdentifierTemplateParameter((yyvsp[-2].id), dataMember, (yyvsp[0].templateArgument)); ;}
12449 #line 1182 "grammar.y"
12450 { (yyval.templateArgument) = MkTemplateExpressionArgument((yyvsp[0].exp)); ;}
12454 #line 1186 "grammar.y"
12455 { (yyval.templateParameter) = MkExpressionTemplateParameter((yyvsp[0].id), (yyvsp[-1].templateDatatype), null); ;}
12459 #line 1187 "grammar.y"
12460 { (yyval.templateParameter) = MkExpressionTemplateParameter((yyvsp[-2].id), (yyvsp[-3].templateDatatype), (yyvsp[0].templateArgument)); ;}
12464 #line 1197 "grammar.y"
12465 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].templateParameter)); ;}
12469 #line 1198 "grammar.y"
12470 { ListAdd((yyvsp[-2].list), (yyvsp[0].templateParameter)); ;}
12474 #line 1205 "grammar.y"
12475 { (yyval.templateArgument) = (yyvsp[0].templateArgument); (yyval.templateArgument).name = (yyvsp[-2].id); (yyval.templateArgument).loc = (yyloc); ;}
12479 #line 1206 "grammar.y"
12480 { (yyval.templateArgument) = (yyvsp[0].templateArgument); (yyval.templateArgument).name = (yyvsp[-2].id); (yyval.templateArgument).loc = (yyloc); ;}
12484 #line 1207 "grammar.y"
12485 { (yyval.templateArgument) = (yyvsp[0].templateArgument); (yyval.templateArgument).name = (yyvsp[-2].id); (yyval.templateArgument).loc = (yyloc); ;}
12489 #line 1209 "grammar.y"
12491 (yyval.templateArgument) = (yyvsp[0].templateArgument);
12492 if((yyvsp[-2].templateDatatype).specifiers && (yyvsp[-2].templateDatatype).specifiers->first)
12494 Specifier spec = (yyvsp[-2].templateDatatype).specifiers->first;
12495 if(spec.type == nameSpecifier)
12496 (yyval.templateArgument).name = MkIdentifier(spec.name);
12498 FreeTemplateDataType((yyvsp[-2].templateDatatype));
12499 (yyval.templateArgument).loc = (yyloc);
12504 #line 1221 "grammar.y"
12506 (yyval.templateArgument) = (yyvsp[0].templateArgument);
12507 if((yyvsp[-2].templateDatatype).specifiers && (yyvsp[-2].templateDatatype).specifiers->first)
12509 Specifier spec = (yyvsp[-2].templateDatatype).specifiers->first;
12510 if(spec.type == nameSpecifier)
12511 (yyval.templateArgument).name = MkIdentifier(spec.name);
12513 FreeTemplateDataType((yyvsp[-2].templateDatatype));
12514 (yyval.templateArgument).loc = (yyloc);
12519 #line 1233 "grammar.y"
12521 (yyval.templateArgument) = (yyvsp[0].templateArgument);
12522 if((yyvsp[-2].templateDatatype).specifiers && (yyvsp[-2].templateDatatype).specifiers->first)
12524 Specifier spec = (yyvsp[-2].templateDatatype).specifiers->first;
12525 if(spec.type == nameSpecifier)
12526 (yyval.templateArgument).name = MkIdentifier(spec.name);
12528 FreeTemplateDataType((yyvsp[-2].templateDatatype));
12529 (yyval.templateArgument).loc = (yyloc);
12534 #line 1247 "grammar.y"
12535 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].templateArgument)); ;}
12539 #line 1248 "grammar.y"
12540 { ListAdd((yyvsp[-2].list), (yyvsp[0].templateArgument)); ;}
12544 #line 1253 "grammar.y"
12551 #line 1258 "grammar.y"
12552 { (yyval.symbol) = DeclClassAddNameSpace(globalContext.nextID++, (yyvsp[0].id).string); FreeIdentifier((yyvsp[0].id)); (yyval.symbol).nameLoc = (yylsp[0]); memberAccessStack[++defaultMemberAccess] = privateAccess; ;}
12556 #line 1260 "grammar.y"
12558 (yyval.symbol) = DeclClass(globalContext.nextID++, (yyvsp[0].specifier).name);
12559 (yyval.symbol).nameLoc = (yylsp[0]);
12560 FreeSpecifier((yyvsp[0].specifier));
12561 ++defaultMemberAccess;
12562 memberAccessStack[defaultMemberAccess] = privateAccess;
12567 #line 1267 "grammar.y"
12568 { (yyval.symbol) = DeclClassAddNameSpace(globalContext.nextID++, (yyvsp[0].id).string); FreeIdentifier((yyvsp[-2].id)); FreeIdentifier((yyvsp[0].id)); (yyval.symbol).nameLoc = (yylsp[0]); (yyval.symbol).isRemote = true; memberAccessStack[++defaultMemberAccess] = privateAccess; ;}
12572 #line 1268 "grammar.y"
12573 { (yyval.symbol) = DeclClass(globalContext.nextID++, (yyvsp[0].specifier).name); FreeIdentifier((yyvsp[-2].id)); (yyval.symbol).nameLoc = (yylsp[0]); (yyval.symbol).isRemote = true; FreeSpecifier((yyvsp[0].specifier)); memberAccessStack[++defaultMemberAccess] = privateAccess; ;}
12577 #line 1270 "grammar.y"
12578 { (yyval.symbol) = DeclClassAddNameSpace(globalContext.nextID++, (yyvsp[-3].id).string); (yyval.symbol).templateParams = (yyvsp[-1].list); FreeIdentifier((yyvsp[-3].id)); (yyval.symbol).nameLoc = (yylsp[-3]); memberAccessStack[++defaultMemberAccess] = privateAccess; ;}
12582 #line 1272 "grammar.y"
12584 (yyval.symbol) = DeclClass(globalContext.nextID++, (yyvsp[-3].specifier).name);
12585 (yyval.symbol).templateParams = (yyvsp[-1].list);
12586 (yyval.symbol).nameLoc = (yylsp[-3]);
12587 FreeSpecifier((yyvsp[-3].specifier));
12588 ++defaultMemberAccess;
12589 memberAccessStack[defaultMemberAccess] = privateAccess;
12594 #line 1280 "grammar.y"
12595 { (yyval.symbol) = DeclClassAddNameSpace(globalContext.nextID++, (yyvsp[-3].id).string); (yyval.symbol).templateParams = (yyvsp[-1].list); FreeIdentifier((yyvsp[-5].id)); FreeIdentifier((yyvsp[-3].id)); (yyval.symbol).nameLoc = (yylsp[-3]); (yyval.symbol).isRemote = true; memberAccessStack[++defaultMemberAccess] = privateAccess; ;}
12599 #line 1281 "grammar.y"
12600 { (yyval.symbol) = DeclClass(globalContext.nextID++, (yyvsp[-3].specifier).name); (yyval.symbol).templateParams = (yyvsp[-1].list); FreeIdentifier((yyvsp[-5].id)); (yyval.symbol).nameLoc = (yylsp[-3]); (yyval.symbol).isRemote = true; FreeSpecifier((yyvsp[-3].specifier)); memberAccessStack[++defaultMemberAccess] = privateAccess; ;}
12604 #line 1286 "grammar.y"
12606 (yyval._class).loc = (yyloc);
12611 #line 1292 "grammar.y"
12613 (yyval._class) = (yyvsp[-1]._class); (yyval._class).definitions = MkList(); (yyval._class).blockStart = (yylsp[0]); (yyval._class).loc = (yyloc); (yyval._class).endid = globalContext.nextID++;
12615 PopContext(curContext);
12620 #line 1299 "grammar.y"
12622 (yyval._class) = MkClass((yyvsp[-2].symbol), null, MkList()); (yyval._class).blockStart = (yylsp[-1]); (yyval._class).loc = (yyloc); (yyval._class).endid = globalContext.nextID++;
12624 PopContext(curContext);
12629 #line 1305 "grammar.y"
12631 (yyval._class) = (yyvsp[-2]._class); (yyval._class).definitions = MkList(); (yyval._class).blockStart = (yylsp[-1]); (yyval._class).loc = (yyloc); (yyval._class).endid = globalContext.nextID++;
12633 PopContext(curContext);
12638 #line 1312 "grammar.y"
12640 (yyval._class) = MkClass(DeclClassAddNameSpace(0, (yyvsp[-1].id).string), null, null); FreeIdentifier((yyvsp[-1].id));
12642 PopContext(curContext);
12647 #line 1318 "grammar.y"
12649 (yyval._class) = MkClass(DeclClass(0, (yyvsp[-1].specifier).name), null, null); FreeSpecifier((yyvsp[-1].specifier));
12651 PopContext(curContext);
12656 #line 1327 "grammar.y"
12658 (yyval._class) = MkClass((yyvsp[-2].symbol), (yyvsp[0].list), null);
12663 #line 1334 "grammar.y"
12665 (yyval._class) = MkClass((yyvsp[-2].symbol), null, (yyvsp[0].list)); (yyval._class).deleteWatchable = deleteWatchable; deleteWatchable = false; (yyval._class).blockStart = (yylsp[-1]); (yyval._class).loc = (yyloc); (yyval._class).loc.end.charPos++; (yyval._class).loc.end.pos++; (yyval._class).endid = globalContext.nextID++;
12667 PopContext(curContext);
12672 #line 1340 "grammar.y"
12674 (yyval._class) = (yyvsp[-2]._class); (yyval._class).definitions = (yyvsp[0].list); (yyval._class).deleteWatchable = deleteWatchable; deleteWatchable = false; (yyval._class).blockStart = (yylsp[-1]); (yyval._class).loc = (yyloc); (yyval._class).loc.end.charPos++; (yyval._class).loc.end.pos++; (yyval._class).endid = globalContext.nextID++;
12676 PopContext(curContext);
12681 #line 1346 "grammar.y"
12683 (yyval._class) = MkClass((yyvsp[-2].symbol), null, (yyvsp[0].list)); (yyval._class).deleteWatchable = deleteWatchable; deleteWatchable = false; (yyval._class).blockStart = (yylsp[-1]); (yyval._class).loc = (yyloc); (yyval._class).loc.end.charPos++; (yyval._class).loc.end.pos++; (yyval._class).endid = globalContext.nextID++;
12685 PopContext(curContext);
12690 #line 1352 "grammar.y"
12692 (yyval._class) = (yyvsp[-2]._class); (yyval._class).definitions = (yyvsp[0].list); (yyval._class).deleteWatchable = deleteWatchable; deleteWatchable = false; (yyval._class).blockStart = (yylsp[-1]); (yyval._class).loc = (yyloc); (yyval._class).loc.end.charPos++; (yyval._class).loc.end.pos++; (yyval._class).endid = globalContext.nextID++;
12694 PopContext(curContext);
12699 #line 1358 "grammar.y"
12701 (yyval._class) = MkClass((yyvsp[-2].symbol), null, MkList()); (yyval._class).deleteWatchable = deleteWatchable; deleteWatchable = false; (yyval._class).blockStart = (yylsp[-1]); (yyval._class).loc = (yyloc); (yyval._class).loc.end.charPos++; (yyval._class).loc.end.pos++; (yyval._class).endid = globalContext.nextID++;
12703 PopContext(curContext);
12708 #line 1364 "grammar.y"
12710 (yyval._class) = (yyvsp[-2]._class); (yyval._class).definitions = MkList(); (yyval._class).deleteWatchable = deleteWatchable; deleteWatchable = false; (yyval._class).blockStart = (yylsp[-1]); (yyval._class).loc = (yyloc); (yyval._class).loc.end.charPos++; (yyval._class).loc.end.pos++; (yyval._class).endid = globalContext.nextID++;
12712 PopContext(curContext);
12717 #line 1375 "grammar.y"
12718 { (yyval.id) = MkIdentifier(yytext); (yyval.id).loc = (yylsp[0]); ;}
12722 #line 1381 "grammar.y"
12723 { (yyval.exp) = MkExpBrackets((yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
12727 #line 1385 "grammar.y"
12728 { (yyval.exp) = MkExpIdentifier((yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
12732 #line 1386 "grammar.y"
12733 { (yyval.exp) = MkExpInstance((yyvsp[0].instance)); (yyval.exp).loc = (yyloc); ;}
12737 #line 1387 "grammar.y"
12738 { (yyval.exp) = MkExpExtensionCompound((yyvsp[-1].stmt)); (yyval.exp).loc = (yyloc); ;}
12742 #line 1388 "grammar.y"
12743 { (yyval.exp) = MkExpExtensionExpression((yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
12747 #line 1389 "grammar.y"
12748 { (yyval.exp) = MkExpExtensionInitializer((yyvsp[-2].typeName), (yyvsp[0].initializer)); (yyval.exp).loc = (yyloc); ;}
12752 #line 1390 "grammar.y"
12753 { (yyval.exp) = MkExpExtensionInitializer((yyvsp[-5].typeName), MkInitializerAssignment(MkExpExtensionInitializer((yyvsp[-2].typeName), (yyvsp[0].initializer)))); (yyval.exp).loc = (yyloc); ;}
12757 #line 1391 "grammar.y"
12758 { (yyval.exp) = MkExpConstant(yytext); (yyval.exp).loc = (yyloc); ;}
12762 #line 1392 "grammar.y"
12763 { (yyval.exp) = MkExpString((yyvsp[0].string)); delete (yyvsp[0].string); (yyval.exp).loc = (yyloc); ;}
12767 #line 1393 "grammar.y"
12768 { (yyval.exp) = MkExpIntlString((yyvsp[0].string), null); delete (yyvsp[0].string); (yyval.exp).loc = (yyloc); ;}
12772 #line 1394 "grammar.y"
12773 { (yyval.exp) = MkExpIntlString((yyvsp[0].string), (yyvsp[-2].string)); delete (yyvsp[-2].string); delete (yyvsp[0].string); (yyval.exp).loc = (yyloc); ;}
12777 #line 1395 "grammar.y"
12778 { Expression exp = MkExpDummy(); exp.loc.start = (yylsp[-1]).end; exp.loc.end = (yylsp[0]).start; (yyval.exp) = MkExpBrackets(MkListOne(exp)); (yyval.exp).loc = (yyloc); yyerror(); ;}
12782 #line 1396 "grammar.y"
12783 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[-4].list),(yyvsp[-3].declarator)), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12787 #line 1397 "grammar.y"
12788 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[-4].list),(yyvsp[-3].declarator)), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12792 #line 1398 "grammar.y"
12793 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[-3].list),null), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12797 #line 1399 "grammar.y"
12798 { (yyval.exp) = MkExpNew(MkTypeName((yyvsp[-3].list),null), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12802 #line 1400 "grammar.y"
12803 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[-4].list),(yyvsp[-3].declarator)), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12807 #line 1401 "grammar.y"
12808 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[-4].list),(yyvsp[-3].declarator)), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12812 #line 1402 "grammar.y"
12813 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[-3].list),null), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12817 #line 1403 "grammar.y"
12818 { (yyval.exp) = MkExpNew0(MkTypeName((yyvsp[-3].list),null), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12822 #line 1404 "grammar.y"
12823 { (yyval.exp) = MkExpRenew((yyvsp[-5].exp), MkTypeName((yyvsp[-4].list),(yyvsp[-3].declarator)), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12827 #line 1405 "grammar.y"
12828 { (yyval.exp) = MkExpRenew((yyvsp[-5].exp), MkTypeName((yyvsp[-4].list),(yyvsp[-3].declarator)), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12832 #line 1406 "grammar.y"
12833 { (yyval.exp) = MkExpRenew((yyvsp[-4].exp), MkTypeName((yyvsp[-3].list),null), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12837 #line 1407 "grammar.y"
12838 { (yyval.exp) = MkExpRenew((yyvsp[-4].exp), MkTypeName((yyvsp[-3].list),null), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12842 #line 1408 "grammar.y"
12843 { (yyval.exp) = MkExpRenew0((yyvsp[-5].exp), MkTypeName((yyvsp[-4].list),(yyvsp[-3].declarator)), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12847 #line 1409 "grammar.y"
12848 { (yyval.exp) = MkExpRenew0((yyvsp[-5].exp), MkTypeName((yyvsp[-4].list),(yyvsp[-3].declarator)), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12852 #line 1410 "grammar.y"
12853 { (yyval.exp) = MkExpRenew0((yyvsp[-4].exp), MkTypeName((yyvsp[-3].list),null), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12857 #line 1411 "grammar.y"
12858 { (yyval.exp) = MkExpRenew0((yyvsp[-4].exp), MkTypeName((yyvsp[-3].list),null), (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
12862 #line 1412 "grammar.y"
12863 { (yyval.exp) = MkExpClass((yyvsp[-1].list), null); (yyval.exp).loc = (yyloc); ;}
12867 #line 1413 "grammar.y"
12868 { (yyval.exp) = MkExpClass((yyvsp[-2].list), (yyvsp[-1].declarator)); (yyval.exp).loc = (yyloc); ;}
12872 #line 1414 "grammar.y"
12873 { (yyval.exp) = MkExpClass(MkListOne(MkSpecifierName((yyvsp[-1].id).string)), null); FreeIdentifier((yyvsp[-1].id)); (yyval.exp).loc = (yyloc); ;}
12877 #line 1415 "grammar.y"
12878 { (yyval.exp) = MkExpVaArg((yyvsp[-3].exp), (yyvsp[-1].typeName)); (yyval.exp).loc = (yyloc); ;}
12882 #line 1417 "grammar.y"
12883 { (yyval.exp) = MkExpClassData((yyvsp[-1].id)); (yyval.exp).loc = (yyloc); ;}
12887 #line 1423 "grammar.y"
12888 { (yyval.exp) = MkExpArray((yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
12892 #line 1427 "grammar.y"
12893 { (yyval.exp) = MkExpInstance((yyvsp[0].instance)); (yyval.exp).loc = (yyloc); ;}
12897 #line 1431 "grammar.y"
12898 { (yyval.exp) = MkExpInstance((yyvsp[-1].instance)); (yyval.exp).loc = (yyloc); ;}
12902 #line 1435 "grammar.y"
12903 { (yyval.exp) = MkExpBrackets((yyvsp[0].list)); (yyval.exp).loc = (yyloc); ;}
12907 #line 1436 "grammar.y"
12908 { (yyval.exp) = MkExpBrackets((yyvsp[0].list)); (yyval.exp).loc = (yyloc); ;}
12912 #line 1442 "grammar.y"
12913 { (yyval.exp) = MkExpIndex((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
12917 #line 1443 "grammar.y"
12918 { (yyval.exp) = MkExpIndex((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
12922 #line 1444 "grammar.y"
12923 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), MkList()); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); ;}
12927 #line 1445 "grammar.y"
12928 { (yyval.exp) = MkExpCall((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).call.argLoc.start = (yylsp[-2]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); ;}
12932 #line 1446 "grammar.y"
12933 { (yyval.exp) = MkExpCall((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).call.argLoc.start = (yylsp[-2]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); if((yyvsp[-1].list)->last) ((Expression)(yyvsp[-1].list)->last).loc.end = (yylsp[0]).start; ;}
12937 #line 1447 "grammar.y"
12938 { (yyval.exp) = MkExpMember((yyvsp[-2].exp), (yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
12942 #line 1448 "grammar.y"
12943 { (yyval.exp) = MkExpPointer((yyvsp[-2].exp), (yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
12947 #line 1449 "grammar.y"
12948 { (yyval.exp) = MkExpOp((yyvsp[-1].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
12952 #line 1450 "grammar.y"
12953 { (yyval.exp) = MkExpOp((yyvsp[-1].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
12957 #line 1452 "grammar.y"
12958 { (yyval.exp) = MkExpIndex((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
12962 #line 1453 "grammar.y"
12963 { (yyval.exp) = MkExpIndex((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
12967 #line 1454 "grammar.y"
12968 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), MkList()); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); ;}
12972 #line 1455 "grammar.y"
12973 { (yyval.exp) = MkExpCall((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).call.argLoc.start = (yylsp[-2]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end;(yyval.exp).loc = (yyloc); ;}
12977 #line 1456 "grammar.y"
12978 { (yyval.exp) = MkExpMember((yyvsp[-2].exp), (yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
12982 #line 1457 "grammar.y"
12983 { (yyval.exp) = MkExpPointer((yyvsp[-2].exp), (yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
12987 #line 1458 "grammar.y"
12988 { (yyval.exp) = MkExpOp((yyvsp[-1].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
12992 #line 1459 "grammar.y"
12993 { (yyval.exp) = MkExpOp((yyvsp[-1].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
12997 #line 1465 "grammar.y"
12998 { (yyval.exp) = MkExpIndex((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
13002 #line 1466 "grammar.y"
13003 { (yyval.exp) = MkExpIndex((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
13007 #line 1467 "grammar.y"
13008 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), MkList()); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); ;}
13012 #line 1468 "grammar.y"
13013 { (yyval.exp) = MkExpCall((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).call.argLoc.start = (yylsp[-2]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); ;}
13017 #line 1469 "grammar.y"
13018 { (yyval.exp) = MkExpCall((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).call.argLoc.start = (yylsp[-2]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); if((yyvsp[-1].list)->last) ((Expression)(yyvsp[-1].list)->last).loc.end = (yylsp[0]).start; ;}
13022 #line 1470 "grammar.y"
13023 { (yyval.exp) = MkExpMember((yyvsp[-2].exp), (yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
13027 #line 1471 "grammar.y"
13028 { (yyval.exp) = MkExpPointer((yyvsp[-2].exp), (yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
13032 #line 1472 "grammar.y"
13033 { (yyval.exp) = MkExpOp((yyvsp[-1].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
13037 #line 1473 "grammar.y"
13038 { (yyval.exp) = MkExpOp((yyvsp[-1].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
13042 #line 1475 "grammar.y"
13043 { (yyval.exp) = MkExpIndex((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
13047 #line 1476 "grammar.y"
13048 { (yyval.exp) = MkExpIndex((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).loc = (yyloc); ;}
13052 #line 1477 "grammar.y"
13053 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), MkList()); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); ;}
13057 #line 1478 "grammar.y"
13058 { (yyval.exp) = MkExpCall((yyvsp[-3].exp), (yyvsp[-1].list)); (yyval.exp).call.argLoc.start = (yylsp[-2]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end;(yyval.exp).loc = (yyloc); ;}
13062 #line 1479 "grammar.y"
13063 { (yyval.exp) = MkExpMember((yyvsp[-2].exp), (yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
13067 #line 1480 "grammar.y"
13068 { (yyval.exp) = MkExpPointer((yyvsp[-2].exp), (yyvsp[0].id)); (yyval.exp).loc = (yyloc); ;}
13072 #line 1481 "grammar.y"
13073 { (yyval.exp) = MkExpOp((yyvsp[-1].exp), INC_OP, null); (yyval.exp).loc = (yyloc); ;}
13077 #line 1482 "grammar.y"
13078 { (yyval.exp) = MkExpOp((yyvsp[-1].exp), DEC_OP, null); (yyval.exp).loc = (yyloc); ;}
13082 #line 1486 "grammar.y"
13083 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].exp)); ;}
13087 #line 1487 "grammar.y"
13088 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].exp)); ;}
13092 #line 1488 "grammar.y"
13093 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
13097 #line 1489 "grammar.y"
13098 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
13102 #line 1493 "grammar.y"
13103 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].exp)); ;}
13107 #line 1494 "grammar.y"
13108 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].exp)); ;}
13112 #line 1495 "grammar.y"
13113 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
13117 #line 1496 "grammar.y"
13118 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
13122 #line 1497 "grammar.y"
13123 { Expression exp = MkExpDummy(); exp.loc.start = (yylsp[0]).end; exp.loc.end = (yylsp[0]).end; ListAdd((yyvsp[-1].list), exp); ;}
13127 #line 1501 "grammar.y"
13128 { (yyval.exp) = MkExpOp(null, INC_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13132 #line 1502 "grammar.y"
13133 { (yyval.exp) = MkExpOp(null, DEC_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13137 #line 1503 "grammar.y"
13138 { (yyval.exp) = MkExpOp(null, (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13142 #line 1504 "grammar.y"
13143 { (yyval.exp) = MkExpOp(null, (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13147 #line 1505 "grammar.y"
13148 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[-1].exp)); (yyval.exp).loc = (yyloc); ;}
13152 #line 1506 "grammar.y"
13153 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13157 #line 1507 "grammar.y"
13158 { (yyval.exp) = MkExpTypeSize((yyvsp[-1].typeName)); (yyval.exp).loc = (yyloc); ;}
13162 #line 1508 "grammar.y"
13163 { (yyval.exp) = MkExpClassSize((yyvsp[-1].specifier)); (yyval.exp).loc = (yyloc); ;}
13167 #line 1509 "grammar.y"
13168 { (yyval.exp) = MkExpClassSize((yyvsp[-1].specifier)); (yyval.exp).loc = (yyloc); ;}
13172 #line 1523 "grammar.y"
13173 { (yyval.i) = '&'; ;}
13177 #line 1524 "grammar.y"
13178 { (yyval.i) = '*'; ;}
13182 #line 1525 "grammar.y"
13183 { (yyval.i) = '+'; ;}
13187 #line 1526 "grammar.y"
13188 { (yyval.i) = '-'; ;}
13192 #line 1527 "grammar.y"
13193 { (yyval.i) = '~'; ;}
13197 #line 1528 "grammar.y"
13198 { (yyval.i) = '!'; ;}
13202 #line 1529 "grammar.y"
13203 { (yyval.i) = DELETE; ;}
13207 #line 1530 "grammar.y"
13208 { (yyval.i) = _INCREF; ;}
13212 #line 1535 "grammar.y"
13213 { (yyval.exp) = MkExpCast((yyvsp[-2].typeName), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13217 #line 1540 "grammar.y"
13218 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '*', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13222 #line 1541 "grammar.y"
13223 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '/', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13227 #line 1542 "grammar.y"
13228 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '%', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13232 #line 1543 "grammar.y"
13233 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '*', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13237 #line 1544 "grammar.y"
13238 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '/', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13242 #line 1545 "grammar.y"
13243 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '%', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13247 #line 1550 "grammar.y"
13248 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '+', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13252 #line 1551 "grammar.y"
13253 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '-', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13257 #line 1552 "grammar.y"
13258 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '+', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13262 #line 1553 "grammar.y"
13263 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '-', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13267 #line 1558 "grammar.y"
13268 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), LEFT_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13272 #line 1559 "grammar.y"
13273 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), RIGHT_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13277 #line 1560 "grammar.y"
13278 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), LEFT_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13282 #line 1561 "grammar.y"
13283 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), RIGHT_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13287 #line 1566 "grammar.y"
13289 (yyval.exp) = (yyvsp[-1].exp);
13295 #line 1574 "grammar.y"
13296 { skipErrors = false; (yyval.exp) = MkExpOp((yyvsp[-1].exp), '<', (yyvsp[0].exp)/*$3*/); (yyval.exp).loc = (yyloc); ;}
13300 #line 1575 "grammar.y"
13301 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '>', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13305 #line 1576 "grammar.y"
13306 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), LE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13310 #line 1577 "grammar.y"
13311 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), GE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13315 #line 1578 "grammar.y"
13316 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '<', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13320 #line 1579 "grammar.y"
13321 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '>', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13325 #line 1580 "grammar.y"
13326 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), LE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13330 #line 1581 "grammar.y"
13331 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), GE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13335 #line 1586 "grammar.y"
13336 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13340 #line 1587 "grammar.y"
13341 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13345 #line 1588 "grammar.y"
13346 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13350 #line 1589 "grammar.y"
13351 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13355 #line 1591 "grammar.y"
13356 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13360 #line 1592 "grammar.y"
13361 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13365 #line 1593 "grammar.y"
13366 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13370 #line 1594 "grammar.y"
13371 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13375 #line 1599 "grammar.y"
13376 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '&', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13380 #line 1600 "grammar.y"
13381 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '&', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13385 #line 1602 "grammar.y"
13386 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '&', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13390 #line 1603 "grammar.y"
13391 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '&', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13395 #line 1608 "grammar.y"
13396 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '^', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13400 #line 1609 "grammar.y"
13401 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '^', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13405 #line 1611 "grammar.y"
13406 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '^', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13410 #line 1612 "grammar.y"
13411 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '^', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13415 #line 1617 "grammar.y"
13416 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '|', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13420 #line 1618 "grammar.y"
13421 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '|', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13425 #line 1620 "grammar.y"
13426 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '|', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13430 #line 1621 "grammar.y"
13431 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '|', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13435 #line 1626 "grammar.y"
13436 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), AND_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13440 #line 1627 "grammar.y"
13441 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), AND_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13445 #line 1632 "grammar.y"
13446 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), OR_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13450 #line 1633 "grammar.y"
13451 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), OR_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13455 #line 1638 "grammar.y"
13456 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13460 #line 1639 "grammar.y"
13461 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13465 #line 1640 "grammar.y"
13466 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13470 #line 1641 "grammar.y"
13471 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13475 #line 1643 "grammar.y"
13476 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13480 #line 1644 "grammar.y"
13481 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13485 #line 1645 "grammar.y"
13486 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13490 #line 1646 "grammar.y"
13491 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13495 #line 1648 "grammar.y"
13496 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13500 #line 1649 "grammar.y"
13501 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13505 #line 1650 "grammar.y"
13506 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13510 #line 1651 "grammar.y"
13511 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13515 #line 1653 "grammar.y"
13516 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13520 #line 1654 "grammar.y"
13521 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13525 #line 1655 "grammar.y"
13526 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13530 #line 1656 "grammar.y"
13531 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13535 #line 1661 "grammar.y"
13536 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13540 #line 1662 "grammar.y"
13541 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13545 #line 1663 "grammar.y"
13546 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13550 #line 1664 "grammar.y"
13551 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13555 #line 1666 "grammar.y"
13556 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13560 #line 1667 "grammar.y"
13561 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13565 #line 1668 "grammar.y"
13566 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13570 #line 1669 "grammar.y"
13571 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13575 #line 1673 "grammar.y"
13576 { (yyval.i) = '='; ;}
13580 #line 1674 "grammar.y"
13581 { (yyval.i) = MUL_ASSIGN; ;}
13585 #line 1675 "grammar.y"
13586 { (yyval.i) = DIV_ASSIGN; ;}
13590 #line 1676 "grammar.y"
13591 { (yyval.i) = MOD_ASSIGN; ;}
13595 #line 1677 "grammar.y"
13596 { (yyval.i) = ADD_ASSIGN; ;}
13600 #line 1678 "grammar.y"
13601 { (yyval.i) = SUB_ASSIGN; ;}
13605 #line 1679 "grammar.y"
13606 { (yyval.i) = LEFT_ASSIGN; ;}
13610 #line 1680 "grammar.y"
13611 { (yyval.i) = RIGHT_ASSIGN; ;}
13615 #line 1681 "grammar.y"
13616 { (yyval.i) = AND_ASSIGN; ;}
13620 #line 1682 "grammar.y"
13621 { (yyval.i) = XOR_ASSIGN; ;}
13625 #line 1683 "grammar.y"
13626 { (yyval.i) = OR_ASSIGN; ;}
13630 #line 1687 "grammar.y"
13631 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].exp)); ;}
13635 #line 1688 "grammar.y"
13636 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
13640 #line 1689 "grammar.y"
13641 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
13645 #line 1694 "grammar.y"
13646 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].exp)); ;}
13650 #line 1695 "grammar.y"
13651 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
13655 #line 1696 "grammar.y"
13656 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
13660 #line 1701 "grammar.y"
13661 { (yyval.exp) = MkExpDummy(); (yyval.exp).loc = (yyloc); /*printf("Sorry, didn't mean that syntax error\n");*/ ;}
13665 #line 1703 "grammar.y"
13666 { (yyval.exp) = MkExpInstance((yyvsp[-1].instance)); (yyval.exp).loc = (yyloc); ;}
13670 #line 1705 "grammar.y"
13671 { (yyval.exp) = MkExpPointer((yyvsp[-2].exp), null); (yyval.exp).loc = (yyloc); ;}
13675 #line 1706 "grammar.y"
13676 { (yyval.exp) = MkExpPointer((yyvsp[-2].exp), null); (yyval.exp).loc = (yyloc); ;}
13680 #line 1708 "grammar.y"
13681 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), (yyvsp[0].list)); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.end.charPos++;;}
13685 #line 1709 "grammar.y"
13686 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), (yyvsp[0].list)); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.end.charPos++;;}
13690 #line 1710 "grammar.y"
13691 { (yyval.exp) = MkExpCall((yyvsp[-4].exp), (yyvsp[-2].list)); (yyval.exp).call.argLoc.start = (yylsp[-3]).start; (yyval.exp).call.argLoc.end = (yylsp[-1]).end;(yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.end.charPos++;;}
13695 #line 1711 "grammar.y"
13696 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), MkList() ); (yyloc).end = yylloc.start; (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = yylloc.start; /*@2.end; $$.call.argLoc.end.charPos++;*/ ;}
13700 #line 1712 "grammar.y"
13701 { (yyval.exp) = MkExpMember((yyvsp[-2].exp), null); (yyval.exp).loc = (yyloc); ;}
13705 #line 1714 "grammar.y"
13706 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), (yyvsp[0].list)); (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).call.argLoc.end.charPos++;;}
13710 #line 1715 "grammar.y"
13711 { (yyval.exp) = MkExpCall((yyvsp[-4].exp), (yyvsp[-2].list)); (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.start = (yylsp[-3]).start; (yyval.exp).call.argLoc.end = (yylsp[-1]).end; (yyval.exp).call.argLoc.end.charPos++;;}
13715 #line 1716 "grammar.y"
13716 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), MkList() ); (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[-1]).end; (yyval.exp).call.argLoc.end.charPos++;;}
13720 #line 1717 "grammar.y"
13721 { (yyval.exp) = MkExpMember((yyvsp[-2].exp), null); (yyval.exp).loc = (yyloc); ;}
13725 #line 1721 "grammar.y"
13726 { (yyval.exp) = MkExpDummy(); (yyval.exp).loc = (yyloc); ;}
13730 #line 1723 "grammar.y"
13731 { (yyval.exp) = MkExpInstance((yyvsp[-1].instance)); (yyval.exp).loc = (yyloc); ;}
13735 #line 1725 "grammar.y"
13736 { (yyval.exp) = MkExpPointer((yyvsp[-2].exp), null); (yyval.exp).loc = (yyloc); ;}
13740 #line 1726 "grammar.y"
13741 { (yyval.exp) = MkExpPointer((yyvsp[-2].exp), null); (yyval.exp).loc = (yyloc); ;}
13745 #line 1728 "grammar.y"
13746 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), (yyvsp[0].list)); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.end.charPos++;;}
13750 #line 1729 "grammar.y"
13751 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), (yyvsp[0].list)); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.end.charPos++;;}
13755 #line 1730 "grammar.y"
13756 { (yyval.exp) = MkExpCall((yyvsp[-4].exp), (yyvsp[-2].list)); (yyval.exp).call.argLoc.start = (yylsp[-3]).start; (yyval.exp).call.argLoc.end = (yylsp[-1]).end;(yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.end.charPos++;;}
13760 #line 1731 "grammar.y"
13761 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), MkList() ); (yyloc).end = yylloc.start; (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = yylloc.start; /*@2.end; $$.call.argLoc.end.charPos++;*/ ;}
13765 #line 1732 "grammar.y"
13766 { (yyval.exp) = MkExpMember((yyvsp[-2].exp), null); (yyval.exp).loc = (yyloc); ;}
13770 #line 1734 "grammar.y"
13771 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), (yyvsp[0].list)); (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[0]).end; (yyval.exp).call.argLoc.end.charPos++;;}
13775 #line 1735 "grammar.y"
13776 { (yyval.exp) = MkExpCall((yyvsp[-4].exp), (yyvsp[-2].list)); (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.start = (yylsp[-3]).start; (yyval.exp).call.argLoc.end = (yylsp[-1]).end; (yyval.exp).call.argLoc.end.charPos++;;}
13780 #line 1736 "grammar.y"
13781 { (yyval.exp) = MkExpCall((yyvsp[-2].exp), MkList() ); (yyval.exp).loc = (yyloc); (yyval.exp).call.argLoc.start = (yylsp[-1]).start; (yyval.exp).call.argLoc.end = (yylsp[-1]).end; (yyval.exp).call.argLoc.end.charPos++;;}
13785 #line 1737 "grammar.y"
13786 { (yyval.exp) = MkExpMember((yyvsp[-2].exp), null); (yyval.exp).loc = (yyloc); ;}
13790 #line 1741 "grammar.y"
13791 { (yyval.exp) = MkExpOp(null, INC_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13795 #line 1742 "grammar.y"
13796 { (yyval.exp) = MkExpOp(null, DEC_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13800 #line 1743 "grammar.y"
13801 { (yyval.exp) = MkExpOp(null, (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13805 #line 1744 "grammar.y"
13806 { (yyval.exp) = MkExpOp(null, (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13810 #line 1745 "grammar.y"
13811 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13815 #line 1746 "grammar.y"
13816 { (yyval.exp) = MkExpOp(null, SIZEOF, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13820 #line 1747 "grammar.y"
13821 { (yyval.exp) = MkExpTypeSize((yyvsp[-2].typeName)); (yyval.exp).loc = (yyloc); ;}
13825 #line 1748 "grammar.y"
13826 { (yyval.exp) = MkExpClassSize((yyvsp[-2].specifier)); (yyval.exp).loc = (yyloc); ;}
13830 #line 1749 "grammar.y"
13831 { (yyval.exp) = MkExpClassSize((yyvsp[-2].specifier)); (yyval.exp).loc = (yyloc); ;}
13835 #line 1765 "grammar.y"
13836 { (yyval.exp) = MkExpCast((yyvsp[-2].typeName), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13840 #line 1770 "grammar.y"
13841 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '*', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13845 #line 1771 "grammar.y"
13846 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '/', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13850 #line 1772 "grammar.y"
13851 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '%', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13855 #line 1773 "grammar.y"
13856 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '*', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13860 #line 1774 "grammar.y"
13861 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '/', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13865 #line 1775 "grammar.y"
13866 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '%', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13870 #line 1780 "grammar.y"
13871 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '+', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13875 #line 1781 "grammar.y"
13876 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '+', null); (yyval.exp).loc = (yyloc); ;}
13880 #line 1782 "grammar.y"
13881 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '-', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13885 #line 1783 "grammar.y"
13886 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '-', null); (yyval.exp).loc = (yyloc); ;}
13890 #line 1784 "grammar.y"
13891 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '+', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13895 #line 1785 "grammar.y"
13896 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '+', null); (yyval.exp).loc = (yyloc); ;}
13900 #line 1786 "grammar.y"
13901 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '-', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13905 #line 1787 "grammar.y"
13906 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '-', null); (yyval.exp).loc = (yyloc); ;}
13910 #line 1792 "grammar.y"
13911 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), LEFT_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13915 #line 1793 "grammar.y"
13916 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), RIGHT_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13920 #line 1794 "grammar.y"
13921 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), LEFT_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13925 #line 1795 "grammar.y"
13926 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), RIGHT_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13930 #line 1801 "grammar.y"
13932 if((yyvsp[-1].exp).type == identifierExp)
13934 if((yyvsp[-1].exp).identifier._class && !(yyvsp[-1].exp).identifier._class.name)
13937 strcpy(name, "::");
13938 strcat(name, (yyvsp[-1].exp).identifier.string);
13939 _DeclClass(0, name);
13942 _DeclClass(0, (yyvsp[-1].exp).identifier.string);
13944 // printf("Declaring Class %s\n", $1.identifier.string);
13945 skipErrors = false;
13947 FreeExpression((yyvsp[-1].exp));
13949 fileInput.Seek((yylsp[-1]).start.pos, start);
13950 resetScannerPos(&(yylsp[-1]).start);
13955 YY_STACK_PRINT (yyss, yyssp);
13959 YY_STACK_PRINT (yyss, yyssp);
13963 YY_STACK_PRINT (yyss, yyssp);
13967 YY_STACK_PRINT (yyss, yyssp);
13975 (yyval.exp) = MkExpOp((yyvsp[-1].exp), '<', (yyvsp[0].exp));
13976 (yyval.exp).loc = (yyloc);
13978 skipErrors = false;
13983 #line 1850 "grammar.y"
13984 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '>', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13988 #line 1851 "grammar.y"
13989 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), LE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13993 #line 1852 "grammar.y"
13994 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), GE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
13998 #line 1853 "grammar.y"
13999 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '<', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14003 #line 1854 "grammar.y"
14004 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '>', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14008 #line 1855 "grammar.y"
14009 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), LE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14013 #line 1856 "grammar.y"
14014 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), GE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14018 #line 1861 "grammar.y"
14019 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14023 #line 1862 "grammar.y"
14024 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14028 #line 1863 "grammar.y"
14029 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14033 #line 1864 "grammar.y"
14034 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14038 #line 1866 "grammar.y"
14039 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, MkExpDummy()); (yyval.exp).loc = (yyloc); ;}
14043 #line 1867 "grammar.y"
14044 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, MkExpDummy()); (yyval.exp).loc = (yyloc); ;}
14048 #line 1868 "grammar.y"
14049 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, MkExpDummy()); (yyval.exp).loc = (yyloc); ;}
14053 #line 1869 "grammar.y"
14054 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, MkExpDummy()); (yyval.exp).loc = (yyloc); ;}
14058 #line 1871 "grammar.y"
14059 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14063 #line 1872 "grammar.y"
14064 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14068 #line 1873 "grammar.y"
14069 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), EQ_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14073 #line 1874 "grammar.y"
14074 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), NE_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14078 #line 1879 "grammar.y"
14079 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '&', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14083 #line 1880 "grammar.y"
14084 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '&', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14088 #line 1882 "grammar.y"
14089 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '&', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14093 #line 1883 "grammar.y"
14094 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '&', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14098 #line 1888 "grammar.y"
14099 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '^', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14103 #line 1889 "grammar.y"
14104 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '^', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14108 #line 1891 "grammar.y"
14109 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '^', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14113 #line 1892 "grammar.y"
14114 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '^', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14118 #line 1897 "grammar.y"
14119 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '|', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14123 #line 1898 "grammar.y"
14124 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '|', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14128 #line 1900 "grammar.y"
14129 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '|', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14133 #line 1901 "grammar.y"
14134 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), '|', (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14138 #line 1906 "grammar.y"
14139 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), AND_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14143 #line 1907 "grammar.y"
14144 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), AND_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14148 #line 1912 "grammar.y"
14149 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), OR_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14153 #line 1913 "grammar.y"
14154 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), OR_OP, (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14158 #line 1918 "grammar.y"
14159 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14163 #line 1919 "grammar.y"
14164 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14168 #line 1920 "grammar.y"
14169 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14173 #line 1921 "grammar.y"
14174 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14178 #line 1922 "grammar.y"
14179 { (yyval.exp) = MkExpCondition((yyvsp[-3].exp), (yyvsp[-1].list), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).cond.elseExp.loc = (yylsp[-1]); ;}
14183 #line 1923 "grammar.y"
14184 { (yyval.exp) = MkExpCondition((yyvsp[-3].exp), (yyvsp[-1].list), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).cond.elseExp.loc = (yylsp[-1]); ;}
14188 #line 1924 "grammar.y"
14189 { (yyval.exp) = MkExpCondition((yyvsp[-3].exp), (yyvsp[-1].list), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).cond.elseExp.loc = (yylsp[-1]); ;}
14193 #line 1925 "grammar.y"
14194 { (yyval.exp) = MkExpCondition((yyvsp[-3].exp), (yyvsp[-1].list), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).cond.elseExp.loc = (yylsp[-1]); ;}
14198 #line 1927 "grammar.y"
14199 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14203 #line 1928 "grammar.y"
14204 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14208 #line 1929 "grammar.y"
14209 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14213 #line 1930 "grammar.y"
14214 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14218 #line 1931 "grammar.y"
14219 { (yyval.exp) = MkExpCondition((yyvsp[-3].exp), (yyvsp[-1].list), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).cond.elseExp.loc = (yylsp[-1]); ;}
14223 #line 1932 "grammar.y"
14224 { (yyval.exp) = MkExpCondition((yyvsp[-3].exp), (yyvsp[-1].list), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).cond.elseExp.loc = (yylsp[-1]); ;}
14228 #line 1933 "grammar.y"
14229 { (yyval.exp) = MkExpCondition((yyvsp[-3].exp), (yyvsp[-1].list), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).cond.elseExp.loc = (yylsp[-1]); ;}
14233 #line 1934 "grammar.y"
14234 { (yyval.exp) = MkExpCondition((yyvsp[-3].exp), (yyvsp[-1].list), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).cond.elseExp.loc = (yylsp[-1]); ;}
14238 #line 1936 "grammar.y"
14239 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14243 #line 1937 "grammar.y"
14244 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14248 #line 1938 "grammar.y"
14249 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14253 #line 1939 "grammar.y"
14254 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14258 #line 1941 "grammar.y"
14259 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14263 #line 1942 "grammar.y"
14264 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14268 #line 1943 "grammar.y"
14269 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14273 #line 1944 "grammar.y"
14274 { (yyval.exp) = MkExpCondition((yyvsp[-4].exp), (yyvsp[-2].list), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14278 #line 1947 "grammar.y"
14280 (yyval.exp) = MkExpCondition((yyvsp[-2].exp), MkListOne(MkExpDummy()), MkExpDummy());
14281 (yyval.exp).loc = (yyloc);
14282 ((Expression)(yyval.exp).cond.exp->last).loc = (yylsp[-1]);
14283 (yyval.exp).cond.elseExp.loc = (yylsp[0]);
14288 #line 1954 "grammar.y"
14290 (yyval.exp) = MkExpCondition((yyvsp[-2].exp), MkListOne(MkExpDummy()), MkExpDummy()); (yyval.exp).loc = (yyloc); ((Expression)(yyval.exp).cond.exp->last).loc = (yylsp[-1]); (yyval.exp).cond.elseExp.loc = (yylsp[0]);
14295 #line 1958 "grammar.y"
14297 (yyval.exp) = MkExpCondition((yyvsp[-1].exp), MkListOne(MkExpDummy()), MkExpDummy()); (yyval.exp).loc = (yyloc); ((Expression)(yyval.exp).cond.exp->last).loc = (yylsp[0]); (yyval.exp).cond.elseExp.loc = (yylsp[0]);
14302 #line 1962 "grammar.y"
14304 (yyval.exp) = MkExpCondition((yyvsp[-1].exp), MkListOne(MkExpDummy()), MkExpDummy()); (yyval.exp).loc = (yyloc); ((Expression)(yyval.exp).cond.exp->last).loc = (yylsp[0]); (yyval.exp).cond.elseExp.loc = (yylsp[0]);
14309 #line 1969 "grammar.y"
14310 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14314 #line 1970 "grammar.y"
14315 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).op.exp2.loc = (yylsp[-1]); ;}
14319 #line 1971 "grammar.y"
14320 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14324 #line 1972 "grammar.y"
14325 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), MkExpDummy()); (yyval.exp).loc = (yyloc); (yyval.exp).op.exp2.loc = (yylsp[-1]); ;}
14329 #line 1974 "grammar.y"
14330 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14334 #line 1975 "grammar.y"
14335 { (yyval.exp) = MkExpOp((yyvsp[-2].exp), (yyvsp[-1].i), (yyvsp[0].exp)); (yyval.exp).loc = (yyloc); ;}
14339 #line 1979 "grammar.y"
14340 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].exp)); ;}
14344 #line 1980 "grammar.y"
14345 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[-1].exp)); ;}
14349 #line 1981 "grammar.y"
14350 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
14354 #line 1982 "grammar.y"
14355 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
14359 #line 1986 "grammar.y"
14360 { FreeList((yyvsp[0].list), FreeExpression); ;}
14364 #line 1987 "grammar.y"
14365 { FreeList((yyvsp[0].list), FreeExpression); ;}
14369 #line 1988 "grammar.y"
14370 { FreeList((yyvsp[0].list), FreeExpression); ;}
14374 #line 1992 "grammar.y"
14375 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].exp)); ;}
14379 #line 1993 "grammar.y"
14380 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[-1].exp)); ;}
14384 #line 1994 "grammar.y"
14385 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
14389 #line 1995 "grammar.y"
14390 { ListAdd((yyvsp[-2].list), (yyvsp[0].exp)); ;}
14394 #line 2005 "grammar.y"
14395 { (yyval.specifier) = MkSpecifier(TYPEDEF); ;}
14399 #line 2006 "grammar.y"
14400 { (yyval.specifier) = MkSpecifier(EXTERN); ;}
14404 #line 2007 "grammar.y"
14405 { (yyval.specifier) = MkSpecifier(STATIC); ;}
14409 #line 2008 "grammar.y"
14410 { (yyval.specifier) = MkSpecifier(AUTO); ;}
14414 #line 2009 "grammar.y"
14415 { (yyval.specifier) = MkSpecifier(REGISTER); ;}
14419 #line 2013 "grammar.y"
14420 { (yyval.specifier) = MkSpecifier(TYPEDEF); declMode = defaultAccess; ;}
14424 #line 2014 "grammar.y"
14425 { (yyval.specifier) = MkSpecifier(EXTERN); ;}
14429 #line 2015 "grammar.y"
14430 { (yyval.specifier) = MkSpecifier(STATIC); declMode = staticAccess; ;}
14434 #line 2016 "grammar.y"
14435 { (yyval.specifier) = MkSpecifier(AUTO); ;}
14439 #line 2017 "grammar.y"
14440 { (yyval.specifier) = MkSpecifier(REGISTER); ;}
14444 #line 2021 "grammar.y"
14445 { (yyval.enumerator) = MkEnumerator((yyvsp[0].id), null); ;}
14449 #line 2022 "grammar.y"
14450 { (yyval.enumerator) = MkEnumerator((yyvsp[-2].id), (yyvsp[0].exp)); ;}
14454 #line 2023 "grammar.y"
14455 { (yyval.enumerator) = MkEnumerator((yyvsp[-2].id), (yyvsp[0].exp)); ;}
14459 #line 2027 "grammar.y"
14460 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].enumerator)); ;}
14464 #line 2028 "grammar.y"
14465 { ListAdd((yyvsp[-2].list), (yyvsp[0].enumerator)); ;}
14469 #line 2033 "grammar.y"
14470 { memberAccessStack[++defaultMemberAccess] = publicAccess; ;}
14474 #line 2037 "grammar.y"
14475 { (yyval.specifier) = MkEnum((yyvsp[0].id), null); POP_DEFAULT_ACCESS ;}
14479 #line 2038 "grammar.y"
14480 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[0].specifier).name), null); POP_DEFAULT_ACCESS ;}
14484 #line 2042 "grammar.y"
14485 { (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14489 #line 2043 "grammar.y"
14490 { (yyval.specifier) = MkEnum((yyvsp[-2].id), null); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14494 #line 2044 "grammar.y"
14495 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[-2].specifier).name), null); FreeSpecifier((yyvsp[-2].specifier)); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14499 #line 2048 "grammar.y"
14500 { (yyval.specifier) = MkEnum(null, (yyvsp[0].list)); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14504 #line 2049 "grammar.y"
14505 { (yyval.specifier) = MkEnum(null, null); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14509 #line 2051 "grammar.y"
14510 { (yyval.specifier) = MkEnum((yyvsp[-2].id), (yyvsp[0].list)); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14514 #line 2052 "grammar.y"
14515 { (yyval.specifier) = MkEnum((yyvsp[-3].id), (yyvsp[-1].list)); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14519 #line 2053 "grammar.y"
14520 { (yyval.specifier) = MkEnum((yyvsp[-2].id), null); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14524 #line 2054 "grammar.y"
14525 { (yyval.specifier) = MkEnum((yyvsp[-4].id), (yyvsp[-2].list)); (yyval.specifier).loc = (yyloc); (yyval.specifier).definitions = (yyvsp[0].list); POP_DEFAULT_ACCESS ;}
14529 #line 2055 "grammar.y"
14530 { (yyval.specifier) = MkEnum((yyvsp[-4].id), (yyvsp[-2].list)); (yyval.specifier).loc = (yyloc); (yyval.specifier).definitions = (yyvsp[0].list); POP_DEFAULT_ACCESS ;}
14534 #line 2057 "grammar.y"
14535 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[-2].specifier).name), (yyvsp[0].list)); (yyval.specifier).loc = (yyloc); FreeSpecifier((yyvsp[-2].specifier)); POP_DEFAULT_ACCESS ;}
14539 #line 2058 "grammar.y"
14540 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[-3].specifier).name), (yyvsp[-1].list)); (yyval.specifier).loc = (yyloc); FreeSpecifier((yyvsp[-3].specifier)); POP_DEFAULT_ACCESS ;}
14544 #line 2059 "grammar.y"
14545 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[-2].specifier).name), null); (yyval.specifier).loc = (yyloc); FreeSpecifier((yyvsp[-2].specifier)); POP_DEFAULT_ACCESS ;}
14549 #line 2060 "grammar.y"
14550 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[-4].specifier).name), (yyvsp[-2].list)); (yyval.specifier).loc = (yyloc); (yyval.specifier).definitions = (yyvsp[0].list); FreeSpecifier((yyvsp[-4].specifier)); POP_DEFAULT_ACCESS ;}
14554 #line 2061 "grammar.y"
14555 { (yyval.specifier) = MkEnum(MkIdentifier((yyvsp[-4].specifier).name), (yyvsp[-2].list)); (yyval.specifier).loc = (yyloc); (yyval.specifier).definitions = (yyvsp[0].list); FreeSpecifier((yyvsp[-4].specifier)); POP_DEFAULT_ACCESS ;}
14559 #line 2065 "grammar.y"
14560 { (yyval.id) = (yyvsp[0].id); if(declMode) DeclClassAddNameSpace(globalContext.nextID++, (yyvsp[0].id).string); ;}
14564 #line 2066 "grammar.y"
14565 { (yyval.id) = MkIdentifier((yyvsp[0].specifier).name); if(declMode) DeclClass(globalContext.nextID++, (yyvsp[0].specifier).name); FreeSpecifier((yyvsp[0].specifier)); ;}
14569 #line 2070 "grammar.y"
14570 { (yyval.specifier).loc = (yyloc); ;}
14574 #line 2071 "grammar.y"
14575 { (yyval.specifier) = MkEnum((yyvsp[-4].id), null); (yyval.specifier).baseSpecs = (yyvsp[-2].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14579 #line 2072 "grammar.y"
14580 { (yyval.specifier) = MkEnum((yyvsp[-2].id), null); POP_DEFAULT_ACCESS ;}
14584 #line 2076 "grammar.y"
14585 { (yyval.specifier) = MkEnum((yyvsp[-4].id), (yyvsp[0].list)); (yyval.specifier).baseSpecs = (yyvsp[-2].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14589 #line 2077 "grammar.y"
14590 { (yyval.specifier) = MkEnum((yyvsp[-5].id), (yyvsp[-1].list)); (yyval.specifier).baseSpecs = (yyvsp[-3].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14594 #line 2078 "grammar.y"
14595 { (yyval.specifier) = MkEnum((yyvsp[-4].id), null); (yyval.specifier).baseSpecs = (yyvsp[-2].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14599 #line 2079 "grammar.y"
14600 { (yyval.specifier) = MkEnum((yyvsp[-6].id), (yyvsp[-2].list)); (yyval.specifier).baseSpecs = (yyvsp[-4].list); (yyval.specifier).definitions = (yyvsp[0].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14604 #line 2080 "grammar.y"
14605 { (yyval.specifier) = MkEnum((yyvsp[-6].id), (yyvsp[-2].list)); (yyval.specifier).baseSpecs = (yyvsp[-4].list); (yyval.specifier).definitions = (yyvsp[0].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14609 #line 2081 "grammar.y"
14610 { (yyval.specifier) = MkEnum((yyvsp[-7].id), (yyvsp[-3].list)); (yyval.specifier).baseSpecs = (yyvsp[-5].list); (yyval.specifier).definitions = (yyvsp[0].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14614 #line 2082 "grammar.y"
14615 { (yyval.specifier) = MkEnum((yyvsp[-7].id), (yyvsp[-3].list)); (yyval.specifier).baseSpecs = (yyvsp[-5].list); (yyval.specifier).definitions = (yyvsp[0].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14619 #line 2083 "grammar.y"
14620 { (yyval.specifier) = MkEnum((yyvsp[-6].id), null); (yyval.specifier).baseSpecs = (yyvsp[-4].list); (yyval.specifier).definitions = (yyvsp[0].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14624 #line 2084 "grammar.y"
14625 { (yyval.specifier) = MkEnum((yyvsp[-6].id), null); (yyval.specifier).baseSpecs = (yyvsp[-4].list); (yyval.specifier).definitions = (yyvsp[0].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14629 #line 2086 "grammar.y"
14630 { (yyval.specifier) = MkEnum(null, (yyvsp[0].list)); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14634 #line 2087 "grammar.y"
14635 { (yyval.specifier) = MkEnum(null, null); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14639 #line 2089 "grammar.y"
14640 { (yyval.specifier) = MkEnum((yyvsp[-2].id), (yyvsp[0].list)); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14644 #line 2090 "grammar.y"
14645 { (yyval.specifier) = MkEnum((yyvsp[-3].id), (yyvsp[-1].list)); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14649 #line 2091 "grammar.y"
14650 { (yyval.specifier) = MkEnum((yyvsp[-2].id), null); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14654 #line 2092 "grammar.y"
14655 { (yyval.specifier) = MkEnum((yyvsp[-4].id), (yyvsp[-2].list)); (yyval.specifier).definitions = (yyvsp[0].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14659 #line 2093 "grammar.y"
14660 { (yyval.specifier) = MkEnum((yyvsp[-4].id), (yyvsp[-2].list)); (yyval.specifier).definitions = (yyvsp[0].list); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14664 #line 2107 "grammar.y"
14665 { (yyval.specifier) = MkSpecifierExtended(yytext); ;}
14669 #line 2108 "grammar.y"
14670 { (yyval.specifier) = MkSpecifierExtended((yyvsp[0].string)); delete (yyvsp[0].string); ;}
14674 #line 2112 "grammar.y"
14675 { (yyval.specifier) = MkSpecifier(CONST); ;}
14679 #line 2113 "grammar.y"
14680 { (yyval.specifier) = MkSpecifier(VOLATILE); ;}
14684 #line 2114 "grammar.y"
14685 { (yyval.specifier) = (yyvsp[0].specifier); ;}
14689 #line 2119 "grammar.y"
14690 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
14694 #line 2120 "grammar.y"
14695 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
14699 #line 2124 "grammar.y"
14700 { (yyval.specifier) = MkSpecifier(VOID); ;}
14704 #line 2125 "grammar.y"
14705 { (yyval.specifier) = MkSpecifier(CHAR); ;}
14709 #line 2126 "grammar.y"
14710 { (yyval.specifier) = MkSpecifier(SHORT); ;}
14714 #line 2127 "grammar.y"
14715 { (yyval.specifier) = MkSpecifier(INT); ;}
14719 #line 2128 "grammar.y"
14720 { (yyval.specifier) = MkSpecifier(UINT); ;}
14724 #line 2129 "grammar.y"
14725 { (yyval.specifier) = MkSpecifier(INT64); ;}
14729 #line 2130 "grammar.y"
14730 { (yyval.specifier) = MkSpecifier(VALIST); ;}
14734 #line 2131 "grammar.y"
14735 { (yyval.specifier) = MkSpecifier(LONG); ;}
14739 #line 2132 "grammar.y"
14740 { (yyval.specifier) = MkSpecifier(FLOAT); ;}
14744 #line 2133 "grammar.y"
14745 { (yyval.specifier) = MkSpecifier(DOUBLE); ;}
14749 #line 2134 "grammar.y"
14750 { (yyval.specifier) = MkSpecifier(SIGNED); ;}
14754 #line 2135 "grammar.y"
14755 { (yyval.specifier) = MkSpecifier(UNSIGNED); ;}
14759 #line 2136 "grammar.y"
14760 { (yyval.specifier) = MkSpecifier(EXTENSION); ;}
14764 #line 2140 "grammar.y"
14765 { (yyval.specifier) = MkSpecifierTypeOf((yyvsp[-1].exp)); ;}
14769 #line 2141 "grammar.y"
14770 { (yyval.specifier) = MkSpecifierSubClass((yyvsp[-1].specifier)); ;}
14774 #line 2142 "grammar.y"
14775 { _DeclClass(0, (yyvsp[-1].id).string); (yyval.specifier) = MkSpecifierSubClass(MkSpecifierName((yyvsp[-1].id).string)); FreeIdentifier((yyvsp[-1].id)); ;}
14779 #line 2143 "grammar.y"
14780 { (yyval.specifier) = MkSpecifier(THISCLASS); ;}
14784 #line 2144 "grammar.y"
14785 { (yyval.specifier) = MkSpecifier(TYPED_OBJECT); ;}
14789 #line 2145 "grammar.y"
14790 { (yyval.specifier) = MkSpecifier(ANY_OBJECT); ;}
14794 #line 2149 "grammar.y"
14795 { (yyval.specifier) = MkSpecifier(VOID); ;}
14799 #line 2150 "grammar.y"
14800 { (yyval.specifier) = MkSpecifier(CHAR); ;}
14804 #line 2151 "grammar.y"
14805 { (yyval.specifier) = MkSpecifier(SHORT); ;}
14809 #line 2152 "grammar.y"
14810 { (yyval.specifier) = MkSpecifier(INT); ;}
14814 #line 2153 "grammar.y"
14815 { (yyval.specifier) = MkSpecifier(UINT); ;}
14819 #line 2154 "grammar.y"
14820 { (yyval.specifier) = MkSpecifier(INT64); ;}
14824 #line 2155 "grammar.y"
14825 { (yyval.specifier) = MkSpecifier(VALIST); ;}
14829 #line 2156 "grammar.y"
14830 { (yyval.specifier) = MkSpecifier(LONG); ;}
14834 #line 2157 "grammar.y"
14835 { (yyval.specifier) = MkSpecifier(FLOAT); ;}
14839 #line 2158 "grammar.y"
14840 { (yyval.specifier) = MkSpecifier(DOUBLE); ;}
14844 #line 2159 "grammar.y"
14845 { (yyval.specifier) = MkSpecifier(SIGNED); ;}
14849 #line 2160 "grammar.y"
14850 { (yyval.specifier) = MkSpecifier(UNSIGNED); ;}
14854 #line 2161 "grammar.y"
14855 { (yyval.specifier) = MkSpecifier(EXTENSION); ;}
14859 #line 2165 "grammar.y"
14860 { (yyval.specifier) = MkSpecifierTypeOf((yyvsp[-1].exp)); ;}
14864 #line 2166 "grammar.y"
14865 { (yyval.specifier) = MkSpecifierSubClass((yyvsp[-1].specifier)); ;}
14869 #line 2167 "grammar.y"
14870 { _DeclClass(0, (yyvsp[-1].id).string); (yyval.specifier) = MkSpecifierSubClass(MkSpecifierName((yyvsp[-1].id).string)); FreeIdentifier((yyvsp[-1].id)); ;}
14874 #line 2168 "grammar.y"
14875 { (yyval.specifier) = MkSpecifier(THISCLASS); ;}
14879 #line 2175 "grammar.y"
14880 { (yyval.declarator) = MkStructDeclarator((yyvsp[0].declarator), null); (yyval.declarator).loc = (yyloc); ;}
14884 #line 2177 "grammar.y"
14885 { (yyval.declarator) = MkStructDeclarator((yyvsp[-1].declarator), null); (yyval.declarator).structDecl.attrib = (yyvsp[0].string); (yyval.declarator).loc = (yyloc); ;}
14889 #line 2179 "grammar.y"
14890 { (yyval.declarator) = MkStructDeclarator(null, (yyvsp[0].exp)); (yyval.declarator).loc = (yyloc); ;}
14894 #line 2181 "grammar.y"
14895 { (yyval.declarator) = MkStructDeclarator((yyvsp[-2].declarator), (yyvsp[0].exp)); (yyval.declarator).loc = (yyloc); ;}
14899 #line 2183 "grammar.y"
14900 { (yyval.declarator) = MkStructDeclarator((yyvsp[-4].declarator), (yyvsp[-2].exp)); (yyval.declarator).structDecl.posExp = (yyvsp[0].exp); (yyval.declarator).loc = (yyloc); ;}
14904 #line 2185 "grammar.y"
14905 { (yyval.declarator) = MkStructDeclarator(null, (yyvsp[0].exp)); (yyval.declarator).loc = (yyloc); ;}
14909 #line 2187 "grammar.y"
14910 { (yyval.declarator) = MkStructDeclarator((yyvsp[-2].declarator), (yyvsp[0].exp)); (yyval.declarator).loc = (yyloc); ;}
14914 #line 2189 "grammar.y"
14915 { (yyval.declarator) = MkStructDeclarator((yyvsp[-4].declarator), (yyvsp[-2].exp)); (yyval.declarator).structDecl.posExp = (yyvsp[0].exp); (yyval.declarator).loc = (yyloc); ;}
14919 #line 2191 "grammar.y"
14920 { (yyval.declarator) = MkStructDeclarator((yyvsp[-4].declarator), (yyvsp[-2].exp)); (yyval.declarator).structDecl.posExp = (yyvsp[0].exp); (yyval.declarator).loc = (yyloc); ;}
14924 #line 2193 "grammar.y"
14925 { (yyval.declarator) = MkStructDeclarator((yyvsp[-4].declarator), (yyvsp[-2].exp)); (yyval.declarator).structDecl.posExp = (yyvsp[0].exp); (yyval.declarator).loc = (yyloc); ;}
14929 #line 2197 "grammar.y"
14930 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].declarator)); ;}
14934 #line 2198 "grammar.y"
14935 { ListAdd((yyvsp[-2].list), (yyvsp[0].declarator)); ;}
14939 #line 2203 "grammar.y"
14941 (yyval.specifier) = MkStructOrUnion((yyvsp[-1].specifierType), (yyvsp[0].id), null);
14942 (yyval.specifier).addNameSpace = true;
14943 (yyval.specifier).ctx = PushContext();
14948 #line 2209 "grammar.y"
14950 (yyval.specifier) = MkStructOrUnion((yyvsp[-1].specifierType), MkIdentifier((yyvsp[0].specifier).name), null);
14951 (yyval.specifier).ctx = PushContext();
14952 FreeSpecifier((yyvsp[0].specifier));
14957 #line 2217 "grammar.y"
14958 { (yyval.specifier).loc = (yyloc); ;}
14962 #line 2218 "grammar.y"
14963 { (yyval.specifier) = (yyvsp[-2].specifier); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS PopContext(curContext); ;}
14967 #line 2219 "grammar.y"
14968 { (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifierType), null, null); (yyval.specifier).loc = (yyloc); POP_DEFAULT_ACCESS ;}
14972 #line 2223 "grammar.y"
14973 { (yyval.specifier) = (yyvsp[-2].specifier); AddStructDefinitions((yyvsp[-2].specifier), (yyvsp[0].list)); POP_DEFAULT_ACCESS PopContext(curContext); ;}
14977 #line 2224 "grammar.y"
14978 { (yyval.specifier) = (yyvsp[-2].specifier); AddStructDefinitions((yyvsp[-2].specifier), (yyvsp[0].list)); POP_DEFAULT_ACCESS PopContext(curContext); ;}
14982 #line 2225 "grammar.y"
14983 { (yyval.specifier) = (yyvsp[-2].specifier); POP_DEFAULT_ACCESS PopContext(curContext); ;}
14987 #line 2227 "grammar.y"
14988 { (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifierType), null, (yyvsp[0].list)); POP_DEFAULT_ACCESS ;}
14992 #line 2228 "grammar.y"
14993 { (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifierType), null, (yyvsp[0].list)); POP_DEFAULT_ACCESS ;}
14997 #line 2229 "grammar.y"
14998 { (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifierType), null, null); POP_DEFAULT_ACCESS ;}
15002 #line 2233 "grammar.y"
15003 { (yyval.specifier) = (yyvsp[0].specifier); POP_DEFAULT_ACCESS PopContext(curContext); ;}
15007 #line 2238 "grammar.y"
15009 (yyval.specifier) = (yyvsp[0].specifier);
15012 ((yyvsp[0].specifier).addNameSpace ? DeclClassAddNameSpace : DeclClass)(globalContext.nextID++, (yyvsp[0].specifier).id.string);
15018 #line 2246 "grammar.y"
15020 Symbol symbol = ((yyvsp[-3].specifier).addNameSpace ? DeclClassAddNameSpace : DeclClass)(globalContext.nextID++, (yyvsp[-3].specifier).id.string);
15021 (yyval.specifier) = (yyvsp[-3].specifier);
15022 symbol.templateParams = (yyvsp[-1].list);
15027 #line 2255 "grammar.y"
15029 (yyval.specifier) = (yyvsp[-2].specifier);
15030 (yyval.specifier).baseSpecs = (yyvsp[0].list);
15031 SetupBaseSpecs(null, (yyvsp[0].list));
15036 #line 2263 "grammar.y"
15037 { (yyval.specifier).loc = (yyloc); ;}
15041 #line 2265 "grammar.y"
15042 { (yyval.specifier) = (yyvsp[-2].specifier); POP_DEFAULT_ACCESS PopContext(curContext); ;}
15046 #line 2266 "grammar.y"
15047 { POP_DEFAULT_ACCESS PopContext(curContext); ;}
15051 #line 2267 "grammar.y"
15052 { (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifierType), null, null); POP_DEFAULT_ACCESS ;}
15056 #line 2272 "grammar.y"
15058 (yyval.specifier) = (yyvsp[-2].specifier);
15059 (yyval.specifier).definitions = (yyvsp[0].list);
15061 PopContext(curContext);
15066 #line 2279 "grammar.y"
15068 (yyval.specifier) = (yyvsp[-2].specifier);
15069 (yyval.specifier).definitions = (yyvsp[0].list);
15071 PopContext(curContext);
15076 #line 2286 "grammar.y"
15077 { (yyval.specifier) = (yyvsp[-2].specifier); POP_DEFAULT_ACCESS PopContext(curContext);;}
15081 #line 2289 "grammar.y"
15083 PopContext(curContext);
15086 (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifier).type, (yyvsp[-2].specifier).id, (yyvsp[0].list));
15087 (yyvsp[-2].specifier).id = null;
15088 FreeSpecifier((yyvsp[-2].specifier));
15091 (yyval.specifier).definitions = (yyvsp[0].list);
15097 #line 2302 "grammar.y"
15099 PopContext(curContext);
15103 (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifier).type, (yyvsp[-2].specifier).id, (yyvsp[0].list));
15104 (yyvsp[-2].specifier).id = null;
15105 FreeSpecifier((yyvsp[-2].specifier));
15108 (yyval.specifier).definitions = (yyvsp[0].list);
15114 #line 2316 "grammar.y"
15115 { POP_DEFAULT_ACCESS PopContext(curContext); ;}
15119 #line 2319 "grammar.y"
15120 { (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifierType), null, (yyvsp[0].list)); POP_DEFAULT_ACCESS ;}
15124 #line 2321 "grammar.y"
15125 { (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifierType), null, (yyvsp[0].list)); POP_DEFAULT_ACCESS ;}
15129 #line 2323 "grammar.y"
15130 { (yyval.specifier) = MkStructOrUnion((yyvsp[-2].specifierType), null, null); POP_DEFAULT_ACCESS ;}
15134 #line 2327 "grammar.y"
15135 { (yyval.specifierType) = structSpecifier; memberAccessStack[++defaultMemberAccess] = publicAccess; ;}
15139 #line 2328 "grammar.y"
15140 { (yyval.specifierType) = unionSpecifier; memberAccessStack[++defaultMemberAccess] = publicAccess; ;}
15144 #line 2332 "grammar.y"
15145 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15149 #line 2333 "grammar.y"
15150 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15154 #line 2334 "grammar.y"
15155 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15159 #line 2335 "grammar.y"
15160 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15164 #line 2336 "grammar.y"
15165 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15169 #line 2337 "grammar.y"
15170 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15174 #line 2338 "grammar.y"
15175 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15179 #line 2339 "grammar.y"
15180 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15184 #line 2343 "grammar.y"
15185 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15189 #line 2344 "grammar.y"
15190 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15194 #line 2345 "grammar.y"
15195 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15199 #line 2346 "grammar.y"
15200 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15204 #line 2347 "grammar.y"
15205 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15209 #line 2348 "grammar.y"
15210 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15214 #line 2349 "grammar.y"
15215 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15219 #line 2350 "grammar.y"
15220 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15224 #line 2351 "grammar.y"
15225 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15229 #line 2352 "grammar.y"
15230 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15234 #line 2356 "grammar.y"
15235 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15239 #line 2357 "grammar.y"
15240 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15244 #line 2358 "grammar.y"
15245 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15249 #line 2359 "grammar.y"
15250 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15254 #line 2360 "grammar.y"
15255 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15259 #line 2361 "grammar.y"
15260 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15264 #line 2362 "grammar.y"
15265 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15269 #line 2363 "grammar.y"
15270 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15274 #line 2364 "grammar.y"
15275 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15279 #line 2365 "grammar.y"
15280 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15284 #line 2369 "grammar.y"
15285 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15289 #line 2370 "grammar.y"
15290 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15294 #line 2371 "grammar.y"
15295 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15299 #line 2372 "grammar.y"
15300 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15304 #line 2373 "grammar.y"
15305 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15309 #line 2374 "grammar.y"
15310 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15314 #line 2375 "grammar.y"
15315 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15319 #line 2376 "grammar.y"
15320 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15324 #line 2377 "grammar.y"
15325 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15329 #line 2378 "grammar.y"
15330 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15334 #line 2379 "grammar.y"
15335 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15339 #line 2380 "grammar.y"
15340 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15344 #line 2384 "grammar.y"
15345 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15349 #line 2385 "grammar.y"
15350 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15354 #line 2386 "grammar.y"
15355 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15359 #line 2387 "grammar.y"
15360 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15364 #line 2388 "grammar.y"
15365 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15369 #line 2389 "grammar.y"
15370 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15374 #line 2390 "grammar.y"
15375 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15379 #line 2391 "grammar.y"
15380 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15384 #line 2392 "grammar.y"
15385 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15389 #line 2393 "grammar.y"
15390 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15394 #line 2397 "grammar.y"
15395 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15399 #line 2398 "grammar.y"
15400 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15404 #line 2402 "grammar.y"
15405 { (yyval.list) = MkList(); ListAdd((yyval.list), MkSpecifier(PRIVATE)); ;}
15409 #line 2403 "grammar.y"
15410 { (yyval.list) = MkList(); ListAdd((yyval.list), MkSpecifier(PUBLIC)); ;}
15414 #line 2404 "grammar.y"
15415 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15419 #line 2405 "grammar.y"
15420 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15424 #line 2406 "grammar.y"
15425 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15429 #line 2407 "grammar.y"
15430 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15434 #line 2408 "grammar.y"
15435 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15439 #line 2409 "grammar.y"
15440 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15444 #line 2411 "grammar.y"
15445 { _DeclClass(0, (yyvsp[0].id).string); (yyval.list) = MkListOne(MkSpecifierName((yyvsp[0].id).string)); FreeIdentifier((yyvsp[0].id)); ;}
15449 #line 2412 "grammar.y"
15450 { _DeclClass(0, (yyvsp[0].id).string); ListAdd((yyvsp[-1].list), MkSpecifierName((yyvsp[0].id).string)); FreeIdentifier((yyvsp[0].id)); ;}
15454 #line 2415 "grammar.y"
15456 // if($1._class && !$1._class.name)
15457 if((yyvsp[-3].id)._class)
15460 strcpy(name, (yyvsp[-3].id)._class.name ? (yyvsp[-3].id)._class.name : "");
15461 strcat(name, "::");
15462 strcat(name, (yyvsp[-3].id).string);
15463 _DeclClass(0, name);
15466 _DeclClass(0, (yyvsp[-3].id).string);
15468 (yyval.list) = MkList();
15469 ListAdd((yyval.list), MkSpecifierNameArgs((yyvsp[-3].id).string, (yyvsp[-1].list)));
15470 FreeIdentifier((yyvsp[-3].id));
15475 #line 2433 "grammar.y"
15477 if((yyvsp[-3].id)._class && !(yyvsp[-3].id)._class.name)
15480 strcpy(name, "::");
15481 strcat(name, (yyvsp[-3].id).string);
15482 _DeclClass(0, name);
15485 _DeclClass(0, (yyvsp[-3].id).string);
15486 ListAdd((yyvsp[-4].list), MkSpecifierNameArgs((yyvsp[-3].id).string, (yyvsp[-1].list)));
15487 FreeIdentifier((yyvsp[-3].id));
15492 #line 2450 "grammar.y"
15493 { (yyval.list) = MkListOne(MkStructOrUnion((yyvsp[0].specifierType), null, null)); POP_DEFAULT_ACCESS ;}
15497 #line 2454 "grammar.y"
15498 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15502 #line 2455 "grammar.y"
15503 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15507 #line 2456 "grammar.y"
15508 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15512 #line 2457 "grammar.y"
15513 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15517 #line 2458 "grammar.y"
15518 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15522 #line 2459 "grammar.y"
15523 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15527 #line 2460 "grammar.y"
15528 { (yyval.list) = MkList(); ListAdd((yyval.list), MkSpecifierName((yyvsp[0].id).string)); FreeIdentifier((yyvsp[0].id));}
15532 #line 2461 "grammar.y"
15533 { ListAdd((yyvsp[-1].list), MkSpecifierName((yyvsp[0].id).string)); FreeIdentifier((yyvsp[0].id));}
15537 #line 2463 "grammar.y"
15539 // if($1._class && !$1._class.name)
15540 if((yyvsp[-3].id)._class)
15543 strcpy(name, (yyvsp[-3].id)._class.name ? (yyvsp[-3].id)._class.name : "");
15544 strcat(name, "::");
15545 strcat(name, (yyvsp[-3].id).string);
15546 _DeclClass(0, name);
15549 _DeclClass(0, (yyvsp[-3].id).string);
15551 (yyval.list) = MkList();
15552 ListAdd((yyval.list), MkSpecifierNameArgs((yyvsp[-3].id).string, (yyvsp[-1].list)));
15553 FreeIdentifier((yyvsp[-3].id));
15558 #line 2481 "grammar.y"
15560 if((yyvsp[-3].id)._class && !(yyvsp[-3].id)._class.name)
15563 strcpy(name, "::");
15564 strcat(name, (yyvsp[-3].id).string);
15565 _DeclClass(0, name);
15568 _DeclClass(0, (yyvsp[-3].id).string);
15569 ListAdd((yyvsp[-4].list), MkSpecifierNameArgs((yyvsp[-3].id).string, (yyvsp[-1].list)));
15570 FreeIdentifier((yyvsp[-3].id));
15575 #line 2497 "grammar.y"
15576 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15580 #line 2498 "grammar.y"
15581 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15585 #line 2499 "grammar.y"
15586 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15590 #line 2500 "grammar.y"
15591 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15595 #line 2501 "grammar.y"
15596 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15600 #line 2502 "grammar.y"
15601 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15605 #line 2503 "grammar.y"
15606 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15610 #line 2504 "grammar.y"
15611 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15615 #line 2505 "grammar.y"
15616 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15620 #line 2506 "grammar.y"
15621 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15625 #line 2507 "grammar.y"
15626 { (yyval.list) = MkList(); ListAdd((yyval.list), MkSpecifierName((yyvsp[0].id).string)); FreeIdentifier((yyvsp[0].id));}
15630 #line 2508 "grammar.y"
15631 { ListAdd((yyvsp[-1].list), MkSpecifierName((yyvsp[0].id).string)); FreeIdentifier((yyvsp[0].id));}
15635 #line 2510 "grammar.y"
15637 // if($1._class && !$1._class.name)
15638 if((yyvsp[-3].id)._class)
15641 strcpy(name, (yyvsp[-3].id)._class.name ? (yyvsp[-3].id)._class.name : "");
15642 strcat(name, "::");
15643 strcat(name, (yyvsp[-3].id).string);
15644 _DeclClass(0, name);
15647 _DeclClass(0, (yyvsp[-3].id).string);
15649 (yyval.list) = MkList();
15650 ListAdd((yyval.list), MkSpecifierNameArgs((yyvsp[-3].id).string, (yyvsp[-1].list)));
15651 FreeIdentifier((yyvsp[-3].id));
15656 #line 2528 "grammar.y"
15658 if((yyvsp[-3].id)._class && !(yyvsp[-3].id)._class.name)
15661 strcpy(name, "::");
15662 strcat(name, (yyvsp[-3].id).string);
15663 _DeclClass(0, name);
15666 _DeclClass(0, (yyvsp[-3].id).string);
15667 ListAdd((yyvsp[-4].list), MkSpecifierNameArgs((yyvsp[-3].id).string, (yyvsp[-1].list)));
15668 FreeIdentifier((yyvsp[-3].id));
15673 #line 2544 "grammar.y"
15674 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15678 #line 2545 "grammar.y"
15679 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15683 #line 2546 "grammar.y"
15684 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15688 #line 2547 "grammar.y"
15689 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15693 #line 2548 "grammar.y"
15694 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15698 #line 2549 "grammar.y"
15699 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15703 #line 2550 "grammar.y"
15704 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15708 #line 2551 "grammar.y"
15709 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15713 #line 2552 "grammar.y"
15714 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].specifier)); ;}
15718 #line 2553 "grammar.y"
15719 { ListAdd((yyvsp[-1].list), (yyvsp[0].specifier)); ;}
15723 #line 2554 "grammar.y"
15724 { (yyval.list) = MkList(); ListAdd((yyval.list), MkSpecifierName((yyvsp[0].id).string)); FreeIdentifier((yyvsp[0].id));}
15728 #line 2555 "grammar.y"
15729 { ListAdd((yyvsp[-1].list), MkSpecifierName((yyvsp[0].id).string)); FreeIdentifier((yyvsp[0].id));}
15733 #line 2557 "grammar.y"
15735 // if($1._class && !$1._class.name)
15736 if((yyvsp[-3].id)._class)
15739 strcpy(name, (yyvsp[-3].id)._class.name ? (yyvsp[-3].id)._class.name : "");
15740 strcat(name, "::");
15741 strcat(name, (yyvsp[-3].id).string);
15742 _DeclClass(0, name);
15745 _DeclClass(0, (yyvsp[-3].id).string);
15747 (yyval.list) = MkList();
15748 ListAdd((yyval.list), MkSpecifierNameArgs((yyvsp[-3].id).string, (yyvsp[-1].list)));
15749 FreeIdentifier((yyvsp[-3].id));
15754 #line 2575 "grammar.y"
15756 if((yyvsp[-3].id)._class && !(yyvsp[-3].id)._class.name)
15759 strcpy(name, "::");
15760 strcat(name, (yyvsp[-3].id).string);
15761 _DeclClass(0, name);
15764 _DeclClass(0, (yyvsp[-3].id).string);
15765 ListAdd((yyvsp[-4].list), MkSpecifierNameArgs((yyvsp[-3].id).string, (yyvsp[-1].list)));
15766 FreeIdentifier((yyvsp[-3].id));
15771 #line 2591 "grammar.y"
15772 { ListAdd((yyvsp[-2].list), null); ;}
15776 #line 2592 "grammar.y"
15777 { ListAdd((yyvsp[-2].list), null); ;}
15781 #line 2596 "grammar.y"
15782 { (yyval.list) = MkList(); ListAdd((yyval.list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[0].id)))); ;}
15786 #line 2597 "grammar.y"
15787 { ListAdd((yyvsp[-2].list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[0].id)))); ;}
15791 #line 2598 "grammar.y"
15792 { ListAdd((yyvsp[-2].list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[0].id)))); ;}
15796 #line 2599 "grammar.y"
15797 { ListAdd((yyvsp[-2].list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[0].id)))); ;}
15801 #line 2600 "grammar.y"
15802 { ListAdd((yyvsp[-2].list), MkTypeName(null, MkDeclaratorIdentifier((yyvsp[0].id)))); ;}
15806 #line 2604 "grammar.y"
15807 { (yyval.declarator) = MkDeclaratorIdentifier((yyvsp[0].id)); ;}
15811 #line 2605 "grammar.y"
15812 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[-1].declarator)); ;}
15816 #line 2606 "grammar.y"
15817 { (yyval.declarator) = MkDeclaratorArray((yyvsp[-3].declarator), (yyvsp[-1].exp)); ;}
15821 #line 2607 "grammar.y"
15822 { (yyval.declarator) = MkDeclaratorArray((yyvsp[-3].declarator), (yyvsp[-1].exp)); ;}
15826 #line 2608 "grammar.y"
15827 { (yyval.declarator) = MkDeclaratorEnumArray((yyvsp[-3].declarator), (yyvsp[-1].specifier)); ;}
15831 #line 2609 "grammar.y"
15832 { (yyval.declarator) = MkDeclaratorArray((yyvsp[-2].declarator), null); ;}
15836 #line 2617 "grammar.y"
15837 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-2].declarator), (yyvsp[-1].list)); ;}
15841 #line 2618 "grammar.y"
15842 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-2].declarator), (yyvsp[-1].list)); ;}
15846 #line 2619 "grammar.y"
15847 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-2].declarator), (yyvsp[-1].list)); ;}
15851 #line 2620 "grammar.y"
15852 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-2].declarator), (yyvsp[-1].list)); ;}
15856 #line 2621 "grammar.y"
15857 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-1].declarator), null); ;}
15861 #line 2627 "grammar.y"
15863 (yyval.declarator) = MkDeclaratorFunction((yyvsp[-1].declarator), null);
15864 fileInput.Seek((yylsp[-1]).end.pos, start);
15866 resetScannerPos(&(yylsp[-1]).end);
15867 (yyloc).start = (yylsp[-1]).start;
15868 (yyloc).end = (yylsp[-1]).end;
15873 #line 2636 "grammar.y"
15875 (yyval.declarator) = MkDeclaratorFunction((yyvsp[-1].declarator), null);
15876 fileInput.Seek((yylsp[-1]).end.pos, start);
15878 resetScannerPos(&(yylsp[-1]).end);
15879 (yyloc).start = (yylsp[-1]).start;
15880 (yyloc).end = (yylsp[-1]).end;
15885 #line 2645 "grammar.y"
15887 (yyval.declarator) = MkDeclaratorFunction((yyvsp[-2].declarator), null);
15888 fileInput.Seek((yylsp[-2]).end.pos, start);
15890 resetScannerPos(&(yylsp[-2]).end);
15891 (yyloc).start = (yylsp[-2]).start;
15892 (yyloc).end = (yylsp[-2]).end;
15897 #line 2654 "grammar.y"
15899 (yyval.declarator) = MkDeclaratorFunction((yyvsp[-3].declarator), null);
15900 fileInput.Seek((yylsp[-3]).end.pos, start);
15902 resetScannerPos(&(yylsp[-3]).end);
15903 (yyloc).start = (yylsp[-3]).start;
15904 (yyloc).end = (yylsp[-3]).end;
15905 FreeIdentifier((yyvsp[-1].id));
15910 #line 2669 "grammar.y"
15911 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator)); ;}
15915 #line 2671 "grammar.y"
15916 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator)); ;}
15920 #line 2715 "grammar.y"
15921 { (yyval.string) = CopyString(yytext); ;}
15925 #line 2718 "grammar.y"
15928 strcpy(temp, "__asm__(");
15929 strcat(temp, (yyvsp[-1].string));
15931 (yyval.string) = CopyString(temp);
15932 delete (yyvsp[-1].string);
15937 #line 2729 "grammar.y"
15938 { (yyval.string) = CopyString(yytext); ;}
15942 #line 2735 "grammar.y"
15943 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[-1].declarator)); ;}
15947 #line 2737 "grammar.y"
15948 { (yyval.declarator) = MkDeclaratorArray(null, null); ;}
15952 #line 2739 "grammar.y"
15953 { (yyval.declarator) = MkDeclaratorArray(null, (yyvsp[-1].exp)); ;}
15957 #line 2741 "grammar.y"
15958 { (yyval.declarator) = MkDeclaratorArray(null, (yyvsp[-1].exp)); ;}
15962 #line 2743 "grammar.y"
15963 { (yyval.declarator) = MkDeclaratorEnumArray(null, (yyvsp[-1].specifier)); ;}
15967 #line 2745 "grammar.y"
15968 { (yyval.declarator) = MkDeclaratorArray((yyvsp[-2].declarator), null); ;}
15972 #line 2747 "grammar.y"
15973 { (yyval.declarator) = MkDeclaratorArray((yyvsp[-3].declarator), (yyvsp[-1].exp)); ;}
15977 #line 2749 "grammar.y"
15978 { (yyval.declarator) = MkDeclaratorEnumArray((yyvsp[-3].declarator), (yyvsp[-1].specifier)); ;}
15982 #line 2751 "grammar.y"
15983 { (yyval.declarator) = MkDeclaratorArray((yyvsp[-3].declarator), (yyvsp[-1].exp)); ;}
15987 #line 2753 "grammar.y"
15988 { (yyval.declarator) = MkDeclaratorFunction(null, null); ;}
15992 #line 2755 "grammar.y"
15993 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[-1].list)); ;}
15997 #line 2757 "grammar.y"
15998 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[-1].list)); ;}
16002 #line 2759 "grammar.y"
16003 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-2].declarator), null); ;}
16007 #line 2761 "grammar.y"
16008 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-3].declarator), (yyvsp[-1].list)); ;}
16012 #line 2763 "grammar.y"
16013 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-3].declarator), (yyvsp[-1].list)); ;}
16017 #line 2768 "grammar.y"
16018 { (yyval.declarator) = MkDeclaratorBrackets((yyvsp[-1].declarator)); ;}
16022 #line 2770 "grammar.y"
16023 { (yyval.declarator) = MkDeclaratorFunction(null, null); ;}
16027 #line 2772 "grammar.y"
16028 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[-1].list)); ;}
16032 #line 2774 "grammar.y"
16033 { (yyval.declarator) = MkDeclaratorFunction(null, (yyvsp[-1].list)); ;}
16037 #line 2776 "grammar.y"
16038 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-2].declarator), null); ;}
16042 #line 2778 "grammar.y"
16043 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-3].declarator), (yyvsp[-1].list)); ;}
16047 #line 2780 "grammar.y"
16048 { (yyval.declarator) = MkDeclaratorFunction((yyvsp[-3].declarator), (yyvsp[-1].list)); ;}
16052 #line 2784 "grammar.y"
16053 { (yyval.pointer) = MkPointer(null, null); ;}
16057 #line 2785 "grammar.y"
16058 { (yyval.pointer) = MkPointer((yyvsp[0].list), null); ;}
16062 #line 2786 "grammar.y"
16063 { (yyval.pointer) = MkPointer(null, (yyvsp[0].pointer)); ;}
16067 #line 2787 "grammar.y"
16068 { (yyval.pointer) = MkPointer((yyvsp[-1].list), (yyvsp[0].pointer)); ;}
16072 #line 2791 "grammar.y"
16073 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[0].pointer), null); ;}
16077 #line 2793 "grammar.y"
16078 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator)); ;}
16082 #line 2794 "grammar.y"
16083 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), MkDeclaratorPointer((yyvsp[0].pointer), null)); ;}
16087 #line 2795 "grammar.y"
16088 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator)); ;}
16092 #line 2796 "grammar.y"
16093 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-2].string), MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator))); ;}
16097 #line 2800 "grammar.y"
16098 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[0].pointer), null); ;}
16102 #line 2802 "grammar.y"
16103 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator)); ;}
16107 #line 2803 "grammar.y"
16108 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), MkDeclaratorPointer((yyvsp[0].pointer), null)); ;}
16112 #line 2804 "grammar.y"
16113 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator)); ;}
16117 #line 2805 "grammar.y"
16118 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-2].string), MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator))); ;}
16122 #line 2811 "grammar.y"
16123 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator)); ;}
16127 #line 2813 "grammar.y"
16128 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-2].string), MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator))); ;}
16132 #line 2815 "grammar.y"
16133 { (yyval.declarator) = MkDeclaratorExtendedEnd((yyvsp[0].string), (yyvsp[-1].declarator)); ;}
16137 #line 2820 "grammar.y"
16138 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator)); ;}
16142 #line 2821 "grammar.y"
16143 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator)); ;}
16147 #line 2822 "grammar.y"
16148 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-2].string), MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator))); ;}
16152 #line 2823 "grammar.y"
16153 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-2].pointer), MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator))); ;}
16157 #line 2828 "grammar.y"
16158 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator)); ;}
16162 #line 2829 "grammar.y"
16163 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator)); ;}
16167 #line 2830 "grammar.y"
16168 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-2].string), MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator))); ;}
16172 #line 2831 "grammar.y"
16173 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-2].pointer), MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator))); ;}
16177 #line 2836 "grammar.y"
16178 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator)); ;}
16182 #line 2837 "grammar.y"
16183 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator)); ;}
16187 #line 2838 "grammar.y"
16188 { (yyval.declarator) = MkDeclaratorExtended((yyvsp[-2].string), MkDeclaratorPointer((yyvsp[-1].pointer), (yyvsp[0].declarator))); ;}
16192 #line 2839 "grammar.y"
16193 { (yyval.declarator) = MkDeclaratorPointer((yyvsp[-2].pointer), MkDeclaratorExtended((yyvsp[-1].string), (yyvsp[0].declarator))); ;}
16197 #line 2843 "grammar.y"
16198 { (yyval.initializer) = MkInitializerAssignment((yyvsp[0].exp)); (yyval.initializer).loc = (yyloc); ;}
16202 #line 2844 "grammar.y"
16203 { (yyval.initializer) = MkInitializerList((yyvsp[-1].list)); (yyval.initializer).loc = (yyloc); ;}
16207 #line 2846 "grammar.y"
16209 (yyval.initializer) = MkInitializerList((yyvsp[-2].list));
16210 (yyval.initializer).loc = (yyloc);
16213 Expression exp = MkExpDummy();
16214 Initializer init = MkInitializerAssignment(exp);
16215 init.loc = (yylsp[-1]);
16216 exp.loc = (yylsp[-1]);
16217 ListAdd((yyvsp[-2].list), init);
16223 #line 2861 "grammar.y"
16224 { (yyval.initializer) = MkInitializerAssignment((yyvsp[0].exp)); (yyval.initializer).loc = (yyloc); ;}
16228 #line 2862 "grammar.y"
16229 { (yyval.initializer) = MkInitializerList((yyvsp[-2].list)); (yyval.initializer).loc = (yyloc); ;}
16233 #line 2863 "grammar.y"
16234 { (yyval.initializer) = MkInitializerList((yyvsp[0].list)); (yyval.initializer).loc = (yyloc); ;}
16238 #line 2865 "grammar.y"
16240 (yyval.initializer) = MkInitializerList((yyvsp[-3].list));
16241 (yyval.initializer).loc = (yyloc);
16244 Expression exp = MkExpDummy();
16245 Initializer init = MkInitializerAssignment(exp);
16246 init.loc = (yylsp[-2]);
16247 exp.loc = (yylsp[-2]);
16248 ListAdd((yyvsp[-3].list), init);
16254 #line 2878 "grammar.y"
16256 (yyval.initializer) = MkInitializerList((yyvsp[-1].list));
16257 (yyval.initializer).loc = (yyloc);
16260 Expression exp = MkExpDummy();
16261 Initializer init = MkInitializerAssignment(exp);
16262 init.loc = (yylsp[0]);
16263 exp.loc = (yylsp[0]);
16264 ListAdd((yyvsp[-1].list), init);
16270 #line 2893 "grammar.y"
16271 { (yyval.initializer) = MkInitializerAssignment((yyvsp[0].exp)); (yyval.initializer).loc = (yyloc); ;}
16275 #line 2895 "grammar.y"
16276 { (yyval.initializer) = MkInitializerAssignment((yyvsp[0].exp)); (yyval.initializer).loc = (yyloc); ;}
16280 #line 2899 "grammar.y"
16281 { (yyval.initializer) = MkInitializerAssignment((yyvsp[0].exp)); (yyval.initializer).loc = (yyloc); ;}
16285 #line 2900 "grammar.y"
16286 { (yyval.initializer) = MkInitializerAssignment((yyvsp[0].exp)); (yyval.initializer).loc = (yyloc); ;}
16290 #line 2904 "grammar.y"
16291 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].initializer)); ;}
16295 #line 2905 "grammar.y"
16296 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].initializer)); ;}
16300 #line 2906 "grammar.y"
16301 { ListAdd((yyvsp[-2].list), (yyvsp[0].initializer)); ;}
16305 #line 2907 "grammar.y"
16306 { ListAdd((yyvsp[-2].list), (yyvsp[0].initializer)); ;}
16310 #line 2910 "grammar.y"
16311 { ListAdd((yyvsp[-1].list), (yyvsp[0].initializer)); ;}
16315 #line 2911 "grammar.y"
16316 { ListAdd((yyvsp[-1].list), (yyvsp[0].initializer)); ;}
16320 #line 2915 "grammar.y"
16321 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[0].declarator), null); (yyval.initDeclarator).loc = (yyloc); ;}
16325 #line 2916 "grammar.y"
16326 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[-2].declarator), (yyvsp[0].initializer)); (yyval.initDeclarator).loc = (yyloc); (yyval.initDeclarator).initializer.loc.start = (yylsp[-1]).end; ;}
16330 #line 2920 "grammar.y"
16331 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[-1].declarator), null); (yyval.initDeclarator).loc = (yyloc); ;}
16335 #line 2921 "grammar.y"
16336 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[-2].declarator), MkInitializerAssignment(MkExpDummy())); (yyval.initDeclarator).loc = (yyloc); (yyval.initDeclarator).initializer.loc = (yylsp[-1]); (yyval.initDeclarator).initializer.exp.loc = (yylsp[-1]); ;}
16340 #line 2922 "grammar.y"
16341 { (yyval.initDeclarator) = MkInitDeclarator((yyvsp[-2].declarator), (yyvsp[0].initializer)); (yyval.initDeclarator).loc = (yyloc); (yyval.initDeclarator).initializer.loc.start = (yylsp[-1]).end; ;}
16345 #line 2926 "grammar.y"
16346 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].initDeclarator)); ;}
16350 #line 2927 "grammar.y"
16351 { ListAdd((yyvsp[-2].list), (yyvsp[0].initDeclarator)); ;}
16355 #line 2928 "grammar.y"
16356 { ListAdd((yyvsp[-2].list), (yyvsp[0].initDeclarator)); ;}
16360 #line 2932 "grammar.y"
16361 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].initDeclarator)); ;}
16365 #line 2933 "grammar.y"
16366 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[-1].initDeclarator)); ;}
16370 #line 2934 "grammar.y"
16371 { ListAdd((yyvsp[-2].list), (yyvsp[0].initDeclarator)); ;}
16375 #line 2935 "grammar.y"
16376 { ListAdd((yyvsp[-2].list), (yyvsp[0].initDeclarator)); ;}
16380 #line 2939 "grammar.y"
16381 { (yyval.typeName) = MkTypeName((yyvsp[0].list), null); ;}
16385 #line 2940 "grammar.y"
16386 { (yyval.typeName) = MkTypeName((yyvsp[-1].list), (yyvsp[0].declarator)); ;}
16390 #line 2944 "grammar.y"
16391 { (yyval.typeName) = MkTypeName((yyvsp[0].list), null); ;}
16395 #line 2945 "grammar.y"
16396 { (yyval.typeName) = MkTypeName((yyvsp[-1].list), (yyvsp[0].declarator)); ;}
16400 #line 2950 "grammar.y"
16401 { (yyval.typeName) = MkTypeName((yyvsp[-1].list), (yyvsp[0].declarator)); ;}
16405 #line 2951 "grammar.y"
16406 { (yyval.typeName) = MkTypeName((yyvsp[-1].list), (yyvsp[0].declarator)); ;}
16410 #line 2952 "grammar.y"
16411 { (yyval.typeName) = MkTypeName((yyvsp[-1].list), MkDeclaratorPointer(MkPointer(null,null), null)); ;}
16415 #line 2953 "grammar.y"
16416 { (yyval.typeName) = MkTypeName((yyvsp[-2].list), MkDeclaratorPointer(MkPointer(null,null), (yyvsp[0].declarator))); ;}
16420 #line 2954 "grammar.y"
16421 { (yyval.typeName) = MkTypeName((yyvsp[0].list), null); ;}
16425 #line 2956 "grammar.y"
16426 { (yyval.typeName) = MkTypeName(MkListOne(MkSpecifier(CLASS)), null); ;}
16430 #line 2974 "grammar.y"
16431 { (yyval.typeName) = MkTypeName((yyvsp[-2].list), (yyvsp[-1].declarator)); ;}
16435 #line 2975 "grammar.y"
16436 { (yyval.typeName) = MkTypeName((yyvsp[-2].list), (yyvsp[-1].declarator)); ;}
16440 #line 2979 "grammar.y"
16441 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].typeName)); ;}
16445 #line 2980 "grammar.y"
16446 { ListAdd((yyvsp[-2].list), (yyvsp[0].typeName)); ;}
16450 #line 2981 "grammar.y"
16451 { ListAdd((yyvsp[-3].list), (yyvsp[0].typeName)); ;}
16455 #line 2982 "grammar.y"
16456 { ListAdd((yyvsp[-2].list), (yyvsp[0].typeName)); ;}
16460 #line 2983 "grammar.y"
16461 { ListAdd((yyvsp[-3].list), (yyvsp[0].typeName)); ;}
16465 #line 2984 "grammar.y"
16466 { (yyval.list) = MkList(); ListAdd((yyval.list), MkTypeName(MkList(), null)); ListAdd((yyval.list), (yyvsp[0].typeName)); ;}
16470 #line 2986 "grammar.y"
16471 { ListAdd((yyvsp[-2].list), (yyvsp[0].typeName)); ;}
16475 #line 2987 "grammar.y"
16476 { ListAdd((yyvsp[-3].list), (yyvsp[0].typeName)); ;}
16480 #line 2988 "grammar.y"
16481 { ListAdd((yyvsp[-2].list), (yyvsp[0].typeName)); ;}
16485 #line 2989 "grammar.y"
16486 { ListAdd((yyvsp[-3].list), (yyvsp[0].typeName)); ;}
16490 #line 2993 "grammar.y"
16491 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].typeName)); ;}
16495 #line 2994 "grammar.y"
16496 { ListAdd((yyvsp[-2].list), (yyvsp[0].typeName)); ;}
16500 #line 2995 "grammar.y"
16501 { ListAdd((yyvsp[-2].list), (yyvsp[0].typeName)); ;}
16505 #line 2996 "grammar.y"
16506 { ListAdd((yyvsp[-3].list), (yyvsp[0].typeName)); ;}
16510 #line 2997 "grammar.y"
16511 { (yyval.list) = MkList(); ListAdd((yyval.list), MkTypeName(MkList(), null)); ListAdd((yyval.list), (yyvsp[0].typeName)); ;}
16515 #line 2999 "grammar.y"
16516 { ListAdd((yyvsp[-2].list), (yyvsp[0].typeName)); ;}
16520 #line 3000 "grammar.y"
16521 { ListAdd((yyvsp[-2].list), (yyvsp[0].typeName)); ;}
16525 #line 3001 "grammar.y"
16526 { ListAdd((yyvsp[-3].list), (yyvsp[0].typeName)); ;}
16530 #line 3006 "grammar.y"
16531 { ListAdd((yyvsp[-2].list), MkTypeName(null, null)); ;}
16535 #line 3007 "grammar.y"
16536 { ListAdd((yyvsp[-2].list), MkTypeName(null, null)); ;}
16540 #line 3008 "grammar.y"
16541 { ListAdd((yyvsp[-2].list), MkTypeName(null, null)); ;}
16545 #line 3009 "grammar.y"
16546 { ListAdd((yyvsp[-2].list), MkTypeName(null, null)); ;}
16550 #line 3010 "grammar.y"
16551 { (yyval.list) = MkList(); ListAdd((yyval.list), MkTypeName(null, null)); ;}
16555 #line 3015 "grammar.y"
16556 { ListAdd((yyvsp[-2].list), null); ;}
16560 #line 3022 "grammar.y"
16561 { (yyval.stmt) = MkExpressionStmt(null); ;}
16565 #line 3024 "grammar.y"
16566 { (yyval.stmt) = MkExpressionStmt(null); ;}
16570 #line 3025 "grammar.y"
16571 { (yyval.stmt) = MkExpressionStmt(null); ;}
16575 #line 3026 "grammar.y"
16576 { (yyval.stmt) = MkExpressionStmt((yyvsp[-1].list)); (yyval.stmt).loc = (yyloc); ;}
16580 #line 3030 "grammar.y"
16585 #line 3038 "grammar.y"
16586 { (yyval.stmt) = (yyvsp[0].stmt); Compiler_Error("syntax error\n"); ;}
16590 #line 3039 "grammar.y"
16591 { (yyval.stmt) = (yyvsp[0].stmt); Compiler_Error("syntax error\n"); ;}
16595 #line 3040 "grammar.y"
16596 { (yyval.stmt) = (yyvsp[0].stmt); Compiler_Error("syntax error\n"); ;}
16600 #line 3041 "grammar.y"
16601 { (yyval.stmt) = (yyvsp[0].stmt); Compiler_Error("syntax error\n"); ;}
16605 #line 3042 "grammar.y"
16606 { (yyval.stmt) = (yyvsp[0].stmt); Compiler_Error("syntax error\n"); ;}
16610 #line 3043 "grammar.y"
16611 { (yyval.stmt) = (yyvsp[-1].stmt); Compiler_Error("syntax error\n"); ;}
16615 #line 3044 "grammar.y"
16616 { (yyval.stmt) = MkExpressionStmt((yyvsp[0].list)); Compiler_Error("syntax error\n"); (yyval.stmt).loc = (yylsp[0]); ;}
16620 #line 3048 "grammar.y"
16621 { (yyval.asmField) = MkAsmField((yyvsp[0].string), null); (yyval.asmField).loc = (yylsp[0]); ;}
16625 #line 3049 "grammar.y"
16626 { (yyval.asmField) = MkAsmField((yyvsp[-3].string), (yyvsp[-1].exp)); (yyval.asmField).loc = (yyloc); ;}
16630 #line 3053 "grammar.y"
16631 { (yyval.list) = MkListOne((yyvsp[0].asmField)); ;}
16635 #line 3054 "grammar.y"
16636 { ListAdd((yyval.list), (yyvsp[0].asmField)); ;}
16640 #line 3055 "grammar.y"
16641 { (yyval.list) = null; ;}
16645 #line 3059 "grammar.y"
16646 { (yyval.stmt) = MkAsmStmt((yyvsp[-4].specifier), (yyvsp[-2].string), null, null, null); (yyval.stmt).loc = (yyloc); ;}
16650 #line 3060 "grammar.y"
16651 { (yyval.stmt) = MkAsmStmt((yyvsp[-6].specifier), (yyvsp[-4].string), (yyvsp[-2].list), null, null); (yyval.stmt).loc = (yyloc); ;}
16655 #line 3061 "grammar.y"
16656 { (yyval.stmt) = MkAsmStmt((yyvsp[-8].specifier), (yyvsp[-6].string), (yyvsp[-4].list), (yyvsp[-2].list), null); (yyval.stmt).loc = (yyloc); ;}
16660 #line 3062 "grammar.y"
16661 { (yyval.stmt) = MkAsmStmt((yyvsp[-10].specifier), (yyvsp[-8].string), (yyvsp[-6].list), (yyvsp[-4].list), (yyvsp[-2].list)); (yyval.stmt).loc = (yyloc); ;}
16665 #line 3064 "grammar.y"
16666 { (yyval.stmt) = MkAsmStmt((yyvsp[-6].specifier), (yyvsp[-4].string), null, (yyvsp[-2].list), null); (yyval.stmt).loc = (yyloc); ;}
16670 #line 3065 "grammar.y"
16671 { (yyval.stmt) = MkAsmStmt((yyvsp[-8].specifier), (yyvsp[-6].string), null, (yyvsp[-4].list), (yyvsp[-2].list)); (yyval.stmt).loc = (yyloc); ;}
16675 #line 3066 "grammar.y"
16676 { (yyval.stmt) = MkAsmStmt((yyvsp[-8].specifier), (yyvsp[-6].string), (yyvsp[-4].list), null, (yyvsp[-2].list)); (yyval.stmt).loc = (yyloc); ;}
16680 #line 3068 "grammar.y"
16681 { (yyval.stmt) = MkAsmStmt(null, (yyvsp[-2].string), null, null, null); (yyval.stmt).loc = (yyloc); ;}
16685 #line 3069 "grammar.y"
16686 { (yyval.stmt) = MkAsmStmt(null, (yyvsp[-4].string), (yyvsp[-2].list), null, null); (yyval.stmt).loc = (yyloc); ;}
16690 #line 3070 "grammar.y"
16691 { (yyval.stmt) = MkAsmStmt(null, (yyvsp[-6].string), (yyvsp[-4].list), (yyvsp[-2].list), null); (yyval.stmt).loc = (yyloc); ;}
16695 #line 3071 "grammar.y"
16696 { (yyval.stmt) = MkAsmStmt(null, (yyvsp[-8].string), (yyvsp[-6].list), (yyvsp[-4].list), (yyvsp[-2].list)); (yyval.stmt).loc = (yyloc); ;}
16700 #line 3073 "grammar.y"
16701 { (yyval.stmt) = MkAsmStmt(null, (yyvsp[-4].string), null, (yyvsp[-2].list), null); (yyval.stmt).loc = (yyloc); ;}
16705 #line 3074 "grammar.y"
16706 { (yyval.stmt) = MkAsmStmt(null, (yyvsp[-6].string), null, (yyvsp[-4].list), (yyvsp[-2].list)); (yyval.stmt).loc = (yyloc); ;}
16710 #line 3075 "grammar.y"
16711 { (yyval.stmt) = MkAsmStmt(null, (yyvsp[-6].string), (yyvsp[-4].list), null, (yyvsp[-2].list)); (yyval.stmt).loc = (yyloc); ;}
16715 #line 3079 "grammar.y"
16716 { (yyval.stmt) = MkLabeledStmt((yyvsp[-2].id), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
16720 #line 3080 "grammar.y"
16721 { (yyval.stmt) = MkCaseStmt((yyvsp[-2].exp), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); (yyvsp[-2].exp).loc.start = (yylsp[-3]).end; ;}
16725 #line 3081 "grammar.y"
16726 { (yyval.stmt) = MkCaseStmt((yyvsp[-2].exp), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); (yyvsp[-2].exp).loc.start = (yylsp[-3]).end; ;}
16730 #line 3082 "grammar.y"
16731 { (yyval.stmt) = MkCaseStmt(MkExpDummy(), (yyvsp[0].stmt)); (yyval.stmt).caseStmt.exp.loc = (yylsp[-1]); (yyval.stmt).loc = (yyloc); (yyval.stmt).caseStmt.exp.loc.start = (yylsp[-2]).end; ;}
16735 #line 3083 "grammar.y"
16736 { (yyval.stmt) = MkCaseStmt(null, (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
16740 #line 3087 "grammar.y"
16741 { (yyval.stmt) = MkLabeledStmt((yyvsp[-2].id), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
16745 #line 3088 "grammar.y"
16746 { (yyval.stmt) = MkCaseStmt((yyvsp[-2].exp), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); (yyvsp[-2].exp).loc.start = (yylsp[-3]).end; ;}
16750 #line 3089 "grammar.y"
16751 { (yyval.stmt) = MkCaseStmt((yyvsp[-2].exp), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); (yyvsp[-2].exp).loc.start = (yylsp[-3]).end; ;}
16755 #line 3090 "grammar.y"
16756 { (yyval.stmt) = MkCaseStmt(MkExpDummy(), (yyvsp[0].stmt)); (yyval.stmt).caseStmt.exp.loc = (yylsp[-1]); (yyval.stmt).loc = (yyloc); (yyval.stmt).caseStmt.exp.loc.start = (yylsp[-2]).end; ;}
16760 #line 3091 "grammar.y"
16761 { (yyval.stmt) = MkCaseStmt(MkExpDummy(), null); (yyval.stmt).caseStmt.exp.loc = (yylsp[0]); (yyval.stmt).loc = (yyloc); (yyval.stmt).caseStmt.exp.loc.start = (yylsp[-1]).end; ;}
16765 #line 3092 "grammar.y"
16766 { (yyval.stmt) = MkCaseStmt(null, (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
16770 #line 3093 "grammar.y"
16771 { (yyval.stmt) = MkCaseStmt(null, null); (yyval.stmt).loc = (yyloc); ;}
16775 #line 3097 "grammar.y"
16776 { (yyval.declMode) = declMode = publicAccess; ;}
16780 #line 3098 "grammar.y"
16781 { (yyval.declMode) = declMode = privateAccess; ;}
16785 #line 3099 "grammar.y"
16786 { (yyval.declMode) = declMode = defaultAccess; ;}
16790 #line 3103 "grammar.y"
16791 { (yyval.declMode) = publicAccess; ;}
16795 #line 3104 "grammar.y"
16796 { (yyval.declMode) = privateAccess; ;}
16800 #line 3108 "grammar.y"
16801 { (yyval.declaration) = MkDeclaration((yyvsp[-1].list), null); (yyval.declaration).loc = (yyloc); ;}
16805 #line 3109 "grammar.y"
16806 { (yyval.declaration) = MkDeclaration((yyvsp[-2].list), (yyvsp[-1].list)); (yyval.declaration).loc = (yyloc); ;}
16810 #line 3110 "grammar.y"
16811 { (yyval.declaration) = MkDeclarationInst((yyvsp[-1].instance)); (yyval.declaration).loc = (yyloc); ;}
16815 #line 3111 "grammar.y"
16820 #line 3115 "grammar.y"
16821 { (yyval.declaration) = MkDeclaration((yyvsp[-1].list), null); (yyval.declaration).loc = (yyloc); ;}
16825 #line 3116 "grammar.y"
16826 { (yyval.declaration) = MkDeclaration((yyvsp[-2].list), (yyvsp[-1].list)); (yyval.declaration).loc = (yyloc); ;}
16830 #line 3117 "grammar.y"
16831 { (yyval.declaration) = MkDeclaration((yyvsp[-2].list), (yyvsp[-1].list)); (yyval.declaration).loc = (yyloc); ;}
16835 #line 3119 "grammar.y"
16836 { (yyval.declaration) = MkDeclarationInst((yyvsp[-1].instance)); (yyval.declaration).loc = (yyloc); ;}
16840 #line 3120 "grammar.y"
16841 { (yyval.declaration) = MkDeclarationDefine((yyvsp[-3].id), (yyvsp[-1].exp)); (yyval.declaration).loc = (yyloc); ;}
16845 #line 3121 "grammar.y"
16846 { declMode = staticAccess; (yyval.declaration) = MkDeclarationDefine((yyvsp[-3].id), (yyvsp[-1].exp)); (yyval.declaration).loc = (yyloc); ;}
16850 #line 3125 "grammar.y"
16851 { (yyval.declaration) = MkDeclaration((yyvsp[-1].list), null); (yyval.declaration).loc = (yyloc); yyerrok; ;}
16855 #line 3129 "grammar.y"
16856 { (yyval.declaration) = MkDeclaration((yyvsp[-1].list), null); (yyval.declaration).loc = (yyloc); ;}
16860 #line 3130 "grammar.y"
16865 #line 3132 "grammar.y"
16866 { (yyval.declaration) = MkDeclarationInst((yyvsp[-1].instance)); (yyval.declaration).loc = (yyloc); ;}
16870 #line 3133 "grammar.y"
16871 { (yyval.declaration) = MkDeclarationInst((yyvsp[-1].instance)); (yyval.declaration).loc = (yyloc); ;}
16875 #line 3134 "grammar.y"
16876 { (yyval.declaration) = MkDeclaration((yyvsp[-1].list), (yyvsp[0].list)); (yyval.declaration).loc = (yyloc); ;}
16880 #line 3138 "grammar.y"
16881 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].declaration)); /*declMode = defaultDeclMode;*/ ;}
16885 #line 3139 "grammar.y"
16886 { ListAdd((yyvsp[-1].list), (yyvsp[0].declaration)); /*declMode = defaultDeclMode; */;}
16890 #line 3140 "grammar.y"
16891 { ListAdd((yyvsp[-1].list), (yyvsp[0].declaration)); /*declMode = defaultDeclMode; */;}
16895 #line 3141 "grammar.y"
16900 #line 3145 "grammar.y"
16901 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].declaration)); ;}
16905 #line 3146 "grammar.y"
16906 { ListAdd((yyvsp[-1].list), (yyvsp[0].declaration)); ;}
16910 #line 3150 "grammar.y"
16911 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].stmt)); ;}
16915 #line 3151 "grammar.y"
16916 { ListAdd((yyvsp[-1].list), (yyvsp[0].stmt)); ;}
16920 #line 3152 "grammar.y"
16921 { ListAdd((yyvsp[-1].list), (yyvsp[0].stmt)); ;}
16925 #line 3156 "grammar.y"
16926 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].stmt)); ;}
16930 #line 3157 "grammar.y"
16931 { ListAdd((yyvsp[-1].list), (yyvsp[0].stmt)); ;}
16935 #line 3158 "grammar.y"
16936 { ListAdd((yyvsp[-1].list), (yyvsp[0].stmt)); ;}
16940 #line 3159 "grammar.y"
16941 { Statement stmt = MkBadDeclStmt((yyvsp[0].declaration)); stmt.loc = (yylsp[0]); yyerror(); ListAdd((yyvsp[-1].list), stmt); /*declMode = defaultDeclMode;*/ ;}
16945 #line 3160 "grammar.y"
16946 { Statement stmt = MkBadDeclStmt((yyvsp[0].declaration)); stmt.loc = (yylsp[0]); yyerror(); ListAdd((yyvsp[-1].list), stmt); /*declMode = defaultDeclMode;*/ ;}
16950 #line 3161 "grammar.y"
16951 { Statement stmt = MkBadDeclStmt((yyvsp[0].declaration)); stmt.loc = (yylsp[0]); yyerror(); ListAdd((yyvsp[-1].list), stmt); /*declMode = defaultDeclMode;*/ ;}
16955 #line 3162 "grammar.y"
16956 { Statement stmt = MkBadDeclStmt((yyvsp[0].declaration)); stmt.loc = (yylsp[0]); yyerror(); ListAdd((yyvsp[-1].list), stmt); /*declMode = defaultDeclMode;*/ ;}
16960 #line 3166 "grammar.y"
16961 { (yyval.stmt) = MkCompoundStmt(null, (yyvsp[0].list)); ;}
16965 #line 3167 "grammar.y"
16966 { (yyval.stmt) = MkCompoundStmt((yyvsp[0].list), null); ;}
16970 #line 3168 "grammar.y"
16971 { (yyval.stmt) = MkCompoundStmt((yyvsp[-1].list), (yyvsp[0].list)); ;}
16975 #line 3169 "grammar.y"
16976 { (yyval.stmt) = MkCompoundStmt((yyvsp[-1].list), (yyvsp[0].list)); ;}
16980 #line 3173 "grammar.y"
16981 { (yyval.stmt) = MkCompoundStmt(null, (yyvsp[0].list)); ;}
16985 #line 3174 "grammar.y"
16986 { (yyval.stmt) = MkCompoundStmt((yyvsp[0].list), null); ;}
16990 #line 3175 "grammar.y"
16991 { (yyval.stmt) = MkCompoundStmt((yyvsp[-1].list), (yyvsp[0].list)); ;}
16995 #line 3176 "grammar.y"
16996 { (yyval.stmt) = MkCompoundStmt((yyvsp[-1].list), (yyvsp[0].list)); ;}
17000 #line 3180 "grammar.y"
17001 { (yyval.context) = PushContext(); ;}
17005 #line 3184 "grammar.y"
17006 { (yyval.stmt).loc = (yyloc); ;}
17010 #line 3189 "grammar.y"
17011 { (yyval.stmt) = (yyvsp[0].stmt); (yyval.stmt).compound.context = (yyvsp[-1].context); PopContext((yyvsp[-1].context)); (yyval.stmt).loc = (yyloc); (yyval.stmt).loc.end.charPos++; (yyval.stmt).loc.end.pos++; ;}
17015 #line 3191 "grammar.y"
17016 { (yyval.stmt) = MkCompoundStmt(null, null); (yyval.stmt).compound.context = (yyvsp[0].context); PopContext((yyvsp[0].context)); (yyval.stmt).loc = (yyloc); (yyval.stmt).loc.end.charPos++; (yyval.stmt).loc.end.pos++; ;}
17020 #line 3194 "grammar.y"
17021 { (yyval.stmt) = (yyvsp[0].stmt); (yyval.stmt).compound.context = (yyvsp[-1].context); PopContext((yyvsp[-1].context)); (yyval.stmt).loc = (yyloc); (yyval.stmt).loc.end.charPos++; (yyval.stmt).loc.end.pos++; ;}
17025 #line 3199 "grammar.y"
17026 { (yyval.stmt) = MkExpressionStmt(null); (yyval.stmt).loc = (yyloc); ;}
17030 #line 3200 "grammar.y"
17031 { (yyval.stmt) = MkExpressionStmt((yyvsp[-1].list)); (yyval.stmt).loc = (yyloc); ;}
17035 #line 3201 "grammar.y"
17036 { (yyval.stmt) = MkExpressionStmt((yyvsp[-1].list)); (yyval.stmt).loc = (yyloc); ;}
17040 #line 3205 "grammar.y"
17041 { (yyval.stmt) = MkIfStmt((yyvsp[-2].list), (yyvsp[0].stmt), null); (yyval.stmt).loc = (yyloc); ;}
17045 #line 3206 "grammar.y"
17046 { (yyval.stmt) = MkIfStmt((yyvsp[-2].list), (yyvsp[0].stmt), null); (yyval.stmt).loc = (yyloc); ;}
17050 #line 3207 "grammar.y"
17051 { (yyval.stmt) = MkIfStmt((yyvsp[-4].list), (yyvsp[-2].stmt), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17055 #line 3208 "grammar.y"
17056 { (yyval.stmt) = MkIfStmt((yyvsp[-4].list), (yyvsp[-2].stmt), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17060 #line 3209 "grammar.y"
17061 { (yyval.stmt) = MkSwitchStmt((yyvsp[-2].list), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17065 #line 3210 "grammar.y"
17066 { (yyval.stmt) = MkSwitchStmt((yyvsp[-2].list), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17070 #line 3214 "grammar.y"
17071 { (yyval.stmt) = MkIfStmt((yyvsp[0].list), null, null); (yyval.stmt).loc = (yyloc); ;}
17075 #line 3219 "grammar.y"
17076 { (yyval.stmt) = MkWhileStmt((yyvsp[-2].list), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17080 #line 3220 "grammar.y"
17081 { (yyval.stmt) = MkWhileStmt((yyvsp[-1].list), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17085 #line 3221 "grammar.y"
17086 { (yyval.stmt) = MkWhileStmt(null, (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17090 #line 3223 "grammar.y"
17091 { (yyval.stmt) = MkDoWhileStmt((yyvsp[-5].stmt), (yyvsp[-2].list)); (yyval.stmt).loc = (yyloc); ;}
17095 #line 3224 "grammar.y"
17096 { (yyval.stmt) = MkDoWhileStmt((yyvsp[-4].stmt), (yyvsp[-1].list)); (yyval.stmt).loc = (yyloc); ;}
17100 #line 3226 "grammar.y"
17101 { (yyval.stmt) = MkForStmt((yyvsp[-3].stmt), (yyvsp[-2].stmt), null, (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17105 #line 3227 "grammar.y"
17106 { (yyval.stmt) = MkForStmt((yyvsp[-2].stmt), null, null, (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17110 #line 3228 "grammar.y"
17111 { (yyval.stmt) = MkForStmt((yyvsp[-4].stmt), (yyvsp[-3].stmt), (yyvsp[-2].list), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17115 #line 3229 "grammar.y"
17116 { (yyval.stmt) = MkForStmt((yyvsp[-3].stmt), (yyvsp[-2].stmt), (yyvsp[-1].list), (yyvsp[0].stmt) ); (yyval.stmt).loc = (yyloc); ;}
17120 #line 3230 "grammar.y"
17121 { (yyval.stmt) = MkForStmt(null, null, null, (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17125 #line 3232 "grammar.y"
17126 { (yyval.stmt) = MkForEachStmt((yyvsp[-4].id), (yyvsp[-2].list), null, (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17130 #line 3233 "grammar.y"
17131 { (yyval.stmt) = MkForEachStmt((yyvsp[-6].id), (yyvsp[-4].list), (yyvsp[-2].list), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17135 #line 3237 "grammar.y"
17136 { (yyval.stmt) = MkForStmt(null, null, null, null); (yyval.stmt).loc = (yyloc); ;}
17140 #line 3238 "grammar.y"
17141 { (yyval.stmt) = MkForStmt(MkExpressionStmt((yyvsp[-1].list)), null, null, null); (yyval.stmt).forStmt.init.loc = (yylsp[-1]); (yyval.stmt).loc = (yyloc); ;}
17145 #line 3239 "grammar.y"
17146 { (yyval.stmt) = MkForStmt((yyvsp[-1].stmt), null, null, null); (yyval.stmt).loc = (yyloc); ;}
17150 #line 3240 "grammar.y"
17151 { (yyval.stmt) = MkForStmt((yyvsp[-2].stmt), MkExpressionStmt((yyvsp[-1].list)), null, null); (yyval.stmt).loc = (yyloc); (yyval.stmt).forStmt.check.loc = (yylsp[-1]); ;}
17155 #line 3241 "grammar.y"
17156 { (yyval.stmt) = MkForStmt((yyvsp[-2].stmt), (yyvsp[-1].stmt), null, null); (yyval.stmt).loc = (yyloc); ;}
17160 #line 3242 "grammar.y"
17161 { (yyval.stmt) = MkForStmt((yyvsp[-2].stmt), (yyvsp[-1].stmt), (yyvsp[0].list), null); (yyval.stmt).loc = (yyloc); ;}
17165 #line 3243 "grammar.y"
17166 { (yyval.stmt) = MkForStmt((yyvsp[-3].stmt), (yyvsp[-2].stmt), null, (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17170 #line 3244 "grammar.y"
17171 { (yyval.stmt) = MkForStmt((yyvsp[-4].stmt), (yyvsp[-3].stmt), (yyvsp[-2].list), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17175 #line 3245 "grammar.y"
17176 { (yyval.stmt) = MkForStmt((yyvsp[-3].stmt), (yyvsp[-2].stmt), (yyvsp[-1].list), (yyvsp[0].stmt) ); (yyval.stmt).loc = (yyloc); ;}
17180 #line 3247 "grammar.y"
17181 { (yyval.stmt) = MkDoWhileStmt((yyvsp[-4].stmt), (yyvsp[-1].list)); (yyval.stmt).loc = (yyloc); ;}
17185 #line 3248 "grammar.y"
17186 { (yyval.stmt) = MkDoWhileStmt((yyvsp[-3].stmt), (yyvsp[0].list)); (yyval.stmt).loc = (yyloc); ;}
17190 #line 3249 "grammar.y"
17191 { (yyval.stmt) = MkDoWhileStmt((yyvsp[-3].stmt), (yyvsp[0].list)); (yyval.stmt).loc = (yyloc); ;}
17195 #line 3250 "grammar.y"
17196 { (yyval.stmt) = MkDoWhileStmt((yyvsp[-2].stmt), null); (yyval.stmt).loc = (yyloc); ;}
17200 #line 3251 "grammar.y"
17201 { (yyval.stmt) = MkDoWhileStmt((yyvsp[-1].stmt), null); (yyval.stmt).loc = (yyloc); ;}
17205 #line 3252 "grammar.y"
17206 { (yyval.stmt) = MkDoWhileStmt((yyvsp[0].stmt), null); (yyval.stmt).loc = (yyloc); ;}
17210 #line 3253 "grammar.y"
17211 { (yyval.stmt) = MkDoWhileStmt(null, null); (yyval.stmt).loc = (yyloc); ;}
17215 #line 3256 "grammar.y"
17216 { (yyval.stmt) = MkWhileStmt(null, null); (yyval.stmt).loc = (yyloc); ;}
17220 #line 3257 "grammar.y"
17221 { (yyval.stmt) = MkWhileStmt(null, null); (yyval.stmt).loc = (yyloc); ;}
17225 #line 3258 "grammar.y"
17226 { (yyval.stmt) = MkWhileStmt(null, null); (yyval.stmt).loc = (yyloc); ;}
17230 #line 3259 "grammar.y"
17231 { (yyval.stmt) = MkWhileStmt((yyvsp[0].list), null); (yyval.stmt).loc = (yyloc); ;}
17235 #line 3260 "grammar.y"
17236 { (yyval.stmt) = MkWhileStmt((yyvsp[-1].list), null); (yyval.stmt).loc = (yyloc); ;}
17240 #line 3261 "grammar.y"
17241 { (yyval.stmt) = MkWhileStmt((yyvsp[-2].list), (yyvsp[0].stmt)); (yyval.stmt).loc = (yyloc); ;}
17245 #line 3262 "grammar.y"
17246 { (yyval.stmt) = MkWhileStmt((yyvsp[-1].list), (yyvsp[0].stmt) ); (yyval.stmt).loc = (yyloc); ;}
17250 #line 3266 "grammar.y"
17251 { (yyval.stmt) = MkGotoStmt((yyvsp[-1].id)); (yyval.stmt).loc = (yyloc); ;}
17255 #line 3267 "grammar.y"
17256 { (yyval.stmt) = MkContinueStmt(); (yyval.stmt).loc = (yyloc); ;}
17260 #line 3268 "grammar.y"
17261 { (yyval.stmt) = MkBreakStmt(); (yyval.stmt).loc = (yyloc); ;}
17265 #line 3269 "grammar.y"
17266 { Expression exp = MkExpDummy(); (yyval.stmt) = MkReturnStmt(MkListOne(exp)); (yyval.stmt).loc = (yyloc); exp.loc = (yylsp[0]); ;}
17270 #line 3270 "grammar.y"
17271 { (yyval.stmt) = MkReturnStmt((yyvsp[-1].list)); (yyval.stmt).loc = (yyloc); ;}
17275 #line 3271 "grammar.y"
17276 { (yyval.stmt) = MkReturnStmt((yyvsp[-1].list)); (yyval.stmt).loc = (yyloc); ;}
17280 #line 3272 "grammar.y"
17281 { (yyval.stmt) = MkReturnStmt(MkListOne((yyvsp[-1].exp))); (yyval.stmt).loc = (yyloc); ;}
17285 #line 3273 "grammar.y"
17286 { (yyval.stmt) = MkReturnStmt(MkListOne((yyvsp[-1].exp))); (yyval.stmt).loc = (yyloc); ;}
17290 #line 3277 "grammar.y"
17291 { (yyval.stmt) = MkReturnStmt((yyvsp[0].list)); (yyval.stmt).loc = (yyloc); ;}
17295 #line 3278 "grammar.y"
17296 { (yyval.stmt) = MkReturnStmt(MkListOne((yyvsp[0].exp))); (yyval.stmt).loc = (yyloc); ;}
17300 #line 3279 "grammar.y"
17301 { Expression exp = MkExpDummy(); (yyval.stmt) = MkReturnStmt(MkListOne(exp)); (yyval.stmt).loc = (yyloc); exp.loc.start = exp.loc.end = (yylsp[0]).end; ;}
17305 #line 3280 "grammar.y"
17306 { (yyval.stmt) = MkGotoStmt(null); (yyval.stmt).loc = (yyloc); ;}
17310 #line 3286 "grammar.y"
17311 { (yyval.function) = MkFunction((yyvsp[-3].list), (yyvsp[-2].declarator), (yyvsp[-1].list)); ProcessFunctionBody((yyval.function), (yyvsp[0].stmt)); (yyval.function).loc = (yyloc); ;}
17315 #line 3288 "grammar.y"
17316 { (yyval.function) = MkFunction((yyvsp[-2].list), (yyvsp[-1].declarator), null); ProcessFunctionBody((yyval.function), (yyvsp[0].stmt)); (yyval.function).loc = (yyloc); ;}
17320 #line 3290 "grammar.y"
17321 { (yyval.function) = MkFunction(null, (yyvsp[-2].declarator), (yyvsp[-1].list)); ProcessFunctionBody((yyval.function), (yyvsp[0].stmt)); (yyval.function).loc = (yyloc); ;}
17325 #line 3291 "grammar.y"
17326 { (yyval.function) = MkFunction(null, (yyvsp[-1].declarator), null); ProcessFunctionBody((yyval.function), (yyvsp[0].stmt)); (yyval.function).loc = (yyloc);;}
17330 #line 3294 "grammar.y"
17331 { (yyval.function) = MkFunction((yyvsp[-3].list), (yyvsp[-2].declarator), (yyvsp[-1].list)); ProcessFunctionBody((yyval.function), (yyvsp[0].stmt)); (yyval.function).loc = (yyloc); (yyval.function).loc.end = (yyvsp[0].stmt).loc.end; ;}
17335 #line 3295 "grammar.y"
17336 { (yyval.function) = MkFunction((yyvsp[-2].list), (yyvsp[-1].declarator), null); ProcessFunctionBody((yyval.function), (yyvsp[0].stmt)); (yyval.function).loc = (yyloc); (yyval.function).loc.end = (yyvsp[0].stmt).loc.end; ;}
17340 #line 3296 "grammar.y"
17341 { (yyval.function) = MkFunction(null, (yyvsp[-2].declarator), (yyvsp[-1].list)); ProcessFunctionBody((yyval.function), (yyvsp[0].stmt)); (yyval.function).loc = (yyloc); (yyval.function).loc.end = (yyvsp[0].stmt).loc.end; ;}
17345 #line 3297 "grammar.y"
17346 { (yyval.function) = MkFunction(null, (yyvsp[-1].declarator), null); ProcessFunctionBody((yyval.function), (yyvsp[0].stmt)); (yyval.function).loc = (yyloc); (yyval.function).loc.end = (yyvsp[0].stmt).loc.end; ;}
17350 #line 3301 "grammar.y"
17351 { (yyval.string) = CopyString(yytext); ;}
17355 #line 3303 "grammar.y"
17357 int len1 = strlen((yyvsp[-1].string));
17358 int len2 = strlen(yytext);
17359 (yyval.string) = new byte[len1-1 + len2-1 + 1];
17360 memcpy((yyval.string), (yyvsp[-1].string), len1-1);
17361 memcpy((yyval.string) + len1-1, yytext+1, len2);
17362 delete (yyvsp[-1].string);
17367 #line 3314 "grammar.y"
17368 { (yyval.external) = MkExternalFunction((yyvsp[0].function)); (yyval.external).loc = (yyloc); (yyvsp[0].function).declMode = declMode; declMode = defaultDeclMode; ;}
17372 #line 3316 "grammar.y"
17373 { (yyval.external) = MkExternalClass((yyvsp[0]._class)); (yyval.external).loc = (yyloc); (yyvsp[0]._class).declMode = (declMode != defaultAccess) ? declMode : privateAccess; declMode = defaultDeclMode; ;}
17377 #line 3319 "grammar.y"
17378 { (yyval.external) = MkExternalClass((yyvsp[0]._class)); (yyval.external).loc = (yyloc); (yyvsp[0]._class).declMode = (declMode != defaultAccess) ? declMode : privateAccess; declMode = defaultDeclMode; ;}
17382 #line 3322 "grammar.y"
17383 { (yyval.external) = MkExternalDeclaration((yyvsp[0].declaration)); (yyval.external).loc = (yyloc); (yyvsp[0].declaration).declMode = declMode; declMode = defaultDeclMode; ;}
17387 #line 3323 "grammar.y"
17388 { (yyval.external) = MkExternalImport((yyvsp[0].string), normalImport, (declMode != defaultAccess) ? declMode : privateAccess); (yyval.external).loc = (yyloc); ;}
17392 #line 3324 "grammar.y"
17393 { (yyval.external) = MkExternalImport((yyvsp[0].string), staticImport, (declMode != defaultAccess) ? declMode : privateAccess); (yyval.external).loc = (yyloc); ;}
17397 #line 3325 "grammar.y"
17398 { if(!strcmp((yyvsp[-1].id).string, "remote")) { (yyval.external) = MkExternalImport((yyvsp[0].string), remoteImport, (declMode != defaultAccess) ? declMode : privateAccess); (yyval.external).loc = (yyloc); } else yyerror(); FreeIdentifier((yyvsp[-1].id)); ;}
17402 #line 3327 "grammar.y"
17403 { (yyval.external) = null; ;}
17407 #line 3329 "grammar.y"
17408 { (yyval.external) = MkExternalFunction((yyvsp[0].function)); (yyval.external).loc = (yyloc); (yyvsp[0].function).declMode = (yyvsp[-1].declMode); declMode = defaultDeclMode; ;}
17412 #line 3331 "grammar.y"
17413 { (yyval.external) = MkExternalClass((yyvsp[0]._class)); (yyval.external).loc = (yyloc); (yyvsp[0]._class).declMode = ((yyvsp[-1].declMode) != defaultAccess) ? (yyvsp[-1].declMode) : privateAccess; declMode = defaultDeclMode; ;}
17417 #line 3332 "grammar.y"
17418 { (yyval.external) = MkExternalDeclaration((yyvsp[0].declaration)); (yyval.external).loc = (yyloc); (yyvsp[0].declaration).declMode = (yyvsp[-1].declMode); declMode = defaultDeclMode; ;}
17422 #line 3333 "grammar.y"
17423 { (yyval.external) = MkExternalImport((yyvsp[0].string), normalImport, ((yyvsp[-2].declMode) != defaultAccess) ? (yyvsp[-2].declMode) : privateAccess); (yyval.external).loc = (yyloc); declMode = defaultDeclMode; ;}
17427 #line 3334 "grammar.y"
17428 { (yyval.external) = MkExternalImport((yyvsp[0].string), staticImport, ((yyvsp[-3].declMode) != defaultAccess) ? (yyvsp[-3].declMode) : privateAccess); (yyval.external).loc = (yyloc); declMode = defaultDeclMode; ;}
17432 #line 3335 "grammar.y"
17433 { if(!strcmp((yyvsp[-1].id).string, "remote")) { (yyval.external) = MkExternalImport((yyvsp[0].string), remoteImport, ((yyvsp[-3].declMode) != defaultAccess) ? (yyvsp[-3].declMode) : privateAccess); (yyval.external).loc = (yyloc); FreeIdentifier((yyvsp[-1].id)); } else yyerror(); declMode = defaultDeclMode; ;}
17437 #line 3336 "grammar.y"
17438 { defaultDeclMode = (yyvsp[-1].declMode); (yyval.external) = null; ;}
17442 #line 3337 "grammar.y"
17443 { defaultDeclMode = staticAccess; (yyval.external) = null; ;}
17447 #line 3338 "grammar.y"
17448 { (yyval.external) = MkExternalNameSpace((yyvsp[0].id)); (yyval.external).loc = (yyloc); ;}
17452 #line 3339 "grammar.y"
17453 { (yyval.external) = MkExternalNameSpace(MkIdentifier((yyvsp[0].specifier).name)); FreeSpecifier((yyvsp[0].specifier)); (yyval.external).loc = (yyloc); ;}
17457 #line 3340 "grammar.y"
17458 { (yyval.external) = MkExternalDBTable((yyvsp[0].dbtableDef)); (yyval.external).loc = (yyloc); (yyvsp[0].dbtableDef).declMode = (declMode != defaultAccess) ? declMode : privateAccess; declMode = defaultDeclMode; ;}
17462 #line 3341 "grammar.y"
17463 { (yyval.external) = MkExternalDBTable((yyvsp[0].dbtableDef)); (yyval.external).loc = (yyloc); (yyvsp[0].dbtableDef).declMode = ((yyvsp[-1].declMode) != defaultAccess) ? declMode : privateAccess; declMode = defaultDeclMode; ;}
17467 #line 3345 "grammar.y"
17468 { (yyval.external) = MkExternalClass((yyvsp[0]._class)); (yyval.external).loc = (yyvsp[0]._class).loc; (yyvsp[0]._class).declMode = (declMode != defaultAccess) ? declMode : privateAccess; declMode = defaultDeclMode; ;}
17472 #line 3346 "grammar.y"
17473 { (yyval.external) = MkExternalClass((yyvsp[0]._class)); (yyval.external).loc = (yyvsp[0]._class).loc; (yyvsp[0]._class).declMode = (declMode != defaultAccess) ? declMode : privateAccess; declMode = defaultDeclMode; ;}
17477 #line 3347 "grammar.y"
17478 { (yyval.external) = MkExternalFunction((yyvsp[0].function)); (yyval.external).loc = (yyvsp[0].function).loc; (yyvsp[0].function).declMode = declMode; declMode = defaultDeclMode; ;}
17482 #line 3349 "grammar.y"
17483 { (yyval.external) = MkExternalClass((yyvsp[0]._class)); (yyval.external).loc = (yyvsp[0]._class).loc; (yyvsp[0]._class).declMode = ((yyvsp[-1].declMode) != defaultAccess) ? (yyvsp[-1].declMode) : privateAccess; declMode = defaultDeclMode; ;}
17487 #line 3350 "grammar.y"
17488 { (yyval.external) = MkExternalFunction((yyvsp[0].function)); (yyval.external).loc = (yyvsp[0].function).loc; (yyvsp[0].function).declMode = (yyvsp[-1].declMode); declMode = defaultDeclMode; ;}
17492 #line 3353 "grammar.y"
17493 { (yyval.external) = MkExternalDeclaration((yyvsp[0].declaration)); (yyval.external).loc = (yyloc); (yyvsp[0].declaration).declMode = declMode; declMode = defaultDeclMode; ;}
17497 #line 3354 "grammar.y"
17498 { (yyval.external) = MkExternalDeclaration((yyvsp[0].declaration)); (yyval.external).loc = (yyloc); (yyvsp[0].declaration).declMode = (yyvsp[-1].declMode); declMode = defaultDeclMode; ;}
17502 #line 3358 "grammar.y"
17503 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].external)); ast = (yyval.list); ;}
17507 #line 3359 "grammar.y"
17508 { ListAdd((yyvsp[-1].list), (yyvsp[0].external)); ;}
17512 #line 3360 "grammar.y"
17513 { ListAdd((yyvsp[-1].list), (yyvsp[0].external)); ;}
17517 #line 3366 "grammar.y"
17518 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].external)); ast = (yyval.list); ;}
17522 #line 3367 "grammar.y"
17523 { ListAdd((yyvsp[-1].list), (yyvsp[0].external)); ;}
17527 #line 3369 "grammar.y"
17528 { External _class = MkExternalClass((yyvsp[0]._class)); ListAdd((yyvsp[-1].list), _class); _class.loc = (yylsp[0]); (yyvsp[0]._class).declMode = (declMode != defaultAccess) ? declMode : privateAccess; declMode = defaultDeclMode; ;}
17532 #line 3371 "grammar.y"
17533 { External _class = MkExternalClass((yyvsp[0]._class)); ListAdd((yyvsp[-2].list), _class); _class.loc = (yylsp[0]); (yyvsp[0]._class).declMode = ((yyvsp[-1].declMode) != defaultAccess) ? (yyvsp[-1].declMode) : privateAccess; declMode = defaultDeclMode; ;}
17537 #line 3377 "grammar.y"
17538 { ast = MkList(); ;}
17542 #line 3381 "grammar.y"
17543 { Symbol symbol = DeclClassAddNameSpace(globalContext.nextID++, (yyvsp[-3].id).string); FreeIdentifier((yyvsp[-3].id)); (yyval.dbtableDef) = MkDBTableDef((yyvsp[-4].string), symbol, (yyvsp[-1].list)); ;}
17547 #line 3382 "grammar.y"
17548 { Symbol symbol = DeclClass(globalContext.nextID++, (yyvsp[-3].specifier).name); FreeSpecifier((yyvsp[-3].specifier)); (yyval.dbtableDef) = MkDBTableDef((yyvsp[-4].string), symbol, (yyvsp[-1].list)); ;}
17552 #line 3383 "grammar.y"
17553 { (yyval.dbtableDef) = MkDBTableDef((yyvsp[-3].string), null, (yyvsp[-1].list)); ;}
17557 #line 3387 "grammar.y"
17558 { (yyval.dbtableEntry) = MkDBFieldEntry(MkTypeName((yyvsp[-3].list), null), (yyvsp[-2].id), (yyvsp[-1].string)); ;}
17562 #line 3391 "grammar.y"
17563 { (yyval.dbindexItem) = MkDBIndexItem((yyvsp[0].id), ascending); ;}
17567 #line 3392 "grammar.y"
17568 { (yyval.dbindexItem) = MkDBIndexItem((yyvsp[0].id), descending); ;}
17572 #line 3393 "grammar.y"
17573 { (yyval.dbindexItem) = MkDBIndexItem((yyvsp[0].id), ascending); ;}
17577 #line 3397 "grammar.y"
17578 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].dbindexItem)); ;}
17582 #line 3398 "grammar.y"
17583 { ListAdd((yyvsp[-2].list), (yyvsp[0].dbindexItem)); ;}
17587 #line 3402 "grammar.y"
17588 { (yyval.dbtableEntry) = MkDBIndexEntry((yyvsp[-1].list), null); ;}
17592 #line 3403 "grammar.y"
17593 { (yyval.dbtableEntry) = MkDBIndexEntry((yyvsp[-2].list), (yyvsp[-1].id)); ;}
17597 #line 3407 "grammar.y"
17598 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].dbtableEntry)); ;}
17602 #line 3408 "grammar.y"
17603 { (yyval.list) = MkList(); ListAdd((yyval.list), (yyvsp[0].dbtableEntry)); ;}
17607 #line 3409 "grammar.y"
17608 { ListAdd((yyvsp[-1].list), (yyvsp[0].dbtableEntry)); ;}
17612 #line 3410 "grammar.y"
17613 { ListAdd((yyvsp[-1].list), (yyvsp[0].dbtableEntry)); ;}
17617 #line 3414 "grammar.y"
17618 { (yyval.exp) = MkExpDBOpen((yyvsp[-3].exp), (yyvsp[-1].exp)); ;}
17622 #line 3418 "grammar.y"
17623 { (yyval.exp) = MkExpDBField((yyvsp[-3].string), (yyvsp[-1].id)); ;}
17627 #line 3422 "grammar.y"
17628 { (yyval.exp) = MkExpDBIndex((yyvsp[-3].string), (yyvsp[-1].id)); ;}
17632 #line 3426 "grammar.y"
17633 { (yyval.exp) = MkExpDBTable((yyvsp[-1].string)); ;}
17639 /* Line 1037 of yacc.c. */
17640 #line 17641 "grammar.ec"
17646 YY_STACK_PRINT (yyss, yyssp);
17651 /* Now `shift' the result of the reduction. Determine what state
17652 that goes to, based on the state we popped back to and the rule
17653 number reduced by. */
17657 yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
17658 if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
17659 yystate = yytable[yystate];
17661 yystate = yydefgoto[yyn - YYNTOKENS];
17666 /*------------------------------------.
17667 | yyerrlab -- here on detecting error |
17668 `------------------------------------*/
17670 /* If not already recovering from an error, report this error. */
17674 #if YYERROR_VERBOSE
17675 yyn = yypact[yystate];
17677 if (YYPACT_NINF < yyn && yyn < YYLAST)
17679 YYSIZE_T yysize = 0;
17680 int yytype = YYTRANSLATE (yychar);
17681 const char* yyprefix;
17685 /* Start YYX at -YYN if negative to avoid negative indexes in
17687 int yyxbegin = yyn < 0 ? -yyn : 0;
17689 /* Stay within bounds of both yycheck and yytname. */
17690 int yychecklim = YYLAST - yyn;
17691 int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
17694 yyprefix = ", expecting ";
17695 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
17696 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
17698 yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]);
17706 yysize += (sizeof ("syntax error, unexpected ")
17707 + yystrlen (yytname[yytype]));
17708 yymsg = (char *) YYSTACK_ALLOC (yysize);
17711 char *yyp = yystpcpy (yymsg, "syntax error, unexpected ");
17712 yyp = yystpcpy (yyp, yytname[yytype]);
17716 yyprefix = ", expecting ";
17717 for (yyx = yyxbegin; yyx < yyxend; ++yyx)
17718 if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
17720 yyp = yystpcpy (yyp, yyprefix);
17721 yyp = yystpcpy (yyp, yytname[yyx]);
17726 YYSTACK_FREE (yymsg);
17729 yyerror ("syntax error; also virtual memory exhausted");
17732 #endif /* YYERROR_VERBOSE */
17733 yyerror ("syntax error");
17736 yyerror_range[0] = yylloc;
17738 if (yyerrstatus == 3)
17740 /* If just tried and failed to reuse look-ahead token after an
17741 error, discard it. */
17743 if (yychar <= YYEOF)
17745 /* If at end of input, pop the error token,
17746 then the rest of the stack, then return failure. */
17747 if (yychar == YYEOF)
17750 yyerror_range[0] = *yylsp;
17754 yydestruct ("Error: popping",
17755 yystos[*yyssp], yyvsp, yylsp);
17760 yydestruct ("Error: discarding", yytoken, &yylval, &yylloc);
17765 /* Else will try to reuse look-ahead token after shifting the error
17770 /*---------------------------------------------------.
17771 | yyerrorlab -- error raised explicitly by YYERROR. |
17772 `---------------------------------------------------*/
17776 /* Pacify GCC when the user code never invokes YYERROR and the label
17777 yyerrorlab therefore never appears in user code. */
17782 yyerror_range[0] = yylsp[1-yylen];
17790 /*-------------------------------------------------------------.
17791 | yyerrlab1 -- common code for both syntax error and YYERROR. |
17792 `-------------------------------------------------------------*/
17794 yyerrstatus = 3; /* Each real token shifted decrements this. */
17798 yyn = yypact[yystate];
17799 if (yyn != YYPACT_NINF)
17802 if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
17804 yyn = yytable[yyn];
17810 /* Pop the current state because it cannot handle the error token. */
17814 yyerror_range[0] = *yylsp;
17815 yydestruct ("Error: popping", yystos[yystate], yyvsp, yylsp);
17818 YY_STACK_PRINT (yyss, yyssp);
17821 if (yyn == YYFINAL)
17826 yyerror_range[1] = yylloc;
17827 /* Using YYLLOC is tempting, but would change the location of
17828 the look-ahead. YYLOC is available though. */
17829 YYLLOC_DEFAULT (yyloc, yyerror_range - 1, 2);
17832 /* Shift the error token. */
17833 YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
17839 /*-------------------------------------.
17840 | yyacceptlab -- YYACCEPT comes here. |
17841 `-------------------------------------*/
17846 /*-----------------------------------.
17847 | yyabortlab -- YYABORT comes here. |
17848 `-----------------------------------*/
17850 yydestruct ("Error: discarding lookahead",
17851 yytoken, &yylval, &yylloc);
17857 /*----------------------------------------------.
17858 | yyoverflowlab -- parser overflow comes here. |
17859 `----------------------------------------------*/
17861 yyerror ("parser stack overflow");
17863 /* Fall through. */
17869 YYSTACK_FREE (yyss);
17875 #line 3429 "grammar.y"