1 /* Code generated from eC source file: type.ec */
3 #define __runtimePlatform 1
4 #elif defined(__APPLE__)
5 #define __runtimePlatform 3
7 #define __runtimePlatform 2
10 typedef long long int64;
11 typedef unsigned long long uint64;
15 #elif defined(__TINYC__)
17 #define __builtin_va_list va_list
18 #define __builtin_va_start va_start
19 #define __builtin_va_end va_end
21 #define strcasecmp stricmp
22 #define strncasecmp strnicmp
23 #define __declspec(x) __attribute__((x))
27 typedef long long int64;
28 typedef unsigned long long uint64;
30 typedef __int64 int64;
31 typedef unsigned __int64 uint64;
34 #define __ENDIAN_PAD(x) (8 - (x))
36 #define __ENDIAN_PAD(x) 0
39 # if defined(__GNUC__) || defined(__TINYC__)
40 # define ecere_stdcall __attribute__((__stdcall__))
41 # define ecere_gcc_struct __attribute__((gcc_struct))
43 # define ecere_stdcall __stdcall
44 # define ecere_gcc_struct
47 # define ecere_stdcall
48 # define ecere_gcc_struct
51 #include <sys/types.h>
54 IDENTIFIER = 258, CONSTANT = 259, STRING_LITERAL = 260, SIZEOF = 261, PTR_OP = 262, INC_OP = 263, DEC_OP = 264, LEFT_OP = 265, RIGHT_OP = 266, LE_OP = 267, GE_OP = 268, EQ_OP = 269, NE_OP = 270, AND_OP = 271, OR_OP = 272, MUL_ASSIGN = 273, DIV_ASSIGN = 274, MOD_ASSIGN = 275, ADD_ASSIGN = 276, SUB_ASSIGN = 277, LEFT_ASSIGN = 278, RIGHT_ASSIGN = 279, AND_ASSIGN = 280, XOR_ASSIGN = 281, OR_ASSIGN = 282, TYPE_NAME = 283, TYPEDEF = 284, EXTERN = 285, STATIC = 286, AUTO = 287, REGISTER = 288, CHAR = 289, SHORT = 290, INT = 291, UINT = 292, INT64 = 293, LONG = 294, SIGNED = 295, UNSIGNED = 296, FLOAT = 297, DOUBLE = 298, CONST = 299, VOLATILE = 300, VOID = 301, VALIST = 302, STRUCT = 303, UNION = 304, ENUM = 305, ELLIPSIS = 306, CASE = 307, DEFAULT = 308, IF = 309, SWITCH = 310, WHILE = 311, DO = 312, FOR = 313, GOTO = 314, CONTINUE = 315, BREAK = 316, RETURN = 317, IFX = 318, ELSE = 319, CLASS = 320, THISCLASS = 321, CLASS_NAME = 322, PROPERTY = 323, SETPROP = 324, GETPROP = 325, NEWOP = 326, RENEW = 327, DELETE = 328, EXT_DECL = 329, EXT_STORAGE = 330, IMPORT = 331, DEFINE = 332, VIRTUAL = 333, ATTRIB = 334, PUBLIC = 335, PRIVATE = 336, TYPED_OBJECT = 337, ANY_OBJECT = 338, _INCREF = 339, EXTENSION = 340, ASM = 341, TYPEOF = 342, WATCH = 343, STOPWATCHING = 344, FIREWATCHERS = 345, WATCHABLE = 346, CLASS_DESIGNER = 347, CLASS_NO_EXPANSION = 348, CLASS_FIXED = 349, ISPROPSET = 350, CLASS_DEFAULT_PROPERTY = 351, PROPERTY_CATEGORY = 352, CLASS_DATA = 353, CLASS_PROPERTY = 354, SUBCLASS = 355, NAMESPACE = 356, NEW0OP = 357, RENEW0 = 358, VAARG = 359, DBTABLE = 360, DBFIELD = 361, DBINDEX = 362, DATABASE_OPEN = 363, ALIGNOF = 364, ATTRIB_DEP = 365, __ATTRIB = 366, BOOL = 367, _BOOL = 368, _COMPLEX = 369, _IMAGINARY = 370, RESTRICT = 371, THREAD = 372, WIDE_STRING_LITERAL = 373, BUILTIN_OFFSETOF = 374
57 extern unsigned int parseTypeError;
65 typedef unsigned char yytype_uint8;
67 typedef signed char yytype_int8;
69 typedef unsigned short int yytype_uint16;
71 typedef short int yytype_int16;
73 void * malloc(size_t);
77 static const yytype_uint8 yytranslate[] =
79 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 134, 2, 2, 126, 136, 131, 2, 123, 124, 120, 132, 130, 133, 127, 135, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 140, 142, 121, 141, 122, 139, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 128, 2, 129, 137, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 143, 138, 144, 125, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119
82 static const yytype_uint16 yyprhs[] =
84 0, 0, 3, 6, 9, 12, 14, 17, 19, 21, 26, 31, 34, 36, 40, 45, 49, 52, 54, 56, 60, 62, 64, 66, 68, 70, 73, 78, 81, 88, 94, 101, 107, 115, 122, 130, 137, 139, 141, 146, 150, 155, 159, 162, 166, 169, 172, 174, 176, 178, 182, 186, 189, 192, 195, 198, 203, 206, 211, 213, 215, 217, 219, 221, 223, 225, 227, 229, 231, 236, 238, 242, 246, 250, 252, 256, 260, 262, 266, 270, 273, 275, 278, 282, 286, 290, 292, 296, 300, 302, 306, 308, 312, 314, 318, 320, 324, 326, 330, 332, 338, 340, 344, 348, 350, 352, 354, 356, 358, 360, 362, 364, 366, 368, 370, 372, 376, 378, 381, 385, 388, 394, 396, 399, 401, 404, 406, 409, 411, 414, 416, 419, 421, 424, 426, 429, 431, 434, 436, 439, 441, 444, 446, 449, 451, 454, 456, 459, 461, 464, 466, 469, 471, 474, 476, 479, 481, 484, 486, 489, 491, 494, 496, 498, 500, 503, 505, 508, 510, 513, 515, 518, 523, 529, 531, 534, 536, 539, 541, 544, 546, 549, 551, 554, 556, 559, 564, 570, 572, 576, 578, 582, 584, 586, 588, 590, 592, 594, 596, 598, 600, 602, 604, 606, 608, 610, 612, 614, 616, 618, 623, 625, 628, 632, 639, 645, 647, 649, 651, 653, 655, 657, 659, 661, 663, 665, 667, 669, 671, 673, 675, 677, 679, 681, 683, 685, 687, 689, 694, 699, 704, 706, 708, 710, 712, 714, 716, 718, 720, 722, 724, 726, 728, 730, 732, 734, 736, 738, 740, 742, 744, 746, 751, 756, 761, 763, 769, 774, 779, 783, 789, 796, 802, 808, 813, 820, 823, 826, 830, 834, 836, 839, 841, 844, 846, 848, 850, 854, 858, 862, 866, 868, 872, 874, 876, 878, 881, 885, 887, 891, 901, 911, 919, 927, 933, 944, 955, 964, 973, 980, 989, 998, 1005, 1012, 1017, 1027, 1037, 1045, 1053, 1059, 1063, 1066, 1069, 1072, 1074, 1077, 1079, 1081, 1083, 1087, 1089, 1092, 1095, 1099, 1105, 1108, 1111, 1116, 1122, 1130, 1138, 1144, 1146, 1150, 1152, 1156, 1160, 1163, 1167, 1171, 1175, 1180, 1185, 1188, 1192, 1196, 1201, 1205, 1208, 1212, 1216, 1221, 1223, 1225, 1228, 1231, 1234, 1238, 1240, 1242, 1245, 1248, 1251, 1255, 1257, 1260, 1264, 1267, 1269, 1273, 1278, 1282, 1287, 1289, 1292, 1295, 1299, 1303, 1306, 1310, 1314, 1317, 1319, 1321, 1324, 1327, 1329, 1332, 1335, 1339, 1343, 1345, 1348, 1350, 1353, 1356, 1360, 1362, 1366, 1368, 1372, 1375, 1378, 1381, 1385, 1387, 1389, 1391, 1395, 1397, 1400, 1402, 1405, 1407, 1411, 1416, 1418, 1420, 1422, 1426, 1428, 1430, 1432, 1434, 1436, 1438, 1442, 1447, 1451, 1453, 1456, 1458, 1461, 1464, 1466, 1468, 1471, 1473, 1476, 1480, 1482, 1485, 1491, 1499, 1505, 1511, 1519, 1526, 1534, 1539, 1545, 1550, 1554, 1557, 1560, 1563, 1567, 1569, 1575, 1580, 1586, 1591, 1596, 1600, 1605, 1609, 1613, 1616, 1619, 1622, 1625, 1628, 1631, 1634, 1637, 1640, 1644, 1646, 1648, 1652, 1655, 1657, 1659, 1662, 1665, 1667, 1670, 1672, 1674, 1677, 1679
87 static const yytype_int16 yyrhs[] =
89 267, 0, -1, 155, 120, -1, 155, 121, -1, 155, 1, -1, 150, -1, 155, 155, -1, 28, -1, 149, -1, 149, 121, 208, 122, -1, 149, 121, 208, 11, -1, 185, 227, -1, 227, -1, 185, 123, 124, -1, 125, 185, 123, 124, -1, 78, 185, 227, -1, 78, 227, -1, 3, -1, 157, -1, 123, 179, 124, -1, 155, -1, 257, -1, 4, -1, 118, -1, 254, -1, 126, 254, -1, 126, 254, 127, 254, -1, 123, 124, -1, 71, 185, 224, 128, 180, 129, -1, 71, 185, 128, 180, 129, -1, 102, 185, 224, 128, 180, 129, -1, 102, 185, 128, 180, 129, -1, 72, 180, 188, 224, 128, 180, 129, -1, 72, 180, 188, 128, 180, 129, -1, 103, 180, 188, 224, 128, 180, 129, -1, 103, 180, 188, 128, 180, 129, -1, 1, -1, 156, -1, 158, 128, 179, 129, -1, 158, 123, 124, -1, 158, 123, 160, 124, -1, 158, 127, 155, -1, 158, 155, -1, 158, 7, 155, -1, 158, 8, -1, 158, 9, -1, 258, -1, 177, -1, 159, -1, 160, 130, 177, -1, 160, 130, 159, -1, 8, 162, -1, 9, 162, -1, 163, 164, -1, 6, 162, -1, 6, 123, 239, 124, -1, 109, 162, -1, 109, 123, 239, 124, -1, 161, -1, 158, -1, 131, -1, 120, -1, 132, -1, 133, -1, 125, -1, 134, -1, 73, -1, 162, -1, 123, 238, 124, 164, -1, 164, -1, 165, 120, 164, -1, 165, 135, 164, -1, 165, 136, 164, -1, 165, -1, 166, 132, 165, -1, 166, 133, 165, -1, 166, -1, 167, 10, 166, -1, 167, 11, 166, -1, 169, 121, -1, 167, -1, 168, 167, -1, 169, 122, 167, -1, 169, 12, 167, -1, 169, 13, 167, -1, 169, -1, 170, 14, 169, -1, 170, 15, 169, -1, 170, -1, 171, 131, 170, -1, 171, -1, 172, 137, 171, -1, 172, -1, 173, 138, 172, -1, 173, -1, 174, 16, 173, -1, 174, -1, 175, 17, 174, -1, 175, -1, 175, 139, 179, 140, 176, -1, 176, -1, 162, 178, 177, -1, 162, 178, 159, -1, 141, -1, 18, -1, 19, -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, 177, -1, 179, 130, 177, -1, 176, -1, 184, 142, -1, 184, 189, 142, -1, 255, 142, -1, 77, 155, 141, 180, 142, -1, 199, -1, 182, 199, -1, 200, -1, 182, 200, -1, 218, -1, 182, 218, -1, 202, -1, 182, 202, -1, 199, -1, 183, 199, -1, 200, -1, 183, 200, -1, 146, -1, 183, 146, -1, 218, -1, 183, 218, -1, 202, -1, 183, 202, -1, 191, -1, 184, 191, -1, 199, -1, 184, 199, -1, 200, -1, 184, 200, -1, 218, -1, 184, 218, -1, 202, -1, 184, 202, -1, 191, -1, 185, 191, -1, 199, -1, 185, 199, -1, 200, -1, 185, 200, -1, 146, -1, 185, 146, -1, 202, -1, 185, 202, -1, 218, -1, 185, 218, -1, 185, -1, 147, -1, 191, -1, 187, 191, -1, 199, -1, 187, 199, -1, 201, -1, 187, 201, -1, 155, -1, 187, 155, -1, 155, 121, 208, 122, -1, 187, 155, 121, 208, 122, -1, 191, -1, 188, 191, -1, 199, -1, 188, 199, -1, 201, -1, 188, 201, -1, 202, -1, 188, 202, -1, 218, -1, 188, 218, -1, 155, -1, 188, 155, -1, 155, 121, 208, 122, -1, 188, 155, 121, 208, 122, -1, 190, -1, 189, 130, 190, -1, 225, -1, 225, 141, 240, -1, 29, -1, 30, -1, 31, -1, 32, -1, 33, -1, 117, -1, 74, -1, 75, -1, 197, -1, 79, -1, 110, -1, 111, -1, 3, -1, 28, -1, 75, -1, 74, -1, 44, -1, 194, -1, 194, 123, 179, 124, -1, 195, -1, 196, 195, -1, 196, 130, 195, -1, 193, 123, 123, 196, 124, 124, -1, 193, 123, 123, 124, 124, -1, 192, -1, 44, -1, 45, -1, 198, -1, 46, -1, 34, -1, 35, -1, 36, -1, 37, -1, 38, -1, 47, -1, 39, -1, 42, -1, 43, -1, 40, -1, 41, -1, 85, -1, 113, -1, 112, -1, 203, -1, 217, -1, 148, -1, 87, 123, 177, 124, -1, 100, 123, 148, 124, -1, 100, 123, 155, 124, -1, 66, -1, 82, -1, 83, -1, 46, -1, 34, -1, 35, -1, 36, -1, 37, -1, 38, -1, 47, -1, 39, -1, 42, -1, 43, -1, 40, -1, 41, -1, 85, -1, 113, -1, 112, -1, 203, -1, 217, -1, 150, -1, 87, 123, 177, 124, -1, 100, 123, 148, 124, -1, 100, 123, 155, 124, -1, 66, -1, 209, 155, 143, 210, 144, -1, 209, 143, 210, 144, -1, 209, 155, 143, 144, -1, 209, 143, 144, -1, 209, 149, 143, 210, 144, -1, 209, 192, 155, 143, 210, 144, -1, 209, 192, 143, 210, 144, -1, 209, 192, 155, 143, 144, -1, 209, 192, 143, 144, -1, 209, 192, 150, 143, 210, 144, -1, 209, 155, -1, 209, 150, -1, 209, 192, 155, -1, 209, 192, 150, -1, 185, -1, 185, 223, -1, 185, -1, 185, 223, -1, 167, -1, 206, -1, 205, -1, 155, 141, 206, -1, 155, 141, 205, -1, 204, 141, 206, -1, 204, 141, 205, -1, 207, -1, 208, 130, 207, -1, 48, -1, 49, -1, 214, -1, 210, 214, -1, 158, 141, 241, -1, 211, -1, 212, 130, 211, -1, 68, 187, 155, 143, 69, 249, 70, 249, 144, -1, 68, 187, 155, 143, 70, 249, 69, 249, 144, -1, 68, 187, 155, 143, 69, 249, 144, -1, 68, 187, 155, 143, 70, 249, 144, -1, 68, 187, 155, 143, 144, -1, 68, 187, 223, 155, 143, 69, 249, 70, 249, 144, -1, 68, 187, 223, 155, 143, 70, 249, 69, 249, 144, -1, 68, 187, 223, 155, 143, 69, 249, 144, -1, 68, 187, 223, 155, 143, 70, 249, 144, -1, 68, 187, 223, 155, 143, 144, -1, 68, 187, 143, 69, 249, 70, 249, 144, -1, 68, 187, 143, 70, 249, 69, 249, 144, -1, 68, 187, 143, 69, 249, 144, -1, 68, 187, 143, 70, 249, 144, -1, 68, 187, 143, 144, -1, 68, 187, 223, 143, 69, 249, 70, 249, 144, -1, 68, 187, 223, 143, 70, 249, 69, 249, 144, -1, 68, 187, 223, 143, 69, 249, 144, -1, 68, 187, 223, 143, 70, 249, 144, -1, 68, 187, 223, 143, 144, -1, 185, 215, 142, -1, 185, 142, -1, 257, 142, -1, 256, 142, -1, 259, -1, 212, 142, -1, 213, -1, 142, -1, 216, -1, 215, 130, 216, -1, 231, -1, 231, 197, -1, 140, 180, -1, 231, 140, 180, -1, 231, 140, 180, 140, 180, -1, 50, 155, -1, 50, 150, -1, 50, 143, 219, 144, -1, 50, 155, 143, 219, 144, -1, 50, 155, 143, 219, 142, 210, 144, -1, 50, 150, 143, 219, 142, 210, 144, -1, 50, 150, 143, 219, 144, -1, 220, -1, 219, 130, 220, -1, 155, -1, 155, 141, 180, -1, 123, 223, 124, -1, 128, 129, -1, 128, 180, 129, -1, 128, 148, 129, -1, 221, 128, 129, -1, 221, 128, 180, 129, -1, 221, 128, 148, 129, -1, 123, 124, -1, 123, 234, 124, -1, 221, 123, 124, -1, 221, 123, 234, 124, -1, 123, 224, 124, -1, 123, 124, -1, 123, 234, 124, -1, 222, 123, 124, -1, 222, 123, 234, 124, -1, 233, -1, 221, -1, 233, 221, -1, 192, 233, -1, 192, 221, -1, 192, 233, 221, -1, 233, -1, 222, -1, 233, 222, -1, 192, 233, -1, 192, 222, -1, 192, 233, 222, -1, 230, -1, 233, 230, -1, 192, 233, 230, -1, 225, 192, -1, 155, -1, 123, 225, 124, -1, 226, 128, 180, 129, -1, 226, 128, 129, -1, 226, 128, 148, 129, -1, 229, -1, 233, 229, -1, 192, 229, -1, 192, 233, 229, -1, 233, 192, 229, -1, 226, 123, -1, 228, 234, 124, -1, 228, 237, 124, -1, 228, 124, -1, 229, -1, 226, -1, 192, 229, -1, 192, 226, -1, 226, -1, 233, 226, -1, 192, 226, -1, 192, 233, 226, -1, 233, 192, 226, -1, 199, -1, 232, 199, -1, 120, -1, 120, 232, -1, 120, 233, -1, 120, 232, 233, -1, 235, -1, 235, 130, 51, -1, 236, -1, 235, 130, 236, -1, 185, 225, -1, 185, 223, -1, 185, 131, -1, 185, 131, 225, -1, 186, -1, 65, -1, 155, -1, 237, 130, 155, -1, 182, -1, 182, 223, -1, 183, -1, 183, 223, -1, 177, -1, 143, 242, 144, -1, 143, 242, 130, 144, -1, 176, -1, 159, -1, 240, -1, 242, 130, 240, -1, 244, -1, 249, -1, 250, -1, 251, -1, 252, -1, 253, -1, 155, 140, 243, -1, 52, 180, 140, 243, -1, 53, 140, 243, -1, 181, -1, 245, 181, -1, 243, -1, 246, 243, -1, 246, 181, -1, 246, -1, 245, -1, 245, 246, -1, 143, -1, 143, 144, -1, 248, 247, 144, -1, 142, -1, 179, 142, -1, 54, 123, 179, 124, 243, -1, 54, 123, 179, 124, 243, 64, 243, -1, 55, 123, 179, 124, 243, -1, 56, 123, 179, 124, 243, -1, 57, 243, 56, 123, 179, 124, 142, -1, 58, 123, 250, 250, 124, 243, -1, 58, 123, 250, 250, 179, 124, 243, -1, 56, 123, 124, 243, -1, 58, 123, 250, 124, 243, -1, 58, 123, 124, 243, -1, 59, 155, 142, -1, 60, 142, -1, 61, 142, -1, 62, 142, -1, 62, 179, 142, -1, 5, -1, 184, 155, 143, 266, 144, -1, 184, 155, 143, 144, -1, 185, 155, 143, 266, 144, -1, 185, 155, 143, 144, -1, 148, 143, 266, 144, -1, 148, 143, 144, -1, 155, 143, 266, 144, -1, 155, 143, 144, -1, 143, 266, 144, -1, 143, 144, -1, 151, 249, -1, 154, 249, -1, 154, 142, -1, 152, 249, -1, 153, 249, -1, 184, 227, -1, 184, 231, -1, 260, 249, -1, 158, 141, 241, -1, 241, -1, 262, -1, 263, 130, 262, -1, 263, 142, -1, 264, -1, 261, -1, 265, 264, -1, 265, 261, -1, 142, -1, 265, 142, -1, 265, -1, 263, -1, 265, 263, -1, 236, -1, 236, 140, 180, -1
92 static const yytype_uint16 yyrline[] =
94 0, 231, 231, 249, 273, 313, 314, 341, 345, 346, 347, 364, 366, 371, 376, 381, 383, 388, 393, 394, 399, 401, 403, 405, 406, 408, 409, 410, 413, 414, 415, 416, 417, 418, 419, 420, 421, 425, 426, 427, 428, 429, 430, 443, 444, 445, 449, 478, 479, 480, 481, 485, 486, 487, 489, 490, 492, 493, 497, 498, 507, 508, 509, 510, 511, 512, 513, 517, 518, 522, 523, 524, 525, 529, 530, 531, 535, 536, 537, 541, 549, 550, 551, 552, 553, 557, 558, 559, 563, 564, 568, 569, 573, 574, 578, 579, 583, 584, 588, 589, 593, 594, 595, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 613, 614, 618, 622, 623, 624, 625, 629, 630, 631, 632, 633, 634, 635, 636, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 681, 682, 686, 687, 688, 689, 690, 691, 692, 693, 694, 702, 711, 712, 713, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 731, 740, 741, 745, 746, 750, 751, 752, 753, 754, 755, 759, 760, 761, 765, 766, 767, 772, 773, 774, 775, 776, 780, 781, 785, 786, 787, 791, 792, 796, 800, 801, 802, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 860, 861, 862, 863, 864, 867, 868, 869, 870, 871, 876, 877, 880, 882, 887, 888, 893, 894, 905, 909, 911, 912, 914, 915, 939, 954, 955, 959, 960, 964, 965, 969, 973, 974, 978, 980, 982, 984, 986, 989, 991, 993, 995, 997, 1000, 1002, 1004, 1006, 1008, 1011, 1013, 1015, 1017, 1019, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1035, 1037, 1042, 1044, 1046, 1048, 1050, 1055, 1056, 1060, 1062, 1063, 1064, 1065, 1069, 1071, 1076, 1078, 1084, 1086, 1088, 1090, 1092, 1094, 1096, 1098, 1100, 1102, 1104, 1109, 1111, 1113, 1115, 1117, 1122, 1123, 1124, 1125, 1126, 1127, 1131, 1132, 1133, 1134, 1135, 1136, 1182, 1183, 1185, 1187, 1192, 1194, 1196, 1198, 1200, 1205, 1206, 1209, 1211, 1213, 1219, 1223, 1225, 1227, 1232, 1233, 1234, 1236, 1241, 1242, 1243, 1244, 1245, 1249, 1250, 1254, 1255, 1256, 1257, 1261, 1262, 1266, 1267, 1271, 1272, 1273, 1274, 1275, 1286, 1311, 1312, 1316, 1317, 1321, 1322, 1326, 1328, 1330, 1346, 1348, 1370, 1372, 1377, 1378, 1379, 1380, 1381, 1382, 1386, 1388, 1390, 1395, 1396, 1400, 1401, 1404, 1408, 1409, 1410, 1414, 1418, 1426, 1431, 1432, 1436, 1437, 1438, 1442, 1443, 1444, 1445, 1447, 1448, 1449, 1453, 1454, 1455, 1456, 1457, 1461, 1465, 1467, 1472, 1474, 1499, 1501, 1503, 1505, 1510, 1512, 1516, 1518, 1520, 1522, 1524, 1530, 1532, 1537, 1542, 1543, 1547, 1549, 1554, 1559, 1560, 1561, 1562, 1563, 1564, 1568, 1569, 1570, 1574, 1575
97 static const char * const yytname[] =
99 "$end", "error", "$undefined", "IDENTIFIER", "CONSTANT", "STRING_LITERAL", "SIZEOF", "PTR_OP", "INC_OP", "DEC_OP", "LEFT_OP", "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP", "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "ADD_ASSIGN", "SUB_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN", "TYPE_NAME", "TYPEDEF", "EXTERN", "STATIC", "AUTO", "REGISTER", "CHAR", "SHORT", "INT", "UINT", "INT64", "LONG", "SIGNED", "UNSIGNED", "FLOAT", "DOUBLE", "CONST", "VOLATILE", "VOID", "VALIST", "STRUCT", "UNION", "ENUM", "ELLIPSIS", "CASE", "DEFAULT", "IF", "SWITCH", "WHILE", "DO", "FOR", "GOTO", "CONTINUE", "BREAK", "RETURN", "IFX", "ELSE", "CLASS", "THISCLASS", "CLASS_NAME", "PROPERTY", "SETPROP", "GETPROP", "NEWOP", "RENEW", "DELETE", "EXT_DECL", "EXT_STORAGE", "IMPORT", "DEFINE", "VIRTUAL", "ATTRIB", "PUBLIC", "PRIVATE", "TYPED_OBJECT", "ANY_OBJECT", "_INCREF", "EXTENSION", "ASM", "TYPEOF", "WATCH", "STOPWATCHING", "FIREWATCHERS", "WATCHABLE", "CLASS_DESIGNER", "CLASS_NO_EXPANSION", "CLASS_FIXED", "ISPROPSET", "CLASS_DEFAULT_PROPERTY", "PROPERTY_CATEGORY", "CLASS_DATA", "CLASS_PROPERTY", "SUBCLASS", "NAMESPACE", "NEW0OP", "RENEW0", "VAARG", "DBTABLE", "DBFIELD", "DBINDEX", "DATABASE_OPEN", "ALIGNOF", "ATTRIB_DEP", "__ATTRIB", "BOOL", "_BOOL", "_COMPLEX", "_IMAGINARY", "RESTRICT", "THREAD", "WIDE_STRING_LITERAL", "BUILTIN_OFFSETOF", "'*'", "'<'", "'>'", "'('", "')'", "'~'", "'$'", "'.'", "'['", "']'", "','", "'&'", "'+'", "'-'", "'!'", "'/'", "'%'", "'^'", "'|'", "'?'", "':'", "'='", "';'", "'{'", "'}'", "$accept", "guess_type", "real_guess_type", "type", "base_strict_type", "strict_type", "class_function_definition_start", "constructor_function_definition_start", "destructor_function_definition_start", "virtual_class_function_definition_start", "identifier", "primary_expression", "simple_primary_expression", "postfix_expression", "anon_instantiation_expression", "argument_expression_list", "common_unary_expression", "unary_expression", "unary_operator", "cast_expression", "multiplicative_expression", "additive_expression", "shift_expression", "relational_expression_smaller_than", "relational_expression", "equality_expression", "and_expression", "exclusive_or_expression", "inclusive_or_expression", "logical_and_expression", "logical_or_expression", "conditional_expression", "assignment_expression", "assignment_operator", "expression", "constant_expression", "declaration", "specifier_qualifier_list", "guess_specifier_qualifier_list", "declaration_specifiers", "guess_declaration_specifiers", "real_guess_declaration_specifiers", "property_specifiers", "renew_specifiers", "init_declarator_list", "init_declarator", "storage_class_specifier", "ext_decl", "_attrib", "attribute_word", "attribute", "attribs_list", "attrib", "ext_storage", "type_qualifier", "type_specifier", "strict_type_specifier", "struct_or_union_specifier_compound", "struct_or_union_specifier_nocompound", "template_datatype", "template_type_argument", "template_expression_argument", "template_argument", "template_arguments_list", "struct_or_union", "struct_declaration_list", "default_property", "default_property_list", "property", "struct_declaration", "struct_declarator_list", "struct_declarator", "enum_specifier_nocompound", "enum_specifier_compound", "enumerator_list", "enumerator", "direct_abstract_declarator", "direct_abstract_declarator_noarray", "abstract_declarator", "abstract_declarator_noarray", "declarator", "direct_declarator_nofunction", "declarator_function", "direct_declarator_function_start", "direct_declarator_function", "direct_declarator", "declarator_nofunction", "type_qualifier_list", "pointer", "parameter_type_list", "parameter_list", "parameter_declaration", "identifier_list", "type_name", "guess_type_name", "initializer", "initializer_condition", "initializer_list", "statement", "labeled_statement", "declaration_list", "statement_list", "compound_inside", "compound_start", "compound_statement", "expression_statement", "selection_statement", "iteration_statement", "jump_statement", "string_literal", "instantiation_named", "guess_instantiation_named", "instantiation_unnamed", "instantiation_anon", "class_function_definition", "instance_class_function_definition_start", "instance_class_function_definition", "data_member_initialization", "data_member_initialization_list", "data_member_initialization_list_coloned", "members_initialization_list_coloned", "members_initialization_list", "type_unit", 0
102 static const yytype_uint16 yyr1[] =
104 0, 145, 146, 146, 147, 148, 148, 149, 150, 150, 150, 151, 151, 152, 153, 154, 154, 155, 156, 156, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 158, 158, 158, 158, 158, 158, 158, 158, 158, 159, 160, 160, 160, 160, 161, 161, 161, 161, 161, 161, 161, 162, 162, 163, 163, 163, 163, 163, 163, 163, 164, 164, 165, 165, 165, 165, 166, 166, 166, 167, 167, 167, 168, 169, 169, 169, 169, 169, 170, 170, 170, 171, 171, 172, 172, 173, 173, 174, 174, 175, 175, 176, 176, 177, 177, 177, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 178, 179, 179, 180, 181, 181, 181, 181, 182, 182, 182, 182, 182, 182, 182, 182, 183, 183, 183, 183, 183, 183, 183, 183, 183, 183, 184, 184, 184, 184, 184, 184, 184, 184, 184, 184, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 185, 186, 186, 187, 187, 187, 187, 187, 187, 187, 187, 187, 187, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 188, 189, 189, 190, 190, 191, 191, 191, 191, 191, 191, 192, 192, 192, 193, 193, 193, 194, 194, 194, 194, 194, 195, 195, 196, 196, 196, 197, 197, 198, 199, 199, 199, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 201, 202, 202, 202, 202, 202, 202, 202, 202, 202, 202, 203, 203, 203, 203, 204, 204, 205, 205, 206, 207, 207, 207, 207, 207, 207, 208, 208, 209, 209, 210, 210, 211, 212, 212, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 214, 214, 214, 214, 214, 214, 214, 214, 215, 215, 216, 216, 216, 216, 216, 217, 217, 218, 218, 218, 218, 218, 219, 219, 220, 220, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 221, 222, 222, 222, 222, 222, 223, 223, 223, 223, 223, 223, 224, 224, 224, 224, 224, 224, 225, 225, 225, 225, 226, 226, 226, 226, 226, 227, 227, 227, 227, 227, 228, 229, 229, 229, 230, 230, 230, 230, 231, 231, 231, 231, 231, 232, 232, 233, 233, 233, 233, 234, 234, 235, 235, 236, 236, 236, 236, 236, 236, 237, 237, 238, 238, 239, 239, 240, 240, 240, 241, 241, 242, 242, 243, 243, 243, 243, 243, 243, 244, 244, 244, 245, 245, 246, 246, 246, 247, 247, 247, 248, 249, 249, 250, 250, 251, 251, 251, 252, 252, 252, 252, 252, 252, 252, 253, 253, 253, 253, 253, 254, 255, 255, 256, 256, 257, 257, 257, 257, 258, 258, 259, 259, 259, 259, 259, 260, 260, 261, 262, 262, 263, 263, 264, 265, 265, 265, 265, 265, 265, 266, 266, 266, 267, 267
107 static const yytype_uint8 yyr2[] =
109 0, 2, 2, 2, 2, 1, 2, 1, 1, 4, 4, 2, 1, 3, 4, 3, 2, 1, 1, 3, 1, 1, 1, 1, 1, 2, 4, 2, 6, 5, 6, 5, 7, 6, 7, 6, 1, 1, 4, 3, 4, 3, 2, 3, 2, 2, 1, 1, 1, 3, 3, 2, 2, 2, 2, 4, 2, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 3, 3, 3, 1, 3, 3, 1, 3, 3, 2, 1, 2, 3, 3, 3, 1, 3, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 5, 1, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 2, 3, 2, 5, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 1, 1, 2, 1, 2, 1, 2, 1, 2, 4, 5, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 4, 5, 1, 3, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 2, 3, 6, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 4, 4, 1, 5, 4, 4, 3, 5, 6, 5, 5, 4, 6, 2, 2, 3, 3, 1, 2, 1, 2, 1, 1, 1, 3, 3, 3, 3, 1, 3, 1, 1, 1, 2, 3, 1, 3, 9, 9, 7, 7, 5, 10, 10, 8, 8, 6, 8, 8, 6, 6, 4, 9, 9, 7, 7, 5, 3, 2, 2, 2, 1, 2, 1, 1, 1, 3, 1, 2, 2, 3, 5, 2, 2, 4, 5, 7, 7, 5, 1, 3, 1, 3, 3, 2, 3, 3, 3, 4, 4, 2, 3, 3, 4, 3, 2, 3, 3, 4, 1, 1, 2, 2, 2, 3, 1, 1, 2, 2, 2, 3, 1, 2, 3, 2, 1, 3, 4, 3, 4, 1, 2, 2, 3, 3, 2, 3, 3, 2, 1, 1, 2, 2, 1, 2, 2, 3, 3, 1, 2, 1, 2, 2, 3, 1, 3, 1, 3, 2, 2, 2, 3, 1, 1, 1, 3, 1, 2, 1, 2, 1, 3, 4, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 3, 4, 3, 1, 2, 1, 2, 2, 1, 1, 2, 1, 2, 3, 1, 2, 5, 7, 5, 5, 7, 6, 7, 4, 5, 4, 3, 2, 2, 2, 3, 1, 5, 4, 5, 4, 4, 3, 4, 3, 3, 2, 2, 2, 2, 2, 2, 2, 2, 2, 3, 1, 1, 3, 2, 1, 1, 2, 2, 1, 2, 1, 1, 2, 1, 3
112 static const yytype_uint16 yydefact[] =
114 0, 17, 7, 191, 192, 193, 194, 195, 220, 221, 222, 223, 224, 226, 229, 230, 227, 228, 216, 217, 219, 225, 292, 293, 0, 415, 240, 197, 198, 200, 241, 242, 231, 0, 0, 201, 202, 233, 232, 196, 155, 162, 236, 8, 5, 0, 161, 414, 149, 215, 0, 199, 218, 151, 153, 157, 234, 0, 235, 159, 499, 0, 0, 335, 334, 0, 0, 0, 4, 2, 3, 6, 402, 0, 0, 412, 156, 377, 150, 215, 152, 154, 158, 160, 362, 411, 410, 392, 0, 391, 373, 361, 0, 0, 8, 276, 275, 0, 0, 1, 343, 0, 341, 0, 0, 36, 22, 466, 0, 0, 0, 0, 0, 66, 0, 0, 0, 23, 61, 0, 64, 0, 60, 62, 63, 65, 0, 20, 37, 18, 59, 58, 67, 0, 69, 73, 76, 80, 0, 85, 88, 90, 92, 94, 96, 98, 100, 0, 24, 21, 0, 0, 236, 20, 67, 283, 281, 0, 285, 284, 290, 0, 400, 403, 404, 352, 0, 0, 0, 0, 406, 408, 346, 0, 116, 0, 0, 377, 0, 413, 0, 365, 394, 393, 364, 0, 0, 376, 387, 0, 390, 0, 0, 0, 0, 363, 374, 0, 0, 0, 0, 0, 326, 268, 0, 0, 0, 0, 20, 0, 0, 215, 0, 297, 0, 325, 294, 0, 12, 382, 0, 0, 21, 323, 0, 0, 0, 278, 277, 500, 0, 0, 336, 0, 0, 0, 54, 0, 51, 52, 0, 0, 0, 0, 0, 0, 56, 27, 114, 0, 418, 121, 123, 127, 125, 0, 25, 0, 0, 0, 44, 45, 0, 0, 0, 42, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 103, 0, 53, 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 237, 238, 239, 0, 0, 215, 282, 361, 0, 10, 9, 0, 401, 405, 345, 378, 353, 0, 348, 347, 0, 366, 375, 354, 0, 349, 0, 0, 380, 0, 0, 388, 389, 0, 203, 204, 207, 206, 205, 0, 208, 210, 0, 244, 245, 246, 247, 248, 250, 253, 254, 251, 252, 243, 249, 0, 264, 255, 0, 0, 257, 256, 260, 169, 0, 163, 165, 167, 258, 0, 259, 0, 16, 61, 0, 20, 0, 446, 0, 477, 480, 481, 479, 478, 0, 0, 0, 320, 377, 215, 0, 327, 395, 11, 329, 0, 384, 0, 266, 295, 0, 324, 0, 383, 322, 321, 0, 267, 0, 273, 0, 0, 0, 344, 342, 0, 340, 0, 337, 133, 20, 420, 129, 131, 137, 135, 0, 0, 0, 215, 368, 0, 367, 183, 0, 173, 175, 177, 179, 181, 0, 0, 0, 0, 19, 0, 0, 122, 124, 128, 126, 419, 0, 0, 494, 0, 472, 59, 426, 425, 0, 139, 141, 143, 147, 145, 486, 46, 0, 491, 487, 497, 490, 0, 0, 474, 0, 43, 39, 48, 0, 47, 41, 0, 102, 101, 70, 71, 72, 74, 75, 77, 78, 83, 84, 82, 86, 87, 89, 91, 93, 95, 97, 0, 281, 287, 286, 364, 289, 288, 291, 407, 409, 355, 351, 350, 381, 379, 417, 214, 0, 0, 0, 211, 335, 334, 0, 0, 0, 0, 170, 164, 166, 168, 0, 275, 0, 15, 215, 0, 447, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 449, 20, 0, 438, 0, 440, 429, 0, 0, 0, 430, 431, 432, 433, 434, 0, 296, 13, 331, 0, 397, 0, 0, 319, 0, 330, 0, 396, 385, 298, 386, 269, 265, 271, 0, 272, 0, 0, 0, 134, 130, 132, 138, 136, 421, 55, 357, 0, 0, 0, 371, 370, 0, 0, 369, 0, 0, 184, 174, 176, 178, 180, 182, 0, 0, 0, 0, 0, 57, 115, 68, 26, 476, 0, 0, 377, 140, 142, 144, 148, 146, 482, 483, 484, 0, 489, 495, 493, 498, 492, 471, 473, 40, 0, 38, 0, 282, 0, 213, 212, 0, 0, 0, 0, 0, 0, 313, 0, 0, 0, 0, 278, 277, 14, 0, 0, 0, 0, 0, 0, 0, 0, 462, 463, 464, 0, 0, 0, 450, 117, 377, 0, 187, 189, 439, 0, 442, 441, 448, 119, 470, 0, 398, 0, 328, 395, 0, 332, 399, 274, 270, 339, 338, 356, 358, 29, 372, 359, 0, 0, 0, 0, 0, 0, 31, 0, 0, 0, 475, 485, 488, 50, 49, 99, 209, 261, 262, 263, 171, 0, 0, 0, 0, 0, 303, 0, 0, 318, 0, 0, 437, 0, 0, 0, 0, 0, 0, 0, 461, 465, 0, 435, 0, 0, 118, 0, 469, 397, 0, 0, 396, 0, 360, 28, 185, 33, 0, 0, 30, 35, 0, 0, 311, 0, 312, 172, 0, 0, 0, 0, 0, 0, 308, 436, 0, 0, 458, 0, 0, 460, 0, 0, 0, 468, 0, 188, 0, 422, 190, 398, 399, 333, 186, 32, 34, 0, 0, 0, 301, 0, 302, 0, 316, 0, 317, 0, 0, 451, 453, 454, 0, 459, 0, 0, 120, 467, 427, 0, 309, 310, 0, 0, 0, 0, 0, 306, 0, 307, 0, 0, 456, 0, 0, 423, 299, 300, 314, 315, 0, 0, 452, 455, 457, 424, 428, 304, 305
117 static const yytype_int16 yydefgoto[] =
119 -1, 40, 41, 126, 43, 44, 204, 205, 206, 207, 127, 128, 129, 130, 457, 479, 131, 154, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 248, 277, 554, 175, 688, 250, 420, 459, 210, 47, 363, 433, 683, 684, 48, 49, 50, 339, 340, 341, 51, 52, 53, 54, 436, 55, 56, 157, 158, 159, 160, 161, 57, 212, 213, 214, 215, 216, 389, 390, 58, 59, 101, 102, 84, 429, 167, 430, 168, 217, 218, 88, 219, 90, 393, 163, 220, 169, 170, 171, 193, 255, 425, 800, 465, 829, 557, 558, 559, 560, 561, 377, 562, 563, 564, 565, 566, 148, 567, 221, 149, 466, 223, 467, 468, 469, 470, 471, 472, 473, 61
122 static const yytype_int16 yypact[] =
124 8916, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 27, -761, -761, -761, -761, -761, -761, -761, -761, -84, -40, -761, -761, -761, -761, -761, -761, -761, -761, -36, -761, 303, 7335, -761, -761, -761, -14, -761, -761, -761, -761, -761, -761, 563, -761, -761, 24, 129, 122, 75, 119, 7048, 78, 6284, -761, -761, -761, -761, 1002, 7439, 6695, 748, -761, 102, -761, 258, -761, -761, -761, -761, 106, -761, 781, 340, 8340, -761, -761, 654, 199, 3565, -69, -761, 192, 28, 7048, -761, 215, 116, -761, 122, 122, -761, -761, -761, 7088, 7195, 7195, 9006, 7048, -761, 9006, 7048, 7228, -761, -761, 6418, -761, 360, -761, -761, -761, -761, 239, 34, -761, -761, 574, -761, 921, 7048, -761, -66, 406, 531, 7048, 95, 534, 262, 269, 253, 399, 2, -761, 347, -761, -761, 349, 26, 239, 17, -761, 531, 6163, 276, -761, -761, -761, 144, -761, 1002, -761, -761, 773, 351, 660, 364, 302, -761, -761, 152, -761, 310, 748, -761, 131, 781, 609, 106, 340, -761, 654, 8438, 6728, -761, -761, 6835, -761, 218, 375, 164, 19, 106, -761, 15, 9096, 8634, 6639, 9006, -761, -761, 309, 309, 309, 412, 137, 475, 5933, 131, 3691, -761, -32, -761, -761, 340, -761, -761, 609, 322, 371, -761, 5538, 3817, 3943, 359, 382, -761, 7048, 122, -761, -62, 169, 6418, -761, 6868, -761, -761, 102, 7641, 9186, 7742, 9186, 6418, -761, -761, -761, 196, 8141, -761, -761, -761, -761, 405, 407, 2711, 2855, 122, -761, -761, 5255, 122, 7048, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 5297, -761, 7048, 7048, 7048, 7048, 7048, 7048, 7048, 531, 7048, 7048, -761, 7048, 7048, 7048, 7048, 7048, 7048, 7048, 7048, 7048, -761, -761, -761, 6284, 7540, 320, 391, 362, 6284, -761, -761, 6284, -761, -761, -761, -761, -761, 8826, -761, -761, 609, 106, -761, -761, 419, -761, 233, 417, -761, 237, 423, -761, -761, 122, -761, -761, -761, -761, -761, 426, 413, -761, 325, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 78, -761, -761, 434, 444, -761, -761, -761, 451, 5817, -761, -761, -761, -761, 922, -761, 8634, -761, 1002, 6552, 38, 8730, 456, 5077, -761, -761, -761, -761, -761, 5297, 706, 7048, -761, 158, 131, 123, -761, 340, -761, -39, 609, -761, 19, -761, -761, 933, -761, 19, -761, -761, -761, 4069, -761, 4195, -761, 4321, 5538, 4447, -761, -761, 5538, -761, 5538, -761, -761, 137, 8141, -761, -761, -761, -761, 452, 8242, 7048, 45, 483, 480, 486, 489, 7944, -761, -761, -761, -761, -761, 7048, 490, 8045, 493, -761, 7048, 122, -761, -761, -761, -761, -761, 7048, 360, -761, 2999, -761, 562, -761, -761, 8634, -761, -761, -761, -761, -761, -761, -761, 309, -761, -761, 203, -761, 3143, 470, -761, 476, -761, -761, -761, 327, -761, -761, 432, -761, -761, -761, -761, -761, -66, -66, 406, 406, 531, 531, 531, 95, 95, 534, 262, 269, 253, 399, 307, 7843, -761, -761, 362, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 7048, 495, 315, -761, -761, -761, 7048, 78, 6284, -9, -56, -761, -761, -761, 46, -761, 78, -761, 131, 498, -761, 7048, 484, 500, 503, 506, 5220, 507, 122, 492, 494, 5701, 122, -761, 39, 230, -761, 6048, -761, -761, 2279, 2423, 497, -761, -761, -761, -761, -761, 501, -761, -761, -761, 3287, 340, 19, 722, -761, 7048, -761, 19, 340, -761, -761, -761, -761, -761, -761, 4573, -761, 4699, 4825, 4951, -761, -761, -761, -761, -761, -761, -761, -761, 511, 522, 518, 483, 486, 8536, 7048, 483, 6284, 7048, 527, -761, -761, -761, -761, -761, 523, 521, 7048, 7048, 525, -761, -761, -761, -761, -761, 512, 5297, 122, -761, -761, -761, -761, -761, -761, -761, -761, 5297, -761, -761, -761, 203, -761, -761, -761, -761, 5297, -761, 7048, -761, 342, -761, -761, 539, 542, 33, 170, 309, 309, -761, 6284, 227, 254, 526, -761, -761, -761, 528, 5220, 7048, 7048, 6908, 614, 5594, 529, -761, -761, -761, 283, 536, 5220, -761, -761, 60, 300, -761, 570, -761, 2567, -761, -761, -761, -761, -761, 547, 340, 131, -761, 544, 609, 535, 340, -761, -761, -761, -761, -761, -761, -761, 483, -761, 554, 564, 324, 571, 6284, 7048, -761, 575, 576, 7048, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, -761, 8, -11, 328, 309, 309, -761, 309, 309, -761, 277, 5220, -761, 356, 363, 5220, 368, 592, 5220, 5667, -761, -761, 7048, -761, 3431, 748, -761, 5404, -761, 544, 19, 19, 544, 7048, -761, -761, -761, -761, 339, 587, -761, -761, 589, 309, -761, 309, -761, -761, 49, 23, 93, 62, 309, 309, -761, -761, 5220, 5220, -761, 5220, 7048, -761, 5220, 7015, 557, -761, 577, -761, 5404, -761, -761, 544, 544, -761, -761, -761, -761, 578, 579, 309, -761, 309, -761, 309, -761, 309, -761, 125, 161, 672, -761, -761, 387, -761, 5220, 392, -761, -761, -761, 278, -761, -761, 580, 598, 599, 600, 309, -761, 309, -761, 5220, 604, -761, 5220, 1997, -761, -761, -761, -761, -761, 606, 610, -761, -761, -761, -761, -761, -761, -761
127 static const yytype_int16 yypgoto[] =
129 -761, 193, -761, 664, 696, 29, -761, -761, -761, -761, 0, -761, -761, 1461, -260, -761, -761, 167, -761, -107, 297, 308, -20, -761, 293, 463, 464, 468, 472, 469, -761, 1542, -49, -761, 260, -87, -363, -761, -761, -372, 48, -761, -761, 546, -761, 14, 1452, 927, -761, -761, -307, -761, 379, -761, 1302, 1532, -177, 1156, -148, -761, 213, 221, 478, -512, -188, -102, 374, -761, -761, 72, -761, 217, -6, 1194, 491, 567, -15, -396, -2, -236, -42, 421, -187, -761, 1083, -64, 334, -761, 1146, -85, -761, 1, -761, -761, 555, -760, -374, -761, 80, -761, -761, 240, -761, -761, 1157, -621, -761, -761, -761, -115, -761, -761, -80, -761, -761, -761, 330, 168, 331, 335, -761, -250, -761
132 static const yytype_int16 yytable[] =
134 45, 60, 478, 192, 86, 556, 256, 440, 475, 568, 368, 229, 371, 222, 555, 655, 147, 483, 333, 297, 1, 366, 1, 392, 64, 242, 278, 196, 244, 1, 1, 1, 602, 179, 522, 606, 1, 1, 828, 65, 29, 1, 1, 334, 85, 71, 77, 155, 46, 1, 367, 749, 67, 63, 279, 2, 2, 96, 775, 335, 656, 657, 100, 1, 181, 659, 151, 153, 231, 280, 281, 35, 36, 166, 224, 177, 195, 71, 773, 177, 414, 1, 415, 66, 856, 67, 95, 660, 191, 336, 337, 177, 811, 208, 367, 712, 367, 228, 399, 326, 323, 576, 329, 100, 100, 1, 2, 287, 288, 92, 400, 240, -377, -377, 240, 156, 196, -377, 286, 809, 321, 46, 405, 407, 409, 1, 227, 71, 793, 99, 265, 815, 222, 776, 1, 658, 46, 69, 70, 338, 1, 298, 176, 412, 222, 222, 222, 733, -377, -377, 301, 71, 774, 71, 305, 308, 240, 729, 302, 241, 258, 1, 243, 813, 98, 72, 71, 812, 426, 320, 62, 226, 485, 486, 487, 368, 177, 258, 177, 679, 177, 258, 258, 536, 177, 45, 532, 556, 556, 661, 599, 71, 369, 810, 177, 836, 686, 615, 362, 77, 374, 240, 768, 754, 625, 619, 816, 708, 71, 265, 387, 177, 208, 480, 651, 367, 289, 290, 103, 68, 177, 1, 69, 70, 208, 208, 208, 361, 484, 185, 838, 100, 132, 46, 186, 419, 369, 814, 369, 76, 71, 240, 432, 240, 432, 419, 231, 370, 450, 375, 445, 72, 721, 574, 176, 321, 612, 69, 70, 476, 232, 1, 104, 481, 612, 575, 309, 492, 493, 837, 494, 361, 633, 361, 310, 236, 238, 239, 69, 70, 258, 317, 155, 246, 398, 367, 132, 155, 331, 181, 155, 195, 730, 367, 332, 257, 734, 735, 570, 231, 310, 571, 419, 45, 68, 839, 1, 419, 586, 588, 153, 416, 589, 417, 590, 556, 45, 511, 333, 177, 443, 693, 197, 737, 738, 222, 444, 222, 333, 222, 222, 222, 517, 636, 222, 225, 222, 623, 69, 70, 601, 600, -416, 334, 622, 637, 782, 783, -416, 76, 503, 46, 616, 334, 524, 503, 230, 369, 156, 335, 444, 533, 513, 529, 46, 107, 515, 132, 534, 335, 77, 736, 680, 374, 71, 240, 257, 553, 72, 249, 257, 73, 257, 523, 177, 723, 74, 71, 177, 336, 337, 295, 361, 293, 177, 621, 177, 95, 739, 336, 337, 177, 132, 76, 132, 208, 294, 208, 844, 208, 208, 208, 132, 444, 208, 296, 208, 307, 596, 71, 240, 784, 845, 69, 70, 751, 45, 369, 418, 132, 755, 132, 316, 609, 76, 369, 76, 444, 418, 318, 72, 609, 756, 303, 132, 71, 766, 647, 74, 520, 777, 644, 376, 666, 310, 521, 265, 645, 310, 627, 249, 804, 361, 188, 403, 132, 726, 87, 189, 310, 361, 299, 444, 300, 46, 313, 652, 398, 1, 398, 786, 398, 259, 260, 261, 303, 444, 787, 315, 699, 74, 320, 789, 444, 87, 249, 87, 249, 444, 330, 182, 648, 410, 240, 796, 249, 222, 155, 222, 222, 222, 841, 87, 404, 685, 504, 843, 444, 711, 710, 507, 713, 444, 505, 482, 411, 654, 153, 508, 451, 717, 718, -280, 662, 452, 664, 519, 177, 282, 283, 132, 284, 285, 512, 132, 553, 514, 673, 291, 292, 518, 678, 516, 71, 381, 376, 682, 525, 502, 553, 553, 646, 444, 76, 663, 1, 1, 526, 76, 259, 260, 261, 527, 177, 177, 156, 597, 1, 177, 488, 489, 259, 260, 261, 495, 496, 208, 155, 208, 208, 208, 2, 490, 491, 233, 234, 724, 87, 262, 182, 539, 87, 263, 264, 45, 87, 604, 153, 605, 426, 607, 132, 1, 591, 642, 182, 383, 620, 617, 650, 643, 87, 665, 668, 667, 671, 669, 71, 769, 670, 672, 391, 772, 249, 674, 705, 675, 27, 28, 155, 689, 690, 29, 691, 27, 28, 706, 707, 714, 29, 716, 715, 46, 719, 71, 156, 720, 1, 398, 153, 398, 398, 398, 727, 42, 794, 728, 553, 741, 740, 747, 750, 189, 35, 36, 763, 803, 752, 764, 553, 35, 36, 71, 27, 28, 262, 132, 553, 29, 263, 264, 758, 132, 765, 155, 177, 76, 262, 177, 826, 767, 263, 264, 626, 770, 771, 93, 156, 799, 1, 42, 757, 132, 685, 153, 790, 805, 132, 806, 35, 36, 827, 830, 831, 846, 1, 132, 132, 27, 28, 150, 152, 176, 29, 27, 28, 840, 42, 173, 29, 87, 553, 847, 848, 849, 553, 853, 742, 553, 799, 857, 1, 42, 94, 858, 177, 497, 152, 498, 753, 177, 177, 156, 499, 35, 36, 501, 689, 500, 797, 35, 36, 577, 581, 68, 42, 1, 73, 42, 649, 27, 28, 74, 152, 314, 29, 553, 553, 509, 553, 441, 696, 553, 634, 87, 799, 27, 28, 413, 687, 442, 29, 639, 640, 722, 87, 0, 641, 0, 572, 677, 0, 132, 0, 0, 579, 35, 36, 0, 0, 42, 785, 27, 28, 553, 788, 72, 29, 791, 176, 569, 0, 35, 36, 132, 132, 132, 132, 0, 132, 553, 0, 72, 553, 0, 176, 132, -377, -377, 42, 325, 0, -377, 328, 132, 27, 28, 0, 35, 36, 29, 0, 385, 42, 0, 42, 819, 820, 72, 821, 0, 176, 823, 0, 42, 0, 152, 0, 0, 0, 391, 0, 0, -377, -377, 0, 0, 0, 152, 152, 152, 35, 36, 69, 70, 0, -377, -377, 0, 152, 0, -377, 0, 0, 842, 42, 0, 42, 132, 152, 0, 0, 132, 0, 42, 132, 132, 0, 0, 0, 852, 152, 152, 854, 132, 1, 0, 0, 743, 744, 746, 0, 0, 0, 105, 0, 1, 106, 107, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 0, 2, 0, 0, 132, 132, 0, 132, 132, 182, 132, 132, 2, 0, 0, 0, 132, 152, 42, 0, 0, 0, 152, 0, 79, 152, 0, 0, 87, 0, 0, 42, 0, 0, 0, 97, 0, 0, 0, 0, 0, 0, 132, 0, 0, 694, 697, 27, 28, 0, 700, 79, 29, 178, 0, 111, 112, 0, 132, 0, 0, 132, 132, 0, 187, 0, 0, 0, 0, 194, 0, 211, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 42, 114, 115, 152, 0, 42, 0, 152, 0, 0, 0, 0, 18, 19, 0, 0, 822, 117, 0, 825, 0, 0, 237, 0, 0, 121, 0, 0, 276, 0, 0, 0, 0, 0, 0, 152, 0, 152, 0, 152, 152, 152, 27, 28, 152, 0, 152, 29, 0, 304, 42, 0, 0, 0, 0, 0, 42, 0, 0, 0, 0, 187, 0, 0, 0, 0, 0, 0, 0, 178, 0, 0, 187, 194, 0, 0, 0, 194, 35, 36, 0, 0, 759, 0, 152, 762, 0, 0, 72, 42, 0, 0, 211, 178, 0, 89, 0, 0, 0, 0, 0, 0, 152, 388, 0, 211, 0, 0, 0, 0, 0, 0, 0, 401, 0, 0, 0, 211, 211, 211, 0, 0, 89, 0, 89, 0, 0, 0, 183, 0, 0, 0, 0, 42, 428, 0, 428, 0, 0, 0, 89, 0, 87, 304, 0, 0, 0, 801, 802, 0, 0, 0, 0, 0, 0, 0, 653, 152, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 164, 91, 42, 180, 0, 152, 152, 184, 0, 0, 0, 0, 304, 0, 0, 0, 0, 152, 0, 0, 0, 0, 83, 0, 0, 0, 0, 0, 194, 0, 0, 0, 152, 0, 152, 152, 152, 0, 0, 0, 0, 89, 0, 183, 0, 89, 0, 0, 0, 89, 42, 0, 0, 152, 0, 0, 0, 253, 0, 183, 0, 0, 0, 0, 0, 89, 0, 0, 0, 0, 0, 0, 304, 0, 0, 0, 395, 535, 0, 211, 0, 0, 537, 0, 306, 402, 0, 0, 0, 0, 0, 312, 0, 178, 82, 254, 0, 0, 0, 0, 0, 0, 0, 578, 180, 152, 319, 0, 0, 0, 0, 0, 0, 0, 211, 0, 211, 0, 211, 211, 211, 0, 0, 211, 0, 211, 0, 0, 180, 304, 80, 0, 83, 152, 0, 428, 0, 0, 394, 396, 0, 0, 428, 378, 379, 380, 382, 0, 82, 0, 428, 0, 0, 0, 0, 0, 162, 0, 0, 0, 152, 0, 0, 0, 0, 0, 0, 0, 388, 431, 0, 431, 0, 423, 0, 0, 0, 0, 306, 82, 437, 82, 437, 423, 89, 0, 83, 0, 448, 0, 0, 0, 0, 0, 0, 463, 463, 0, 0, 0, 152, 0, 0, 251, 0, 0, 0, 0, 0, 0, 0, 424, 304, 0, 0, 0, 0, 83, 438, 83, 438, 424, 0, 0, 0, 0, 449, 0, 0, 0, 0, 306, 506, 464, 464, 0, 0, 0, 89, 0, 80, 0, 0, 0, 0, 0, 0, 311, 0, 89, 0, 0, 0, 395, 0, 0, 0, 0, 0, 402, 0, 580, 0, 0, 0, 537, 582, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 365, 695, 0, 0, 0, 0, 0, 0, 0, 306, 0, 0, 80, 211, 0, 211, 211, 211, 164, 180, 0, 0, 0, 0, 0, 0, 82, 0, 0, 253, 180, 82, 0, 463, 573, 0, 0, 421, 0, 0, 0, 0, 0, 80, 435, 80, 435, 421, 0, 0, 0, 0, 446, 0, 209, 0, 0, 0, 0, 461, 461, 0, 0, 0, 83, 0, 306, 254, 0, 83, 0, 464, 431, 0, 603, 0, 594, 0, 81, 431, 0, 0, 0, 0, 0, 0, 0, 431, 0, 613, 0, 0, 0, 0, 0, 0, 0, 613, 0, 0, 0, 0, 0, 0, 0, 394, 0, 0, 78, 0, 463, 0, 187, 0, 595, 631, 174, 0, 0, 0, 183, 0, 0, 0, 635, 761, 0, 614, 463, 0, 0, 0, 0, 0, 0, 614, 0, 0, 0, 89, 174, 0, 0, 0, 0, 0, 0, 0, 464, 306, 364, 252, 0, 632, 174, 0, 580, 174, 0, 82, 0, 582, 78, 0, 0, 531, 464, 0, 0, 0, 0, 0, 80, 209, 162, 251, 0, 80, 0, 461, 0, 0, 178, 319, 0, 209, 209, 209, 81, 0, 0, 0, 0, 78, 434, 78, 434, 83, 0, 0, 0, 0, 180, 0, 0, 0, 0, 0, 0, 460, 460, 0, 631, 0, 0, 463, 463, 0, 456, 456, 698, 0, 592, 0, 0, 0, 0, 463, 174, 0, 0, 174, 0, 0, 0, 611, 0, 0, 0, 0, 0, 0, 81, 611, 0, 0, 0, 0, 0, 0, 632, 0, 0, 464, 464, 0, 461, 0, 0, 0, 0, 629, 0, 0, 0, 464, 0, 422, 0, 0, 0, 0, 174, 81, 461, 81, 0, 422, 0, 0, 0, 0, 447, 0, 0, 0, 0, 0, 0, 462, 462, 0, 0, 0, 0, 0, 0, 0, 0, 458, 458, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 731, 732, 530, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 78, 0, 460, 0, 0, 0, 0, 0, 0, 0, 0, 89, 0, 0, 760, 0, 463, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 629, 0, 209, 461, 461, 0, 0, 0, 209, 0, 209, 0, 209, 209, 209, 461, 0, 209, 0, 209, 0, 0, 0, 464, 0, 0, 0, 610, 0, 0, 0, 0, 0, 778, 779, 610, 780, 781, 0, 0, 0, 0, 0, 180, 81, 0, 0, 252, 460, 81, 0, 462, 463, 628, 0, 0, 0, 456, 0, 0, 0, 0, 0, 0, 0, 0, 460, 458, 0, 174, 0, 0, 807, 0, 808, 456, 0, 0, 0, 0, 0, 817, 818, 0, 0, 0, 0, 0, 0, 0, 464, 0, 0, 0, 593, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 832, 0, 833, 174, 834, 0, 835, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 0, 462, 0, 0, 461, 0, 630, 0, 850, 0, 851, 458, 0, 105, 0, 1, 106, 107, 108, 462, 109, 110, 0, 628, 0, 0, 460, 460, 0, 458, 0, 0, 0, 0, 0, 0, 0, 0, 460, 0, 2, 0, 0, 0, 0, 0, 0, 456, 0, 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 209, 0, 209, 209, 209, 0, 0, 0, 0, 461, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 0, 0, 630, 0, 0, 462, 462, 0, 0, 0, 0, 456, 0, 114, 115, 0, 0, 462, 0, 0, 116, 0, 0, 0, 0, 0, 0, 458, 0, 117, 0, 118, 174, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 460, 798, 855, 0, 0, 0, 0, 0, 174, 0, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 174, 174, 0, 0, 0, 0, 0, 0, 0, 458, 0, 0, 0, 0, 0, 0, 0, 0, 0, 458, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 725, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 460, 0, 0, 0, 0, 0, 0, 0, 0, 456, 0, 0, 0, 462, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 0, 0, 174, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 462, 109, 110, 0, 0, 0, 0, 0, 174, 0, 458, 0, 0, 0, 0, 0, 0, 0, 0, 174, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 551, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 552, 376, -444, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 551, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 552, 376, -443, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 551, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 552, 376, -445, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 453, 454, 455, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 453, 454, 474, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 453, 454, 624, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 638, 454, -496, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 453, 454, 692, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 0, 0, 453, 454, 795, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 203, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 397, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 406, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 408, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 583, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 584, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 585, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 587, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 701, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 702, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 202, 0, 703, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 202, 0, 704, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 551, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 552, 376, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 2, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 2, 111, 112, 113, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 114, 115, 0, 0, 0, 552, 376, 116, 0, 0, 0, 111, 112, 113, 0, 0, 117, 0, 118, 0, 0, 119, 477, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 0, 454, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 0, 0, 454, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 0, 0, 0, 798, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 26, 0, 198, 0, 0, 111, 112, 0, 27, 28, 0, 0, 199, 29, 0, 0, 30, 31, 2, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 72, 0, 0, 200, 0, 201, 121, 111, 112, 113, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 202, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 119, 748, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 0, 552, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 111, 112, 113, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 792, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 114, 115, 0, 0, 0, 0, 552, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 1, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 676, 0, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 354, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 0, 1, 72, 0, 0, 303, 0, 0, 0, 0, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 528, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 1, 0, 72, 0, 0, 384, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 385, 0, 386, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 1, 0, 72, 0, 0, 176, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 681, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 105, 303, 1, 106, 107, 108, 74, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -279, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 39, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 247, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 34, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 37, 38, 0, 2, 0, 0, 117, 0, 372, 0, 0, 373, 247, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 111, 112, 113, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 114, 115, 0, 0, 0, 0, 0, 116, 35, 36, 0, 0, 0, 0, 0, 2, 117, 0, 372, 0, 0, 373, 247, 120, 121, 111, 112, 113, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 111, 112, 113, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 172, 0, 122, 123, 124, 125, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 324, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 114, 115, 111, 112, 113, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 327, 0, 122, 123, 124, 125, 114, 115, 0, 0, 0, 0, 0, 116, 0, 111, 112, 113, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 247, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 119, 745, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 114, 115, 111, 112, 113, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 824, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 114, 115, 0, 0, 0, 0, 0, 116, 0, 111, 112, 113, 0, 0, 0, 0, 117, 0, 118, 0, 0, 119, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 0, 0, 0, 0, 0, 0, 0, 114, 115, 0, 0, 0, 0, 105, 116, 1, 106, 107, 108, 0, 109, 110, 0, 117, 0, 118, 0, 0, 235, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 0, 0, 0, 0, 0, 105, 0, 1, 106, 107, 108, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 112, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 114, 115, 111, 112, 113, 0, 0, 116, 0, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 237, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 114, 115, 0, 0, 0, 0, 0, 116, 1, 0, 0, 0, 0, 0, 0, 0, 117, 0, 118, 0, 0, 245, 0, 120, 121, 0, 0, 0, 0, 122, 123, 124, 125, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 1, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 73, 0, 0, 0, 0, 74, 0, 0, 75, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 73, 165, 0, 0, 0, 74, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 303, 165, 0, 0, 0, 74, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 0, 0, 0, 0, 427, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 0, 0, 0, 0, 439, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 303, 0, 0, 0, 0, 74, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 0, 0, 0, 0, 608, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 2, 0, 0, 0, 618, 0, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 1, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 0, 0, 0, 72, 0, 0, 303, 0, 0, 0, 0, 74, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 426, 598, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 190, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 322, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 0, 709, 0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 72, 0, 0, 176, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 0, 0, 0, 0, 0, 538, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 510, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 30, 31, 0, 32, 0, 33, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 37, 38, 0, 0, 0, 39, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 354, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39, 2, 3, 4, 5, 6, 7, 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, 18, 19, 352, 353, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 355, 0, 0, 0, 0, 0, 0, 0, 27, 28, 0, 0, 0, 29, 0, 0, 0, 0, 0, 356, 0, 357, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 358, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 36, 359, 360, 0, 0, 0, 39
137 static const yytype_int16 yycheck[] =
139 0, 0, 262, 88, 46, 377, 121, 243, 258, 383, 198, 98, 199, 93, 377, 527, 65, 277, 3, 17, 3, 198, 3, 210, 24, 112, 133, 91, 115, 3, 3, 3, 428, 75, 341, 431, 3, 3, 798, 123, 79, 3, 3, 28, 46, 45, 46, 67, 0, 3, 198, 672, 121, 24, 120, 28, 28, 57, 69, 44, 69, 70, 62, 3, 79, 121, 66, 67, 130, 135, 136, 110, 111, 73, 143, 75, 91, 77, 70, 79, 142, 3, 144, 123, 844, 121, 57, 143, 88, 74, 75, 91, 69, 93, 242, 607, 244, 97, 130, 186, 185, 140, 189, 103, 104, 3, 28, 12, 13, 123, 142, 111, 74, 75, 114, 67, 180, 79, 138, 70, 184, 73, 224, 225, 226, 3, 97, 127, 749, 0, 130, 69, 212, 144, 3, 144, 88, 120, 121, 124, 3, 139, 123, 230, 224, 225, 226, 659, 110, 111, 124, 151, 144, 153, 156, 11, 156, 124, 141, 111, 143, 3, 114, 70, 140, 120, 166, 144, 123, 184, 143, 143, 279, 280, 281, 363, 176, 143, 178, 140, 180, 143, 143, 370, 184, 185, 363, 559, 560, 143, 426, 191, 198, 144, 194, 70, 559, 433, 198, 199, 200, 201, 714, 143, 454, 441, 144, 603, 208, 209, 210, 211, 212, 262, 521, 363, 121, 122, 143, 1, 220, 3, 120, 121, 224, 225, 226, 198, 277, 123, 69, 231, 65, 185, 128, 235, 242, 144, 244, 46, 240, 241, 242, 243, 244, 245, 130, 199, 250, 201, 250, 120, 626, 130, 123, 319, 433, 120, 121, 259, 144, 3, 143, 263, 441, 142, 122, 287, 288, 144, 290, 242, 459, 244, 130, 108, 109, 110, 120, 121, 143, 129, 302, 116, 212, 433, 119, 307, 124, 304, 310, 306, 122, 441, 130, 143, 69, 70, 385, 130, 130, 143, 302, 303, 1, 144, 3, 307, 410, 411, 310, 142, 414, 144, 416, 687, 316, 316, 3, 319, 124, 571, 123, 69, 70, 405, 130, 407, 3, 409, 410, 411, 332, 130, 414, 143, 416, 452, 120, 121, 427, 426, 124, 28, 451, 142, 69, 70, 130, 156, 302, 303, 439, 28, 354, 307, 141, 363, 310, 44, 130, 363, 129, 363, 316, 5, 129, 200, 368, 44, 370, 144, 142, 373, 374, 375, 143, 377, 120, 119, 143, 123, 143, 354, 384, 645, 128, 387, 388, 74, 75, 138, 363, 131, 394, 444, 396, 368, 144, 74, 75, 401, 235, 210, 237, 405, 137, 407, 130, 409, 410, 411, 245, 130, 414, 16, 416, 141, 420, 419, 420, 144, 144, 120, 121, 142, 426, 433, 235, 262, 130, 264, 130, 433, 241, 441, 243, 130, 245, 129, 120, 441, 142, 123, 277, 445, 122, 140, 128, 124, 122, 124, 143, 540, 130, 130, 456, 130, 130, 459, 200, 122, 433, 123, 142, 298, 124, 46, 128, 130, 441, 124, 130, 124, 426, 124, 525, 405, 3, 407, 124, 409, 7, 8, 9, 123, 130, 124, 124, 576, 128, 506, 124, 130, 73, 235, 75, 237, 130, 124, 79, 503, 143, 503, 754, 245, 586, 527, 588, 589, 590, 124, 91, 142, 556, 302, 124, 130, 605, 604, 307, 608, 130, 302, 264, 143, 526, 527, 307, 124, 617, 618, 141, 533, 127, 535, 123, 537, 132, 133, 373, 10, 11, 124, 377, 545, 129, 547, 14, 15, 124, 551, 129, 553, 142, 143, 556, 123, 298, 559, 560, 129, 130, 370, 535, 3, 3, 123, 375, 7, 8, 9, 121, 573, 574, 527, 124, 3, 578, 282, 283, 7, 8, 9, 291, 292, 586, 607, 588, 589, 590, 28, 284, 285, 103, 104, 645, 176, 123, 178, 144, 180, 127, 128, 604, 184, 123, 607, 128, 123, 121, 444, 3, 420, 144, 194, 141, 124, 128, 124, 144, 200, 124, 123, 140, 545, 123, 627, 715, 123, 123, 210, 719, 373, 142, 124, 142, 74, 75, 659, 560, 144, 79, 142, 74, 75, 124, 129, 121, 79, 129, 128, 604, 128, 654, 607, 144, 3, 586, 659, 588, 589, 590, 124, 0, 752, 124, 667, 140, 143, 56, 142, 128, 110, 111, 140, 763, 141, 124, 679, 110, 111, 682, 74, 75, 123, 519, 687, 79, 127, 128, 144, 525, 129, 714, 695, 503, 123, 698, 142, 129, 127, 128, 141, 129, 129, 143, 659, 757, 3, 46, 141, 545, 755, 714, 123, 129, 550, 129, 110, 111, 144, 144, 144, 144, 3, 559, 560, 74, 75, 66, 67, 123, 79, 74, 75, 64, 73, 74, 79, 319, 741, 144, 144, 144, 745, 142, 667, 748, 798, 144, 3, 88, 57, 144, 755, 293, 93, 294, 679, 760, 761, 714, 295, 110, 111, 297, 687, 296, 755, 110, 111, 393, 399, 1, 111, 3, 123, 114, 519, 74, 75, 128, 119, 124, 79, 786, 787, 310, 789, 244, 574, 792, 459, 373, 844, 74, 75, 231, 559, 245, 79, 472, 472, 636, 384, -1, 472, -1, 388, 550, -1, 645, -1, -1, 394, 110, 111, -1, -1, 156, 741, 74, 75, 824, 745, 120, 79, 748, 123, 124, -1, 110, 111, 667, 668, 669, 670, -1, 672, 840, -1, 120, 843, -1, 123, 679, 74, 75, 185, 186, -1, 79, 189, 687, 74, 75, -1, 110, 111, 79, -1, 140, 199, -1, 201, 786, 787, 120, 789, -1, 123, 792, -1, 210, -1, 212, -1, -1, -1, 459, -1, -1, 110, 111, -1, -1, -1, 224, 225, 226, 110, 111, 120, 121, -1, 123, 124, -1, 235, -1, 128, -1, -1, 824, 241, -1, 243, 741, 245, -1, -1, 745, -1, 250, 748, 749, -1, -1, -1, 840, 257, 258, 843, 757, 3, -1, -1, 668, 669, 670, -1, -1, -1, 1, -1, 3, 4, 5, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, -1, 28, -1, -1, 786, 787, -1, 789, 790, 537, 792, 793, 28, -1, -1, -1, 798, 302, 303, -1, -1, -1, 307, -1, 46, 310, -1, -1, 556, -1, -1, 316, -1, -1, -1, 57, -1, -1, -1, -1, -1, -1, 824, -1, -1, 573, 574, 74, 75, -1, 578, 73, 79, 75, -1, 71, 72, -1, 840, -1, -1, 843, 844, -1, 86, -1, -1, -1, -1, 91, -1, 93, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 370, 102, 103, 373, -1, 375, -1, 377, -1, -1, -1, -1, 44, 45, -1, -1, 790, 118, -1, 793, -1, -1, 123, -1, -1, 126, -1, -1, 141, -1, -1, -1, -1, -1, -1, 405, -1, 407, -1, 409, 410, 411, 74, 75, 414, -1, 416, 79, -1, 156, 420, -1, -1, -1, -1, -1, 426, -1, -1, -1, -1, 168, -1, -1, -1, -1, -1, -1, -1, 176, -1, -1, 179, 180, -1, -1, -1, 184, 110, 111, -1, -1, 695, -1, 454, 698, -1, -1, 120, 459, -1, -1, 199, 200, -1, 46, -1, -1, -1, -1, -1, -1, 472, 210, -1, 212, -1, -1, -1, -1, -1, -1, -1, 220, -1, -1, -1, 224, 225, 226, -1, -1, 73, -1, 75, -1, -1, -1, 79, -1, -1, -1, -1, 503, 241, -1, 243, -1, -1, -1, 91, -1, 755, 250, -1, -1, -1, 760, 761, -1, -1, -1, -1, -1, -1, -1, 526, 527, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 556, 75, -1, 559, 560, 79, -1, -1, -1, -1, 303, -1, -1, -1, -1, 571, -1, -1, -1, -1, 46, -1, -1, -1, -1, -1, 319, -1, -1, -1, 586, -1, 588, 589, 590, -1, -1, -1, -1, 176, -1, 178, -1, 180, -1, -1, -1, 184, 604, -1, -1, 607, -1, -1, -1, 119, -1, 194, -1, -1, -1, -1, -1, 200, -1, -1, -1, -1, -1, -1, 363, -1, -1, -1, 211, 368, -1, 370, -1, -1, 373, -1, 156, 220, -1, -1, -1, -1, -1, 163, -1, 384, 156, 119, -1, -1, -1, -1, -1, -1, -1, 394, 176, 659, 178, -1, -1, -1, -1, -1, -1, -1, 405, -1, 407, -1, 409, 410, 411, -1, -1, 414, -1, 416, -1, -1, 200, 420, 46, -1, 156, 687, -1, 426, -1, -1, 210, 211, -1, -1, 433, 204, 205, 206, 207, -1, 210, -1, 441, -1, -1, -1, -1, -1, 72, -1, -1, -1, 714, -1, -1, -1, -1, -1, -1, -1, 459, 241, -1, 243, -1, 235, -1, -1, -1, -1, 250, 241, 242, 243, 244, 245, 319, -1, 210, -1, 250, -1, -1, -1, -1, -1, -1, 257, 258, -1, -1, -1, 754, -1, -1, 119, -1, -1, -1, -1, -1, -1, -1, 235, 503, -1, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, -1, -1, 250, -1, -1, -1, -1, 303, 304, 257, 258, -1, -1, -1, 373, -1, 156, -1, -1, -1, -1, -1, -1, 163, -1, 384, -1, -1, -1, 388, -1, -1, -1, -1, -1, 394, -1, 396, -1, -1, -1, 556, 401, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 46, -1, 198, 574, -1, -1, -1, -1, -1, -1, -1, 363, -1, -1, 210, 586, -1, 588, 589, 590, 372, 373, -1, -1, -1, -1, -1, -1, 370, -1, -1, 373, 384, 375, -1, 377, 388, -1, -1, 235, -1, -1, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, -1, -1, 250, -1, 93, -1, -1, -1, -1, 257, 258, -1, -1, -1, 370, -1, 420, 373, -1, 375, -1, 377, 426, -1, 428, -1, 420, -1, 46, 433, -1, -1, -1, -1, -1, -1, -1, 441, -1, 433, -1, -1, -1, -1, -1, -1, -1, 441, -1, -1, -1, -1, -1, -1, -1, 459, -1, -1, 156, -1, 454, -1, 685, -1, 420, 459, 74, -1, -1, -1, 537, -1, -1, -1, 467, 698, -1, 433, 472, -1, -1, -1, -1, -1, -1, 441, -1, -1, -1, 556, 98, -1, -1, -1, -1, -1, -1, -1, 454, 503, 198, 119, -1, 459, 112, -1, 573, 115, -1, 503, -1, 578, 210, -1, -1, 363, 472, -1, -1, -1, -1, -1, 370, 212, 372, 373, -1, 375, -1, 377, -1, -1, 755, 537, -1, 224, 225, 226, 156, -1, -1, -1, -1, 241, 242, 243, 244, 503, -1, -1, -1, -1, 556, -1, -1, -1, -1, -1, -1, 257, 258, -1, 556, -1, -1, 559, 560, -1, 257, 258, 574, -1, 420, -1, -1, -1, -1, 571, 186, -1, -1, 189, -1, -1, -1, 433, -1, -1, -1, -1, -1, -1, 210, 441, -1, -1, -1, -1, -1, -1, 556, -1, -1, 559, 560, -1, 454, -1, -1, -1, -1, 459, -1, -1, -1, 571, -1, 235, -1, -1, -1, -1, 230, 241, 472, 243, -1, 245, -1, -1, -1, -1, 250, -1, -1, -1, -1, -1, -1, 257, 258, -1, -1, -1, -1, -1, -1, -1, -1, 257, 258, -1, -1, -1, -1, 503, -1, -1, -1, -1, -1, -1, -1, 656, 657, 363, -1, -1, -1, -1, -1, -1, 370, -1, -1, -1, -1, 375, -1, 377, -1, -1, -1, -1, -1, -1, -1, -1, 755, -1, -1, 695, -1, 687, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 556, -1, 399, 559, 560, -1, -1, -1, 405, -1, 407, -1, 409, 410, 411, 571, -1, 414, -1, 416, -1, -1, -1, 687, -1, -1, -1, 433, -1, -1, -1, -1, -1, 734, 735, 441, 737, 738, -1, -1, -1, -1, -1, 755, 370, -1, -1, 373, 454, 375, -1, 377, 754, 459, -1, -1, -1, 454, -1, -1, -1, -1, -1, -1, -1, -1, 472, 383, -1, 385, -1, -1, 773, -1, 775, 472, -1, -1, -1, -1, -1, 782, 783, -1, -1, -1, -1, -1, -1, -1, 754, -1, -1, -1, 420, -1, -1, 503, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 809, -1, 811, 427, 813, -1, 815, -1, -1, -1, -1, -1, -1, -1, -1, 439, -1, -1, -1, -1, 454, -1, -1, 687, -1, 459, -1, 836, -1, 838, 454, -1, 1, -1, 3, 4, 5, 6, 472, 8, 9, -1, 556, -1, -1, 559, 560, -1, 472, -1, -1, -1, -1, -1, -1, -1, -1, 571, -1, 28, -1, -1, -1, -1, -1, -1, 571, -1, -1, 503, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 586, -1, 588, 589, 590, -1, -1, -1, -1, 754, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 540, -1, -1, -1, -1, -1, 556, -1, -1, 559, 560, -1, -1, -1, -1, 636, -1, 102, 103, -1, -1, 571, -1, -1, 109, -1, -1, -1, -1, -1, -1, 571, -1, 118, -1, 120, 576, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 687, 143, 144, -1, -1, -1, -1, -1, 605, -1, -1, 608, -1, -1, -1, -1, -1, -1, -1, -1, 617, 618, -1, -1, -1, -1, -1, -1, -1, 626, -1, -1, -1, -1, -1, -1, -1, -1, -1, 636, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 647, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 754, -1, -1, -1, -1, -1, -1, -1, -1, 754, -1, -1, -1, 687, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 715, -1, -1, -1, 719, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, 754, 8, 9, -1, -1, -1, -1, -1, 752, -1, 754, -1, -1, -1, -1, -1, -1, -1, -1, 763, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, 77, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, 77, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, 77, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 144, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 1, -1, 3, 4, 5, -1, -1, 142, 143, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, 142, -1, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, 77, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, 143, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 28, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, 28, 71, 72, 73, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, 102, 103, -1, -1, -1, 142, 143, 109, -1, -1, -1, 71, 72, 73, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, -1, 143, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, -1, -1, 143, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 1, -1, 3, 4, 5, -1, -1, -1, 143, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, 66, -1, 68, -1, -1, 71, 72, -1, 74, 75, -1, -1, 78, 79, -1, -1, 82, 83, 28, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, 71, 72, 73, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, 142, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, -1, 142, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, 71, 72, 73, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, 102, 103, -1, -1, -1, -1, 142, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, 3, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 142, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, 3, 120, -1, -1, 123, -1, -1, -1, -1, 128, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 3, -1, 120, -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 140, -1, 142, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 3, -1, 120, -1, -1, 123, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, 1, 123, 3, 4, 5, 6, 128, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -1, -1, -1, -1, -1, -1, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, 117, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, 100, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, 112, 113, -1, 28, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, 71, 72, 73, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, 102, 103, -1, -1, -1, -1, -1, 109, 110, 111, -1, -1, -1, -1, -1, 28, 118, -1, 120, -1, -1, 123, 124, 125, 126, 71, 72, 73, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, 71, 72, 73, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, 129, -1, 131, 132, 133, 134, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, 129, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 102, 103, 71, 72, 73, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, 129, -1, 131, 132, 133, 134, 102, 103, -1, -1, -1, -1, -1, 109, -1, 71, 72, 73, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, 102, 103, 71, 72, 73, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, 124, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 102, 103, -1, -1, -1, -1, -1, 109, -1, 71, 72, 73, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, -1, -1, -1, -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, 1, 109, 3, 4, 5, 6, -1, 8, 9, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 102, 103, 71, 72, 73, -1, -1, 109, -1, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 102, 103, -1, -1, -1, -1, -1, 109, 3, -1, -1, -1, -1, -1, -1, -1, 118, -1, 120, -1, -1, 123, -1, 125, 126, -1, -1, -1, -1, 131, 132, 133, 134, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, 3, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, -1, -1, 131, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 124, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 124, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 28, -1, -1, -1, 128, -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, 3, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, -1, -1, -1, 120, -1, -1, 123, -1, -1, -1, -1, 128, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, 3, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 124, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, 3, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, 124, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, 3, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, 124, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, 3, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, 124, -1, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, 120, -1, -1, 123, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, -1, -1, -1, -1, -1, 123, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 65, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, 82, 83, -1, 85, -1, 87, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, 3, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 66, -1, -1, -1, -1, -1, -1, -1, 74, 75, -1, -1, -1, 79, -1, -1, -1, -1, -1, 85, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, -1, -1, -1, 110, 111, 112, 113, -1, -1, -1, 117
142 static const yytype_uint16 yystos[] =
144 0, 3, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 65, 66, 74, 75, 79, 82, 83, 85, 87, 100, 110, 111, 112, 113, 117, 146, 147, 148, 149, 150, 155, 185, 186, 191, 192, 193, 197, 198, 199, 200, 202, 203, 209, 217, 218, 236, 267, 143, 150, 155, 123, 123, 121, 1, 120, 121, 155, 120, 123, 128, 131, 146, 155, 191, 192, 199, 200, 202, 218, 221, 223, 225, 226, 228, 229, 230, 233, 123, 143, 149, 150, 155, 192, 140, 0, 155, 219, 220, 143, 143, 1, 4, 5, 6, 8, 9, 71, 72, 73, 102, 103, 109, 118, 120, 123, 125, 126, 131, 132, 133, 134, 148, 155, 156, 157, 158, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 254, 257, 148, 155, 148, 155, 162, 167, 185, 204, 205, 206, 207, 208, 199, 232, 233, 124, 155, 223, 225, 234, 235, 236, 129, 148, 176, 180, 123, 155, 192, 225, 233, 221, 226, 229, 233, 123, 128, 192, 123, 128, 124, 155, 234, 237, 192, 221, 230, 123, 68, 78, 123, 125, 142, 144, 151, 152, 153, 154, 155, 158, 185, 192, 210, 211, 212, 213, 214, 226, 227, 229, 233, 256, 257, 259, 143, 143, 143, 150, 155, 180, 141, 130, 144, 219, 219, 123, 162, 123, 162, 162, 155, 185, 180, 185, 180, 123, 162, 124, 177, 179, 182, 199, 200, 202, 218, 238, 254, 143, 143, 7, 8, 9, 123, 127, 128, 155, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 141, 178, 164, 120, 135, 136, 132, 133, 10, 11, 167, 12, 13, 121, 122, 14, 15, 131, 137, 138, 16, 17, 139, 124, 124, 124, 141, 123, 192, 223, 233, 141, 11, 122, 130, 199, 233, 124, 124, 124, 130, 129, 129, 233, 221, 230, 124, 234, 129, 148, 180, 129, 148, 180, 124, 124, 130, 3, 28, 44, 74, 75, 124, 194, 195, 196, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 46, 47, 50, 66, 85, 87, 100, 112, 113, 150, 155, 187, 191, 199, 201, 203, 209, 217, 185, 227, 120, 123, 155, 185, 143, 248, 249, 249, 249, 142, 249, 141, 123, 140, 142, 155, 192, 215, 216, 226, 227, 231, 233, 229, 233, 144, 214, 130, 142, 192, 229, 142, 142, 210, 144, 210, 144, 210, 143, 143, 180, 220, 142, 144, 142, 144, 146, 155, 183, 199, 200, 202, 218, 239, 123, 128, 192, 222, 224, 233, 155, 188, 191, 199, 201, 202, 218, 128, 224, 188, 239, 124, 130, 155, 199, 200, 202, 218, 223, 124, 127, 142, 143, 144, 158, 159, 176, 184, 191, 199, 200, 202, 218, 241, 258, 260, 261, 262, 263, 264, 265, 266, 144, 266, 155, 124, 159, 160, 177, 155, 179, 159, 177, 164, 164, 164, 165, 165, 166, 166, 167, 167, 167, 169, 169, 170, 171, 172, 173, 174, 179, 185, 205, 206, 233, 205, 206, 207, 51, 236, 124, 129, 129, 129, 129, 155, 124, 123, 124, 130, 195, 150, 155, 123, 123, 121, 143, 155, 191, 199, 201, 223, 155, 192, 227, 192, 123, 144, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 77, 142, 155, 179, 181, 184, 243, 244, 245, 246, 247, 249, 250, 251, 252, 253, 255, 241, 124, 180, 143, 226, 233, 130, 142, 140, 197, 192, 226, 229, 211, 229, 144, 144, 144, 210, 144, 210, 210, 210, 146, 199, 200, 202, 218, 223, 124, 124, 224, 234, 180, 222, 233, 123, 128, 222, 121, 128, 155, 191, 199, 201, 202, 218, 224, 180, 128, 128, 224, 124, 177, 164, 254, 144, 266, 141, 155, 191, 199, 200, 202, 218, 227, 231, 249, 130, 142, 142, 261, 263, 264, 144, 144, 124, 130, 129, 140, 223, 179, 124, 195, 177, 148, 155, 208, 69, 70, 144, 121, 143, 143, 155, 150, 155, 124, 180, 140, 123, 123, 123, 243, 123, 155, 142, 142, 142, 179, 155, 140, 142, 142, 155, 189, 190, 225, 181, 246, 181, 243, 144, 142, 144, 266, 226, 192, 216, 226, 233, 180, 226, 144, 144, 144, 144, 124, 124, 129, 222, 124, 234, 180, 208, 180, 121, 128, 129, 180, 180, 128, 144, 241, 262, 159, 177, 176, 124, 124, 124, 124, 122, 249, 249, 208, 69, 70, 144, 69, 70, 144, 143, 140, 243, 179, 179, 124, 179, 56, 124, 250, 142, 142, 141, 243, 143, 130, 142, 141, 144, 226, 233, 192, 226, 140, 124, 129, 122, 129, 208, 180, 129, 129, 180, 70, 144, 69, 144, 122, 249, 249, 249, 249, 69, 70, 144, 243, 124, 124, 243, 124, 123, 243, 124, 250, 180, 144, 266, 190, 143, 177, 240, 226, 226, 180, 122, 129, 129, 249, 249, 70, 144, 69, 144, 70, 144, 69, 144, 249, 249, 243, 243, 243, 179, 243, 124, 179, 142, 144, 240, 242, 144, 144, 249, 249, 249, 249, 70, 144, 69, 144, 64, 124, 243, 124, 130, 144, 144, 144, 144, 144, 249, 249, 243, 142, 243, 144, 240, 144, 144
147 void exit(int status);
149 void * calloc(size_t nmemb, size_t size);
151 void free(void * ptr);
153 void * malloc(size_t size);
155 void * realloc(void * ptr, size_t size);
157 long int strtol(const char * nptr, char ** endptr, int base);
159 long long int strtoll(const char * nptr, char ** endptr, int base);
161 unsigned long long int strtoull(const char * nptr, char ** endptr, int base);
163 typedef __builtin_va_list va_list;
167 FILE * bsl_stdin(void);
169 FILE * bsl_stdout(void);
171 FILE * bsl_stderr(void);
173 char * fgets(char * s, int size, FILE * stream);
175 FILE * fopen(const char * path, const char * mode);
177 int fclose(FILE * fp);
179 int fflush(FILE * stream);
181 int fgetc(FILE * stream);
183 int fprintf(FILE * stream, const char * format, ...);
185 int fputc(int c, FILE * stream);
187 size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
189 size_t fwrite(const void * ptr, size_t size, size_t nmemb, FILE * stream);
191 int vsnprintf(char *, size_t, const char *, va_list args);
193 int snprintf(char * str, size_t, const char * format, ...);
195 int fseek(FILE * stream, long offset, int whence);
197 long ftell(FILE * stream);
199 int feof(FILE * stream);
201 int ferror(FILE * stream);
203 int fileno(FILE * stream);
207 int type_yyparse(void);
213 extern unsigned int skipErrors;
217 struct __ecereNameSpace__ecere__sys__OldList
226 struct __ecereNameSpace__ecere__sys__BTNode;
230 struct __ecereNameSpace__ecere__com__DataValue
245 } ecere_gcc_struct __anon1;
248 struct __ecereNameSpace__ecere__com__SerialBuffer
250 unsigned char * _buffer;
256 extern void * __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
258 extern void * __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
260 extern void * __ecereNameSpace__ecere__com__eSystem_Renew(void * memory, unsigned int size);
262 extern void * __ecereNameSpace__ecere__com__eSystem_Renew0(void * memory, unsigned int size);
264 extern void __ecereNameSpace__ecere__com__eSystem_Delete(void * memory);
270 struct FunctionDefinition;
280 struct ClassDefinition;
284 struct PropertyWatch;
286 struct TemplateParameter;
302 extern size_t strlen(const char * );
304 extern char * __ecereNameSpace__ecere__sys__CopyString(const char * string);
306 static void yy_stack_print(yytype_int16 * yybottom, yytype_int16 * yytop)
308 fprintf((bsl_stderr()), "Stack now");
309 for(; yybottom <= yytop; yybottom++)
311 int yybot = *yybottom;
313 fprintf((bsl_stderr()), " %d", yybot);
315 fprintf((bsl_stderr()), "\n");
318 extern void FreeList(struct __ecereNameSpace__ecere__sys__OldList * list, void (* FreeFunction)(void * ));
320 extern struct __ecereNameSpace__ecere__sys__OldList * MkListOne(void * item);
322 extern struct __ecereNameSpace__ecere__sys__OldList * MkList(void);
324 extern void ListAdd(struct __ecereNameSpace__ecere__sys__OldList * list, void * item);
326 extern void FreeEnumerator(struct Enumerator * enumerator);
328 extern void FreePointer(struct Pointer * pointer);
330 extern struct Pointer * MkPointer(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Pointer * pointer);
332 extern void PopContext(struct Context * ctx);
334 extern void FreeContext(struct Context * context);
336 extern struct Context * PushContext(void);
338 extern void FreeExtDecl(struct ExtDecl * extDecl);
340 extern struct ExtDecl * MkExtDeclString(char * s);
344 struct CodePosition start;
345 struct CodePosition end;
348 extern void resetScannerPos(struct CodePosition * pos);
350 extern struct Location yylloc;
352 struct Location type_yylloc;
358 struct __ecereNameSpace__ecere__sys__OldList * attribs;
361 extern void FreeAttrib(struct Attrib * attr);
363 extern struct ExtDecl * MkExtDeclAttrib(struct Attrib * attr);
365 extern struct Attrib * MkAttrib(int type, struct __ecereNameSpace__ecere__sys__OldList * attribs);
369 struct TypeName * parsedType;
371 extern void FreeTypeName(struct TypeName * typeName);
373 struct __ecereNameSpace__ecere__com__Class;
375 struct __ecereNameSpace__ecere__com__Instance
378 struct __ecereNameSpace__ecere__com__Class * _class;
382 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name);
384 extern void __ecereNameSpace__ecere__com__eClass_SetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, long long value);
386 extern void __ecereNameSpace__ecere__com__eInstance_SetMethod(struct __ecereNameSpace__ecere__com__Instance * instance, const char * name, void * function);
388 extern void __ecereNameSpace__ecere__com__eInstance_IncRef(struct __ecereNameSpace__ecere__com__Instance * instance);
390 extern struct __ecereNameSpace__ecere__com__Instance * fileInput;
392 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
394 struct __ecereNameSpace__ecere__com__Property;
396 struct __ecereNameSpace__ecere__com__Property
398 struct __ecereNameSpace__ecere__com__Property * prev;
399 struct __ecereNameSpace__ecere__com__Property * next;
401 unsigned int isProperty;
404 struct __ecereNameSpace__ecere__com__Class * _class;
405 const char * dataTypeString;
406 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
407 struct Type * dataType;
408 void (* Set)(void * , int);
409 int (* Get)(void * );
410 unsigned int (* IsSet)(void * );
414 unsigned int conversion;
415 unsigned int watcherOffset;
416 const char * category;
417 unsigned int compiled;
418 unsigned int selfWatchable;
419 unsigned int isWatchable;
422 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
424 extern void __ecereNameSpace__ecere__com__eInstance_StopWatching(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property, struct __ecereNameSpace__ecere__com__Instance * object);
426 extern void __ecereNameSpace__ecere__com__eInstance_Watch(void * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * ));
428 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
432 extern void FreeSpecifier(struct Specifier * spec);
434 extern struct Symbol * DeclClass(struct Specifier * _class, const char * name);
436 extern struct Symbol * _DeclClass(struct Specifier * _class, const char * name);
438 extern struct Specifier * MkSpecifierName(const char * name);
440 extern void SetClassTemplateArgs(struct Specifier * spec, struct __ecereNameSpace__ecere__sys__OldList * templateArgs);
442 extern struct Specifier * MkSpecifierNameArgs(const char * name, struct __ecereNameSpace__ecere__sys__OldList * templateArgs);
444 extern struct Specifier * MkSpecifier(int specifier);
446 extern struct Specifier * MkSpecifierExtended(struct ExtDecl * extDecl);
448 extern struct Specifier * MkSpecifierSubClass(struct Specifier * _class);
450 struct ClassFunction;
452 extern void FreeClassFunction(struct ClassFunction * func);
456 extern void FreeIdentifier(struct Identifier * id);
460 struct Identifier * prev;
461 struct Identifier * next;
463 struct Symbol * classSym;
464 struct Specifier * _class;
466 struct Identifier * badID;
469 extern struct Identifier * MkIdentifier(const char * string);
471 extern struct Specifier * MkStructOrUnion(int type, struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * definitions);
473 extern struct Specifier * MkEnum(struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * list);
477 extern void FreeExpression(struct Expression * exp);
481 struct Specifier * prev;
482 struct Specifier * next;
490 struct ExtDecl * extDecl;
492 struct Symbol * symbol;
493 struct __ecereNameSpace__ecere__sys__OldList * templateArgs;
494 struct Specifier * nsSpec;
495 } ecere_gcc_struct __anon1;
498 struct Identifier * id;
499 struct __ecereNameSpace__ecere__sys__OldList * list;
500 struct __ecereNameSpace__ecere__sys__OldList * baseSpecs;
501 struct __ecereNameSpace__ecere__sys__OldList * definitions;
502 unsigned int addNameSpace;
503 struct Context * ctx;
504 struct ExtDecl * extDeclStruct;
505 } ecere_gcc_struct __anon2;
506 struct Expression * expression;
507 struct Specifier * _class;
508 struct TemplateParameter * templateParameter;
509 } ecere_gcc_struct __anon1;
512 extern struct Expression * MkExpBrackets(struct __ecereNameSpace__ecere__sys__OldList * expressions);
514 extern struct Expression * MkExpIdentifier(struct Identifier * id);
516 extern struct Expression * MkExpConstant(const char * string);
518 extern struct Expression * MkExpWideString(const char * string);
520 extern struct Expression * MkExpString(const char * string);
522 extern struct Expression * MkExpIntlString(const char * string, const char * context);
524 extern struct Expression * MkExpDummy(void);
526 extern struct Expression * MkExpNew(struct TypeName * type, struct Expression * size);
528 extern struct Expression * MkExpNew0(struct TypeName * type, struct Expression * size);
530 extern struct Expression * MkExpRenew(struct Expression * memExp, struct TypeName * type, struct Expression * size);
532 extern struct Expression * MkExpRenew0(struct Expression * memExp, struct TypeName * type, struct Expression * size);
534 extern struct Expression * MkExpIndex(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * index);
536 extern struct Expression * MkExpCall(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * arguments);
538 extern struct Expression * MkExpMember(struct Expression * expression, struct Identifier * member);
540 extern struct Expression * MkExpPointer(struct Expression * expression, struct Identifier * member);
542 extern struct Expression * MkExpOp(struct Expression * exp1, int op, struct Expression * exp2);
544 extern struct Expression * MkExpTypeSize(struct TypeName * typeName);
546 extern struct Expression * MkExpTypeAlign(struct TypeName * typeName);
548 extern struct Expression * MkExpCast(struct TypeName * typeName, struct Expression * expression);
550 extern struct Expression * MkExpCondition(struct Expression * cond, struct __ecereNameSpace__ecere__sys__OldList * expressions, struct Expression * elseExp);
552 extern struct Specifier * MkSpecifierTypeOf(struct Expression * expression);
554 extern struct Enumerator * MkEnumerator(struct Identifier * id, struct Expression * exp);
558 extern void FreeDeclaration(struct Declaration * decl);
560 extern struct Declaration * MkDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * initDeclarators);
562 extern struct Declaration * MkDeclarationDefine(struct Identifier * id, struct Expression * exp);
564 extern struct Declaration * MkStructDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * declarators, struct Specifier * extStorage);
566 struct InitDeclarator;
568 extern void FreeInitDeclarator(struct InitDeclarator * decl);
572 extern void FreeAttribute(struct Attribute * attr);
574 extern struct Attribute * MkAttribute(char * attr, struct Expression * exp);
578 struct Attribute * prev;
579 struct Attribute * next;
582 struct Expression * exp;
585 struct TemplateDatatype;
587 extern void FreeTemplateDataType(struct TemplateDatatype * type);
589 struct TemplateArgument;
591 extern void FreeTemplateArgument(struct TemplateArgument * arg);
593 extern struct TemplateArgument * MkTemplateTypeArgument(struct TemplateDatatype * tplDatatype);
595 extern struct TemplateArgument * MkTemplateExpressionArgument(struct Expression * expr);
597 struct TemplateArgument
599 struct TemplateArgument * prev;
600 struct TemplateArgument * next;
602 struct Identifier * name;
606 struct Expression * expression;
607 struct Identifier * identifier;
608 struct TemplateDatatype * templateDatatype;
609 } ecere_gcc_struct __anon1;
614 extern void FreeClassDef(struct ClassDef * def);
616 extern struct ClassDef * MkClassDefDeclaration(struct Declaration * decl);
618 extern struct ClassDef * MkClassDefFunction(struct ClassFunction * function);
620 extern struct ClassDef * MkClassDefDefaultProperty(struct __ecereNameSpace__ecere__sys__OldList * defProperties);
624 extern void FreeMemberInit(struct MemberInit * init);
628 extern void FreeProperty(struct PropertyDef * def);
630 extern struct ClassDef * MkClassDefProperty(struct PropertyDef * propertyDef);
634 extern void FreeDeclarator(struct Declarator * decl);
636 extern struct ClassFunction * MkClassFunction(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct Specifier * _class, struct Declarator * decl, struct __ecereNameSpace__ecere__sys__OldList * declList);
638 extern struct TypeName * MkTypeName(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Declarator * declarator);
640 extern struct TemplateDatatype * MkTemplateDatatype(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct Declarator * decl);
642 struct TemplateDatatype
644 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
645 struct Declarator * decl;
648 extern struct Declarator * MkStructDeclarator(struct Declarator * declarator, struct Expression * exp);
652 struct Declarator * prev;
653 struct Declarator * next;
656 struct Symbol * symbol;
657 struct Declarator * declarator;
660 struct Identifier * identifier;
663 struct Expression * exp;
664 struct Expression * posExp;
665 struct Attrib * attrib;
666 } ecere_gcc_struct structDecl;
669 struct Expression * exp;
670 struct Specifier * enumClass;
671 } ecere_gcc_struct array;
674 struct __ecereNameSpace__ecere__sys__OldList * parameters;
675 } ecere_gcc_struct function;
678 struct Pointer * pointer;
679 } ecere_gcc_struct pointer;
682 struct ExtDecl * extended;
683 } ecere_gcc_struct extended;
684 } ecere_gcc_struct __anon1;
687 extern struct Declarator * MkDeclaratorBrackets(struct Declarator * declarator);
689 extern struct Declarator * MkDeclaratorArray(struct Declarator * declarator, struct Expression * exp);
691 extern struct Declarator * MkDeclaratorEnumArray(struct Declarator * declarator, struct Specifier * _class);
693 extern struct Declarator * MkDeclaratorFunction(struct Declarator * declarator, struct __ecereNameSpace__ecere__sys__OldList * parameters);
695 extern struct Declarator * MkDeclaratorPointer(struct Pointer * pointer, struct Declarator * declarator);
697 extern struct Declarator * MkDeclaratorExtended(struct ExtDecl * extended, struct Declarator * declarator);
699 extern struct Declarator * MkDeclaratorExtendedEnd(struct ExtDecl * extended, struct Declarator * declarator);
701 extern struct Declarator * MkDeclaratorIdentifier(struct Identifier * id);
705 struct TypeName * prev;
706 struct TypeName * next;
708 struct __ecereNameSpace__ecere__sys__OldList * qualifiers;
709 struct Declarator * declarator;
711 struct Expression * bitCount;
716 extern void FreeInitializer(struct Initializer * initializer);
718 extern struct InitDeclarator * MkInitDeclarator(struct Declarator * declarator, struct Initializer * initializer);
720 struct InitDeclarator
722 struct InitDeclarator * prev;
723 struct InitDeclarator * next;
725 struct Declarator * declarator;
726 struct Initializer * initializer;
731 struct Initializer * prev;
732 struct Initializer * next;
737 struct Expression * exp;
738 struct __ecereNameSpace__ecere__sys__OldList * list;
739 } ecere_gcc_struct __anon1;
740 unsigned int isConstant;
741 struct Identifier * id;
744 extern struct MemberInit * MkMemberInitExp(struct Expression * idExp, struct Initializer * initializer);
748 struct MemberInit * prev;
749 struct MemberInit * next;
751 struct Location realLoc;
752 struct __ecereNameSpace__ecere__sys__OldList * identifiers;
753 struct Initializer * initializer;
755 unsigned int variable;
756 unsigned int takeOutExp;
761 struct ClassDef * prev;
762 struct ClassDef * next;
767 struct Declaration * decl;
768 struct ClassFunction * function;
769 struct __ecereNameSpace__ecere__sys__OldList * defProperties;
770 struct PropertyDef * propertyDef;
771 struct PropertyWatch * propertyWatch;
773 struct Identifier * defaultProperty;
776 struct Identifier * id;
777 struct Initializer * initializer;
778 } ecere_gcc_struct __anon1;
779 } ecere_gcc_struct __anon1;
784 extern struct Initializer * MkInitializerAssignment(struct Expression * exp);
786 extern struct Initializer * MkInitializerList(struct __ecereNameSpace__ecere__sys__OldList * list);
788 extern struct MemberInit * MkMemberInit(struct __ecereNameSpace__ecere__sys__OldList * ids, struct Initializer * initializer);
792 extern void FreeStatement(struct Statement * stmt);
796 struct ClassFunction * prev;
797 struct ClassFunction * next;
799 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
800 struct Declarator * declarator;
801 struct __ecereNameSpace__ecere__sys__OldList * declarations;
802 struct Statement * body;
803 struct __ecereNameSpace__ecere__com__Class * _class;
804 struct __ecereNameSpace__ecere__sys__OldList attached;
807 struct Symbol * propSet;
808 unsigned int isVirtual;
809 unsigned int isConstructor;
810 unsigned int isDestructor;
811 unsigned int dontMangle;
816 extern struct PropertyDef * MkProperty(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * decl, struct Identifier * id, struct Statement * setStmt, struct Statement * getStmt);
820 struct PropertyDef * prev;
821 struct PropertyDef * next;
823 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
824 struct Declarator * declarator;
825 struct Identifier * id;
826 struct Statement * getStmt;
827 struct Statement * setStmt;
828 struct Statement * issetStmt;
829 struct Symbol * symbol;
830 struct Expression * category;
833 unsigned int conversion : 1;
834 unsigned int isWatchable : 1;
835 unsigned int isDBProp : 1;
836 } ecere_gcc_struct __anon1;
839 extern struct Statement * MkLabeledStmt(struct Identifier * id, struct Statement * statement);
843 struct Statement * prev;
844 struct Statement * next;
849 struct __ecereNameSpace__ecere__sys__OldList * expressions;
852 struct Identifier * id;
853 struct Statement * stmt;
854 } ecere_gcc_struct labeled;
857 struct Expression * exp;
858 struct Statement * stmt;
859 } ecere_gcc_struct caseStmt;
862 struct __ecereNameSpace__ecere__sys__OldList * declarations;
863 struct __ecereNameSpace__ecere__sys__OldList * statements;
864 struct Context * context;
865 unsigned int isSwitch;
866 } ecere_gcc_struct compound;
869 struct __ecereNameSpace__ecere__sys__OldList * exp;
870 struct Statement * stmt;
871 struct Statement * elseStmt;
872 } ecere_gcc_struct ifStmt;
875 struct __ecereNameSpace__ecere__sys__OldList * exp;
876 struct Statement * stmt;
877 } ecere_gcc_struct switchStmt;
880 struct __ecereNameSpace__ecere__sys__OldList * exp;
881 struct Statement * stmt;
882 } ecere_gcc_struct whileStmt;
885 struct __ecereNameSpace__ecere__sys__OldList * exp;
886 struct Statement * stmt;
887 } ecere_gcc_struct doWhile;
890 struct Statement * init;
891 struct Statement * check;
892 struct __ecereNameSpace__ecere__sys__OldList * increment;
893 struct Statement * stmt;
894 } ecere_gcc_struct forStmt;
897 struct Identifier * id;
898 } ecere_gcc_struct gotoStmt;
901 struct Specifier * spec;
903 struct __ecereNameSpace__ecere__sys__OldList * inputFields;
904 struct __ecereNameSpace__ecere__sys__OldList * outputFields;
905 struct __ecereNameSpace__ecere__sys__OldList * clobberedFields;
906 } ecere_gcc_struct asmStmt;
909 struct Expression * watcher;
910 struct Expression * object;
911 struct __ecereNameSpace__ecere__sys__OldList * watches;
912 } ecere_gcc_struct _watch;
915 struct Identifier * id;
916 struct __ecereNameSpace__ecere__sys__OldList * exp;
917 struct __ecereNameSpace__ecere__sys__OldList * filter;
918 struct Statement * stmt;
919 } ecere_gcc_struct forEachStmt;
920 struct Declaration * decl;
921 } ecere_gcc_struct __anon1;
924 extern struct Statement * MkCaseStmt(struct Expression * exp, struct Statement * statement);
926 extern struct Statement * MkBadDeclStmt(struct Declaration * decl);
928 extern struct Statement * MkCompoundStmt(struct __ecereNameSpace__ecere__sys__OldList * declarations, struct __ecereNameSpace__ecere__sys__OldList * statements);
930 extern struct Statement * MkExpressionStmt(struct __ecereNameSpace__ecere__sys__OldList * expressions);
932 extern struct Statement * MkIfStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement, struct Statement * elseStmt);
934 extern struct Statement * MkSwitchStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
936 extern struct Statement * MkWhileStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
938 extern struct Statement * MkDoWhileStmt(struct Statement * statement, struct __ecereNameSpace__ecere__sys__OldList * exp);
940 extern struct Statement * MkForStmt(struct Statement * init, struct Statement * check, struct __ecereNameSpace__ecere__sys__OldList * inc, struct Statement * statement);
942 extern struct Statement * MkGotoStmt(struct Identifier * id);
944 extern struct Statement * MkContinueStmt(void);
946 extern struct Statement * MkBreakStmt(void);
948 extern struct Statement * MkReturnStmt(struct __ecereNameSpace__ecere__sys__OldList * exp);
950 extern void ProcessClassFunctionBody(struct ClassFunction * func, struct Statement * body);
952 struct Instantiation;
954 extern void FreeInstance(struct Instantiation * inst);
958 struct Expression * prev;
959 struct Expression * next;
967 struct Identifier * identifier;
968 } ecere_gcc_struct __anon1;
969 struct Statement * compound;
970 struct Instantiation * instance;
974 unsigned int intlString;
975 unsigned int wideString;
976 } ecere_gcc_struct __anon2;
977 struct __ecereNameSpace__ecere__sys__OldList * list;
980 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
981 struct Declarator * decl;
982 } ecere_gcc_struct _classExp;
985 struct Identifier * id;
986 } ecere_gcc_struct classData;
989 struct Expression * exp;
990 struct __ecereNameSpace__ecere__sys__OldList * arguments;
991 struct Location argLoc;
992 } ecere_gcc_struct call;
995 struct Expression * exp;
996 struct __ecereNameSpace__ecere__sys__OldList * index;
997 } ecere_gcc_struct index;
1000 struct Expression * exp;
1001 struct Identifier * member;
1003 unsigned int thisPtr;
1004 } ecere_gcc_struct member;
1008 struct Expression * exp1;
1009 struct Expression * exp2;
1010 } ecere_gcc_struct op;
1011 struct TypeName * typeName;
1012 struct Specifier * _class;
1015 struct TypeName * typeName;
1016 struct Expression * exp;
1017 } ecere_gcc_struct cast;
1020 struct Expression * cond;
1021 struct __ecereNameSpace__ecere__sys__OldList * exp;
1022 struct Expression * elseExp;
1023 } ecere_gcc_struct cond;
1026 struct TypeName * typeName;
1027 struct Expression * size;
1028 } ecere_gcc_struct _new;
1031 struct TypeName * typeName;
1032 struct Expression * size;
1033 struct Expression * exp;
1034 } ecere_gcc_struct _renew;
1038 struct Identifier * id;
1039 } ecere_gcc_struct db;
1042 struct Expression * ds;
1043 struct Expression * name;
1044 } ecere_gcc_struct dbopen;
1047 struct TypeName * typeName;
1048 struct Initializer * initializer;
1049 } ecere_gcc_struct initializer;
1052 struct Expression * exp;
1053 struct TypeName * typeName;
1054 } ecere_gcc_struct vaArg;
1057 struct TypeName * typeName;
1058 struct Identifier * id;
1059 } ecere_gcc_struct offset;
1060 } ecere_gcc_struct __anon1;
1061 unsigned int debugValue;
1062 struct __ecereNameSpace__ecere__com__DataValue val;
1064 unsigned int hasAddress;
1065 struct Type * expType;
1066 struct Type * destType;
1069 unsigned int byReference;
1070 unsigned int isConstant;
1071 unsigned int addedThis;
1072 unsigned int needCast;
1073 unsigned int thisPtr;
1074 unsigned int opDestType;
1075 unsigned int needTemplateCast;
1078 extern struct Expression * MkExpInstance(struct Instantiation * inst);
1082 struct Declaration * prev;
1083 struct Declaration * next;
1084 struct Location loc;
1090 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
1091 struct __ecereNameSpace__ecere__sys__OldList * declarators;
1092 } ecere_gcc_struct __anon1;
1093 struct Instantiation * inst;
1096 struct Identifier * id;
1097 struct Expression * exp;
1098 } ecere_gcc_struct __anon2;
1099 } ecere_gcc_struct __anon1;
1100 struct Specifier * extStorage;
1101 struct Symbol * symbol;
1105 extern struct Declaration * MkDeclarationInst(struct Instantiation * inst);
1107 extern struct Declaration * MkDeclarationClassInst(struct Instantiation * inst);
1109 extern struct Instantiation * MkInstantiationNamed(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
1111 struct Instantiation
1113 struct Instantiation * prev;
1114 struct Instantiation * next;
1115 struct Location loc;
1116 struct Specifier * _class;
1117 struct Expression * exp;
1118 struct __ecereNameSpace__ecere__sys__OldList * members;
1119 struct Symbol * symbol;
1120 unsigned int fullSet;
1121 unsigned int isConstant;
1122 unsigned char * data;
1123 struct Location nameLoc;
1124 struct Location insideLoc;
1128 extern struct Instantiation * MkInstantiation(struct Specifier * _class, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
1132 typedef union YYSTYPE
1137 struct Identifier * id;
1138 struct Expression * exp;
1139 struct Specifier * specifier;
1140 struct __ecereNameSpace__ecere__sys__OldList * list;
1141 struct Enumerator * enumerator;
1142 struct Declarator * declarator;
1143 struct Pointer * pointer;
1144 struct Initializer * initializer;
1145 struct InitDeclarator * initDeclarator;
1146 struct TypeName * typeName;
1147 struct Declaration * declaration;
1148 struct Statement * stmt;
1149 struct FunctionDefinition * function;
1150 struct External * external;
1151 struct Context * context;
1152 struct AsmField * asmField;
1153 struct Attrib * attrib;
1154 struct ExtDecl * extDecl;
1155 struct Attribute * attribute;
1156 struct Instantiation * instance;
1157 struct MembersInit * membersInit;
1158 struct MemberInit * memberInit;
1159 struct ClassFunction * classFunction;
1160 struct ClassDefinition * _class;
1161 struct ClassDef * classDef;
1162 struct PropertyDef * prop;
1164 struct Symbol * symbol;
1165 struct PropertyWatch * propertyWatch;
1166 struct TemplateParameter * templateParameter;
1167 struct TemplateArgument * templateArgument;
1168 struct TemplateDatatype * templateDatatype;
1169 struct DBTableEntry * dbtableEntry;
1170 struct DBIndexItem * dbindexItem;
1171 struct DBTableDef * dbtableDef;
1172 } ecere_gcc_struct YYSTYPE;
1174 extern YYSTYPE yylval;
1178 yytype_int16 yyss_alloc;
1180 struct Location yyls_alloc;
1183 static void yy_symbol_value_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1187 ((void)(yylocationp));
1196 extern void FreeMembersInit(struct MembersInit * init);
1198 YYSTYPE type_yylval;
1200 extern struct MembersInit * MkMembersInitList(struct __ecereNameSpace__ecere__sys__OldList * dataMembers);
1204 struct MembersInit * prev;
1205 struct MembersInit * next;
1206 struct Location loc;
1210 struct __ecereNameSpace__ecere__sys__OldList * dataMembers;
1211 struct ClassFunction * function;
1212 } ecere_gcc_struct __anon1;
1215 extern struct MembersInit * MkMembersInitMethod(struct ClassFunction * function);
1217 static void yy_symbol_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1220 fprintf(yyoutput, "token %s (", yytname[yytype]);
1222 fprintf(yyoutput, "nterm %s (", yytname[yytype]);
1224 fprintf(yyoutput, ": ");
1225 yy_symbol_value_print(yyoutput, yytype, yyvaluep, yylocationp);
1226 fprintf(yyoutput, ")");
1229 static void yy_reduce_print(YYSTYPE * yyvsp, struct Location * yylsp, int yyrule)
1231 int yynrhs = yyr2[yyrule];
1233 unsigned long int yylno = yyrline[yyrule];
1235 fprintf((bsl_stderr()), "Reducing stack by rule %d (line %lu):\n", yyrule - 1, yylno);
1236 for(yyi = 0; yyi < yynrhs; yyi++)
1238 fprintf((bsl_stderr()), " $%d = ", yyi + 1);
1239 yy_symbol_print((bsl_stderr()), yyrhs[yyprhs[yyrule] + yyi], &(yyvsp[(yyi + 1) - (yynrhs)]), &(yylsp[(yyi + 1) - (yynrhs)]));
1240 fprintf((bsl_stderr()), "\n");
1244 struct __ecereNameSpace__ecere__sys__BinaryTree;
1246 struct __ecereNameSpace__ecere__sys__BinaryTree
1248 struct __ecereNameSpace__ecere__sys__BTNode * root;
1250 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
1251 void (* FreeKey)(void * key);
1254 struct __ecereNameSpace__ecere__com__Method;
1256 struct __ecereNameSpace__ecere__com__Method
1259 struct __ecereNameSpace__ecere__com__Method * parent;
1260 struct __ecereNameSpace__ecere__com__Method * left;
1261 struct __ecereNameSpace__ecere__com__Method * right;
1266 struct __ecereNameSpace__ecere__com__Class * _class;
1268 const char * dataTypeString;
1269 struct Type * dataType;
1273 struct __ecereNameSpace__ecere__com__NameSpace;
1275 struct __ecereNameSpace__ecere__com__NameSpace
1278 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
1279 struct __ecereNameSpace__ecere__com__NameSpace * left;
1280 struct __ecereNameSpace__ecere__com__NameSpace * right;
1282 struct __ecereNameSpace__ecere__com__NameSpace * parent;
1283 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
1284 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
1285 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
1286 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
1289 struct __ecereNameSpace__ecere__com__Application
1292 const char * * argv;
1294 unsigned int isGUIApp;
1295 struct __ecereNameSpace__ecere__sys__OldList allModules;
1296 char * parsedCommand;
1297 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
1300 struct __ecereNameSpace__ecere__com__DataMember;
1302 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
1308 const char * dataTypeString;
1309 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
1310 } ecere_gcc_struct __anon1;
1311 struct __ecereNameSpace__ecere__com__DataValue expression;
1314 const char * memberString;
1317 struct __ecereNameSpace__ecere__com__DataMember * member;
1318 struct __ecereNameSpace__ecere__com__Property * prop;
1319 struct __ecereNameSpace__ecere__com__Method * method;
1320 } ecere_gcc_struct __anon1;
1321 } ecere_gcc_struct __anon2;
1322 } ecere_gcc_struct __anon1;
1325 struct __ecereNameSpace__ecere__com__DataMember
1327 struct __ecereNameSpace__ecere__com__DataMember * prev;
1328 struct __ecereNameSpace__ecere__com__DataMember * next;
1330 unsigned int isProperty;
1333 struct __ecereNameSpace__ecere__com__Class * _class;
1334 const char * dataTypeString;
1335 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
1336 struct Type * dataType;
1340 struct __ecereNameSpace__ecere__sys__OldList members;
1341 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
1343 short structAlignment;
1344 short pointerAlignment;
1347 struct __ecereNameSpace__ecere__com__Module;
1349 struct __ecereNameSpace__ecere__com__Module
1351 struct __ecereNameSpace__ecere__com__Instance * application;
1352 struct __ecereNameSpace__ecere__sys__OldList classes;
1353 struct __ecereNameSpace__ecere__sys__OldList defines;
1354 struct __ecereNameSpace__ecere__sys__OldList functions;
1355 struct __ecereNameSpace__ecere__sys__OldList modules;
1356 struct __ecereNameSpace__ecere__com__Instance * prev;
1357 struct __ecereNameSpace__ecere__com__Instance * next;
1363 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
1364 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
1367 struct __ecereNameSpace__ecere__com__Class
1369 struct __ecereNameSpace__ecere__com__Class * prev;
1370 struct __ecereNameSpace__ecere__com__Class * next;
1376 unsigned int (* Constructor)(void * );
1377 void (* Destructor)(void * );
1380 struct __ecereNameSpace__ecere__com__Class * base;
1381 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
1382 struct __ecereNameSpace__ecere__sys__BinaryTree members;
1383 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
1384 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
1385 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
1386 struct __ecereNameSpace__ecere__sys__OldList derivatives;
1390 struct __ecereNameSpace__ecere__com__Instance * module;
1391 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
1392 const char * dataTypeString;
1393 struct Type * dataType;
1395 int defaultAlignment;
1396 void (* Initialize)();
1398 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
1399 const char * designerClass;
1400 unsigned int noExpansion;
1401 const char * defaultProperty;
1402 unsigned int comRedefinition;
1405 unsigned int internalDecl;
1407 unsigned int computeSize;
1408 short structAlignment;
1409 short pointerAlignment;
1410 int destructionWatchOffset;
1412 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
1413 int inheritanceAccess;
1414 const char * fullName;
1416 struct __ecereNameSpace__ecere__sys__OldList conversions;
1417 struct __ecereNameSpace__ecere__sys__OldList templateParams;
1418 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
1419 struct __ecereNameSpace__ecere__com__Class * templateClass;
1420 struct __ecereNameSpace__ecere__sys__OldList templatized;
1422 unsigned int isInstanceClass;
1423 unsigned int byValueSystemClass;
1426 void __ecereRegisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
1428 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
1432 void __ecereUnregisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
1437 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
1439 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__File;
1441 static void yydestruct(const char * yymsg, int yytype, YYSTYPE * yyvaluep, struct Location * yylocationp)
1444 ((void)(yylocationp));
1451 fprintf((bsl_stderr()), "%s ", yymsg);
1452 yy_symbol_print((bsl_stderr()), yytype, yyvaluep, yylocationp);
1453 fprintf((bsl_stderr()), "\n");
1460 FreeSpecifier((*yyvaluep).specifier);
1466 FreeSpecifier((*yyvaluep).specifier);
1472 FreeSpecifier((*yyvaluep).specifier);
1478 FreeSpecifier((*yyvaluep).specifier);
1484 FreeClassFunction((*yyvaluep).classFunction);
1490 FreeClassFunction((*yyvaluep).classFunction);
1496 FreeClassFunction((*yyvaluep).classFunction);
1502 FreeClassFunction((*yyvaluep).classFunction);
1508 FreeIdentifier((*yyvaluep).id);
1514 FreeExpression((*yyvaluep).exp);
1520 FreeExpression((*yyvaluep).exp);
1526 FreeList((*yyvaluep).list, (void *)(FreeExpression));
1532 FreeExpression((*yyvaluep).exp);
1538 FreeExpression((*yyvaluep).exp);
1544 FreeExpression((*yyvaluep).exp);
1550 FreeExpression((*yyvaluep).exp);
1556 FreeExpression((*yyvaluep).exp);
1562 FreeExpression((*yyvaluep).exp);
1568 FreeExpression((*yyvaluep).exp);
1574 FreeExpression((*yyvaluep).exp);
1580 FreeExpression((*yyvaluep).exp);
1586 FreeExpression((*yyvaluep).exp);
1592 FreeExpression((*yyvaluep).exp);
1598 FreeExpression((*yyvaluep).exp);
1604 FreeExpression((*yyvaluep).exp);
1610 FreeExpression((*yyvaluep).exp);
1616 FreeList((*yyvaluep).list, (void *)(FreeExpression));
1622 FreeExpression((*yyvaluep).exp);
1628 FreeDeclaration((*yyvaluep).declaration);
1634 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1640 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1646 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1652 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1658 FreeList((*yyvaluep).list, (void *)(FreeInitDeclarator));
1664 FreeInitDeclarator((*yyvaluep).initDeclarator);
1670 FreeSpecifier((*yyvaluep).specifier);
1676 FreeExtDecl((*yyvaluep).extDecl);
1682 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
1688 FreeAttribute((*yyvaluep).attribute);
1694 FreeList((*yyvaluep).list, (void *)(FreeAttribute));
1700 FreeAttrib((*yyvaluep).attrib);
1706 FreeSpecifier((*yyvaluep).specifier);
1712 FreeSpecifier((*yyvaluep).specifier);
1718 FreeSpecifier((*yyvaluep).specifier);
1724 FreeSpecifier((*yyvaluep).specifier);
1730 FreeSpecifier((*yyvaluep).specifier);
1736 FreeSpecifier((*yyvaluep).specifier);
1742 FreeTemplateDataType((*yyvaluep).templateDatatype);
1748 FreeTemplateArgument((*yyvaluep).templateArgument);
1754 FreeTemplateArgument((*yyvaluep).templateArgument);
1760 FreeTemplateArgument((*yyvaluep).templateArgument);
1766 FreeList((*yyvaluep).list, (void *)(FreeClassDef));
1772 FreeMemberInit((*yyvaluep).memberInit);
1778 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
1784 FreeProperty((*yyvaluep).prop);
1790 FreeClassDef((*yyvaluep).classDef);
1796 FreeList((*yyvaluep).list, (void *)(FreeDeclarator));
1802 FreeDeclarator((*yyvaluep).declarator);
1808 FreeSpecifier((*yyvaluep).specifier);
1814 FreeSpecifier((*yyvaluep).specifier);
1820 FreeList((*yyvaluep).list, (void *)(FreeEnumerator));
1826 FreeEnumerator((*yyvaluep).enumerator);
1832 FreeDeclarator((*yyvaluep).declarator);
1838 FreeDeclarator((*yyvaluep).declarator);
1844 FreeDeclarator((*yyvaluep).declarator);
1850 FreeDeclarator((*yyvaluep).declarator);
1856 FreeDeclarator((*yyvaluep).declarator);
1862 FreeDeclarator((*yyvaluep).declarator);
1868 FreeDeclarator((*yyvaluep).declarator);
1874 FreeDeclarator((*yyvaluep).declarator);
1880 FreeDeclarator((*yyvaluep).declarator);
1886 FreeDeclarator((*yyvaluep).declarator);
1892 FreeDeclarator((*yyvaluep).declarator);
1898 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
1904 FreePointer((*yyvaluep).pointer);
1910 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1916 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1922 FreeTypeName((*yyvaluep).typeName);
1928 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
1934 FreeTypeName((*yyvaluep).typeName);
1940 FreeTypeName((*yyvaluep).typeName);
1946 FreeInitializer((*yyvaluep).initializer);
1952 FreeInitializer((*yyvaluep).initializer);
1958 FreeList((*yyvaluep).list, (void *)(FreeInitializer));
1964 FreeStatement((*yyvaluep).stmt);
1970 FreeStatement((*yyvaluep).stmt);
1976 FreeList((*yyvaluep).list, (void *)(FreeDeclaration));
1982 FreeList((*yyvaluep).list, (void *)(FreeStatement));
1988 FreeStatement((*yyvaluep).stmt);
1994 PopContext((*yyvaluep).context);
1995 FreeContext((*yyvaluep).context);
1996 (((*yyvaluep).context ? __extension__ ({
1997 void * __ecerePtrToDelete = ((*yyvaluep).context);
1999 __ecereClass_Context->Destructor ? __ecereClass_Context->Destructor((void *)__ecerePtrToDelete) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(__ecerePtrToDelete);
2000 }) : 0), (*yyvaluep).context = 0);
2006 FreeStatement((*yyvaluep).stmt);
2012 FreeStatement((*yyvaluep).stmt);
2018 FreeStatement((*yyvaluep).stmt);
2024 FreeStatement((*yyvaluep).stmt);
2030 FreeStatement((*yyvaluep).stmt);
2036 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
2042 FreeInstance((*yyvaluep).instance);
2048 FreeInstance((*yyvaluep).instance);
2054 FreeClassFunction((*yyvaluep).classFunction);
2060 FreeClassFunction((*yyvaluep).classFunction);
2066 FreeClassFunction((*yyvaluep).classFunction);
2072 FreeMemberInit((*yyvaluep).memberInit);
2078 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
2084 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
2090 FreeList((*yyvaluep).list, (void *)(FreeMembersInit));
2096 FreeList((*yyvaluep).list, (void *)(FreeMembersInit));
2105 int type_yyparse(void)
2109 yytype_int16 yyssa[200];
2110 yytype_int16 * yyss;
2111 yytype_int16 * yyssp;
2115 struct Location yylsa[200];
2116 struct Location * yyls;
2117 struct Location * yylsp;
2118 struct Location yyerror_range[2];
2124 struct Location yyloc;
2135 fprintf((bsl_stderr()), "Starting parse\n");
2149 if(yyss + yystacksize - 1 <= yyssp)
2151 size_t yysize = yyssp - yyss + 1;
2153 if(10000 <= yystacksize)
2154 goto yyexhaustedlab;
2156 if(10000 < yystacksize)
2157 yystacksize = 10000;
2159 yytype_int16 * yyss1 = yyss;
2160 union yyalloc * yyptr = (union yyalloc *)malloc(((yystacksize) * (sizeof(yytype_int16) + sizeof(YYSTYPE) + sizeof(struct Location)) + 2 * (sizeof(union yyalloc) - 1)));
2163 goto yyexhaustedlab;
2168 __builtin_memcpy(&(*yyptr).yyss_alloc, yyss, (yysize) * sizeof (*(yyss)));
2169 yyss = &(*yyptr).yyss_alloc;
2170 yynewbytes = yystacksize * sizeof (*yyss) + (sizeof(union yyalloc) - 1);
2171 yyptr += yynewbytes / sizeof (*yyptr);
2177 __builtin_memcpy(&(*yyptr).yyvs_alloc, yyvs, (yysize) * sizeof (*(yyvs)));
2178 yyvs = &(*yyptr).yyvs_alloc;
2179 yynewbytes = yystacksize * sizeof (*yyvs) + (sizeof(union yyalloc) - 1);
2180 yyptr += yynewbytes / sizeof (*yyptr);
2186 __builtin_memcpy(&(*yyptr).yyls_alloc, yyls, (yysize) * sizeof (*(yyls)));
2187 yyls = &(*yyptr).yyls_alloc;
2188 yynewbytes = yystacksize * sizeof (*yyls) + (sizeof(union yyalloc) - 1);
2189 yyptr += yynewbytes / sizeof (*yyptr);
2194 yyssp = yyss + yysize - 1;
2195 yyvsp = yyvs + yysize - 1;
2196 yylsp = yyls + yysize - 1;
2200 fprintf((bsl_stderr()), "Stack size increased to %lu\n", (unsigned long int)yystacksize);
2202 if(yyss + yystacksize - 1 <= yyssp)
2208 fprintf((bsl_stderr()), "Entering state %d\n", yystate);
2214 yyn = yypact[yystate];
2217 if(type_yychar == (-2))
2222 fprintf((bsl_stderr()), "Reading a token: ");
2224 type_yychar = yylex();
2226 if(type_yychar <= 0)
2228 type_yychar = yytoken = 0;
2232 fprintf((bsl_stderr()), "Now at end of input.\n");
2237 yytoken = ((unsigned int)(type_yychar) <= 374 ? yytranslate[type_yychar] : 2);
2242 fprintf((bsl_stderr()), "%s ", "Next token is");
2243 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2244 fprintf((bsl_stderr()), "\n");
2249 if(yyn < 0 || 9303 < yyn || yycheck[yyn] != yytoken)
2254 if(yyn == 0 || yyn == -497)
2265 fprintf((bsl_stderr()), "%s ", "Shifting");
2266 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2267 fprintf((bsl_stderr()), "\n");
2272 *++yyvsp = type_yylval;
2273 *++yylsp = type_yylloc;
2276 yyn = yydefact[yystate];
2282 yyval = yyvsp[1 - yylen];
2283 (yyloc.start = ((yylsp - yylen))[1].start);
2284 (yyloc.end = ((yylsp - yylen))[yylen].end);
2289 yy_reduce_print(yyvsp, yylsp, yyn);
2295 yyval.specifier = (((void *)0));
2296 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2297 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2298 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2300 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2301 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2302 resetScannerPos(&(yylsp[(1) - (2)]).start);
2303 (type_yychar = (-2));
2304 FreeIdentifier(yyvsp[(1) - (2)].id);
2305 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2310 yy_stack_print((yyss), (yyssp));
2312 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2317 yy_stack_print((yyss), (yyssp));
2325 yyval.specifier = (((void *)0));
2326 _DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2327 FreeIdentifier(yyvsp[(1) - (2)].id);
2328 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2329 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2331 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2332 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2333 resetScannerPos(&(yylsp[(1) - (2)]).start);
2334 (type_yychar = (-2));
2335 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2340 yy_stack_print((yyss), (yyssp));
2342 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2347 yy_stack_print((yyss), (yyssp));
2355 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2356 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2357 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2359 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2360 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2361 parseTypeError = (unsigned int)0;
2362 resetScannerPos(&(yylsp[(1) - (2)]).start);
2363 (type_yychar = (-2));
2364 FreeIdentifier(yyvsp[(1) - (2)].id);
2365 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2370 yy_stack_print((yyss), (yyssp));
2372 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2377 yy_stack_print((yyss), (yyssp));
2385 yyval.specifier = yyvsp[(1) - (1)].specifier;
2391 DeclClass(yyvsp[(1) - (2)].id->_class, yyvsp[(1) - (2)].id->string);
2392 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2393 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2395 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2396 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2397 resetScannerPos(&(yylsp[(1) - (2)]).start);
2398 (type_yychar = (-2));
2399 FreeIdentifier(yyvsp[(1) - (2)].id);
2400 FreeIdentifier(yyvsp[(2) - (2)].id);
2401 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2406 yy_stack_print((yyss), (yyssp));
2408 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2413 yy_stack_print((yyss), (yyssp));
2421 yyval.specifier = MkSpecifierName(yytext);
2427 yyval.specifier = yyvsp[(1) - (4)].specifier;
2428 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2429 yyval.specifier->loc = (yyloc);
2435 yyval.specifier = yyvsp[(1) - (4)].specifier;
2436 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2437 yyval.specifier->loc = (yyloc);
2438 (yylsp[(4) - (4)]).end.pos--;
2439 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2440 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2442 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2443 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(4) - (4)]).end.pos, 0);
2444 resetScannerPos(&(yylsp[(4) - (4)]).end);
2445 (type_yychar = (-2));
2451 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2452 yyval.classFunction->loc = (yyloc);
2458 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(1) - (1)].declarator, (((void *)0)));
2459 yyval.classFunction->loc = (yyloc);
2465 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2466 yyval.classFunction->isConstructor = 1;
2467 yyval.classFunction->loc = (yyloc);
2468 FreeList(yyvsp[(1) - (3)].list, (void *)(FreeSpecifier));
2474 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2475 yyval.classFunction->isDestructor = 1;
2476 yyval.classFunction->loc = (yyloc);
2477 FreeList(yyvsp[(2) - (4)].list, (void *)(FreeSpecifier));
2483 yyval.classFunction = MkClassFunction(yyvsp[(2) - (3)].list, (((void *)0)), yyvsp[(3) - (3)].declarator, (((void *)0)));
2484 yyval.classFunction->isVirtual = 1;
2485 yyval.classFunction->loc = (yyloc);
2491 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2492 yyval.classFunction->isVirtual = 1;
2493 yyval.classFunction->loc = (yyloc);
2499 yyval.id = MkIdentifier(yytext);
2500 yyval.id->loc = (yylsp[(1) - (1)]);
2506 yyval.exp = MkExpBrackets(yyvsp[(2) - (3)].list);
2507 yyval.exp->loc = (yyloc);
2513 yyval.exp = MkExpIdentifier(yyvsp[(1) - (1)].id);
2514 yyval.exp->loc = (yyloc);
2520 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2521 yyval.exp->loc = (yyloc);
2527 yyval.exp = MkExpConstant(yytext);
2528 yyval.exp->loc = (yyloc);
2534 yyval.exp = MkExpWideString(yytext);
2535 yyval.exp->loc = (yyloc);
2541 yyval.exp = MkExpString(yyvsp[(1) - (1)].string);
2542 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(1) - (1)].string), yyvsp[(1) - (1)].string = 0);
2543 yyval.exp->loc = (yyloc);
2549 yyval.exp = MkExpIntlString(yyvsp[(2) - (2)].string, (((void *)0)));
2550 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (2)].string), yyvsp[(2) - (2)].string = 0);
2551 yyval.exp->loc = (yyloc);
2557 yyval.exp = MkExpIntlString(yyvsp[(4) - (4)].string, yyvsp[(2) - (4)].string);
2558 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (4)].string), yyvsp[(2) - (4)].string = 0);
2559 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(4) - (4)].string), yyvsp[(4) - (4)].string = 0);
2560 yyval.exp->loc = (yyloc);
2566 struct Expression * exp = MkExpDummy();
2568 exp->loc.start = (yylsp[(1) - (2)]).end;
2569 exp->loc.end = (yylsp[(2) - (2)]).start;
2570 yyval.exp = MkExpBrackets(MkListOne(exp));
2571 yyval.exp->loc = (yyloc);
2578 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2579 yyval.exp->loc = (yyloc);
2585 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2586 yyval.exp->loc = (yyloc);
2592 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2593 yyval.exp->loc = (yyloc);
2599 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2600 yyval.exp->loc = (yyloc);
2606 yyval.exp = MkExpRenew(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2607 yyval.exp->loc = (yyloc);
2613 yyval.exp = MkExpRenew(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2614 yyval.exp->loc = (yyloc);
2620 yyval.exp = MkExpRenew0(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2621 yyval.exp->loc = (yyloc);
2627 yyval.exp = MkExpRenew0(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2628 yyval.exp->loc = (yyloc);
2634 yyval.exp = MkExpDummy();
2640 yyval.exp = MkExpIndex(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2641 yyval.exp->loc = (yyloc);
2647 yyval.exp = MkExpCall(yyvsp[(1) - (3)].exp, MkList());
2648 yyval.exp->__anon1.call.argLoc.start = (yylsp[(2) - (3)]).start;
2649 yyval.exp->__anon1.call.argLoc.end = (yylsp[(3) - (3)]).end;
2650 yyval.exp->loc = (yyloc);
2656 yyval.exp = MkExpCall(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2657 yyval.exp->__anon1.call.argLoc.start = (yylsp[(2) - (4)]).start;
2658 yyval.exp->__anon1.call.argLoc.end = (yylsp[(4) - (4)]).end;
2659 yyval.exp->loc = (yyloc);
2665 yyval.exp = MkExpMember(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2666 yyval.exp->loc = (yyloc);
2672 char * constant = yyvsp[(1) - (2)].exp->type == 2 ? yyvsp[(1) - (2)].exp->__anon1.__anon1.constant : (((void *)0));
2673 int len = constant ? strlen(constant) : 0;
2675 if(constant && constant[len - 1] == '.')
2677 constant[len - 1] = 0;
2678 yyval.exp = MkExpMember(yyvsp[(1) - (2)].exp, yyvsp[(2) - (2)].id);
2679 yyval.exp->loc = (yyloc);
2688 yyval.exp = MkExpPointer(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2689 yyval.exp->loc = (yyloc);
2695 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, INC_OP, (((void *)0)));
2696 yyval.exp->loc = (yyloc);
2702 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, DEC_OP, (((void *)0)));
2703 yyval.exp->loc = (yyloc);
2709 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2710 yyval.exp->loc = (yyloc);
2716 yyval.list = MkList();
2717 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2723 yyval.list = MkList();
2724 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2730 yyval.list = yyvsp[(1) - (3)].list;
2731 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2737 yyval.list = yyvsp[(1) - (3)].list;
2738 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2744 yyval.exp = MkExpOp((((void *)0)), INC_OP, yyvsp[(2) - (2)].exp);
2745 yyval.exp->loc = (yyloc);
2751 yyval.exp = MkExpOp((((void *)0)), DEC_OP, yyvsp[(2) - (2)].exp);
2752 yyval.exp->loc = (yyloc);
2758 yyval.exp = MkExpOp((((void *)0)), yyvsp[(1) - (2)].i, yyvsp[(2) - (2)].exp);
2759 yyval.exp->loc = (yyloc);
2765 yyval.exp = MkExpOp((((void *)0)), SIZEOF, yyvsp[(2) - (2)].exp);
2766 yyval.exp->loc = (yyloc);
2772 yyval.exp = MkExpTypeSize(yyvsp[(3) - (4)].typeName);
2773 yyval.exp->loc = (yyloc);
2779 yyval.exp = MkExpOp((((void *)0)), ALIGNOF, yyvsp[(2) - (2)].exp);
2780 yyval.exp->loc = (yyloc);
2786 yyval.exp = MkExpTypeAlign(yyvsp[(3) - (4)].typeName);
2787 yyval.exp->loc = (yyloc);
2835 yyval.exp = MkExpCast(yyvsp[(2) - (4)].typeName, yyvsp[(4) - (4)].exp);
2836 yyval.exp->loc = (yyloc);
2842 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '*', yyvsp[(3) - (3)].exp);
2843 yyval.exp->loc = (yyloc);
2849 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '/', yyvsp[(3) - (3)].exp);
2850 yyval.exp->loc = (yyloc);
2856 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '%', yyvsp[(3) - (3)].exp);
2857 yyval.exp->loc = (yyloc);
2863 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '+', yyvsp[(3) - (3)].exp);
2864 yyval.exp->loc = (yyloc);
2870 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '-', yyvsp[(3) - (3)].exp);
2871 yyval.exp->loc = (yyloc);
2877 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LEFT_OP, yyvsp[(3) - (3)].exp);
2878 yyval.exp->loc = (yyloc);
2884 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, RIGHT_OP, yyvsp[(3) - (3)].exp);
2885 yyval.exp->loc = (yyloc);
2891 yyval.exp = yyvsp[(1) - (2)].exp;
2899 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, '<', yyvsp[(2) - (2)].exp);
2900 yyval.exp->loc = (yyloc);
2906 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '>', yyvsp[(3) - (3)].exp);
2907 yyval.exp->loc = (yyloc);
2913 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LE_OP, yyvsp[(3) - (3)].exp);
2914 yyval.exp->loc = (yyloc);
2920 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, GE_OP, yyvsp[(3) - (3)].exp);
2921 yyval.exp->loc = (yyloc);
2927 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, EQ_OP, yyvsp[(3) - (3)].exp);
2928 yyval.exp->loc = (yyloc);
2934 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, NE_OP, yyvsp[(3) - (3)].exp);
2935 yyval.exp->loc = (yyloc);
2941 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '&', yyvsp[(3) - (3)].exp);
2942 yyval.exp->loc = (yyloc);
2948 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '^', yyvsp[(3) - (3)].exp);
2949 yyval.exp->loc = (yyloc);
2955 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '|', yyvsp[(3) - (3)].exp);
2956 yyval.exp->loc = (yyloc);
2962 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, AND_OP, yyvsp[(3) - (3)].exp);
2963 yyval.exp->loc = (yyloc);
2969 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, OR_OP, yyvsp[(3) - (3)].exp);
2970 yyval.exp->loc = (yyloc);
2976 yyval.exp = MkExpCondition(yyvsp[(1) - (5)].exp, yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].exp);
2977 yyval.exp->loc = (yyloc);
2983 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
2984 yyval.exp->loc = (yyloc);
2990 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
2991 yyval.exp->loc = (yyloc);
3003 yyval.i = MUL_ASSIGN;
3009 yyval.i = DIV_ASSIGN;
3015 yyval.i = MOD_ASSIGN;
3021 yyval.i = ADD_ASSIGN;
3027 yyval.i = SUB_ASSIGN;
3033 yyval.i = LEFT_ASSIGN;
3039 yyval.i = RIGHT_ASSIGN;
3045 yyval.i = AND_ASSIGN;
3051 yyval.i = XOR_ASSIGN;
3057 yyval.i = OR_ASSIGN;
3063 yyval.list = MkList();
3064 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
3070 yyval.list = yyvsp[(1) - (3)].list;
3071 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
3077 yyval.declaration = MkDeclaration(yyvsp[(1) - (2)].list, (((void *)0)));
3078 yyval.declaration->loc = (yyloc);
3084 yyval.declaration = MkDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list);
3085 yyval.declaration->loc = (yyloc);
3091 yyval.declaration = MkDeclarationInst(yyvsp[(1) - (2)].instance);
3092 yyval.declaration->loc = (yyloc);
3098 yyval.declaration = MkDeclarationDefine(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].exp);
3099 yyval.declaration->loc = (yyloc);
3105 yyval.list = MkList();
3106 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3112 yyval.list = yyvsp[(1) - (2)].list;
3113 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3119 yyval.list = MkList();
3120 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3126 yyval.list = yyvsp[(1) - (2)].list;
3127 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3133 yyval.list = MkList();
3134 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3140 yyval.list = yyvsp[(1) - (2)].list;
3141 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3147 yyval.list = MkList();
3148 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3154 yyval.list = yyvsp[(1) - (2)].list;
3155 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3161 yyval.list = MkList();
3162 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3168 yyval.list = yyvsp[(1) - (2)].list;
3169 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3175 yyval.list = MkList();
3176 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3182 yyval.list = yyvsp[(1) - (2)].list;
3183 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3189 yyval.list = MkList();
3190 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3196 yyval.list = yyvsp[(1) - (2)].list;
3197 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3203 yyval.list = MkList();
3204 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3210 yyval.list = yyvsp[(1) - (2)].list;
3211 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3217 yyval.list = MkList();
3218 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3224 yyval.list = yyvsp[(1) - (2)].list;
3225 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3231 yyval.list = MkList();
3232 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3238 yyval.list = yyvsp[(1) - (2)].list;
3239 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3245 yyval.list = MkList();
3246 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3252 yyval.list = yyvsp[(1) - (2)].list;
3253 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3259 yyval.list = MkList();
3260 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3266 yyval.list = yyvsp[(1) - (2)].list;
3267 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3273 yyval.list = MkList();
3274 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3280 yyval.list = yyvsp[(1) - (2)].list;
3281 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3287 yyval.list = MkList();
3288 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3294 yyval.list = yyvsp[(1) - (2)].list;
3295 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3301 yyval.list = MkList();
3302 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3308 yyval.list = yyvsp[(1) - (2)].list;
3309 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3315 yyval.list = MkList();
3316 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3322 yyval.list = yyvsp[(1) - (2)].list;
3323 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3329 yyval.list = MkList();
3330 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3336 yyval.list = yyvsp[(1) - (2)].list;
3337 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3343 yyval.list = MkList();
3344 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3350 yyval.list = yyvsp[(1) - (2)].list;
3351 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3357 yyval.list = MkList();
3358 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3364 yyval.list = yyvsp[(1) - (2)].list;
3365 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3371 yyval.list = MkList();
3372 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3378 yyval.list = yyvsp[(1) - (2)].list;
3379 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3385 yyval.list = yyvsp[(1) - (1)].list;
3391 yyval.list = MkList();
3392 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3398 yyval.list = MkList();
3399 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3405 yyval.list = yyvsp[(1) - (2)].list;
3406 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3412 yyval.list = MkList();
3413 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3419 yyval.list = yyvsp[(1) - (2)].list;
3420 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3426 yyval.list = MkList();
3427 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3433 yyval.list = yyvsp[(1) - (2)].list;
3434 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3440 yyval.list = MkList();
3441 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3442 FreeIdentifier(yyvsp[(1) - (1)].id);
3448 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3449 FreeIdentifier(yyvsp[(2) - (2)].id);
3455 _DeclClass(yyvsp[(1) - (4)].id->_class, yyvsp[(1) - (4)].id->string);
3456 yyval.list = MkList();
3457 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3458 FreeIdentifier(yyvsp[(1) - (4)].id);
3464 _DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
3465 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3466 FreeIdentifier(yyvsp[(2) - (5)].id);
3472 yyval.list = MkList();
3473 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3479 yyval.list = yyvsp[(1) - (2)].list;
3480 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3486 yyval.list = MkList();
3487 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3493 yyval.list = yyvsp[(1) - (2)].list;
3494 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3500 yyval.list = MkList();
3501 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3507 yyval.list = yyvsp[(1) - (2)].list;
3508 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3514 yyval.list = MkList();
3515 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3521 yyval.list = yyvsp[(1) - (2)].list;
3522 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3528 yyval.list = MkList();
3529 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3535 yyval.list = yyvsp[(1) - (2)].list;
3536 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3542 yyval.list = MkList();
3543 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3544 FreeIdentifier(yyvsp[(1) - (1)].id);
3550 yyval.list = yyvsp[(1) - (2)].list;
3551 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3552 FreeIdentifier(yyvsp[(2) - (2)].id);
3557 _DeclClass(yyvsp[(1) - (4)].id->_class, yyvsp[(1) - (4)].id->string);
3558 yyval.list = MkList();
3559 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3560 FreeIdentifier(yyvsp[(1) - (4)].id);
3566 _DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
3567 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3568 FreeIdentifier(yyvsp[(2) - (5)].id);
3574 yyval.list = MkList();
3575 ListAdd(yyval.list, yyvsp[(1) - (1)].initDeclarator);
3581 yyval.list = yyvsp[(1) - (3)].list;
3582 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initDeclarator);
3588 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
3589 yyval.initDeclarator->loc = (yyloc);
3595 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].initializer);
3596 yyval.initDeclarator->loc = (yyloc);
3597 yyval.initDeclarator->initializer->loc.start = (yylsp[(2) - (3)]).end;
3603 yyval.specifier = MkSpecifier(TYPEDEF);
3609 yyval.specifier = MkSpecifier(EXTERN);
3615 yyval.specifier = MkSpecifier(STATIC);
3621 yyval.specifier = MkSpecifier(AUTO);
3627 yyval.specifier = MkSpecifier(REGISTER);
3633 yyval.specifier = MkSpecifier(THREAD);
3639 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
3645 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
3651 yyval.extDecl = MkExtDeclAttrib(yyvsp[(1) - (1)].attrib);
3663 yyval.i = ATTRIB_DEP;
3675 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3681 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3687 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3693 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3699 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3705 yyval.attribute = MkAttribute(yyvsp[(1) - (1)].string, (((void *)0)));
3706 yyval.attribute->loc = (yyloc);
3712 yyval.attribute = MkAttribute(yyvsp[(1) - (4)].string, MkExpBrackets(yyvsp[(3) - (4)].list));
3713 yyval.attribute->loc = (yyloc);
3719 yyval.list = MkListOne(yyvsp[(1) - (1)].attribute);
3725 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].attribute);
3726 yyval.list = yyvsp[(1) - (2)].list;
3732 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].attribute);
3733 yyval.list = yyvsp[(1) - (3)].list;
3739 yyval.attrib = MkAttrib(yyvsp[(1) - (6)].i, yyvsp[(4) - (6)].list);
3740 yyval.attrib->loc = (yyloc);
3746 yyval.attrib = MkAttrib(yyvsp[(1) - (5)].i, (((void *)0)));
3747 yyval.attrib->loc = (yyloc);
3753 yyval.specifier = MkSpecifierExtended(yyvsp[(1) - (1)].extDecl);
3759 yyval.specifier = MkSpecifier(CONST);
3765 yyval.specifier = MkSpecifier(VOLATILE);
3771 yyval.specifier = yyvsp[(1) - (1)].specifier;
3777 yyval.specifier = MkSpecifier(VOID);
3783 yyval.specifier = MkSpecifier(CHAR);
3789 yyval.specifier = MkSpecifier(SHORT);
3795 yyval.specifier = MkSpecifier(INT);
3801 yyval.specifier = MkSpecifier(UINT);
3807 yyval.specifier = MkSpecifier(INT64);
3813 yyval.specifier = MkSpecifier(VALIST);
3819 yyval.specifier = MkSpecifier(LONG);
3825 yyval.specifier = MkSpecifier(FLOAT);
3831 yyval.specifier = MkSpecifier(DOUBLE);
3837 yyval.specifier = MkSpecifier(SIGNED);
3843 yyval.specifier = MkSpecifier(UNSIGNED);
3849 yyval.specifier = MkSpecifier(EXTENSION);
3855 yyval.specifier = MkSpecifier(_BOOL);
3861 yyval.specifier = MkSpecifier(BOOL);
3867 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
3873 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
3879 _DeclClass(yyvsp[(3) - (4)].id->_class, yyvsp[(3) - (4)].id->string);
3880 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
3881 FreeIdentifier(yyvsp[(3) - (4)].id);
3887 yyval.specifier = MkSpecifier(THISCLASS);
3893 yyval.specifier = MkSpecifier(TYPED_OBJECT);
3899 yyval.specifier = MkSpecifier(ANY_OBJECT);
3905 yyval.specifier = MkSpecifier(VOID);
3911 yyval.specifier = MkSpecifier(CHAR);
3917 yyval.specifier = MkSpecifier(SHORT);
3923 yyval.specifier = MkSpecifier(INT);
3929 yyval.specifier = MkSpecifier(UINT);
3935 yyval.specifier = MkSpecifier(INT64);
3941 yyval.specifier = MkSpecifier(VALIST);
3947 yyval.specifier = MkSpecifier(LONG);
3953 yyval.specifier = MkSpecifier(FLOAT);
3959 yyval.specifier = MkSpecifier(DOUBLE);
3965 yyval.specifier = MkSpecifier(SIGNED);
3971 yyval.specifier = MkSpecifier(UNSIGNED);
3977 yyval.specifier = MkSpecifier(EXTENSION);
3983 yyval.specifier = MkSpecifier(_BOOL);
3989 yyval.specifier = MkSpecifier(BOOL);
3995 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
4001 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
4007 _DeclClass(yyvsp[(3) - (4)].id->_class, yyvsp[(3) - (4)].id->string);
4008 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
4009 FreeIdentifier(yyvsp[(3) - (4)].id);
4015 yyval.specifier = MkSpecifier(THISCLASS);
4021 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4023 DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
4029 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), yyvsp[(3) - (4)].list);
4035 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, yyvsp[(2) - (4)].id, (((void *)0)));
4037 DeclClass(yyvsp[(2) - (4)].id->_class, yyvsp[(2) - (4)].id->string);
4043 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, (((void *)0)), (((void *)0)));
4049 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, MkIdentifier(yyvsp[(2) - (5)].specifier->__anon1.__anon1.name), yyvsp[(4) - (5)].list);
4051 DeclClass(yyvsp[(2) - (5)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (5)].specifier->__anon1.__anon1.name);
4052 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4058 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, yyvsp[(3) - (6)].id, yyvsp[(5) - (6)].list);
4059 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (6)].extDecl;
4061 DeclClass(yyvsp[(3) - (6)].id->_class, yyvsp[(3) - (6)].id->string);
4067 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, (((void *)0)), yyvsp[(4) - (5)].list);
4068 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (5)].extDecl;
4074 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(3) - (5)].id, (((void *)0)));
4075 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (5)].extDecl;
4077 DeclClass(yyvsp[(3) - (5)].id->_class, yyvsp[(3) - (5)].id->string);
4083 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), (((void *)0)));
4084 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (4)].extDecl;
4090 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, MkIdentifier(yyvsp[(3) - (6)].specifier->__anon1.__anon1.name), yyvsp[(5) - (6)].list);
4091 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (6)].extDecl;
4093 DeclClass(yyvsp[(3) - (6)].specifier->__anon1.__anon1.nsSpec, yyvsp[(3) - (6)].specifier->__anon1.__anon1.name);
4094 FreeSpecifier(yyvsp[(3) - (6)].specifier);
4100 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, yyvsp[(2) - (2)].id, (((void *)0)));
4102 DeclClass(yyvsp[(2) - (2)].id->_class, yyvsp[(2) - (2)].id->string);
4108 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, MkIdentifier(yyvsp[(2) - (2)].specifier->__anon1.__anon1.name), (((void *)0)));
4110 DeclClass(yyvsp[(2) - (2)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (2)].specifier->__anon1.__anon1.name);
4111 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4117 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, yyvsp[(3) - (3)].id, (((void *)0)));
4118 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (3)].extDecl;
4120 DeclClass(yyvsp[(3) - (3)].id->_class, yyvsp[(3) - (3)].id->string);
4126 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, MkIdentifier(yyvsp[(3) - (3)].specifier->__anon1.__anon1.name), (((void *)0)));
4127 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (3)].extDecl;
4129 DeclClass(yyvsp[(3) - (3)].specifier->__anon1.__anon1.nsSpec, yyvsp[(3) - (3)].specifier->__anon1.__anon1.name);
4130 FreeSpecifier(yyvsp[(3) - (3)].specifier);
4136 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0)));
4142 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4148 yyval.templateArgument = MkTemplateTypeArgument(MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0))));
4154 yyval.templateArgument = MkTemplateTypeArgument(MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator));
4160 yyval.templateArgument = MkTemplateExpressionArgument(yyvsp[(1) - (1)].exp);
4166 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4167 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4168 yyval.templateArgument->loc = (yyloc);
4174 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4175 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4176 yyval.templateArgument->loc = (yyloc);
4182 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4183 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4185 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4188 yyval.templateArgument->name = MkIdentifier(spec->__anon1.__anon1.name);
4190 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4191 yyval.templateArgument->loc = (yyloc);
4197 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4198 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4200 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4203 yyval.templateArgument->name = MkIdentifier(spec->__anon1.__anon1.name);
4205 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4206 yyval.templateArgument->loc = (yyloc);
4212 yyval.list = MkList();
4213 ListAdd(yyval.list, yyvsp[(1) - (1)].templateArgument);
4219 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].templateArgument);
4225 yyval.specifierType = 3;
4231 yyval.specifierType = 4;
4237 yyval.list = MkList();
4238 ListAdd(yyval.list, yyvsp[(1) - (1)].classDef);
4244 yyval.list = yyvsp[(1) - (2)].list;
4245 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].classDef);
4251 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
4252 yyval.memberInit->loc = (yyloc);
4253 yyval.memberInit->realLoc = (yyloc);
4259 yyval.list = MkList();
4260 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
4261 ((struct MemberInit *)(*yyval.list).last)->loc = (yyloc);
4267 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
4268 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
4269 yyval.list = yyvsp[(1) - (3)].list;
4275 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4276 yyval.prop->loc = (yyloc);
4282 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4283 yyval.prop->loc = (yyloc);
4289 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, yyvsp[(6) - (7)].stmt, (((void *)0)));
4290 yyval.prop->loc = (yyloc);
4296 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, (((void *)0)), yyvsp[(6) - (7)].stmt);
4297 yyval.prop->loc = (yyloc);
4303 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, (((void *)0)), yyvsp[(3) - (5)].id, (((void *)0)), (((void *)0)));
4304 yyval.prop->loc = (yyloc);
4310 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(7) - (10)].stmt, yyvsp[(9) - (10)].stmt);
4311 yyval.prop->loc = (yyloc);
4317 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(9) - (10)].stmt, yyvsp[(7) - (10)].stmt);
4318 yyval.prop->loc = (yyloc);
4324 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, yyvsp[(7) - (8)].stmt, (((void *)0)));
4325 yyval.prop->loc = (yyloc);
4331 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, (((void *)0)), yyvsp[(7) - (8)].stmt);
4332 yyval.prop->loc = (yyloc);
4338 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator, yyvsp[(4) - (6)].id, (((void *)0)), (((void *)0)));
4339 yyval.prop->loc = (yyloc);
4345 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (8)].stmt, yyvsp[(7) - (8)].stmt);
4346 yyval.prop->loc = (yyloc);
4352 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(7) - (8)].stmt, yyvsp[(5) - (8)].stmt);
4353 yyval.prop->loc = (yyloc);
4359 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt, (((void *)0)));
4360 yyval.prop->loc = (yyloc);
4366 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt);
4367 yyval.prop->loc = (yyloc);
4373 yyval.prop = MkProperty(yyvsp[(2) - (4)].list, (((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
4374 yyval.prop->loc = (yyloc);
4380 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4381 yyval.prop->loc = (yyloc);
4387 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4388 yyval.prop->loc = (yyloc);
4394 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), yyvsp[(6) - (7)].stmt, (((void *)0)));
4395 yyval.prop->loc = (yyloc);
4401 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), (((void *)0)), yyvsp[(6) - (7)].stmt);
4402 yyval.prop->loc = (yyloc);
4408 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, yyvsp[(3) - (5)].declarator, (((void *)0)), (((void *)0)), (((void *)0)));
4409 yyval.prop->loc = (yyloc);
4415 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list, (((void *)0))));
4416 yyval.classDef->__anon1.decl->loc = (yyloc);
4417 yyval.classDef->loc = (yyloc);
4423 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (2)].list, (((void *)0)), (((void *)0))));
4424 yyval.classDef->__anon1.decl->loc = (yyloc);
4425 yyval.classDef->loc = (yyloc);
4431 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4432 yyval.classDef->loc = (yyloc);
4433 yyval.classDef->__anon1.decl->loc = (yyloc);
4439 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4440 yyval.classDef->loc = (yyloc);
4441 yyval.classDef->__anon1.decl->loc = (yyloc);
4447 yyval.classDef = MkClassDefFunction(yyvsp[(1) - (1)].classFunction);
4448 yyval.classDef->loc = (yyloc);
4454 yyval.classDef = MkClassDefDefaultProperty(yyvsp[(1) - (2)].list);
4455 if((*yyvsp[(1) - (2)].list).last)
4456 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).start;
4457 yyval.classDef->loc = (yyloc);
4463 yyval.classDef = MkClassDefProperty(yyvsp[(1) - (1)].prop);
4464 yyval.classDef->loc = (yyloc);
4470 yyval.classDef = (((void *)0));
4476 yyval.list = MkList();
4477 ListAdd(yyval.list, yyvsp[(1) - (1)].declarator);
4483 yyval.list = yyvsp[(1) - (3)].list;
4484 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].declarator);
4490 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
4491 yyval.declarator->loc = (yyloc);
4497 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (2)].declarator, (((void *)0)));
4498 yyval.declarator->__anon1.structDecl.attrib = yyvsp[(2) - (2)].attrib;
4499 yyval.declarator->loc = (yyloc);
4505 yyval.declarator = MkStructDeclarator((((void *)0)), yyvsp[(2) - (2)].exp);
4506 yyval.declarator->loc = (yyloc);
4512 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].exp);
4513 yyval.declarator->loc = (yyloc);
4519 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (5)].declarator, yyvsp[(3) - (5)].exp);
4520 yyval.declarator->__anon1.structDecl.posExp = yyvsp[(5) - (5)].exp;
4521 yyval.declarator->loc = (yyloc);
4527 yyval.specifier = MkEnum(yyvsp[(2) - (2)].id, (((void *)0)));
4529 DeclClass(yyvsp[(2) - (2)].id->_class, yyvsp[(2) - (2)].id->string);
4535 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (2)].specifier->__anon1.__anon1.name), (((void *)0)));
4537 DeclClass(yyvsp[(2) - (2)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (2)].specifier->__anon1.__anon1.name);
4538 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4544 yyval.specifier = MkEnum((((void *)0)), yyvsp[(3) - (4)].list);
4550 yyval.specifier = MkEnum(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4552 DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
4558 yyval.specifier = MkEnum(yyvsp[(2) - (7)].id, yyvsp[(4) - (7)].list);
4559 yyval.specifier->__anon1.__anon2.definitions = yyvsp[(6) - (7)].list;
4561 DeclClass(yyvsp[(2) - (7)].id->_class, yyvsp[(2) - (7)].id->string);
4567 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (7)].specifier->__anon1.__anon1.name), yyvsp[(4) - (7)].list);
4568 yyval.specifier->__anon1.__anon2.definitions = yyvsp[(6) - (7)].list;
4570 DeclClass(yyvsp[(2) - (7)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (7)].specifier->__anon1.__anon1.name);
4571 FreeSpecifier(yyvsp[(2) - (7)].specifier);
4577 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (5)].specifier->__anon1.__anon1.name), yyvsp[(4) - (5)].list);
4579 DeclClass(yyvsp[(2) - (5)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (5)].specifier->__anon1.__anon1.name);
4580 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4586 yyval.list = MkList();
4587 ListAdd(yyval.list, yyvsp[(1) - (1)].enumerator);
4593 yyval.list = yyvsp[(1) - (3)].list;
4594 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].enumerator);
4600 yyval.enumerator = MkEnumerator(yyvsp[(1) - (1)].id, (((void *)0)));
4606 yyval.enumerator = MkEnumerator(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].exp);
4612 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4618 yyval.declarator = MkDeclaratorArray((((void *)0)), (((void *)0)));
4624 yyval.declarator = MkDeclaratorArray((((void *)0)), yyvsp[(2) - (3)].exp);
4630 yyval.declarator = MkDeclaratorEnumArray((((void *)0)), yyvsp[(2) - (3)].specifier);
4636 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4642 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4648 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4654 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4660 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4666 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4672 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4678 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4684 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4690 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4696 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4702 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4708 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4714 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4720 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4726 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4732 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4738 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4744 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4750 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4756 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4762 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4768 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4774 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4780 yyval.declarator = MkDeclaratorExtendedEnd(yyvsp[(2) - (2)].extDecl, yyvsp[(1) - (2)].declarator);
4786 yyval.declarator = MkDeclaratorIdentifier(yyvsp[(1) - (1)].id);
4792 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4798 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4804 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4810 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4816 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4822 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4828 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4834 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4840 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4846 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4852 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (2)].declarator, (((void *)0)));
4858 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4864 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4870 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4876 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4882 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4888 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4894 yyval.list = MkList();
4895 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
4901 yyval.list = yyvsp[(1) - (2)].list;
4902 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
4908 yyval.pointer = MkPointer((((void *)0)), (((void *)0)));
4914 yyval.pointer = MkPointer(yyvsp[(2) - (2)].list, (((void *)0)));
4920 yyval.pointer = MkPointer((((void *)0)), yyvsp[(2) - (2)].pointer);
4926 yyval.pointer = MkPointer(yyvsp[(2) - (3)].list, yyvsp[(3) - (3)].pointer);
4932 yyval.list = yyvsp[(1) - (3)].list;
4933 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), (((void *)0))));
4939 yyval.list = MkList();
4940 ListAdd(yyval.list, yyvsp[(1) - (1)].typeName);
4946 yyval.list = yyvsp[(1) - (3)].list;
4947 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].typeName);
4953 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4959 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4965 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), (((void *)0))));
4971 yyval.typeName = MkTypeName(yyvsp[(1) - (3)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), yyvsp[(3) - (3)].declarator));
4977 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
4983 yyval.typeName = MkTypeName(MkListOne(MkSpecifier(CLASS)), (((void *)0)));
4989 yyval.list = MkList();
4990 ListAdd(yyval.list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(1) - (1)].id)));
4996 yyval.list = yyvsp[(1) - (3)].list;
4997 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(3) - (3)].id)));
5003 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5009 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5015 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5021 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5027 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5028 yyval.initializer->loc = (yyloc);
5034 yyval.initializer = MkInitializerList(yyvsp[(2) - (3)].list);
5035 yyval.initializer->loc = (yyloc);
5041 yyval.initializer = MkInitializerList(yyvsp[(2) - (4)].list);
5042 yyval.initializer->loc = (yyloc);
5044 struct Expression * exp = MkExpDummy();
5045 struct Initializer * init = MkInitializerAssignment(exp);
5047 init->loc = (yylsp[(3) - (4)]);
5048 exp->loc = (yylsp[(3) - (4)]);
5049 ListAdd(yyvsp[(2) - (4)].list, init);
5056 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5057 yyval.initializer->loc = (yyloc);
5063 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5064 yyval.initializer->loc = (yyloc);
5070 yyval.list = MkList();
5071 ListAdd(yyval.list, yyvsp[(1) - (1)].initializer);
5077 yyval.list = yyvsp[(1) - (3)].list;
5078 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initializer);
5084 yyval.stmt = MkLabeledStmt(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].stmt);
5085 yyval.stmt->loc = (yyloc);
5091 yyval.stmt = MkCaseStmt(yyvsp[(2) - (4)].exp, yyvsp[(4) - (4)].stmt);
5092 yyval.stmt->loc = (yyloc);
5093 yyvsp[(2) - (4)].exp->loc.start = (yylsp[(1) - (4)]).end;
5099 yyval.stmt = MkCaseStmt((((void *)0)), yyvsp[(3) - (3)].stmt);
5100 yyval.stmt->loc = (yyloc);
5106 yyval.list = MkList();
5107 ListAdd(yyval.list, yyvsp[(1) - (1)].declaration);
5113 yyval.list = yyvsp[(1) - (2)].list;
5114 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declaration);
5120 yyval.list = MkList();
5121 ListAdd(yyval.list, yyvsp[(1) - (1)].stmt);
5127 yyval.list = yyvsp[(1) - (2)].list;
5128 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].stmt);
5134 struct Statement * stmt = MkBadDeclStmt(yyvsp[(2) - (2)].declaration);
5136 stmt->loc = (yylsp[(2) - (2)]);
5137 ListAdd(yyvsp[(1) - (2)].list, stmt);
5138 yyval.list = yyvsp[(1) - (2)].list;
5144 yyval.stmt = MkCompoundStmt((((void *)0)), yyvsp[(1) - (1)].list);
5150 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (1)].list, (((void *)0)));
5156 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].list);
5162 yyval.context = PushContext();
5168 yyval.stmt = MkCompoundStmt((((void *)0)), (((void *)0)));
5169 yyval.stmt->__anon1.compound.context = PushContext();
5170 PopContext(yyval.stmt->__anon1.compound.context);
5171 yyval.stmt->loc = (yyloc);
5177 yyval.stmt = yyvsp[(2) - (3)].stmt;
5178 yyval.stmt->__anon1.compound.context = yyvsp[(1) - (3)].context;
5179 PopContext(yyvsp[(1) - (3)].context);
5180 yyval.stmt->loc = (yyloc);
5186 yyval.stmt = MkExpressionStmt((((void *)0)));
5187 yyval.stmt->loc = (yyloc);
5193 yyval.stmt = MkExpressionStmt(yyvsp[(1) - (2)].list);
5194 yyval.stmt->loc = (yyloc);
5200 yyval.stmt = MkIfStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt, (((void *)0)));
5201 yyval.stmt->loc = (yyloc);
5207 yyval.stmt = MkIfStmt(yyvsp[(3) - (7)].list, yyvsp[(5) - (7)].stmt, yyvsp[(7) - (7)].stmt);
5208 yyval.stmt->loc = (yyloc);
5214 yyval.stmt = MkSwitchStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5215 yyval.stmt->loc = (yyloc);
5221 yyval.stmt = MkWhileStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5222 yyval.stmt->loc = (yyloc);
5228 yyval.stmt = MkDoWhileStmt(yyvsp[(2) - (7)].stmt, yyvsp[(5) - (7)].list);
5229 yyval.stmt->loc = (yyloc);
5235 yyval.stmt = MkForStmt(yyvsp[(3) - (6)].stmt, yyvsp[(4) - (6)].stmt, (((void *)0)), yyvsp[(6) - (6)].stmt);
5236 yyval.stmt->loc = (yyloc);
5242 yyval.stmt = MkForStmt(yyvsp[(3) - (7)].stmt, yyvsp[(4) - (7)].stmt, yyvsp[(5) - (7)].list, yyvsp[(7) - (7)].stmt);
5243 yyval.stmt->loc = (yyloc);
5249 yyval.stmt = MkWhileStmt((((void *)0)), yyvsp[(4) - (4)].stmt);
5250 yyval.stmt->loc = (yyloc);
5256 yyval.stmt = MkForStmt(yyvsp[(3) - (5)].stmt, (((void *)0)), (((void *)0)), yyvsp[(5) - (5)].stmt);
5257 yyval.stmt->loc = (yyloc);
5263 yyval.stmt = MkForStmt((((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(4) - (4)].stmt);
5264 yyval.stmt->loc = (yyloc);
5270 yyval.stmt = MkGotoStmt(yyvsp[(2) - (3)].id);
5271 yyval.stmt->loc = (yyloc);
5277 yyval.stmt = MkContinueStmt();
5278 yyval.stmt->loc = (yyloc);
5284 yyval.stmt = MkBreakStmt();
5285 yyval.stmt->loc = (yyloc);
5291 struct Expression * exp = MkExpDummy();
5293 yyval.stmt = MkReturnStmt(MkListOne(exp));
5294 yyval.stmt->loc = (yyloc);
5295 exp->loc = (yylsp[(2) - (2)]);
5301 yyval.stmt = MkReturnStmt(yyvsp[(2) - (3)].list);
5302 yyval.stmt->loc = (yyloc);
5308 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
5314 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5315 yyval.instance->loc = (yyloc);
5316 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5317 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5318 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5324 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5325 yyval.instance->loc = (yyloc);
5326 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5327 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5328 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5334 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5335 yyval.instance->loc = (yyloc);
5336 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5337 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5338 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5344 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5345 yyval.instance->loc = (yyloc);
5346 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5347 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5348 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5354 yyval.instance = MkInstantiation(yyvsp[(1) - (4)].specifier, (((void *)0)), yyvsp[(3) - (4)].list);
5355 yyval.instance->loc = (yyloc);
5356 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5357 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5363 yyval.instance = MkInstantiation(yyvsp[(1) - (3)].specifier, (((void *)0)), MkList());
5364 yyval.instance->loc = (yyloc);
5365 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5366 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5372 struct Location tmpLoc = type_yylloc;
5374 type_yylloc = (yylsp[(1) - (4)]);
5375 type_yylloc = tmpLoc;
5376 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (4)].id->string), (((void *)0)), yyvsp[(3) - (4)].list);
5377 yyval.instance->loc = (yyloc);
5378 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5379 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5380 FreeIdentifier(yyvsp[(1) - (4)].id);
5386 struct Location tmpLoc = type_yylloc;
5388 type_yylloc = (yylsp[(1) - (3)]);
5389 type_yylloc = tmpLoc;
5390 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (3)].id->string), (((void *)0)), MkList());
5391 yyval.instance->loc = (yyloc);
5392 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5393 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5394 FreeIdentifier(yyvsp[(1) - (3)].id);
5400 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), yyvsp[(2) - (3)].list);
5401 yyval.instance->loc = (yyloc);
5402 yyval.instance->insideLoc.start = (yylsp[(1) - (3)]).end;
5403 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5409 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), MkList());
5410 yyval.instance->loc = (yyloc);
5411 yyval.instance->insideLoc.start = (yylsp[(1) - (2)]).end;
5412 yyval.instance->insideLoc.end = (yylsp[(2) - (2)]).start;
5418 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5419 yyval.classFunction->loc = (yyloc);
5425 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5426 yyval.classFunction->loc = (yyloc);
5432 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, (((void *)0)));
5433 yyval.classFunction->loc = (yyloc);
5439 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5440 yyval.classFunction->loc = (yyloc);
5446 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5447 yyval.classFunction->loc = (yyloc);
5453 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5454 yyval.classFunction->loc = (yyloc);
5460 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5461 yyval.classFunction->loc = (yyloc);
5467 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5468 yyval.classFunction->loc = (yyloc);
5474 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
5475 yyval.memberInit->loc = (yyloc);
5476 yyval.memberInit->realLoc = (yyloc);
5477 yyval.memberInit->initializer->loc.start = (yylsp[(2) - (3)]).end;
5483 yyval.memberInit = MkMemberInit((((void *)0)), yyvsp[(1) - (1)].initializer);
5484 yyval.memberInit->loc = (yyloc);
5485 yyval.memberInit->realLoc = (yyloc);
5491 yyval.list = MkList();
5492 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
5498 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
5499 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
5500 yyval.list = yyvsp[(1) - (3)].list;
5506 if((*yyvsp[(1) - (2)].list).last)
5507 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).end;
5508 yyval.list = yyvsp[(1) - (2)].list;
5514 struct MembersInit * members = MkMembersInitList(yyvsp[(1) - (1)].list);
5516 yyval.list = MkList();
5517 ListAdd(yyval.list, members);
5518 members->loc = (yylsp[(1) - (1)]);
5524 yyval.list = MkList();
5525 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(1) - (1)].classFunction));
5526 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5532 struct MembersInit * members = MkMembersInitList(yyvsp[(2) - (2)].list);
5534 ListAdd(yyval.list, members);
5535 members->loc = (yylsp[(2) - (2)]);
5536 yyval.list = yyvsp[(1) - (2)].list;
5542 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(2) - (2)].classFunction));
5543 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5544 yyval.list = yyvsp[(1) - (2)].list;
5550 struct MembersInit * members = MkMembersInitList(MkList());
5552 yyval.list = MkList();
5553 ListAdd(yyval.list, members);
5554 members->loc = (yylsp[(1) - (1)]);
5560 struct MembersInit * members = MkMembersInitList(MkList());
5562 ListAdd(yyval.list, members);
5563 members->loc = (yylsp[(2) - (2)]);
5564 yyval.list = yyvsp[(1) - (2)].list;
5570 yyval.list = MkList();
5571 ListAdd(yyval.list, MkMembersInitList(yyvsp[(1) - (1)].list));
5572 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5578 ListAdd(yyvsp[(1) - (2)].list, MkMembersInitList(yyvsp[(2) - (2)].list));
5579 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5585 parsedType = yyvsp[(1) - (1)].typeName;
5591 parsedType = yyvsp[(1) - (3)].typeName;
5592 parsedType->bitCount = yyvsp[(3) - (3)].exp;
5603 fprintf((bsl_stderr()), "%s ", "-> $$ =");
5604 yy_symbol_print((bsl_stderr()), yyr1[yyn], &yyval, &yyloc);
5605 fprintf((bsl_stderr()), "\n");
5608 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5613 yy_stack_print((yyss), (yyssp));
5618 yystate = yypgoto[yyn - 145] + *yyssp;
5619 if(0 <= yystate && yystate <= 9303 && yycheck[yystate] == *yyssp)
5620 yystate = yytable[yystate];
5622 yystate = yydefgoto[yyn - 145];
5628 yyerror("syntax error");
5630 yyerror_range[0] = type_yylloc;
5631 if(yyerrstatus == 3)
5633 if(type_yychar <= 0)
5635 if(type_yychar == 0)
5640 yydestruct("Error: discarding", yytoken, &type_yylval, &type_yylloc);
5648 yyerror_range[0] = yylsp[1 - yylen];
5649 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5654 yy_stack_print((yyss), (yyssp));
5662 yyn = yypact[yystate];
5666 if(0 <= yyn && yyn <= 9303 && yycheck[yyn] == 1)
5675 yyerror_range[0] = *yylsp;
5676 yydestruct("Error: popping", yystos[yystate], yyvsp, yylsp);
5677 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
5682 yy_stack_print((yyss), (yyssp));
5685 *++yyvsp = type_yylval;
5686 yyerror_range[1] = type_yylloc;
5687 (yyloc.start = ((yyerror_range - 1))[1].start);
5688 (yyloc.end = ((yyerror_range - 1))[2].end);
5695 fprintf((bsl_stderr()), "%s ", "Shifting");
5696 yy_symbol_print((bsl_stderr()), yystos[yyn], yyvsp, yylsp);
5697 fprintf((bsl_stderr()), "\n");
5709 yyerror("memory exhausted");
5712 if(type_yychar != (-2))
5713 yydestruct("Cleanup: discarding lookahead", yytoken, &type_yylval, &type_yylloc);
5714 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5718 yy_stack_print((yyss), (yyssp));
5720 while(yyssp != yyss)
5722 yydestruct("Cleanup: popping", yystos[*yyssp], yyvsp, yylsp);
5723 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));