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
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, 133, 2, 2, 125, 135, 130, 2, 122, 123, 119, 131, 129, 132, 126, 134, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 139, 141, 120, 140, 121, 138, 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, 127, 2, 128, 136, 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, 142, 137, 143, 124, 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
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 266, 0, -1, 154, 119, -1, 154, 120, -1, 154, 1, -1, 149, -1, 154, 154, -1, 28, -1, 148, -1, 148, 120, 207, 121, -1, 148, 120, 207, 11, -1, 184, 226, -1, 226, -1, 184, 122, 123, -1, 124, 184, 122, 123, -1, 78, 184, 226, -1, 78, 226, -1, 3, -1, 156, -1, 122, 178, 123, -1, 154, -1, 256, -1, 4, -1, 118, -1, 253, -1, 125, 253, -1, 125, 253, 126, 253, -1, 122, 123, -1, 71, 184, 223, 127, 179, 128, -1, 71, 184, 127, 179, 128, -1, 102, 184, 223, 127, 179, 128, -1, 102, 184, 127, 179, 128, -1, 72, 179, 187, 223, 127, 179, 128, -1, 72, 179, 187, 127, 179, 128, -1, 103, 179, 187, 223, 127, 179, 128, -1, 103, 179, 187, 127, 179, 128, -1, 1, -1, 155, -1, 157, 127, 178, 128, -1, 157, 122, 123, -1, 157, 122, 159, 123, -1, 157, 126, 154, -1, 157, 154, -1, 157, 7, 154, -1, 157, 8, -1, 157, 9, -1, 257, -1, 176, -1, 158, -1, 159, 129, 176, -1, 159, 129, 158, -1, 8, 161, -1, 9, 161, -1, 162, 163, -1, 6, 161, -1, 6, 122, 238, 123, -1, 109, 161, -1, 109, 122, 238, 123, -1, 160, -1, 157, -1, 130, -1, 119, -1, 131, -1, 132, -1, 124, -1, 133, -1, 73, -1, 161, -1, 122, 237, 123, 163, -1, 163, -1, 164, 119, 163, -1, 164, 134, 163, -1, 164, 135, 163, -1, 164, -1, 165, 131, 164, -1, 165, 132, 164, -1, 165, -1, 166, 10, 165, -1, 166, 11, 165, -1, 168, 120, -1, 166, -1, 167, 166, -1, 168, 121, 166, -1, 168, 12, 166, -1, 168, 13, 166, -1, 168, -1, 169, 14, 168, -1, 169, 15, 168, -1, 169, -1, 170, 130, 169, -1, 170, -1, 171, 136, 170, -1, 171, -1, 172, 137, 171, -1, 172, -1, 173, 16, 172, -1, 173, -1, 174, 17, 173, -1, 174, -1, 174, 138, 178, 139, 175, -1, 175, -1, 161, 177, 176, -1, 161, 177, 158, -1, 140, -1, 18, -1, 19, -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, 176, -1, 178, 129, 176, -1, 175, -1, 183, 141, -1, 183, 188, 141, -1, 254, 141, -1, 77, 154, 140, 179, 141, -1, 198, -1, 181, 198, -1, 199, -1, 181, 199, -1, 217, -1, 181, 217, -1, 201, -1, 181, 201, -1, 198, -1, 182, 198, -1, 199, -1, 182, 199, -1, 145, -1, 182, 145, -1, 217, -1, 182, 217, -1, 201, -1, 182, 201, -1, 190, -1, 183, 190, -1, 198, -1, 183, 198, -1, 199, -1, 183, 199, -1, 217, -1, 183, 217, -1, 201, -1, 183, 201, -1, 190, -1, 184, 190, -1, 198, -1, 184, 198, -1, 199, -1, 184, 199, -1, 145, -1, 184, 145, -1, 201, -1, 184, 201, -1, 217, -1, 184, 217, -1, 184, -1, 146, -1, 190, -1, 186, 190, -1, 198, -1, 186, 198, -1, 200, -1, 186, 200, -1, 154, -1, 186, 154, -1, 154, 120, 207, 121, -1, 186, 154, 120, 207, 121, -1, 190, -1, 187, 190, -1, 198, -1, 187, 198, -1, 200, -1, 187, 200, -1, 201, -1, 187, 201, -1, 217, -1, 187, 217, -1, 154, -1, 187, 154, -1, 154, 120, 207, 121, -1, 187, 154, 120, 207, 121, -1, 189, -1, 188, 129, 189, -1, 224, -1, 224, 140, 239, -1, 29, -1, 30, -1, 31, -1, 32, -1, 33, -1, 117, -1, 74, -1, 75, -1, 196, -1, 79, -1, 110, -1, 111, -1, 3, -1, 28, -1, 75, -1, 74, -1, 44, -1, 193, -1, 193, 122, 178, 123, -1, 194, -1, 195, 194, -1, 195, 129, 194, -1, 192, 122, 122, 195, 123, 123, -1, 192, 122, 122, 123, 123, -1, 191, -1, 44, -1, 45, -1, 197, -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, 202, -1, 216, -1, 147, -1, 87, 122, 176, 123, -1, 100, 122, 147, 123, -1, 100, 122, 154, 123, -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, 202, -1, 216, -1, 149, -1, 87, 122, 176, 123, -1, 100, 122, 147, 123, -1, 100, 122, 154, 123, -1, 66, -1, 208, 154, 142, 209, 143, -1, 208, 142, 209, 143, -1, 208, 154, 142, 143, -1, 208, 142, 143, -1, 208, 148, 142, 209, 143, -1, 208, 191, 154, 142, 209, 143, -1, 208, 191, 142, 209, 143, -1, 208, 191, 154, 142, 143, -1, 208, 191, 142, 143, -1, 208, 191, 149, 142, 209, 143, -1, 208, 154, -1, 208, 149, -1, 208, 191, 154, -1, 208, 191, 149, -1, 184, -1, 184, 222, -1, 184, -1, 184, 222, -1, 166, -1, 205, -1, 204, -1, 154, 140, 205, -1, 154, 140, 204, -1, 203, 140, 205, -1, 203, 140, 204, -1, 206, -1, 207, 129, 206, -1, 48, -1, 49, -1, 213, -1, 209, 213, -1, 157, 140, 240, -1, 210, -1, 211, 129, 210, -1, 68, 186, 154, 142, 69, 248, 70, 248, 143, -1, 68, 186, 154, 142, 70, 248, 69, 248, 143, -1, 68, 186, 154, 142, 69, 248, 143, -1, 68, 186, 154, 142, 70, 248, 143, -1, 68, 186, 154, 142, 143, -1, 68, 186, 222, 154, 142, 69, 248, 70, 248, 143, -1, 68, 186, 222, 154, 142, 70, 248, 69, 248, 143, -1, 68, 186, 222, 154, 142, 69, 248, 143, -1, 68, 186, 222, 154, 142, 70, 248, 143, -1, 68, 186, 222, 154, 142, 143, -1, 68, 186, 142, 69, 248, 70, 248, 143, -1, 68, 186, 142, 70, 248, 69, 248, 143, -1, 68, 186, 142, 69, 248, 143, -1, 68, 186, 142, 70, 248, 143, -1, 68, 186, 142, 143, -1, 68, 186, 222, 142, 69, 248, 70, 248, 143, -1, 68, 186, 222, 142, 70, 248, 69, 248, 143, -1, 68, 186, 222, 142, 69, 248, 143, -1, 68, 186, 222, 142, 70, 248, 143, -1, 68, 186, 222, 142, 143, -1, 184, 214, 141, -1, 184, 141, -1, 256, 141, -1, 255, 141, -1, 258, -1, 211, 141, -1, 212, -1, 141, -1, 215, -1, 214, 129, 215, -1, 230, -1, 230, 196, -1, 139, 179, -1, 230, 139, 179, -1, 230, 139, 179, 139, 179, -1, 50, 154, -1, 50, 149, -1, 50, 142, 218, 143, -1, 50, 154, 142, 218, 143, -1, 50, 154, 142, 218, 141, 209, 143, -1, 50, 149, 142, 218, 141, 209, 143, -1, 50, 149, 142, 218, 143, -1, 219, -1, 218, 129, 219, -1, 154, -1, 154, 140, 179, -1, 122, 222, 123, -1, 127, 128, -1, 127, 179, 128, -1, 127, 147, 128, -1, 220, 127, 128, -1, 220, 127, 179, 128, -1, 220, 127, 147, 128, -1, 122, 123, -1, 122, 233, 123, -1, 220, 122, 123, -1, 220, 122, 233, 123, -1, 122, 223, 123, -1, 122, 123, -1, 122, 233, 123, -1, 221, 122, 123, -1, 221, 122, 233, 123, -1, 232, -1, 220, -1, 232, 220, -1, 191, 232, -1, 191, 220, -1, 191, 232, 220, -1, 232, -1, 221, -1, 232, 221, -1, 191, 232, -1, 191, 221, -1, 191, 232, 221, -1, 229, -1, 232, 229, -1, 191, 232, 229, -1, 224, 191, -1, 154, -1, 122, 224, 123, -1, 225, 127, 179, 128, -1, 225, 127, 128, -1, 225, 127, 147, 128, -1, 228, -1, 232, 228, -1, 191, 228, -1, 191, 232, 228, -1, 232, 191, 228, -1, 225, 122, -1, 227, 233, 123, -1, 227, 236, 123, -1, 227, 123, -1, 228, -1, 225, -1, 191, 228, -1, 191, 225, -1, 225, -1, 232, 225, -1, 191, 225, -1, 191, 232, 225, -1, 232, 191, 225, -1, 198, -1, 231, 198, -1, 119, -1, 119, 231, -1, 119, 232, -1, 119, 231, 232, -1, 234, -1, 234, 129, 51, -1, 235, -1, 234, 129, 235, -1, 184, 224, -1, 184, 222, -1, 184, 130, -1, 184, 130, 224, -1, 185, -1, 65, -1, 154, -1, 236, 129, 154, -1, 181, -1, 181, 222, -1, 182, -1, 182, 222, -1, 176, -1, 142, 241, 143, -1, 142, 241, 129, 143, -1, 175, -1, 158, -1, 239, -1, 241, 129, 239, -1, 243, -1, 248, -1, 249, -1, 250, -1, 251, -1, 252, -1, 154, 139, 242, -1, 52, 179, 139, 242, -1, 53, 139, 242, -1, 180, -1, 244, 180, -1, 242, -1, 245, 242, -1, 245, 180, -1, 245, -1, 244, -1, 244, 245, -1, 142, -1, 142, 143, -1, 247, 246, 143, -1, 141, -1, 178, 141, -1, 54, 122, 178, 123, 242, -1, 54, 122, 178, 123, 242, 64, 242, -1, 55, 122, 178, 123, 242, -1, 56, 122, 178, 123, 242, -1, 57, 242, 56, 122, 178, 123, 141, -1, 58, 122, 249, 249, 123, 242, -1, 58, 122, 249, 249, 178, 123, 242, -1, 56, 122, 123, 242, -1, 58, 122, 249, 123, 242, -1, 58, 122, 123, 242, -1, 59, 154, 141, -1, 60, 141, -1, 61, 141, -1, 62, 141, -1, 62, 178, 141, -1, 5, -1, 183, 154, 142, 265, 143, -1, 183, 154, 142, 143, -1, 184, 154, 142, 265, 143, -1, 184, 154, 142, 143, -1, 147, 142, 265, 143, -1, 147, 142, 143, -1, 154, 142, 265, 143, -1, 154, 142, 143, -1, 142, 265, 143, -1, 142, 143, -1, 150, 248, -1, 153, 248, -1, 153, 141, -1, 151, 248, -1, 152, 248, -1, 183, 226, -1, 183, 230, -1, 259, 248, -1, 157, 140, 240, -1, 240, -1, 261, -1, 262, 129, 261, -1, 262, 141, -1, 263, -1, 260, -1, 264, 263, -1, 264, 260, -1, 141, -1, 264, 141, -1, 264, -1, 262, -1, 264, 262, -1, 235, -1, 235, 139, 179, -1
92 static const yytype_uint16 yyrline[] =
94 0, 230, 230, 248, 272, 312, 313, 340, 344, 345, 346, 363, 365, 370, 375, 380, 382, 387, 392, 393, 398, 400, 402, 404, 405, 407, 408, 409, 412, 413, 414, 415, 416, 417, 418, 419, 420, 424, 425, 426, 427, 428, 429, 442, 443, 444, 448, 477, 478, 479, 480, 484, 485, 486, 488, 489, 491, 492, 496, 497, 506, 507, 508, 509, 510, 511, 512, 516, 517, 521, 522, 523, 524, 528, 529, 530, 534, 535, 536, 540, 548, 549, 550, 551, 552, 556, 557, 558, 562, 563, 567, 568, 572, 573, 577, 578, 582, 583, 587, 588, 592, 593, 594, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 612, 613, 617, 621, 622, 623, 624, 628, 629, 630, 631, 632, 633, 634, 635, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 680, 681, 685, 686, 687, 688, 689, 690, 691, 692, 693, 701, 710, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 730, 739, 740, 744, 745, 749, 750, 751, 752, 753, 754, 758, 759, 760, 764, 765, 766, 771, 772, 773, 774, 775, 779, 780, 784, 785, 786, 790, 791, 795, 799, 800, 801, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 859, 860, 861, 862, 863, 866, 867, 868, 869, 870, 875, 876, 879, 881, 886, 887, 892, 893, 904, 908, 910, 911, 913, 914, 938, 953, 954, 958, 959, 963, 964, 968, 972, 973, 977, 979, 981, 983, 985, 988, 990, 992, 994, 996, 999, 1001, 1003, 1005, 1007, 1010, 1012, 1014, 1016, 1018, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1034, 1036, 1041, 1043, 1045, 1047, 1049, 1054, 1055, 1059, 1061, 1062, 1063, 1064, 1068, 1070, 1075, 1077, 1083, 1085, 1087, 1089, 1091, 1093, 1095, 1097, 1099, 1101, 1103, 1108, 1110, 1112, 1114, 1116, 1121, 1122, 1123, 1124, 1125, 1126, 1130, 1131, 1132, 1133, 1134, 1135, 1181, 1182, 1184, 1186, 1191, 1193, 1195, 1197, 1199, 1204, 1205, 1208, 1210, 1212, 1218, 1222, 1224, 1226, 1231, 1232, 1233, 1235, 1240, 1241, 1242, 1243, 1244, 1248, 1249, 1253, 1254, 1255, 1256, 1260, 1261, 1265, 1266, 1270, 1271, 1272, 1273, 1274, 1285, 1310, 1311, 1315, 1316, 1320, 1321, 1325, 1327, 1329, 1345, 1347, 1369, 1371, 1376, 1377, 1378, 1379, 1380, 1381, 1385, 1387, 1389, 1394, 1395, 1399, 1400, 1403, 1407, 1408, 1409, 1413, 1417, 1425, 1430, 1431, 1435, 1436, 1437, 1441, 1442, 1443, 1444, 1446, 1447, 1448, 1452, 1453, 1454, 1455, 1456, 1460, 1464, 1466, 1471, 1473, 1498, 1500, 1502, 1504, 1509, 1511, 1515, 1517, 1519, 1521, 1523, 1529, 1531, 1536, 1541, 1542, 1546, 1548, 1553, 1558, 1559, 1560, 1561, 1562, 1563, 1567, 1568, 1569, 1573, 1574
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", "'*'", "'<'", "'>'", "'('", "')'", "'~'", "'$'", "'.'", "'['", "']'", "','", "'&'", "'+'", "'-'", "'!'", "'/'", "'%'", "'^'", "'|'", "'?'", "':'", "'='", "';'", "'{'", "'}'", "$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, 144, 145, 145, 146, 147, 147, 148, 149, 149, 149, 150, 150, 151, 152, 153, 153, 154, 155, 155, 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, 157, 157, 157, 157, 157, 157, 157, 157, 157, 158, 159, 159, 159, 159, 160, 160, 160, 160, 160, 160, 160, 161, 161, 162, 162, 162, 162, 162, 162, 162, 163, 163, 164, 164, 164, 164, 165, 165, 165, 166, 166, 166, 167, 168, 168, 168, 168, 168, 169, 169, 169, 170, 170, 171, 171, 172, 172, 173, 173, 174, 174, 175, 175, 176, 176, 176, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 177, 178, 178, 179, 180, 180, 180, 180, 181, 181, 181, 181, 181, 181, 181, 181, 182, 182, 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, 184, 184, 185, 185, 186, 186, 186, 186, 186, 186, 186, 186, 186, 186, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 188, 188, 189, 189, 190, 190, 190, 190, 190, 190, 191, 191, 191, 192, 192, 192, 193, 193, 193, 193, 193, 194, 194, 195, 195, 195, 196, 196, 197, 198, 198, 198, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 199, 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, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 202, 202, 202, 202, 203, 203, 204, 204, 205, 206, 206, 206, 206, 206, 206, 207, 207, 208, 208, 209, 209, 210, 211, 211, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 213, 213, 213, 213, 213, 213, 213, 213, 214, 214, 215, 215, 215, 215, 215, 216, 216, 217, 217, 217, 217, 217, 218, 218, 219, 219, 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, 221, 221, 221, 221, 221, 222, 222, 222, 222, 222, 222, 223, 223, 223, 223, 223, 223, 224, 224, 224, 224, 225, 225, 225, 225, 225, 226, 226, 226, 226, 226, 227, 228, 228, 228, 229, 229, 229, 229, 230, 230, 230, 230, 230, 231, 231, 232, 232, 232, 232, 233, 233, 234, 234, 235, 235, 235, 235, 235, 235, 236, 236, 237, 237, 238, 238, 239, 239, 239, 240, 240, 241, 241, 242, 242, 242, 242, 242, 242, 243, 243, 243, 244, 244, 245, 245, 245, 246, 246, 246, 247, 248, 248, 249, 249, 250, 250, 250, 251, 251, 251, 251, 251, 251, 251, 252, 252, 252, 252, 252, 253, 254, 254, 255, 255, 256, 256, 256, 256, 257, 257, 258, 258, 258, 258, 258, 259, 259, 260, 261, 261, 262, 262, 263, 264, 264, 264, 264, 264, 264, 265, 265, 265, 266, 266
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 8770, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, 35, -760, -760, -760, -760, -760, -760, -760, -760, -3, 6, -760, -760, -760, -760, -760, -760, -760, -760, -100, -760, 303, 7208, -760, -760, -760, 45, -760, -760, -760, -760, -760, -760, 563, -760, -760, 77, 137, 138, 112, 136, 6963, 79, 6256, -760, -760, -760, -760, 1002, 7311, 933, 1035, -760, 102, -760, 216, -760, -760, -760, -760, -21, -760, 807, 178, 8202, -760, -760, 748, 158, 3556, -59, -760, 159, 37, 6963, -760, 180, 117, -760, 138, 138, -760, -760, -760, 7019, 7045, 7045, 8860, 6963, -760, 8860, 6963, 7101, -760, -760, 6389, -760, 334, -760, -760, -760, -760, 247, 39, -760, -760, 642, -760, 1003, 6963, -760, 160, 191, 512, 6963, 245, 534, 261, 270, 271, 401, 2, -760, 338, -760, -760, 348, 27, 247, 15, -760, 512, 6136, 345, -760, -760, -760, 251, -760, 1002, -760, -760, 773, 365, 852, 367, 363, -760, -760, 146, -760, 371, 1035, -760, 84, 807, 38, -21, 178, -760, 748, 8298, 6664, -760, -760, 6697, -760, 483, 379, 253, 95, -21, -760, 454, 8950, 8490, 6609, 8860, -760, -760, 378, 378, 378, 420, 19, 443, 5906, 84, 3681, -760, -57, -760, -760, 178, -760, -760, 38, 384, 391, -760, 5514, 3806, 3931, 392, 397, -760, 6963, 138, -760, 170, 204, 6389, -760, 6804, -760, -760, 102, 7511, 9040, 7611, 9040, 6389, -760, -760, -760, 301, 8006, -760, -760, -760, -760, 418, 417, 2708, 2851, 138, -760, -760, 5233, 138, 6963, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, 5274, -760, 6963, 6963, 6963, 6963, 6963, 6963, 6963, 512, 6963, 6963, -760, 6963, 6963, 6963, 6963, 6963, 6963, 6963, 6963, 6963, -760, -760, -760, 6256, 7411, 320, 406, 346, 6256, -760, -760, 6256, -760, -760, -760, -760, -760, 8680, -760, -760, 38, -21, -760, -760, 427, -760, 214, 424, -760, 218, 429, -760, -760, 138, -760, -760, -760, -760, -760, 432, 445, -760, 325, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, 79, -760, -760, 470, 473, -760, -760, -760, 456, 5791, -760, -760, -760, -760, 706, -760, 8490, -760, 1002, 6522, 155, 8585, 455, 5056, -760, -760, -760, -760, -760, 5274, 1085, 6963, -760, 51, 84, 140, -760, 178, -760, -30, 38, -760, 95, -760, -760, 1389, -760, 95, -760, -760, -760, 4056, -760, 4181, -760, 4306, 5514, 4431, -760, -760, 5514, -760, 5514, -760, -760, 19, 8006, -760, -760, -760, -760, 477, 8106, 6963, -48, 488, 487, 494, 498, 7811, -760, -760, -760, -760, -760, 6963, 492, 7911, 497, -760, 6963, 138, -760, -760, -760, -760, -760, 6963, 334, -760, 2994, -760, 508, -760, -760, 8490, -760, -760, -760, -760, -760, -760, -760, 378, -760, -760, 230, -760, 3137, 479, -760, 480, -760, -760, -760, 314, -760, -760, 451, -760, -760, -760, -760, -760, 160, 160, 191, 191, 512, 512, 512, 245, 245, 534, 261, 270, 271, 401, 286, 7711, -760, -760, 346, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, 6963, 501, 510, -760, -760, -760, 6963, 79, 6256, -33, -50, -760, -760, -760, 40, -760, 79, -760, 84, 503, -760, 6963, 490, 514, 519, 521, 5198, 522, 138, 506, 515, 5677, 138, -760, 26, 249, -760, 6021, -760, -760, 2279, 2422, 520, -760, -760, -760, -760, -760, 516, -760, -760, -760, 3280, 178, 95, 614, -760, 6963, -760, 95, 178, -760, -760, -760, -760, -760, -760, 4556, -760, 4681, 4806, 4931, -760, -760, -760, -760, -760, -760, -760, -760, 523, 530, 538, 488, 494, 8394, 6963, 488, 6256, 6963, 548, -760, -760, -760, -760, -760, 542, 543, 6963, 6963, 545, -760, -760, -760, -760, -760, 527, 5274, 138, -760, -760, -760, -760, -760, -760, -760, -760, 5274, -760, -760, -760, 230, -760, -760, -760, -760, 5274, -760, 6963, -760, 326, -760, -760, 552, 554, 66, 132, 378, 378, -760, 6256, -18, -10, 536, -760, -760, -760, 541, 5198, 6963, 6963, 6830, 625, 5570, 544, -760, -760, -760, 252, 550, 5198, -760, -760, 53, 257, -760, 691, -760, 2565, -760, -760, -760, -760, -760, 540, 178, 84, -760, 557, 38, 558, 178, -760, -760, -760, -760, -760, -760, -760, 488, -760, 568, 571, 197, 572, 6256, 6963, -760, 573, 574, 6963, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -760, -12, -14, 292, 378, 378, -760, 378, 378, -760, 20, 5198, -760, 335, 340, 5198, 343, 581, 5198, 5643, -760, -760, 6963, -760, 3423, 1035, -760, 5381, -760, 557, 95, 95, 557, 6963, -760, -760, -760, -760, 311, 576, -760, -760, 578, 378, -760, 378, -760, -760, 94, -1, 153, 9, 378, 378, -760, -760, 5198, 5198, -760, 5198, 6963, -760, 5198, 6886, 570, -760, 575, -760, 5381, -760, -760, 557, 557, -760, -760, -760, -760, 577, 579, 378, -760, 378, -760, 378, -760, 378, -760, 181, 149, 651, -760, -760, 364, -760, 5198, 413, -760, -760, -760, 219, -760, -760, 580, 585, 586, 589, 378, -760, 378, -760, 5198, 594, -760, 5198, 2012, -760, -760, -760, -760, -760, 596, 599, -760, -760, -760, -760, -760, -760, -760
127 static const yytype_int16 yypgoto[] =
129 -760, 193, -760, 664, 659, 29, -760, -760, -760, -760, 0, -760, -760, 1461, -260, -760, -760, 167, -760, -107, 289, 297, -20, -760, 302, 426, 449, 459, 425, 447, -760, 1542, -49, -760, 260, -87, -363, -760, -760, -372, 48, -760, -760, 502, -760, -5, 1452, 927, -760, -760, -307, -760, 370, -760, 1302, 1532, -177, 1156, -148, -760, 173, 176, 446, -512, -188, -102, 359, -760, -760, 72, -760, 198, -6, 1194, 505, 546, -15, -396, -2, -236, -42, 421, -187, -760, 1083, -64, 312, -760, 1146, -85, -760, 1, -760, -760, 528, -759, -374, -760, 80, -760, -760, 223, -760, -760, 1157, -641, -760, -760, -760, -115, -760, -760, -80, -760, -760, -760, 316, 148, 318, 319, -760, -250, -760
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, 1, 297, 67, 366, 1, 392, 64, 242, 278, 196, 244, 1, 1, 749, 602, 179, 522, 606, 656, 657, 1, 828, 1, 1, 1, 1, 85, 71, 77, 155, 46, 29, 367, 734, 735, 63, 1, 775, 1, 96, 773, 737, 738, 67, 100, 2, 181, 2, 151, 153, 811, 1, 659, 72, 399, 166, 426, 177, 195, 71, 815, 177, 35, 36, 1, 224, 400, 856, 95, 1, 191, 782, 783, 177, 660, 208, 367, 712, 367, 228, 1, 326, 323, 185, 329, 100, 100, 1, 186, 2, 793, 576, 658, 240, 27, 28, 240, 156, 196, 29, 286, 65, 321, 46, 405, 407, 409, 736, 227, 71, 66, 776, 265, 774, 222, 739, 69, 70, 46, 99, 69, 70, 298, 1, 812, 412, 222, 222, 222, 733, 35, 36, 301, 71, 816, 71, 305, 302, 240, 258, 1, 241, 176, 258, 243, 784, 809, 679, 71, 92, 258, 320, 69, 70, 485, 486, 487, 368, 177, 62, 177, 226, 177, 258, 661, 536, 177, 45, 532, 556, 556, 729, 599, 71, 369, 571, 177, 754, 686, 615, 362, 77, 374, 240, 768, 72, 625, 619, 176, 708, 71, 265, 387, 177, 208, 480, 651, 367, 98, 176, 838, 1, 177, 69, 70, 813, 208, 208, 208, 361, 484, -377, -377, 100, 132, 46, -377, 419, 369, 810, 369, 76, 71, 240, 432, 240, 432, 419, 231, 370, 450, 375, 445, 836, 721, 730, 103, 321, 612, 287, 288, 476, 232, 310, 308, 481, 612, -377, -377, 492, 493, 574, 494, 361, 633, 361, 317, 236, 238, 239, 104, 279, 197, 575, 155, 246, 398, 367, 132, 155, 257, 181, 155, 195, 839, 367, 280, 281, 814, 258, 570, 231, 188, 225, 419, 45, 68, 189, 1, 419, 586, 588, 153, 414, 589, 415, 590, 556, 45, 511, 766, 177, 230, 693, 282, 283, 837, 222, 310, 222, 333, 222, 222, 222, 517, 231, 222, 72, 222, 623, 73, 107, 601, 600, 513, 74, 622, 416, 515, 417, 844, 76, 503, 46, 616, 334, 524, 503, 257, 369, 156, 636, 257, 533, 845, 529, 46, 289, 290, 132, 534, 335, 77, 637, 309, 374, 71, 240, 331, 553, 444, 249, 310, 444, 332, 523, 177, 723, 755, 71, 177, 257, 680, 293, 361, 751, 177, 621, 177, 95, 756, 336, 337, 177, 132, 76, 132, 208, 294, 208, 295, 208, 208, 208, 132, 777, 208, 444, 208, 296, 596, 71, 240, 310, 69, 70, 443, 647, 45, 369, 418, 132, 444, 132, 804, 609, 76, 369, 76, 644, 418, 72, 310, 609, 303, 645, 132, 71, 1, 74, 520, 726, 259, 260, 261, 666, 521, 444, 265, 333, 786, 627, 249, 299, 361, 787, 444, 132, 789, 87, 303, 444, 361, 300, 444, 74, 46, 504, 652, 398, 505, 398, 507, 398, 334, 508, 68, 307, 1, 841, 313, 699, 315, 320, 316, 444, 87, 249, 87, 249, 335, 318, 182, 648, 330, 240, 796, 249, 222, 155, 222, 222, 222, 1, 87, 333, 685, 259, 260, 261, 711, 710, 376, 713, 284, 285, 482, 403, 654, 153, 336, 337, 717, 718, 404, 662, 410, 664, 843, 177, 334, 411, 132, 451, 444, 452, 132, 553, -280, 673, 291, 292, 512, 678, 514, 71, 335, 518, 682, 516, 502, 553, 553, 381, 376, 76, 663, 262, 1, 519, 76, 263, 264, 488, 489, 177, 177, 156, 527, 338, 177, 646, 444, 490, 491, 383, 336, 337, 208, 155, 208, 208, 208, 2, 525, 495, 496, 526, 724, 87, 539, 182, 597, 87, 69, 70, 45, 87, -416, 153, 233, 234, 604, 132, -416, 591, 605, 182, 426, 1, 607, 617, 620, 87, 642, 643, 650, 671, 665, 71, 769, 667, 262, 391, 772, 249, 263, 264, 668, 27, 28, 155, 689, 669, 29, 670, 672, 1, 705, 674, 626, 259, 260, 261, 46, 706, 71, 156, 675, 691, 398, 153, 398, 398, 398, 690, 42, 794, 707, 553, 714, 715, 720, 716, 719, 35, 36, 727, 803, 728, 740, 553, 741, 747, 71, 758, 189, 750, 132, 553, 27, 28, 752, 764, 132, 29, 155, 177, 76, 763, 177, 765, 767, 770, 771, 790, 805, 93, 806, 156, 799, 1, 42, 826, 132, 685, 153, 840, 94, 132, 827, 497, 830, 500, 831, 846, 35, 36, 132, 132, 847, 848, 150, 152, 849, 72, 2, 853, 176, 42, 173, 857, 87, 553, 858, 498, 501, 553, 441, 742, 553, 799, 797, 1, 42, 385, 499, 177, 509, 152, 581, 753, 177, 177, 156, 577, 262, 27, 28, 689, 263, 264, 29, 634, 696, 442, 68, 42, 1, 413, 42, 649, 27, 28, 687, 152, 722, 29, 553, 553, 639, 553, 640, 641, 553, 0, 87, 799, 0, 0, 0, 0, 0, 35, 36, 0, 0, 87, 0, 0, 0, 572, 677, 0, 132, 0, 0, 579, 35, 36, 0, 0, 42, 785, 27, 28, 553, 788, 0, 29, 791, 0, 0, 757, 0, 0, 132, 132, 132, 132, 0, 132, 553, 0, 0, 553, 0, 0, 132, -377, -377, 42, 325, 0, -377, 328, 132, 0, 0, 0, 35, 36, 0, 0, 0, 42, 0, 42, 819, 820, 0, 821, 73, 0, 823, 0, 42, 74, 152, 0, 0, 0, 391, 27, 28, -377, -377, 0, 29, 0, 152, 152, 152, 0, 69, 70, 0, -377, -377, 0, 0, 152, -377, 0, 0, 0, 842, 42, 0, 42, 132, 152, 0, 0, 132, 0, 42, 132, 132, 35, 36, 0, 852, 152, 152, 854, 132, 0, 27, 28, 743, 744, 746, 29, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 132, 132, 0, 132, 132, 182, 132, 132, 2, 35, 36, 0, 132, 152, 42, 0, 0, 0, 152, 0, 79, 152, 314, 0, 87, 0, 0, 42, 0, 0, 0, 97, 0, 0, 0, 0, 0, 0, 132, 0, 0, 694, 697, 0, 0, 0, 700, 79, 0, 178, 0, 111, 112, 113, 132, 0, 0, 132, 132, 0, 187, 0, 0, 0, 0, 194, 0, 211, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 0, 0, 0, 42, 114, 115, 152, 1, 42, 0, 152, 116, 0, 0, 0, 18, 19, 0, 0, 822, 117, 118, 825, 0, 119, 0, 120, 121, 0, 0, 172, 0, 122, 123, 124, 125, 0, 0, 152, 0, 152, 0, 152, 152, 152, 27, 28, 152, 0, 152, 29, 0, 304, 42, 0, 0, 0, 1, 0, 42, 0, 0, 0, 0, 187, 0, 0, 0, 0, 0, 0, 0, 178, 0, 0, 187, 194, 0, 27, 28, 194, 35, 36, 29, 0, 759, 0, 152, 762, 0, 72, 0, 42, 0, 0, 211, 178, 0, 89, 0, 0, 0, 0, 0, 0, 152, 388, 0, 211, 0, 0, 0, 276, 0, 35, 36, 401, 0, 0, 0, 211, 211, 211, 72, 0, 89, 176, 89, 27, 28, 0, 183, 0, 29, 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, 35, 36, 0, 0, 0, 0, 0, 82, 0, 72, 0, 0, 176, 569, 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, 105, 423, 1, 106, 107, 0, 306, 82, 437, 82, 437, 423, 89, 0, 83, 0, 448, 0, 0, 0, 0, 0, 0, 463, 463, 0, 0, 2, 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, 111, 112, 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, 114, 115, 0, 0, 0, 0, 0, 78, 0, 365, 695, 0, 0, 0, 0, 0, 117, 0, 306, 0, 237, 80, 211, 121, 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, 0, 0, 0, 0, 0, 0, 462, 0, 0, 0, 628, 0, 0, 460, 460, 105, 458, 1, 106, 107, 108, 0, 109, 110, 0, 460, 0, 0, 0, 0, 0, 0, 0, 0, 456, 0, 0, 81, 0, 0, 0, 0, 2, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 111, 112, 113, 0, 0, 630, 0, 0, 462, 462, 0, 0, 0, 0, 456, 0, 0, 0, 0, 0, 462, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458, 114, 115, 0, 0, 174, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 119, 0, 120, 121, 0, 460, 0, 0, 122, 123, 124, 125, 0, 174, 0, 0, 174, 0, 0, 0, 798, 855, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 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, 114, 115, 2, 0, 111, 112, 113, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 114, 115, 0, 0, 552, 376, 0, 116, 0, 0, 111, 112, 113, 0, 0, 0, 117, 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, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 2, 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, 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, 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, 72, 0, 0, 200, 0, 201, 121, 0, 111, 112, 113, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 202, 0, 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, 118, 0, 0, 119, 748, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 2, 0, 0, 0, 0, 0, 552, 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, 111, 112, 113, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 119, 792, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 114, 115, 0, 0, 0, 552, 0, 116, 0, 0, 0, 0, 0, 0, 0, 1, 117, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 676, 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, 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, 72, 0, 0, 384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 385, 0, 386, 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, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 1, 72, 0, 0, 176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 681, 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, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 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, 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, 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, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 0, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 0, 0, 0, 0, 2, 0, 117, 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, 118, 0, 0, 119, 0, 120, 121, 0, 0, 324, 0, 122, 123, 124, 125, 0, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 118, 0, 0, 119, 0, 120, 121, 0, 0, 327, 0, 122, 123, 124, 125, 105, 2, 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, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 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, 0, 0, 114, 115, 0, 0, 0, 0, 0, 116, 2, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 119, 247, 120, 121, 0, 0, 114, 115, 122, 123, 124, 125, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 119, 745, 120, 121, 0, 111, 112, 113, 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, 114, 115, 0, 2, 0, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 119, 824, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 2, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 0, 116, 2, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 119, 0, 120, 121, 0, 111, 112, 113, 122, 123, 124, 125, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 114, 115, 0, 0, 0, 0, 0, 116, 2, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 235, 0, 120, 121, 0, 0, 114, 115, 122, 123, 124, 125, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 237, 0, 120, 121, 0, 111, 112, 113, 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, 0, 114, 115, 0, 0, 0, 0, 0, 116, 1, 0, 0, 0, 0, 0, 0, 0, 117, 118, 0, 0, 245, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 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, 0, 34, 0, 0, 0, 0, 0, 1, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 1, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 1, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 1, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 1, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 1, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 1, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 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, 1, 0, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 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, 1, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 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, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 72, 0, 0, 426, 598, 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, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 190, 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, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 322, 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, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 709, 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, 1, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 1, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 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, 120, 198, 3, 210, 24, 112, 133, 91, 115, 3, 3, 672, 428, 75, 341, 431, 69, 70, 3, 798, 3, 3, 3, 3, 46, 45, 46, 67, 0, 79, 198, 69, 70, 24, 3, 69, 3, 57, 70, 69, 70, 120, 62, 28, 79, 28, 66, 67, 69, 3, 120, 119, 129, 73, 122, 75, 91, 77, 69, 79, 110, 111, 3, 142, 141, 844, 57, 3, 88, 69, 70, 91, 142, 93, 242, 607, 244, 97, 3, 186, 185, 122, 189, 103, 104, 3, 127, 28, 749, 139, 143, 111, 74, 75, 114, 67, 180, 79, 138, 122, 184, 73, 224, 225, 226, 143, 97, 127, 122, 143, 130, 143, 212, 143, 119, 120, 88, 0, 119, 120, 138, 3, 143, 230, 224, 225, 226, 659, 110, 111, 123, 151, 143, 153, 156, 140, 156, 142, 3, 111, 122, 142, 114, 143, 70, 139, 166, 122, 142, 184, 119, 120, 279, 280, 281, 363, 176, 142, 178, 142, 180, 142, 142, 370, 184, 185, 363, 559, 560, 123, 426, 191, 198, 142, 194, 142, 559, 433, 198, 199, 200, 201, 714, 119, 454, 441, 122, 603, 208, 209, 210, 211, 212, 262, 521, 363, 139, 122, 69, 3, 220, 119, 120, 70, 224, 225, 226, 198, 277, 74, 75, 231, 65, 185, 79, 235, 242, 143, 244, 46, 240, 241, 242, 243, 244, 245, 129, 199, 250, 201, 250, 70, 626, 121, 142, 319, 433, 12, 13, 259, 143, 129, 11, 263, 441, 110, 111, 287, 288, 129, 290, 242, 459, 244, 128, 108, 109, 110, 142, 119, 122, 141, 302, 116, 212, 433, 119, 307, 142, 304, 310, 306, 143, 441, 134, 135, 143, 142, 385, 129, 122, 142, 302, 303, 1, 127, 3, 307, 410, 411, 310, 141, 414, 143, 416, 687, 316, 316, 121, 319, 140, 571, 131, 132, 143, 405, 129, 407, 3, 409, 410, 411, 332, 129, 414, 119, 416, 452, 122, 5, 427, 426, 128, 127, 451, 141, 128, 143, 129, 156, 302, 303, 439, 28, 354, 307, 142, 363, 310, 129, 142, 363, 143, 363, 316, 120, 121, 200, 368, 44, 370, 141, 121, 373, 374, 375, 123, 377, 129, 119, 129, 129, 129, 354, 384, 645, 129, 387, 388, 142, 141, 130, 363, 141, 394, 444, 396, 368, 141, 74, 75, 401, 235, 210, 237, 405, 136, 407, 137, 409, 410, 411, 245, 121, 414, 129, 416, 16, 420, 419, 420, 129, 119, 120, 123, 139, 426, 433, 235, 262, 129, 264, 121, 433, 241, 441, 243, 123, 245, 119, 129, 441, 122, 129, 277, 445, 3, 127, 123, 123, 7, 8, 9, 540, 129, 129, 456, 3, 123, 459, 200, 123, 433, 123, 129, 298, 123, 46, 122, 129, 441, 123, 129, 127, 426, 302, 525, 405, 302, 407, 307, 409, 28, 307, 1, 140, 3, 123, 123, 576, 123, 506, 129, 129, 73, 235, 75, 237, 44, 128, 79, 503, 123, 503, 754, 245, 586, 527, 588, 589, 590, 3, 91, 3, 556, 7, 8, 9, 605, 604, 142, 608, 10, 11, 264, 141, 526, 527, 74, 75, 617, 618, 141, 533, 142, 535, 123, 537, 28, 142, 373, 123, 129, 126, 377, 545, 140, 547, 14, 15, 123, 551, 128, 553, 44, 123, 556, 128, 298, 559, 560, 141, 142, 370, 535, 122, 3, 122, 375, 126, 127, 282, 283, 573, 574, 527, 120, 123, 578, 128, 129, 284, 285, 140, 74, 75, 586, 607, 588, 589, 590, 28, 122, 291, 292, 122, 645, 176, 143, 178, 123, 180, 119, 120, 604, 184, 123, 607, 103, 104, 122, 444, 129, 420, 127, 194, 122, 3, 120, 127, 123, 200, 143, 143, 123, 545, 123, 627, 715, 139, 122, 210, 719, 373, 126, 127, 122, 74, 75, 659, 560, 122, 79, 122, 122, 3, 123, 141, 140, 7, 8, 9, 604, 123, 654, 607, 141, 141, 586, 659, 588, 589, 590, 143, 0, 752, 128, 667, 120, 127, 143, 128, 127, 110, 111, 123, 763, 123, 142, 679, 139, 56, 682, 143, 127, 141, 519, 687, 74, 75, 140, 123, 525, 79, 714, 695, 503, 139, 698, 128, 128, 128, 128, 122, 128, 142, 128, 659, 757, 3, 46, 141, 545, 755, 714, 64, 57, 550, 143, 293, 143, 296, 143, 143, 110, 111, 559, 560, 143, 143, 66, 67, 143, 119, 28, 141, 122, 73, 74, 143, 319, 741, 143, 294, 297, 745, 244, 667, 748, 798, 755, 3, 88, 139, 295, 755, 310, 93, 399, 679, 760, 761, 714, 393, 122, 74, 75, 687, 126, 127, 79, 459, 574, 245, 1, 111, 3, 231, 114, 519, 74, 75, 559, 119, 636, 79, 786, 787, 472, 789, 472, 472, 792, -1, 373, 844, -1, -1, -1, -1, -1, 110, 111, -1, -1, 384, -1, -1, -1, 388, 550, -1, 645, -1, -1, 394, 110, 111, -1, -1, 156, 741, 74, 75, 824, 745, -1, 79, 748, -1, -1, 140, -1, -1, 667, 668, 669, 670, -1, 672, 840, -1, -1, 843, -1, -1, 679, 74, 75, 185, 186, -1, 79, 189, 687, -1, -1, -1, 110, 111, -1, -1, -1, 199, -1, 201, 786, 787, -1, 789, 122, -1, 792, -1, 210, 127, 212, -1, -1, -1, 459, 74, 75, 110, 111, -1, 79, -1, 224, 225, 226, -1, 119, 120, -1, 122, 123, -1, -1, 235, 127, -1, -1, -1, 824, 241, -1, 243, 741, 245, -1, -1, 745, -1, 250, 748, 749, 110, 111, -1, 840, 257, 258, 843, 757, -1, 74, 75, 668, 669, 670, 79, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 786, 787, -1, 789, 790, 537, 792, 793, 28, 110, 111, -1, 798, 302, 303, -1, -1, -1, 307, -1, 46, 310, 123, -1, 556, -1, -1, 316, -1, -1, -1, 57, -1, -1, -1, -1, -1, -1, 824, -1, -1, 573, 574, -1, -1, -1, 578, 73, -1, 75, -1, 71, 72, 73, 840, -1, -1, 843, 844, -1, 86, -1, -1, -1, -1, 91, -1, 93, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, -1, -1, -1, 370, 102, 103, 373, 3, 375, -1, 377, 109, -1, -1, -1, 44, 45, -1, -1, 790, 118, 119, 793, -1, 122, -1, 124, 125, -1, -1, 128, -1, 130, 131, 132, 133, -1, -1, 405, -1, 407, -1, 409, 410, 411, 74, 75, 414, -1, 416, 79, -1, 156, 420, -1, -1, -1, 3, -1, 426, -1, -1, -1, -1, 168, -1, -1, -1, -1, -1, -1, -1, 176, -1, -1, 179, 180, -1, 74, 75, 184, 110, 111, 79, -1, 695, -1, 454, 698, -1, 119, -1, 459, -1, -1, 199, 200, -1, 46, -1, -1, -1, -1, -1, -1, 472, 210, -1, 212, -1, -1, -1, 140, -1, 110, 111, 220, -1, -1, -1, 224, 225, 226, 119, -1, 73, 122, 75, 74, 75, -1, 79, -1, 79, -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, 110, 111, -1, -1, -1, -1, -1, 46, -1, 119, -1, -1, 122, 123, -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, 3, 4, 5, -1, 250, 241, 242, 243, 244, 245, 319, -1, 210, -1, 250, -1, -1, -1, -1, -1, -1, 257, 258, -1, -1, 28, 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, 71, 72, -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, 102, 103, -1, -1, -1, -1, -1, 46, -1, 198, 574, -1, -1, -1, -1, -1, 118, -1, 363, -1, 122, 210, 586, 125, 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, -1, -1, -1, -1, 472, -1, -1, -1, 556, -1, -1, 559, 560, 1, 472, 3, 4, 5, 6, -1, 8, 9, -1, 571, -1, -1, -1, -1, -1, -1, -1, -1, 571, -1, -1, 503, -1, -1, -1, -1, 28, -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, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 540, 71, 72, 73, -1, -1, 556, -1, -1, 559, 560, -1, -1, -1, -1, 636, -1, -1, -1, -1, -1, 571, -1, -1, -1, -1, -1, -1, -1, -1, -1, 571, 102, 103, -1, -1, 576, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, -1, 124, 125, -1, 687, -1, -1, 130, 131, 132, 133, -1, 605, -1, -1, 608, -1, -1, -1, 142, 143, -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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, 1, -1, 3, 4, 5, -1, -1, 141, 142, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, 141, -1, 143, -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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 142, 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, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, 28, -1, 71, 72, 73, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, 102, 103, -1, -1, 141, 142, -1, 109, -1, -1, 71, 72, 73, -1, -1, -1, 118, 119, -1, -1, 122, 123, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, 142, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, 28, -1, -1, -1, -1, -1, -1, 142, -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, 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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, 1, -1, 3, 4, 5, -1, -1, -1, 142, -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, 119, -1, -1, 122, -1, 124, 125, -1, 71, 72, 73, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, 141, -1, -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, 119, -1, -1, 122, 123, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, 28, -1, -1, -1, -1, -1, 141, -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, 71, 72, 73, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, 123, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, 102, 103, -1, -1, -1, 141, -1, 109, -1, -1, -1, -1, -1, -1, -1, 3, 118, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, 141, 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, 3, 119, -1, -1, 122, -1, -1, -1, -1, 127, -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, 3, 119, -1, -1, 122, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 139, -1, 141, -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, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 3, 119, -1, -1, 122, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -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, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, 1, 122, 3, 4, 5, 6, 127, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 140, -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, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, 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, 119, -1, -1, 122, 123, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, 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, 119, -1, -1, 122, 123, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, -1, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, -1, -1, -1, -1, 28, -1, 118, 119, -1, -1, 122, 123, 124, 125, 71, 72, 73, -1, 130, 131, 132, 133, -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, 119, -1, -1, 122, -1, 124, 125, -1, -1, 128, -1, 130, 131, 132, 133, -1, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, 119, -1, -1, 122, -1, 124, 125, -1, -1, 128, -1, 130, 131, 132, 133, 1, 28, 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, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -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, -1, -1, 102, 103, -1, -1, -1, -1, -1, 109, 28, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, 123, 124, 125, -1, -1, 102, 103, 130, 131, 132, 133, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, 123, 124, 125, -1, 71, 72, 73, 130, 131, 132, 133, 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, -1, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, 123, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 28, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, -1, 109, 28, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, -1, 124, 125, -1, 71, 72, 73, 130, 131, 132, 133, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, 102, 103, -1, -1, -1, -1, -1, 109, 28, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, -1, 124, 125, -1, -1, 102, 103, 130, 131, 132, 133, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, -1, 124, 125, -1, 71, 72, 73, 130, 131, 132, 133, -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, 3, -1, -1, -1, -1, -1, -1, -1, 118, 119, -1, -1, 122, -1, 124, 125, -1, -1, -1, -1, 130, 131, 132, 133, -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, -1, 100, -1, -1, -1, -1, -1, 3, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, -1, -1, -1, -1, 127, -1, -1, 130, 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, 3, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, 123, -1, -1, -1, 127, 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, 3, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, 123, -1, -1, -1, 127, 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, 3, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, -1, -1, -1, -1, 127, 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, 3, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, -1, -1, -1, -1, 127, 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, 3, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, -1, -1, -1, -1, 127, 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, 3, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, -1, -1, -1, -1, 127, 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, 3, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, 28, -1, -1, -1, 127, -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, 3, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, -1, -1, 119, -1, -1, 122, -1, -1, -1, -1, 127, 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, 3, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, 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, 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, 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, -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, 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, -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, 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, -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, 3, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 119, -1, -1, 122, 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, 3, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, 122, 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, 145, 146, 147, 148, 149, 154, 184, 185, 190, 191, 192, 196, 197, 198, 199, 201, 202, 208, 216, 217, 235, 266, 142, 149, 154, 122, 122, 120, 1, 119, 120, 154, 119, 122, 127, 130, 145, 154, 190, 191, 198, 199, 201, 217, 220, 222, 224, 225, 227, 228, 229, 232, 122, 142, 148, 149, 154, 191, 139, 0, 154, 218, 219, 142, 142, 1, 4, 5, 6, 8, 9, 71, 72, 73, 102, 103, 109, 118, 119, 122, 124, 125, 130, 131, 132, 133, 147, 154, 155, 156, 157, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 253, 256, 147, 154, 147, 154, 161, 166, 184, 203, 204, 205, 206, 207, 198, 231, 232, 123, 154, 222, 224, 233, 234, 235, 128, 147, 175, 179, 122, 154, 191, 224, 232, 220, 225, 228, 232, 122, 127, 191, 122, 127, 123, 154, 233, 236, 191, 220, 229, 122, 68, 78, 122, 124, 141, 143, 150, 151, 152, 153, 154, 157, 184, 191, 209, 210, 211, 212, 213, 225, 226, 228, 232, 255, 256, 258, 142, 142, 142, 149, 154, 179, 140, 129, 143, 218, 218, 122, 161, 122, 161, 161, 154, 184, 179, 184, 179, 122, 161, 123, 176, 178, 181, 198, 199, 201, 217, 237, 253, 142, 142, 7, 8, 9, 122, 126, 127, 154, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 140, 177, 163, 119, 134, 135, 131, 132, 10, 11, 166, 12, 13, 120, 121, 14, 15, 130, 136, 137, 16, 17, 138, 123, 123, 123, 140, 122, 191, 222, 232, 140, 11, 121, 129, 198, 232, 123, 123, 123, 129, 128, 128, 232, 220, 229, 123, 233, 128, 147, 179, 128, 147, 179, 123, 123, 129, 3, 28, 44, 74, 75, 123, 193, 194, 195, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 46, 47, 50, 66, 85, 87, 100, 112, 113, 149, 154, 186, 190, 198, 200, 202, 208, 216, 184, 226, 119, 122, 154, 184, 142, 247, 248, 248, 248, 141, 248, 140, 122, 139, 141, 154, 191, 214, 215, 225, 226, 230, 232, 228, 232, 143, 213, 129, 141, 191, 228, 141, 141, 209, 143, 209, 143, 209, 142, 142, 179, 219, 141, 143, 141, 143, 145, 154, 182, 198, 199, 201, 217, 238, 122, 127, 191, 221, 223, 232, 154, 187, 190, 198, 200, 201, 217, 127, 223, 187, 238, 123, 129, 154, 198, 199, 201, 217, 222, 123, 126, 141, 142, 143, 157, 158, 175, 183, 190, 198, 199, 201, 217, 240, 257, 259, 260, 261, 262, 263, 264, 265, 143, 265, 154, 123, 158, 159, 176, 154, 178, 158, 176, 163, 163, 163, 164, 164, 165, 165, 166, 166, 166, 168, 168, 169, 170, 171, 172, 173, 178, 184, 204, 205, 232, 204, 205, 206, 51, 235, 123, 128, 128, 128, 128, 154, 123, 122, 123, 129, 194, 149, 154, 122, 122, 120, 142, 154, 190, 198, 200, 222, 154, 191, 226, 191, 122, 143, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 77, 141, 154, 178, 180, 183, 242, 243, 244, 245, 246, 248, 249, 250, 251, 252, 254, 240, 123, 179, 142, 225, 232, 129, 141, 139, 196, 191, 225, 228, 210, 228, 143, 143, 143, 209, 143, 209, 209, 209, 145, 198, 199, 201, 217, 222, 123, 123, 223, 233, 179, 221, 232, 122, 127, 221, 120, 127, 154, 190, 198, 200, 201, 217, 223, 179, 127, 127, 223, 123, 176, 163, 253, 143, 265, 140, 154, 190, 198, 199, 201, 217, 226, 230, 248, 129, 141, 141, 260, 262, 263, 143, 143, 123, 129, 128, 139, 222, 178, 123, 194, 176, 147, 154, 207, 69, 70, 143, 120, 142, 142, 154, 149, 154, 123, 179, 139, 122, 122, 122, 242, 122, 154, 141, 141, 141, 178, 154, 139, 141, 141, 154, 188, 189, 224, 180, 245, 180, 242, 143, 141, 143, 265, 225, 191, 215, 225, 232, 179, 225, 143, 143, 143, 143, 123, 123, 128, 221, 123, 233, 179, 207, 179, 120, 127, 128, 179, 179, 127, 143, 240, 261, 158, 176, 175, 123, 123, 123, 123, 121, 248, 248, 207, 69, 70, 143, 69, 70, 143, 142, 139, 242, 178, 178, 123, 178, 56, 123, 249, 141, 141, 140, 242, 142, 129, 141, 140, 143, 225, 232, 191, 225, 139, 123, 128, 121, 128, 207, 179, 128, 128, 179, 70, 143, 69, 143, 121, 248, 248, 248, 248, 69, 70, 143, 242, 123, 123, 242, 123, 122, 242, 123, 249, 179, 143, 265, 189, 142, 176, 239, 225, 225, 179, 121, 128, 128, 248, 248, 70, 143, 69, 143, 70, 143, 69, 143, 248, 248, 242, 242, 242, 178, 242, 123, 178, 141, 143, 239, 241, 143, 143, 248, 248, 248, 248, 70, 143, 69, 143, 64, 123, 242, 123, 129, 143, 143, 143, 143, 143, 248, 248, 242, 141, 242, 143, 239, 143, 143
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;
1055 } ecere_gcc_struct __anon1;
1056 unsigned int debugValue;
1057 struct __ecereNameSpace__ecere__com__DataValue val;
1059 unsigned int hasAddress;
1060 struct Type * expType;
1061 struct Type * destType;
1064 unsigned int byReference;
1065 unsigned int isConstant;
1066 unsigned int addedThis;
1067 unsigned int needCast;
1068 unsigned int thisPtr;
1069 unsigned int opDestType;
1070 unsigned int needTemplateCast;
1073 extern struct Expression * MkExpInstance(struct Instantiation * inst);
1077 struct Declaration * prev;
1078 struct Declaration * next;
1079 struct Location loc;
1085 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
1086 struct __ecereNameSpace__ecere__sys__OldList * declarators;
1087 } ecere_gcc_struct __anon1;
1088 struct Instantiation * inst;
1091 struct Identifier * id;
1092 struct Expression * exp;
1093 } ecere_gcc_struct __anon2;
1094 } ecere_gcc_struct __anon1;
1095 struct Specifier * extStorage;
1096 struct Symbol * symbol;
1100 extern struct Declaration * MkDeclarationInst(struct Instantiation * inst);
1102 extern struct Declaration * MkDeclarationClassInst(struct Instantiation * inst);
1104 extern struct Instantiation * MkInstantiationNamed(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
1106 struct Instantiation
1108 struct Instantiation * prev;
1109 struct Instantiation * next;
1110 struct Location loc;
1111 struct Specifier * _class;
1112 struct Expression * exp;
1113 struct __ecereNameSpace__ecere__sys__OldList * members;
1114 struct Symbol * symbol;
1115 unsigned int fullSet;
1116 unsigned int isConstant;
1117 unsigned char * data;
1118 struct Location nameLoc;
1119 struct Location insideLoc;
1123 extern struct Instantiation * MkInstantiation(struct Specifier * _class, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
1127 typedef union YYSTYPE
1132 struct Identifier * id;
1133 struct Expression * exp;
1134 struct Specifier * specifier;
1135 struct __ecereNameSpace__ecere__sys__OldList * list;
1136 struct Enumerator * enumerator;
1137 struct Declarator * declarator;
1138 struct Pointer * pointer;
1139 struct Initializer * initializer;
1140 struct InitDeclarator * initDeclarator;
1141 struct TypeName * typeName;
1142 struct Declaration * declaration;
1143 struct Statement * stmt;
1144 struct FunctionDefinition * function;
1145 struct External * external;
1146 struct Context * context;
1147 struct AsmField * asmField;
1148 struct Attrib * attrib;
1149 struct ExtDecl * extDecl;
1150 struct Attribute * attribute;
1151 struct Instantiation * instance;
1152 struct MembersInit * membersInit;
1153 struct MemberInit * memberInit;
1154 struct ClassFunction * classFunction;
1155 struct ClassDefinition * _class;
1156 struct ClassDef * classDef;
1157 struct PropertyDef * prop;
1159 struct Symbol * symbol;
1160 struct PropertyWatch * propertyWatch;
1161 struct TemplateParameter * templateParameter;
1162 struct TemplateArgument * templateArgument;
1163 struct TemplateDatatype * templateDatatype;
1164 struct DBTableEntry * dbtableEntry;
1165 struct DBIndexItem * dbindexItem;
1166 struct DBTableDef * dbtableDef;
1167 } ecere_gcc_struct YYSTYPE;
1169 extern YYSTYPE yylval;
1173 yytype_int16 yyss_alloc;
1175 struct Location yyls_alloc;
1178 static void yy_symbol_value_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1182 ((void)(yylocationp));
1191 extern void FreeMembersInit(struct MembersInit * init);
1193 YYSTYPE type_yylval;
1195 extern struct MembersInit * MkMembersInitList(struct __ecereNameSpace__ecere__sys__OldList * dataMembers);
1199 struct MembersInit * prev;
1200 struct MembersInit * next;
1201 struct Location loc;
1205 struct __ecereNameSpace__ecere__sys__OldList * dataMembers;
1206 struct ClassFunction * function;
1207 } ecere_gcc_struct __anon1;
1210 extern struct MembersInit * MkMembersInitMethod(struct ClassFunction * function);
1212 static void yy_symbol_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1215 fprintf(yyoutput, "token %s (", yytname[yytype]);
1217 fprintf(yyoutput, "nterm %s (", yytname[yytype]);
1219 fprintf(yyoutput, ": ");
1220 yy_symbol_value_print(yyoutput, yytype, yyvaluep, yylocationp);
1221 fprintf(yyoutput, ")");
1224 static void yy_reduce_print(YYSTYPE * yyvsp, struct Location * yylsp, int yyrule)
1226 int yynrhs = yyr2[yyrule];
1228 unsigned long int yylno = yyrline[yyrule];
1230 fprintf((bsl_stderr()), "Reducing stack by rule %d (line %lu):\n", yyrule - 1, yylno);
1231 for(yyi = 0; yyi < yynrhs; yyi++)
1233 fprintf((bsl_stderr()), " $%d = ", yyi + 1);
1234 yy_symbol_print((bsl_stderr()), yyrhs[yyprhs[yyrule] + yyi], &(yyvsp[(yyi + 1) - (yynrhs)]), &(yylsp[(yyi + 1) - (yynrhs)]));
1235 fprintf((bsl_stderr()), "\n");
1239 struct __ecereNameSpace__ecere__sys__BinaryTree;
1241 struct __ecereNameSpace__ecere__sys__BinaryTree
1243 struct __ecereNameSpace__ecere__sys__BTNode * root;
1245 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
1246 void (* FreeKey)(void * key);
1249 struct __ecereNameSpace__ecere__com__Method;
1251 struct __ecereNameSpace__ecere__com__Method
1254 struct __ecereNameSpace__ecere__com__Method * parent;
1255 struct __ecereNameSpace__ecere__com__Method * left;
1256 struct __ecereNameSpace__ecere__com__Method * right;
1261 struct __ecereNameSpace__ecere__com__Class * _class;
1263 const char * dataTypeString;
1264 struct Type * dataType;
1268 struct __ecereNameSpace__ecere__com__NameSpace;
1270 struct __ecereNameSpace__ecere__com__NameSpace
1273 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
1274 struct __ecereNameSpace__ecere__com__NameSpace * left;
1275 struct __ecereNameSpace__ecere__com__NameSpace * right;
1277 struct __ecereNameSpace__ecere__com__NameSpace * parent;
1278 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
1279 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
1280 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
1281 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
1284 struct __ecereNameSpace__ecere__com__Application
1287 const char * * argv;
1289 unsigned int isGUIApp;
1290 struct __ecereNameSpace__ecere__sys__OldList allModules;
1291 char * parsedCommand;
1292 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
1295 struct __ecereNameSpace__ecere__com__DataMember;
1297 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
1303 const char * dataTypeString;
1304 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
1305 } ecere_gcc_struct __anon1;
1306 struct __ecereNameSpace__ecere__com__DataValue expression;
1309 const char * memberString;
1312 struct __ecereNameSpace__ecere__com__DataMember * member;
1313 struct __ecereNameSpace__ecere__com__Property * prop;
1314 struct __ecereNameSpace__ecere__com__Method * method;
1315 } ecere_gcc_struct __anon1;
1316 } ecere_gcc_struct __anon2;
1317 } ecere_gcc_struct __anon1;
1320 struct __ecereNameSpace__ecere__com__DataMember
1322 struct __ecereNameSpace__ecere__com__DataMember * prev;
1323 struct __ecereNameSpace__ecere__com__DataMember * next;
1325 unsigned int isProperty;
1328 struct __ecereNameSpace__ecere__com__Class * _class;
1329 const char * dataTypeString;
1330 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
1331 struct Type * dataType;
1335 struct __ecereNameSpace__ecere__sys__OldList members;
1336 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
1338 short structAlignment;
1339 short pointerAlignment;
1342 struct __ecereNameSpace__ecere__com__Module;
1344 struct __ecereNameSpace__ecere__com__Module
1346 struct __ecereNameSpace__ecere__com__Instance * application;
1347 struct __ecereNameSpace__ecere__sys__OldList classes;
1348 struct __ecereNameSpace__ecere__sys__OldList defines;
1349 struct __ecereNameSpace__ecere__sys__OldList functions;
1350 struct __ecereNameSpace__ecere__sys__OldList modules;
1351 struct __ecereNameSpace__ecere__com__Instance * prev;
1352 struct __ecereNameSpace__ecere__com__Instance * next;
1358 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
1359 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
1362 struct __ecereNameSpace__ecere__com__Class
1364 struct __ecereNameSpace__ecere__com__Class * prev;
1365 struct __ecereNameSpace__ecere__com__Class * next;
1371 unsigned int (* Constructor)(void * );
1372 void (* Destructor)(void * );
1375 struct __ecereNameSpace__ecere__com__Class * base;
1376 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
1377 struct __ecereNameSpace__ecere__sys__BinaryTree members;
1378 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
1379 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
1380 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
1381 struct __ecereNameSpace__ecere__sys__OldList derivatives;
1385 struct __ecereNameSpace__ecere__com__Instance * module;
1386 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
1387 const char * dataTypeString;
1388 struct Type * dataType;
1390 int defaultAlignment;
1391 void (* Initialize)();
1393 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
1394 const char * designerClass;
1395 unsigned int noExpansion;
1396 const char * defaultProperty;
1397 unsigned int comRedefinition;
1400 unsigned int internalDecl;
1402 unsigned int computeSize;
1403 short structAlignment;
1404 short pointerAlignment;
1405 int destructionWatchOffset;
1407 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
1408 int inheritanceAccess;
1409 const char * fullName;
1411 struct __ecereNameSpace__ecere__sys__OldList conversions;
1412 struct __ecereNameSpace__ecere__sys__OldList templateParams;
1413 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
1414 struct __ecereNameSpace__ecere__com__Class * templateClass;
1415 struct __ecereNameSpace__ecere__sys__OldList templatized;
1417 unsigned int isInstanceClass;
1418 unsigned int byValueSystemClass;
1421 void __ecereRegisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
1423 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
1427 void __ecereUnregisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
1432 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
1434 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__File;
1436 static void yydestruct(const char * yymsg, int yytype, YYSTYPE * yyvaluep, struct Location * yylocationp)
1439 ((void)(yylocationp));
1446 fprintf((bsl_stderr()), "%s ", yymsg);
1447 yy_symbol_print((bsl_stderr()), yytype, yyvaluep, yylocationp);
1448 fprintf((bsl_stderr()), "\n");
1455 FreeSpecifier((*yyvaluep).specifier);
1461 FreeSpecifier((*yyvaluep).specifier);
1467 FreeSpecifier((*yyvaluep).specifier);
1473 FreeSpecifier((*yyvaluep).specifier);
1479 FreeClassFunction((*yyvaluep).classFunction);
1485 FreeClassFunction((*yyvaluep).classFunction);
1491 FreeClassFunction((*yyvaluep).classFunction);
1497 FreeClassFunction((*yyvaluep).classFunction);
1503 FreeIdentifier((*yyvaluep).id);
1509 FreeExpression((*yyvaluep).exp);
1515 FreeExpression((*yyvaluep).exp);
1521 FreeList((*yyvaluep).list, (void *)(FreeExpression));
1527 FreeExpression((*yyvaluep).exp);
1533 FreeExpression((*yyvaluep).exp);
1539 FreeExpression((*yyvaluep).exp);
1545 FreeExpression((*yyvaluep).exp);
1551 FreeExpression((*yyvaluep).exp);
1557 FreeExpression((*yyvaluep).exp);
1563 FreeExpression((*yyvaluep).exp);
1569 FreeExpression((*yyvaluep).exp);
1575 FreeExpression((*yyvaluep).exp);
1581 FreeExpression((*yyvaluep).exp);
1587 FreeExpression((*yyvaluep).exp);
1593 FreeExpression((*yyvaluep).exp);
1599 FreeExpression((*yyvaluep).exp);
1605 FreeExpression((*yyvaluep).exp);
1611 FreeList((*yyvaluep).list, (void *)(FreeExpression));
1617 FreeExpression((*yyvaluep).exp);
1623 FreeDeclaration((*yyvaluep).declaration);
1629 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1635 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1641 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1647 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1653 FreeList((*yyvaluep).list, (void *)(FreeInitDeclarator));
1659 FreeInitDeclarator((*yyvaluep).initDeclarator);
1665 FreeSpecifier((*yyvaluep).specifier);
1671 FreeExtDecl((*yyvaluep).extDecl);
1677 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
1683 FreeAttribute((*yyvaluep).attribute);
1689 FreeList((*yyvaluep).list, (void *)(FreeAttribute));
1695 FreeAttrib((*yyvaluep).attrib);
1701 FreeSpecifier((*yyvaluep).specifier);
1707 FreeSpecifier((*yyvaluep).specifier);
1713 FreeSpecifier((*yyvaluep).specifier);
1719 FreeSpecifier((*yyvaluep).specifier);
1725 FreeSpecifier((*yyvaluep).specifier);
1731 FreeSpecifier((*yyvaluep).specifier);
1737 FreeTemplateDataType((*yyvaluep).templateDatatype);
1743 FreeTemplateArgument((*yyvaluep).templateArgument);
1749 FreeTemplateArgument((*yyvaluep).templateArgument);
1755 FreeTemplateArgument((*yyvaluep).templateArgument);
1761 FreeList((*yyvaluep).list, (void *)(FreeClassDef));
1767 FreeMemberInit((*yyvaluep).memberInit);
1773 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
1779 FreeProperty((*yyvaluep).prop);
1785 FreeClassDef((*yyvaluep).classDef);
1791 FreeList((*yyvaluep).list, (void *)(FreeDeclarator));
1797 FreeDeclarator((*yyvaluep).declarator);
1803 FreeSpecifier((*yyvaluep).specifier);
1809 FreeSpecifier((*yyvaluep).specifier);
1815 FreeList((*yyvaluep).list, (void *)(FreeEnumerator));
1821 FreeEnumerator((*yyvaluep).enumerator);
1827 FreeDeclarator((*yyvaluep).declarator);
1833 FreeDeclarator((*yyvaluep).declarator);
1839 FreeDeclarator((*yyvaluep).declarator);
1845 FreeDeclarator((*yyvaluep).declarator);
1851 FreeDeclarator((*yyvaluep).declarator);
1857 FreeDeclarator((*yyvaluep).declarator);
1863 FreeDeclarator((*yyvaluep).declarator);
1869 FreeDeclarator((*yyvaluep).declarator);
1875 FreeDeclarator((*yyvaluep).declarator);
1881 FreeDeclarator((*yyvaluep).declarator);
1887 FreeDeclarator((*yyvaluep).declarator);
1893 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1899 FreePointer((*yyvaluep).pointer);
1905 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1911 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1917 FreeTypeName((*yyvaluep).typeName);
1923 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1929 FreeTypeName((*yyvaluep).typeName);
1935 FreeTypeName((*yyvaluep).typeName);
1941 FreeInitializer((*yyvaluep).initializer);
1947 FreeInitializer((*yyvaluep).initializer);
1953 FreeList((*yyvaluep).list, (void *)(FreeInitializer));
1959 FreeStatement((*yyvaluep).stmt);
1965 FreeStatement((*yyvaluep).stmt);
1971 FreeList((*yyvaluep).list, (void *)(FreeDeclaration));
1977 FreeList((*yyvaluep).list, (void *)(FreeStatement));
1983 FreeStatement((*yyvaluep).stmt);
1989 PopContext((*yyvaluep).context);
1990 FreeContext((*yyvaluep).context);
1991 (((*yyvaluep).context ? (__ecereClass_Context->Destructor ? __ecereClass_Context->Destructor((void *)(*yyvaluep).context) : 0, __ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).context)) : 0), (*yyvaluep).context = 0);
1997 FreeStatement((*yyvaluep).stmt);
2003 FreeStatement((*yyvaluep).stmt);
2009 FreeStatement((*yyvaluep).stmt);
2015 FreeStatement((*yyvaluep).stmt);
2021 FreeStatement((*yyvaluep).stmt);
2027 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
2033 FreeInstance((*yyvaluep).instance);
2039 FreeInstance((*yyvaluep).instance);
2045 FreeClassFunction((*yyvaluep).classFunction);
2051 FreeClassFunction((*yyvaluep).classFunction);
2057 FreeClassFunction((*yyvaluep).classFunction);
2063 FreeMemberInit((*yyvaluep).memberInit);
2069 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
2075 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
2081 FreeList((*yyvaluep).list, (void *)(FreeMembersInit));
2087 FreeList((*yyvaluep).list, (void *)(FreeMembersInit));
2096 int type_yyparse(void)
2100 yytype_int16 yyssa[200];
2101 yytype_int16 * yyss;
2102 yytype_int16 * yyssp;
2106 struct Location yylsa[200];
2107 struct Location * yyls;
2108 struct Location * yylsp;
2109 struct Location yyerror_range[2];
2115 struct Location yyloc;
2126 fprintf((bsl_stderr()), "Starting parse\n");
2140 if(yyss + yystacksize - 1 <= yyssp)
2142 size_t yysize = yyssp - yyss + 1;
2144 if(10000 <= yystacksize)
2145 goto yyexhaustedlab;
2147 if(10000 < yystacksize)
2148 yystacksize = 10000;
2150 yytype_int16 * yyss1 = yyss;
2151 union yyalloc * yyptr = (union yyalloc *)malloc(((yystacksize) * (sizeof(yytype_int16) + sizeof(YYSTYPE) + sizeof(struct Location)) + 2 * (sizeof(union yyalloc) - 1)));
2154 goto yyexhaustedlab;
2159 __builtin_memcpy(&(*yyptr).yyss_alloc, yyss, (yysize) * sizeof (*(yyss)));
2160 yyss = &(*yyptr).yyss_alloc;
2161 yynewbytes = yystacksize * sizeof (*yyss) + (sizeof(union yyalloc) - 1);
2162 yyptr += yynewbytes / sizeof (*yyptr);
2168 __builtin_memcpy(&(*yyptr).yyvs_alloc, yyvs, (yysize) * sizeof (*(yyvs)));
2169 yyvs = &(*yyptr).yyvs_alloc;
2170 yynewbytes = yystacksize * sizeof (*yyvs) + (sizeof(union yyalloc) - 1);
2171 yyptr += yynewbytes / sizeof (*yyptr);
2177 __builtin_memcpy(&(*yyptr).yyls_alloc, yyls, (yysize) * sizeof (*(yyls)));
2178 yyls = &(*yyptr).yyls_alloc;
2179 yynewbytes = yystacksize * sizeof (*yyls) + (sizeof(union yyalloc) - 1);
2180 yyptr += yynewbytes / sizeof (*yyptr);
2185 yyssp = yyss + yysize - 1;
2186 yyvsp = yyvs + yysize - 1;
2187 yylsp = yyls + yysize - 1;
2191 fprintf((bsl_stderr()), "Stack size increased to %lu\n", (unsigned long int)yystacksize);
2193 if(yyss + yystacksize - 1 <= yyssp)
2199 fprintf((bsl_stderr()), "Entering state %d\n", yystate);
2205 yyn = yypact[yystate];
2208 if(type_yychar == (-2))
2213 fprintf((bsl_stderr()), "Reading a token: ");
2215 type_yychar = yylex();
2217 if(type_yychar <= 0)
2219 type_yychar = yytoken = 0;
2223 fprintf((bsl_stderr()), "Now at end of input.\n");
2228 yytoken = ((unsigned int)(type_yychar) <= 373 ? yytranslate[type_yychar] : 2);
2233 fprintf((bsl_stderr()), "%s ", "Next token is");
2234 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2235 fprintf((bsl_stderr()), "\n");
2240 if(yyn < 0 || 9157 < yyn || yycheck[yyn] != yytoken)
2245 if(yyn == 0 || yyn == -497)
2256 fprintf((bsl_stderr()), "%s ", "Shifting");
2257 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2258 fprintf((bsl_stderr()), "\n");
2263 *++yyvsp = type_yylval;
2264 *++yylsp = type_yylloc;
2267 yyn = yydefact[yystate];
2273 yyval = yyvsp[1 - yylen];
2274 (yyloc.start = ((yylsp - yylen))[1].start);
2275 (yyloc.end = ((yylsp - yylen))[yylen].end);
2280 yy_reduce_print(yyvsp, yylsp, yyn);
2286 yyval.specifier = (((void *)0));
2287 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2288 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2289 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2291 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2292 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2293 resetScannerPos(&(yylsp[(1) - (2)]).start);
2294 (type_yychar = (-2));
2295 FreeIdentifier(yyvsp[(1) - (2)].id);
2296 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2301 yy_stack_print((yyss), (yyssp));
2303 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2308 yy_stack_print((yyss), (yyssp));
2316 yyval.specifier = (((void *)0));
2317 _DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2318 FreeIdentifier(yyvsp[(1) - (2)].id);
2319 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2320 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2322 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2323 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2324 resetScannerPos(&(yylsp[(1) - (2)]).start);
2325 (type_yychar = (-2));
2326 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2331 yy_stack_print((yyss), (yyssp));
2333 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2338 yy_stack_print((yyss), (yyssp));
2346 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2347 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2348 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2350 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2351 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2352 parseTypeError = (unsigned int)0;
2353 resetScannerPos(&(yylsp[(1) - (2)]).start);
2354 (type_yychar = (-2));
2355 FreeIdentifier(yyvsp[(1) - (2)].id);
2356 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2361 yy_stack_print((yyss), (yyssp));
2363 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2368 yy_stack_print((yyss), (yyssp));
2376 yyval.specifier = yyvsp[(1) - (1)].specifier;
2382 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2383 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2384 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2386 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2387 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2388 resetScannerPos(&(yylsp[(1) - (2)]).start);
2389 (type_yychar = (-2));
2390 FreeIdentifier(yyvsp[(1) - (2)].id);
2391 FreeIdentifier(yyvsp[(2) - (2)].id);
2392 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2397 yy_stack_print((yyss), (yyssp));
2399 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2404 yy_stack_print((yyss), (yyssp));
2412 yyval.specifier = MkSpecifierName(yytext);
2418 yyval.specifier = yyvsp[(1) - (4)].specifier;
2419 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2420 yyval.specifier->loc = (yyloc);
2426 yyval.specifier = yyvsp[(1) - (4)].specifier;
2427 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2428 yyval.specifier->loc = (yyloc);
2429 (yylsp[(4) - (4)]).end.pos--;
2430 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2431 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2433 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2434 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(4) - (4)]).end.pos, 0);
2435 resetScannerPos(&(yylsp[(4) - (4)]).end);
2436 (type_yychar = (-2));
2442 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2443 yyval.classFunction->loc = (yyloc);
2449 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(1) - (1)].declarator, (((void *)0)));
2450 yyval.classFunction->loc = (yyloc);
2456 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2457 yyval.classFunction->isConstructor = 1;
2458 yyval.classFunction->loc = (yyloc);
2459 FreeList(yyvsp[(1) - (3)].list, (void *)(FreeSpecifier));
2465 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2466 yyval.classFunction->isDestructor = 1;
2467 yyval.classFunction->loc = (yyloc);
2468 FreeList(yyvsp[(2) - (4)].list, (void *)(FreeSpecifier));
2474 yyval.classFunction = MkClassFunction(yyvsp[(2) - (3)].list, (((void *)0)), yyvsp[(3) - (3)].declarator, (((void *)0)));
2475 yyval.classFunction->isVirtual = 1;
2476 yyval.classFunction->loc = (yyloc);
2482 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2483 yyval.classFunction->isVirtual = 1;
2484 yyval.classFunction->loc = (yyloc);
2490 yyval.id = MkIdentifier(yytext);
2491 yyval.id->loc = (yylsp[(1) - (1)]);
2497 yyval.exp = MkExpBrackets(yyvsp[(2) - (3)].list);
2498 yyval.exp->loc = (yyloc);
2504 yyval.exp = MkExpIdentifier(yyvsp[(1) - (1)].id);
2505 yyval.exp->loc = (yyloc);
2511 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2512 yyval.exp->loc = (yyloc);
2518 yyval.exp = MkExpConstant(yytext);
2519 yyval.exp->loc = (yyloc);
2525 yyval.exp = MkExpWideString(yytext);
2526 yyval.exp->loc = (yyloc);
2532 yyval.exp = MkExpString(yyvsp[(1) - (1)].string);
2533 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(1) - (1)].string), yyvsp[(1) - (1)].string = 0);
2534 yyval.exp->loc = (yyloc);
2540 yyval.exp = MkExpIntlString(yyvsp[(2) - (2)].string, (((void *)0)));
2541 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (2)].string), yyvsp[(2) - (2)].string = 0);
2542 yyval.exp->loc = (yyloc);
2548 yyval.exp = MkExpIntlString(yyvsp[(4) - (4)].string, yyvsp[(2) - (4)].string);
2549 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (4)].string), yyvsp[(2) - (4)].string = 0);
2550 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(4) - (4)].string), yyvsp[(4) - (4)].string = 0);
2551 yyval.exp->loc = (yyloc);
2557 struct Expression * exp = MkExpDummy();
2559 exp->loc.start = (yylsp[(1) - (2)]).end;
2560 exp->loc.end = (yylsp[(2) - (2)]).start;
2561 yyval.exp = MkExpBrackets(MkListOne(exp));
2562 yyval.exp->loc = (yyloc);
2569 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2570 yyval.exp->loc = (yyloc);
2576 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2577 yyval.exp->loc = (yyloc);
2583 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2584 yyval.exp->loc = (yyloc);
2590 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2591 yyval.exp->loc = (yyloc);
2597 yyval.exp = MkExpRenew(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2598 yyval.exp->loc = (yyloc);
2604 yyval.exp = MkExpRenew(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2605 yyval.exp->loc = (yyloc);
2611 yyval.exp = MkExpRenew0(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2612 yyval.exp->loc = (yyloc);
2618 yyval.exp = MkExpRenew0(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2619 yyval.exp->loc = (yyloc);
2625 yyval.exp = MkExpDummy();
2631 yyval.exp = MkExpIndex(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2632 yyval.exp->loc = (yyloc);
2638 yyval.exp = MkExpCall(yyvsp[(1) - (3)].exp, MkList());
2639 yyval.exp->__anon1.call.argLoc.start = (yylsp[(2) - (3)]).start;
2640 yyval.exp->__anon1.call.argLoc.end = (yylsp[(3) - (3)]).end;
2641 yyval.exp->loc = (yyloc);
2647 yyval.exp = MkExpCall(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2648 yyval.exp->__anon1.call.argLoc.start = (yylsp[(2) - (4)]).start;
2649 yyval.exp->__anon1.call.argLoc.end = (yylsp[(4) - (4)]).end;
2650 yyval.exp->loc = (yyloc);
2656 yyval.exp = MkExpMember(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2657 yyval.exp->loc = (yyloc);
2663 char * constant = yyvsp[(1) - (2)].exp->type == 2 ? yyvsp[(1) - (2)].exp->__anon1.__anon1.constant : (((void *)0));
2664 int len = constant ? strlen(constant) : 0;
2666 if(constant && constant[len - 1] == '.')
2668 constant[len - 1] = 0;
2669 yyval.exp = MkExpMember(yyvsp[(1) - (2)].exp, yyvsp[(2) - (2)].id);
2670 yyval.exp->loc = (yyloc);
2679 yyval.exp = MkExpPointer(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2680 yyval.exp->loc = (yyloc);
2686 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, INC_OP, (((void *)0)));
2687 yyval.exp->loc = (yyloc);
2693 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, DEC_OP, (((void *)0)));
2694 yyval.exp->loc = (yyloc);
2700 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2701 yyval.exp->loc = (yyloc);
2707 yyval.list = MkList();
2708 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2714 yyval.list = MkList();
2715 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2721 yyval.list = yyvsp[(1) - (3)].list;
2722 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2728 yyval.list = yyvsp[(1) - (3)].list;
2729 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2735 yyval.exp = MkExpOp((((void *)0)), INC_OP, yyvsp[(2) - (2)].exp);
2736 yyval.exp->loc = (yyloc);
2742 yyval.exp = MkExpOp((((void *)0)), DEC_OP, yyvsp[(2) - (2)].exp);
2743 yyval.exp->loc = (yyloc);
2749 yyval.exp = MkExpOp((((void *)0)), yyvsp[(1) - (2)].i, yyvsp[(2) - (2)].exp);
2750 yyval.exp->loc = (yyloc);
2756 yyval.exp = MkExpOp((((void *)0)), SIZEOF, yyvsp[(2) - (2)].exp);
2757 yyval.exp->loc = (yyloc);
2763 yyval.exp = MkExpTypeSize(yyvsp[(3) - (4)].typeName);
2764 yyval.exp->loc = (yyloc);
2770 yyval.exp = MkExpOp((((void *)0)), ALIGNOF, yyvsp[(2) - (2)].exp);
2771 yyval.exp->loc = (yyloc);
2777 yyval.exp = MkExpTypeAlign(yyvsp[(3) - (4)].typeName);
2778 yyval.exp->loc = (yyloc);
2826 yyval.exp = MkExpCast(yyvsp[(2) - (4)].typeName, yyvsp[(4) - (4)].exp);
2827 yyval.exp->loc = (yyloc);
2833 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '*', yyvsp[(3) - (3)].exp);
2834 yyval.exp->loc = (yyloc);
2840 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '/', yyvsp[(3) - (3)].exp);
2841 yyval.exp->loc = (yyloc);
2847 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '%', yyvsp[(3) - (3)].exp);
2848 yyval.exp->loc = (yyloc);
2854 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '+', yyvsp[(3) - (3)].exp);
2855 yyval.exp->loc = (yyloc);
2861 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '-', yyvsp[(3) - (3)].exp);
2862 yyval.exp->loc = (yyloc);
2868 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LEFT_OP, yyvsp[(3) - (3)].exp);
2869 yyval.exp->loc = (yyloc);
2875 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, RIGHT_OP, yyvsp[(3) - (3)].exp);
2876 yyval.exp->loc = (yyloc);
2882 yyval.exp = yyvsp[(1) - (2)].exp;
2890 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, '<', yyvsp[(2) - (2)].exp);
2891 yyval.exp->loc = (yyloc);
2897 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '>', yyvsp[(3) - (3)].exp);
2898 yyval.exp->loc = (yyloc);
2904 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LE_OP, yyvsp[(3) - (3)].exp);
2905 yyval.exp->loc = (yyloc);
2911 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, GE_OP, yyvsp[(3) - (3)].exp);
2912 yyval.exp->loc = (yyloc);
2918 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, EQ_OP, yyvsp[(3) - (3)].exp);
2919 yyval.exp->loc = (yyloc);
2925 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, NE_OP, yyvsp[(3) - (3)].exp);
2926 yyval.exp->loc = (yyloc);
2932 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '&', yyvsp[(3) - (3)].exp);
2933 yyval.exp->loc = (yyloc);
2939 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '^', yyvsp[(3) - (3)].exp);
2940 yyval.exp->loc = (yyloc);
2946 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '|', yyvsp[(3) - (3)].exp);
2947 yyval.exp->loc = (yyloc);
2953 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, AND_OP, yyvsp[(3) - (3)].exp);
2954 yyval.exp->loc = (yyloc);
2960 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, OR_OP, yyvsp[(3) - (3)].exp);
2961 yyval.exp->loc = (yyloc);
2967 yyval.exp = MkExpCondition(yyvsp[(1) - (5)].exp, yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].exp);
2968 yyval.exp->loc = (yyloc);
2974 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
2975 yyval.exp->loc = (yyloc);
2981 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
2982 yyval.exp->loc = (yyloc);
2994 yyval.i = MUL_ASSIGN;
3000 yyval.i = DIV_ASSIGN;
3006 yyval.i = MOD_ASSIGN;
3012 yyval.i = ADD_ASSIGN;
3018 yyval.i = SUB_ASSIGN;
3024 yyval.i = LEFT_ASSIGN;
3030 yyval.i = RIGHT_ASSIGN;
3036 yyval.i = AND_ASSIGN;
3042 yyval.i = XOR_ASSIGN;
3048 yyval.i = OR_ASSIGN;
3054 yyval.list = MkList();
3055 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
3061 yyval.list = yyvsp[(1) - (3)].list;
3062 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
3068 yyval.declaration = MkDeclaration(yyvsp[(1) - (2)].list, (((void *)0)));
3069 yyval.declaration->loc = (yyloc);
3075 yyval.declaration = MkDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list);
3076 yyval.declaration->loc = (yyloc);
3082 yyval.declaration = MkDeclarationInst(yyvsp[(1) - (2)].instance);
3083 yyval.declaration->loc = (yyloc);
3089 yyval.declaration = MkDeclarationDefine(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].exp);
3090 yyval.declaration->loc = (yyloc);
3096 yyval.list = MkList();
3097 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3103 yyval.list = yyvsp[(1) - (2)].list;
3104 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3110 yyval.list = MkList();
3111 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3117 yyval.list = yyvsp[(1) - (2)].list;
3118 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3124 yyval.list = MkList();
3125 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3131 yyval.list = yyvsp[(1) - (2)].list;
3132 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3138 yyval.list = MkList();
3139 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3145 yyval.list = yyvsp[(1) - (2)].list;
3146 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3152 yyval.list = MkList();
3153 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3159 yyval.list = yyvsp[(1) - (2)].list;
3160 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3166 yyval.list = MkList();
3167 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3173 yyval.list = yyvsp[(1) - (2)].list;
3174 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3180 yyval.list = MkList();
3181 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3187 yyval.list = yyvsp[(1) - (2)].list;
3188 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3194 yyval.list = MkList();
3195 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3201 yyval.list = yyvsp[(1) - (2)].list;
3202 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3208 yyval.list = MkList();
3209 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3215 yyval.list = yyvsp[(1) - (2)].list;
3216 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3222 yyval.list = MkList();
3223 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3229 yyval.list = yyvsp[(1) - (2)].list;
3230 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3236 yyval.list = MkList();
3237 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3243 yyval.list = yyvsp[(1) - (2)].list;
3244 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3250 yyval.list = MkList();
3251 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3257 yyval.list = yyvsp[(1) - (2)].list;
3258 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3264 yyval.list = MkList();
3265 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3271 yyval.list = yyvsp[(1) - (2)].list;
3272 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3278 yyval.list = MkList();
3279 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3285 yyval.list = yyvsp[(1) - (2)].list;
3286 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3292 yyval.list = MkList();
3293 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3299 yyval.list = yyvsp[(1) - (2)].list;
3300 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3306 yyval.list = MkList();
3307 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3313 yyval.list = yyvsp[(1) - (2)].list;
3314 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3320 yyval.list = MkList();
3321 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3327 yyval.list = yyvsp[(1) - (2)].list;
3328 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3334 yyval.list = MkList();
3335 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3341 yyval.list = yyvsp[(1) - (2)].list;
3342 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3348 yyval.list = MkList();
3349 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3355 yyval.list = yyvsp[(1) - (2)].list;
3356 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3362 yyval.list = MkList();
3363 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3369 yyval.list = yyvsp[(1) - (2)].list;
3370 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3376 yyval.list = yyvsp[(1) - (1)].list;
3382 yyval.list = MkList();
3383 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3389 yyval.list = MkList();
3390 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3396 yyval.list = yyvsp[(1) - (2)].list;
3397 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3403 yyval.list = MkList();
3404 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3410 yyval.list = yyvsp[(1) - (2)].list;
3411 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3417 yyval.list = MkList();
3418 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3424 yyval.list = yyvsp[(1) - (2)].list;
3425 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3431 yyval.list = MkList();
3432 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3433 FreeIdentifier(yyvsp[(1) - (1)].id);
3439 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3440 FreeIdentifier(yyvsp[(2) - (2)].id);
3446 _DeclClass(yyvsp[(1) - (4)].id->_class, yyvsp[(1) - (4)].id->string);
3447 yyval.list = MkList();
3448 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3449 FreeIdentifier(yyvsp[(1) - (4)].id);
3455 _DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
3456 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3457 FreeIdentifier(yyvsp[(2) - (5)].id);
3463 yyval.list = MkList();
3464 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3470 yyval.list = yyvsp[(1) - (2)].list;
3471 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3477 yyval.list = MkList();
3478 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3484 yyval.list = yyvsp[(1) - (2)].list;
3485 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3491 yyval.list = MkList();
3492 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3498 yyval.list = yyvsp[(1) - (2)].list;
3499 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3505 yyval.list = MkList();
3506 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3512 yyval.list = yyvsp[(1) - (2)].list;
3513 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3519 yyval.list = MkList();
3520 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3526 yyval.list = yyvsp[(1) - (2)].list;
3527 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3533 yyval.list = MkList();
3534 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3535 FreeIdentifier(yyvsp[(1) - (1)].id);
3541 yyval.list = yyvsp[(1) - (2)].list;
3542 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3543 FreeIdentifier(yyvsp[(2) - (2)].id);
3548 _DeclClass(yyvsp[(1) - (4)].id->_class, yyvsp[(1) - (4)].id->string);
3549 yyval.list = MkList();
3550 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3551 FreeIdentifier(yyvsp[(1) - (4)].id);
3557 _DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
3558 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3559 FreeIdentifier(yyvsp[(2) - (5)].id);
3565 yyval.list = MkList();
3566 ListAdd(yyval.list, yyvsp[(1) - (1)].initDeclarator);
3572 yyval.list = yyvsp[(1) - (3)].list;
3573 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initDeclarator);
3579 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
3580 yyval.initDeclarator->loc = (yyloc);
3586 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].initializer);
3587 yyval.initDeclarator->loc = (yyloc);
3588 yyval.initDeclarator->initializer->loc.start = (yylsp[(2) - (3)]).end;
3594 yyval.specifier = MkSpecifier(TYPEDEF);
3600 yyval.specifier = MkSpecifier(EXTERN);
3606 yyval.specifier = MkSpecifier(STATIC);
3612 yyval.specifier = MkSpecifier(AUTO);
3618 yyval.specifier = MkSpecifier(REGISTER);
3624 yyval.specifier = MkSpecifier(THREAD);
3630 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
3636 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
3642 yyval.extDecl = MkExtDeclAttrib(yyvsp[(1) - (1)].attrib);
3654 yyval.i = ATTRIB_DEP;
3666 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3672 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3678 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3684 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3690 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3696 yyval.attribute = MkAttribute(yyvsp[(1) - (1)].string, (((void *)0)));
3697 yyval.attribute->loc = (yyloc);
3703 yyval.attribute = MkAttribute(yyvsp[(1) - (4)].string, MkExpBrackets(yyvsp[(3) - (4)].list));
3704 yyval.attribute->loc = (yyloc);
3710 yyval.list = MkListOne(yyvsp[(1) - (1)].attribute);
3716 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].attribute);
3717 yyval.list = yyvsp[(1) - (2)].list;
3723 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].attribute);
3724 yyval.list = yyvsp[(1) - (3)].list;
3730 yyval.attrib = MkAttrib(yyvsp[(1) - (6)].i, yyvsp[(4) - (6)].list);
3731 yyval.attrib->loc = (yyloc);
3737 yyval.attrib = MkAttrib(yyvsp[(1) - (5)].i, (((void *)0)));
3738 yyval.attrib->loc = (yyloc);
3744 yyval.specifier = MkSpecifierExtended(yyvsp[(1) - (1)].extDecl);
3750 yyval.specifier = MkSpecifier(CONST);
3756 yyval.specifier = MkSpecifier(VOLATILE);
3762 yyval.specifier = yyvsp[(1) - (1)].specifier;
3768 yyval.specifier = MkSpecifier(VOID);
3774 yyval.specifier = MkSpecifier(CHAR);
3780 yyval.specifier = MkSpecifier(SHORT);
3786 yyval.specifier = MkSpecifier(INT);
3792 yyval.specifier = MkSpecifier(UINT);
3798 yyval.specifier = MkSpecifier(INT64);
3804 yyval.specifier = MkSpecifier(VALIST);
3810 yyval.specifier = MkSpecifier(LONG);
3816 yyval.specifier = MkSpecifier(FLOAT);
3822 yyval.specifier = MkSpecifier(DOUBLE);
3828 yyval.specifier = MkSpecifier(SIGNED);
3834 yyval.specifier = MkSpecifier(UNSIGNED);
3840 yyval.specifier = MkSpecifier(EXTENSION);
3846 yyval.specifier = MkSpecifier(_BOOL);
3852 yyval.specifier = MkSpecifier(BOOL);
3858 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
3864 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
3870 _DeclClass(yyvsp[(3) - (4)].id->_class, yyvsp[(3) - (4)].id->string);
3871 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
3872 FreeIdentifier(yyvsp[(3) - (4)].id);
3878 yyval.specifier = MkSpecifier(THISCLASS);
3884 yyval.specifier = MkSpecifier(TYPED_OBJECT);
3890 yyval.specifier = MkSpecifier(ANY_OBJECT);
3896 yyval.specifier = MkSpecifier(VOID);
3902 yyval.specifier = MkSpecifier(CHAR);
3908 yyval.specifier = MkSpecifier(SHORT);
3914 yyval.specifier = MkSpecifier(INT);
3920 yyval.specifier = MkSpecifier(UINT);
3926 yyval.specifier = MkSpecifier(INT64);
3932 yyval.specifier = MkSpecifier(VALIST);
3938 yyval.specifier = MkSpecifier(LONG);
3944 yyval.specifier = MkSpecifier(FLOAT);
3950 yyval.specifier = MkSpecifier(DOUBLE);
3956 yyval.specifier = MkSpecifier(SIGNED);
3962 yyval.specifier = MkSpecifier(UNSIGNED);
3968 yyval.specifier = MkSpecifier(EXTENSION);
3974 yyval.specifier = MkSpecifier(_BOOL);
3980 yyval.specifier = MkSpecifier(BOOL);
3986 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
3992 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
3998 _DeclClass(yyvsp[(3) - (4)].id->_class, yyvsp[(3) - (4)].id->string);
3999 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
4000 FreeIdentifier(yyvsp[(3) - (4)].id);
4006 yyval.specifier = MkSpecifier(THISCLASS);
4012 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4014 DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
4020 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), yyvsp[(3) - (4)].list);
4026 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, yyvsp[(2) - (4)].id, (((void *)0)));
4028 DeclClass(yyvsp[(2) - (4)].id->_class, yyvsp[(2) - (4)].id->string);
4034 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, (((void *)0)), (((void *)0)));
4040 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, MkIdentifier(yyvsp[(2) - (5)].specifier->__anon1.__anon1.name), yyvsp[(4) - (5)].list);
4042 DeclClass(yyvsp[(2) - (5)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (5)].specifier->__anon1.__anon1.name);
4043 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4049 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, yyvsp[(3) - (6)].id, yyvsp[(5) - (6)].list);
4050 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (6)].extDecl;
4052 DeclClass(yyvsp[(3) - (6)].id->_class, yyvsp[(3) - (6)].id->string);
4058 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, (((void *)0)), yyvsp[(4) - (5)].list);
4059 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (5)].extDecl;
4065 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(3) - (5)].id, (((void *)0)));
4066 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (5)].extDecl;
4068 DeclClass(yyvsp[(3) - (5)].id->_class, yyvsp[(3) - (5)].id->string);
4074 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), (((void *)0)));
4075 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (4)].extDecl;
4081 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, MkIdentifier(yyvsp[(3) - (6)].specifier->__anon1.__anon1.name), yyvsp[(5) - (6)].list);
4082 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (6)].extDecl;
4084 DeclClass(yyvsp[(3) - (6)].specifier->__anon1.__anon1.nsSpec, yyvsp[(3) - (6)].specifier->__anon1.__anon1.name);
4085 FreeSpecifier(yyvsp[(3) - (6)].specifier);
4091 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, yyvsp[(2) - (2)].id, (((void *)0)));
4093 DeclClass(yyvsp[(2) - (2)].id->_class, yyvsp[(2) - (2)].id->string);
4099 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, MkIdentifier(yyvsp[(2) - (2)].specifier->__anon1.__anon1.name), (((void *)0)));
4101 DeclClass(yyvsp[(2) - (2)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (2)].specifier->__anon1.__anon1.name);
4102 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4108 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, yyvsp[(3) - (3)].id, (((void *)0)));
4109 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (3)].extDecl;
4111 DeclClass(yyvsp[(3) - (3)].id->_class, yyvsp[(3) - (3)].id->string);
4117 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, MkIdentifier(yyvsp[(3) - (3)].specifier->__anon1.__anon1.name), (((void *)0)));
4118 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (3)].extDecl;
4120 DeclClass(yyvsp[(3) - (3)].specifier->__anon1.__anon1.nsSpec, yyvsp[(3) - (3)].specifier->__anon1.__anon1.name);
4121 FreeSpecifier(yyvsp[(3) - (3)].specifier);
4127 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0)));
4133 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4139 yyval.templateArgument = MkTemplateTypeArgument(MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0))));
4145 yyval.templateArgument = MkTemplateTypeArgument(MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator));
4151 yyval.templateArgument = MkTemplateExpressionArgument(yyvsp[(1) - (1)].exp);
4157 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4158 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4159 yyval.templateArgument->loc = (yyloc);
4165 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4166 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4167 yyval.templateArgument->loc = (yyloc);
4173 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4174 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4176 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4179 yyval.templateArgument->name = MkIdentifier(spec->__anon1.__anon1.name);
4181 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4182 yyval.templateArgument->loc = (yyloc);
4188 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4189 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4191 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4194 yyval.templateArgument->name = MkIdentifier(spec->__anon1.__anon1.name);
4196 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4197 yyval.templateArgument->loc = (yyloc);
4203 yyval.list = MkList();
4204 ListAdd(yyval.list, yyvsp[(1) - (1)].templateArgument);
4210 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].templateArgument);
4216 yyval.specifierType = 3;
4222 yyval.specifierType = 4;
4228 yyval.list = MkList();
4229 ListAdd(yyval.list, yyvsp[(1) - (1)].classDef);
4235 yyval.list = yyvsp[(1) - (2)].list;
4236 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].classDef);
4242 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
4243 yyval.memberInit->loc = (yyloc);
4244 yyval.memberInit->realLoc = (yyloc);
4250 yyval.list = MkList();
4251 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
4252 ((struct MemberInit *)(*yyval.list).last)->loc = (yyloc);
4258 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
4259 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
4260 yyval.list = yyvsp[(1) - (3)].list;
4266 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4267 yyval.prop->loc = (yyloc);
4273 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4274 yyval.prop->loc = (yyloc);
4280 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, yyvsp[(6) - (7)].stmt, (((void *)0)));
4281 yyval.prop->loc = (yyloc);
4287 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, (((void *)0)), yyvsp[(6) - (7)].stmt);
4288 yyval.prop->loc = (yyloc);
4294 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, (((void *)0)), yyvsp[(3) - (5)].id, (((void *)0)), (((void *)0)));
4295 yyval.prop->loc = (yyloc);
4301 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(7) - (10)].stmt, yyvsp[(9) - (10)].stmt);
4302 yyval.prop->loc = (yyloc);
4308 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(9) - (10)].stmt, yyvsp[(7) - (10)].stmt);
4309 yyval.prop->loc = (yyloc);
4315 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, yyvsp[(7) - (8)].stmt, (((void *)0)));
4316 yyval.prop->loc = (yyloc);
4322 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, (((void *)0)), yyvsp[(7) - (8)].stmt);
4323 yyval.prop->loc = (yyloc);
4329 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator, yyvsp[(4) - (6)].id, (((void *)0)), (((void *)0)));
4330 yyval.prop->loc = (yyloc);
4336 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (8)].stmt, yyvsp[(7) - (8)].stmt);
4337 yyval.prop->loc = (yyloc);
4343 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(7) - (8)].stmt, yyvsp[(5) - (8)].stmt);
4344 yyval.prop->loc = (yyloc);
4350 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt, (((void *)0)));
4351 yyval.prop->loc = (yyloc);
4357 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt);
4358 yyval.prop->loc = (yyloc);
4364 yyval.prop = MkProperty(yyvsp[(2) - (4)].list, (((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
4365 yyval.prop->loc = (yyloc);
4371 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4372 yyval.prop->loc = (yyloc);
4378 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4379 yyval.prop->loc = (yyloc);
4385 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), yyvsp[(6) - (7)].stmt, (((void *)0)));
4386 yyval.prop->loc = (yyloc);
4392 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), (((void *)0)), yyvsp[(6) - (7)].stmt);
4393 yyval.prop->loc = (yyloc);
4399 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, yyvsp[(3) - (5)].declarator, (((void *)0)), (((void *)0)), (((void *)0)));
4400 yyval.prop->loc = (yyloc);
4406 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list, (((void *)0))));
4407 yyval.classDef->__anon1.decl->loc = (yyloc);
4408 yyval.classDef->loc = (yyloc);
4414 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (2)].list, (((void *)0)), (((void *)0))));
4415 yyval.classDef->__anon1.decl->loc = (yyloc);
4416 yyval.classDef->loc = (yyloc);
4422 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4423 yyval.classDef->loc = (yyloc);
4424 yyval.classDef->__anon1.decl->loc = (yyloc);
4430 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4431 yyval.classDef->loc = (yyloc);
4432 yyval.classDef->__anon1.decl->loc = (yyloc);
4438 yyval.classDef = MkClassDefFunction(yyvsp[(1) - (1)].classFunction);
4439 yyval.classDef->loc = (yyloc);
4445 yyval.classDef = MkClassDefDefaultProperty(yyvsp[(1) - (2)].list);
4446 if((*yyvsp[(1) - (2)].list).last)
4447 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).start;
4448 yyval.classDef->loc = (yyloc);
4454 yyval.classDef = MkClassDefProperty(yyvsp[(1) - (1)].prop);
4455 yyval.classDef->loc = (yyloc);
4461 yyval.classDef = (((void *)0));
4467 yyval.list = MkList();
4468 ListAdd(yyval.list, yyvsp[(1) - (1)].declarator);
4474 yyval.list = yyvsp[(1) - (3)].list;
4475 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].declarator);
4481 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
4482 yyval.declarator->loc = (yyloc);
4488 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (2)].declarator, (((void *)0)));
4489 yyval.declarator->__anon1.structDecl.attrib = yyvsp[(2) - (2)].attrib;
4490 yyval.declarator->loc = (yyloc);
4496 yyval.declarator = MkStructDeclarator((((void *)0)), yyvsp[(2) - (2)].exp);
4497 yyval.declarator->loc = (yyloc);
4503 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].exp);
4504 yyval.declarator->loc = (yyloc);
4510 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (5)].declarator, yyvsp[(3) - (5)].exp);
4511 yyval.declarator->__anon1.structDecl.posExp = yyvsp[(5) - (5)].exp;
4512 yyval.declarator->loc = (yyloc);
4518 yyval.specifier = MkEnum(yyvsp[(2) - (2)].id, (((void *)0)));
4520 DeclClass(yyvsp[(2) - (2)].id->_class, yyvsp[(2) - (2)].id->string);
4526 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (2)].specifier->__anon1.__anon1.name), (((void *)0)));
4528 DeclClass(yyvsp[(2) - (2)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (2)].specifier->__anon1.__anon1.name);
4529 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4535 yyval.specifier = MkEnum((((void *)0)), yyvsp[(3) - (4)].list);
4541 yyval.specifier = MkEnum(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4543 DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
4549 yyval.specifier = MkEnum(yyvsp[(2) - (7)].id, yyvsp[(4) - (7)].list);
4550 yyval.specifier->__anon1.__anon2.definitions = yyvsp[(6) - (7)].list;
4552 DeclClass(yyvsp[(2) - (7)].id->_class, yyvsp[(2) - (7)].id->string);
4558 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (7)].specifier->__anon1.__anon1.name), yyvsp[(4) - (7)].list);
4559 yyval.specifier->__anon1.__anon2.definitions = yyvsp[(6) - (7)].list;
4561 DeclClass(yyvsp[(2) - (7)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (7)].specifier->__anon1.__anon1.name);
4562 FreeSpecifier(yyvsp[(2) - (7)].specifier);
4568 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (5)].specifier->__anon1.__anon1.name), yyvsp[(4) - (5)].list);
4570 DeclClass(yyvsp[(2) - (5)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (5)].specifier->__anon1.__anon1.name);
4571 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4577 yyval.list = MkList();
4578 ListAdd(yyval.list, yyvsp[(1) - (1)].enumerator);
4584 yyval.list = yyvsp[(1) - (3)].list;
4585 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].enumerator);
4591 yyval.enumerator = MkEnumerator(yyvsp[(1) - (1)].id, (((void *)0)));
4597 yyval.enumerator = MkEnumerator(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].exp);
4603 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4609 yyval.declarator = MkDeclaratorArray((((void *)0)), (((void *)0)));
4615 yyval.declarator = MkDeclaratorArray((((void *)0)), yyvsp[(2) - (3)].exp);
4621 yyval.declarator = MkDeclaratorEnumArray((((void *)0)), yyvsp[(2) - (3)].specifier);
4627 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4633 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4639 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4645 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4651 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4657 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4663 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4669 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4675 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4681 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4687 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4693 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4699 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4705 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4711 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4717 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4723 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4729 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4735 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4741 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4747 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4753 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4759 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4765 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4771 yyval.declarator = MkDeclaratorExtendedEnd(yyvsp[(2) - (2)].extDecl, yyvsp[(1) - (2)].declarator);
4777 yyval.declarator = MkDeclaratorIdentifier(yyvsp[(1) - (1)].id);
4783 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4789 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4795 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4801 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4807 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4813 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4819 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4825 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4831 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4837 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4843 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (2)].declarator, (((void *)0)));
4849 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4855 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4861 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4867 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4873 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4879 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4885 yyval.list = MkList();
4886 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
4892 yyval.list = yyvsp[(1) - (2)].list;
4893 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
4899 yyval.pointer = MkPointer((((void *)0)), (((void *)0)));
4905 yyval.pointer = MkPointer(yyvsp[(2) - (2)].list, (((void *)0)));
4911 yyval.pointer = MkPointer((((void *)0)), yyvsp[(2) - (2)].pointer);
4917 yyval.pointer = MkPointer(yyvsp[(2) - (3)].list, yyvsp[(3) - (3)].pointer);
4923 yyval.list = yyvsp[(1) - (3)].list;
4924 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), (((void *)0))));
4930 yyval.list = MkList();
4931 ListAdd(yyval.list, yyvsp[(1) - (1)].typeName);
4937 yyval.list = yyvsp[(1) - (3)].list;
4938 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].typeName);
4944 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4950 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4956 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), (((void *)0))));
4962 yyval.typeName = MkTypeName(yyvsp[(1) - (3)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), yyvsp[(3) - (3)].declarator));
4968 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
4974 yyval.typeName = MkTypeName(MkListOne(MkSpecifier(CLASS)), (((void *)0)));
4980 yyval.list = MkList();
4981 ListAdd(yyval.list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(1) - (1)].id)));
4987 yyval.list = yyvsp[(1) - (3)].list;
4988 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(3) - (3)].id)));
4994 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5000 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5006 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5012 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5018 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5019 yyval.initializer->loc = (yyloc);
5025 yyval.initializer = MkInitializerList(yyvsp[(2) - (3)].list);
5026 yyval.initializer->loc = (yyloc);
5032 yyval.initializer = MkInitializerList(yyvsp[(2) - (4)].list);
5033 yyval.initializer->loc = (yyloc);
5035 struct Expression * exp = MkExpDummy();
5036 struct Initializer * init = MkInitializerAssignment(exp);
5038 init->loc = (yylsp[(3) - (4)]);
5039 exp->loc = (yylsp[(3) - (4)]);
5040 ListAdd(yyvsp[(2) - (4)].list, init);
5047 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5048 yyval.initializer->loc = (yyloc);
5054 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5055 yyval.initializer->loc = (yyloc);
5061 yyval.list = MkList();
5062 ListAdd(yyval.list, yyvsp[(1) - (1)].initializer);
5068 yyval.list = yyvsp[(1) - (3)].list;
5069 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initializer);
5075 yyval.stmt = MkLabeledStmt(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].stmt);
5076 yyval.stmt->loc = (yyloc);
5082 yyval.stmt = MkCaseStmt(yyvsp[(2) - (4)].exp, yyvsp[(4) - (4)].stmt);
5083 yyval.stmt->loc = (yyloc);
5084 yyvsp[(2) - (4)].exp->loc.start = (yylsp[(1) - (4)]).end;
5090 yyval.stmt = MkCaseStmt((((void *)0)), yyvsp[(3) - (3)].stmt);
5091 yyval.stmt->loc = (yyloc);
5097 yyval.list = MkList();
5098 ListAdd(yyval.list, yyvsp[(1) - (1)].declaration);
5104 yyval.list = yyvsp[(1) - (2)].list;
5105 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declaration);
5111 yyval.list = MkList();
5112 ListAdd(yyval.list, yyvsp[(1) - (1)].stmt);
5118 yyval.list = yyvsp[(1) - (2)].list;
5119 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].stmt);
5125 struct Statement * stmt = MkBadDeclStmt(yyvsp[(2) - (2)].declaration);
5127 stmt->loc = (yylsp[(2) - (2)]);
5128 ListAdd(yyvsp[(1) - (2)].list, stmt);
5129 yyval.list = yyvsp[(1) - (2)].list;
5135 yyval.stmt = MkCompoundStmt((((void *)0)), yyvsp[(1) - (1)].list);
5141 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (1)].list, (((void *)0)));
5147 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].list);
5153 yyval.context = PushContext();
5159 yyval.stmt = MkCompoundStmt((((void *)0)), (((void *)0)));
5160 yyval.stmt->__anon1.compound.context = PushContext();
5161 PopContext(yyval.stmt->__anon1.compound.context);
5162 yyval.stmt->loc = (yyloc);
5168 yyval.stmt = yyvsp[(2) - (3)].stmt;
5169 yyval.stmt->__anon1.compound.context = yyvsp[(1) - (3)].context;
5170 PopContext(yyvsp[(1) - (3)].context);
5171 yyval.stmt->loc = (yyloc);
5177 yyval.stmt = MkExpressionStmt((((void *)0)));
5178 yyval.stmt->loc = (yyloc);
5184 yyval.stmt = MkExpressionStmt(yyvsp[(1) - (2)].list);
5185 yyval.stmt->loc = (yyloc);
5191 yyval.stmt = MkIfStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt, (((void *)0)));
5192 yyval.stmt->loc = (yyloc);
5198 yyval.stmt = MkIfStmt(yyvsp[(3) - (7)].list, yyvsp[(5) - (7)].stmt, yyvsp[(7) - (7)].stmt);
5199 yyval.stmt->loc = (yyloc);
5205 yyval.stmt = MkSwitchStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5206 yyval.stmt->loc = (yyloc);
5212 yyval.stmt = MkWhileStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5213 yyval.stmt->loc = (yyloc);
5219 yyval.stmt = MkDoWhileStmt(yyvsp[(2) - (7)].stmt, yyvsp[(5) - (7)].list);
5220 yyval.stmt->loc = (yyloc);
5226 yyval.stmt = MkForStmt(yyvsp[(3) - (6)].stmt, yyvsp[(4) - (6)].stmt, (((void *)0)), yyvsp[(6) - (6)].stmt);
5227 yyval.stmt->loc = (yyloc);
5233 yyval.stmt = MkForStmt(yyvsp[(3) - (7)].stmt, yyvsp[(4) - (7)].stmt, yyvsp[(5) - (7)].list, yyvsp[(7) - (7)].stmt);
5234 yyval.stmt->loc = (yyloc);
5240 yyval.stmt = MkWhileStmt((((void *)0)), yyvsp[(4) - (4)].stmt);
5241 yyval.stmt->loc = (yyloc);
5247 yyval.stmt = MkForStmt(yyvsp[(3) - (5)].stmt, (((void *)0)), (((void *)0)), yyvsp[(5) - (5)].stmt);
5248 yyval.stmt->loc = (yyloc);
5254 yyval.stmt = MkForStmt((((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(4) - (4)].stmt);
5255 yyval.stmt->loc = (yyloc);
5261 yyval.stmt = MkGotoStmt(yyvsp[(2) - (3)].id);
5262 yyval.stmt->loc = (yyloc);
5268 yyval.stmt = MkContinueStmt();
5269 yyval.stmt->loc = (yyloc);
5275 yyval.stmt = MkBreakStmt();
5276 yyval.stmt->loc = (yyloc);
5282 struct Expression * exp = MkExpDummy();
5284 yyval.stmt = MkReturnStmt(MkListOne(exp));
5285 yyval.stmt->loc = (yyloc);
5286 exp->loc = (yylsp[(2) - (2)]);
5292 yyval.stmt = MkReturnStmt(yyvsp[(2) - (3)].list);
5293 yyval.stmt->loc = (yyloc);
5299 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
5305 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5306 yyval.instance->loc = (yyloc);
5307 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5308 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5309 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5315 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5316 yyval.instance->loc = (yyloc);
5317 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5318 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5319 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5325 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5326 yyval.instance->loc = (yyloc);
5327 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5328 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5329 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5335 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5336 yyval.instance->loc = (yyloc);
5337 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5338 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5339 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5345 yyval.instance = MkInstantiation(yyvsp[(1) - (4)].specifier, (((void *)0)), yyvsp[(3) - (4)].list);
5346 yyval.instance->loc = (yyloc);
5347 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5348 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5354 yyval.instance = MkInstantiation(yyvsp[(1) - (3)].specifier, (((void *)0)), MkList());
5355 yyval.instance->loc = (yyloc);
5356 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5357 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5363 struct Location tmpLoc = type_yylloc;
5365 type_yylloc = (yylsp[(1) - (4)]);
5366 type_yylloc = tmpLoc;
5367 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (4)].id->string), (((void *)0)), yyvsp[(3) - (4)].list);
5368 yyval.instance->loc = (yyloc);
5369 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5370 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5371 FreeIdentifier(yyvsp[(1) - (4)].id);
5377 struct Location tmpLoc = type_yylloc;
5379 type_yylloc = (yylsp[(1) - (3)]);
5380 type_yylloc = tmpLoc;
5381 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (3)].id->string), (((void *)0)), MkList());
5382 yyval.instance->loc = (yyloc);
5383 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5384 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5385 FreeIdentifier(yyvsp[(1) - (3)].id);
5391 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), yyvsp[(2) - (3)].list);
5392 yyval.instance->loc = (yyloc);
5393 yyval.instance->insideLoc.start = (yylsp[(1) - (3)]).end;
5394 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5400 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), MkList());
5401 yyval.instance->loc = (yyloc);
5402 yyval.instance->insideLoc.start = (yylsp[(1) - (2)]).end;
5403 yyval.instance->insideLoc.end = (yylsp[(2) - (2)]).start;
5409 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5410 yyval.classFunction->loc = (yyloc);
5416 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5417 yyval.classFunction->loc = (yyloc);
5423 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, (((void *)0)));
5424 yyval.classFunction->loc = (yyloc);
5430 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5431 yyval.classFunction->loc = (yyloc);
5437 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5438 yyval.classFunction->loc = (yyloc);
5444 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5445 yyval.classFunction->loc = (yyloc);
5451 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5452 yyval.classFunction->loc = (yyloc);
5458 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5459 yyval.classFunction->loc = (yyloc);
5465 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
5466 yyval.memberInit->loc = (yyloc);
5467 yyval.memberInit->realLoc = (yyloc);
5468 yyval.memberInit->initializer->loc.start = (yylsp[(2) - (3)]).end;
5474 yyval.memberInit = MkMemberInit((((void *)0)), yyvsp[(1) - (1)].initializer);
5475 yyval.memberInit->loc = (yyloc);
5476 yyval.memberInit->realLoc = (yyloc);
5482 yyval.list = MkList();
5483 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
5489 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
5490 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
5491 yyval.list = yyvsp[(1) - (3)].list;
5497 if((*yyvsp[(1) - (2)].list).last)
5498 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).end;
5499 yyval.list = yyvsp[(1) - (2)].list;
5505 struct MembersInit * members = MkMembersInitList(yyvsp[(1) - (1)].list);
5507 yyval.list = MkList();
5508 ListAdd(yyval.list, members);
5509 members->loc = (yylsp[(1) - (1)]);
5515 yyval.list = MkList();
5516 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(1) - (1)].classFunction));
5517 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5523 struct MembersInit * members = MkMembersInitList(yyvsp[(2) - (2)].list);
5525 ListAdd(yyval.list, members);
5526 members->loc = (yylsp[(2) - (2)]);
5527 yyval.list = yyvsp[(1) - (2)].list;
5533 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(2) - (2)].classFunction));
5534 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5535 yyval.list = yyvsp[(1) - (2)].list;
5541 struct MembersInit * members = MkMembersInitList(MkList());
5543 yyval.list = MkList();
5544 ListAdd(yyval.list, members);
5545 members->loc = (yylsp[(1) - (1)]);
5551 struct MembersInit * members = MkMembersInitList(MkList());
5553 ListAdd(yyval.list, members);
5554 members->loc = (yylsp[(2) - (2)]);
5555 yyval.list = yyvsp[(1) - (2)].list;
5561 yyval.list = MkList();
5562 ListAdd(yyval.list, MkMembersInitList(yyvsp[(1) - (1)].list));
5563 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5569 ListAdd(yyvsp[(1) - (2)].list, MkMembersInitList(yyvsp[(2) - (2)].list));
5570 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5576 parsedType = yyvsp[(1) - (1)].typeName;
5582 parsedType = yyvsp[(1) - (3)].typeName;
5583 parsedType->bitCount = yyvsp[(3) - (3)].exp;
5594 fprintf((bsl_stderr()), "%s ", "-> $$ =");
5595 yy_symbol_print((bsl_stderr()), yyr1[yyn], &yyval, &yyloc);
5596 fprintf((bsl_stderr()), "\n");
5599 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5604 yy_stack_print((yyss), (yyssp));
5609 yystate = yypgoto[yyn - 144] + *yyssp;
5610 if(0 <= yystate && yystate <= 9157 && yycheck[yystate] == *yyssp)
5611 yystate = yytable[yystate];
5613 yystate = yydefgoto[yyn - 144];
5619 yyerror("syntax error");
5621 yyerror_range[0] = type_yylloc;
5622 if(yyerrstatus == 3)
5624 if(type_yychar <= 0)
5626 if(type_yychar == 0)
5631 yydestruct("Error: discarding", yytoken, &type_yylval, &type_yylloc);
5639 yyerror_range[0] = yylsp[1 - yylen];
5640 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5645 yy_stack_print((yyss), (yyssp));
5653 yyn = yypact[yystate];
5657 if(0 <= yyn && yyn <= 9157 && yycheck[yyn] == 1)
5666 yyerror_range[0] = *yylsp;
5667 yydestruct("Error: popping", yystos[yystate], yyvsp, yylsp);
5668 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
5673 yy_stack_print((yyss), (yyssp));
5676 *++yyvsp = type_yylval;
5677 yyerror_range[1] = type_yylloc;
5678 (yyloc.start = ((yyerror_range - 1))[1].start);
5679 (yyloc.end = ((yyerror_range - 1))[2].end);
5686 fprintf((bsl_stderr()), "%s ", "Shifting");
5687 yy_symbol_print((bsl_stderr()), yystos[yyn], yyvsp, yylsp);
5688 fprintf((bsl_stderr()), "\n");
5700 yyerror("memory exhausted");
5703 if(type_yychar != (-2))
5704 yydestruct("Cleanup: discarding lookahead", yytoken, &type_yylval, &type_yylloc);
5705 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5709 yy_stack_print((yyss), (yyssp));
5711 while(yyssp != yyss)
5713 yydestruct("Cleanup: popping", yystos[*yyssp], yyvsp, yylsp);
5714 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));