1 /* Code generated from eC source file: type.ec */
3 #define __runtimePlatform 1
4 #elif defined(__APPLE__)
5 #define __runtimePlatform 3
7 #define __runtimePlatform 2
10 typedef long long int64;
11 typedef unsigned long long uint64;
15 #elif defined(__TINYC__)
17 #define __builtin_va_list va_list
18 #define __builtin_va_start va_start
19 #define __builtin_va_end va_end
21 #define strcasecmp stricmp
22 #define strncasecmp strnicmp
23 #define __declspec(x) __attribute__((x))
27 typedef long long int64;
28 typedef unsigned long long uint64;
30 typedef __int64 int64;
31 typedef unsigned __int64 uint64;
34 #define __ENDIAN_PAD(x) (8 - (x))
36 #define __ENDIAN_PAD(x) 0
39 # if defined(__GNUC__) || defined(__TINYC__)
40 # define ecere_stdcall __attribute__((__stdcall__))
41 # define ecere_gcc_struct __attribute__((gcc_struct))
43 # define ecere_stdcall __stdcall
44 # define ecere_gcc_struct
47 # define ecere_stdcall
48 # define ecere_gcc_struct
51 #include <sys/types.h>
54 IDENTIFIER = 258, CONSTANT = 259, STRING_LITERAL = 260, SIZEOF = 261, PTR_OP = 262, INC_OP = 263, DEC_OP = 264, LEFT_OP = 265, RIGHT_OP = 266, LE_OP = 267, GE_OP = 268, EQ_OP = 269, NE_OP = 270, AND_OP = 271, OR_OP = 272, MUL_ASSIGN = 273, DIV_ASSIGN = 274, MOD_ASSIGN = 275, ADD_ASSIGN = 276, SUB_ASSIGN = 277, LEFT_ASSIGN = 278, RIGHT_ASSIGN = 279, AND_ASSIGN = 280, XOR_ASSIGN = 281, OR_ASSIGN = 282, TYPE_NAME = 283, TYPEDEF = 284, EXTERN = 285, STATIC = 286, AUTO = 287, REGISTER = 288, CHAR = 289, SHORT = 290, INT = 291, UINT = 292, INT64 = 293, LONG = 294, SIGNED = 295, UNSIGNED = 296, FLOAT = 297, DOUBLE = 298, CONST = 299, VOLATILE = 300, VOID = 301, VALIST = 302, STRUCT = 303, UNION = 304, ENUM = 305, ELLIPSIS = 306, CASE = 307, DEFAULT = 308, IF = 309, SWITCH = 310, WHILE = 311, DO = 312, FOR = 313, GOTO = 314, CONTINUE = 315, BREAK = 316, RETURN = 317, IFX = 318, ELSE = 319, CLASS = 320, THISCLASS = 321, CLASS_NAME = 322, PROPERTY = 323, SETPROP = 324, GETPROP = 325, NEWOP = 326, RENEW = 327, DELETE = 328, EXT_DECL = 329, EXT_STORAGE = 330, IMPORT = 331, DEFINE = 332, VIRTUAL = 333, ATTRIB = 334, PUBLIC = 335, PRIVATE = 336, TYPED_OBJECT = 337, ANY_OBJECT = 338, _INCREF = 339, EXTENSION = 340, ASM = 341, TYPEOF = 342, WATCH = 343, STOPWATCHING = 344, FIREWATCHERS = 345, WATCHABLE = 346, CLASS_DESIGNER = 347, CLASS_NO_EXPANSION = 348, CLASS_FIXED = 349, ISPROPSET = 350, CLASS_DEFAULT_PROPERTY = 351, PROPERTY_CATEGORY = 352, CLASS_DATA = 353, CLASS_PROPERTY = 354, SUBCLASS = 355, NAMESPACE = 356, NEW0OP = 357, RENEW0 = 358, VAARG = 359, DBTABLE = 360, DBFIELD = 361, DBINDEX = 362, DATABASE_OPEN = 363, ALIGNOF = 364, ATTRIB_DEP = 365, __ATTRIB = 366, BOOL = 367, _BOOL = 368, _COMPLEX = 369, _IMAGINARY = 370, RESTRICT = 371, THREAD = 372, WIDE_STRING_LITERAL = 373, BUILTIN_OFFSETOF = 374
57 extern unsigned int parseTypeError;
65 typedef unsigned char yytype_uint8;
67 typedef signed char yytype_int8;
69 typedef unsigned short int yytype_uint16;
71 typedef short int yytype_int16;
73 void * malloc(size_t);
77 static const yytype_uint8 yytranslate[] =
79 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 134, 2, 2, 126, 136, 131, 2, 123, 124, 120, 132, 130, 133, 127, 135, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 140, 142, 121, 141, 122, 139, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 128, 2, 129, 137, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 143, 138, 144, 125, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119
82 static const yytype_uint16 yyprhs[] =
84 0, 0, 3, 6, 9, 12, 14, 17, 19, 21, 26, 31, 34, 36, 40, 45, 49, 52, 54, 56, 60, 62, 64, 66, 68, 70, 73, 78, 81, 88, 94, 101, 107, 115, 122, 130, 137, 139, 141, 146, 150, 155, 159, 162, 166, 169, 172, 174, 176, 178, 182, 186, 189, 192, 195, 198, 203, 206, 211, 213, 215, 217, 219, 221, 223, 225, 227, 229, 231, 236, 238, 242, 246, 250, 252, 256, 260, 262, 266, 270, 273, 275, 278, 282, 286, 290, 292, 296, 300, 302, 306, 308, 312, 314, 318, 320, 324, 326, 330, 332, 338, 340, 344, 348, 350, 352, 354, 356, 358, 360, 362, 364, 366, 368, 370, 372, 376, 378, 381, 385, 388, 394, 396, 399, 401, 404, 406, 409, 411, 414, 416, 419, 421, 424, 426, 429, 431, 434, 436, 439, 441, 444, 446, 449, 451, 454, 456, 459, 461, 464, 466, 469, 471, 474, 476, 479, 481, 484, 486, 489, 491, 494, 496, 498, 500, 503, 505, 508, 510, 513, 515, 518, 523, 529, 531, 534, 536, 539, 541, 544, 546, 549, 551, 554, 556, 559, 564, 570, 572, 576, 578, 582, 584, 586, 588, 590, 592, 594, 596, 598, 600, 602, 604, 606, 608, 610, 612, 614, 616, 618, 623, 625, 628, 632, 639, 645, 647, 649, 651, 653, 655, 657, 659, 661, 663, 665, 667, 669, 671, 673, 675, 677, 679, 681, 683, 685, 687, 689, 694, 699, 704, 706, 708, 710, 712, 714, 716, 718, 720, 722, 724, 726, 728, 730, 732, 734, 736, 738, 740, 742, 744, 746, 751, 756, 761, 763, 769, 774, 779, 783, 789, 796, 802, 808, 813, 820, 823, 826, 830, 834, 836, 839, 841, 844, 846, 848, 850, 854, 858, 862, 866, 868, 872, 874, 876, 878, 881, 885, 887, 891, 901, 911, 919, 927, 933, 944, 955, 964, 973, 980, 989, 998, 1005, 1012, 1017, 1027, 1037, 1045, 1053, 1059, 1063, 1066, 1069, 1072, 1074, 1077, 1079, 1081, 1083, 1087, 1089, 1092, 1095, 1099, 1105, 1108, 1111, 1116, 1122, 1130, 1138, 1144, 1146, 1150, 1152, 1156, 1160, 1163, 1167, 1171, 1175, 1180, 1185, 1188, 1192, 1196, 1201, 1205, 1208, 1212, 1216, 1221, 1223, 1225, 1228, 1231, 1234, 1238, 1240, 1242, 1245, 1248, 1251, 1255, 1257, 1260, 1264, 1267, 1269, 1273, 1278, 1282, 1287, 1289, 1292, 1295, 1299, 1303, 1306, 1310, 1314, 1317, 1319, 1321, 1324, 1327, 1329, 1332, 1335, 1339, 1343, 1345, 1348, 1350, 1353, 1356, 1360, 1362, 1366, 1368, 1372, 1375, 1378, 1381, 1385, 1387, 1389, 1391, 1395, 1397, 1400, 1402, 1405, 1407, 1411, 1416, 1418, 1420, 1422, 1426, 1428, 1430, 1432, 1434, 1436, 1438, 1442, 1447, 1451, 1453, 1456, 1458, 1461, 1464, 1466, 1468, 1471, 1473, 1476, 1480, 1482, 1485, 1491, 1499, 1505, 1511, 1519, 1526, 1534, 1539, 1545, 1550, 1554, 1557, 1560, 1563, 1567, 1569, 1575, 1580, 1586, 1591, 1596, 1600, 1605, 1609, 1613, 1616, 1619, 1622, 1625, 1628, 1631, 1634, 1637, 1640, 1644, 1646, 1648, 1652, 1655, 1657, 1659, 1662, 1665, 1667, 1670, 1672, 1674, 1677, 1679
87 static const yytype_int16 yyrhs[] =
89 267, 0, -1, 155, 120, -1, 155, 121, -1, 155, 1, -1, 150, -1, 155, 155, -1, 28, -1, 149, -1, 149, 121, 208, 122, -1, 149, 121, 208, 11, -1, 185, 227, -1, 227, -1, 185, 123, 124, -1, 125, 185, 123, 124, -1, 78, 185, 227, -1, 78, 227, -1, 3, -1, 157, -1, 123, 179, 124, -1, 155, -1, 257, -1, 4, -1, 118, -1, 254, -1, 126, 254, -1, 126, 254, 127, 254, -1, 123, 124, -1, 71, 185, 224, 128, 180, 129, -1, 71, 185, 128, 180, 129, -1, 102, 185, 224, 128, 180, 129, -1, 102, 185, 128, 180, 129, -1, 72, 180, 188, 224, 128, 180, 129, -1, 72, 180, 188, 128, 180, 129, -1, 103, 180, 188, 224, 128, 180, 129, -1, 103, 180, 188, 128, 180, 129, -1, 1, -1, 156, -1, 158, 128, 179, 129, -1, 158, 123, 124, -1, 158, 123, 160, 124, -1, 158, 127, 155, -1, 158, 155, -1, 158, 7, 155, -1, 158, 8, -1, 158, 9, -1, 258, -1, 177, -1, 159, -1, 160, 130, 177, -1, 160, 130, 159, -1, 8, 162, -1, 9, 162, -1, 163, 164, -1, 6, 162, -1, 6, 123, 239, 124, -1, 109, 162, -1, 109, 123, 239, 124, -1, 161, -1, 158, -1, 131, -1, 120, -1, 132, -1, 133, -1, 125, -1, 134, -1, 73, -1, 162, -1, 123, 238, 124, 164, -1, 164, -1, 165, 120, 164, -1, 165, 135, 164, -1, 165, 136, 164, -1, 165, -1, 166, 132, 165, -1, 166, 133, 165, -1, 166, -1, 167, 10, 166, -1, 167, 11, 166, -1, 169, 121, -1, 167, -1, 168, 167, -1, 169, 122, 167, -1, 169, 12, 167, -1, 169, 13, 167, -1, 169, -1, 170, 14, 169, -1, 170, 15, 169, -1, 170, -1, 171, 131, 170, -1, 171, -1, 172, 137, 171, -1, 172, -1, 173, 138, 172, -1, 173, -1, 174, 16, 173, -1, 174, -1, 175, 17, 174, -1, 175, -1, 175, 139, 179, 140, 176, -1, 176, -1, 162, 178, 177, -1, 162, 178, 159, -1, 141, -1, 18, -1, 19, -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, 177, -1, 179, 130, 177, -1, 176, -1, 184, 142, -1, 184, 189, 142, -1, 255, 142, -1, 77, 155, 141, 180, 142, -1, 199, -1, 182, 199, -1, 200, -1, 182, 200, -1, 218, -1, 182, 218, -1, 202, -1, 182, 202, -1, 199, -1, 183, 199, -1, 200, -1, 183, 200, -1, 146, -1, 183, 146, -1, 218, -1, 183, 218, -1, 202, -1, 183, 202, -1, 191, -1, 184, 191, -1, 199, -1, 184, 199, -1, 200, -1, 184, 200, -1, 218, -1, 184, 218, -1, 202, -1, 184, 202, -1, 191, -1, 185, 191, -1, 199, -1, 185, 199, -1, 200, -1, 185, 200, -1, 146, -1, 185, 146, -1, 202, -1, 185, 202, -1, 218, -1, 185, 218, -1, 185, -1, 147, -1, 191, -1, 187, 191, -1, 199, -1, 187, 199, -1, 201, -1, 187, 201, -1, 155, -1, 187, 155, -1, 155, 121, 208, 122, -1, 187, 155, 121, 208, 122, -1, 191, -1, 188, 191, -1, 199, -1, 188, 199, -1, 201, -1, 188, 201, -1, 202, -1, 188, 202, -1, 218, -1, 188, 218, -1, 155, -1, 188, 155, -1, 155, 121, 208, 122, -1, 188, 155, 121, 208, 122, -1, 190, -1, 189, 130, 190, -1, 225, -1, 225, 141, 240, -1, 29, -1, 30, -1, 31, -1, 32, -1, 33, -1, 117, -1, 74, -1, 75, -1, 197, -1, 79, -1, 110, -1, 111, -1, 3, -1, 28, -1, 75, -1, 74, -1, 44, -1, 194, -1, 194, 123, 179, 124, -1, 195, -1, 196, 195, -1, 196, 130, 195, -1, 193, 123, 123, 196, 124, 124, -1, 193, 123, 123, 124, 124, -1, 192, -1, 44, -1, 45, -1, 198, -1, 46, -1, 34, -1, 35, -1, 36, -1, 37, -1, 38, -1, 47, -1, 39, -1, 42, -1, 43, -1, 40, -1, 41, -1, 85, -1, 113, -1, 112, -1, 203, -1, 217, -1, 148, -1, 87, 123, 177, 124, -1, 100, 123, 148, 124, -1, 100, 123, 155, 124, -1, 66, -1, 82, -1, 83, -1, 46, -1, 34, -1, 35, -1, 36, -1, 37, -1, 38, -1, 47, -1, 39, -1, 42, -1, 43, -1, 40, -1, 41, -1, 85, -1, 113, -1, 112, -1, 203, -1, 217, -1, 150, -1, 87, 123, 177, 124, -1, 100, 123, 148, 124, -1, 100, 123, 155, 124, -1, 66, -1, 209, 155, 143, 210, 144, -1, 209, 143, 210, 144, -1, 209, 155, 143, 144, -1, 209, 143, 144, -1, 209, 149, 143, 210, 144, -1, 209, 192, 155, 143, 210, 144, -1, 209, 192, 143, 210, 144, -1, 209, 192, 155, 143, 144, -1, 209, 192, 143, 144, -1, 209, 192, 150, 143, 210, 144, -1, 209, 155, -1, 209, 150, -1, 209, 192, 155, -1, 209, 192, 150, -1, 185, -1, 185, 223, -1, 185, -1, 185, 223, -1, 167, -1, 206, -1, 205, -1, 155, 141, 206, -1, 155, 141, 205, -1, 204, 141, 206, -1, 204, 141, 205, -1, 207, -1, 208, 130, 207, -1, 48, -1, 49, -1, 214, -1, 210, 214, -1, 158, 141, 241, -1, 211, -1, 212, 130, 211, -1, 68, 187, 155, 143, 69, 249, 70, 249, 144, -1, 68, 187, 155, 143, 70, 249, 69, 249, 144, -1, 68, 187, 155, 143, 69, 249, 144, -1, 68, 187, 155, 143, 70, 249, 144, -1, 68, 187, 155, 143, 144, -1, 68, 187, 223, 155, 143, 69, 249, 70, 249, 144, -1, 68, 187, 223, 155, 143, 70, 249, 69, 249, 144, -1, 68, 187, 223, 155, 143, 69, 249, 144, -1, 68, 187, 223, 155, 143, 70, 249, 144, -1, 68, 187, 223, 155, 143, 144, -1, 68, 187, 143, 69, 249, 70, 249, 144, -1, 68, 187, 143, 70, 249, 69, 249, 144, -1, 68, 187, 143, 69, 249, 144, -1, 68, 187, 143, 70, 249, 144, -1, 68, 187, 143, 144, -1, 68, 187, 223, 143, 69, 249, 70, 249, 144, -1, 68, 187, 223, 143, 70, 249, 69, 249, 144, -1, 68, 187, 223, 143, 69, 249, 144, -1, 68, 187, 223, 143, 70, 249, 144, -1, 68, 187, 223, 143, 144, -1, 185, 215, 142, -1, 185, 142, -1, 257, 142, -1, 256, 142, -1, 259, -1, 212, 142, -1, 213, -1, 142, -1, 216, -1, 215, 130, 216, -1, 231, -1, 231, 197, -1, 140, 180, -1, 231, 140, 180, -1, 231, 140, 180, 140, 180, -1, 50, 155, -1, 50, 150, -1, 50, 143, 219, 144, -1, 50, 155, 143, 219, 144, -1, 50, 155, 143, 219, 142, 210, 144, -1, 50, 150, 143, 219, 142, 210, 144, -1, 50, 150, 143, 219, 144, -1, 220, -1, 219, 130, 220, -1, 155, -1, 155, 141, 180, -1, 123, 223, 124, -1, 128, 129, -1, 128, 180, 129, -1, 128, 148, 129, -1, 221, 128, 129, -1, 221, 128, 180, 129, -1, 221, 128, 148, 129, -1, 123, 124, -1, 123, 234, 124, -1, 221, 123, 124, -1, 221, 123, 234, 124, -1, 123, 224, 124, -1, 123, 124, -1, 123, 234, 124, -1, 222, 123, 124, -1, 222, 123, 234, 124, -1, 233, -1, 221, -1, 233, 221, -1, 192, 233, -1, 192, 221, -1, 192, 233, 221, -1, 233, -1, 222, -1, 233, 222, -1, 192, 233, -1, 192, 222, -1, 192, 233, 222, -1, 230, -1, 233, 230, -1, 192, 233, 230, -1, 225, 192, -1, 155, -1, 123, 225, 124, -1, 226, 128, 180, 129, -1, 226, 128, 129, -1, 226, 128, 148, 129, -1, 229, -1, 233, 229, -1, 192, 229, -1, 192, 233, 229, -1, 233, 192, 229, -1, 226, 123, -1, 228, 234, 124, -1, 228, 237, 124, -1, 228, 124, -1, 229, -1, 226, -1, 192, 229, -1, 192, 226, -1, 226, -1, 233, 226, -1, 192, 226, -1, 192, 233, 226, -1, 233, 192, 226, -1, 199, -1, 232, 199, -1, 120, -1, 120, 232, -1, 120, 233, -1, 120, 232, 233, -1, 235, -1, 235, 130, 51, -1, 236, -1, 235, 130, 236, -1, 185, 225, -1, 185, 223, -1, 185, 131, -1, 185, 131, 225, -1, 186, -1, 65, -1, 155, -1, 237, 130, 155, -1, 182, -1, 182, 223, -1, 183, -1, 183, 223, -1, 177, -1, 143, 242, 144, -1, 143, 242, 130, 144, -1, 176, -1, 159, -1, 240, -1, 242, 130, 240, -1, 244, -1, 249, -1, 250, -1, 251, -1, 252, -1, 253, -1, 155, 140, 243, -1, 52, 180, 140, 243, -1, 53, 140, 243, -1, 181, -1, 245, 181, -1, 243, -1, 246, 243, -1, 246, 181, -1, 246, -1, 245, -1, 245, 246, -1, 143, -1, 143, 144, -1, 248, 247, 144, -1, 142, -1, 179, 142, -1, 54, 123, 179, 124, 243, -1, 54, 123, 179, 124, 243, 64, 243, -1, 55, 123, 179, 124, 243, -1, 56, 123, 179, 124, 243, -1, 57, 243, 56, 123, 179, 124, 142, -1, 58, 123, 250, 250, 124, 243, -1, 58, 123, 250, 250, 179, 124, 243, -1, 56, 123, 124, 243, -1, 58, 123, 250, 124, 243, -1, 58, 123, 124, 243, -1, 59, 155, 142, -1, 60, 142, -1, 61, 142, -1, 62, 142, -1, 62, 179, 142, -1, 5, -1, 184, 155, 143, 266, 144, -1, 184, 155, 143, 144, -1, 185, 155, 143, 266, 144, -1, 185, 155, 143, 144, -1, 148, 143, 266, 144, -1, 148, 143, 144, -1, 155, 143, 266, 144, -1, 155, 143, 144, -1, 143, 266, 144, -1, 143, 144, -1, 151, 249, -1, 154, 249, -1, 154, 142, -1, 152, 249, -1, 153, 249, -1, 184, 227, -1, 184, 231, -1, 260, 249, -1, 158, 141, 241, -1, 241, -1, 262, -1, 263, 130, 262, -1, 263, 142, -1, 264, -1, 261, -1, 265, 264, -1, 265, 261, -1, 142, -1, 265, 142, -1, 265, -1, 263, -1, 265, 263, -1, 236, -1, 236, 140, 180, -1
92 static const yytype_uint16 yyrline[] =
94 0, 231, 231, 249, 273, 313, 314, 341, 345, 346, 347, 364, 366, 371, 376, 381, 383, 388, 393, 394, 399, 401, 403, 405, 406, 408, 409, 410, 413, 414, 415, 416, 417, 418, 419, 420, 421, 425, 426, 427, 428, 429, 430, 443, 444, 445, 449, 478, 479, 480, 481, 485, 486, 487, 489, 490, 492, 493, 497, 498, 507, 508, 509, 510, 511, 512, 513, 517, 518, 522, 523, 524, 525, 529, 530, 531, 535, 536, 537, 541, 549, 550, 551, 552, 553, 557, 558, 559, 563, 564, 568, 569, 573, 574, 578, 579, 583, 584, 588, 589, 593, 594, 595, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 613, 614, 618, 622, 623, 624, 625, 629, 630, 631, 632, 633, 634, 635, 636, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 681, 682, 686, 687, 688, 689, 690, 691, 692, 693, 694, 702, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 731, 740, 741, 745, 746, 750, 751, 752, 753, 754, 755, 759, 760, 761, 765, 766, 767, 772, 773, 774, 775, 776, 780, 781, 785, 786, 787, 791, 792, 796, 800, 801, 802, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 860, 861, 862, 863, 864, 867, 868, 869, 870, 871, 876, 877, 880, 882, 887, 888, 893, 894, 905, 909, 911, 912, 914, 915, 939, 954, 955, 959, 960, 964, 965, 969, 973, 974, 978, 980, 982, 984, 986, 989, 991, 993, 995, 997, 1000, 1002, 1004, 1006, 1008, 1011, 1013, 1015, 1017, 1019, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1035, 1037, 1042, 1044, 1046, 1048, 1050, 1055, 1056, 1060, 1062, 1063, 1064, 1065, 1069, 1071, 1076, 1078, 1084, 1086, 1088, 1090, 1092, 1094, 1096, 1098, 1100, 1102, 1104, 1109, 1111, 1113, 1115, 1117, 1122, 1123, 1124, 1125, 1126, 1127, 1131, 1132, 1133, 1134, 1135, 1136, 1182, 1183, 1185, 1187, 1192, 1194, 1196, 1198, 1200, 1205, 1206, 1209, 1211, 1213, 1219, 1223, 1225, 1227, 1232, 1233, 1234, 1236, 1241, 1242, 1243, 1244, 1245, 1249, 1250, 1254, 1255, 1256, 1257, 1261, 1262, 1266, 1267, 1271, 1272, 1273, 1274, 1275, 1286, 1311, 1312, 1316, 1317, 1321, 1322, 1326, 1328, 1330, 1346, 1348, 1370, 1372, 1377, 1378, 1379, 1380, 1381, 1382, 1386, 1388, 1390, 1395, 1396, 1400, 1401, 1404, 1408, 1409, 1410, 1414, 1418, 1426, 1431, 1432, 1436, 1437, 1438, 1442, 1443, 1444, 1445, 1447, 1448, 1449, 1453, 1454, 1455, 1456, 1457, 1461, 1465, 1467, 1472, 1474, 1499, 1501, 1503, 1505, 1510, 1512, 1516, 1518, 1520, 1522, 1524, 1530, 1532, 1537, 1542, 1543, 1547, 1549, 1554, 1559, 1560, 1561, 1562, 1563, 1564, 1568, 1569, 1570, 1574, 1575
97 static const char * const yytname[] =
99 "$end", "error", "$undefined", "IDENTIFIER", "CONSTANT", "STRING_LITERAL", "SIZEOF", "PTR_OP", "INC_OP", "DEC_OP", "LEFT_OP", "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP", "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "ADD_ASSIGN", "SUB_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN", "TYPE_NAME", "TYPEDEF", "EXTERN", "STATIC", "AUTO", "REGISTER", "CHAR", "SHORT", "INT", "UINT", "INT64", "LONG", "SIGNED", "UNSIGNED", "FLOAT", "DOUBLE", "CONST", "VOLATILE", "VOID", "VALIST", "STRUCT", "UNION", "ENUM", "ELLIPSIS", "CASE", "DEFAULT", "IF", "SWITCH", "WHILE", "DO", "FOR", "GOTO", "CONTINUE", "BREAK", "RETURN", "IFX", "ELSE", "CLASS", "THISCLASS", "CLASS_NAME", "PROPERTY", "SETPROP", "GETPROP", "NEWOP", "RENEW", "DELETE", "EXT_DECL", "EXT_STORAGE", "IMPORT", "DEFINE", "VIRTUAL", "ATTRIB", "PUBLIC", "PRIVATE", "TYPED_OBJECT", "ANY_OBJECT", "_INCREF", "EXTENSION", "ASM", "TYPEOF", "WATCH", "STOPWATCHING", "FIREWATCHERS", "WATCHABLE", "CLASS_DESIGNER", "CLASS_NO_EXPANSION", "CLASS_FIXED", "ISPROPSET", "CLASS_DEFAULT_PROPERTY", "PROPERTY_CATEGORY", "CLASS_DATA", "CLASS_PROPERTY", "SUBCLASS", "NAMESPACE", "NEW0OP", "RENEW0", "VAARG", "DBTABLE", "DBFIELD", "DBINDEX", "DATABASE_OPEN", "ALIGNOF", "ATTRIB_DEP", "__ATTRIB", "BOOL", "_BOOL", "_COMPLEX", "_IMAGINARY", "RESTRICT", "THREAD", "WIDE_STRING_LITERAL", "BUILTIN_OFFSETOF", "'*'", "'<'", "'>'", "'('", "')'", "'~'", "'$'", "'.'", "'['", "']'", "','", "'&'", "'+'", "'-'", "'!'", "'/'", "'%'", "'^'", "'|'", "'?'", "':'", "'='", "';'", "'{'", "'}'", "$accept", "guess_type", "real_guess_type", "type", "base_strict_type", "strict_type", "class_function_definition_start", "constructor_function_definition_start", "destructor_function_definition_start", "virtual_class_function_definition_start", "identifier", "primary_expression", "simple_primary_expression", "postfix_expression", "anon_instantiation_expression", "argument_expression_list", "common_unary_expression", "unary_expression", "unary_operator", "cast_expression", "multiplicative_expression", "additive_expression", "shift_expression", "relational_expression_smaller_than", "relational_expression", "equality_expression", "and_expression", "exclusive_or_expression", "inclusive_or_expression", "logical_and_expression", "logical_or_expression", "conditional_expression", "assignment_expression", "assignment_operator", "expression", "constant_expression", "declaration", "specifier_qualifier_list", "guess_specifier_qualifier_list", "declaration_specifiers", "guess_declaration_specifiers", "real_guess_declaration_specifiers", "property_specifiers", "renew_specifiers", "init_declarator_list", "init_declarator", "storage_class_specifier", "ext_decl", "_attrib", "attribute_word", "attribute", "attribs_list", "attrib", "ext_storage", "type_qualifier", "type_specifier", "strict_type_specifier", "struct_or_union_specifier_compound", "struct_or_union_specifier_nocompound", "template_datatype", "template_type_argument", "template_expression_argument", "template_argument", "template_arguments_list", "struct_or_union", "struct_declaration_list", "default_property", "default_property_list", "property", "struct_declaration", "struct_declarator_list", "struct_declarator", "enum_specifier_nocompound", "enum_specifier_compound", "enumerator_list", "enumerator", "direct_abstract_declarator", "direct_abstract_declarator_noarray", "abstract_declarator", "abstract_declarator_noarray", "declarator", "direct_declarator_nofunction", "declarator_function", "direct_declarator_function_start", "direct_declarator_function", "direct_declarator", "declarator_nofunction", "type_qualifier_list", "pointer", "parameter_type_list", "parameter_list", "parameter_declaration", "identifier_list", "type_name", "guess_type_name", "initializer", "initializer_condition", "initializer_list", "statement", "labeled_statement", "declaration_list", "statement_list", "compound_inside", "compound_start", "compound_statement", "expression_statement", "selection_statement", "iteration_statement", "jump_statement", "string_literal", "instantiation_named", "guess_instantiation_named", "instantiation_unnamed", "instantiation_anon", "class_function_definition", "instance_class_function_definition_start", "instance_class_function_definition", "data_member_initialization", "data_member_initialization_list", "data_member_initialization_list_coloned", "members_initialization_list_coloned", "members_initialization_list", "type_unit", 0
102 static const yytype_uint16 yyr1[] =
104 0, 145, 146, 146, 147, 148, 148, 149, 150, 150, 150, 151, 151, 152, 153, 154, 154, 155, 156, 156, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 158, 158, 158, 158, 158, 158, 158, 158, 158, 159, 160, 160, 160, 160, 161, 161, 161, 161, 161, 161, 161, 162, 162, 163, 163, 163, 163, 163, 163, 163, 164, 164, 165, 165, 165, 165, 166, 166, 166, 167, 167, 167, 168, 169, 169, 169, 169, 169, 170, 170, 170, 171, 171, 172, 172, 173, 173, 174, 174, 175, 175, 176, 176, 177, 177, 177, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 179, 179, 180, 181, 181, 181, 181, 182, 182, 182, 182, 182, 182, 182, 182, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 186, 186, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 189, 189, 190, 190, 191, 191, 191, 191, 191, 191, 192, 192, 192, 193, 193, 193, 194, 194, 194, 194, 194, 195, 195, 196, 196, 196, 197, 197, 198, 199, 199, 199, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 203, 203, 203, 203, 204, 204, 205, 205, 206, 207, 207, 207, 207, 207, 207, 208, 208, 209, 209, 210, 210, 211, 212, 212, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 214, 214, 214, 214, 214, 214, 214, 214, 215, 215, 216, 216, 216, 216, 216, 217, 217, 218, 218, 218, 218, 218, 219, 219, 220, 220, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 222, 222, 222, 222, 222, 223, 223, 223, 223, 223, 223, 224, 224, 224, 224, 224, 224, 225, 225, 225, 225, 226, 226, 226, 226, 226, 227, 227, 227, 227, 227, 228, 229, 229, 229, 230, 230, 230, 230, 231, 231, 231, 231, 231, 232, 232, 233, 233, 233, 233, 234, 234, 235, 235, 236, 236, 236, 236, 236, 236, 237, 237, 238, 238, 239, 239, 240, 240, 240, 241, 241, 242, 242, 243, 243, 243, 243, 243, 243, 244, 244, 244, 245, 245, 246, 246, 246, 247, 247, 247, 248, 249, 249, 250, 250, 251, 251, 251, 252, 252, 252, 252, 252, 252, 252, 253, 253, 253, 253, 253, 254, 255, 255, 256, 256, 257, 257, 257, 257, 258, 258, 259, 259, 259, 259, 259, 260, 260, 261, 262, 262, 263, 263, 264, 265, 265, 265, 265, 265, 265, 266, 266, 266, 267, 267
107 static const yytype_uint8 yyr2[] =
109 0, 2, 2, 2, 2, 1, 2, 1, 1, 4, 4, 2, 1, 3, 4, 3, 2, 1, 1, 3, 1, 1, 1, 1, 1, 2, 4, 2, 6, 5, 6, 5, 7, 6, 7, 6, 1, 1, 4, 3, 4, 3, 2, 3, 2, 2, 1, 1, 1, 3, 3, 2, 2, 2, 2, 4, 2, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 3, 3, 3, 1, 3, 3, 1, 3, 3, 2, 1, 2, 3, 3, 3, 1, 3, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 5, 1, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 2, 3, 2, 5, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 4, 5, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 4, 5, 1, 3, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 2, 3, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 1, 5, 4, 4, 3, 5, 6, 5, 5, 4, 6, 2, 2, 3, 3, 1, 2, 1, 2, 1, 1, 1, 3, 3, 3, 3, 1, 3, 1, 1, 1, 2, 3, 1, 3, 9, 9, 7, 7, 5, 10, 10, 8, 8, 6, 8, 8, 6, 6, 4, 9, 9, 7, 7, 5, 3, 2, 2, 2, 1, 2, 1, 1, 1, 3, 1, 2, 2, 3, 5, 2, 2, 4, 5, 7, 7, 5, 1, 3, 1, 3, 3, 2, 3, 3, 3, 4, 4, 2, 3, 3, 4, 3, 2, 3, 3, 4, 1, 1, 2, 2, 2, 3, 1, 1, 2, 2, 2, 3, 1, 2, 3, 2, 1, 3, 4, 3, 4, 1, 2, 2, 3, 3, 2, 3, 3, 2, 1, 1, 2, 2, 1, 2, 2, 3, 3, 1, 2, 1, 2, 2, 3, 1, 3, 1, 3, 2, 2, 2, 3, 1, 1, 1, 3, 1, 2, 1, 2, 1, 3, 4, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 3, 4, 3, 1, 2, 1, 2, 2, 1, 1, 2, 1, 2, 3, 1, 2, 5, 7, 5, 5, 7, 6, 7, 4, 5, 4, 3, 2, 2, 2, 3, 1, 5, 4, 5, 4, 4, 3, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 1, 1, 3, 2, 1, 1, 2, 2, 1, 2, 1, 1, 2, 1, 3
112 static const yytype_uint16 yydefact[] =
114 0, 17, 7, 191, 192, 193, 194, 195, 220, 221, 222, 223, 224, 226, 229, 230, 227, 228, 216, 217, 219, 225, 292, 293, 0, 415, 240, 197, 198, 200, 241, 242, 231, 0, 0, 201, 202, 233, 232, 196, 155, 162, 236, 8, 5, 0, 161, 414, 149, 215, 0, 199, 218, 151, 153, 157, 234, 0, 235, 159, 499, 0, 0, 335, 334, 0, 0, 0, 4, 2, 3, 6, 402, 0, 0, 412, 156, 377, 150, 215, 152, 154, 158, 160, 362, 411, 410, 392, 0, 391, 373, 361, 0, 0, 8, 276, 275, 0, 0, 1, 343, 0, 341, 0, 0, 36, 22, 466, 0, 0, 0, 0, 0, 66, 0, 0, 0, 23, 61, 0, 64, 0, 60, 62, 63, 65, 0, 20, 37, 18, 59, 58, 67, 0, 69, 73, 76, 80, 0, 85, 88, 90, 92, 94, 96, 98, 100, 0, 24, 21, 0, 0, 236, 20, 67, 283, 281, 0, 285, 284, 290, 0, 400, 403, 404, 352, 0, 0, 0, 0, 406, 408, 346, 0, 116, 0, 0, 377, 0, 413, 0, 365, 394, 393, 364, 0, 0, 376, 387, 0, 390, 0, 0, 0, 0, 363, 374, 0, 0, 0, 0, 0, 326, 268, 0, 0, 0, 0, 20, 0, 0, 215, 0, 297, 0, 325, 294, 0, 12, 382, 0, 0, 21, 323, 0, 0, 0, 278, 277, 500, 0, 0, 336, 0, 0, 0, 54, 0, 51, 52, 0, 0, 0, 0, 0, 0, 56, 27, 114, 0, 418, 121, 123, 127, 125, 0, 25, 0, 0, 0, 44, 45, 0, 0, 0, 42, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 103, 0, 53, 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 237, 238, 239, 0, 0, 215, 282, 361, 0, 10, 9, 0, 401, 405, 345, 378, 353, 0, 348, 347, 0, 366, 375, 354, 0, 349, 0, 0, 380, 0, 0, 388, 389, 0, 203, 204, 207, 206, 205, 0, 208, 210, 0, 244, 245, 246, 247, 248, 250, 253, 254, 251, 252, 243, 249, 0, 264, 255, 0, 0, 257, 256, 260, 169, 0, 163, 165, 167, 258, 0, 259, 0, 16, 61, 0, 20, 0, 446, 0, 477, 480, 481, 479, 478, 0, 0, 0, 320, 377, 215, 0, 327, 395, 11, 329, 0, 384, 0, 266, 295, 0, 324, 0, 383, 322, 321, 0, 267, 0, 273, 0, 0, 0, 344, 342, 0, 340, 0, 337, 133, 20, 420, 129, 131, 137, 135, 0, 0, 0, 215, 368, 0, 367, 183, 0, 173, 175, 177, 179, 181, 0, 0, 0, 0, 19, 0, 0, 122, 124, 128, 126, 419, 0, 0, 494, 0, 472, 59, 426, 425, 0, 139, 141, 143, 147, 145, 486, 46, 0, 491, 487, 497, 490, 0, 0, 474, 0, 43, 39, 48, 0, 47, 41, 0, 102, 101, 70, 71, 72, 74, 75, 77, 78, 83, 84, 82, 86, 87, 89, 91, 93, 95, 97, 0, 281, 287, 286, 364, 289, 288, 291, 407, 409, 355, 351, 350, 381, 379, 417, 214, 0, 0, 0, 211, 335, 334, 0, 0, 0, 0, 170, 164, 166, 168, 0, 275, 0, 15, 215, 0, 447, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 449, 20, 0, 438, 0, 440, 429, 0, 0, 0, 430, 431, 432, 433, 434, 0, 296, 13, 331, 0, 397, 0, 0, 319, 0, 330, 0, 396, 385, 298, 386, 269, 265, 271, 0, 272, 0, 0, 0, 134, 130, 132, 138, 136, 421, 55, 357, 0, 0, 0, 371, 370, 0, 0, 369, 0, 0, 184, 174, 176, 178, 180, 182, 0, 0, 0, 0, 0, 57, 115, 68, 26, 476, 0, 0, 377, 140, 142, 144, 148, 146, 482, 483, 484, 0, 489, 495, 493, 498, 492, 471, 473, 40, 0, 38, 0, 282, 0, 213, 212, 0, 0, 0, 0, 0, 0, 313, 0, 0, 0, 0, 278, 277, 14, 0, 0, 0, 0, 0, 0, 0, 0, 462, 463, 464, 0, 0, 0, 450, 117, 377, 0, 187, 189, 439, 0, 442, 441, 448, 119, 470, 0, 398, 0, 328, 395, 0, 332, 399, 274, 270, 339, 338, 356, 358, 29, 372, 359, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 475, 485, 488, 50, 49, 99, 209, 261, 262, 263, 171, 0, 0, 0, 0, 0, 303, 0, 0, 318, 0, 0, 437, 0, 0, 0, 0, 0, 0, 0, 461, 465, 0, 435, 0, 0, 118, 0, 469, 397, 0, 0, 396, 0, 360, 28, 185, 33, 0, 0, 30, 35, 0, 0, 311, 0, 312, 172, 0, 0, 0, 0, 0, 0, 308, 436, 0, 0, 458, 0, 0, 460, 0, 0, 0, 468, 0, 188, 0, 422, 190, 398, 399, 333, 186, 32, 34, 0, 0, 0, 301, 0, 302, 0, 316, 0, 317, 0, 0, 451, 453, 454, 0, 459, 0, 0, 120, 467, 427, 0, 309, 310, 0, 0, 0, 0, 0, 306, 0, 307, 0, 0, 456, 0, 0, 423, 299, 300, 314, 315, 0, 0, 452, 455, 457, 424, 428, 304, 305
117 static const yytype_int16 yydefgoto[] =
119 -1, 40, 41, 126, 43, 44, 204, 205, 206, 207, 127, 128, 129, 130, 457, 479, 131, 154, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 248, 277, 554, 175, 688, 250, 420, 459, 210, 47, 363, 433, 683, 684, 48, 49, 50, 339, 340, 341, 51, 52, 53, 54, 436, 55, 56, 157, 158, 159, 160, 161, 57, 212, 213, 214, 215, 216, 389, 390, 58, 59, 101, 102, 84, 429, 167, 430, 168, 217, 218, 88, 219, 90, 393, 163, 220, 169, 170, 171, 193, 255, 425, 800, 465, 829, 557, 558, 559, 560, 561, 377, 562, 563, 564, 565, 566, 148, 567, 221, 149, 466, 223, 467, 468, 469, 470, 471, 472, 473, 61
122 static const yytype_int16 yypact[] =
124 8916, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 27, -761, -761, -761, -761, -761, -761, -761, -761, -84, -40, -761, -761, -761, -761, -761, -761, -761, -761, -36, -761, 303, 7335, -761, -761, -761, -14, -761, -761, -761, -761, -761, -761, 563, -761, -761, 24, 129, 122, 75, 119, 7048, 78, 6284, -761, -761, -761, -761, 1002, 7439, 6695, 748, -761, 102, -761, 258, -761, -761, -761, -761, 106, -761, 781, 340, 8340, -761, -761, 654, 199, 3565, -69, -761, 192, 28, 7048, -761, 215, 116, -761, 122, 122, -761, -761, -761, 7088, 7195, 7195, 9006, 7048, -761, 9006, 7048, 7228, -761, -761, 6418, -761, 360, -761, -761, -761, -761, 239, 34, -761, -761, 574, -761, 921, 7048, -761, -66, 406, 531, 7048, 95, 534, 262, 269, 253, 399, 2, -761, 347, -761, -761, 349, 26, 239, 17, -761, 531, 6163, 276, -761, -761, -761, 144, -761, 1002, -761, -761, 773, 351, 660, 364, 302, -761, -761, 152, -761, 310, 748, -761, 131, 781, 609, 106, 340, -761, 654, 8438, 6728, -761, -761, 6835, -761, 218, 375, 164, 19, 106, -761, 15, 9096, 8634, 6639, 9006, -761, -761, 309, 309, 309, 412, 137, 475, 5933, 131, 3691, -761, -32, -761, -761, 340, -761, -761, 609, 322, 371, -761, 5538, 3817, 3943, 359, 382, -761, 7048, 122, -761, -62, 169, 6418, -761, 6868, -761, -761, 102, 7641, 9186, 7742, 9186, 6418, -761, -761, -761, 196, 8141, -761, -761, -761, -761, 405, 407, 2711, 2855, 122, -761, -761, 5255, 122, 7048, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 5297, -761, 7048, 7048, 7048, 7048, 7048, 7048, 7048, 531, 7048, 7048, -761, 7048, 7048, 7048, 7048, 7048, 7048, 7048, 7048, 7048, -761, -761, -761, 6284, 7540, 320, 391, 362, 6284, -761, -761, 6284, -761, -761, -761, -761, -761, 8826, -761, -761, 609, 106, -761, -761, 419, -761, 233, 417, -761, 237, 423, -761, -761, 122, -761, -761, -761, -761, -761, 426, 413, -761, 325, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 78, -761, -761, 434, 444, -761, -761, -761, 451, 5817, -761, -761, -761, -761, 922, -761, 8634, -761, 1002, 6552, 38, 8730, 456, 5077, -761, -761, -761, -761, -761, 5297, 706, 7048, -761, 158, 131, 123, -761, 340, -761, -39, 609, -761, 19, -761, -761, 933, -761, 19, -761, -761, -761, 4069, -761, 4195, -761, 4321, 5538, 4447, -761, -761, 5538, -761, 5538, -761, -761, 137, 8141, -761, -761, -761, -761, 452, 8242, 7048, 45, 483, 480, 486, 489, 7944, -761, -761, -761, -761, -761, 7048, 490, 8045, 493, -761, 7048, 122, -761, -761, -761, -761, -761, 7048, 360, -761, 2999, -761, 562, -761, -761, 8634, -761, -761, -761, -761, -761, -761, -761, 309, -761, -761, 203, -761, 3143, 470, -761, 476, -761, -761, -761, 327, -761, -761, 432, -761, -761, -761, -761, -761, -66, -66, 406, 406, 531, 531, 531, 95, 95, 534, 262, 269, 253, 399, 307, 7843, -761, -761, 362, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 7048, 495, 315, -761, -761, -761, 7048, 78, 6284, -9, -56, -761, -761, -761, 46, -761, 78, -761, 131, 498, -761, 7048, 484, 500, 503, 506, 5220, 507, 122, 492, 494, 5701, 122, -761, 39, 230, -761, 6048, -761, -761, 2279, 2423, 497, -761, -761, -761, -761, -761, 501, -761, -761, -761, 3287, 340, 19, 722, -761, 7048, -761, 19, 340, -761, -761, -761, -761, -761, -761, 4573, -761, 4699, 4825, 4951, -761, -761, -761, -761, -761, -761, -761, -761, 511, 522, 518, 483, 486, 8536, 7048, 483, 6284, 7048, 527, -761, -761, -761, -761, -761, 523, 521, 7048, 7048, 525, -761, -761, -761, -761, -761, 512, 5297, 122, -761, -761, -761, -761, -761, -761, -761, -761, 5297, -761, -761, -761, 203, -761, -761, -761, -761, 5297, -761, 7048, -761, 342, -761, -761, 539, 542, 33, 170, 309, 309, -761, 6284, 227, 254, 526, -761, -761, -761, 528, 5220, 7048, 7048, 6908, 614, 5594, 529, -761, -761, -761, 283, 536, 5220, -761, -761, 60, 300, -761, 570, -761, 2567, -761, -761, -761, -761, -761, 547, 340, 131, -761, 544, 609, 535, 340, -761, -761, -761, -761, -761, -761, -761, 483, -761, 554, 564, 324, 571, 6284, 7048, -761, 575, 576, 7048, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 8, -11, 328, 309, 309, -761, 309, 309, -761, 277, 5220, -761, 356, 363, 5220, 368, 592, 5220, 5667, -761, -761, 7048, -761, 3431, 748, -761, 5404, -761, 544, 19, 19, 544, 7048, -761, -761, -761, -761, 339, 587, -761, -761, 589, 309, -761, 309, -761, -761, 49, 23, 93, 62, 309, 309, -761, -761, 5220, 5220, -761, 5220, 7048, -761, 5220, 7015, 557, -761, 577, -761, 5404, -761, -761, 544, 544, -761, -761, -761, -761, 578, 579, 309, -761, 309, -761, 309, -761, 309, -761, 125, 161, 672, -761, -761, 387, -761, 5220, 392, -761, -761, -761, 278, -761, -761, 580, 598, 599, 600, 309, -761, 309, -761, 5220, 604, -761, 5220, 1997, -761, -761, -761, -761, -761, 606, 610, -761, -761, -761, -761, -761, -761, -761
127 static const yytype_int16 yypgoto[] =
129 -761, 193, -761, 664, 696, 29, -761, -761, -761, -761, 0, -761, -761, 1461, -260, -761, -761, 167, -761, -107, 297, 308, -20, -761, 293, 463, 464, 468, 472, 469, -761, 1542, -49, -761, 260, -87, -363, -761, -761, -372, 48, -761, -761, 546, -761, 14, 1452, 927, -761, -761, -307, -761, 379, -761, 1302, 1532, -177, 1156, -148, -761, 213, 221, 478, -512, -188, -102, 374, -761, -761, 72, -761, 217, -6, 1194, 491, 567, -15, -396, -2, -236, -42, 421, -187, -761, 1083, -64, 334, -761, 1146, -85, -761, 1, -761, -761, 555, -760, -374, -761, 80, -761, -761, 240, -761, -761, 1157, -621, -761, -761, -761, -115, -761, -761, -80, -761, -761, -761, 330, 168, 331, 335, -761, -250, -761
132 static const yytype_int16 yytable[] =
134 45, 60, 478, 192, 86, 556, 256, 440, 475, 568, 368, 229, 371, 222, 555, 655, 147, 483, 333, 297, 1, 366, 1, 392, 64, 242, 278, 196, 244, 1, 1, 1, 602, 179, 522, 606, 1, 1, 828, 65, 29, 1, 1, 334, 85, 71, 77, 155, 46, 1, 367, 749, 67, 63, 279, 2, 2, 96, 775, 335, 656, 657, 100, 1, 181, 659, 151, 153, 231, 280, 281, 35, 36, 166, 224, 177, 195, 71, 773, 177, 414, 1, 415, 66, 856, 67, 95, 660, 191, 336, 337, 177, 811, 208, 367, 712, 367, 228, 399, 326, 323, 576, 329, 100, 100, 1, 2, 287, 288, 92, 400, 240, -377, -377, 240, 156, 196, -377, 286, 809, 321, 46, 405, 407, 409, 1, 227, 71, 793, 99, 265, 815, 222, 776, 1, 658, 46, 69, 70, 338, 1, 298, 176, 412, 222, 222, 222, 733, -377, -377, 301, 71, 774, 71, 305, 308, 240, 729, 302, 241, 258, 1, 243, 813, 98, 72, 71, 812, 426, 320, 62, 226, 485, 486, 487, 368, 177, 258, 177, 679, 177, 258, 258, 536, 177, 45, 532, 556, 556, 661, 599, 71, 369, 810, 177, 836, 686, 615, 362, 77, 374, 240, 768, 754, 625, 619, 816, 708, 71, 265, 387, 177, 208, 480, 651, 367, 289, 290, 103, 68, 177, 1, 69, 70, 208, 208, 208, 361, 484, 185, 838, 100, 132, 46, 186, 419, 369, 814, 369, 76, 71, 240, 432, 240, 432, 419, 231, 370, 450, 375, 445, 72, 721, 574, 176, 321, 612, 69, 70, 476, 232, 1, 104, 481, 612, 575, 309, 492, 493, 837, 494, 361, 633, 361, 310, 236, 238, 239, 69, 70, 258, 317, 155, 246, 398, 367, 132, 155, 331, 181, 155, 195, 730, 367, 332, 257, 734, 735, 570, 231, 310, 571, 419, 45, 68, 839, 1, 419, 586, 588, 153, 416, 589, 417, 590, 556, 45, 511, 333, 177, 443, 693, 197, 737, 738, 222, 444, 222, 333, 222, 222, 222, 517, 636, 222, 225, 222, 623, 69, 70, 601, 600, -416, 334, 622, 637, 782, 783, -416, 76, 503, 46, 616, 334, 524, 503, 230, 369, 156, 335, 444, 533, 513, 529, 46, 107, 515, 132, 534, 335, 77, 736, 680, 374, 71, 240, 257, 553, 72, 249, 257, 73, 257, 523, 177, 723, 74, 71, 177, 336, 337, 295, 361, 293, 177, 621, 177, 95, 739, 336, 337, 177, 132, 76, 132, 208, 294, 208, 844, 208, 208, 208, 132, 444, 208, 296, 208, 307, 596, 71, 240, 784, 845, 69, 70, 751, 45, 369, 418, 132, 755, 132, 316, 609, 76, 369, 76, 444, 418, 318, 72, 609, 756, 303, 132, 71, 766, 647, 74, 520, 777, 644, 376, 666, 310, 521, 265, 645, 310, 627, 249, 804, 361, 188, 403, 132, 726, 87, 189, 310, 361, 299, 444, 300, 46, 313, 652, 398, 1, 398, 786, 398, 259, 260, 261, 303, 444, 787, 315, 699, 74, 320, 789, 444, 87, 249, 87, 249, 444, 330, 182, 648, 410, 240, 796, 249, 222, 155, 222, 222, 222, 841, 87, 404, 685, 504, 843, 444, 711, 710, 507, 713, 444, 505, 482, 411, 654, 153, 508, 451, 717, 718, -280, 662, 452, 664, 519, 177, 282, 283, 132, 284, 285, 512, 132, 553, 514, 673, 291, 292, 518, 678, 516, 71, 381, 376, 682, 525, 502, 553, 553, 646, 444, 76, 663, 1, 1, 526, 76, 259, 260, 261, 527, 177, 177, 156, 597, 1, 177, 488, 489, 259, 260, 261, 495, 496, 208, 155, 208, 208, 208, 2, 490, 491, 233, 234, 724, 87, 262, 182, 539, 87, 263, 264, 45, 87, 604, 153, 605, 426, 607, 132, 1, 591, 642, 182, 383, 620, 617, 650, 643, 87, 665, 668, 667, 671, 669, 71, 769, 670, 672, 391, 772, 249, 674, 705, 675, 27, 28, 155, 689, 690, 29, 691, 27, 28, 706, 707, 714, 29, 716, 715, 46, 719, 71, 156, 720, 1, 398, 153, 398, 398, 398, 727, 42, 794, 728, 553, 741, 740, 747, 750, 189, 35, 36, 763, 803, 752, 764, 553, 35, 36, 71, 27, 28, 262, 132, 553, 29, 263, 264, 758, 132, 765, 155, 177, 76, 262, 177, 826, 767, 263, 264, 626, 770, 771, 93, 156, 799, 1, 42, 757, 132, 685, 153, 790, 805, 132, 806, 35, 36, 827, 830, 831, 846, 1, 132, 132, 27, 28, 150, 152, 176, 29, 27, 28, 840, 42, 173, 29, 87, 553, 847, 848, 849, 553, 853, 742, 553, 799, 857, 1, 42, 94, 858, 177, 497, 152, 498, 753, 177, 177, 156, 499, 35, 36, 501, 689, 500, 797, 35, 36, 577, 581, 68, 42, 1, 73, 42, 649, 27, 28, 74, 152, 314, 29, 553, 553, 509, 553, 441, 696, 553, 634, 87, 799, 27, 28, 413, 687, 442, 29, 639, 640, 722, 87, 0, 641, 0, 572, 677, 0, 132, 0, 0, 579, 35, 36, 0, 0, 42, 785, 27, 28, 553, 788, 72, 29, 791, 176, 569, 0, 35, 36, 132, 132, 132, 132, 0, 132, 553, 0, 72, 553, 0, 176, 132, -377, -377, 42, 325, 0, -377, 328, 132, 27, 28, 0, 35, 36, 29, 0, 385, 42, 0, 42, 819, 820, 72, 821, 0, 176, 823, 0, 42, 0, 152, 0, 0, 0, 391, 0, 0, -377, -377, 0, 0, 0, 152, 152, 152, 35, 36, 69, 70, 0, -377, -377, 0, 152, 0, -377, 0, 0, 842, 42, 0, 42, 132, 152, 0, 0, 132, 0, 42, 132, 132, 0, 0, 0, 852, 152, 152, 854, 132, 1, 0, 0, 743, 744, 746, 0, 0, 0, 105, 0, 1, 106, 107, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 0, 2, 0, 0, 132, 132, 0, 132, 132, 182, 132, 132, 2, 0, 0, 0, 132, 152, 42, 0, 0, 0, 152, 0, 79, 152, 0, 0, 87, 0, 0, 42, 0, 0, 0, 97, 0, 0, 0, 0, 0, 0, 132, 0, 0, 694, 697, 27, 28, 0, 700, 79, 29, 178, 0, 111, 112, 0, 132, 0, 0, 132, 132, 0, 187, 0, 0, 0, 0, 194, 0, 211, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 42, 114, 115, 152, 0, 42, 0, 152, 0, 0, 0, 0, 18, 19, 0, 0, 822, 117, 0, 825, 0, 0, 237, 0, 0, 121, 0, 0, 276, 0, 0, 0, 0, 0, 0, 152, 0, 152, 0, 152, 152, 152, 27, 28, 152, 0, 152, 29, 0, 304, 42, 0, 0, 0, 0, 0, 42, 0, 0, 0, 0, 187, 0, 0, 0, 0, 0, 0, 0, 178, 0, 0, 187, 194, 0, 0, 0, 194, 35, 36, 0, 0, 759, 0, 152, 762, 0, 0, 72, 42, 0, 0, 211, 178, 0, 89, 0, 0, 0, 0, 0, 0, 152, 388, 0, 211, 0, 0, 0, 0, 0, 0, 0, 401, 0, 0, 0, 211, 211, 211, 0, 0, 89, 0, 89, 0, 0, 0, 183, 0, 0, 0, 0, 42, 428, 0, 428, 0, 0, 0, 89, 0, 87, 304, 0, 0, 0, 801, 802, 0, 0, 0, 0, 0, 0, 0, 653, 152, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 91, 42, 180, 0, 152, 152, 184, 0, 0, 0, 0, 304, 0, 0, 0, 0, 152, 0, 0, 0, 0, 83, 0, 0, 0, 0, 0, 194, 0, 0, 0, 152, 0, 152, 152, 152, 0, 0, 0, 0, 89, 0, 183, 0, 89, 0, 0, 0, 89, 42, 0, 0, 152, 0, 0, 0, 253, 0, 183, 0, 0, 0, 0, 0, 89, 0, 0, 0, 0, 0, 0, 304, 0, 0, 0, 395, 535, 0, 211, 0, 0, 537, 0, 306, 402, 0, 0, 0, 0, 0, 312, 0, 178, 82, 254, 0, 0, 0, 0, 0, 0, 0, 578, 180, 152, 319, 0, 0, 0, 0, 0, 0, 0, 211, 0, 211, 0, 211, 211, 211, 0, 0, 211, 0, 211, 0, 0, 180, 304, 80, 0, 83, 152, 0, 428, 0, 0, 394, 396, 0, 0, 428, 378, 379, 380, 382, 0, 82, 0, 428, 0, 0, 0, 0, 0, 162, 0, 0, 0, 152, 0, 0, 0, 0, 0, 0, 0, 388, 431, 0, 431, 0, 423, 0, 0, 0, 0, 306, 82, 437, 82, 437, 423, 89, 0, 83, 0, 448, 0, 0, 0, 0, 0, 0, 463, 463, 0, 0, 0, 152, 0, 0, 251, 0, 0, 0, 0, 0, 0, 0, 424, 304, 0, 0, 0, 0, 83, 438, 83, 438, 424, 0, 0, 0, 0, 449, 0, 0, 0, 0, 306, 506, 464, 464, 0, 0, 0, 89, 0, 80, 0, 0, 0, 0, 0, 0, 311, 0, 89, 0, 0, 0, 395, 0, 0, 0, 0, 0, 402, 0, 580, 0, 0, 0, 537, 582, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 365, 695, 0, 0, 0, 0, 0, 0, 0, 306, 0, 0, 80, 211, 0, 211, 211, 211, 164, 180, 0, 0, 0, 0, 0, 0, 82, 0, 0, 253, 180, 82, 0, 463, 573, 0, 0, 421, 0, 0, 0, 0, 0, 80, 435, 80, 435, 421, 0, 0, 0, 0, 446, 0, 209, 0, 0, 0, 0, 461, 461, 0, 0, 0, 83, 0, 306, 254, 0, 83, 0, 464, 431, 0, 603, 0, 594, 0, 81, 431, 0, 0, 0, 0, 0, 0, 0, 431, 0, 613, 0, 0, 0, 0, 0, 0, 0, 613, 0, 0, 0, 0, 0, 0, 0, 394, 0, 0, 78, 0, 463, 0, 187, 0, 595, 631, 174, 0, 0, 0, 183, 0, 0, 0, 635, 761, 0, 614, 463, 0, 0, 0, 0, 0, 0, 614, 0, 0, 0, 89, 174, 0, 0, 0, 0, 0, 0, 0, 464, 306, 364, 252, 0, 632, 174, 0, 580, 174, 0, 82, 0, 582, 78, 0, 0, 531, 464, 0, 0, 0, 0, 0, 80, 209, 162, 251, 0, 80, 0, 461, 0, 0, 178, 319, 0, 209, 209, 209, 81, 0, 0, 0, 0, 78, 434, 78, 434, 83, 0, 0, 0, 0, 180, 0, 0, 0, 0, 0, 0, 460, 460, 0, 631, 0, 0, 463, 463, 0, 456, 456, 698, 0, 592, 0, 0, 0, 0, 463, 174, 0, 0, 174, 0, 0, 0, 611, 0, 0, 0, 0, 0, 0, 81, 611, 0, 0, 0, 0, 0, 0, 632, 0, 0, 464, 464, 0, 461, 0, 0, 0, 0, 629, 0, 0, 0, 464, 0, 422, 0, 0, 0, 0, 174, 81, 461, 81, 0, 422, 0, 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, 462, 462, 0, 0, 0, 0, 0, 0, 0, 0, 458, 458, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 731, 732, 530, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 78, 0, 460, 0, 0, 0, 0, 0, 0, 0, 0, 89, 0, 0, 760, 0, 463, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 629, 0, 209, 461, 461, 0, 0, 0, 209, 0, 209, 0, 209, 209, 209, 461, 0, 209, 0, 209, 0, 0, 0, 464, 0, 0, 0, 610, 0, 0, 0, 0, 0, 778, 779, 610, 780, 781, 0, 0, 0, 0, 0, 180, 81, 0, 0, 252, 460, 81, 0, 462, 463, 628, 0, 0, 0, 456, 0, 0, 0, 0, 0, 0, 0, 0, 460, 458, 0, 174, 0, 0, 807, 0, 808, 456, 0, 0, 0, 0, 0, 817, 818, 0, 0, 0, 0, 0, 0, 0, 464, 0, 0, 0, 593, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 832, 0, 833, 174, 834, 0, 835, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 0, 462, 0, 0, 461, 0, 630, 0, 850, 0, 851, 458, 0, 105, 0, 1, 106, 107, 108, 462, 109, 110, 0, 628, 0, 0, 460, 460, 0, 458, 0, 0, 0, 0, 0, 0, 0, 0, 460, 0, 2, 0, 0, 0, 0, 0, 0, 456, 0, 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 209, 0, 209, 209, 209, 0, 0, 0, 0, 461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 0, 0, 630, 0, 0, 462, 462, 0, 0, 0, 0, 456, 0, 114, 115, 0, 0, 462, 0, 0, 116, 0, 0, 0, 0, 0, 0, 458, 0, 117, 0, 118, 174, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 460, 798, 855, 0, 0, 0, 0, 0, 174, 0, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 174, 174, 0, 0, 0, 0, 0, 0, 0, 458, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 460, 0, 0, 0, 0, 0, 0, 0, 0, 456, 0, 0, 0, 462, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 462, 109, 110, 0, 0, 0, 0, 0, 174, 0, 458, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 551, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 552, 376, -444, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 551, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 552, 376, -443, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 551, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 552, 376, -445, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 453, 454, 455, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 453, 454, 474, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 453, 454, 624, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 638, 454, -496, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 453, 454, 692, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 0, 0, 453, 454, 795, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 397, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 583, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 584, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 585, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 587, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 701, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 702, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 703, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 202, 0, 704, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 551, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 552, 376, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 2, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 2, 111, 112, 113, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 114, 115, 0, 0, 0, 552, 376, 116, 0, 0, 0, 111, 112, 113, 0, 0, 117, 0, 118, 0, 0, 119, 477, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 0, 454, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 0, 0, 454, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 0, 0, 0, 798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 2, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 111, 112, 113, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 202, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 119, 748, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 0, 552, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 111, 112, 113, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 792, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 114, 115, 0, 0, 0, 0, 552, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 1, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 676, 0, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 354, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 0, 1, 72, 0, 0, 303, 0, 0, 0, 0, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 528, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 1, 0, 72, 0, 0, 384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 385, 0, 386, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 1, 0, 72, 0, 0, 176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 681, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 105, 303, 1, 106, 107, 108, 74, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -279, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 247, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 2, 0, 0, 117, 0, 372, 0, 0, 373, 247, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 0, 0, 0, 0, 0, 2, 117, 0, 372, 0, 0, 373, 247, 120, 121, 111, 112, 113, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 111, 112, 113, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 172, 0, 122, 123, 124, 125, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 324, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 114, 115, 111, 112, 113, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 327, 0, 122, 123, 124, 125, 114, 115, 0, 0, 0, 0, 0, 116, 0, 111, 112, 113, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 247, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 119, 745, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 114, 115, 111, 112, 113, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 824, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 114, 115, 0, 0, 0, 0, 0, 116, 0, 111, 112, 113, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 235, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 111, 112, 113, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 237, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 114, 115, 0, 0, 0, 0, 0, 116, 1, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 245, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 1, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 73, 0, 0, 0, 0, 74, 0, 0, 75, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 73, 165, 0, 0, 0, 74, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 303, 165, 0, 0, 0, 74, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 0, 0, 0, 0, 427, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 0, 0, 0, 0, 439, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 303, 0, 0, 0, 0, 74, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 0, 0, 0, 0, 608, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 2, 0, 0, 0, 618, 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 0, 0, 0, 72, 0, 0, 303, 0, 0, 0, 0, 74, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 598, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 190, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 322, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 709, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 176, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 538, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 354, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39
137 static const yytype_int16 yycheck[] =
139 0, 0, 262, 88, 46, 377, 121, 243, 258, 383, 198, 98, 199, 93, 377, 527, 65, 277, 3, 17, 3, 198, 3, 210, 24, 112, 133, 91, 115, 3, 3, 3, 428, 75, 341, 431, 3, 3, 798, 123, 79, 3, 3, 28, 46, 45, 46, 67, 0, 3, 198, 672, 121, 24, 120, 28, 28, 57, 69, 44, 69, 70, 62, 3, 79, 121, 66, 67, 130, 135, 136, 110, 111, 73, 143, 75, 91, 77, 70, 79, 142, 3, 144, 123, 844, 121, 57, 143, 88, 74, 75, 91, 69, 93, 242, 607, 244, 97, 130, 186, 185, 140, 189, 103, 104, 3, 28, 12, 13, 123, 142, 111, 74, 75, 114, 67, 180, 79, 138, 70, 184, 73, 224, 225, 226, 3, 97, 127, 749, 0, 130, 69, 212, 144, 3, 144, 88, 120, 121, 124, 3, 139, 123, 230, 224, 225, 226, 659, 110, 111, 124, 151, 144, 153, 156, 11, 156, 124, 141, 111, 143, 3, 114, 70, 140, 120, 166, 144, 123, 184, 143, 143, 279, 280, 281, 363, 176, 143, 178, 140, 180, 143, 143, 370, 184, 185, 363, 559, 560, 143, 426, 191, 198, 144, 194, 70, 559, 433, 198, 199, 200, 201, 714, 143, 454, 441, 144, 603, 208, 209, 210, 211, 212, 262, 521, 363, 121, 122, 143, 1, 220, 3, 120, 121, 224, 225, 226, 198, 277, 123, 69, 231, 65, 185, 128, 235, 242, 144, 244, 46, 240, 241, 242, 243, 244, 245, 130, 199, 250, 201, 250, 120, 626, 130, 123, 319, 433, 120, 121, 259, 144, 3, 143, 263, 441, 142, 122, 287, 288, 144, 290, 242, 459, 244, 130, 108, 109, 110, 120, 121, 143, 129, 302, 116, 212, 433, 119, 307, 124, 304, 310, 306, 122, 441, 130, 143, 69, 70, 385, 130, 130, 143, 302, 303, 1, 144, 3, 307, 410, 411, 310, 142, 414, 144, 416, 687, 316, 316, 3, 319, 124, 571, 123, 69, 70, 405, 130, 407, 3, 409, 410, 411, 332, 130, 414, 143, 416, 452, 120, 121, 427, 426, 124, 28, 451, 142, 69, 70, 130, 156, 302, 303, 439, 28, 354, 307, 141, 363, 310, 44, 130, 363, 129, 363, 316, 5, 129, 200, 368, 44, 370, 144, 142, 373, 374, 375, 143, 377, 120, 119, 143, 123, 143, 354, 384, 645, 128, 387, 388, 74, 75, 138, 363, 131, 394, 444, 396, 368, 144, 74, 75, 401, 235, 210, 237, 405, 137, 407, 130, 409, 410, 411, 245, 130, 414, 16, 416, 141, 420, 419, 420, 144, 144, 120, 121, 142, 426, 433, 235, 262, 130, 264, 130, 433, 241, 441, 243, 130, 245, 129, 120, 441, 142, 123, 277, 445, 122, 140, 128, 124, 122, 124, 143, 540, 130, 130, 456, 130, 130, 459, 200, 122, 433, 123, 142, 298, 124, 46, 128, 130, 441, 124, 130, 124, 426, 124, 525, 405, 3, 407, 124, 409, 7, 8, 9, 123, 130, 124, 124, 576, 128, 506, 124, 130, 73, 235, 75, 237, 130, 124, 79, 503, 143, 503, 754, 245, 586, 527, 588, 589, 590, 124, 91, 142, 556, 302, 124, 130, 605, 604, 307, 608, 130, 302, 264, 143, 526, 527, 307, 124, 617, 618, 141, 533, 127, 535, 123, 537, 132, 133, 373, 10, 11, 124, 377, 545, 129, 547, 14, 15, 124, 551, 129, 553, 142, 143, 556, 123, 298, 559, 560, 129, 130, 370, 535, 3, 3, 123, 375, 7, 8, 9, 121, 573, 574, 527, 124, 3, 578, 282, 283, 7, 8, 9, 291, 292, 586, 607, 588, 589, 590, 28, 284, 285, 103, 104, 645, 176, 123, 178, 144, 180, 127, 128, 604, 184, 123, 607, 128, 123, 121, 444, 3, 420, 144, 194, 141, 124, 128, 124, 144, 200, 124, 123, 140, 545, 123, 627, 715, 123, 123, 210, 719, 373, 142, 124, 142, 74, 75, 659, 560, 144, 79, 142, 74, 75, 124, 129, 121, 79, 129, 128, 604, 128, 654, 607, 144, 3, 586, 659, 588, 589, 590, 124, 0, 752, 124, 667, 140, 143, 56, 142, 128, 110, 111, 140, 763, 141, 124, 679, 110, 111, 682, 74, 75, 123, 519, 687, 79, 127, 128, 144, 525, 129, 714, 695, 503, 123, 698, 142, 129, 127, 128, 141, 129, 129, 143, 659, 757, 3, 46, 141, 545, 755, 714, 123, 129, 550, 129, 110, 111, 144, 144, 144, 144, 3, 559, 560, 74, 75, 66, 67, 123, 79, 74, 75, 64, 73, 74, 79, 319, 741, 144, 144, 144, 745, 142, 667, 748, 798, 144, 3, 88, 57, 144, 755, 293, 93, 294, 679, 760, 761, 714, 295, 110, 111, 297, 687, 296, 755, 110, 111, 393, 399, 1, 111, 3, 123, 114, 519, 74, 75, 128, 119, 124, 79, 786, 787, 310, 789, 244, 574, 792, 459, 373, 844, 74, 75, 231, 559, 245, 79, 472, 472, 636, 384, -1, 472, -1, 388, 550, -1, 645, -1, -1, 394, 110, 111, -1, -1, 156, 741, 74, 75, 824, 745, 120, 79, 748, 123, 124, -1, 110, 111, 667, 668, 669, 670, -1, 672, 840, -1, 120, 843, -1, 123, 679, 74, 75, 185, 186, -1, 79, 189, 687, 74, 75, -1, 110, 111, 79, -1, 140, 199, -1, 201, 786, 787, 120, 789, -1, 123, 792, -1, 210, -1, 212, -1, -1, -1, 459, -1, -1, 110, 111, -1, -1, -1, 224, 225, 226, 110, 111, 120, 121, -1, 123, 124, -1, 235, -1, 128, -1, -1, 824, 241, -1, 243, 741, 245, -1, -1, 745, -1, 250, 748, 749, -1, -1, -1, 840, 257, 258, 843, 757, 3, -1, -1, 668, 669, 670, -1, -1, -1, 1, -1, 3, 4, 5, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, -1, 28, -1, -1, 786, 787, -1, 789, 790, 537, 792, 793, 28, -1, -1, -1, 798, 302, 303, -1, -1, -1, 307, -1, 46, 310, -1, -1, 556, -1, -1, 316, -1, -1, -1, 57, -1, -1, -1, -1, -1, -1, 824, -1, -1, 573, 574, 74, 75, -1, 578, 73, 79, 75, -1, 71, 72, -1, 840, -1, -1, 843, 844, -1, 86, -1, -1, -1, -1, 91, -1, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 370, 102, 103, 373, -1, 375, -1, 377, -1, -1, -1, -1, 44, 45, -1, -1, 790, 118, -1, 793, -1, -1, 123, -1, -1, 126, -1, -1, 141, -1, -1, -1, -1, -1, -1, 405, -1, 407, -1, 409, 410, 411, 74, 75, 414, -1, 416, 79, -1, 156, 420, -1, -1, -1, -1, -1, 426, -1, -1, -1, -1, 168, -1, -1, -1, -1, -1, -1, -1, 176, -1, -1, 179, 180, -1, -1, -1, 184, 110, 111, -1, -1, 695, -1, 454, 698, -1, -1, 120, 459, -1, -1, 199, 200, -1, 46, -1, -1, -1, -1, -1, -1, 472, 210, -1, 212, -1, -1, -1, -1, -1, -1, -1, 220, -1, -1, -1, 224, 225, 226, -1, -1, 73, -1, 75, -1, -1, -1, 79, -1, -1, -1, -1, 503, 241, -1, 243, -1, -1, -1, 91, -1, 755, 250, -1, -1, -1, 760, 761, -1, -1, -1, -1, -1, -1, -1, 526, 527, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 556, 75, -1, 559, 560, 79, -1, -1, -1, -1, 303, -1, -1, -1, -1, 571, -1, -1, -1, -1, 46, -1, -1, -1, -1, -1, 319, -1, -1, -1, 586, -1, 588, 589, 590, -1, -1, -1, -1, 176, -1, 178, -1, 180, -1, -1, -1, 184, 604, -1, -1, 607, -1, -1, -1, 119, -1, 194, -1, -1, -1, -1, -1, 200, -1, -1, -1, -1, -1, -1, 363, -1, -1, -1, 211, 368, -1, 370, -1, -1, 373, -1, 156, 220, -1, -1, -1, -1, -1, 163, -1, 384, 156, 119, -1, -1, -1, -1, -1, -1, -1, 394, 176, 659, 178, -1, -1, -1, -1, -1, -1, -1, 405, -1, 407, -1, 409, 410, 411, -1, -1, 414, -1, 416, -1, -1, 200, 420, 46, -1, 156, 687, -1, 426, -1, -1, 210, 211, -1, -1, 433, 204, 205, 206, 207, -1, 210, -1, 441, -1, -1, -1, -1, -1, 72, -1, -1, -1, 714, -1, -1, -1, -1, -1, -1, -1, 459, 241, -1, 243, -1, 235, -1, -1, -1, -1, 250, 241, 242, 243, 244, 245, 319, -1, 210, -1, 250, -1, -1, -1, -1, -1, -1, 257, 258, -1, -1, -1, 754, -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, 235, 503, -1, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, -1, -1, 250, -1, -1, -1, -1, 303, 304, 257, 258, -1, -1, -1, 373, -1, 156, -1, -1, -1, -1, -1, -1, 163, -1, 384, -1, -1, -1, 388, -1, -1, -1, -1, -1, 394, -1, 396, -1, -1, -1, 556, 401, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, -1, 198, 574, -1, -1, -1, -1, -1, -1, -1, 363, -1, -1, 210, 586, -1, 588, 589, 590, 372, 373, -1, -1, -1, -1, -1, -1, 370, -1, -1, 373, 384, 375, -1, 377, 388, -1, -1, 235, -1, -1, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, -1, -1, 250, -1, 93, -1, -1, -1, -1, 257, 258, -1, -1, -1, 370, -1, 420, 373, -1, 375, -1, 377, 426, -1, 428, -1, 420, -1, 46, 433, -1, -1, -1, -1, -1, -1, -1, 441, -1, 433, -1, -1, -1, -1, -1, -1, -1, 441, -1, -1, -1, -1, -1, -1, -1, 459, -1, -1, 156, -1, 454, -1, 685, -1, 420, 459, 74, -1, -1, -1, 537, -1, -1, -1, 467, 698, -1, 433, 472, -1, -1, -1, -1, -1, -1, 441, -1, -1, -1, 556, 98, -1, -1, -1, -1, -1, -1, -1, 454, 503, 198, 119, -1, 459, 112, -1, 573, 115, -1, 503, -1, 578, 210, -1, -1, 363, 472, -1, -1, -1, -1, -1, 370, 212, 372, 373, -1, 375, -1, 377, -1, -1, 755, 537, -1, 224, 225, 226, 156, -1, -1, -1, -1, 241, 242, 243, 244, 503, -1, -1, -1, -1, 556, -1, -1, -1, -1, -1, -1, 257, 258, -1, 556, -1, -1, 559, 560, -1, 257, 258, 574, -1, 420, -1, -1, -1, -1, 571, 186, -1, -1, 189, -1, -1, -1, 433, -1, -1, -1, -1, -1, -1, 210, 441, -1, -1, -1, -1, -1, -1, 556, -1, -1, 559, 560, -1, 454, -1, -1, -1, -1, 459, -1, -1, -1, 571, -1, 235, -1, -1, -1, -1, 230, 241, 472, 243, -1, 245, -1, -1, -1, -1, 250, -1, -1, -1, -1, -1, -1, 257, 258, -1, -1, -1, -1, -1, -1, -1, -1, 257, 258, -1, -1, -1, -1, 503, -1, -1, -1, -1, -1, -1, -1, 656, 657, 363, -1, -1, -1, -1, -1, -1, 370, -1, -1, -1, -1, 375, -1, 377, -1, -1, -1, -1, -1, -1, -1, -1, 755, -1, -1, 695, -1, 687, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 556, -1, 399, 559, 560, -1, -1, -1, 405, -1, 407, -1, 409, 410, 411, 571, -1, 414, -1, 416, -1, -1, -1, 687, -1, -1, -1, 433, -1, -1, -1, -1, -1, 734, 735, 441, 737, 738, -1, -1, -1, -1, -1, 755, 370, -1, -1, 373, 454, 375, -1, 377, 754, 459, -1, -1, -1, 454, -1, -1, -1, -1, -1, -1, -1, -1, 472, 383, -1, 385, -1, -1, 773, -1, 775, 472, -1, -1, -1, -1, -1, 782, 783, -1, -1, -1, -1, -1, -1, -1, 754, -1, -1, -1, 420, -1, -1, 503, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 809, -1, 811, 427, 813, -1, 815, -1, -1, -1, -1, -1, -1, -1, -1, 439, -1, -1, -1, -1, 454, -1, -1, 687, -1, 459, -1, 836, -1, 838, 454, -1, 1, -1, 3, 4, 5, 6, 472, 8, 9, -1, 556, -1, -1, 559, 560, -1, 472, -1, -1, -1, -1, -1, -1, -1, -1, 571, -1, 28, -1, -1, -1, -1, -1, -1, 571, -1, -1, 503, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 586, -1, 588, 589, 590, -1, -1, -1, -1, 754, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 540, -1, -1, -1, -1, -1, 556, -1, -1, 559, 560, -1, -1, -1, -1, 636, -1, 102, 103, -1, -1, 571, -1, -1, 109, -1, -1, -1, -1, -1, -1, 571, -1, 118, -1, 120, 576, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 687, 143, 144, -1, -1, -1, -1, -1, 605, -1, -1, 608, -1, -1, -1, -1, -1, -1, -1, -1, 617, 618, -1, -1, -1, -1, -1, -1, -1, 626, -1, -1, -1, -1, -1, -1, -1, -1, -1, 636, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 647, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 754, -1, -1, -1, -1, -1, -1, -1, -1, 754, -1, -1, -1, 687, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 715, -1, -1, -1, 719, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, 754, 8, 9, -1, -1, -1, -1, -1, 752, -1, 754, -1, -1, -1, -1, -1, -1, -1, -1, 763, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, 77, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, 77, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, 77, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 1, -1, 3, 4, 5, -1, -1, 142, 143, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, 77, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 28, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, 28, 71, 72, 73, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, 102, 103, -1, -1, -1, 142, 143, 109, -1, -1, -1, 71, 72, 73, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, -1, 143, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, -1, -1, 143, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 1, -1, 3, 4, 5, -1, -1, -1, 143, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, 28, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 71, 72, 73, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, 142, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, -1, 142, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, 71, 72, 73, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, 102, 103, -1, -1, -1, -1, 142, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, 3, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 3, 120, -1, -1, 123, -1, -1, -1, -1, 128, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 3, -1, 120, -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 140, -1, 142, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 3, -1, 120, -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, 1, 123, 3, 4, 5, 6, 128, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, 28, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, -1, -1, -1, -1, -1, 28, 118, -1, 120, -1, -1, 123, 124, 125, 126, 71, 72, 73, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, 71, 72, 73, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, 129, -1, 131, 132, 133, 134, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, 129, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 102, 103, 71, 72, 73, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, 129, -1, 131, 132, 133, 134, 102, 103, -1, -1, -1, -1, -1, 109, -1, 71, 72, 73, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 102, 103, 71, 72, 73, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 102, 103, -1, -1, -1, -1, -1, 109, -1, 71, 72, 73, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, 71, 72, 73, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 102, 103, -1, -1, -1, -1, -1, 109, 3, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, 3, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, -1, -1, 131, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 124, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 124, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 28, -1, -1, -1, 128, -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, -1, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, 3, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 124, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, 3, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, 124, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, 3, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, 124, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, 3, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, 124, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, 123, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117
142 static const yytype_uint16 yystos[] =
144 0, 3, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 65, 66, 74, 75, 79, 82, 83, 85, 87, 100, 110, 111, 112, 113, 117, 146, 147, 148, 149, 150, 155, 185, 186, 191, 192, 193, 197, 198, 199, 200, 202, 203, 209, 217, 218, 236, 267, 143, 150, 155, 123, 123, 121, 1, 120, 121, 155, 120, 123, 128, 131, 146, 155, 191, 192, 199, 200, 202, 218, 221, 223, 225, 226, 228, 229, 230, 233, 123, 143, 149, 150, 155, 192, 140, 0, 155, 219, 220, 143, 143, 1, 4, 5, 6, 8, 9, 71, 72, 73, 102, 103, 109, 118, 120, 123, 125, 126, 131, 132, 133, 134, 148, 155, 156, 157, 158, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 254, 257, 148, 155, 148, 155, 162, 167, 185, 204, 205, 206, 207, 208, 199, 232, 233, 124, 155, 223, 225, 234, 235, 236, 129, 148, 176, 180, 123, 155, 192, 225, 233, 221, 226, 229, 233, 123, 128, 192, 123, 128, 124, 155, 234, 237, 192, 221, 230, 123, 68, 78, 123, 125, 142, 144, 151, 152, 153, 154, 155, 158, 185, 192, 210, 211, 212, 213, 214, 226, 227, 229, 233, 256, 257, 259, 143, 143, 143, 150, 155, 180, 141, 130, 144, 219, 219, 123, 162, 123, 162, 162, 155, 185, 180, 185, 180, 123, 162, 124, 177, 179, 182, 199, 200, 202, 218, 238, 254, 143, 143, 7, 8, 9, 123, 127, 128, 155, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 141, 178, 164, 120, 135, 136, 132, 133, 10, 11, 167, 12, 13, 121, 122, 14, 15, 131, 137, 138, 16, 17, 139, 124, 124, 124, 141, 123, 192, 223, 233, 141, 11, 122, 130, 199, 233, 124, 124, 124, 130, 129, 129, 233, 221, 230, 124, 234, 129, 148, 180, 129, 148, 180, 124, 124, 130, 3, 28, 44, 74, 75, 124, 194, 195, 196, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 46, 47, 50, 66, 85, 87, 100, 112, 113, 150, 155, 187, 191, 199, 201, 203, 209, 217, 185, 227, 120, 123, 155, 185, 143, 248, 249, 249, 249, 142, 249, 141, 123, 140, 142, 155, 192, 215, 216, 226, 227, 231, 233, 229, 233, 144, 214, 130, 142, 192, 229, 142, 142, 210, 144, 210, 144, 210, 143, 143, 180, 220, 142, 144, 142, 144, 146, 155, 183, 199, 200, 202, 218, 239, 123, 128, 192, 222, 224, 233, 155, 188, 191, 199, 201, 202, 218, 128, 224, 188, 239, 124, 130, 155, 199, 200, 202, 218, 223, 124, 127, 142, 143, 144, 158, 159, 176, 184, 191, 199, 200, 202, 218, 241, 258, 260, 261, 262, 263, 264, 265, 266, 144, 266, 155, 124, 159, 160, 177, 155, 179, 159, 177, 164, 164, 164, 165, 165, 166, 166, 167, 167, 167, 169, 169, 170, 171, 172, 173, 174, 179, 185, 205, 206, 233, 205, 206, 207, 51, 236, 124, 129, 129, 129, 129, 155, 124, 123, 124, 130, 195, 150, 155, 123, 123, 121, 143, 155, 191, 199, 201, 223, 155, 192, 227, 192, 123, 144, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 77, 142, 155, 179, 181, 184, 243, 244, 245, 246, 247, 249, 250, 251, 252, 253, 255, 241, 124, 180, 143, 226, 233, 130, 142, 140, 197, 192, 226, 229, 211, 229, 144, 144, 144, 210, 144, 210, 210, 210, 146, 199, 200, 202, 218, 223, 124, 124, 224, 234, 180, 222, 233, 123, 128, 222, 121, 128, 155, 191, 199, 201, 202, 218, 224, 180, 128, 128, 224, 124, 177, 164, 254, 144, 266, 141, 155, 191, 199, 200, 202, 218, 227, 231, 249, 130, 142, 142, 261, 263, 264, 144, 144, 124, 130, 129, 140, 223, 179, 124, 195, 177, 148, 155, 208, 69, 70, 144, 121, 143, 143, 155, 150, 155, 124, 180, 140, 123, 123, 123, 243, 123, 155, 142, 142, 142, 179, 155, 140, 142, 142, 155, 189, 190, 225, 181, 246, 181, 243, 144, 142, 144, 266, 226, 192, 216, 226, 233, 180, 226, 144, 144, 144, 144, 124, 124, 129, 222, 124, 234, 180, 208, 180, 121, 128, 129, 180, 180, 128, 144, 241, 262, 159, 177, 176, 124, 124, 124, 124, 122, 249, 249, 208, 69, 70, 144, 69, 70, 144, 143, 140, 243, 179, 179, 124, 179, 56, 124, 250, 142, 142, 141, 243, 143, 130, 142, 141, 144, 226, 233, 192, 226, 140, 124, 129, 122, 129, 208, 180, 129, 129, 180, 70, 144, 69, 144, 122, 249, 249, 249, 249, 69, 70, 144, 243, 124, 124, 243, 124, 123, 243, 124, 250, 180, 144, 266, 190, 143, 177, 240, 226, 226, 180, 122, 129, 129, 249, 249, 70, 144, 69, 144, 70, 144, 69, 144, 249, 249, 243, 243, 243, 179, 243, 124, 179, 142, 144, 240, 242, 144, 144, 249, 249, 249, 249, 70, 144, 69, 144, 64, 124, 243, 124, 130, 144, 144, 144, 144, 144, 249, 249, 243, 142, 243, 144, 240, 144, 144
147 void exit(int status);
149 void * calloc(size_t nmemb, size_t size);
151 void free(void * ptr);
153 void * malloc(size_t size);
155 void * realloc(void * ptr, size_t size);
157 long int strtol(const char * nptr, char ** endptr, int base);
159 long long int strtoll(const char * nptr, char ** endptr, int base);
161 unsigned long long int strtoull(const char * nptr, char ** endptr, int base);
163 typedef __builtin_va_list va_list;
167 FILE * bsl_stdin(void);
169 FILE * bsl_stdout(void);
171 FILE * bsl_stderr(void);
173 char * fgets(char * s, int size, FILE * stream);
175 FILE * fopen(const char * path, const char * mode);
177 int fclose(FILE * fp);
179 int fflush(FILE * stream);
181 int fgetc(FILE * stream);
183 int fprintf(FILE * stream, const char * format, ...);
185 int fputc(int c, FILE * stream);
187 size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
189 size_t fwrite(const void * ptr, size_t size, size_t nmemb, FILE * stream);
191 int vsnprintf(char *, size_t, const char *, va_list args);
193 int snprintf(char * str, size_t, const char * format, ...);
195 int fseek(FILE * stream, long offset, int whence);
197 long ftell(FILE * stream);
199 int feof(FILE * stream);
201 int ferror(FILE * stream);
203 int fileno(FILE * stream);
207 int type_yyparse(void);
213 extern unsigned int skipErrors;
217 struct __ecereNameSpace__ecere__sys__OldList
226 struct __ecereNameSpace__ecere__sys__BTNode;
230 struct __ecereNameSpace__ecere__com__DataValue
245 } ecere_gcc_struct __anon1;
248 struct __ecereNameSpace__ecere__com__SerialBuffer
250 unsigned char * _buffer;
256 extern void * __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
258 extern void * __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
260 extern void * __ecereNameSpace__ecere__com__eSystem_Renew(void * memory, unsigned int size);
262 extern void * __ecereNameSpace__ecere__com__eSystem_Renew0(void * memory, unsigned int size);
264 extern void __ecereNameSpace__ecere__com__eSystem_Delete(void * memory);
270 struct FunctionDefinition;
280 struct ClassDefinition;
284 struct PropertyWatch;
286 struct TemplateParameter;
302 extern size_t strlen(const char * );
304 extern char * __ecereNameSpace__ecere__sys__CopyString(const char * string);
306 static void yy_stack_print(yytype_int16 * yybottom, yytype_int16 * yytop)
308 fprintf((bsl_stderr()), "Stack now");
309 for(; yybottom <= yytop; yybottom++)
311 int yybot = *yybottom;
313 fprintf((bsl_stderr()), " %d", yybot);
315 fprintf((bsl_stderr()), "\n");
318 extern void FreeList(struct __ecereNameSpace__ecere__sys__OldList * list, void (* FreeFunction)(void * ));
320 extern struct __ecereNameSpace__ecere__sys__OldList * MkListOne(void * item);
322 extern struct __ecereNameSpace__ecere__sys__OldList * MkList(void);
324 extern void ListAdd(struct __ecereNameSpace__ecere__sys__OldList * list, void * item);
326 extern void FreeEnumerator(struct Enumerator * enumerator);
328 extern void FreePointer(struct Pointer * pointer);
330 extern struct Pointer * MkPointer(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Pointer * pointer);
332 extern void PopContext(struct Context * ctx);
334 extern void FreeContext(struct Context * context);
336 extern struct Context * PushContext(void);
338 extern void FreeExtDecl(struct ExtDecl * extDecl);
340 extern struct ExtDecl * MkExtDeclString(char * s);
344 struct CodePosition start;
345 struct CodePosition end;
348 extern void resetScannerPos(struct CodePosition * pos);
350 extern struct Location yylloc;
352 struct Location type_yylloc;
358 struct __ecereNameSpace__ecere__sys__OldList * attribs;
361 extern void FreeAttrib(struct Attrib * attr);
363 extern struct ExtDecl * MkExtDeclAttrib(struct Attrib * attr);
365 extern struct Attrib * MkAttrib(int type, struct __ecereNameSpace__ecere__sys__OldList * attribs);
369 struct TypeName * parsedType;
371 extern void FreeTypeName(struct TypeName * typeName);
373 struct __ecereNameSpace__ecere__com__Class;
375 struct __ecereNameSpace__ecere__com__Instance
378 struct __ecereNameSpace__ecere__com__Class * _class;
382 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name);
384 extern void __ecereNameSpace__ecere__com__eClass_SetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, long long value);
386 extern void __ecereNameSpace__ecere__com__eInstance_SetMethod(struct __ecereNameSpace__ecere__com__Instance * instance, const char * name, void * function);
388 extern void __ecereNameSpace__ecere__com__eInstance_IncRef(struct __ecereNameSpace__ecere__com__Instance * instance);
390 extern struct __ecereNameSpace__ecere__com__Instance * fileInput;
392 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
394 struct __ecereNameSpace__ecere__com__Property;
396 struct __ecereNameSpace__ecere__com__Property
398 struct __ecereNameSpace__ecere__com__Property * prev;
399 struct __ecereNameSpace__ecere__com__Property * next;
401 unsigned int isProperty;
404 struct __ecereNameSpace__ecere__com__Class * _class;
405 const char * dataTypeString;
406 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
407 struct Type * dataType;
408 void (* Set)(void * , int);
409 int (* Get)(void * );
410 unsigned int (* IsSet)(void * );
414 unsigned int conversion;
415 unsigned int watcherOffset;
416 const char * category;
417 unsigned int compiled;
418 unsigned int selfWatchable;
419 unsigned int isWatchable;
422 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
424 extern void __ecereNameSpace__ecere__com__eInstance_StopWatching(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property, struct __ecereNameSpace__ecere__com__Instance * object);
426 extern void __ecereNameSpace__ecere__com__eInstance_Watch(void * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * ));
428 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
432 extern void FreeSpecifier(struct Specifier * spec);
434 extern struct Symbol * DeclClass(struct Specifier * _class, const char * name);
436 extern struct Symbol * _DeclClass(struct Specifier * _class, const char * name);
438 extern struct Specifier * MkSpecifierName(const char * name);
440 extern void SetClassTemplateArgs(struct Specifier * spec, struct __ecereNameSpace__ecere__sys__OldList * templateArgs);
442 extern struct Specifier * MkSpecifierNameArgs(const char * name, struct __ecereNameSpace__ecere__sys__OldList * templateArgs);
444 extern struct Specifier * MkSpecifier(int specifier);
446 extern struct Specifier * MkSpecifierExtended(struct ExtDecl * extDecl);
448 extern struct Specifier * MkSpecifierSubClass(struct Specifier * _class);
450 struct ClassFunction;
452 extern void FreeClassFunction(struct ClassFunction * func);
456 extern void FreeIdentifier(struct Identifier * id);
460 struct Identifier * prev;
461 struct Identifier * next;
463 struct Symbol * classSym;
464 struct Specifier * _class;
466 struct Identifier * badID;
469 extern struct Identifier * MkIdentifier(const char * string);
471 extern struct Specifier * MkStructOrUnion(int type, struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * definitions);
473 extern struct Specifier * MkEnum(struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * list);
477 extern void FreeExpression(struct Expression * exp);
481 struct Specifier * prev;
482 struct Specifier * next;
490 struct ExtDecl * extDecl;
492 struct Symbol * symbol;
493 struct __ecereNameSpace__ecere__sys__OldList * templateArgs;
494 struct Specifier * nsSpec;
495 } ecere_gcc_struct __anon1;
498 struct Identifier * id;
499 struct __ecereNameSpace__ecere__sys__OldList * list;
500 struct __ecereNameSpace__ecere__sys__OldList * baseSpecs;
501 struct __ecereNameSpace__ecere__sys__OldList * definitions;
502 unsigned int addNameSpace;
503 struct Context * ctx;
504 struct ExtDecl * extDeclStruct;
505 } ecere_gcc_struct __anon2;
506 struct Expression * expression;
507 struct Specifier * _class;
508 struct TemplateParameter * templateParameter;
509 } ecere_gcc_struct __anon1;
512 extern struct Expression * MkExpBrackets(struct __ecereNameSpace__ecere__sys__OldList * expressions);
514 extern struct Expression * MkExpIdentifier(struct Identifier * id);
516 extern struct Expression * MkExpConstant(const char * string);
518 extern struct Expression * MkExpWideString(const char * string);
520 extern struct Expression * MkExpString(const char * string);
522 extern struct Expression * MkExpIntlString(const char * string, const char * context);
524 extern struct Expression * MkExpDummy(void);
526 extern struct Expression * MkExpNew(struct TypeName * type, struct Expression * size);
528 extern struct Expression * MkExpNew0(struct TypeName * type, struct Expression * size);
530 extern struct Expression * MkExpRenew(struct Expression * memExp, struct TypeName * type, struct Expression * size);
532 extern struct Expression * MkExpRenew0(struct Expression * memExp, struct TypeName * type, struct Expression * size);
534 extern struct Expression * MkExpIndex(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * index);
536 extern struct Expression * MkExpCall(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * arguments);
538 extern struct Expression * MkExpMember(struct Expression * expression, struct Identifier * member);
540 extern struct Expression * MkExpPointer(struct Expression * expression, struct Identifier * member);
542 extern struct Expression * MkExpOp(struct Expression * exp1, int op, struct Expression * exp2);
544 extern struct Expression * MkExpTypeSize(struct TypeName * typeName);
546 extern struct Expression * MkExpTypeAlign(struct TypeName * typeName);
548 extern struct Expression * MkExpCast(struct TypeName * typeName, struct Expression * expression);
550 extern struct Expression * MkExpCondition(struct Expression * cond, struct __ecereNameSpace__ecere__sys__OldList * expressions, struct Expression * elseExp);
552 extern struct Specifier * MkSpecifierTypeOf(struct Expression * expression);
554 extern struct Enumerator * MkEnumerator(struct Identifier * id, struct Expression * exp);
558 extern void FreeDeclaration(struct Declaration * decl);
560 extern struct Declaration * MkDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * initDeclarators);
562 extern struct Declaration * MkDeclarationDefine(struct Identifier * id, struct Expression * exp);
564 extern struct Declaration * MkStructDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * declarators, struct Specifier * extStorage);
566 struct InitDeclarator;
568 extern void FreeInitDeclarator(struct InitDeclarator * decl);
572 extern void FreeAttribute(struct Attribute * attr);
574 extern struct Attribute * MkAttribute(char * attr, struct Expression * exp);
578 struct Attribute * prev;
579 struct Attribute * next;
582 struct Expression * exp;
585 struct TemplateDatatype;
587 extern void FreeTemplateDataType(struct TemplateDatatype * type);
589 struct TemplateArgument;
591 extern void FreeTemplateArgument(struct TemplateArgument * arg);
593 extern struct TemplateArgument * MkTemplateTypeArgument(struct TemplateDatatype * tplDatatype);
595 extern struct TemplateArgument * MkTemplateExpressionArgument(struct Expression * expr);
597 struct TemplateArgument
599 struct TemplateArgument * prev;
600 struct TemplateArgument * next;
602 struct Identifier * name;
606 struct Expression * expression;
607 struct Identifier * identifier;
608 struct TemplateDatatype * templateDatatype;
609 } ecere_gcc_struct __anon1;
614 extern void FreeClassDef(struct ClassDef * def);
616 extern struct ClassDef * MkClassDefDeclaration(struct Declaration * decl);
618 extern struct ClassDef * MkClassDefFunction(struct ClassFunction * function);
620 extern struct ClassDef * MkClassDefDefaultProperty(struct __ecereNameSpace__ecere__sys__OldList * defProperties);
624 extern void FreeMemberInit(struct MemberInit * init);
628 extern void FreeProperty(struct PropertyDef * def);
630 extern struct ClassDef * MkClassDefProperty(struct PropertyDef * propertyDef);
634 extern void FreeDeclarator(struct Declarator * decl);
636 extern struct ClassFunction * MkClassFunction(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct Specifier * _class, struct Declarator * decl, struct __ecereNameSpace__ecere__sys__OldList * declList);
638 extern struct TypeName * MkTypeName(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Declarator * declarator);
640 extern struct TemplateDatatype * MkTemplateDatatype(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct Declarator * decl);
642 struct TemplateDatatype
644 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
645 struct Declarator * decl;
648 extern struct Declarator * MkStructDeclarator(struct Declarator * declarator, struct Expression * exp);
652 struct Declarator * prev;
653 struct Declarator * next;
656 struct Symbol * symbol;
657 struct Declarator * declarator;
660 struct Identifier * identifier;
663 struct Expression * exp;
664 struct Expression * posExp;
665 struct Attrib * attrib;
666 } ecere_gcc_struct structDecl;
669 struct Expression * exp;
670 struct Specifier * enumClass;
671 } ecere_gcc_struct array;
674 struct __ecereNameSpace__ecere__sys__OldList * parameters;
675 } ecere_gcc_struct function;
678 struct Pointer * pointer;
679 } ecere_gcc_struct pointer;
682 struct ExtDecl * extended;
683 } ecere_gcc_struct extended;
684 } ecere_gcc_struct __anon1;
687 extern struct Declarator * MkDeclaratorBrackets(struct Declarator * declarator);
689 extern struct Declarator * MkDeclaratorArray(struct Declarator * declarator, struct Expression * exp);
691 extern struct Declarator * MkDeclaratorEnumArray(struct Declarator * declarator, struct Specifier * _class);
693 extern struct Declarator * MkDeclaratorFunction(struct Declarator * declarator, struct __ecereNameSpace__ecere__sys__OldList * parameters);
695 extern struct Declarator * MkDeclaratorPointer(struct Pointer * pointer, struct Declarator * declarator);
697 extern struct Declarator * MkDeclaratorExtended(struct ExtDecl * extended, struct Declarator * declarator);
699 extern struct Declarator * MkDeclaratorExtendedEnd(struct ExtDecl * extended, struct Declarator * declarator);
701 extern struct Declarator * MkDeclaratorIdentifier(struct Identifier * id);
705 struct TypeName * prev;
706 struct TypeName * next;
708 struct __ecereNameSpace__ecere__sys__OldList * qualifiers;
709 struct Declarator * declarator;
711 struct Expression * bitCount;
716 extern void FreeInitializer(struct Initializer * initializer);
718 extern struct InitDeclarator * MkInitDeclarator(struct Declarator * declarator, struct Initializer * initializer);
720 struct InitDeclarator
722 struct InitDeclarator * prev;
723 struct InitDeclarator * next;
725 struct Declarator * declarator;
726 struct Initializer * initializer;
731 struct Initializer * prev;
732 struct Initializer * next;
737 struct Expression * exp;
738 struct __ecereNameSpace__ecere__sys__OldList * list;
739 } ecere_gcc_struct __anon1;
740 unsigned int isConstant;
741 struct Identifier * id;
744 extern struct MemberInit * MkMemberInitExp(struct Expression * idExp, struct Initializer * initializer);
748 struct MemberInit * prev;
749 struct MemberInit * next;
751 struct Location realLoc;
752 struct __ecereNameSpace__ecere__sys__OldList * identifiers;
753 struct Initializer * initializer;
755 unsigned int variable;
756 unsigned int takeOutExp;
761 struct ClassDef * prev;
762 struct ClassDef * next;
767 struct Declaration * decl;
768 struct ClassFunction * function;
769 struct __ecereNameSpace__ecere__sys__OldList * defProperties;
770 struct PropertyDef * propertyDef;
771 struct PropertyWatch * propertyWatch;
773 struct Identifier * defaultProperty;
776 struct Identifier * id;
777 struct Initializer * initializer;
778 } ecere_gcc_struct __anon1;
779 } ecere_gcc_struct __anon1;
784 extern struct Initializer * MkInitializerAssignment(struct Expression * exp);
786 extern struct Initializer * MkInitializerList(struct __ecereNameSpace__ecere__sys__OldList * list);
788 extern struct MemberInit * MkMemberInit(struct __ecereNameSpace__ecere__sys__OldList * ids, struct Initializer * initializer);
792 extern void FreeStatement(struct Statement * stmt);
796 struct ClassFunction * prev;
797 struct ClassFunction * next;
799 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
800 struct Declarator * declarator;
801 struct __ecereNameSpace__ecere__sys__OldList * declarations;
802 struct Statement * body;
803 struct __ecereNameSpace__ecere__com__Class * _class;
804 struct __ecereNameSpace__ecere__sys__OldList attached;
807 struct Symbol * propSet;
808 unsigned int isVirtual;
809 unsigned int isConstructor;
810 unsigned int isDestructor;
811 unsigned int dontMangle;
816 extern struct PropertyDef * MkProperty(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * decl, struct Identifier * id, struct Statement * setStmt, struct Statement * getStmt);
820 struct PropertyDef * prev;
821 struct PropertyDef * next;
823 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
824 struct Declarator * declarator;
825 struct Identifier * id;
826 struct Statement * getStmt;
827 struct Statement * setStmt;
828 struct Statement * issetStmt;
829 struct Symbol * symbol;
830 struct Expression * category;
833 unsigned int conversion : 1;
834 unsigned int isWatchable : 1;
835 unsigned int isDBProp : 1;
836 } ecere_gcc_struct __anon1;
839 extern struct Statement * MkLabeledStmt(struct Identifier * id, struct Statement * statement);
843 struct Statement * prev;
844 struct Statement * next;
849 struct __ecereNameSpace__ecere__sys__OldList * expressions;
852 struct Identifier * id;
853 struct Statement * stmt;
854 } ecere_gcc_struct labeled;
857 struct Expression * exp;
858 struct Statement * stmt;
859 } ecere_gcc_struct caseStmt;
862 struct __ecereNameSpace__ecere__sys__OldList * declarations;
863 struct __ecereNameSpace__ecere__sys__OldList * statements;
864 struct Context * context;
865 unsigned int isSwitch;
866 } ecere_gcc_struct compound;
869 struct __ecereNameSpace__ecere__sys__OldList * exp;
870 struct Statement * stmt;
871 struct Statement * elseStmt;
872 } ecere_gcc_struct ifStmt;
875 struct __ecereNameSpace__ecere__sys__OldList * exp;
876 struct Statement * stmt;
877 } ecere_gcc_struct switchStmt;
880 struct __ecereNameSpace__ecere__sys__OldList * exp;
881 struct Statement * stmt;
882 } ecere_gcc_struct whileStmt;
885 struct __ecereNameSpace__ecere__sys__OldList * exp;
886 struct Statement * stmt;
887 } ecere_gcc_struct doWhile;
890 struct Statement * init;
891 struct Statement * check;
892 struct __ecereNameSpace__ecere__sys__OldList * increment;
893 struct Statement * stmt;
894 } ecere_gcc_struct forStmt;
897 struct Identifier * id;
898 } ecere_gcc_struct gotoStmt;
901 struct Specifier * spec;
903 struct __ecereNameSpace__ecere__sys__OldList * inputFields;
904 struct __ecereNameSpace__ecere__sys__OldList * outputFields;
905 struct __ecereNameSpace__ecere__sys__OldList * clobberedFields;
906 } ecere_gcc_struct asmStmt;
909 struct Expression * watcher;
910 struct Expression * object;
911 struct __ecereNameSpace__ecere__sys__OldList * watches;
912 } ecere_gcc_struct _watch;
915 struct Identifier * id;
916 struct __ecereNameSpace__ecere__sys__OldList * exp;
917 struct __ecereNameSpace__ecere__sys__OldList * filter;
918 struct Statement * stmt;
919 } ecere_gcc_struct forEachStmt;
920 struct Declaration * decl;
921 } ecere_gcc_struct __anon1;
924 extern struct Statement * MkCaseStmt(struct Expression * exp, struct Statement * statement);
926 extern struct Statement * MkBadDeclStmt(struct Declaration * decl);
928 extern struct Statement * MkCompoundStmt(struct __ecereNameSpace__ecere__sys__OldList * declarations, struct __ecereNameSpace__ecere__sys__OldList * statements);
930 extern struct Statement * MkExpressionStmt(struct __ecereNameSpace__ecere__sys__OldList * expressions);
932 extern struct Statement * MkIfStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement, struct Statement * elseStmt);
934 extern struct Statement * MkSwitchStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
936 extern struct Statement * MkWhileStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
938 extern struct Statement * MkDoWhileStmt(struct Statement * statement, struct __ecereNameSpace__ecere__sys__OldList * exp);
940 extern struct Statement * MkForStmt(struct Statement * init, struct Statement * check, struct __ecereNameSpace__ecere__sys__OldList * inc, struct Statement * statement);
942 extern struct Statement * MkGotoStmt(struct Identifier * id);
944 extern struct Statement * MkContinueStmt(void);
946 extern struct Statement * MkBreakStmt(void);
948 extern struct Statement * MkReturnStmt(struct __ecereNameSpace__ecere__sys__OldList * exp);
950 extern void ProcessClassFunctionBody(struct ClassFunction * func, struct Statement * body);
952 struct Instantiation;
954 extern void FreeInstance(struct Instantiation * inst);
958 struct Expression * prev;
959 struct Expression * next;
967 struct Identifier * identifier;
968 } ecere_gcc_struct __anon1;
969 struct Statement * compound;
970 struct Instantiation * instance;
974 unsigned int intlString;
975 unsigned int wideString;
976 } ecere_gcc_struct __anon2;
977 struct __ecereNameSpace__ecere__sys__OldList * list;
980 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
981 struct Declarator * decl;
982 } ecere_gcc_struct _classExp;
985 struct Identifier * id;
986 } ecere_gcc_struct classData;
989 struct Expression * exp;
990 struct __ecereNameSpace__ecere__sys__OldList * arguments;
991 struct Location argLoc;
992 } ecere_gcc_struct call;
995 struct Expression * exp;
996 struct __ecereNameSpace__ecere__sys__OldList * index;
997 } ecere_gcc_struct index;
1000 struct Expression * exp;
1001 struct Identifier * member;
1003 unsigned int thisPtr;
1004 } ecere_gcc_struct member;
1008 struct Expression * exp1;
1009 struct Expression * exp2;
1010 } ecere_gcc_struct op;
1011 struct TypeName * typeName;
1012 struct Specifier * _class;
1015 struct TypeName * typeName;
1016 struct Expression * exp;
1017 } ecere_gcc_struct cast;
1020 struct Expression * cond;
1021 struct __ecereNameSpace__ecere__sys__OldList * exp;
1022 struct Expression * elseExp;
1023 } ecere_gcc_struct cond;
1026 struct TypeName * typeName;
1027 struct Expression * size;
1028 } ecere_gcc_struct _new;
1031 struct TypeName * typeName;
1032 struct Expression * size;
1033 struct Expression * exp;
1034 } ecere_gcc_struct _renew;
1038 struct Identifier * id;
1039 } ecere_gcc_struct db;
1042 struct Expression * ds;
1043 struct Expression * name;
1044 } ecere_gcc_struct dbopen;
1047 struct TypeName * typeName;
1048 struct Initializer * initializer;
1049 } ecere_gcc_struct initializer;
1052 struct Expression * exp;
1053 struct TypeName * typeName;
1054 } ecere_gcc_struct vaArg;
1057 struct TypeName * typeName;
1058 struct Identifier * id;
1059 } ecere_gcc_struct offset;
1060 } ecere_gcc_struct __anon1;
1061 unsigned int debugValue;
1062 struct __ecereNameSpace__ecere__com__DataValue val;
1064 unsigned int hasAddress;
1065 struct Type * expType;
1066 struct Type * destType;
1069 unsigned int byReference;
1070 unsigned int isConstant;
1071 unsigned int addedThis;
1072 unsigned int needCast;
1073 unsigned int thisPtr;
1074 unsigned int opDestType;
1075 unsigned int needTemplateCast;
1078 extern struct Expression * MkExpInstance(struct Instantiation * inst);
1082 struct Declaration * prev;
1083 struct Declaration * next;
1084 struct Location loc;
1090 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
1091 struct __ecereNameSpace__ecere__sys__OldList * declarators;
1092 } ecere_gcc_struct __anon1;
1093 struct Instantiation * inst;
1096 struct Identifier * id;
1097 struct Expression * exp;
1098 } ecere_gcc_struct __anon2;
1099 } ecere_gcc_struct __anon1;
1100 struct Specifier * extStorage;
1101 struct Symbol * symbol;
1105 extern struct Declaration * MkDeclarationInst(struct Instantiation * inst);
1107 extern struct Declaration * MkDeclarationClassInst(struct Instantiation * inst);
1109 extern struct Instantiation * MkInstantiationNamed(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
1111 struct Instantiation
1113 struct Instantiation * prev;
1114 struct Instantiation * next;
1115 struct Location loc;
1116 struct Specifier * _class;
1117 struct Expression * exp;
1118 struct __ecereNameSpace__ecere__sys__OldList * members;
1119 struct Symbol * symbol;
1120 unsigned int fullSet;
1121 unsigned int isConstant;
1122 unsigned char * data;
1123 struct Location nameLoc;
1124 struct Location insideLoc;
1128 extern struct Instantiation * MkInstantiation(struct Specifier * _class, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
1132 typedef union YYSTYPE
1137 struct Identifier * id;
1138 struct Expression * exp;
1139 struct Specifier * specifier;
1140 struct __ecereNameSpace__ecere__sys__OldList * list;
1141 struct Enumerator * enumerator;
1142 struct Declarator * declarator;
1143 struct Pointer * pointer;
1144 struct Initializer * initializer;
1145 struct InitDeclarator * initDeclarator;
1146 struct TypeName * typeName;
1147 struct Declaration * declaration;
1148 struct Statement * stmt;
1149 struct FunctionDefinition * function;
1150 struct External * external;
1151 struct Context * context;
1152 struct AsmField * asmField;
1153 struct Attrib * attrib;
1154 struct ExtDecl * extDecl;
1155 struct Attribute * attribute;
1156 struct Instantiation * instance;
1157 struct MembersInit * membersInit;
1158 struct MemberInit * memberInit;
1159 struct ClassFunction * classFunction;
1160 struct ClassDefinition * _class;
1161 struct ClassDef * classDef;
1162 struct PropertyDef * prop;
1164 struct Symbol * symbol;
1165 struct PropertyWatch * propertyWatch;
1166 struct TemplateParameter * templateParameter;
1167 struct TemplateArgument * templateArgument;
1168 struct TemplateDatatype * templateDatatype;
1169 struct DBTableEntry * dbtableEntry;
1170 struct DBIndexItem * dbindexItem;
1171 struct DBTableDef * dbtableDef;
1172 } ecere_gcc_struct YYSTYPE;
1174 extern YYSTYPE yylval;
1178 yytype_int16 yyss_alloc;
1180 struct Location yyls_alloc;
1183 static void yy_symbol_value_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1187 ((void)(yylocationp));
1196 extern void FreeMembersInit(struct MembersInit * init);
1198 YYSTYPE type_yylval;
1200 extern struct MembersInit * MkMembersInitList(struct __ecereNameSpace__ecere__sys__OldList * dataMembers);
1204 struct MembersInit * prev;
1205 struct MembersInit * next;
1206 struct Location loc;
1210 struct __ecereNameSpace__ecere__sys__OldList * dataMembers;
1211 struct ClassFunction * function;
1212 } ecere_gcc_struct __anon1;
1215 extern struct MembersInit * MkMembersInitMethod(struct ClassFunction * function);
1217 static void yy_symbol_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1220 fprintf(yyoutput, "token %s (", yytname[yytype]);
1222 fprintf(yyoutput, "nterm %s (", yytname[yytype]);
1224 fprintf(yyoutput, ": ");
1225 yy_symbol_value_print(yyoutput, yytype, yyvaluep, yylocationp);
1226 fprintf(yyoutput, ")");
1229 static void yy_reduce_print(YYSTYPE * yyvsp, struct Location * yylsp, int yyrule)
1231 int yynrhs = yyr2[yyrule];
1233 unsigned long int yylno = yyrline[yyrule];
1235 fprintf((bsl_stderr()), "Reducing stack by rule %d (line %lu):\n", yyrule - 1, yylno);
1236 for(yyi = 0; yyi < yynrhs; yyi++)
1238 fprintf((bsl_stderr()), " $%d = ", yyi + 1);
1239 yy_symbol_print((bsl_stderr()), yyrhs[yyprhs[yyrule] + yyi], &(yyvsp[(yyi + 1) - (yynrhs)]), &(yylsp[(yyi + 1) - (yynrhs)]));
1240 fprintf((bsl_stderr()), "\n");
1244 struct __ecereNameSpace__ecere__sys__BinaryTree;
1246 struct __ecereNameSpace__ecere__sys__BinaryTree
1248 struct __ecereNameSpace__ecere__sys__BTNode * root;
1250 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
1251 void (* FreeKey)(void * key);
1254 struct __ecereNameSpace__ecere__com__Method;
1256 struct __ecereNameSpace__ecere__com__Method
1259 struct __ecereNameSpace__ecere__com__Method * parent;
1260 struct __ecereNameSpace__ecere__com__Method * left;
1261 struct __ecereNameSpace__ecere__com__Method * right;
1266 struct __ecereNameSpace__ecere__com__Class * _class;
1268 const char * dataTypeString;
1269 struct Type * dataType;
1273 struct __ecereNameSpace__ecere__com__NameSpace;
1275 struct __ecereNameSpace__ecere__com__NameSpace
1278 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
1279 struct __ecereNameSpace__ecere__com__NameSpace * left;
1280 struct __ecereNameSpace__ecere__com__NameSpace * right;
1282 struct __ecereNameSpace__ecere__com__NameSpace * parent;
1283 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
1284 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
1285 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
1286 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
1289 struct __ecereNameSpace__ecere__com__Application
1292 const char * * argv;
1294 unsigned int isGUIApp;
1295 struct __ecereNameSpace__ecere__sys__OldList allModules;
1296 char * parsedCommand;
1297 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
1300 struct __ecereNameSpace__ecere__com__DataMember;
1302 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
1308 const char * dataTypeString;
1309 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
1310 } ecere_gcc_struct __anon1;
1311 struct __ecereNameSpace__ecere__com__DataValue expression;
1314 const char * memberString;
1317 struct __ecereNameSpace__ecere__com__DataMember * member;
1318 struct __ecereNameSpace__ecere__com__Property * prop;
1319 struct __ecereNameSpace__ecere__com__Method * method;
1320 } ecere_gcc_struct __anon1;
1321 } ecere_gcc_struct __anon2;
1322 } ecere_gcc_struct __anon1;
1325 struct __ecereNameSpace__ecere__com__DataMember
1327 struct __ecereNameSpace__ecere__com__DataMember * prev;
1328 struct __ecereNameSpace__ecere__com__DataMember * next;
1330 unsigned int isProperty;
1333 struct __ecereNameSpace__ecere__com__Class * _class;
1334 const char * dataTypeString;
1335 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
1336 struct Type * dataType;
1340 struct __ecereNameSpace__ecere__sys__OldList members;
1341 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
1343 short structAlignment;
1344 short pointerAlignment;
1347 struct __ecereNameSpace__ecere__com__Module;
1349 struct __ecereNameSpace__ecere__com__Module
1351 struct __ecereNameSpace__ecere__com__Instance * application;
1352 struct __ecereNameSpace__ecere__sys__OldList classes;
1353 struct __ecereNameSpace__ecere__sys__OldList defines;
1354 struct __ecereNameSpace__ecere__sys__OldList functions;
1355 struct __ecereNameSpace__ecere__sys__OldList modules;
1356 struct __ecereNameSpace__ecere__com__Instance * prev;
1357 struct __ecereNameSpace__ecere__com__Instance * next;
1363 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
1364 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
1367 struct __ecereNameSpace__ecere__com__Class
1369 struct __ecereNameSpace__ecere__com__Class * prev;
1370 struct __ecereNameSpace__ecere__com__Class * next;
1376 unsigned int (* Constructor)(void * );
1377 void (* Destructor)(void * );
1380 struct __ecereNameSpace__ecere__com__Class * base;
1381 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
1382 struct __ecereNameSpace__ecere__sys__BinaryTree members;
1383 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
1384 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
1385 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
1386 struct __ecereNameSpace__ecere__sys__OldList derivatives;
1390 struct __ecereNameSpace__ecere__com__Instance * module;
1391 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
1392 const char * dataTypeString;
1393 struct Type * dataType;
1395 int defaultAlignment;
1396 void (* Initialize)();
1398 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
1399 const char * designerClass;
1400 unsigned int noExpansion;
1401 const char * defaultProperty;
1402 unsigned int comRedefinition;
1405 unsigned int internalDecl;
1407 unsigned int computeSize;
1408 short structAlignment;
1409 short pointerAlignment;
1410 int destructionWatchOffset;
1412 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
1413 int inheritanceAccess;
1414 const char * fullName;
1416 struct __ecereNameSpace__ecere__sys__OldList conversions;
1417 struct __ecereNameSpace__ecere__sys__OldList templateParams;
1418 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
1419 struct __ecereNameSpace__ecere__com__Class * templateClass;
1420 struct __ecereNameSpace__ecere__sys__OldList templatized;
1422 unsigned int isInstanceClass;
1423 unsigned int byValueSystemClass;
1426 void __ecereRegisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
1428 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
1432 void __ecereUnregisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
1437 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
1439 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__File;
1441 static void yydestruct(const char * yymsg, int yytype, YYSTYPE * yyvaluep, struct Location * yylocationp)
1444 ((void)(yylocationp));
1451 fprintf((bsl_stderr()), "%s ", yymsg);
1452 yy_symbol_print((bsl_stderr()), yytype, yyvaluep, yylocationp);
1453 fprintf((bsl_stderr()), "\n");
1460 FreeSpecifier((*yyvaluep).specifier);
1466 FreeSpecifier((*yyvaluep).specifier);
1472 FreeSpecifier((*yyvaluep).specifier);
1478 FreeSpecifier((*yyvaluep).specifier);
1484 FreeClassFunction((*yyvaluep).classFunction);
1490 FreeClassFunction((*yyvaluep).classFunction);
1496 FreeClassFunction((*yyvaluep).classFunction);
1502 FreeClassFunction((*yyvaluep).classFunction);
1508 FreeIdentifier((*yyvaluep).id);
1514 FreeExpression((*yyvaluep).exp);
1520 FreeExpression((*yyvaluep).exp);
1526 FreeList((*yyvaluep).list, (void *)(FreeExpression));
1532 FreeExpression((*yyvaluep).exp);
1538 FreeExpression((*yyvaluep).exp);
1544 FreeExpression((*yyvaluep).exp);
1550 FreeExpression((*yyvaluep).exp);
1556 FreeExpression((*yyvaluep).exp);
1562 FreeExpression((*yyvaluep).exp);
1568 FreeExpression((*yyvaluep).exp);
1574 FreeExpression((*yyvaluep).exp);
1580 FreeExpression((*yyvaluep).exp);
1586 FreeExpression((*yyvaluep).exp);
1592 FreeExpression((*yyvaluep).exp);
1598 FreeExpression((*yyvaluep).exp);
1604 FreeExpression((*yyvaluep).exp);
1610 FreeExpression((*yyvaluep).exp);
1616 FreeList((*yyvaluep).list, (void *)(FreeExpression));
1622 FreeExpression((*yyvaluep).exp);
1628 FreeDeclaration((*yyvaluep).declaration);
1634 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1640 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1646 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1652 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1658 FreeList((*yyvaluep).list, (void *)(FreeInitDeclarator));
1664 FreeInitDeclarator((*yyvaluep).initDeclarator);
1670 FreeSpecifier((*yyvaluep).specifier);
1676 FreeExtDecl((*yyvaluep).extDecl);
1682 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
1688 FreeAttribute((*yyvaluep).attribute);
1694 FreeList((*yyvaluep).list, (void *)(FreeAttribute));
1700 FreeAttrib((*yyvaluep).attrib);
1706 FreeSpecifier((*yyvaluep).specifier);
1712 FreeSpecifier((*yyvaluep).specifier);
1718 FreeSpecifier((*yyvaluep).specifier);
1724 FreeSpecifier((*yyvaluep).specifier);
1730 FreeSpecifier((*yyvaluep).specifier);
1736 FreeSpecifier((*yyvaluep).specifier);
1742 FreeTemplateDataType((*yyvaluep).templateDatatype);
1748 FreeTemplateArgument((*yyvaluep).templateArgument);
1754 FreeTemplateArgument((*yyvaluep).templateArgument);
1760 FreeTemplateArgument((*yyvaluep).templateArgument);
1766 FreeList((*yyvaluep).list, (void *)(FreeClassDef));
1772 FreeMemberInit((*yyvaluep).memberInit);
1778 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
1784 FreeProperty((*yyvaluep).prop);
1790 FreeClassDef((*yyvaluep).classDef);
1796 FreeList((*yyvaluep).list, (void *)(FreeDeclarator));
1802 FreeDeclarator((*yyvaluep).declarator);
1808 FreeSpecifier((*yyvaluep).specifier);
1814 FreeSpecifier((*yyvaluep).specifier);
1820 FreeList((*yyvaluep).list, (void *)(FreeEnumerator));
1826 FreeEnumerator((*yyvaluep).enumerator);
1832 FreeDeclarator((*yyvaluep).declarator);
1838 FreeDeclarator((*yyvaluep).declarator);
1844 FreeDeclarator((*yyvaluep).declarator);
1850 FreeDeclarator((*yyvaluep).declarator);
1856 FreeDeclarator((*yyvaluep).declarator);
1862 FreeDeclarator((*yyvaluep).declarator);
1868 FreeDeclarator((*yyvaluep).declarator);
1874 FreeDeclarator((*yyvaluep).declarator);
1880 FreeDeclarator((*yyvaluep).declarator);
1886 FreeDeclarator((*yyvaluep).declarator);
1892 FreeDeclarator((*yyvaluep).declarator);
1898 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1904 FreePointer((*yyvaluep).pointer);
1910 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1916 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1922 FreeTypeName((*yyvaluep).typeName);
1928 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1934 FreeTypeName((*yyvaluep).typeName);
1940 FreeTypeName((*yyvaluep).typeName);
1946 FreeInitializer((*yyvaluep).initializer);
1952 FreeInitializer((*yyvaluep).initializer);
1958 FreeList((*yyvaluep).list, (void *)(FreeInitializer));
1964 FreeStatement((*yyvaluep).stmt);
1970 FreeStatement((*yyvaluep).stmt);
1976 FreeList((*yyvaluep).list, (void *)(FreeDeclaration));
1982 FreeList((*yyvaluep).list, (void *)(FreeStatement));
1988 FreeStatement((*yyvaluep).stmt);
1994 PopContext((*yyvaluep).context);
1995 FreeContext((*yyvaluep).context);
1996 (((*yyvaluep).context ? (__ecereClass_Context->Destructor ? __ecereClass_Context->Destructor((void *)(*yyvaluep).context) : 0, __ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).context)) : 0), (*yyvaluep).context = 0);
2002 FreeStatement((*yyvaluep).stmt);
2008 FreeStatement((*yyvaluep).stmt);
2014 FreeStatement((*yyvaluep).stmt);
2020 FreeStatement((*yyvaluep).stmt);
2026 FreeStatement((*yyvaluep).stmt);
2032 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
2038 FreeInstance((*yyvaluep).instance);
2044 FreeInstance((*yyvaluep).instance);
2050 FreeClassFunction((*yyvaluep).classFunction);
2056 FreeClassFunction((*yyvaluep).classFunction);
2062 FreeClassFunction((*yyvaluep).classFunction);
2068 FreeMemberInit((*yyvaluep).memberInit);
2074 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
2080 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
2086 FreeList((*yyvaluep).list, (void *)(FreeMembersInit));
2092 FreeList((*yyvaluep).list, (void *)(FreeMembersInit));
2101 int type_yyparse(void)
2105 yytype_int16 yyssa[200];
2106 yytype_int16 * yyss;
2107 yytype_int16 * yyssp;
2111 struct Location yylsa[200];
2112 struct Location * yyls;
2113 struct Location * yylsp;
2114 struct Location yyerror_range[2];
2120 struct Location yyloc;
2131 fprintf((bsl_stderr()), "Starting parse\n");
2145 if(yyss + yystacksize - 1 <= yyssp)
2147 size_t yysize = yyssp - yyss + 1;
2149 if(10000 <= yystacksize)
2150 goto yyexhaustedlab;
2152 if(10000 < yystacksize)
2153 yystacksize = 10000;
2155 yytype_int16 * yyss1 = yyss;
2156 union yyalloc * yyptr = (union yyalloc *)malloc(((yystacksize) * (sizeof(yytype_int16) + sizeof(YYSTYPE) + sizeof(struct Location)) + 2 * (sizeof(union yyalloc) - 1)));
2159 goto yyexhaustedlab;
2164 __builtin_memcpy(&(*yyptr).yyss_alloc, yyss, (yysize) * sizeof (*(yyss)));
2165 yyss = &(*yyptr).yyss_alloc;
2166 yynewbytes = yystacksize * sizeof (*yyss) + (sizeof(union yyalloc) - 1);
2167 yyptr += yynewbytes / sizeof (*yyptr);
2173 __builtin_memcpy(&(*yyptr).yyvs_alloc, yyvs, (yysize) * sizeof (*(yyvs)));
2174 yyvs = &(*yyptr).yyvs_alloc;
2175 yynewbytes = yystacksize * sizeof (*yyvs) + (sizeof(union yyalloc) - 1);
2176 yyptr += yynewbytes / sizeof (*yyptr);
2182 __builtin_memcpy(&(*yyptr).yyls_alloc, yyls, (yysize) * sizeof (*(yyls)));
2183 yyls = &(*yyptr).yyls_alloc;
2184 yynewbytes = yystacksize * sizeof (*yyls) + (sizeof(union yyalloc) - 1);
2185 yyptr += yynewbytes / sizeof (*yyptr);
2190 yyssp = yyss + yysize - 1;
2191 yyvsp = yyvs + yysize - 1;
2192 yylsp = yyls + yysize - 1;
2196 fprintf((bsl_stderr()), "Stack size increased to %lu\n", (unsigned long int)yystacksize);
2198 if(yyss + yystacksize - 1 <= yyssp)
2204 fprintf((bsl_stderr()), "Entering state %d\n", yystate);
2210 yyn = yypact[yystate];
2213 if(type_yychar == (-2))
2218 fprintf((bsl_stderr()), "Reading a token: ");
2220 type_yychar = yylex();
2222 if(type_yychar <= 0)
2224 type_yychar = yytoken = 0;
2228 fprintf((bsl_stderr()), "Now at end of input.\n");
2233 yytoken = ((unsigned int)(type_yychar) <= 374 ? yytranslate[type_yychar] : 2);
2238 fprintf((bsl_stderr()), "%s ", "Next token is");
2239 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2240 fprintf((bsl_stderr()), "\n");
2245 if(yyn < 0 || 9303 < yyn || yycheck[yyn] != yytoken)
2250 if(yyn == 0 || yyn == -497)
2261 fprintf((bsl_stderr()), "%s ", "Shifting");
2262 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2263 fprintf((bsl_stderr()), "\n");
2268 *++yyvsp = type_yylval;
2269 *++yylsp = type_yylloc;
2272 yyn = yydefact[yystate];
2278 yyval = yyvsp[1 - yylen];
2279 (yyloc.start = ((yylsp - yylen))[1].start);
2280 (yyloc.end = ((yylsp - yylen))[yylen].end);
2285 yy_reduce_print(yyvsp, yylsp, yyn);
2291 yyval.specifier = (((void *)0));
2292 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2293 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2294 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2296 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2297 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2298 resetScannerPos(&(yylsp[(1) - (2)]).start);
2299 (type_yychar = (-2));
2300 FreeIdentifier(yyvsp[(1) - (2)].id);
2301 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2306 yy_stack_print((yyss), (yyssp));
2308 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2313 yy_stack_print((yyss), (yyssp));
2321 yyval.specifier = (((void *)0));
2322 _DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2323 FreeIdentifier(yyvsp[(1) - (2)].id);
2324 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2325 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2327 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2328 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2329 resetScannerPos(&(yylsp[(1) - (2)]).start);
2330 (type_yychar = (-2));
2331 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2336 yy_stack_print((yyss), (yyssp));
2338 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2343 yy_stack_print((yyss), (yyssp));
2351 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2352 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2353 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2355 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2356 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2357 parseTypeError = (unsigned int)0;
2358 resetScannerPos(&(yylsp[(1) - (2)]).start);
2359 (type_yychar = (-2));
2360 FreeIdentifier(yyvsp[(1) - (2)].id);
2361 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2366 yy_stack_print((yyss), (yyssp));
2368 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2373 yy_stack_print((yyss), (yyssp));
2381 yyval.specifier = yyvsp[(1) - (1)].specifier;
2387 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2388 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2389 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2391 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2392 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2393 resetScannerPos(&(yylsp[(1) - (2)]).start);
2394 (type_yychar = (-2));
2395 FreeIdentifier(yyvsp[(1) - (2)].id);
2396 FreeIdentifier(yyvsp[(2) - (2)].id);
2397 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2402 yy_stack_print((yyss), (yyssp));
2404 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2409 yy_stack_print((yyss), (yyssp));
2417 yyval.specifier = MkSpecifierName(yytext);
2423 yyval.specifier = yyvsp[(1) - (4)].specifier;
2424 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2425 yyval.specifier->loc = (yyloc);
2431 yyval.specifier = yyvsp[(1) - (4)].specifier;
2432 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2433 yyval.specifier->loc = (yyloc);
2434 (yylsp[(4) - (4)]).end.pos--;
2435 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2436 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2438 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2439 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(4) - (4)]).end.pos, 0);
2440 resetScannerPos(&(yylsp[(4) - (4)]).end);
2441 (type_yychar = (-2));
2447 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2448 yyval.classFunction->loc = (yyloc);
2454 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(1) - (1)].declarator, (((void *)0)));
2455 yyval.classFunction->loc = (yyloc);
2461 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2462 yyval.classFunction->isConstructor = 1;
2463 yyval.classFunction->loc = (yyloc);
2464 FreeList(yyvsp[(1) - (3)].list, (void *)(FreeSpecifier));
2470 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2471 yyval.classFunction->isDestructor = 1;
2472 yyval.classFunction->loc = (yyloc);
2473 FreeList(yyvsp[(2) - (4)].list, (void *)(FreeSpecifier));
2479 yyval.classFunction = MkClassFunction(yyvsp[(2) - (3)].list, (((void *)0)), yyvsp[(3) - (3)].declarator, (((void *)0)));
2480 yyval.classFunction->isVirtual = 1;
2481 yyval.classFunction->loc = (yyloc);
2487 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2488 yyval.classFunction->isVirtual = 1;
2489 yyval.classFunction->loc = (yyloc);
2495 yyval.id = MkIdentifier(yytext);
2496 yyval.id->loc = (yylsp[(1) - (1)]);
2502 yyval.exp = MkExpBrackets(yyvsp[(2) - (3)].list);
2503 yyval.exp->loc = (yyloc);
2509 yyval.exp = MkExpIdentifier(yyvsp[(1) - (1)].id);
2510 yyval.exp->loc = (yyloc);
2516 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2517 yyval.exp->loc = (yyloc);
2523 yyval.exp = MkExpConstant(yytext);
2524 yyval.exp->loc = (yyloc);
2530 yyval.exp = MkExpWideString(yytext);
2531 yyval.exp->loc = (yyloc);
2537 yyval.exp = MkExpString(yyvsp[(1) - (1)].string);
2538 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(1) - (1)].string), yyvsp[(1) - (1)].string = 0);
2539 yyval.exp->loc = (yyloc);
2545 yyval.exp = MkExpIntlString(yyvsp[(2) - (2)].string, (((void *)0)));
2546 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (2)].string), yyvsp[(2) - (2)].string = 0);
2547 yyval.exp->loc = (yyloc);
2553 yyval.exp = MkExpIntlString(yyvsp[(4) - (4)].string, yyvsp[(2) - (4)].string);
2554 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (4)].string), yyvsp[(2) - (4)].string = 0);
2555 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(4) - (4)].string), yyvsp[(4) - (4)].string = 0);
2556 yyval.exp->loc = (yyloc);
2562 struct Expression * exp = MkExpDummy();
2564 exp->loc.start = (yylsp[(1) - (2)]).end;
2565 exp->loc.end = (yylsp[(2) - (2)]).start;
2566 yyval.exp = MkExpBrackets(MkListOne(exp));
2567 yyval.exp->loc = (yyloc);
2574 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2575 yyval.exp->loc = (yyloc);
2581 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2582 yyval.exp->loc = (yyloc);
2588 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2589 yyval.exp->loc = (yyloc);
2595 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2596 yyval.exp->loc = (yyloc);
2602 yyval.exp = MkExpRenew(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2603 yyval.exp->loc = (yyloc);
2609 yyval.exp = MkExpRenew(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2610 yyval.exp->loc = (yyloc);
2616 yyval.exp = MkExpRenew0(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2617 yyval.exp->loc = (yyloc);
2623 yyval.exp = MkExpRenew0(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2624 yyval.exp->loc = (yyloc);
2630 yyval.exp = MkExpDummy();
2636 yyval.exp = MkExpIndex(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2637 yyval.exp->loc = (yyloc);
2643 yyval.exp = MkExpCall(yyvsp[(1) - (3)].exp, MkList());
2644 yyval.exp->__anon1.call.argLoc.start = (yylsp[(2) - (3)]).start;
2645 yyval.exp->__anon1.call.argLoc.end = (yylsp[(3) - (3)]).end;
2646 yyval.exp->loc = (yyloc);
2652 yyval.exp = MkExpCall(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2653 yyval.exp->__anon1.call.argLoc.start = (yylsp[(2) - (4)]).start;
2654 yyval.exp->__anon1.call.argLoc.end = (yylsp[(4) - (4)]).end;
2655 yyval.exp->loc = (yyloc);
2661 yyval.exp = MkExpMember(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2662 yyval.exp->loc = (yyloc);
2668 char * constant = yyvsp[(1) - (2)].exp->type == 2 ? yyvsp[(1) - (2)].exp->__anon1.__anon1.constant : (((void *)0));
2669 int len = constant ? strlen(constant) : 0;
2671 if(constant && constant[len - 1] == '.')
2673 constant[len - 1] = 0;
2674 yyval.exp = MkExpMember(yyvsp[(1) - (2)].exp, yyvsp[(2) - (2)].id);
2675 yyval.exp->loc = (yyloc);
2684 yyval.exp = MkExpPointer(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2685 yyval.exp->loc = (yyloc);
2691 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, INC_OP, (((void *)0)));
2692 yyval.exp->loc = (yyloc);
2698 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, DEC_OP, (((void *)0)));
2699 yyval.exp->loc = (yyloc);
2705 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2706 yyval.exp->loc = (yyloc);
2712 yyval.list = MkList();
2713 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2719 yyval.list = MkList();
2720 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2726 yyval.list = yyvsp[(1) - (3)].list;
2727 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2733 yyval.list = yyvsp[(1) - (3)].list;
2734 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2740 yyval.exp = MkExpOp((((void *)0)), INC_OP, yyvsp[(2) - (2)].exp);
2741 yyval.exp->loc = (yyloc);
2747 yyval.exp = MkExpOp((((void *)0)), DEC_OP, yyvsp[(2) - (2)].exp);
2748 yyval.exp->loc = (yyloc);
2754 yyval.exp = MkExpOp((((void *)0)), yyvsp[(1) - (2)].i, yyvsp[(2) - (2)].exp);
2755 yyval.exp->loc = (yyloc);
2761 yyval.exp = MkExpOp((((void *)0)), SIZEOF, yyvsp[(2) - (2)].exp);
2762 yyval.exp->loc = (yyloc);
2768 yyval.exp = MkExpTypeSize(yyvsp[(3) - (4)].typeName);
2769 yyval.exp->loc = (yyloc);
2775 yyval.exp = MkExpOp((((void *)0)), ALIGNOF, yyvsp[(2) - (2)].exp);
2776 yyval.exp->loc = (yyloc);
2782 yyval.exp = MkExpTypeAlign(yyvsp[(3) - (4)].typeName);
2783 yyval.exp->loc = (yyloc);
2831 yyval.exp = MkExpCast(yyvsp[(2) - (4)].typeName, yyvsp[(4) - (4)].exp);
2832 yyval.exp->loc = (yyloc);
2838 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '*', yyvsp[(3) - (3)].exp);
2839 yyval.exp->loc = (yyloc);
2845 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '/', yyvsp[(3) - (3)].exp);
2846 yyval.exp->loc = (yyloc);
2852 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '%', yyvsp[(3) - (3)].exp);
2853 yyval.exp->loc = (yyloc);
2859 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '+', yyvsp[(3) - (3)].exp);
2860 yyval.exp->loc = (yyloc);
2866 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '-', yyvsp[(3) - (3)].exp);
2867 yyval.exp->loc = (yyloc);
2873 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LEFT_OP, yyvsp[(3) - (3)].exp);
2874 yyval.exp->loc = (yyloc);
2880 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, RIGHT_OP, yyvsp[(3) - (3)].exp);
2881 yyval.exp->loc = (yyloc);
2887 yyval.exp = yyvsp[(1) - (2)].exp;
2895 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, '<', yyvsp[(2) - (2)].exp);
2896 yyval.exp->loc = (yyloc);
2902 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '>', yyvsp[(3) - (3)].exp);
2903 yyval.exp->loc = (yyloc);
2909 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LE_OP, yyvsp[(3) - (3)].exp);
2910 yyval.exp->loc = (yyloc);
2916 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, GE_OP, yyvsp[(3) - (3)].exp);
2917 yyval.exp->loc = (yyloc);
2923 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, EQ_OP, yyvsp[(3) - (3)].exp);
2924 yyval.exp->loc = (yyloc);
2930 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, NE_OP, yyvsp[(3) - (3)].exp);
2931 yyval.exp->loc = (yyloc);
2937 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '&', yyvsp[(3) - (3)].exp);
2938 yyval.exp->loc = (yyloc);
2944 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '^', yyvsp[(3) - (3)].exp);
2945 yyval.exp->loc = (yyloc);
2951 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '|', yyvsp[(3) - (3)].exp);
2952 yyval.exp->loc = (yyloc);
2958 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, AND_OP, yyvsp[(3) - (3)].exp);
2959 yyval.exp->loc = (yyloc);
2965 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, OR_OP, yyvsp[(3) - (3)].exp);
2966 yyval.exp->loc = (yyloc);
2972 yyval.exp = MkExpCondition(yyvsp[(1) - (5)].exp, yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].exp);
2973 yyval.exp->loc = (yyloc);
2979 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
2980 yyval.exp->loc = (yyloc);
2986 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
2987 yyval.exp->loc = (yyloc);
2999 yyval.i = MUL_ASSIGN;
3005 yyval.i = DIV_ASSIGN;
3011 yyval.i = MOD_ASSIGN;
3017 yyval.i = ADD_ASSIGN;
3023 yyval.i = SUB_ASSIGN;
3029 yyval.i = LEFT_ASSIGN;
3035 yyval.i = RIGHT_ASSIGN;
3041 yyval.i = AND_ASSIGN;
3047 yyval.i = XOR_ASSIGN;
3053 yyval.i = OR_ASSIGN;
3059 yyval.list = MkList();
3060 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
3066 yyval.list = yyvsp[(1) - (3)].list;
3067 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
3073 yyval.declaration = MkDeclaration(yyvsp[(1) - (2)].list, (((void *)0)));
3074 yyval.declaration->loc = (yyloc);
3080 yyval.declaration = MkDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list);
3081 yyval.declaration->loc = (yyloc);
3087 yyval.declaration = MkDeclarationInst(yyvsp[(1) - (2)].instance);
3088 yyval.declaration->loc = (yyloc);
3094 yyval.declaration = MkDeclarationDefine(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].exp);
3095 yyval.declaration->loc = (yyloc);
3101 yyval.list = MkList();
3102 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3108 yyval.list = yyvsp[(1) - (2)].list;
3109 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3115 yyval.list = MkList();
3116 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3122 yyval.list = yyvsp[(1) - (2)].list;
3123 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3129 yyval.list = MkList();
3130 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3136 yyval.list = yyvsp[(1) - (2)].list;
3137 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3143 yyval.list = MkList();
3144 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3150 yyval.list = yyvsp[(1) - (2)].list;
3151 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3157 yyval.list = MkList();
3158 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3164 yyval.list = yyvsp[(1) - (2)].list;
3165 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3171 yyval.list = MkList();
3172 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3178 yyval.list = yyvsp[(1) - (2)].list;
3179 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3185 yyval.list = MkList();
3186 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3192 yyval.list = yyvsp[(1) - (2)].list;
3193 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3199 yyval.list = MkList();
3200 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3206 yyval.list = yyvsp[(1) - (2)].list;
3207 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3213 yyval.list = MkList();
3214 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3220 yyval.list = yyvsp[(1) - (2)].list;
3221 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3227 yyval.list = MkList();
3228 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3234 yyval.list = yyvsp[(1) - (2)].list;
3235 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3241 yyval.list = MkList();
3242 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3248 yyval.list = yyvsp[(1) - (2)].list;
3249 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3255 yyval.list = MkList();
3256 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3262 yyval.list = yyvsp[(1) - (2)].list;
3263 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3269 yyval.list = MkList();
3270 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3276 yyval.list = yyvsp[(1) - (2)].list;
3277 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3283 yyval.list = MkList();
3284 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3290 yyval.list = yyvsp[(1) - (2)].list;
3291 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3297 yyval.list = MkList();
3298 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3304 yyval.list = yyvsp[(1) - (2)].list;
3305 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3311 yyval.list = MkList();
3312 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3318 yyval.list = yyvsp[(1) - (2)].list;
3319 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3325 yyval.list = MkList();
3326 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3332 yyval.list = yyvsp[(1) - (2)].list;
3333 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3339 yyval.list = MkList();
3340 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3346 yyval.list = yyvsp[(1) - (2)].list;
3347 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3353 yyval.list = MkList();
3354 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3360 yyval.list = yyvsp[(1) - (2)].list;
3361 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3367 yyval.list = MkList();
3368 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3374 yyval.list = yyvsp[(1) - (2)].list;
3375 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3381 yyval.list = yyvsp[(1) - (1)].list;
3387 yyval.list = MkList();
3388 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3394 yyval.list = MkList();
3395 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3401 yyval.list = yyvsp[(1) - (2)].list;
3402 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3408 yyval.list = MkList();
3409 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3415 yyval.list = yyvsp[(1) - (2)].list;
3416 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3422 yyval.list = MkList();
3423 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3429 yyval.list = yyvsp[(1) - (2)].list;
3430 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3436 yyval.list = MkList();
3437 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3438 FreeIdentifier(yyvsp[(1) - (1)].id);
3444 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3445 FreeIdentifier(yyvsp[(2) - (2)].id);
3451 _DeclClass(yyvsp[(1) - (4)].id->_class, yyvsp[(1) - (4)].id->string);
3452 yyval.list = MkList();
3453 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3454 FreeIdentifier(yyvsp[(1) - (4)].id);
3460 _DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
3461 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3462 FreeIdentifier(yyvsp[(2) - (5)].id);
3468 yyval.list = MkList();
3469 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3475 yyval.list = yyvsp[(1) - (2)].list;
3476 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3482 yyval.list = MkList();
3483 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3489 yyval.list = yyvsp[(1) - (2)].list;
3490 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3496 yyval.list = MkList();
3497 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3503 yyval.list = yyvsp[(1) - (2)].list;
3504 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3510 yyval.list = MkList();
3511 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3517 yyval.list = yyvsp[(1) - (2)].list;
3518 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3524 yyval.list = MkList();
3525 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3531 yyval.list = yyvsp[(1) - (2)].list;
3532 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3538 yyval.list = MkList();
3539 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3540 FreeIdentifier(yyvsp[(1) - (1)].id);
3546 yyval.list = yyvsp[(1) - (2)].list;
3547 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3548 FreeIdentifier(yyvsp[(2) - (2)].id);
3553 _DeclClass(yyvsp[(1) - (4)].id->_class, yyvsp[(1) - (4)].id->string);
3554 yyval.list = MkList();
3555 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3556 FreeIdentifier(yyvsp[(1) - (4)].id);
3562 _DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
3563 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3564 FreeIdentifier(yyvsp[(2) - (5)].id);
3570 yyval.list = MkList();
3571 ListAdd(yyval.list, yyvsp[(1) - (1)].initDeclarator);
3577 yyval.list = yyvsp[(1) - (3)].list;
3578 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initDeclarator);
3584 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
3585 yyval.initDeclarator->loc = (yyloc);
3591 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].initializer);
3592 yyval.initDeclarator->loc = (yyloc);
3593 yyval.initDeclarator->initializer->loc.start = (yylsp[(2) - (3)]).end;
3599 yyval.specifier = MkSpecifier(TYPEDEF);
3605 yyval.specifier = MkSpecifier(EXTERN);
3611 yyval.specifier = MkSpecifier(STATIC);
3617 yyval.specifier = MkSpecifier(AUTO);
3623 yyval.specifier = MkSpecifier(REGISTER);
3629 yyval.specifier = MkSpecifier(THREAD);
3635 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
3641 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
3647 yyval.extDecl = MkExtDeclAttrib(yyvsp[(1) - (1)].attrib);
3659 yyval.i = ATTRIB_DEP;
3671 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3677 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3683 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3689 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3695 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3701 yyval.attribute = MkAttribute(yyvsp[(1) - (1)].string, (((void *)0)));
3702 yyval.attribute->loc = (yyloc);
3708 yyval.attribute = MkAttribute(yyvsp[(1) - (4)].string, MkExpBrackets(yyvsp[(3) - (4)].list));
3709 yyval.attribute->loc = (yyloc);
3715 yyval.list = MkListOne(yyvsp[(1) - (1)].attribute);
3721 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].attribute);
3722 yyval.list = yyvsp[(1) - (2)].list;
3728 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].attribute);
3729 yyval.list = yyvsp[(1) - (3)].list;
3735 yyval.attrib = MkAttrib(yyvsp[(1) - (6)].i, yyvsp[(4) - (6)].list);
3736 yyval.attrib->loc = (yyloc);
3742 yyval.attrib = MkAttrib(yyvsp[(1) - (5)].i, (((void *)0)));
3743 yyval.attrib->loc = (yyloc);
3749 yyval.specifier = MkSpecifierExtended(yyvsp[(1) - (1)].extDecl);
3755 yyval.specifier = MkSpecifier(CONST);
3761 yyval.specifier = MkSpecifier(VOLATILE);
3767 yyval.specifier = yyvsp[(1) - (1)].specifier;
3773 yyval.specifier = MkSpecifier(VOID);
3779 yyval.specifier = MkSpecifier(CHAR);
3785 yyval.specifier = MkSpecifier(SHORT);
3791 yyval.specifier = MkSpecifier(INT);
3797 yyval.specifier = MkSpecifier(UINT);
3803 yyval.specifier = MkSpecifier(INT64);
3809 yyval.specifier = MkSpecifier(VALIST);
3815 yyval.specifier = MkSpecifier(LONG);
3821 yyval.specifier = MkSpecifier(FLOAT);
3827 yyval.specifier = MkSpecifier(DOUBLE);
3833 yyval.specifier = MkSpecifier(SIGNED);
3839 yyval.specifier = MkSpecifier(UNSIGNED);
3845 yyval.specifier = MkSpecifier(EXTENSION);
3851 yyval.specifier = MkSpecifier(_BOOL);
3857 yyval.specifier = MkSpecifier(BOOL);
3863 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
3869 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
3875 _DeclClass(yyvsp[(3) - (4)].id->_class, yyvsp[(3) - (4)].id->string);
3876 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
3877 FreeIdentifier(yyvsp[(3) - (4)].id);
3883 yyval.specifier = MkSpecifier(THISCLASS);
3889 yyval.specifier = MkSpecifier(TYPED_OBJECT);
3895 yyval.specifier = MkSpecifier(ANY_OBJECT);
3901 yyval.specifier = MkSpecifier(VOID);
3907 yyval.specifier = MkSpecifier(CHAR);
3913 yyval.specifier = MkSpecifier(SHORT);
3919 yyval.specifier = MkSpecifier(INT);
3925 yyval.specifier = MkSpecifier(UINT);
3931 yyval.specifier = MkSpecifier(INT64);
3937 yyval.specifier = MkSpecifier(VALIST);
3943 yyval.specifier = MkSpecifier(LONG);
3949 yyval.specifier = MkSpecifier(FLOAT);
3955 yyval.specifier = MkSpecifier(DOUBLE);
3961 yyval.specifier = MkSpecifier(SIGNED);
3967 yyval.specifier = MkSpecifier(UNSIGNED);
3973 yyval.specifier = MkSpecifier(EXTENSION);
3979 yyval.specifier = MkSpecifier(_BOOL);
3985 yyval.specifier = MkSpecifier(BOOL);
3991 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
3997 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
4003 _DeclClass(yyvsp[(3) - (4)].id->_class, yyvsp[(3) - (4)].id->string);
4004 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
4005 FreeIdentifier(yyvsp[(3) - (4)].id);
4011 yyval.specifier = MkSpecifier(THISCLASS);
4017 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4019 DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
4025 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), yyvsp[(3) - (4)].list);
4031 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, yyvsp[(2) - (4)].id, (((void *)0)));
4033 DeclClass(yyvsp[(2) - (4)].id->_class, yyvsp[(2) - (4)].id->string);
4039 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, (((void *)0)), (((void *)0)));
4045 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, MkIdentifier(yyvsp[(2) - (5)].specifier->__anon1.__anon1.name), yyvsp[(4) - (5)].list);
4047 DeclClass(yyvsp[(2) - (5)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (5)].specifier->__anon1.__anon1.name);
4048 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4054 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, yyvsp[(3) - (6)].id, yyvsp[(5) - (6)].list);
4055 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (6)].extDecl;
4057 DeclClass(yyvsp[(3) - (6)].id->_class, yyvsp[(3) - (6)].id->string);
4063 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, (((void *)0)), yyvsp[(4) - (5)].list);
4064 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (5)].extDecl;
4070 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(3) - (5)].id, (((void *)0)));
4071 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (5)].extDecl;
4073 DeclClass(yyvsp[(3) - (5)].id->_class, yyvsp[(3) - (5)].id->string);
4079 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), (((void *)0)));
4080 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (4)].extDecl;
4086 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, MkIdentifier(yyvsp[(3) - (6)].specifier->__anon1.__anon1.name), yyvsp[(5) - (6)].list);
4087 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (6)].extDecl;
4089 DeclClass(yyvsp[(3) - (6)].specifier->__anon1.__anon1.nsSpec, yyvsp[(3) - (6)].specifier->__anon1.__anon1.name);
4090 FreeSpecifier(yyvsp[(3) - (6)].specifier);
4096 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, yyvsp[(2) - (2)].id, (((void *)0)));
4098 DeclClass(yyvsp[(2) - (2)].id->_class, yyvsp[(2) - (2)].id->string);
4104 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, MkIdentifier(yyvsp[(2) - (2)].specifier->__anon1.__anon1.name), (((void *)0)));
4106 DeclClass(yyvsp[(2) - (2)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (2)].specifier->__anon1.__anon1.name);
4107 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4113 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, yyvsp[(3) - (3)].id, (((void *)0)));
4114 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (3)].extDecl;
4116 DeclClass(yyvsp[(3) - (3)].id->_class, yyvsp[(3) - (3)].id->string);
4122 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, MkIdentifier(yyvsp[(3) - (3)].specifier->__anon1.__anon1.name), (((void *)0)));
4123 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (3)].extDecl;
4125 DeclClass(yyvsp[(3) - (3)].specifier->__anon1.__anon1.nsSpec, yyvsp[(3) - (3)].specifier->__anon1.__anon1.name);
4126 FreeSpecifier(yyvsp[(3) - (3)].specifier);
4132 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0)));
4138 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4144 yyval.templateArgument = MkTemplateTypeArgument(MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0))));
4150 yyval.templateArgument = MkTemplateTypeArgument(MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator));
4156 yyval.templateArgument = MkTemplateExpressionArgument(yyvsp[(1) - (1)].exp);
4162 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4163 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4164 yyval.templateArgument->loc = (yyloc);
4170 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4171 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4172 yyval.templateArgument->loc = (yyloc);
4178 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4179 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4181 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4184 yyval.templateArgument->name = MkIdentifier(spec->__anon1.__anon1.name);
4186 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4187 yyval.templateArgument->loc = (yyloc);
4193 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4194 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4196 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4199 yyval.templateArgument->name = MkIdentifier(spec->__anon1.__anon1.name);
4201 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4202 yyval.templateArgument->loc = (yyloc);
4208 yyval.list = MkList();
4209 ListAdd(yyval.list, yyvsp[(1) - (1)].templateArgument);
4215 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].templateArgument);
4221 yyval.specifierType = 3;
4227 yyval.specifierType = 4;
4233 yyval.list = MkList();
4234 ListAdd(yyval.list, yyvsp[(1) - (1)].classDef);
4240 yyval.list = yyvsp[(1) - (2)].list;
4241 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].classDef);
4247 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
4248 yyval.memberInit->loc = (yyloc);
4249 yyval.memberInit->realLoc = (yyloc);
4255 yyval.list = MkList();
4256 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
4257 ((struct MemberInit *)(*yyval.list).last)->loc = (yyloc);
4263 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
4264 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
4265 yyval.list = yyvsp[(1) - (3)].list;
4271 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4272 yyval.prop->loc = (yyloc);
4278 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4279 yyval.prop->loc = (yyloc);
4285 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, yyvsp[(6) - (7)].stmt, (((void *)0)));
4286 yyval.prop->loc = (yyloc);
4292 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, (((void *)0)), yyvsp[(6) - (7)].stmt);
4293 yyval.prop->loc = (yyloc);
4299 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, (((void *)0)), yyvsp[(3) - (5)].id, (((void *)0)), (((void *)0)));
4300 yyval.prop->loc = (yyloc);
4306 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(7) - (10)].stmt, yyvsp[(9) - (10)].stmt);
4307 yyval.prop->loc = (yyloc);
4313 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(9) - (10)].stmt, yyvsp[(7) - (10)].stmt);
4314 yyval.prop->loc = (yyloc);
4320 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, yyvsp[(7) - (8)].stmt, (((void *)0)));
4321 yyval.prop->loc = (yyloc);
4327 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, (((void *)0)), yyvsp[(7) - (8)].stmt);
4328 yyval.prop->loc = (yyloc);
4334 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator, yyvsp[(4) - (6)].id, (((void *)0)), (((void *)0)));
4335 yyval.prop->loc = (yyloc);
4341 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (8)].stmt, yyvsp[(7) - (8)].stmt);
4342 yyval.prop->loc = (yyloc);
4348 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(7) - (8)].stmt, yyvsp[(5) - (8)].stmt);
4349 yyval.prop->loc = (yyloc);
4355 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt, (((void *)0)));
4356 yyval.prop->loc = (yyloc);
4362 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt);
4363 yyval.prop->loc = (yyloc);
4369 yyval.prop = MkProperty(yyvsp[(2) - (4)].list, (((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
4370 yyval.prop->loc = (yyloc);
4376 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4377 yyval.prop->loc = (yyloc);
4383 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4384 yyval.prop->loc = (yyloc);
4390 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), yyvsp[(6) - (7)].stmt, (((void *)0)));
4391 yyval.prop->loc = (yyloc);
4397 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), (((void *)0)), yyvsp[(6) - (7)].stmt);
4398 yyval.prop->loc = (yyloc);
4404 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, yyvsp[(3) - (5)].declarator, (((void *)0)), (((void *)0)), (((void *)0)));
4405 yyval.prop->loc = (yyloc);
4411 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list, (((void *)0))));
4412 yyval.classDef->__anon1.decl->loc = (yyloc);
4413 yyval.classDef->loc = (yyloc);
4419 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (2)].list, (((void *)0)), (((void *)0))));
4420 yyval.classDef->__anon1.decl->loc = (yyloc);
4421 yyval.classDef->loc = (yyloc);
4427 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4428 yyval.classDef->loc = (yyloc);
4429 yyval.classDef->__anon1.decl->loc = (yyloc);
4435 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4436 yyval.classDef->loc = (yyloc);
4437 yyval.classDef->__anon1.decl->loc = (yyloc);
4443 yyval.classDef = MkClassDefFunction(yyvsp[(1) - (1)].classFunction);
4444 yyval.classDef->loc = (yyloc);
4450 yyval.classDef = MkClassDefDefaultProperty(yyvsp[(1) - (2)].list);
4451 if((*yyvsp[(1) - (2)].list).last)
4452 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).start;
4453 yyval.classDef->loc = (yyloc);
4459 yyval.classDef = MkClassDefProperty(yyvsp[(1) - (1)].prop);
4460 yyval.classDef->loc = (yyloc);
4466 yyval.classDef = (((void *)0));
4472 yyval.list = MkList();
4473 ListAdd(yyval.list, yyvsp[(1) - (1)].declarator);
4479 yyval.list = yyvsp[(1) - (3)].list;
4480 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].declarator);
4486 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
4487 yyval.declarator->loc = (yyloc);
4493 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (2)].declarator, (((void *)0)));
4494 yyval.declarator->__anon1.structDecl.attrib = yyvsp[(2) - (2)].attrib;
4495 yyval.declarator->loc = (yyloc);
4501 yyval.declarator = MkStructDeclarator((((void *)0)), yyvsp[(2) - (2)].exp);
4502 yyval.declarator->loc = (yyloc);
4508 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].exp);
4509 yyval.declarator->loc = (yyloc);
4515 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (5)].declarator, yyvsp[(3) - (5)].exp);
4516 yyval.declarator->__anon1.structDecl.posExp = yyvsp[(5) - (5)].exp;
4517 yyval.declarator->loc = (yyloc);
4523 yyval.specifier = MkEnum(yyvsp[(2) - (2)].id, (((void *)0)));
4525 DeclClass(yyvsp[(2) - (2)].id->_class, yyvsp[(2) - (2)].id->string);
4531 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (2)].specifier->__anon1.__anon1.name), (((void *)0)));
4533 DeclClass(yyvsp[(2) - (2)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (2)].specifier->__anon1.__anon1.name);
4534 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4540 yyval.specifier = MkEnum((((void *)0)), yyvsp[(3) - (4)].list);
4546 yyval.specifier = MkEnum(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4548 DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
4554 yyval.specifier = MkEnum(yyvsp[(2) - (7)].id, yyvsp[(4) - (7)].list);
4555 yyval.specifier->__anon1.__anon2.definitions = yyvsp[(6) - (7)].list;
4557 DeclClass(yyvsp[(2) - (7)].id->_class, yyvsp[(2) - (7)].id->string);
4563 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (7)].specifier->__anon1.__anon1.name), yyvsp[(4) - (7)].list);
4564 yyval.specifier->__anon1.__anon2.definitions = yyvsp[(6) - (7)].list;
4566 DeclClass(yyvsp[(2) - (7)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (7)].specifier->__anon1.__anon1.name);
4567 FreeSpecifier(yyvsp[(2) - (7)].specifier);
4573 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (5)].specifier->__anon1.__anon1.name), yyvsp[(4) - (5)].list);
4575 DeclClass(yyvsp[(2) - (5)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (5)].specifier->__anon1.__anon1.name);
4576 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4582 yyval.list = MkList();
4583 ListAdd(yyval.list, yyvsp[(1) - (1)].enumerator);
4589 yyval.list = yyvsp[(1) - (3)].list;
4590 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].enumerator);
4596 yyval.enumerator = MkEnumerator(yyvsp[(1) - (1)].id, (((void *)0)));
4602 yyval.enumerator = MkEnumerator(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].exp);
4608 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4614 yyval.declarator = MkDeclaratorArray((((void *)0)), (((void *)0)));
4620 yyval.declarator = MkDeclaratorArray((((void *)0)), yyvsp[(2) - (3)].exp);
4626 yyval.declarator = MkDeclaratorEnumArray((((void *)0)), yyvsp[(2) - (3)].specifier);
4632 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4638 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4644 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4650 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4656 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4662 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4668 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4674 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4680 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4686 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4692 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4698 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4704 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4710 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4716 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4722 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4728 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4734 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4740 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4746 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4752 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4758 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4764 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4770 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4776 yyval.declarator = MkDeclaratorExtendedEnd(yyvsp[(2) - (2)].extDecl, yyvsp[(1) - (2)].declarator);
4782 yyval.declarator = MkDeclaratorIdentifier(yyvsp[(1) - (1)].id);
4788 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4794 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4800 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4806 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4812 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4818 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4824 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4830 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4836 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4842 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4848 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (2)].declarator, (((void *)0)));
4854 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4860 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4866 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4872 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4878 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4884 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4890 yyval.list = MkList();
4891 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
4897 yyval.list = yyvsp[(1) - (2)].list;
4898 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
4904 yyval.pointer = MkPointer((((void *)0)), (((void *)0)));
4910 yyval.pointer = MkPointer(yyvsp[(2) - (2)].list, (((void *)0)));
4916 yyval.pointer = MkPointer((((void *)0)), yyvsp[(2) - (2)].pointer);
4922 yyval.pointer = MkPointer(yyvsp[(2) - (3)].list, yyvsp[(3) - (3)].pointer);
4928 yyval.list = yyvsp[(1) - (3)].list;
4929 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), (((void *)0))));
4935 yyval.list = MkList();
4936 ListAdd(yyval.list, yyvsp[(1) - (1)].typeName);
4942 yyval.list = yyvsp[(1) - (3)].list;
4943 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].typeName);
4949 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4955 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4961 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), (((void *)0))));
4967 yyval.typeName = MkTypeName(yyvsp[(1) - (3)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), yyvsp[(3) - (3)].declarator));
4973 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
4979 yyval.typeName = MkTypeName(MkListOne(MkSpecifier(CLASS)), (((void *)0)));
4985 yyval.list = MkList();
4986 ListAdd(yyval.list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(1) - (1)].id)));
4992 yyval.list = yyvsp[(1) - (3)].list;
4993 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(3) - (3)].id)));
4999 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5005 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5011 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5017 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5023 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5024 yyval.initializer->loc = (yyloc);
5030 yyval.initializer = MkInitializerList(yyvsp[(2) - (3)].list);
5031 yyval.initializer->loc = (yyloc);
5037 yyval.initializer = MkInitializerList(yyvsp[(2) - (4)].list);
5038 yyval.initializer->loc = (yyloc);
5040 struct Expression * exp = MkExpDummy();
5041 struct Initializer * init = MkInitializerAssignment(exp);
5043 init->loc = (yylsp[(3) - (4)]);
5044 exp->loc = (yylsp[(3) - (4)]);
5045 ListAdd(yyvsp[(2) - (4)].list, init);
5052 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5053 yyval.initializer->loc = (yyloc);
5059 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5060 yyval.initializer->loc = (yyloc);
5066 yyval.list = MkList();
5067 ListAdd(yyval.list, yyvsp[(1) - (1)].initializer);
5073 yyval.list = yyvsp[(1) - (3)].list;
5074 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initializer);
5080 yyval.stmt = MkLabeledStmt(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].stmt);
5081 yyval.stmt->loc = (yyloc);
5087 yyval.stmt = MkCaseStmt(yyvsp[(2) - (4)].exp, yyvsp[(4) - (4)].stmt);
5088 yyval.stmt->loc = (yyloc);
5089 yyvsp[(2) - (4)].exp->loc.start = (yylsp[(1) - (4)]).end;
5095 yyval.stmt = MkCaseStmt((((void *)0)), yyvsp[(3) - (3)].stmt);
5096 yyval.stmt->loc = (yyloc);
5102 yyval.list = MkList();
5103 ListAdd(yyval.list, yyvsp[(1) - (1)].declaration);
5109 yyval.list = yyvsp[(1) - (2)].list;
5110 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declaration);
5116 yyval.list = MkList();
5117 ListAdd(yyval.list, yyvsp[(1) - (1)].stmt);
5123 yyval.list = yyvsp[(1) - (2)].list;
5124 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].stmt);
5130 struct Statement * stmt = MkBadDeclStmt(yyvsp[(2) - (2)].declaration);
5132 stmt->loc = (yylsp[(2) - (2)]);
5133 ListAdd(yyvsp[(1) - (2)].list, stmt);
5134 yyval.list = yyvsp[(1) - (2)].list;
5140 yyval.stmt = MkCompoundStmt((((void *)0)), yyvsp[(1) - (1)].list);
5146 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (1)].list, (((void *)0)));
5152 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].list);
5158 yyval.context = PushContext();
5164 yyval.stmt = MkCompoundStmt((((void *)0)), (((void *)0)));
5165 yyval.stmt->__anon1.compound.context = PushContext();
5166 PopContext(yyval.stmt->__anon1.compound.context);
5167 yyval.stmt->loc = (yyloc);
5173 yyval.stmt = yyvsp[(2) - (3)].stmt;
5174 yyval.stmt->__anon1.compound.context = yyvsp[(1) - (3)].context;
5175 PopContext(yyvsp[(1) - (3)].context);
5176 yyval.stmt->loc = (yyloc);
5182 yyval.stmt = MkExpressionStmt((((void *)0)));
5183 yyval.stmt->loc = (yyloc);
5189 yyval.stmt = MkExpressionStmt(yyvsp[(1) - (2)].list);
5190 yyval.stmt->loc = (yyloc);
5196 yyval.stmt = MkIfStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt, (((void *)0)));
5197 yyval.stmt->loc = (yyloc);
5203 yyval.stmt = MkIfStmt(yyvsp[(3) - (7)].list, yyvsp[(5) - (7)].stmt, yyvsp[(7) - (7)].stmt);
5204 yyval.stmt->loc = (yyloc);
5210 yyval.stmt = MkSwitchStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5211 yyval.stmt->loc = (yyloc);
5217 yyval.stmt = MkWhileStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5218 yyval.stmt->loc = (yyloc);
5224 yyval.stmt = MkDoWhileStmt(yyvsp[(2) - (7)].stmt, yyvsp[(5) - (7)].list);
5225 yyval.stmt->loc = (yyloc);
5231 yyval.stmt = MkForStmt(yyvsp[(3) - (6)].stmt, yyvsp[(4) - (6)].stmt, (((void *)0)), yyvsp[(6) - (6)].stmt);
5232 yyval.stmt->loc = (yyloc);
5238 yyval.stmt = MkForStmt(yyvsp[(3) - (7)].stmt, yyvsp[(4) - (7)].stmt, yyvsp[(5) - (7)].list, yyvsp[(7) - (7)].stmt);
5239 yyval.stmt->loc = (yyloc);
5245 yyval.stmt = MkWhileStmt((((void *)0)), yyvsp[(4) - (4)].stmt);
5246 yyval.stmt->loc = (yyloc);
5252 yyval.stmt = MkForStmt(yyvsp[(3) - (5)].stmt, (((void *)0)), (((void *)0)), yyvsp[(5) - (5)].stmt);
5253 yyval.stmt->loc = (yyloc);
5259 yyval.stmt = MkForStmt((((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(4) - (4)].stmt);
5260 yyval.stmt->loc = (yyloc);
5266 yyval.stmt = MkGotoStmt(yyvsp[(2) - (3)].id);
5267 yyval.stmt->loc = (yyloc);
5273 yyval.stmt = MkContinueStmt();
5274 yyval.stmt->loc = (yyloc);
5280 yyval.stmt = MkBreakStmt();
5281 yyval.stmt->loc = (yyloc);
5287 struct Expression * exp = MkExpDummy();
5289 yyval.stmt = MkReturnStmt(MkListOne(exp));
5290 yyval.stmt->loc = (yyloc);
5291 exp->loc = (yylsp[(2) - (2)]);
5297 yyval.stmt = MkReturnStmt(yyvsp[(2) - (3)].list);
5298 yyval.stmt->loc = (yyloc);
5304 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
5310 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5311 yyval.instance->loc = (yyloc);
5312 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5313 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5314 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5320 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5321 yyval.instance->loc = (yyloc);
5322 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5323 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5324 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5330 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5331 yyval.instance->loc = (yyloc);
5332 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5333 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5334 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5340 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5341 yyval.instance->loc = (yyloc);
5342 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5343 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5344 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5350 yyval.instance = MkInstantiation(yyvsp[(1) - (4)].specifier, (((void *)0)), yyvsp[(3) - (4)].list);
5351 yyval.instance->loc = (yyloc);
5352 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5353 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5359 yyval.instance = MkInstantiation(yyvsp[(1) - (3)].specifier, (((void *)0)), MkList());
5360 yyval.instance->loc = (yyloc);
5361 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5362 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5368 struct Location tmpLoc = type_yylloc;
5370 type_yylloc = (yylsp[(1) - (4)]);
5371 type_yylloc = tmpLoc;
5372 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (4)].id->string), (((void *)0)), yyvsp[(3) - (4)].list);
5373 yyval.instance->loc = (yyloc);
5374 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5375 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5376 FreeIdentifier(yyvsp[(1) - (4)].id);
5382 struct Location tmpLoc = type_yylloc;
5384 type_yylloc = (yylsp[(1) - (3)]);
5385 type_yylloc = tmpLoc;
5386 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (3)].id->string), (((void *)0)), MkList());
5387 yyval.instance->loc = (yyloc);
5388 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5389 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5390 FreeIdentifier(yyvsp[(1) - (3)].id);
5396 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), yyvsp[(2) - (3)].list);
5397 yyval.instance->loc = (yyloc);
5398 yyval.instance->insideLoc.start = (yylsp[(1) - (3)]).end;
5399 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5405 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), MkList());
5406 yyval.instance->loc = (yyloc);
5407 yyval.instance->insideLoc.start = (yylsp[(1) - (2)]).end;
5408 yyval.instance->insideLoc.end = (yylsp[(2) - (2)]).start;
5414 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5415 yyval.classFunction->loc = (yyloc);
5421 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5422 yyval.classFunction->loc = (yyloc);
5428 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, (((void *)0)));
5429 yyval.classFunction->loc = (yyloc);
5435 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5436 yyval.classFunction->loc = (yyloc);
5442 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5443 yyval.classFunction->loc = (yyloc);
5449 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5450 yyval.classFunction->loc = (yyloc);
5456 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5457 yyval.classFunction->loc = (yyloc);
5463 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5464 yyval.classFunction->loc = (yyloc);
5470 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
5471 yyval.memberInit->loc = (yyloc);
5472 yyval.memberInit->realLoc = (yyloc);
5473 yyval.memberInit->initializer->loc.start = (yylsp[(2) - (3)]).end;
5479 yyval.memberInit = MkMemberInit((((void *)0)), yyvsp[(1) - (1)].initializer);
5480 yyval.memberInit->loc = (yyloc);
5481 yyval.memberInit->realLoc = (yyloc);
5487 yyval.list = MkList();
5488 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
5494 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
5495 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
5496 yyval.list = yyvsp[(1) - (3)].list;
5502 if((*yyvsp[(1) - (2)].list).last)
5503 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).end;
5504 yyval.list = yyvsp[(1) - (2)].list;
5510 struct MembersInit * members = MkMembersInitList(yyvsp[(1) - (1)].list);
5512 yyval.list = MkList();
5513 ListAdd(yyval.list, members);
5514 members->loc = (yylsp[(1) - (1)]);
5520 yyval.list = MkList();
5521 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(1) - (1)].classFunction));
5522 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5528 struct MembersInit * members = MkMembersInitList(yyvsp[(2) - (2)].list);
5530 ListAdd(yyval.list, members);
5531 members->loc = (yylsp[(2) - (2)]);
5532 yyval.list = yyvsp[(1) - (2)].list;
5538 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(2) - (2)].classFunction));
5539 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5540 yyval.list = yyvsp[(1) - (2)].list;
5546 struct MembersInit * members = MkMembersInitList(MkList());
5548 yyval.list = MkList();
5549 ListAdd(yyval.list, members);
5550 members->loc = (yylsp[(1) - (1)]);
5556 struct MembersInit * members = MkMembersInitList(MkList());
5558 ListAdd(yyval.list, members);
5559 members->loc = (yylsp[(2) - (2)]);
5560 yyval.list = yyvsp[(1) - (2)].list;
5566 yyval.list = MkList();
5567 ListAdd(yyval.list, MkMembersInitList(yyvsp[(1) - (1)].list));
5568 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5574 ListAdd(yyvsp[(1) - (2)].list, MkMembersInitList(yyvsp[(2) - (2)].list));
5575 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5581 parsedType = yyvsp[(1) - (1)].typeName;
5587 parsedType = yyvsp[(1) - (3)].typeName;
5588 parsedType->bitCount = yyvsp[(3) - (3)].exp;
5599 fprintf((bsl_stderr()), "%s ", "-> $$ =");
5600 yy_symbol_print((bsl_stderr()), yyr1[yyn], &yyval, &yyloc);
5601 fprintf((bsl_stderr()), "\n");
5604 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5609 yy_stack_print((yyss), (yyssp));
5614 yystate = yypgoto[yyn - 145] + *yyssp;
5615 if(0 <= yystate && yystate <= 9303 && yycheck[yystate] == *yyssp)
5616 yystate = yytable[yystate];
5618 yystate = yydefgoto[yyn - 145];
5624 yyerror("syntax error");
5626 yyerror_range[0] = type_yylloc;
5627 if(yyerrstatus == 3)
5629 if(type_yychar <= 0)
5631 if(type_yychar == 0)
5636 yydestruct("Error: discarding", yytoken, &type_yylval, &type_yylloc);
5644 yyerror_range[0] = yylsp[1 - yylen];
5645 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5650 yy_stack_print((yyss), (yyssp));
5658 yyn = yypact[yystate];
5662 if(0 <= yyn && yyn <= 9303 && yycheck[yyn] == 1)
5671 yyerror_range[0] = *yylsp;
5672 yydestruct("Error: popping", yystos[yystate], yyvsp, yylsp);
5673 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
5678 yy_stack_print((yyss), (yyssp));
5681 *++yyvsp = type_yylval;
5682 yyerror_range[1] = type_yylloc;
5683 (yyloc.start = ((yyerror_range - 1))[1].start);
5684 (yyloc.end = ((yyerror_range - 1))[2].end);
5691 fprintf((bsl_stderr()), "%s ", "Shifting");
5692 yy_symbol_print((bsl_stderr()), yystos[yyn], yyvsp, yylsp);
5693 fprintf((bsl_stderr()), "\n");
5705 yyerror("memory exhausted");
5708 if(type_yychar != (-2))
5709 yydestruct("Cleanup: discarding lookahead", yytoken, &type_yylval, &type_yylloc);
5710 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5714 yy_stack_print((yyss), (yyssp));
5716 while(yyssp != yyss)
5718 yydestruct("Cleanup: popping", yystos[*yyssp], yyvsp, yylsp);
5719 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));