1 /* Code generated from eC source file: expression.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, INT128 = 294, LONG = 295, SIGNED = 296, UNSIGNED = 297, FLOAT = 298, DOUBLE = 299, CONST = 300, VOLATILE = 301, VOID = 302, VALIST = 303, STRUCT = 304, UNION = 305, ENUM = 306, ELLIPSIS = 307, CASE = 308, DEFAULT = 309, IF = 310, SWITCH = 311, WHILE = 312, DO = 313, FOR = 314, GOTO = 315, CONTINUE = 316, BREAK = 317, RETURN = 318, IFX = 319, ELSE = 320, CLASS = 321, THISCLASS = 322, CLASS_NAME = 323, PROPERTY = 324, SETPROP = 325, GETPROP = 326, NEWOP = 327, RENEW = 328, DELETE = 329, EXT_DECL = 330, EXT_STORAGE = 331, IMPORT = 332, DEFINE = 333, VIRTUAL = 334, ATTRIB = 335, PUBLIC = 336, PRIVATE = 337, TYPED_OBJECT = 338, ANY_OBJECT = 339, _INCREF = 340, EXTENSION = 341, ASM = 342, TYPEOF = 343, WATCH = 344, STOPWATCHING = 345, FIREWATCHERS = 346, WATCHABLE = 347, CLASS_DESIGNER = 348, CLASS_NO_EXPANSION = 349, CLASS_FIXED = 350, ISPROPSET = 351, CLASS_DEFAULT_PROPERTY = 352, PROPERTY_CATEGORY = 353, CLASS_DATA = 354, CLASS_PROPERTY = 355, SUBCLASS = 356, NAMESPACE = 357, NEW0OP = 358, RENEW0 = 359, VAARG = 360, DBTABLE = 361, DBFIELD = 362, DBINDEX = 363, DATABASE_OPEN = 364, ALIGNOF = 365, ATTRIB_DEP = 366, __ATTRIB = 367, BOOL = 368, _BOOL = 369, _COMPLEX = 370, _IMAGINARY = 371, RESTRICT = 372, THREAD = 373, WIDE_STRING_LITERAL = 374, BUILTIN_OFFSETOF = 375
63 typedef unsigned char yytype_uint8;
65 typedef signed char yytype_int8;
67 typedef unsigned short int yytype_uint16;
69 typedef short int yytype_int16;
71 void * malloc(size_t);
75 static const yytype_uint8 yytranslate[] =
77 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 133, 2, 2, 123, 135, 128, 2, 121, 122, 129, 130, 127, 131, 124, 134, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 141, 143, 136, 142, 137, 140, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 125, 2, 126, 138, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 144, 139, 145, 132, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 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, 120
80 static const yytype_uint16 yyprhs[] =
82 0, 0, 3, 5, 7, 11, 13, 15, 17, 19, 21, 24, 29, 32, 39, 45, 52, 58, 66, 73, 81, 88, 90, 92, 94, 99, 103, 108, 112, 115, 119, 122, 125, 127, 129, 133, 137, 140, 143, 146, 149, 154, 157, 162, 164, 166, 168, 170, 172, 174, 176, 178, 180, 182, 187, 189, 193, 197, 201, 203, 207, 211, 213, 217, 221, 223, 227, 231, 235, 239, 241, 245, 249, 251, 255, 257, 261, 263, 267, 269, 273, 275, 279, 281, 287, 289, 293, 297, 301, 305, 307, 309, 311, 313, 315, 317, 319, 321, 323, 325, 327, 329, 333, 335, 338, 342, 345, 351, 353, 356, 358, 361, 363, 366, 368, 371, 373, 376, 378, 381, 383, 386, 388, 391, 393, 396, 398, 401, 403, 406, 408, 411, 413, 416, 418, 421, 423, 426, 428, 431, 433, 436, 438, 441, 443, 447, 449, 453, 455, 457, 459, 461, 463, 465, 467, 469, 471, 473, 475, 477, 479, 481, 483, 485, 487, 492, 494, 497, 501, 508, 514, 516, 518, 520, 522, 524, 526, 528, 530, 532, 534, 536, 538, 540, 542, 544, 546, 548, 550, 552, 554, 556, 558, 560, 562, 567, 569, 571, 573, 575, 577, 579, 581, 583, 585, 587, 589, 591, 593, 595, 597, 599, 601, 603, 605, 610, 612, 618, 623, 628, 632, 638, 645, 651, 657, 662, 669, 672, 675, 679, 683, 685, 687, 689, 692, 696, 698, 702, 712, 722, 730, 738, 744, 755, 766, 775, 784, 791, 800, 809, 816, 823, 828, 838, 848, 856, 864, 870, 874, 877, 880, 883, 885, 888, 890, 892, 894, 898, 900, 903, 906, 910, 916, 919, 922, 927, 933, 941, 949, 955, 957, 961, 963, 967, 971, 974, 978, 982, 986, 991, 996, 999, 1003, 1007, 1012, 1016, 1019, 1023, 1027, 1032, 1034, 1036, 1039, 1042, 1045, 1049, 1051, 1053, 1056, 1059, 1062, 1066, 1068, 1071, 1075, 1077, 1081, 1086, 1090, 1095, 1097, 1100, 1103, 1107, 1111, 1113, 1115, 1118, 1121, 1124, 1128, 1132, 1135, 1137, 1140, 1142, 1145, 1148, 1152, 1154, 1158, 1160, 1164, 1167, 1170, 1172, 1174, 1178, 1180, 1183, 1185, 1189, 1194, 1196, 1198, 1200, 1204, 1206, 1208, 1210, 1212, 1214, 1216, 1220, 1225, 1229, 1231, 1234, 1236, 1239, 1242, 1244, 1246, 1249, 1251, 1254, 1258, 1260, 1263, 1269, 1277, 1283, 1289, 1297, 1304, 1312, 1317, 1323, 1328, 1332, 1335, 1338, 1341, 1345, 1347, 1353, 1358, 1363, 1367, 1372, 1376, 1380, 1383, 1386, 1388, 1392, 1397, 1401, 1404, 1407, 1410, 1413, 1416, 1419, 1422, 1425, 1429, 1431, 1433, 1437, 1440, 1442, 1444, 1447, 1450, 1452, 1455, 1457, 1459, 1462
85 static const yytype_int16 yyrhs[] =
87 252, 0, -1, 3, -1, 149, -1, 121, 170, 122, -1, 147, -1, 238, -1, 4, -1, 119, -1, 236, -1, 123, 236, -1, 123, 236, 124, 236, -1, 121, 122, -1, 72, 174, 208, 125, 171, 126, -1, 72, 174, 125, 171, 126, -1, 103, 174, 208, 125, 171, 126, -1, 103, 174, 125, 171, 126, -1, 73, 171, 176, 208, 125, 171, 126, -1, 73, 171, 176, 125, 171, 126, -1, 104, 171, 176, 208, 125, 171, 126, -1, 104, 171, 176, 125, 171, 126, -1, 1, -1, 239, -1, 148, -1, 151, 125, 170, 126, -1, 151, 121, 122, -1, 151, 121, 152, 122, -1, 151, 124, 147, -1, 151, 147, -1, 151, 7, 147, -1, 151, 8, -1, 151, 9, -1, 168, -1, 150, -1, 152, 127, 168, -1, 152, 127, 150, -1, 8, 154, -1, 9, 154, -1, 155, 156, -1, 6, 154, -1, 6, 121, 221, 122, -1, 110, 154, -1, 110, 121, 221, 122, -1, 153, -1, 151, -1, 128, -1, 129, -1, 130, -1, 131, -1, 132, -1, 133, -1, 74, -1, 154, -1, 121, 221, 122, 156, -1, 156, -1, 157, 129, 156, -1, 157, 134, 156, -1, 157, 135, 156, -1, 157, -1, 158, 130, 157, -1, 158, 131, 157, -1, 158, -1, 159, 10, 158, -1, 159, 11, 158, -1, 159, -1, 160, 136, 159, -1, 160, 137, 159, -1, 160, 12, 159, -1, 160, 13, 159, -1, 160, -1, 161, 14, 160, -1, 161, 15, 160, -1, 161, -1, 162, 128, 161, -1, 162, -1, 163, 138, 162, -1, 163, -1, 164, 139, 163, -1, 164, -1, 165, 16, 164, -1, 165, -1, 166, 17, 165, -1, 166, -1, 166, 140, 170, 141, 167, -1, 167, -1, 154, 169, 168, -1, 167, 169, 168, -1, 154, 169, 150, -1, 167, 169, 150, -1, 142, -1, 18, -1, 19, -1, 20, -1, 21, -1, 22, -1, 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, 168, -1, 170, 127, 168, -1, 167, -1, 174, 143, -1, 174, 177, 143, -1, 237, 143, -1, 78, 147, 142, 171, 143, -1, 186, -1, 173, 186, -1, 189, -1, 173, 189, -1, 202, -1, 173, 202, -1, 191, -1, 173, 191, -1, 179, -1, 174, 179, -1, 186, -1, 174, 186, -1, 189, -1, 174, 189, -1, 202, -1, 174, 202, -1, 191, -1, 174, 191, -1, 179, -1, 175, 179, -1, 186, -1, 175, 186, -1, 189, -1, 175, 189, -1, 187, -1, 175, 187, -1, 179, -1, 176, 179, -1, 186, -1, 176, 186, -1, 190, -1, 176, 190, -1, 191, -1, 176, 191, -1, 202, -1, 176, 202, -1, 178, -1, 177, 127, 178, -1, 209, -1, 209, 142, 222, -1, 29, -1, 30, -1, 31, -1, 32, -1, 33, -1, 118, -1, 75, -1, 185, -1, 80, -1, 111, -1, 112, -1, 3, -1, 28, -1, 76, -1, 75, -1, 45, -1, 182, -1, 182, 121, 170, 122, -1, 183, -1, 184, 183, -1, 184, 127, 183, -1, 181, 121, 121, 184, 122, 122, -1, 181, 121, 121, 122, 122, -1, 45, -1, 46, -1, 76, -1, 188, -1, 28, -1, 47, -1, 34, -1, 35, -1, 36, -1, 37, -1, 38, -1, 39, -1, 48, -1, 40, -1, 43, -1, 44, -1, 41, -1, 42, -1, 86, -1, 114, -1, 113, -1, 192, -1, 201, -1, 187, -1, 101, 121, 187, 122, -1, 67, -1, 47, -1, 34, -1, 35, -1, 36, -1, 37, -1, 38, -1, 39, -1, 48, -1, 40, -1, 43, -1, 44, -1, 41, -1, 42, -1, 114, -1, 113, -1, 192, -1, 201, -1, 188, -1, 101, 121, 187, 122, -1, 67, -1, 193, 147, 144, 194, 145, -1, 193, 144, 194, 145, -1, 193, 147, 144, 145, -1, 193, 144, 145, -1, 193, 188, 144, 194, 145, -1, 193, 180, 147, 144, 194, 145, -1, 193, 180, 144, 194, 145, -1, 193, 180, 147, 144, 145, -1, 193, 180, 144, 145, -1, 193, 180, 188, 144, 194, 145, -1, 193, 147, -1, 193, 188, -1, 193, 180, 147, -1, 193, 180, 188, -1, 49, -1, 50, -1, 198, -1, 194, 198, -1, 151, 142, 223, -1, 195, -1, 196, 127, 195, -1, 69, 175, 147, 144, 70, 231, 71, 231, 145, -1, 69, 175, 147, 144, 71, 231, 70, 231, 145, -1, 69, 175, 147, 144, 70, 231, 145, -1, 69, 175, 147, 144, 71, 231, 145, -1, 69, 175, 147, 144, 145, -1, 69, 175, 207, 147, 144, 70, 231, 71, 231, 145, -1, 69, 175, 207, 147, 144, 71, 231, 70, 231, 145, -1, 69, 175, 207, 147, 144, 70, 231, 145, -1, 69, 175, 207, 147, 144, 71, 231, 145, -1, 69, 175, 207, 147, 144, 145, -1, 69, 175, 144, 70, 231, 71, 231, 145, -1, 69, 175, 144, 71, 231, 70, 231, 145, -1, 69, 175, 144, 70, 231, 145, -1, 69, 175, 144, 71, 231, 145, -1, 69, 175, 144, 145, -1, 69, 175, 207, 144, 70, 231, 71, 231, 145, -1, 69, 175, 207, 144, 71, 231, 70, 231, 145, -1, 69, 175, 207, 144, 70, 231, 145, -1, 69, 175, 207, 144, 71, 231, 145, -1, 69, 175, 207, 144, 145, -1, 174, 199, 143, -1, 174, 143, -1, 238, 143, -1, 237, 143, -1, 244, -1, 196, 143, -1, 197, -1, 143, -1, 200, -1, 199, 127, 200, -1, 209, -1, 209, 185, -1, 141, 171, -1, 209, 141, 171, -1, 209, 141, 171, 141, 171, -1, 51, 147, -1, 51, 188, -1, 51, 144, 203, 145, -1, 51, 147, 144, 203, 145, -1, 51, 147, 144, 203, 143, 194, 145, -1, 51, 188, 144, 203, 143, 194, 145, -1, 51, 188, 144, 203, 145, -1, 204, -1, 203, 127, 204, -1, 147, -1, 147, 142, 171, -1, 121, 207, 122, -1, 125, 126, -1, 125, 171, 126, -1, 125, 187, 126, -1, 205, 125, 126, -1, 205, 125, 171, 126, -1, 205, 125, 187, 126, -1, 121, 122, -1, 121, 217, 122, -1, 205, 121, 122, -1, 205, 121, 217, 122, -1, 121, 208, 122, -1, 121, 122, -1, 121, 217, 122, -1, 206, 121, 122, -1, 206, 121, 217, 122, -1, 216, -1, 205, -1, 216, 205, -1, 180, 216, -1, 180, 205, -1, 180, 216, 205, -1, 216, -1, 206, -1, 216, 206, -1, 180, 216, -1, 180, 206, -1, 180, 216, 206, -1, 212, -1, 216, 212, -1, 180, 216, 212, -1, 147, -1, 121, 209, 122, -1, 210, 125, 171, 126, -1, 210, 125, 126, -1, 210, 125, 187, 126, -1, 214, -1, 216, 214, -1, 180, 214, -1, 180, 216, 214, -1, 216, 180, 214, -1, 214, -1, 210, -1, 180, 214, -1, 180, 210, -1, 210, 121, -1, 213, 217, 122, -1, 213, 220, 122, -1, 213, 122, -1, 186, -1, 215, 186, -1, 129, -1, 129, 215, -1, 129, 216, -1, 129, 215, 216, -1, 218, -1, 218, 127, 52, -1, 219, -1, 218, 127, 219, -1, 174, 209, -1, 174, 207, -1, 174, -1, 147, -1, 220, 127, 147, -1, 173, -1, 173, 207, -1, 168, -1, 144, 224, 145, -1, 144, 224, 127, 145, -1, 167, -1, 150, -1, 222, -1, 224, 127, 222, -1, 226, -1, 231, -1, 232, -1, 233, -1, 234, -1, 235, -1, 147, 141, 225, -1, 53, 171, 141, 225, -1, 54, 141, 225, -1, 172, -1, 227, 172, -1, 225, -1, 228, 225, -1, 228, 172, -1, 228, -1, 227, -1, 227, 228, -1, 144, -1, 144, 145, -1, 230, 229, 145, -1, 143, -1, 170, 143, -1, 55, 121, 170, 122, 225, -1, 55, 121, 170, 122, 225, 65, 225, -1, 56, 121, 170, 122, 225, -1, 57, 121, 170, 122, 225, -1, 58, 225, 57, 121, 170, 122, 143, -1, 59, 121, 232, 232, 122, 225, -1, 59, 121, 232, 232, 170, 122, 225, -1, 57, 121, 122, 225, -1, 59, 121, 232, 122, 225, -1, 59, 121, 122, 225, -1, 60, 147, 143, -1, 61, 143, -1, 62, 143, -1, 63, 143, -1, 63, 170, 143, -1, 5, -1, 174, 147, 144, 251, 145, -1, 174, 147, 144, 145, -1, 187, 144, 251, 145, -1, 187, 144, 145, -1, 147, 144, 251, 145, -1, 147, 144, 145, -1, 144, 251, 145, -1, 144, 145, -1, 174, 211, -1, 211, -1, 174, 121, 122, -1, 132, 174, 121, 122, -1, 79, 174, 211, -1, 79, 211, -1, 240, 231, -1, 243, 231, -1, 243, 143, -1, 241, 231, -1, 242, 231, -1, 174, 211, -1, 245, 231, -1, 151, 142, 223, -1, 223, -1, 247, -1, 248, 127, 247, -1, 248, 143, -1, 249, -1, 246, -1, 250, 249, -1, 250, 246, -1, 143, -1, 250, 143, -1, 250, -1, 248, -1, 250, 248, -1, 168, -1
90 static const yytype_uint16 yyrline[] =
92 0, 216, 216, 221, 222, 227, 229, 231, 233, 234, 236, 237, 238, 241, 242, 243, 244, 245, 246, 247, 248, 249, 253, 257, 258, 259, 260, 261, 262, 275, 276, 277, 307, 308, 309, 310, 314, 315, 316, 319, 320, 323, 324, 328, 329, 338, 339, 340, 341, 342, 343, 344, 348, 349, 353, 354, 355, 356, 360, 361, 362, 366, 367, 368, 372, 373, 374, 375, 376, 380, 381, 382, 386, 387, 391, 392, 396, 397, 401, 402, 406, 407, 411, 412, 416, 417, 418, 420, 421, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 439, 440, 444, 448, 449, 450, 451, 455, 456, 457, 458, 459, 460, 461, 462, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 480, 481, 482, 483, 484, 485, 486, 487, 491, 492, 493, 494, 495, 496, 497, 498, 499, 500, 504, 505, 509, 510, 514, 515, 516, 517, 518, 519, 523, 524, 528, 529, 530, 535, 536, 537, 538, 539, 543, 544, 548, 549, 550, 554, 555, 559, 560, 561, 565, 590, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 642, 643, 644, 645, 646, 649, 650, 651, 652, 653, 658, 659, 662, 664, 669, 670, 674, 675, 679, 683, 684, 688, 690, 692, 694, 696, 699, 701, 703, 705, 707, 710, 712, 714, 716, 718, 721, 723, 725, 727, 729, 734, 735, 736, 737, 738, 739, 740, 741, 745, 747, 752, 754, 756, 758, 760, 765, 766, 770, 772, 773, 774, 775, 779, 781, 786, 788, 794, 796, 798, 800, 802, 804, 806, 808, 810, 812, 814, 819, 821, 823, 825, 827, 832, 833, 834, 835, 836, 837, 841, 842, 843, 844, 845, 846, 892, 893, 895, 901, 903, 905, 907, 909, 914, 915, 918, 920, 922, 928, 929, 930, 932, 937, 941, 943, 945, 950, 951, 955, 956, 957, 958, 962, 963, 967, 968, 972, 973, 974, 978, 979, 983, 984, 993, 995, 997, 1013, 1014, 1035, 1037, 1042, 1043, 1044, 1045, 1046, 1047, 1051, 1053, 1055, 1060, 1061, 1065, 1066, 1069, 1073, 1074, 1075, 1079, 1083, 1091, 1096, 1097, 1101, 1102, 1103, 1107, 1108, 1109, 1110, 1112, 1113, 1114, 1118, 1119, 1120, 1121, 1122, 1126, 1130, 1132, 1137, 1139, 1141, 1143, 1148, 1150, 1155, 1157, 1162, 1167, 1172, 1174, 1179, 1181, 1183, 1185, 1187, 1193, 1198, 1203, 1204, 1208, 1210, 1215, 1220, 1221, 1222, 1223, 1224, 1225, 1229, 1230, 1231, 1235
95 static const char * const yytname[] =
97 "$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", "INT128", "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", "identifier", "primary_expression", "simple_primary_expression", "anon_instantiation_expression", "postfix_expression", "argument_expression_list", "common_unary_expression", "unary_expression", "unary_operator", "cast_expression", "multiplicative_expression", "additive_expression", "shift_expression", "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", "declaration_specifiers", "property_specifiers", "renew_specifiers", "init_declarator_list", "init_declarator", "storage_class_specifier", "ext_decl", "_attrib", "attribute_word", "attribute", "attribs_list", "attrib", "type_qualifier", "type", "strict_type", "type_specifier", "strict_type_specifier", "struct_or_union_specifier_compound", "struct_or_union_specifier_nocompound", "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", "direct_declarator_function_start", "direct_declarator_function", "type_qualifier_list", "pointer", "parameter_type_list", "parameter_list", "parameter_declaration", "identifier_list", "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", "instantiation_unnamed", "instantiation_anon", "class_function_definition_start", "constructor_function_definition_start", "destructor_function_definition_start", "virtual_class_function_definition_start", "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", "expression_unit", 0
100 static const yytype_uint8 yyr1[] =
102 0, 146, 147, 148, 148, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, 150, 151, 151, 151, 151, 151, 151, 151, 151, 151, 152, 152, 152, 152, 153, 153, 153, 153, 153, 153, 153, 154, 154, 155, 155, 155, 155, 155, 155, 155, 156, 156, 157, 157, 157, 157, 158, 158, 158, 159, 159, 159, 160, 160, 160, 160, 160, 161, 161, 161, 162, 162, 163, 163, 164, 164, 165, 165, 166, 166, 167, 167, 168, 168, 168, 168, 168, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, 170, 170, 171, 172, 172, 172, 172, 173, 173, 173, 173, 173, 173, 173, 173, 174, 174, 174, 174, 174, 174, 174, 174, 174, 174, 175, 175, 175, 175, 175, 175, 175, 175, 176, 176, 176, 176, 176, 176, 176, 176, 176, 176, 177, 177, 178, 178, 179, 179, 179, 179, 179, 179, 180, 180, 181, 181, 181, 182, 182, 182, 182, 182, 183, 183, 184, 184, 184, 185, 185, 186, 186, 186, 187, 188, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 189, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, 191, 191, 191, 191, 191, 191, 191, 191, 191, 191, 192, 192, 192, 192, 193, 193, 194, 194, 195, 196, 196, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 197, 198, 198, 198, 198, 198, 198, 198, 198, 199, 199, 200, 200, 200, 200, 200, 201, 201, 202, 202, 202, 202, 202, 203, 203, 204, 204, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 205, 206, 206, 206, 206, 206, 207, 207, 207, 207, 207, 207, 208, 208, 208, 208, 208, 208, 209, 209, 209, 210, 210, 210, 210, 210, 211, 211, 211, 211, 211, 212, 212, 212, 212, 213, 214, 214, 214, 215, 215, 216, 216, 216, 216, 217, 217, 218, 218, 219, 219, 219, 220, 220, 221, 221, 222, 222, 222, 223, 223, 224, 224, 225, 225, 225, 225, 225, 225, 226, 226, 226, 227, 227, 228, 228, 228, 229, 229, 229, 230, 231, 231, 232, 232, 233, 233, 233, 234, 234, 234, 234, 234, 234, 234, 235, 235, 235, 235, 235, 236, 237, 237, 238, 238, 238, 238, 239, 239, 240, 240, 241, 242, 243, 243, 244, 244, 244, 244, 244, 245, 246, 247, 247, 248, 248, 249, 250, 250, 250, 250, 250, 250, 251, 251, 251, 252
105 static const yytype_uint8 yyr2[] =
107 0, 2, 1, 1, 3, 1, 1, 1, 1, 1, 2, 4, 2, 6, 5, 6, 5, 7, 6, 7, 6, 1, 1, 1, 4, 3, 4, 3, 2, 3, 2, 2, 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, 1, 3, 3, 3, 3, 1, 3, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 5, 1, 3, 3, 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, 3, 1, 3, 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, 1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 5, 4, 4, 3, 5, 6, 5, 5, 4, 6, 2, 2, 3, 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, 1, 3, 4, 3, 4, 1, 2, 2, 3, 3, 1, 1, 2, 2, 2, 3, 3, 2, 1, 2, 1, 2, 2, 3, 1, 3, 1, 3, 2, 2, 1, 1, 3, 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, 4, 3, 4, 3, 3, 2, 2, 1, 3, 4, 3, 2, 2, 2, 2, 2, 2, 2, 2, 3, 1, 1, 3, 2, 1, 1, 2, 2, 1, 2, 1, 1, 2, 1
110 static const yytype_uint16 yydefact[] =
112 0, 21, 2, 7, 393, 0, 0, 0, 174, 0, 0, 51, 0, 0, 0, 8, 0, 0, 45, 46, 47, 48, 49, 50, 5, 23, 3, 44, 43, 52, 0, 54, 58, 61, 64, 69, 72, 74, 76, 78, 80, 82, 84, 429, 0, 173, 9, 6, 0, 0, 39, 0, 36, 37, 147, 148, 149, 150, 151, 176, 177, 178, 179, 180, 181, 183, 186, 187, 184, 185, 170, 171, 175, 182, 230, 231, 0, 195, 172, 188, 0, 190, 189, 152, 0, 115, 117, 193, 119, 123, 191, 0, 192, 121, 52, 102, 0, 0, 0, 0, 41, 12, 100, 0, 347, 107, 193, 109, 113, 111, 0, 10, 0, 0, 30, 31, 0, 0, 0, 28, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 89, 0, 38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 272, 273, 0, 153, 155, 156, 157, 0, 0, 334, 116, 0, 0, 154, 118, 120, 124, 122, 306, 0, 305, 0, 226, 0, 227, 197, 198, 199, 200, 201, 202, 204, 207, 208, 205, 206, 196, 203, 215, 0, 210, 209, 0, 133, 135, 213, 137, 139, 211, 212, 141, 0, 0, 0, 0, 4, 0, 0, 0, 0, 108, 110, 114, 112, 300, 348, 299, 0, 0, 424, 0, 399, 353, 44, 352, 0, 416, 22, 0, 421, 417, 427, 420, 0, 0, 29, 25, 33, 0, 32, 27, 0, 87, 85, 55, 56, 57, 59, 60, 62, 63, 67, 68, 65, 66, 70, 71, 73, 75, 77, 79, 81, 0, 88, 86, 397, 0, 40, 281, 0, 279, 0, 0, 0, 295, 344, 0, 0, 338, 340, 0, 332, 335, 336, 309, 308, 0, 0, 0, 307, 0, 0, 0, 0, 264, 219, 5, 0, 0, 0, 0, 235, 0, 263, 232, 0, 403, 0, 319, 0, 0, 6, 0, 0, 0, 0, 261, 0, 0, 228, 229, 0, 0, 0, 134, 136, 138, 140, 142, 0, 0, 0, 0, 0, 42, 101, 290, 0, 0, 284, 0, 0, 303, 302, 0, 0, 301, 53, 11, 401, 0, 0, 0, 314, 413, 373, 0, 414, 0, 419, 425, 423, 428, 422, 398, 26, 0, 24, 0, 396, 0, 0, 274, 0, 0, 194, 0, 0, 343, 342, 325, 311, 324, 299, 294, 296, 0, 14, 333, 337, 310, 0, 297, 0, 0, 0, 0, 125, 127, 131, 129, 0, 0, 407, 0, 46, 0, 0, 0, 0, 0, 0, 0, 258, 314, 0, 0, 265, 267, 402, 324, 0, 321, 0, 217, 233, 0, 262, 328, 0, 331, 345, 0, 0, 0, 320, 260, 259, 408, 411, 412, 410, 409, 218, 0, 224, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 283, 291, 285, 286, 304, 292, 0, 287, 0, 0, 400, 415, 374, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 376, 5, 0, 365, 0, 367, 356, 0, 0, 0, 357, 358, 359, 360, 361, 0, 418, 35, 34, 83, 282, 280, 0, 275, 0, 278, 327, 326, 302, 0, 312, 339, 341, 158, 159, 162, 161, 160, 0, 163, 165, 0, 298, 13, 272, 273, 0, 0, 126, 128, 132, 130, 0, 226, 0, 227, 406, 0, 315, 0, 234, 404, 269, 0, 326, 0, 0, 257, 0, 268, 0, 324, 322, 236, 317, 0, 0, 329, 330, 0, 323, 216, 222, 223, 0, 0, 220, 214, 18, 0, 15, 20, 0, 293, 288, 289, 0, 0, 0, 0, 0, 0, 0, 0, 389, 390, 391, 0, 0, 0, 377, 103, 0, 143, 145, 366, 0, 369, 368, 375, 105, 0, 0, 313, 169, 0, 0, 0, 166, 0, 0, 251, 0, 0, 0, 228, 229, 405, 395, 0, 324, 266, 270, 326, 316, 318, 346, 221, 225, 17, 19, 0, 364, 0, 0, 0, 0, 0, 0, 0, 388, 392, 0, 362, 0, 104, 0, 276, 277, 0, 168, 167, 0, 0, 0, 0, 241, 0, 0, 256, 0, 394, 0, 363, 0, 0, 385, 0, 0, 387, 0, 0, 0, 144, 0, 349, 146, 164, 0, 249, 0, 250, 0, 0, 0, 0, 0, 0, 246, 271, 378, 380, 381, 0, 386, 0, 0, 106, 354, 0, 0, 0, 0, 239, 0, 240, 0, 254, 0, 255, 0, 0, 0, 0, 383, 0, 0, 350, 247, 248, 0, 0, 0, 0, 0, 244, 0, 245, 379, 382, 384, 351, 355, 237, 238, 252, 253, 0, 0, 242, 243
115 static const yytype_int16 yydefgoto[] =
117 -1, 24, 25, 26, 229, 27, 245, 28, 94, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 102, 131, 491, 96, 606, 104, 305, 403, 199, 601, 602, 85, 306, 169, 528, 529, 530, 170, 86, 44, 45, 88, 203, 89, 90, 91, 307, 308, 309, 310, 311, 423, 424, 92, 93, 276, 277, 221, 175, 344, 176, 414, 312, 313, 388, 314, 315, 289, 316, 345, 285, 286, 440, 110, 685, 233, 708, 494, 495, 496, 497, 498, 363, 499, 500, 501, 502, 503, 46, 317, 47, 234, 319, 320, 321, 322, 323, 235, 236, 237, 238, 239, 240, 241, 48
120 static const yytype_int16 yypact[] =
122 5725, -629, -629, -629, -629, 5765, 5799, 5799, -629, 7463, 5725, -629, 7463, 5725, 5873, -629, 5299, 69, -629, -629, -629, -629, -629, -629, -51, -629, -629, 335, -629, 558, 5725, -629, 278, 160, 293, 60, 308, -45, -38, 20, 105, 41, 558, -629, 66, -629, -629, -629, 193, 5299, -629, 5435, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, 33, -629, -629, -629, 91, -629, -629, -629, 6482, -629, -629, -629, -629, -629, -629, 64, -629, -629, -629, -629, 7645, 6584, 7645, 5299, -629, -629, -629, -20, 6986, -629, 66, -629, -629, -629, 97, 139, 2066, 277, -629, -629, 4411, 277, 5725, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, 1054, -629, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 5725, 1054, 2199, -629, 114, 277, 192, 222, 325, -629, -629, -629, -629, 6686, 5725, 14, -629, 5, 256, -629, -629, -629, -629, -629, 264, 262, 275, 2719, 250, 47, 306, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, 347, -629, -629, 6788, -629, -629, -629, -629, -629, -629, -629, -629, 5725, 332, 6890, 339, -629, 5725, 6380, 5509, 324, -629, -629, -629, -629, 190, -629, 208, 5725, 69, -629, 2332, -629, -629, 103, -629, 6183, -629, -629, 330, -629, -629, -49, -629, 2465, 341, -629, -629, -629, 107, -629, -629, 228, -629, -629, -629, -629, -629, 278, 278, 160, 160, 293, 293, 293, 293, 60, 60, 308, -45, -38, 20, 105, -61, -629, -629, -629, 353, -629, 359, -18, -629, 277, 277, 370, -629, 6081, 382, 383, 379, -629, 384, -629, 14, -629, 264, 275, 387, 7088, 5725, 264, 7554, 6183, 5373, 7463, -629, -629, -51, 244, 4931, 49, 2840, -629, 121, -629, -629, 300, -629, 6285, -629, 444, 373, 374, 330, 330, 330, 271, -629, 2961, 3082, 377, 390, 4567, 325, 5725, -629, -629, -629, -629, -629, 393, 400, 5725, 5725, 402, -629, -629, -629, 414, 415, -629, 412, 100, 190, 208, 7183, 5543, 190, -629, -629, -629, 394, 1054, 120, -629, -629, 395, 4236, -629, 1054, -629, -629, -629, -49, -629, -629, -629, 1054, -629, 5725, -629, 5725, 277, -629, 112, 233, -629, 5979, 147, -629, -629, 300, -629, -629, 693, -629, -629, 7372, -629, -629, -629, 264, 361, -629, 419, 416, 92, 4814, -629, -629, -629, -629, 259, 6183, -629, 5166, 220, 49, 421, 444, 7278, 1054, 206, 5725, -629, 404, 49, 132, -629, 281, -629, 406, 444, -629, 19, -629, -629, 1097, -629, -629, 5583, -629, -629, 424, 111, 19, -629, -629, -629, -629, -629, -629, -629, -629, -629, 3203, -629, 3324, 3445, 4567, 3566, 430, 428, 5725, -629, 431, 432, 5725, -629, -629, -629, -629, 190, -629, 438, -629, 437, 144, -629, -629, -629, 5725, 426, 449, 451, 469, 4369, 473, 277, 452, 453, 4697, 277, -629, 307, 151, -629, 5047, -629, -629, 1667, 1800, 454, -629, -629, -629, -629, -629, 458, -629, -629, -629, -629, -629, -629, 4567, -629, 4567, -629, 300, -629, 693, 19, -629, -629, -629, -629, -629, -629, -629, -629, 475, 481, -629, 688, -629, -629, -629, -629, -40, 459, -629, -629, -629, -629, 18, -629, 92, -629, -629, 444, -629, 484, -629, -629, -629, 2598, 466, 444, 323, -629, 5725, -629, 19, 471, -629, -629, -629, 487, 145, -629, -629, 277, -629, -629, -629, -629, 3687, 3808, -629, -629, -629, 491, -629, -629, 493, -629, -629, -629, 482, 4369, 5725, 5725, 5617, 565, 4620, 483, -629, -629, -629, 197, 488, 4369, -629, -629, 198, -629, 489, -629, 1933, -629, -629, -629, -629, 3929, 4050, -629, -629, 5725, 502, 517, -629, 330, 330, -629, -26, 203, 485, -629, -629, -629, -629, 496, 494, -629, 501, 505, -629, -629, -629, -629, -629, -629, -629, 4369, -629, 235, 273, 4369, 301, 511, 4369, 4654, -629, -629, 5725, -629, 120, -629, 4446, -629, -629, 336, -629, -629, -42, -37, 330, 330, -629, 330, 330, -629, 227, -629, 5725, -629, 4369, 4369, -629, 4369, 5725, -629, 4369, 5691, 507, -629, 4446, -629, -629, -629, 330, -629, 330, -629, -7, -23, 44, 28, 330, 330, -629, -629, 586, -629, -629, 340, -629, 4369, 350, -629, -629, 174, 514, 515, 330, -629, 330, -629, 330, -629, 330, -629, 62, 54, 4369, 518, -629, 4369, 4103, -629, -629, -629, 519, 520, 522, 523, 330, -629, 330, -629, -629, -629, -629, -629, -629, -629, -629, -629, -629, 524, 525, -629, -629
125 static const yytype_int16 yypgoto[] =
127 -629, 329, -629, -629, -112, 932, -629, -629, 0, -629, 13, 303, 337, 338, 345, 516, 528, 533, 536, 521, -629, 52, 1, 630, -14, 7, -329, -629, 16, -629, 584, -629, 34, -28, 862, -629, -629, -503, -629, 261, 1150, 740, -50, 119, 36, 209, -12, -274, -271, 257, -629, -629, -290, -629, 134, -9, 334, 216, 315, -205, -86, -94, -85, -273, 1110, -217, -352, -629, 1038, -629, 920, -140, -629, 302, -629, 87, -628, -316, -629, 155, -629, -629, 201, -629, -629, -164, -552, -629, -629, -629, -4, -355, 468, -629, -629, -629, -629, -629, -629, -629, 461, 333, 465, 470, -629, -150, -629
130 static const yytype_int16 yytable[] =
132 29, 43, 103, 273, 244, 50, 52, 53, 504, 386, 222, 349, 209, 111, 100, 361, 29, 432, 353, 249, 98, 2, 2, 408, 284, 84, 158, 617, 97, 687, 618, 619, 425, 689, 492, 103, 2, 103, 519, 648, 270, 181, 475, 132, 663, 664, 202, 713, 202, 29, 2, 29, 2, 451, 453, 707, 167, 456, 150, 70, 71, 8, 95, 519, 711, 95, 213, 2, 200, 167, 200, 364, 140, 141, 4, 8, 519, 357, 365, 283, 375, 410, 291, 146, 205, 103, 205, 206, 426, 206, 78, 296, 8, 112, 366, 2, 680, 741, 717, 29, 147, 549, 212, 688, 248, 620, 2, 213, 690, 378, 113, 114, 115, 660, 336, 715, 29, 246, 29, 665, 8, 149, 714, 2, 735, 340, 164, 379, 232, 408, 327, 29, 250, 733, 166, 107, 155, 269, 712, 160, 359, 504, 504, 166, 161, 468, 251, 252, 253, 202, 2, 29, 29, 271, 400, 445, 446, 447, 449, 148, 202, 432, 622, 432, 231, 612, 432, 604, 107, 232, 359, 331, 287, 718, 439, 162, 163, 156, 166, 349, 282, 151, 331, 573, 574, 353, 211, 205, 385, 716, 206, 325, 545, 154, 612, 160, 142, 143, 205, 736, 161, 206, 612, 172, 167, 231, 397, 734, 178, 2, 153, 470, 159, 29, 342, 337, 172, 95, 107, 224, 603, 355, 347, 218, 116, 108, 467, 117, 118, 372, 282, 162, 163, 567, 373, 333, 274, 354, 568, 378, 610, 359, 611, 232, 153, 358, 333, 2, 433, 166, 504, 113, 114, 115, 167, 511, 232, 512, 108, 555, 95, 506, 2, 225, 434, 70, 71, 95, 383, 404, 584, 634, 215, 666, 667, 556, 166, 167, 213, 231, 2, 160, 425, 432, 432, 103, 161, 8, 153, 153, 136, 137, 231, 173, 599, -334, 78, 695, 696, 29, -334, 725, 401, 138, 139, 204, 173, 204, 108, 541, 282, 351, 468, 219, 409, 352, 416, 162, 163, 726, 432, 432, 144, 145, 213, 653, 2, 359, 550, 214, 282, -334, -334, 215, 160, 166, 278, 458, 2, 161, 650, 654, 113, 114, 115, 461, 462, 95, 668, 166, 109, 172, 534, 8, 374, 213, 119, 673, 544, 472, 378, 161, 213, 29, 522, 116, 279, 282, 117, 118, 162, 163, 697, 29, 507, 537, 513, 293, 514, 493, 603, 167, 95, 109, 509, 294, 417, 295, 167, 523, 95, 95, 162, 163, 324, 674, 164, 103, 160, 282, 213, 172, 628, 161, 95, 157, 524, 133, 334, 282, 231, 29, 134, 135, 448, 362, 407, 231, 174, 334, 179, 435, 557, 676, 172, 436, 551, 508, 213, 95, 207, 174, 207, 109, 162, 163, 525, 526, 220, 254, 255, 173, 242, 564, 359, 214, 247, 2, 598, 215, 328, 112, 166, 166, 661, 662, 116, 338, 686, 117, 118, 341, 722, 213, 419, 167, 578, 213, 329, 231, 581, 95, 724, 596, 362, 256, 257, 213, 258, 259, 260, 261, 29, 527, 585, 275, 371, 29, 95, 262, 263, 173, 382, 625, 380, 381, 29, 29, 376, 691, 692, 377, 693, 694, 391, 392, 393, 303, 398, 326, 394, 95, 493, 493, 173, 95, 443, 444, 459, 160, 522, 454, 540, 709, 161, 710, 460, 463, 172, 95, 107, 719, 720, 335, 455, 172, 464, 465, 466, 474, 476, 531, 532, 547, 335, 523, 566, 729, 552, 730, -319, 731, 576, 732, 577, 162, 163, 579, 580, 119, 582, 360, 524, 583, 631, 359, 174, 586, 232, 746, 587, 747, 588, 642, 643, 645, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 29, 29, 29, 29, 589, 29, 525, 526, 591, 593, 594, 613, 29, 608, 658, 609, 614, 621, 231, 29, 626, 275, 275, 95, -321, 360, 172, 633, 29, -320, 174, 638, 173, 639, 108, 493, 646, 640, 659, 173, 649, 360, 303, 669, 651, 655, 677, 119, 421, 360, 303, 590, -322, 174, 29, 670, 671, 438, 29, 360, 318, 29, 29, -323, 706, 721, 607, 303, 303, 29, 684, 303, 681, 727, 728, 738, 264, 702, 742, 743, 705, 744, 745, 748, 749, 268, 152, 29, 29, 265, 29, 29, 698, 29, 29, 266, 210, 29, 684, 267, 558, 682, 360, 630, 562, 522, 490, 510, 0, 521, 2, 605, 505, 0, 130, 368, 173, 95, 29, 369, 0, 275, 0, 0, 370, 0, 360, 360, 0, 0, 523, 0, 0, 360, 0, 29, 0, 95, 29, 29, 684, 0, 0, 0, 0, 533, 536, 524, 0, 0, 0, 542, 360, 0, 303, 641, 360, 174, 360, 109, 0, 360, 0, 87, 174, 360, 87, 652, 0, 0, 106, 360, 0, 360, 607, 0, 0, 525, 526, 0, 0, 0, 160, 0, 360, 0, 0, 161, 0, 318, 0, 0, 0, 0, 303, 0, 303, 303, 303, 303, 0, 0, 0, 106, 0, 0, 318, 318, 0, 672, 318, 0, 0, 675, 0, 0, 678, 0, 162, 163, 0, 0, 0, 0, 615, 490, 0, 592, 383, 616, 0, 597, 215, 0, 0, 0, 421, 0, 87, 490, 490, 174, 699, 700, 0, 701, 0, 0, 703, 0, 0, 87, 0, 106, 303, 0, 303, 0, 87, 0, 360, 360, 0, 0, 0, 0, 106, 0, 0, 0, 0, 0, 0, 723, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 623, 0, 624, 0, 0, 360, 737, 0, 0, 739, 0, 0, 0, 360, 360, 0, 0, 0, 360, 0, 0, 0, 0, 106, 0, 0, 0, 635, 0, 280, 0, 0, 303, 303, 87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490, 0, 0, 106, 318, 0, 318, 318, 318, 318, 0, 0, 490, 0, 0, 0, 0, 0, 0, 490, 0, 0, 0, 0, 303, 303, 0, 0, 0, 0, 0, 168, 0, 0, 0, 0, 0, 0, 180, 87, 348, 0, 0, 0, 168, 0, 0, 0, 0, 0, 0, 216, 106, 0, 490, 0, 0, 87, 490, 0, 0, 490, 0, 0, 318, 106, 318, 360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 490, 490, 177, 490, 0, 0, 490, 0, 0, 0, 0, 0, 0, 0, 0, 177, 0, 0, 0, 0, 87, 0, 223, 0, 168, 0, 0, 0, 0, 0, 0, 490, 87, 0, 0, 406, 87, 0, 87, 318, 318, 0, 230, 87, 0, 106, 0, 0, 490, 0, 0, 490, 87, 1, 0, 2, 3, 4, 5, 168, 6, 7, 106, 106, 0, 0, 106, 457, 0, 0, 168, 0, 0, 0, 216, 0, 318, 318, 0, 0, 8, 0, 177, 230, 290, 0, 292, 0, 0, 87, 473, 0, 0, 0, 0, 0, 1, 0, 2, 3, 4, 106, 0, 0, 0, 0, 0, 0, 304, 0, 0, 0, 0, 0, 0, 0, 0, 177, 0, 0, 0, 87, 0, 8, 9, 10, 11, 0, 177, 0, 0, 87, 223, 0, 350, 0, 0, 0, 0, 0, 0, 539, 384, 0, 0, 0, 0, 87, 0, 106, 0, 0, 0, 0, 87, 12, 13, 230, 0, 413, 0, 0, 14, 0, 105, 422, 0, 9, 10, 0, 230, 15, 0, 16, 565, 17, 441, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 106, 0, 106, 106, 106, 106, 0, 227, 105, 12, 13, 390, 0, 0, 0, 0, 0, 0, 396, 0, 0, 0, 0, 0, 0, 15, 0, 51, 415, 17, 413, 0, 0, 0, 428, 430, 0, 0, 0, 0, 0, 0, 87, 171, 0, 106, 106, 0, 304, 0, 0, 0, 0, 0, 384, 201, 171, 201, 105, 0, 106, 518, 106, 217, 0, 304, 304, 0, 0, 304, 0, 0, 0, 0, 216, 0, 0, 0, 0, 543, 0, 0, 413, 0, 0, 0, 518, 0, 415, 413, 0, 0, 0, 0, 0, 0, 0, 0, 0, 559, 0, 106, 0, 0, 0, 0, 230, 0, 0, 0, 0, 0, 390, 517, 0, 0, 0, 0, 0, 0, 0, 0, 106, 106, 0, 288, 0, 0, 0, 389, 0, 0, 223, 0, 0, 0, 0, 0, 0, 0, 415, 290, 546, 0, 0, 0, 389, 415, 0, 0, 0, 554, 427, 429, 106, 0, 0, 0, 332, 106, 106, 0, 0, 442, 413, 0, 0, 0, 0, 332, 0, 0, 0, 0, 304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 518, 0, 0, 171, 304, 0, 304, 304, 304, 304, 0, 0, 0, 387, 0, 0, 0, 0, 389, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 518, 387, 0, 0, 0, 415, 0, 387, 518, 413, 0, 0, 0, 389, 516, 0, 0, 0, 0, 0, 389, 0, 0, 0, 171, 0, 0, 0, 0, 0, 0, 395, 0, 0, 0, 304, 0, 304, 0, 405, 0, 389, 0, 516, 0, 389, 0, 171, 389, 0, 0, 0, 553, 0, 0, 0, 0, 0, 560, 0, 561, 387, 0, 0, 0, 0, 0, 415, 0, 0, 0, 569, 0, 0, 0, 0, 230, 0, 0, 0, 0, 0, 0, 0, 0, 387, 515, 0, 0, 0, 0, 0, 387, 0, 0, 0, 0, 304, 304, 0, 0, 0, 0, 0, 0, 0, 0, 413, 0, 0, 0, 0, 0, 387, 0, 515, 0, 387, 0, 0, 387, 0, 0, 389, 515, 0, 0, 0, 0, 0, 387, 0, 0, 0, 304, 304, 0, 0, 0, 0, 0, 0, 0, 0, 0, 538, 0, 389, 516, 0, 0, 171, 0, 105, 288, 0, 0, 0, 171, 0, 0, 0, 0, 0, 0, 415, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 389, 0, 0, 0, 0, 0, 0, 0, 629, 389, 0, 0, 0, 632, 0, 0, 0, 0, 0, 387, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 387, 515, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 387, 0, 0, 0, 0, 0, 0, 0, 387, 387, 0, 0, 1, 515, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 389, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 488, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 387, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 489, 362, -371, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 488, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 489, 362, -370, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 488, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 489, 362, -372, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 226, 227, 228, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 226, 227, 272, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 226, 227, 356, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 367, 227, -426, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 1, 17, 2, 3, 4, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 226, 227, 627, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 302, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 431, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 450, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 452, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 570, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 571, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 572, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 575, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 636, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 637, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 1, 17, 2, 3, 4, 0, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 656, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 8, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 15, 0, 299, 0, 17, 0, 9, 10, 11, 0, 166, 0, 0, 300, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 301, 0, 657, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 683, 740, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 0, 78, 0, 488, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 83, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 489, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 477, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 0, 0, 0, 0, 0, 0, 8, 0, 9, 10, 11, 0, 0, 0, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 13, 8, 0, 0, 0, 0, 14, 0, 0, 0, 9, 10, 11, 0, 0, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 489, 362, 12, 13, 0, 0, 9, 10, 11, 14, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 16, 243, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 12, 13, 0, 0, 0, 0, 227, 14, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 16, 1, 17, 2, 3, 4, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 683, 0, 0, 0, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 77, 0, 297, 0, 0, 9, 10, 0, 160, 78, 0, 0, 298, 161, 8, 0, 0, 0, 0, 79, 0, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 8, 0, 0, 83, 15, 0, 299, 0, 17, 0, 9, 10, 11, 0, 166, 0, 1, 300, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 301, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 13, 8, 9, 10, 11, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 16, 647, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 12, 13, 0, 0, 0, 0, 489, 14, 0, 0, 0, 0, 9, 10, 11, 0, 15, 0, 16, 679, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 489, 0, 0, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 15, 2, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 595, 0, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 402, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 2, 214, 0, 0, 0, 215, 0, 0, 0, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 535, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 2, 0, 418, 0, 0, 0, 0, 0, 0, 0, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 419, 0, 420, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 1, 359, 2, 3, 4, 5, 0, 6, 7, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 600, 0, 0, 0, 8, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 12, 13, 0, 0, 0, 0, 0, 14, 162, 163, 81, 82, 0, 0, 0, 0, 15, 0, 411, 101, 17, 0, 0, 0, 0, 18, 412, 20, 21, 22, 23, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 9, 10, 11, 1, 78, 2, 3, 4, 5, 0, 6, 7, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 8, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 81, 82, 0, 0, 0, 0, 15, 0, 16, 101, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 1, 0, 2, 3, 4, 5, 0, 6, 7, 9, 10, 11, 160, 0, 0, 0, 0, 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, 0, 0, 0, 0, 14, 162, 163, 0, 0, 0, 0, 0, 0, 15, 0, 411, 101, 17, 0, 0, 0, 0, 18, 412, 20, 21, 22, 23, 9, 10, 11, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 12, 13, 0, 0, 0, 0, 1, 14, 2, 3, 4, 5, 0, 6, 7, 0, 15, 0, 16, 101, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 10, 11, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 12, 13, 0, 9, 10, 11, 1, 14, 2, 3, 4, 5, 0, 6, 7, 0, 15, 0, 16, 0, 17, 0, 0, 346, 0, 18, 19, 20, 21, 22, 23, 0, 0, 8, 12, 13, 0, 0, 0, 0, 0, 14, 0, 9, 10, 11, 0, 0, 0, 0, 15, 0, 16, 0, 17, 0, 0, 471, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, 9, 10, 11, 1, 14, 2, 3, 4, 5, 0, 6, 7, 0, 15, 0, 16, 0, 17, 0, 0, 563, 0, 18, 19, 20, 21, 22, 23, 0, 0, 8, 12, 13, 0, 0, 0, 0, 1, 14, 2, 3, 4, 5, 0, 6, 7, 0, 15, 0, 16, 644, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 10, 11, 1, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 12, 13, 0, 9, 10, 11, 1, 14, 2, 3, 4, 5, 0, 6, 7, 0, 15, 0, 16, 704, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 8, 12, 13, 0, 0, 0, 0, 0, 14, 0, 9, 10, 11, 0, 0, 0, 0, 15, 0, 16, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, 9, 10, 11, 1, 14, 2, 3, 4, 5, 0, 6, 7, 0, 15, 0, 49, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 8, 12, 13, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 51, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 10, 11, 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, 12, 13, 0, 0, 0, 0, 2, 14, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 99, 0, 17, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 2, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 0, 383, 343, 0, 0, 215, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 2, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 0, 383, 0, 0, 0, 215, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 2, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 0, 359, 0, 0, 0, 0, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 82, 0, 0, 0, 83, 0, 0, 0, 437, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 0, 214, 343, 0, 0, 215, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 0, 164, 0, 0, 0, 165, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 0, 164, 0, 0, 0, 208, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 83, 0, 0, 164, 281, 0, 0, 0, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 70, 71, 193, 194, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 195, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 197, 198, 0, 0, 0, 83, 0, 0, 164, 0, 0, 0, 330, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 70, 71, 193, 194, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 195, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 197, 198, 0, 0, 0, 83, 0, 0, 164, 0, 0, 8, 339, 0, 0, 0, 166, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 160, 78, 0, 0, 0, 161, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 162, 163, 81, 82, 0, 0, 0, 0, 0, 0, 214, 0, 0, 0, 215, 0, 0, 0, 166, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 82, 0, 0, 0, 83, 0, 0, 0, 399, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 82, 0, 0, 0, 83, 0, 0, 0, 469, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 82, 0, 0, 0, 83, 0, 0, 548, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 82, 0, 0, 0, 83, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 82, 0, 0, 0, 83, 8, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 402, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 82, 0, 0, 0, 83, 8, 54, 55, 56, 57, 58, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 70, 71, 193, 194, 74, 75, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 195, 0, 0, 0, 0, 0, 0, 0, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 196, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 197, 198, 0, 0, 0, 83
135 static const yytype_int16 yycheck[] =
137 0, 0, 16, 153, 116, 5, 6, 7, 363, 282, 104, 216, 97, 17, 14, 232, 16, 307, 223, 131, 13, 3, 3, 297, 164, 9, 76, 530, 12, 71, 70, 71, 305, 70, 363, 49, 3, 51, 390, 591, 152, 91, 358, 30, 70, 71, 96, 70, 98, 49, 3, 51, 3, 324, 325, 683, 84, 328, 17, 45, 46, 28, 10, 415, 71, 13, 127, 3, 96, 97, 98, 235, 12, 13, 5, 28, 428, 227, 127, 164, 141, 298, 168, 128, 96, 99, 98, 96, 305, 98, 76, 177, 28, 144, 143, 3, 648, 725, 70, 99, 138, 417, 122, 145, 118, 145, 3, 127, 145, 127, 7, 8, 9, 616, 199, 71, 116, 116, 118, 145, 28, 16, 145, 3, 70, 210, 121, 145, 112, 403, 180, 131, 131, 71, 129, 16, 49, 151, 145, 75, 121, 496, 497, 129, 80, 350, 133, 134, 135, 199, 3, 151, 152, 152, 294, 319, 320, 321, 322, 139, 210, 451, 144, 453, 112, 517, 456, 496, 49, 153, 121, 199, 165, 145, 314, 111, 112, 144, 129, 384, 164, 140, 210, 454, 455, 390, 99, 199, 282, 145, 199, 144, 409, 0, 546, 75, 136, 137, 210, 145, 80, 210, 554, 84, 232, 153, 292, 145, 144, 3, 144, 351, 121, 213, 213, 208, 97, 165, 99, 122, 493, 225, 215, 104, 121, 16, 126, 124, 125, 122, 214, 111, 112, 122, 127, 199, 122, 224, 127, 127, 511, 121, 513, 227, 144, 142, 210, 3, 127, 129, 605, 7, 8, 9, 282, 143, 240, 145, 49, 127, 208, 373, 3, 124, 143, 45, 46, 215, 121, 297, 126, 126, 125, 70, 71, 143, 129, 305, 127, 227, 3, 75, 555, 573, 574, 299, 80, 28, 144, 144, 130, 131, 240, 84, 143, 75, 76, 70, 71, 299, 80, 127, 295, 10, 11, 96, 97, 98, 99, 403, 294, 121, 517, 104, 298, 125, 300, 111, 112, 145, 610, 611, 14, 15, 127, 127, 3, 121, 122, 121, 314, 111, 112, 125, 75, 129, 144, 330, 3, 80, 143, 143, 7, 8, 9, 338, 339, 295, 145, 129, 16, 232, 402, 28, 126, 127, 27, 122, 408, 352, 127, 80, 127, 363, 3, 121, 144, 351, 124, 125, 111, 112, 145, 373, 373, 403, 143, 121, 145, 363, 653, 409, 330, 49, 377, 121, 142, 125, 416, 28, 338, 339, 111, 112, 144, 122, 121, 411, 75, 383, 127, 282, 552, 80, 352, 76, 45, 129, 199, 393, 358, 411, 134, 135, 143, 144, 297, 365, 84, 210, 91, 121, 141, 122, 305, 125, 419, 375, 127, 377, 96, 97, 98, 99, 111, 112, 75, 76, 104, 136, 137, 232, 113, 436, 121, 121, 117, 3, 141, 125, 144, 144, 129, 129, 618, 619, 121, 125, 122, 124, 125, 122, 122, 127, 141, 493, 459, 127, 121, 417, 463, 419, 122, 487, 144, 138, 139, 127, 140, 141, 142, 143, 482, 122, 477, 156, 145, 487, 436, 144, 145, 282, 122, 543, 278, 279, 496, 497, 145, 663, 664, 142, 666, 667, 122, 122, 127, 178, 121, 180, 126, 459, 496, 497, 305, 463, 143, 143, 125, 75, 3, 144, 403, 687, 80, 689, 126, 125, 409, 477, 411, 695, 696, 199, 144, 416, 122, 122, 126, 145, 145, 122, 126, 122, 210, 28, 122, 711, 144, 713, 144, 715, 122, 717, 126, 111, 112, 126, 126, 230, 122, 232, 45, 126, 557, 121, 232, 141, 552, 733, 121, 735, 121, 587, 588, 589, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 586, 587, 588, 589, 121, 591, 75, 76, 121, 143, 143, 122, 598, 145, 614, 143, 121, 144, 552, 605, 122, 278, 279, 557, 144, 282, 493, 126, 614, 144, 282, 126, 409, 126, 411, 605, 57, 141, 122, 416, 143, 298, 299, 144, 142, 142, 121, 304, 305, 306, 307, 482, 144, 305, 640, 145, 141, 314, 644, 316, 178, 647, 648, 144, 143, 65, 497, 324, 325, 655, 655, 328, 651, 145, 145, 143, 146, 677, 145, 145, 680, 145, 145, 145, 145, 150, 42, 673, 674, 147, 676, 677, 671, 679, 680, 148, 98, 683, 683, 149, 425, 653, 359, 555, 433, 3, 363, 378, -1, 393, 3, 496, 365, -1, 142, 240, 493, 651, 704, 240, -1, 378, -1, -1, 240, -1, 383, 384, -1, -1, 28, -1, -1, 390, -1, 721, -1, 671, 724, 725, 725, -1, -1, -1, -1, 402, 403, 45, -1, -1, -1, 408, 409, -1, 411, 586, 413, 409, 415, 411, -1, 418, -1, 9, 416, 422, 12, 598, -1, -1, 16, 428, -1, 430, 605, -1, -1, 75, 76, -1, -1, -1, 75, -1, 441, -1, -1, 80, -1, 307, -1, -1, -1, -1, 451, -1, 453, 454, 455, 456, -1, -1, -1, 49, -1, -1, 324, 325, -1, 640, 328, -1, -1, 644, -1, -1, 647, -1, 111, 112, -1, -1, -1, -1, 122, 482, -1, 484, 121, 127, -1, 488, 125, -1, -1, -1, 493, -1, 84, 496, 497, 493, 673, 674, -1, 676, -1, -1, 679, -1, -1, 97, -1, 99, 511, -1, 513, -1, 104, -1, 517, 518, -1, -1, -1, -1, 112, -1, -1, -1, -1, -1, -1, 704, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 541, -1, 543, -1, -1, 546, 721, -1, -1, 724, -1, -1, -1, 554, 555, -1, -1, -1, 559, -1, -1, -1, -1, 153, -1, -1, -1, 568, -1, 159, -1, -1, 573, 574, 164, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 586, -1, -1, 178, 451, -1, 453, 454, 455, 456, -1, -1, 598, -1, -1, -1, -1, -1, -1, 605, -1, -1, -1, -1, 610, 611, -1, -1, -1, -1, -1, 84, -1, -1, -1, -1, -1, -1, 91, 214, 215, -1, -1, -1, 97, -1, -1, -1, -1, -1, -1, 104, 227, -1, 640, -1, -1, 232, 644, -1, -1, 647, -1, -1, 511, 240, 513, 653, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 673, 674, 84, 676, -1, -1, 679, -1, -1, -1, -1, -1, -1, -1, -1, 97, -1, -1, -1, -1, 282, -1, 104, -1, 164, -1, -1, -1, -1, -1, -1, 704, 294, -1, -1, 297, 298, -1, 300, 573, 574, -1, 112, 305, -1, 307, -1, -1, 721, -1, -1, 724, 314, 1, -1, 3, 4, 5, 6, 199, 8, 9, 324, 325, -1, -1, 328, 329, -1, -1, 210, -1, -1, -1, 214, -1, 610, 611, -1, -1, 28, -1, 164, 153, 166, -1, 168, -1, -1, 351, 352, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 363, -1, -1, -1, -1, -1, -1, 178, -1, -1, -1, -1, -1, -1, -1, -1, 199, -1, -1, -1, 383, -1, 28, 72, 73, 74, -1, 210, -1, -1, 393, 214, -1, 216, -1, -1, -1, -1, -1, -1, 403, 282, -1, -1, -1, -1, 409, -1, 411, -1, -1, -1, -1, 416, 103, 104, 227, -1, 299, -1, -1, 110, -1, 16, 305, -1, 72, 73, -1, 240, 119, -1, 121, 436, 123, 316, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, 451, -1, 453, 454, 455, 456, -1, 144, 49, 103, 104, 282, -1, -1, -1, -1, -1, -1, 289, -1, -1, -1, -1, -1, -1, 119, -1, 121, 299, 123, 359, -1, -1, -1, 305, 306, -1, -1, -1, -1, -1, -1, 493, 84, -1, 496, 497, -1, 307, -1, -1, -1, -1, -1, 383, 96, 97, 98, 99, -1, 511, 390, 513, 104, -1, 324, 325, -1, -1, 328, -1, -1, -1, -1, 403, -1, -1, -1, -1, 408, -1, -1, 411, -1, -1, -1, 415, -1, 359, 418, -1, -1, -1, -1, -1, -1, -1, -1, -1, 428, -1, 552, -1, -1, -1, -1, 365, -1, -1, -1, -1, -1, 383, 384, -1, -1, -1, -1, -1, -1, -1, -1, 573, 574, -1, 166, -1, -1, -1, 282, -1, -1, 403, -1, -1, -1, -1, -1, -1, -1, 411, 412, 413, -1, -1, -1, 299, 418, -1, -1, -1, 422, 305, 306, 605, -1, -1, -1, 199, 610, 611, -1, -1, 316, 493, -1, -1, -1, -1, 210, -1, -1, -1, -1, 433, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 517, -1, -1, 232, 451, -1, 453, 454, 455, 456, -1, -1, -1, 282, -1, -1, -1, -1, 359, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 546, 299, -1, -1, -1, 493, -1, 305, 554, 555, -1, -1, -1, 383, 384, -1, -1, -1, -1, -1, 390, -1, -1, -1, 282, -1, -1, -1, -1, -1, -1, 289, -1, -1, -1, 511, -1, 513, -1, 297, -1, 411, -1, 413, -1, 415, -1, 305, 418, -1, -1, -1, 422, -1, -1, -1, -1, -1, 428, -1, 430, 359, -1, -1, -1, -1, -1, 555, -1, -1, -1, 441, -1, -1, -1, -1, 552, -1, -1, -1, -1, -1, -1, -1, -1, 383, 384, -1, -1, -1, -1, -1, 390, -1, -1, -1, -1, 573, 574, -1, -1, -1, -1, -1, -1, -1, -1, 653, -1, -1, -1, -1, -1, 411, -1, 413, -1, 415, -1, -1, 418, -1, -1, 493, 422, -1, -1, -1, -1, -1, 428, -1, -1, -1, 610, 611, -1, -1, -1, -1, -1, -1, -1, -1, -1, 403, -1, 517, 518, -1, -1, 409, -1, 411, 412, -1, -1, -1, 416, -1, -1, -1, -1, -1, -1, 653, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 546, -1, -1, -1, -1, -1, -1, -1, 554, 555, -1, -1, -1, 559, -1, -1, -1, -1, -1, 493, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 517, 518, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 493, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 546, -1, -1, -1, -1, -1, -1, -1, 554, 555, -1, -1, 1, 559, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 653, -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, 51, -1, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, 78, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, 653, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, 143, 144, 145, -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, 51, -1, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, 78, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, 143, 144, 145, -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, 51, -1, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, 78, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, 143, 144, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, 143, 144, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, 143, 144, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, 143, 144, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, 143, 144, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, 144, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, 1, 123, 3, 4, 5, -1, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -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, 51, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, 28, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, 72, 73, 74, -1, 129, -1, -1, 132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 145, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, -1, -1, -1, -1, -1, -1, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, 144, 145, -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, 51, -1, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, -1, 76, -1, 78, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, 118, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, 143, 144, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, -1, -1, -1, -1, -1, -1, 28, -1, 72, 73, 74, -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, 103, 104, 28, -1, -1, -1, -1, 110, -1, -1, -1, 72, 73, 74, -1, -1, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, 144, 103, 104, -1, -1, 72, 73, 74, 110, -1, -1, -1, -1, -1, -1, -1, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, 103, 104, -1, -1, -1, -1, 144, 110, -1, -1, -1, -1, -1, -1, -1, -1, 119, -1, 121, 1, 123, 3, 4, 5, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 144, -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, 51, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, 67, -1, 69, -1, -1, 72, 73, -1, 75, 76, -1, -1, 79, 80, 28, -1, -1, -1, -1, 86, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, 28, -1, -1, 118, 119, -1, 121, -1, 123, -1, 72, 73, 74, -1, 129, -1, 1, 132, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, 143, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 28, 72, 73, 74, -1, 110, -1, -1, -1, -1, -1, -1, -1, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, 103, 104, -1, -1, -1, -1, 143, 110, -1, -1, -1, -1, 72, 73, 74, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, -1, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, -1, -1, -1, -1, -1, -1, 119, 3, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -1, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, 3, 121, -1, -1, -1, 125, -1, -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 144, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, 3, -1, 121, -1, -1, -1, -1, -1, -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 141, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, 1, 121, 3, 4, 5, 6, -1, 8, 9, 129, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 143, -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, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, 103, 104, -1, -1, -1, -1, -1, 110, 111, 112, 113, 114, -1, -1, -1, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 1, -1, 3, 4, 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, 72, 73, 74, 1, 76, 3, 4, 5, 6, -1, 8, 9, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, 28, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, 113, 114, -1, -1, -1, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, 1, -1, 3, 4, 5, 6, -1, 8, 9, 72, 73, 74, 75, -1, -1, -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, -1, -1, -1, -1, -1, 110, 111, 112, -1, -1, -1, -1, -1, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 72, 73, 74, 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, 103, 104, -1, -1, -1, -1, 1, 110, 3, 4, 5, 6, -1, 8, 9, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, 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, 103, 104, -1, 72, 73, 74, 1, 110, 3, 4, 5, 6, -1, 8, 9, -1, 119, -1, 121, -1, 123, -1, -1, 126, -1, 128, 129, 130, 131, 132, 133, -1, -1, 28, 103, 104, -1, -1, -1, -1, -1, 110, -1, 72, 73, 74, -1, -1, -1, -1, 119, -1, 121, -1, 123, -1, -1, 126, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, -1, 72, 73, 74, 1, 110, 3, 4, 5, 6, -1, 8, 9, -1, 119, -1, 121, -1, 123, -1, -1, 126, -1, 128, 129, 130, 131, 132, 133, -1, -1, 28, 103, 104, -1, -1, -1, -1, 1, 110, 3, 4, 5, 6, -1, 8, 9, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, 28, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, 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, 103, 104, -1, 72, 73, 74, 1, 110, 3, 4, 5, 6, -1, 8, 9, -1, 119, -1, 121, 122, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, 28, 103, 104, -1, -1, -1, -1, -1, 110, -1, 72, 73, 74, -1, -1, -1, -1, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, -1, 72, 73, 74, 1, 110, 3, 4, 5, 6, -1, 8, 9, -1, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, 28, 103, 104, -1, -1, -1, -1, -1, 110, -1, -1, -1, -1, -1, -1, -1, -1, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 72, 73, 74, -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, 103, 104, -1, -1, -1, -1, 3, 110, -1, -1, -1, -1, -1, -1, -1, -1, 119, -1, 121, -1, 123, -1, -1, -1, -1, 128, 129, 130, 131, 132, 133, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, 3, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, 122, -1, -1, 125, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, 3, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, -1, -1, -1, 125, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, 3, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, -1, -1, -1, -1, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, -1, -1, -1, 118, -1, -1, -1, 122, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, 122, -1, -1, 125, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, -1, -1, -1, 125, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, -1, -1, -1, 125, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, 122, -1, -1, -1, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, -1, -1, -1, 125, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, 118, -1, -1, 121, -1, -1, 28, 125, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, 75, 76, -1, -1, -1, 80, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, 112, 113, 114, -1, -1, -1, -1, -1, -1, 121, -1, -1, -1, 125, -1, -1, -1, 129, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, -1, -1, -1, 118, -1, -1, -1, 122, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, -1, -1, -1, 118, -1, -1, -1, 122, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, -1, -1, -1, 118, -1, -1, 121, 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, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, -1, -1, -1, 118, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, -1, -1, -1, 118, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, 86, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, -1, -1, -1, 118, 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, -1, -1, 67, -1, -1, -1, -1, -1, -1, -1, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 101, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 113, 114, -1, -1, -1, 118
140 static const yytype_uint8 yystos[] =
142 0, 1, 3, 4, 5, 6, 8, 9, 28, 72, 73, 74, 103, 104, 110, 119, 121, 123, 128, 129, 130, 131, 132, 133, 147, 148, 149, 151, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 187, 188, 236, 238, 252, 121, 154, 121, 154, 154, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 67, 76, 86, 101, 113, 114, 118, 174, 179, 186, 187, 189, 191, 192, 193, 201, 202, 154, 167, 171, 174, 171, 121, 154, 122, 168, 170, 173, 186, 187, 189, 191, 202, 221, 236, 144, 7, 8, 9, 121, 124, 125, 147, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 142, 169, 156, 129, 134, 135, 130, 131, 10, 11, 12, 13, 136, 137, 14, 15, 128, 138, 139, 16, 17, 140, 169, 144, 0, 221, 144, 147, 188, 121, 75, 80, 111, 112, 121, 125, 129, 179, 180, 181, 185, 186, 189, 191, 202, 206, 208, 216, 144, 147, 180, 188, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 47, 48, 67, 101, 113, 114, 176, 179, 186, 188, 190, 191, 192, 201, 202, 125, 208, 176, 221, 122, 127, 121, 125, 180, 186, 189, 191, 202, 205, 207, 216, 122, 124, 143, 144, 145, 150, 151, 167, 174, 223, 239, 245, 246, 247, 248, 249, 250, 251, 147, 122, 150, 152, 168, 147, 170, 150, 168, 156, 156, 156, 157, 157, 158, 158, 159, 159, 159, 159, 160, 160, 161, 162, 163, 164, 165, 170, 150, 168, 145, 251, 122, 147, 203, 204, 144, 144, 187, 122, 174, 208, 217, 218, 219, 171, 186, 215, 216, 206, 216, 121, 121, 125, 206, 69, 79, 121, 132, 143, 145, 147, 151, 174, 180, 194, 195, 196, 197, 198, 210, 211, 213, 214, 216, 237, 238, 240, 241, 242, 243, 244, 144, 144, 147, 188, 144, 121, 125, 179, 186, 190, 191, 202, 208, 171, 125, 125, 208, 122, 168, 122, 207, 217, 126, 171, 187, 205, 216, 121, 125, 205, 156, 236, 145, 251, 142, 121, 147, 211, 144, 230, 231, 127, 143, 143, 246, 248, 249, 145, 122, 127, 126, 141, 145, 142, 127, 145, 203, 203, 122, 121, 180, 207, 209, 210, 212, 214, 216, 122, 122, 127, 126, 186, 216, 206, 121, 122, 217, 171, 51, 175, 179, 186, 187, 189, 193, 174, 211, 121, 129, 180, 209, 216, 174, 142, 121, 141, 143, 147, 180, 199, 200, 209, 211, 214, 216, 214, 216, 145, 198, 127, 143, 121, 125, 122, 147, 217, 220, 180, 214, 143, 143, 231, 231, 231, 143, 231, 145, 194, 145, 194, 144, 144, 194, 187, 171, 125, 126, 171, 171, 125, 122, 122, 126, 126, 205, 122, 217, 126, 171, 187, 145, 223, 145, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 78, 143, 147, 170, 172, 174, 225, 226, 227, 228, 229, 231, 232, 233, 234, 235, 237, 247, 150, 168, 167, 171, 204, 143, 145, 143, 145, 210, 214, 216, 180, 212, 52, 219, 3, 28, 45, 75, 76, 122, 182, 183, 184, 122, 126, 147, 188, 144, 147, 179, 186, 187, 189, 207, 147, 180, 188, 211, 216, 122, 121, 223, 122, 171, 144, 214, 216, 127, 143, 141, 185, 180, 214, 214, 195, 126, 171, 187, 122, 122, 127, 214, 145, 145, 145, 194, 194, 145, 122, 126, 171, 126, 126, 171, 122, 126, 126, 171, 141, 121, 121, 121, 225, 121, 147, 143, 143, 143, 170, 147, 141, 143, 143, 177, 178, 209, 172, 228, 172, 225, 145, 143, 194, 194, 212, 122, 121, 122, 127, 183, 70, 71, 145, 144, 144, 147, 147, 188, 122, 145, 251, 214, 200, 171, 214, 126, 126, 147, 145, 145, 126, 126, 141, 225, 170, 170, 122, 170, 57, 122, 232, 143, 143, 142, 225, 127, 143, 142, 145, 145, 170, 122, 183, 231, 231, 70, 71, 145, 70, 71, 145, 144, 145, 141, 225, 122, 122, 225, 122, 121, 225, 122, 232, 171, 178, 144, 168, 222, 122, 71, 145, 70, 145, 231, 231, 231, 231, 70, 71, 145, 171, 225, 225, 225, 170, 225, 122, 170, 143, 222, 224, 231, 231, 71, 145, 70, 145, 71, 145, 70, 145, 231, 231, 65, 122, 225, 122, 127, 145, 145, 145, 231, 231, 231, 231, 71, 145, 70, 145, 225, 143, 225, 145, 222, 145, 145, 145, 145, 231, 231, 145, 145
145 void exit(int status);
147 void * calloc(size_t nmemb, size_t size);
149 void free(void * ptr);
151 void * malloc(size_t size);
153 void * realloc(void * ptr, size_t size);
155 long int strtol(const char * nptr, char ** endptr, int base);
157 long long int strtoll(const char * nptr, char ** endptr, int base);
159 unsigned long long int strtoull(const char * nptr, char ** endptr, int base);
161 typedef __builtin_va_list va_list;
165 FILE * bsl_stdin(void);
167 FILE * bsl_stdout(void);
169 FILE * bsl_stderr(void);
171 char * fgets(char * s, int size, FILE * stream);
173 FILE * fopen(const char * path, const char * mode);
175 int fclose(FILE * fp);
177 int fflush(FILE * stream);
179 int fgetc(FILE * stream);
181 int fprintf(FILE * stream, const char * format, ...);
183 int fputc(int c, FILE * stream);
185 size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
187 size_t fwrite(const void * ptr, size_t size, size_t nmemb, FILE * stream);
189 int vsnprintf(char *, size_t, const char *, va_list args);
191 int snprintf(char * str, size_t, const char * format, ...);
193 int fseek(FILE * stream, long offset, int whence);
195 long ftell(FILE * stream);
197 int feof(FILE * stream);
199 int ferror(FILE * stream);
201 int fileno(FILE * stream);
203 int expression_yydebug;
205 int expression_yyparse(void);
207 int expression_yychar;
209 int expression_yynerrs;
213 struct __ecereNameSpace__ecere__sys__OldList
222 struct __ecereNameSpace__ecere__sys__BTNode;
226 struct __ecereNameSpace__ecere__com__DataValue
241 } ecere_gcc_struct __anon1;
244 struct __ecereNameSpace__ecere__com__SerialBuffer
246 unsigned char * _buffer;
252 extern void * __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
254 extern void * __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
256 extern void * __ecereNameSpace__ecere__com__eSystem_Renew(void * memory, unsigned int size);
258 extern void * __ecereNameSpace__ecere__com__eSystem_Renew0(void * memory, unsigned int size);
260 extern void __ecereNameSpace__ecere__com__eSystem_Delete(void * memory);
268 struct FunctionDefinition;
278 struct ClassDefinition;
282 struct PropertyWatch;
284 struct TemplateParameter;
286 struct TemplateArgument;
288 struct TemplateDatatype;
304 extern size_t strlen(const char * );
306 extern char * __ecereNameSpace__ecere__sys__CopyString(const char * string);
308 static void yy_stack_print(yytype_int16 * yybottom, yytype_int16 * yytop)
310 fprintf((bsl_stderr()), "Stack now");
311 for(; yybottom <= yytop; yybottom++)
313 int yybot = *yybottom;
315 fprintf((bsl_stderr()), " %d", yybot);
317 fprintf((bsl_stderr()), "\n");
320 extern void FreeList(struct __ecereNameSpace__ecere__sys__OldList * list, void (* FreeFunction)(void * ));
322 extern struct __ecereNameSpace__ecere__sys__OldList * MkListOne(void * item);
324 extern struct __ecereNameSpace__ecere__sys__OldList * MkList(void);
326 extern void ListAdd(struct __ecereNameSpace__ecere__sys__OldList * list, void * item);
328 extern void FreeEnumerator(struct Enumerator * enumerator);
330 extern void FreePointer(struct Pointer * pointer);
332 extern struct Pointer * MkPointer(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Pointer * pointer);
334 extern void FreeTypeName(struct TypeName * typeName);
336 extern void PopContext(struct Context * ctx);
338 extern void FreeContext(struct Context * context);
340 extern struct Context * PushContext(void);
342 extern void FreeExtDecl(struct ExtDecl * extDecl);
344 extern struct ExtDecl * MkExtDeclString(char * s);
348 struct CodePosition start;
349 struct CodePosition end;
352 extern struct Location yylloc;
354 struct Location expression_yylloc;
360 struct __ecereNameSpace__ecere__sys__OldList * attribs;
363 extern void FreeAttrib(struct Attrib * attr);
365 extern struct ExtDecl * MkExtDeclAttrib(struct Attrib * attr);
367 extern struct Attrib * MkAttrib(int type, struct __ecereNameSpace__ecere__sys__OldList * attribs);
371 struct Expression * parsedExpression;
373 extern void FreeExpression(struct Expression * exp);
375 extern struct Expression * MkExpBrackets(struct __ecereNameSpace__ecere__sys__OldList * expressions);
377 extern struct Expression * MkExpConstant(const char * string);
379 extern struct Expression * MkExpWideString(const char * string);
381 extern struct Expression * MkExpString(const char * string);
383 extern struct Expression * MkExpIntlString(const char * string, const char * context);
385 extern struct Expression * MkExpDummy(void);
387 extern struct Expression * MkExpNew(struct TypeName * type, struct Expression * size);
389 extern struct Expression * MkExpNew0(struct TypeName * type, struct Expression * size);
391 extern struct Expression * MkExpRenew(struct Expression * memExp, struct TypeName * type, struct Expression * size);
393 extern struct Expression * MkExpRenew0(struct Expression * memExp, struct TypeName * type, struct Expression * size);
395 extern struct Expression * MkExpIndex(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * index);
397 extern struct Expression * MkExpCall(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * arguments);
399 extern struct Expression * MkExpOp(struct Expression * exp1, int op, struct Expression * exp2);
401 extern struct Expression * MkExpTypeSize(struct TypeName * typeName);
403 extern struct Expression * MkExpTypeAlign(struct TypeName * typeName);
405 extern struct Expression * MkExpCast(struct TypeName * typeName, struct Expression * expression);
407 extern struct Expression * MkExpCondition(struct Expression * cond, struct __ecereNameSpace__ecere__sys__OldList * expressions, struct Expression * elseExp);
409 struct __ecereNameSpace__ecere__com__Class;
411 struct __ecereNameSpace__ecere__com__Instance
414 struct __ecereNameSpace__ecere__com__Class * _class;
418 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name);
420 extern void __ecereNameSpace__ecere__com__eClass_SetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, long long value);
422 extern void __ecereNameSpace__ecere__com__eInstance_SetMethod(struct __ecereNameSpace__ecere__com__Instance * instance, const char * name, void * function);
424 extern void __ecereNameSpace__ecere__com__eInstance_IncRef(struct __ecereNameSpace__ecere__com__Instance * instance);
426 extern struct __ecereNameSpace__ecere__com__Instance * fileInput;
428 struct __ecereNameSpace__ecere__com__Property;
430 struct __ecereNameSpace__ecere__com__Property
432 struct __ecereNameSpace__ecere__com__Property * prev;
433 struct __ecereNameSpace__ecere__com__Property * next;
435 unsigned int isProperty;
438 struct __ecereNameSpace__ecere__com__Class * _class;
439 const char * dataTypeString;
440 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
441 struct Type * dataType;
442 void (* Set)(void * , int);
443 int (* Get)(void * );
444 unsigned int (* IsSet)(void * );
448 unsigned int conversion;
449 unsigned int watcherOffset;
450 const char * category;
451 unsigned int compiled;
452 unsigned int selfWatchable;
453 unsigned int isWatchable;
456 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
458 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);
460 extern void __ecereNameSpace__ecere__com__eInstance_Watch(void * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * ));
462 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
466 extern void FreeIdentifier(struct Identifier * id);
468 extern struct Identifier * MkIdentifier(const char * string);
470 extern struct Expression * MkExpIdentifier(struct Identifier * id);
472 extern struct Expression * MkExpMember(struct Expression * expression, struct Identifier * member);
474 extern struct Expression * MkExpPointer(struct Expression * expression, struct Identifier * member);
476 extern struct Enumerator * MkEnumerator(struct Identifier * id, struct Expression * exp);
480 extern void FreeDeclaration(struct Declaration * decl);
482 extern struct Declaration * MkDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * initDeclarators);
484 extern struct Declaration * MkDeclarationDefine(struct Identifier * id, struct Expression * exp);
488 extern void FreeSpecifier(struct Specifier * spec);
492 struct Identifier * prev;
493 struct Identifier * next;
495 struct Symbol * classSym;
496 struct Specifier * _class;
498 struct Identifier * badID;
501 extern struct Specifier * MkSpecifier(int specifier);
503 extern struct Specifier * MkSpecifierExtended(struct ExtDecl * extDecl);
505 extern struct Specifier * MkSpecifierName(const char * name);
507 extern struct Specifier * MkSpecifierSubClass(struct Specifier * _class);
509 extern struct Specifier * MkStructOrUnion(int type, struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * definitions);
511 extern struct Symbol * DeclClass(struct Specifier * _class, const char * name);
515 struct Specifier * prev;
516 struct Specifier * next;
524 struct ExtDecl * extDecl;
526 struct Symbol * symbol;
527 struct __ecereNameSpace__ecere__sys__OldList * templateArgs;
528 struct Specifier * nsSpec;
529 } ecere_gcc_struct __anon1;
532 struct Identifier * id;
533 struct __ecereNameSpace__ecere__sys__OldList * list;
534 struct __ecereNameSpace__ecere__sys__OldList * baseSpecs;
535 struct __ecereNameSpace__ecere__sys__OldList * definitions;
536 unsigned int addNameSpace;
537 struct Context * ctx;
538 struct ExtDecl * extDeclStruct;
539 } ecere_gcc_struct __anon2;
540 struct Expression * expression;
541 struct Specifier * _class;
542 struct TemplateParameter * templateParameter;
543 } ecere_gcc_struct __anon1;
546 extern struct Declaration * MkStructDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * declarators, struct Specifier * extStorage);
548 extern struct Specifier * MkEnum(struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * list);
550 struct InitDeclarator;
552 extern void FreeInitDeclarator(struct InitDeclarator * decl);
556 extern void FreeAttribute(struct Attribute * attr);
558 extern struct Attribute * MkAttribute(char * attr, struct Expression * exp);
562 struct Attribute * prev;
563 struct Attribute * next;
566 struct Expression * exp;
571 extern void FreeClassDef(struct ClassDef * def);
573 extern struct ClassDef * MkClassDefDeclaration(struct Declaration * decl);
575 extern struct ClassDef * MkClassDefDefaultProperty(struct __ecereNameSpace__ecere__sys__OldList * defProperties);
579 extern void FreeMemberInit(struct MemberInit * init);
583 extern void FreeProperty(struct PropertyDef * def);
585 extern struct ClassDef * MkClassDefProperty(struct PropertyDef * propertyDef);
589 extern void FreeDeclarator(struct Declarator * decl);
591 extern struct TypeName * MkTypeName(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Declarator * declarator);
593 extern struct Declarator * MkStructDeclarator(struct Declarator * declarator, struct Expression * exp);
597 struct Declarator * prev;
598 struct Declarator * next;
601 struct Symbol * symbol;
602 struct Declarator * declarator;
605 struct Identifier * identifier;
608 struct Expression * exp;
609 struct Expression * posExp;
610 struct Attrib * attrib;
611 } ecere_gcc_struct structDecl;
614 struct Expression * exp;
615 struct Specifier * enumClass;
616 } ecere_gcc_struct array;
619 struct __ecereNameSpace__ecere__sys__OldList * parameters;
620 } ecere_gcc_struct function;
623 struct Pointer * pointer;
624 } ecere_gcc_struct pointer;
627 struct ExtDecl * extended;
628 } ecere_gcc_struct extended;
629 } ecere_gcc_struct __anon1;
632 extern struct Declarator * MkDeclaratorBrackets(struct Declarator * declarator);
634 extern struct Declarator * MkDeclaratorArray(struct Declarator * declarator, struct Expression * exp);
636 extern struct Declarator * MkDeclaratorEnumArray(struct Declarator * declarator, struct Specifier * _class);
638 extern struct Declarator * MkDeclaratorFunction(struct Declarator * declarator, struct __ecereNameSpace__ecere__sys__OldList * parameters);
640 extern struct Declarator * MkDeclaratorPointer(struct Pointer * pointer, struct Declarator * declarator);
642 extern struct Declarator * MkDeclaratorExtended(struct ExtDecl * extended, struct Declarator * declarator);
644 extern struct Declarator * MkDeclaratorIdentifier(struct Identifier * id);
648 extern void FreeInitializer(struct Initializer * initializer);
650 extern struct InitDeclarator * MkInitDeclarator(struct Declarator * declarator, struct Initializer * initializer);
652 struct InitDeclarator
654 struct InitDeclarator * prev;
655 struct InitDeclarator * next;
657 struct Declarator * declarator;
658 struct Initializer * initializer;
663 struct Initializer * prev;
664 struct Initializer * next;
669 struct Expression * exp;
670 struct __ecereNameSpace__ecere__sys__OldList * list;
671 } ecere_gcc_struct __anon1;
672 unsigned int isConstant;
673 struct Identifier * id;
676 extern struct MemberInit * MkMemberInitExp(struct Expression * idExp, struct Initializer * initializer);
680 struct MemberInit * prev;
681 struct MemberInit * next;
683 struct Location realLoc;
684 struct __ecereNameSpace__ecere__sys__OldList * identifiers;
685 struct Initializer * initializer;
687 unsigned int variable;
688 unsigned int takeOutExp;
691 extern struct Initializer * MkInitializerAssignment(struct Expression * exp);
693 extern struct Initializer * MkInitializerList(struct __ecereNameSpace__ecere__sys__OldList * list);
695 extern struct MemberInit * MkMemberInit(struct __ecereNameSpace__ecere__sys__OldList * ids, struct Initializer * initializer);
699 extern void FreeStatement(struct Statement * stmt);
701 extern struct PropertyDef * MkProperty(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * decl, struct Identifier * id, struct Statement * setStmt, struct Statement * getStmt);
705 struct PropertyDef * prev;
706 struct PropertyDef * next;
708 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
709 struct Declarator * declarator;
710 struct Identifier * id;
711 struct Statement * getStmt;
712 struct Statement * setStmt;
713 struct Statement * issetStmt;
714 struct Symbol * symbol;
715 struct Expression * category;
718 unsigned int conversion : 1;
719 unsigned int isWatchable : 1;
720 unsigned int isDBProp : 1;
721 } ecere_gcc_struct __anon1;
724 extern struct Statement * MkLabeledStmt(struct Identifier * id, struct Statement * statement);
728 struct Statement * prev;
729 struct Statement * next;
734 struct __ecereNameSpace__ecere__sys__OldList * expressions;
737 struct Identifier * id;
738 struct Statement * stmt;
739 } ecere_gcc_struct labeled;
742 struct Expression * exp;
743 struct Statement * stmt;
744 } ecere_gcc_struct caseStmt;
747 struct __ecereNameSpace__ecere__sys__OldList * declarations;
748 struct __ecereNameSpace__ecere__sys__OldList * statements;
749 struct Context * context;
750 unsigned int isSwitch;
751 } ecere_gcc_struct compound;
754 struct __ecereNameSpace__ecere__sys__OldList * exp;
755 struct Statement * stmt;
756 struct Statement * elseStmt;
757 } ecere_gcc_struct ifStmt;
760 struct __ecereNameSpace__ecere__sys__OldList * exp;
761 struct Statement * stmt;
762 } ecere_gcc_struct switchStmt;
765 struct __ecereNameSpace__ecere__sys__OldList * exp;
766 struct Statement * stmt;
767 } ecere_gcc_struct whileStmt;
770 struct __ecereNameSpace__ecere__sys__OldList * exp;
771 struct Statement * stmt;
772 } ecere_gcc_struct doWhile;
775 struct Statement * init;
776 struct Statement * check;
777 struct __ecereNameSpace__ecere__sys__OldList * increment;
778 struct Statement * stmt;
779 } ecere_gcc_struct forStmt;
782 struct Identifier * id;
783 } ecere_gcc_struct gotoStmt;
786 struct Specifier * spec;
788 struct __ecereNameSpace__ecere__sys__OldList * inputFields;
789 struct __ecereNameSpace__ecere__sys__OldList * outputFields;
790 struct __ecereNameSpace__ecere__sys__OldList * clobberedFields;
791 } ecere_gcc_struct asmStmt;
794 struct Expression * watcher;
795 struct Expression * object;
796 struct __ecereNameSpace__ecere__sys__OldList * watches;
797 } ecere_gcc_struct _watch;
800 struct Identifier * id;
801 struct __ecereNameSpace__ecere__sys__OldList * exp;
802 struct __ecereNameSpace__ecere__sys__OldList * filter;
803 struct Statement * stmt;
804 } ecere_gcc_struct forEachStmt;
805 struct Declaration * decl;
806 } ecere_gcc_struct __anon1;
809 extern struct Statement * MkCaseStmt(struct Expression * exp, struct Statement * statement);
811 extern struct Statement * MkBadDeclStmt(struct Declaration * decl);
813 extern struct Statement * MkCompoundStmt(struct __ecereNameSpace__ecere__sys__OldList * declarations, struct __ecereNameSpace__ecere__sys__OldList * statements);
815 extern struct Statement * MkExpressionStmt(struct __ecereNameSpace__ecere__sys__OldList * expressions);
817 extern struct Statement * MkIfStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement, struct Statement * elseStmt);
819 extern struct Statement * MkSwitchStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
821 extern struct Statement * MkWhileStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
823 extern struct Statement * MkDoWhileStmt(struct Statement * statement, struct __ecereNameSpace__ecere__sys__OldList * exp);
825 extern struct Statement * MkForStmt(struct Statement * init, struct Statement * check, struct __ecereNameSpace__ecere__sys__OldList * inc, struct Statement * statement);
827 extern struct Statement * MkGotoStmt(struct Identifier * id);
829 extern struct Statement * MkContinueStmt(void);
831 extern struct Statement * MkBreakStmt(void);
833 extern struct Statement * MkReturnStmt(struct __ecereNameSpace__ecere__sys__OldList * exp);
835 struct Instantiation;
837 extern void FreeInstance(struct Instantiation * inst);
841 struct Expression * prev;
842 struct Expression * next;
850 struct Identifier * identifier;
851 } ecere_gcc_struct __anon1;
852 struct Statement * compound;
853 struct Instantiation * instance;
857 unsigned int intlString;
858 unsigned int wideString;
859 } ecere_gcc_struct __anon2;
860 struct __ecereNameSpace__ecere__sys__OldList * list;
863 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
864 struct Declarator * decl;
865 } ecere_gcc_struct _classExp;
868 struct Identifier * id;
869 } ecere_gcc_struct classData;
872 struct Expression * exp;
873 struct __ecereNameSpace__ecere__sys__OldList * arguments;
874 struct Location argLoc;
875 } ecere_gcc_struct call;
878 struct Expression * exp;
879 struct __ecereNameSpace__ecere__sys__OldList * index;
880 } ecere_gcc_struct index;
883 struct Expression * exp;
884 struct Identifier * member;
886 unsigned int thisPtr;
887 } ecere_gcc_struct member;
891 struct Expression * exp1;
892 struct Expression * exp2;
893 } ecere_gcc_struct op;
894 struct TypeName * typeName;
895 struct Specifier * _class;
898 struct TypeName * typeName;
899 struct Expression * exp;
900 } ecere_gcc_struct cast;
903 struct Expression * cond;
904 struct __ecereNameSpace__ecere__sys__OldList * exp;
905 struct Expression * elseExp;
906 } ecere_gcc_struct cond;
909 struct TypeName * typeName;
910 struct Expression * size;
911 } ecere_gcc_struct _new;
914 struct TypeName * typeName;
915 struct Expression * size;
916 struct Expression * exp;
917 } ecere_gcc_struct _renew;
921 struct Identifier * id;
922 } ecere_gcc_struct db;
925 struct Expression * ds;
926 struct Expression * name;
927 } ecere_gcc_struct dbopen;
930 struct TypeName * typeName;
931 struct Initializer * initializer;
932 } ecere_gcc_struct initializer;
935 struct Expression * exp;
936 struct TypeName * typeName;
937 } ecere_gcc_struct vaArg;
940 struct TypeName * typeName;
941 struct Identifier * id;
942 } ecere_gcc_struct offset;
943 } ecere_gcc_struct __anon1;
944 unsigned int debugValue;
945 struct __ecereNameSpace__ecere__com__DataValue val;
947 unsigned int hasAddress;
948 struct Type * expType;
949 struct Type * destType;
952 unsigned int byReference;
953 unsigned int isConstant;
954 unsigned int addedThis;
955 unsigned int needCast;
956 unsigned int thisPtr;
957 unsigned int opDestType;
958 unsigned int usedInComparison;
959 unsigned int ambiguousUnits;
960 unsigned int parentOpDestType;
961 unsigned int needTemplateCast;
964 extern struct Expression * MkExpInstance(struct Instantiation * inst);
968 struct Declaration * prev;
969 struct Declaration * next;
976 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
977 struct __ecereNameSpace__ecere__sys__OldList * declarators;
978 } ecere_gcc_struct __anon1;
979 struct Instantiation * inst;
982 struct Identifier * id;
983 struct Expression * exp;
984 } ecere_gcc_struct __anon2;
985 } ecere_gcc_struct __anon1;
986 struct Specifier * extStorage;
987 struct Symbol * symbol;
991 extern struct Declaration * MkDeclarationInst(struct Instantiation * inst);
993 extern struct Declaration * MkDeclarationClassInst(struct Instantiation * inst);
995 extern struct Instantiation * MkInstantiationNamed(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
999 struct Instantiation * prev;
1000 struct Instantiation * next;
1001 struct Location loc;
1002 struct Specifier * _class;
1003 struct Expression * exp;
1004 struct __ecereNameSpace__ecere__sys__OldList * members;
1005 struct Symbol * symbol;
1006 unsigned int fullSet;
1007 unsigned int isConstant;
1008 unsigned char * data;
1009 struct Location nameLoc;
1010 struct Location insideLoc;
1014 extern struct Instantiation * MkInstantiation(struct Specifier * _class, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
1016 struct ClassFunction;
1018 extern void FreeClassFunction(struct ClassFunction * func);
1022 struct ClassDef * prev;
1023 struct ClassDef * next;
1024 struct Location loc;
1028 struct Declaration * decl;
1029 struct ClassFunction * function;
1030 struct __ecereNameSpace__ecere__sys__OldList * defProperties;
1031 struct PropertyDef * propertyDef;
1032 struct PropertyWatch * propertyWatch;
1034 struct Identifier * defaultProperty;
1037 struct Identifier * id;
1038 struct Initializer * initializer;
1039 } ecere_gcc_struct __anon1;
1040 } ecere_gcc_struct __anon1;
1045 extern struct ClassDef * MkClassDefFunction(struct ClassFunction * function);
1047 extern struct ClassFunction * MkClassFunction(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct Specifier * _class, struct Declarator * decl, struct __ecereNameSpace__ecere__sys__OldList * declList);
1049 struct ClassFunction
1051 struct ClassFunction * prev;
1052 struct ClassFunction * next;
1053 struct Location loc;
1054 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
1055 struct Declarator * declarator;
1056 struct __ecereNameSpace__ecere__sys__OldList * declarations;
1057 struct Statement * body;
1058 struct __ecereNameSpace__ecere__com__Class * _class;
1059 struct __ecereNameSpace__ecere__sys__OldList attached;
1062 struct Symbol * propSet;
1063 unsigned int isVirtual;
1064 unsigned int isConstructor;
1065 unsigned int isDestructor;
1066 unsigned int dontMangle;
1071 extern void ProcessClassFunctionBody(struct ClassFunction * func, struct Statement * body);
1075 typedef union YYSTYPE
1080 struct Identifier * id;
1081 struct Expression * exp;
1082 struct Specifier * specifier;
1083 struct __ecereNameSpace__ecere__sys__OldList * list;
1084 struct Enumerator * enumerator;
1085 struct Declarator * declarator;
1086 struct Pointer * pointer;
1087 struct Initializer * initializer;
1088 struct InitDeclarator * initDeclarator;
1089 struct TypeName * typeName;
1090 struct Declaration * declaration;
1091 struct Statement * stmt;
1092 struct FunctionDefinition * function;
1093 struct External * external;
1094 struct Context * context;
1095 struct AsmField * asmField;
1096 struct Attrib * attrib;
1097 struct ExtDecl * extDecl;
1098 struct Attribute * attribute;
1099 struct Instantiation * instance;
1100 struct MembersInit * membersInit;
1101 struct MemberInit * memberInit;
1102 struct ClassFunction * classFunction;
1103 struct ClassDefinition * _class;
1104 struct ClassDef * classDef;
1105 struct PropertyDef * prop;
1107 struct Symbol * symbol;
1108 struct PropertyWatch * propertyWatch;
1109 struct TemplateParameter * templateParameter;
1110 struct TemplateArgument * templateArgument;
1111 struct TemplateDatatype * templateDatatype;
1112 struct DBTableEntry * dbtableEntry;
1113 struct DBIndexItem * dbindexItem;
1114 struct DBTableDef * dbtableDef;
1115 } ecere_gcc_struct YYSTYPE;
1117 extern YYSTYPE yylval;
1121 yytype_int16 yyss_alloc;
1123 struct Location yyls_alloc;
1126 static void yy_symbol_value_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1130 ((void)(yylocationp));
1139 extern void FreeMembersInit(struct MembersInit * init);
1141 YYSTYPE expression_yylval;
1143 extern struct MembersInit * MkMembersInitList(struct __ecereNameSpace__ecere__sys__OldList * dataMembers);
1147 struct MembersInit * prev;
1148 struct MembersInit * next;
1149 struct Location loc;
1153 struct __ecereNameSpace__ecere__sys__OldList * dataMembers;
1154 struct ClassFunction * function;
1155 } ecere_gcc_struct __anon1;
1158 extern struct MembersInit * MkMembersInitMethod(struct ClassFunction * function);
1160 static void yy_symbol_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1163 fprintf(yyoutput, "token %s (", yytname[yytype]);
1165 fprintf(yyoutput, "nterm %s (", yytname[yytype]);
1167 fprintf(yyoutput, ": ");
1168 yy_symbol_value_print(yyoutput, yytype, yyvaluep, yylocationp);
1169 fprintf(yyoutput, ")");
1172 static void yy_reduce_print(YYSTYPE * yyvsp, struct Location * yylsp, int yyrule)
1174 int yynrhs = yyr2[yyrule];
1176 unsigned long int yylno = yyrline[yyrule];
1178 fprintf((bsl_stderr()), "Reducing stack by rule %d (line %lu):\n", yyrule - 1, yylno);
1179 for(yyi = 0; yyi < yynrhs; yyi++)
1181 fprintf((bsl_stderr()), " $%d = ", yyi + 1);
1182 yy_symbol_print((bsl_stderr()), yyrhs[yyprhs[yyrule] + yyi], &(yyvsp[(yyi + 1) - (yynrhs)]), &(yylsp[(yyi + 1) - (yynrhs)]));
1183 fprintf((bsl_stderr()), "\n");
1187 struct __ecereNameSpace__ecere__sys__BinaryTree;
1189 struct __ecereNameSpace__ecere__sys__BinaryTree
1191 struct __ecereNameSpace__ecere__sys__BTNode * root;
1193 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
1194 void (* FreeKey)(void * key);
1197 struct __ecereNameSpace__ecere__com__Method;
1199 struct __ecereNameSpace__ecere__com__Method
1202 struct __ecereNameSpace__ecere__com__Method * parent;
1203 struct __ecereNameSpace__ecere__com__Method * left;
1204 struct __ecereNameSpace__ecere__com__Method * right;
1209 struct __ecereNameSpace__ecere__com__Class * _class;
1211 const char * dataTypeString;
1212 struct Type * dataType;
1216 static void yydestruct(const char * yymsg, int yytype, YYSTYPE * yyvaluep, struct Location * yylocationp);
1218 int expression_yyparse(void)
1222 yytype_int16 yyssa[200];
1223 yytype_int16 * yyss;
1224 yytype_int16 * yyssp;
1228 struct Location yylsa[200];
1229 struct Location * yyls;
1230 struct Location * yylsp;
1231 struct Location yyerror_range[2];
1237 struct Location yyloc;
1247 if(expression_yydebug)
1248 fprintf((bsl_stderr()), "Starting parse\n");
1252 expression_yynerrs = 0;
1253 expression_yychar = (-2);
1262 if(yyss + yystacksize - 1 <= yyssp)
1264 size_t yysize = yyssp - yyss + 1;
1266 if(10000 <= yystacksize)
1267 goto yyexhaustedlab;
1269 if(10000 < yystacksize)
1270 yystacksize = 10000;
1272 yytype_int16 * yyss1 = yyss;
1273 union yyalloc * yyptr = (union yyalloc *)malloc(((yystacksize) * (sizeof(yytype_int16) + sizeof(YYSTYPE) + sizeof(struct Location)) + 2 * (sizeof(union yyalloc) - 1)));
1276 goto yyexhaustedlab;
1281 __builtin_memcpy(&(*yyptr).yyss_alloc, yyss, (yysize) * sizeof (*(yyss)));
1282 yyss = &(*yyptr).yyss_alloc;
1283 yynewbytes = yystacksize * sizeof (*yyss) + (sizeof(union yyalloc) - 1);
1284 yyptr += yynewbytes / sizeof (*yyptr);
1290 __builtin_memcpy(&(*yyptr).yyvs_alloc, yyvs, (yysize) * sizeof (*(yyvs)));
1291 yyvs = &(*yyptr).yyvs_alloc;
1292 yynewbytes = yystacksize * sizeof (*yyvs) + (sizeof(union yyalloc) - 1);
1293 yyptr += yynewbytes / sizeof (*yyptr);
1299 __builtin_memcpy(&(*yyptr).yyls_alloc, yyls, (yysize) * sizeof (*(yyls)));
1300 yyls = &(*yyptr).yyls_alloc;
1301 yynewbytes = yystacksize * sizeof (*yyls) + (sizeof(union yyalloc) - 1);
1302 yyptr += yynewbytes / sizeof (*yyptr);
1307 yyssp = yyss + yysize - 1;
1308 yyvsp = yyvs + yysize - 1;
1309 yylsp = yyls + yysize - 1;
1312 if(expression_yydebug)
1313 fprintf((bsl_stderr()), "Stack size increased to %lu\n", (unsigned long int)yystacksize);
1315 if(yyss + yystacksize - 1 <= yyssp)
1320 if(expression_yydebug)
1321 fprintf((bsl_stderr()), "Entering state %d\n", yystate);
1327 yyn = yypact[yystate];
1330 if(expression_yychar == (-2))
1334 if(expression_yydebug)
1335 fprintf((bsl_stderr()), "Reading a token: ");
1337 expression_yychar = yylex();
1339 if(expression_yychar <= 0)
1341 expression_yychar = yytoken = 0;
1344 if(expression_yydebug)
1345 fprintf((bsl_stderr()), "Now at end of input.\n");
1350 yytoken = ((unsigned int)(expression_yychar) <= 375 ? yytranslate[expression_yychar] : 2);
1353 if(expression_yydebug)
1355 fprintf((bsl_stderr()), "%s ", "Next token is");
1356 yy_symbol_print((bsl_stderr()), yytoken, &expression_yylval, &expression_yylloc);
1357 fprintf((bsl_stderr()), "\n");
1362 if(yyn < 0 || 7763 < yyn || yycheck[yyn] != yytoken)
1367 if(yyn == 0 || yyn == -427)
1376 if(expression_yydebug)
1378 fprintf((bsl_stderr()), "%s ", "Shifting");
1379 yy_symbol_print((bsl_stderr()), yytoken, &expression_yylval, &expression_yylloc);
1380 fprintf((bsl_stderr()), "\n");
1383 expression_yychar = (-2);
1385 *++yyvsp = expression_yylval;
1386 *++yylsp = expression_yylloc;
1389 yyn = yydefact[yystate];
1395 yyval = yyvsp[1 - yylen];
1396 (yyloc.start = ((yylsp - yylen))[1].start);
1397 (yyloc.end = ((yylsp - yylen))[yylen].end);
1401 if(expression_yydebug)
1402 yy_reduce_print(yyvsp, yylsp, yyn);
1408 yyval.id = MkIdentifier(yytext);
1409 yyval.id->loc = (yylsp[(1) - (1)]);
1415 yyval.exp = MkExpBrackets(yyvsp[(2) - (3)].list);
1416 yyval.exp->loc = (yyloc);
1422 yyval.exp = MkExpIdentifier(yyvsp[(1) - (1)].id);
1423 yyval.exp->loc = (yyloc);
1429 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
1430 yyval.exp->loc = (yyloc);
1436 yyval.exp = MkExpConstant(yytext);
1437 yyval.exp->loc = (yyloc);
1443 yyval.exp = MkExpWideString(yytext);
1444 yyval.exp->loc = (yyloc);
1450 yyval.exp = MkExpString(yyvsp[(1) - (1)].string);
1451 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(1) - (1)].string), yyvsp[(1) - (1)].string = 0);
1452 yyval.exp->loc = (yyloc);
1458 yyval.exp = MkExpIntlString(yyvsp[(2) - (2)].string, (((void *)0)));
1459 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (2)].string), yyvsp[(2) - (2)].string = 0);
1460 yyval.exp->loc = (yyloc);
1466 yyval.exp = MkExpIntlString(yyvsp[(4) - (4)].string, yyvsp[(2) - (4)].string);
1467 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (4)].string), yyvsp[(2) - (4)].string = 0);
1468 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(4) - (4)].string), yyvsp[(4) - (4)].string = 0);
1469 yyval.exp->loc = (yyloc);
1475 struct Expression * exp = MkExpDummy();
1477 exp->loc.start = (yylsp[(1) - (2)]).end;
1478 exp->loc.end = (yylsp[(2) - (2)]).start;
1479 yyval.exp = MkExpBrackets(MkListOne(exp));
1480 yyval.exp->loc = (yyloc);
1487 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
1488 yyval.exp->loc = (yyloc);
1494 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
1495 yyval.exp->loc = (yyloc);
1501 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
1502 yyval.exp->loc = (yyloc);
1508 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
1509 yyval.exp->loc = (yyloc);
1515 yyval.exp = MkExpRenew(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
1516 yyval.exp->loc = (yyloc);
1522 yyval.exp = MkExpRenew(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
1523 yyval.exp->loc = (yyloc);
1529 yyval.exp = MkExpRenew0(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
1530 yyval.exp->loc = (yyloc);
1536 yyval.exp = MkExpRenew0(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
1537 yyval.exp->loc = (yyloc);
1543 yyval.exp = MkExpDummy();
1550 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
1551 yyval.exp->loc = (yyloc);
1557 yyval.exp = MkExpIndex(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
1558 yyval.exp->loc = (yyloc);
1564 yyval.exp = MkExpCall(yyvsp[(1) - (3)].exp, MkList());
1565 yyval.exp->__anon1.call.argLoc.start = (yylsp[(2) - (3)]).start;
1566 yyval.exp->__anon1.call.argLoc.end = (yylsp[(3) - (3)]).end;
1567 yyval.exp->loc = (yyloc);
1573 yyval.exp = MkExpCall(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
1574 yyval.exp->__anon1.call.argLoc.start = (yylsp[(2) - (4)]).start;
1575 yyval.exp->__anon1.call.argLoc.end = (yylsp[(4) - (4)]).end;
1576 yyval.exp->loc = (yyloc);
1582 yyval.exp = MkExpMember(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
1583 yyval.exp->loc = (yyloc);
1589 char * constant = yyvsp[(1) - (2)].exp->type == 2 ? yyvsp[(1) - (2)].exp->__anon1.__anon1.constant : (((void *)0));
1590 int len = constant ? strlen(constant) : 0;
1592 if(constant && constant[len - 1] == '.')
1594 constant[len - 1] = 0;
1595 yyval.exp = MkExpMember(yyvsp[(1) - (2)].exp, yyvsp[(2) - (2)].id);
1596 yyval.exp->loc = (yyloc);
1605 yyval.exp = MkExpPointer(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
1606 yyval.exp->loc = (yyloc);
1612 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, INC_OP, (((void *)0)));
1613 yyval.exp->loc = (yyloc);
1619 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, DEC_OP, (((void *)0)));
1620 yyval.exp->loc = (yyloc);
1626 yyval.list = MkList();
1627 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
1633 yyval.list = MkList();
1634 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
1640 yyval.list = yyvsp[(1) - (3)].list;
1641 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
1647 yyval.list = yyvsp[(1) - (3)].list;
1648 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
1654 yyval.exp = MkExpOp((((void *)0)), INC_OP, yyvsp[(2) - (2)].exp);
1655 yyval.exp->loc = (yyloc);
1661 yyval.exp = MkExpOp((((void *)0)), DEC_OP, yyvsp[(2) - (2)].exp);
1662 yyval.exp->loc = (yyloc);
1668 yyval.exp = MkExpOp((((void *)0)), yyvsp[(1) - (2)].i, yyvsp[(2) - (2)].exp);
1669 yyval.exp->loc = (yyloc);
1675 yyval.exp = MkExpOp((((void *)0)), SIZEOF, yyvsp[(2) - (2)].exp);
1676 yyval.exp->loc = (yyloc);
1682 yyval.exp = MkExpTypeSize(yyvsp[(3) - (4)].typeName);
1683 yyval.exp->loc = (yyloc);
1689 yyval.exp = MkExpOp((((void *)0)), ALIGNOF, yyvsp[(2) - (2)].exp);
1690 yyval.exp->loc = (yyloc);
1696 yyval.exp = MkExpTypeAlign(yyvsp[(3) - (4)].typeName);
1697 yyval.exp->loc = (yyloc);
1745 yyval.exp = MkExpCast(yyvsp[(2) - (4)].typeName, yyvsp[(4) - (4)].exp);
1746 yyval.exp->loc = (yyloc);
1752 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '*', yyvsp[(3) - (3)].exp);
1753 yyval.exp->loc = (yyloc);
1759 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '/', yyvsp[(3) - (3)].exp);
1760 yyval.exp->loc = (yyloc);
1766 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '%', yyvsp[(3) - (3)].exp);
1767 yyval.exp->loc = (yyloc);
1773 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '+', yyvsp[(3) - (3)].exp);
1774 yyval.exp->loc = (yyloc);
1780 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '-', yyvsp[(3) - (3)].exp);
1781 yyval.exp->loc = (yyloc);
1787 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LEFT_OP, yyvsp[(3) - (3)].exp);
1788 yyval.exp->loc = (yyloc);
1794 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, RIGHT_OP, yyvsp[(3) - (3)].exp);
1795 yyval.exp->loc = (yyloc);
1801 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '<', yyvsp[(3) - (3)].exp);
1802 yyval.exp->loc = (yyloc);
1808 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '>', yyvsp[(3) - (3)].exp);
1809 yyval.exp->loc = (yyloc);
1815 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LE_OP, yyvsp[(3) - (3)].exp);
1816 yyval.exp->loc = (yyloc);
1822 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, GE_OP, yyvsp[(3) - (3)].exp);
1823 yyval.exp->loc = (yyloc);
1829 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, EQ_OP, yyvsp[(3) - (3)].exp);
1830 yyval.exp->loc = (yyloc);
1836 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, NE_OP, yyvsp[(3) - (3)].exp);
1837 yyval.exp->loc = (yyloc);
1843 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '&', yyvsp[(3) - (3)].exp);
1844 yyval.exp->loc = (yyloc);
1850 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '^', yyvsp[(3) - (3)].exp);
1851 yyval.exp->loc = (yyloc);
1857 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '|', yyvsp[(3) - (3)].exp);
1858 yyval.exp->loc = (yyloc);
1864 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, AND_OP, yyvsp[(3) - (3)].exp);
1865 yyval.exp->loc = (yyloc);
1871 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, OR_OP, yyvsp[(3) - (3)].exp);
1872 yyval.exp->loc = (yyloc);
1878 yyval.exp = MkExpCondition(yyvsp[(1) - (5)].exp, yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].exp);
1879 yyval.exp->loc = (yyloc);
1885 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
1886 yyval.exp->loc = (yyloc);
1893 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
1894 yyval.exp->loc = (yyloc);
1900 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
1901 yyval.exp->loc = (yyloc);
1907 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
1908 yyval.exp->loc = (yyloc);
1920 yyval.i = MUL_ASSIGN;
1926 yyval.i = DIV_ASSIGN;
1932 yyval.i = MOD_ASSIGN;
1938 yyval.i = ADD_ASSIGN;
1944 yyval.i = SUB_ASSIGN;
1950 yyval.i = LEFT_ASSIGN;
1956 yyval.i = RIGHT_ASSIGN;
1962 yyval.i = AND_ASSIGN;
1968 yyval.i = XOR_ASSIGN;
1974 yyval.i = OR_ASSIGN;
1980 yyval.list = MkList();
1981 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
1987 yyval.list = yyvsp[(1) - (3)].list;
1988 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
1994 yyval.declaration = MkDeclaration(yyvsp[(1) - (2)].list, (((void *)0)));
1995 yyval.declaration->loc = (yyloc);
2001 yyval.declaration = MkDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list);
2002 yyval.declaration->loc = (yyloc);
2008 yyval.declaration = MkDeclarationInst(yyvsp[(1) - (2)].instance);
2009 yyval.declaration->loc = (yyloc);
2015 yyval.declaration = MkDeclarationDefine(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].exp);
2016 yyval.declaration->loc = (yyloc);
2022 yyval.list = MkList();
2023 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2029 yyval.list = yyvsp[(1) - (2)].list;
2030 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2036 yyval.list = MkList();
2037 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2043 yyval.list = yyvsp[(1) - (2)].list;
2044 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2050 yyval.list = MkList();
2051 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2057 yyval.list = yyvsp[(1) - (2)].list;
2058 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2064 yyval.list = MkList();
2065 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2071 yyval.list = yyvsp[(1) - (2)].list;
2072 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2078 yyval.list = MkList();
2079 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2085 yyval.list = yyvsp[(1) - (2)].list;
2086 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2092 yyval.list = MkList();
2093 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2099 yyval.list = yyvsp[(1) - (2)].list;
2100 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2106 yyval.list = MkList();
2107 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2113 yyval.list = yyvsp[(1) - (2)].list;
2114 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2120 yyval.list = MkList();
2121 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2127 yyval.list = yyvsp[(1) - (2)].list;
2128 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2134 yyval.list = MkList();
2135 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2141 yyval.list = yyvsp[(1) - (2)].list;
2142 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2148 yyval.list = MkList();
2149 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2155 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2161 yyval.list = MkList();
2162 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2168 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2174 yyval.list = MkList();
2175 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2181 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2187 yyval.list = MkList();
2188 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2194 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2200 yyval.list = MkList();
2201 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2207 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2213 yyval.list = MkList();
2214 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2220 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2226 yyval.list = MkList();
2227 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2233 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2239 yyval.list = MkList();
2240 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2246 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2252 yyval.list = MkList();
2253 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
2259 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
2265 yyval.list = MkList();
2266 ListAdd(yyval.list, yyvsp[(1) - (1)].initDeclarator);
2272 yyval.list = yyvsp[(1) - (3)].list;
2273 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initDeclarator);
2279 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
2280 yyval.initDeclarator->loc = (yyloc);
2286 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].initializer);
2287 yyval.initDeclarator->loc = (yyloc);
2288 yyval.initDeclarator->initializer->loc.start = (yylsp[(2) - (3)]).end;
2294 yyval.specifier = MkSpecifier(TYPEDEF);
2300 yyval.specifier = MkSpecifier(EXTERN);
2306 yyval.specifier = MkSpecifier(STATIC);
2312 yyval.specifier = MkSpecifier(AUTO);
2318 yyval.specifier = MkSpecifier(REGISTER);
2324 yyval.specifier = MkSpecifier(THREAD);
2330 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
2336 yyval.extDecl = MkExtDeclAttrib(yyvsp[(1) - (1)].attrib);
2348 yyval.i = ATTRIB_DEP;
2360 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
2366 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
2372 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
2378 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
2384 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
2390 yyval.attribute = MkAttribute(yyvsp[(1) - (1)].string, (((void *)0)));
2391 yyval.attribute->loc = (yyloc);
2397 yyval.attribute = MkAttribute(yyvsp[(1) - (4)].string, MkExpBrackets(yyvsp[(3) - (4)].list));
2398 yyval.attribute->loc = (yyloc);
2404 yyval.list = MkListOne(yyvsp[(1) - (1)].attribute);
2410 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].attribute);
2411 yyval.list = yyvsp[(1) - (2)].list;
2417 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].attribute);
2418 yyval.list = yyvsp[(1) - (3)].list;
2424 yyval.attrib = MkAttrib(yyvsp[(1) - (6)].i, yyvsp[(4) - (6)].list);
2425 yyval.attrib->loc = (yyloc);
2431 yyval.attrib = MkAttrib(yyvsp[(1) - (5)].i, (((void *)0)));
2432 yyval.attrib->loc = (yyloc);
2438 yyval.specifier = MkSpecifier(CONST);
2444 yyval.specifier = MkSpecifier(VOLATILE);
2450 yyval.specifier = MkSpecifierExtended(MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext)));
2456 yyval.specifier = yyvsp[(1) - (1)].specifier;
2462 yyval.specifier = MkSpecifierName(yytext);
2468 yyval.specifier = MkSpecifier(VOID);
2474 yyval.specifier = MkSpecifier(CHAR);
2480 yyval.specifier = MkSpecifier(SHORT);
2486 yyval.specifier = MkSpecifier(INT);
2492 yyval.specifier = MkSpecifier(UINT);
2498 yyval.specifier = MkSpecifier(INT64);
2504 yyval.specifier = MkSpecifier(INT128);
2510 yyval.specifier = MkSpecifier(VALIST);
2516 yyval.specifier = MkSpecifier(LONG);
2522 yyval.specifier = MkSpecifier(FLOAT);
2528 yyval.specifier = MkSpecifier(DOUBLE);
2534 yyval.specifier = MkSpecifier(SIGNED);
2540 yyval.specifier = MkSpecifier(UNSIGNED);
2546 yyval.specifier = MkSpecifier(EXTENSION);
2552 yyval.specifier = MkSpecifier(_BOOL);
2558 yyval.specifier = MkSpecifier(BOOL);
2564 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
2570 yyval.specifier = MkSpecifier(THISCLASS);
2576 yyval.specifier = MkSpecifier(VOID);
2582 yyval.specifier = MkSpecifier(CHAR);
2588 yyval.specifier = MkSpecifier(SHORT);
2594 yyval.specifier = MkSpecifier(INT);
2600 yyval.specifier = MkSpecifier(UINT);
2606 yyval.specifier = MkSpecifier(INT64);
2612 yyval.specifier = MkSpecifier(INT128);
2618 yyval.specifier = MkSpecifier(VALIST);
2624 yyval.specifier = MkSpecifier(LONG);
2630 yyval.specifier = MkSpecifier(FLOAT);
2636 yyval.specifier = MkSpecifier(DOUBLE);
2642 yyval.specifier = MkSpecifier(SIGNED);
2648 yyval.specifier = MkSpecifier(UNSIGNED);
2654 yyval.specifier = MkSpecifier(_BOOL);
2660 yyval.specifier = MkSpecifier(BOOL);
2666 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
2672 yyval.specifier = MkSpecifier(THISCLASS);
2678 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
2680 DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
2686 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), yyvsp[(3) - (4)].list);
2692 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, yyvsp[(2) - (4)].id, (((void *)0)));
2694 DeclClass(yyvsp[(2) - (4)].id->_class, yyvsp[(2) - (4)].id->string);
2700 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, (((void *)0)), (((void *)0)));
2706 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, MkIdentifier(yyvsp[(2) - (5)].specifier->__anon1.__anon1.name), yyvsp[(4) - (5)].list);
2708 DeclClass(yyvsp[(2) - (5)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (5)].specifier->__anon1.__anon1.name);
2709 FreeSpecifier(yyvsp[(2) - (5)].specifier);
2715 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, yyvsp[(3) - (6)].id, yyvsp[(5) - (6)].list);
2716 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (6)].extDecl;
2718 DeclClass(yyvsp[(3) - (6)].id->_class, yyvsp[(3) - (6)].id->string);
2724 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, (((void *)0)), yyvsp[(4) - (5)].list);
2725 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (5)].extDecl;
2731 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(3) - (5)].id, (((void *)0)));
2732 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (5)].extDecl;
2734 DeclClass(yyvsp[(3) - (5)].id->_class, yyvsp[(3) - (5)].id->string);
2740 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), (((void *)0)));
2741 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (4)].extDecl;
2747 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, MkIdentifier(yyvsp[(3) - (6)].specifier->__anon1.__anon1.name), yyvsp[(5) - (6)].list);
2748 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (6)].extDecl;
2750 DeclClass(yyvsp[(3) - (6)].specifier->__anon1.__anon1.nsSpec, yyvsp[(3) - (6)].specifier->__anon1.__anon1.name);
2751 FreeSpecifier(yyvsp[(3) - (6)].specifier);
2757 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, yyvsp[(2) - (2)].id, (((void *)0)));
2759 DeclClass(yyvsp[(2) - (2)].id->_class, yyvsp[(2) - (2)].id->string);
2765 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, MkIdentifier(yyvsp[(2) - (2)].specifier->__anon1.__anon1.name), (((void *)0)));
2767 DeclClass(yyvsp[(2) - (2)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (2)].specifier->__anon1.__anon1.name);
2768 FreeSpecifier(yyvsp[(2) - (2)].specifier);
2774 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, yyvsp[(3) - (3)].id, (((void *)0)));
2775 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (3)].extDecl;
2777 DeclClass(yyvsp[(3) - (3)].id->_class, yyvsp[(3) - (3)].id->string);
2783 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, MkIdentifier(yyvsp[(3) - (3)].specifier->__anon1.__anon1.name), (((void *)0)));
2784 yyval.specifier->__anon1.__anon2.extDeclStruct = yyvsp[(2) - (3)].extDecl;
2786 DeclClass(yyvsp[(3) - (3)].specifier->__anon1.__anon1.nsSpec, yyvsp[(3) - (3)].specifier->__anon1.__anon1.name);
2787 FreeSpecifier(yyvsp[(3) - (3)].specifier);
2793 yyval.specifierType = 3;
2799 yyval.specifierType = 4;
2805 yyval.list = MkList();
2806 ListAdd(yyval.list, yyvsp[(1) - (1)].classDef);
2812 yyval.list = yyvsp[(1) - (2)].list;
2813 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].classDef);
2819 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
2820 yyval.memberInit->loc = (yyloc);
2821 yyval.memberInit->realLoc = (yyloc);
2822 yyval.memberInit->initializer->loc.start = (yylsp[(2) - (3)]).end;
2828 yyval.list = MkList();
2829 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
2830 ((struct MemberInit *)(*yyval.list).last)->loc = (yyloc);
2836 yyval.list = yyvsp[(1) - (3)].list;
2837 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
2838 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
2844 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
2845 yyval.prop->loc = (yyloc);
2851 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
2852 yyval.prop->loc = (yyloc);
2858 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, yyvsp[(6) - (7)].stmt, (((void *)0)));
2859 yyval.prop->loc = (yyloc);
2865 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, (((void *)0)), yyvsp[(6) - (7)].stmt);
2866 yyval.prop->loc = (yyloc);
2872 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, (((void *)0)), yyvsp[(3) - (5)].id, (((void *)0)), (((void *)0)));
2873 yyval.prop->loc = (yyloc);
2879 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(7) - (10)].stmt, yyvsp[(9) - (10)].stmt);
2880 yyval.prop->loc = (yyloc);
2886 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(9) - (10)].stmt, yyvsp[(7) - (10)].stmt);
2887 yyval.prop->loc = (yyloc);
2893 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, yyvsp[(7) - (8)].stmt, (((void *)0)));
2894 yyval.prop->loc = (yyloc);
2900 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, (((void *)0)), yyvsp[(7) - (8)].stmt);
2901 yyval.prop->loc = (yyloc);
2907 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator, yyvsp[(4) - (6)].id, (((void *)0)), (((void *)0)));
2908 yyval.prop->loc = (yyloc);
2914 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (8)].stmt, yyvsp[(7) - (8)].stmt);
2915 yyval.prop->loc = (yyloc);
2921 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(7) - (8)].stmt, yyvsp[(5) - (8)].stmt);
2922 yyval.prop->loc = (yyloc);
2928 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt, (((void *)0)));
2929 yyval.prop->loc = (yyloc);
2935 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt);
2936 yyval.prop->loc = (yyloc);
2942 yyval.prop = MkProperty(yyvsp[(2) - (4)].list, (((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2943 yyval.prop->loc = (yyloc);
2949 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
2950 yyval.prop->loc = (yyloc);
2956 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
2957 yyval.prop->loc = (yyloc);
2963 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), yyvsp[(6) - (7)].stmt, (((void *)0)));
2964 yyval.prop->loc = (yyloc);
2970 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), (((void *)0)), yyvsp[(6) - (7)].stmt);
2971 yyval.prop->loc = (yyloc);
2977 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, yyvsp[(3) - (5)].declarator, (((void *)0)), (((void *)0)), (((void *)0)));
2978 yyval.prop->loc = (yyloc);
2984 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list, (((void *)0))));
2985 yyval.classDef->__anon1.decl->loc = (yyloc);
2986 yyval.classDef->loc = (yyloc);
2992 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (2)].list, (((void *)0)), (((void *)0))));
2993 yyval.classDef->__anon1.decl->loc = (yyloc);
2994 yyval.classDef->loc = (yyloc);
3000 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
3001 yyval.classDef->loc = (yyloc);
3002 yyval.classDef->__anon1.decl->loc = (yyloc);
3008 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
3009 yyval.classDef->loc = (yyloc);
3010 yyval.classDef->__anon1.decl->loc = (yyloc);
3016 yyval.classDef = MkClassDefFunction(yyvsp[(1) - (1)].classFunction);
3017 yyval.classDef->loc = (yyloc);
3023 yyval.classDef = MkClassDefDefaultProperty(yyvsp[(1) - (2)].list);
3024 if((*yyvsp[(1) - (2)].list).last)
3025 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).start;
3026 yyval.classDef->loc = (yyloc);
3032 yyval.classDef = MkClassDefProperty(yyvsp[(1) - (1)].prop);
3033 yyval.classDef->loc = (yyloc);
3039 yyval.classDef = (((void *)0));
3045 yyval.list = MkList();
3046 ListAdd(yyval.list, yyvsp[(1) - (1)].declarator);
3052 yyval.list = yyvsp[(1) - (3)].list;
3053 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].declarator);
3059 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
3060 yyval.declarator->loc = (yyloc);
3066 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (2)].declarator, (((void *)0)));
3067 yyval.declarator->__anon1.structDecl.attrib = yyvsp[(2) - (2)].attrib;
3068 yyval.declarator->loc = (yyloc);
3074 yyval.declarator = MkStructDeclarator((((void *)0)), yyvsp[(2) - (2)].exp);
3075 yyval.declarator->loc = (yyloc);
3081 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].exp);
3082 yyval.declarator->loc = (yyloc);
3088 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (5)].declarator, yyvsp[(3) - (5)].exp);
3089 yyval.declarator->__anon1.structDecl.posExp = yyvsp[(5) - (5)].exp;
3090 yyval.declarator->loc = (yyloc);
3096 yyval.specifier = MkEnum(yyvsp[(2) - (2)].id, (((void *)0)));
3098 DeclClass(yyvsp[(2) - (2)].id->_class, yyvsp[(2) - (2)].id->string);
3104 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (2)].specifier->__anon1.__anon1.name), (((void *)0)));
3106 DeclClass(yyvsp[(2) - (2)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (2)].specifier->__anon1.__anon1.name);
3107 FreeSpecifier(yyvsp[(2) - (2)].specifier);
3113 yyval.specifier = MkEnum((((void *)0)), yyvsp[(3) - (4)].list);
3119 yyval.specifier = MkEnum(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
3121 DeclClass(yyvsp[(2) - (5)].id->_class, yyvsp[(2) - (5)].id->string);
3127 yyval.specifier = MkEnum(yyvsp[(2) - (7)].id, yyvsp[(4) - (7)].list);
3128 yyval.specifier->__anon1.__anon2.definitions = yyvsp[(6) - (7)].list;
3130 DeclClass(yyvsp[(2) - (7)].id->_class, yyvsp[(2) - (7)].id->string);
3136 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (7)].specifier->__anon1.__anon1.name), yyvsp[(4) - (7)].list);
3137 yyval.specifier->__anon1.__anon2.definitions = yyvsp[(6) - (7)].list;
3139 DeclClass(yyvsp[(2) - (7)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (7)].specifier->__anon1.__anon1.name);
3140 FreeSpecifier(yyvsp[(2) - (7)].specifier);
3146 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (5)].specifier->__anon1.__anon1.name), yyvsp[(4) - (5)].list);
3148 DeclClass(yyvsp[(2) - (5)].specifier->__anon1.__anon1.nsSpec, yyvsp[(2) - (5)].specifier->__anon1.__anon1.name);
3149 FreeSpecifier(yyvsp[(2) - (5)].specifier);
3155 yyval.list = MkList();
3156 ListAdd(yyval.list, yyvsp[(1) - (1)].enumerator);
3162 yyval.list = yyvsp[(1) - (3)].list;
3163 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].enumerator);
3169 yyval.enumerator = MkEnumerator(yyvsp[(1) - (1)].id, (((void *)0)));
3175 yyval.enumerator = MkEnumerator(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].exp);
3181 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
3187 yyval.declarator = MkDeclaratorArray((((void *)0)), (((void *)0)));
3193 yyval.declarator = MkDeclaratorArray((((void *)0)), yyvsp[(2) - (3)].exp);
3199 yyval.declarator = MkDeclaratorEnumArray((((void *)0)), yyvsp[(2) - (3)].specifier);
3205 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
3211 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
3217 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
3223 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
3229 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
3235 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
3241 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
3247 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
3253 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
3259 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
3265 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
3271 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
3277 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
3283 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
3289 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
3295 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
3301 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
3307 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
3313 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
3319 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
3325 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
3331 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
3337 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
3343 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
3349 yyval.declarator = MkDeclaratorIdentifier(yyvsp[(1) - (1)].id);
3355 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
3361 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
3367 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
3373 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
3379 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
3385 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
3391 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
3397 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
3403 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
3409 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
3415 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
3421 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
3427 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (2)].declarator, (((void *)0)));
3433 yyval.list = MkList();
3434 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3440 yyval.list = yyvsp[(1) - (2)].list;
3441 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3447 yyval.pointer = MkPointer((((void *)0)), (((void *)0)));
3453 yyval.pointer = MkPointer(yyvsp[(2) - (2)].list, (((void *)0)));
3459 yyval.pointer = MkPointer((((void *)0)), yyvsp[(2) - (2)].pointer);
3465 yyval.pointer = MkPointer(yyvsp[(2) - (3)].list, yyvsp[(3) - (3)].pointer);
3471 yyval.list = yyvsp[(1) - (3)].list;
3472 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), (((void *)0))));
3478 yyval.list = MkList();
3479 ListAdd(yyval.list, yyvsp[(1) - (1)].typeName);
3485 yyval.list = yyvsp[(1) - (3)].list;
3486 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].typeName);
3492 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
3498 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
3504 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
3510 yyval.list = MkList();
3511 ListAdd(yyval.list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(1) - (1)].id)));
3517 yyval.list = yyvsp[(1) - (3)].list;
3518 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(3) - (3)].id)));
3524 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
3530 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
3536 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
3537 yyval.initializer->loc = (yyloc);
3543 yyval.initializer = MkInitializerList(yyvsp[(2) - (3)].list);
3544 yyval.initializer->loc = (yyloc);
3550 yyval.initializer = MkInitializerList(yyvsp[(2) - (4)].list);
3551 yyval.initializer->loc = (yyloc);
3553 struct Expression * exp = MkExpDummy();
3554 struct Initializer * init = MkInitializerAssignment(exp);
3556 init->loc = (yylsp[(3) - (4)]);
3557 exp->loc = (yylsp[(3) - (4)]);
3558 ListAdd(yyvsp[(2) - (4)].list, init);
3565 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
3566 yyval.initializer->loc = (yyloc);
3572 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
3573 yyval.initializer->loc = (yyloc);
3579 yyval.list = MkList();
3580 ListAdd(yyval.list, yyvsp[(1) - (1)].initializer);
3586 yyval.list = yyvsp[(1) - (3)].list;
3587 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initializer);
3593 yyval.stmt = MkLabeledStmt(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].stmt);
3594 yyval.stmt->loc = (yyloc);
3600 yyval.stmt = MkCaseStmt(yyvsp[(2) - (4)].exp, yyvsp[(4) - (4)].stmt);
3601 yyval.stmt->loc = (yyloc);
3602 yyvsp[(2) - (4)].exp->loc.start = (yylsp[(1) - (4)]).end;
3608 yyval.stmt = MkCaseStmt((((void *)0)), yyvsp[(3) - (3)].stmt);
3609 yyval.stmt->loc = (yyloc);
3615 yyval.list = MkList();
3616 ListAdd(yyval.list, yyvsp[(1) - (1)].declaration);
3622 yyval.list = yyvsp[(1) - (2)].list;
3623 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declaration);
3629 yyval.list = MkList();
3630 ListAdd(yyval.list, yyvsp[(1) - (1)].stmt);
3636 yyval.list = yyvsp[(1) - (2)].list;
3637 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].stmt);
3643 struct Statement * stmt = MkBadDeclStmt(yyvsp[(2) - (2)].declaration);
3645 stmt->loc = (yylsp[(2) - (2)]);
3646 ListAdd(yyvsp[(1) - (2)].list, stmt);
3647 yyval.list = yyvsp[(1) - (2)].list;
3653 yyval.stmt = MkCompoundStmt((((void *)0)), yyvsp[(1) - (1)].list);
3659 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (1)].list, (((void *)0)));
3665 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].list);
3671 yyval.context = PushContext();
3677 yyval.stmt = MkCompoundStmt((((void *)0)), (((void *)0)));
3678 yyval.stmt->__anon1.compound.context = PushContext();
3679 PopContext(yyval.stmt->__anon1.compound.context);
3680 yyval.stmt->loc = (yyloc);
3686 yyval.stmt = yyvsp[(2) - (3)].stmt;
3687 yyval.stmt->__anon1.compound.context = yyvsp[(1) - (3)].context;
3688 PopContext(yyvsp[(1) - (3)].context);
3689 yyval.stmt->loc = (yyloc);
3695 yyval.stmt = MkExpressionStmt((((void *)0)));
3696 yyval.stmt->loc = (yyloc);
3702 yyval.stmt = MkExpressionStmt(yyvsp[(1) - (2)].list);
3703 yyval.stmt->loc = (yyloc);
3709 yyval.stmt = MkIfStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt, (((void *)0)));
3710 yyval.stmt->loc = (yyloc);
3716 yyval.stmt = MkIfStmt(yyvsp[(3) - (7)].list, yyvsp[(5) - (7)].stmt, yyvsp[(7) - (7)].stmt);
3717 yyval.stmt->loc = (yyloc);
3723 yyval.stmt = MkSwitchStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
3724 yyval.stmt->loc = (yyloc);
3730 yyval.stmt = MkWhileStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
3731 yyval.stmt->loc = (yyloc);
3737 yyval.stmt = MkDoWhileStmt(yyvsp[(2) - (7)].stmt, yyvsp[(5) - (7)].list);
3738 yyval.stmt->loc = (yyloc);
3744 yyval.stmt = MkForStmt(yyvsp[(3) - (6)].stmt, yyvsp[(4) - (6)].stmt, (((void *)0)), yyvsp[(6) - (6)].stmt);
3745 yyval.stmt->loc = (yyloc);
3751 yyval.stmt = MkForStmt(yyvsp[(3) - (7)].stmt, yyvsp[(4) - (7)].stmt, yyvsp[(5) - (7)].list, yyvsp[(7) - (7)].stmt);
3752 yyval.stmt->loc = (yyloc);
3758 yyval.stmt = MkWhileStmt((((void *)0)), yyvsp[(4) - (4)].stmt);
3759 yyval.stmt->loc = (yyloc);
3765 yyval.stmt = MkForStmt(yyvsp[(3) - (5)].stmt, (((void *)0)), (((void *)0)), yyvsp[(5) - (5)].stmt);
3766 yyval.stmt->loc = (yyloc);
3772 yyval.stmt = MkForStmt((((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(4) - (4)].stmt);
3773 yyval.stmt->loc = (yyloc);
3779 yyval.stmt = MkGotoStmt(yyvsp[(2) - (3)].id);
3780 yyval.stmt->loc = (yyloc);
3786 yyval.stmt = MkContinueStmt();
3787 yyval.stmt->loc = (yyloc);
3793 yyval.stmt = MkBreakStmt();
3794 yyval.stmt->loc = (yyloc);
3800 struct Expression * exp = MkExpDummy();
3802 yyval.stmt = MkReturnStmt(MkListOne(exp));
3803 yyval.stmt->loc = (yyloc);
3804 exp->loc = (yylsp[(2) - (2)]);
3810 yyval.stmt = MkReturnStmt(yyvsp[(2) - (3)].list);
3811 yyval.stmt->loc = (yyloc);
3817 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3823 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
3824 yyval.instance->loc = (yyloc);
3825 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
3826 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
3827 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
3833 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
3834 yyval.instance->loc = (yyloc);
3835 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
3836 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
3837 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
3843 yyval.instance = MkInstantiation(yyvsp[(1) - (4)].specifier, (((void *)0)), yyvsp[(3) - (4)].list);
3844 yyval.instance->loc = (yyloc);
3845 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
3846 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
3852 yyval.instance = MkInstantiation(yyvsp[(1) - (3)].specifier, (((void *)0)), MkList());
3853 yyval.instance->loc = (yyloc);
3854 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
3855 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
3861 struct Location tmpLoc = expression_yylloc;
3863 expression_yylloc = (yylsp[(1) - (4)]);
3864 expression_yylloc = tmpLoc;
3865 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (4)].id->string), (((void *)0)), yyvsp[(3) - (4)].list);
3866 yyval.instance->loc = (yyloc);
3867 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
3868 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
3869 FreeIdentifier(yyvsp[(1) - (4)].id);
3875 struct Location tmpLoc = expression_yylloc;
3877 expression_yylloc = (yylsp[(1) - (3)]);
3878 expression_yylloc = tmpLoc;
3879 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (3)].id->string), (((void *)0)), MkList());
3880 yyval.instance->loc = (yyloc);
3881 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
3882 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
3883 FreeIdentifier(yyvsp[(1) - (3)].id);
3889 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), yyvsp[(2) - (3)].list);
3890 yyval.instance->loc = (yyloc);
3891 yyval.instance->insideLoc.start = (yylsp[(1) - (3)]).end;
3892 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
3898 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), MkList());
3899 yyval.instance->loc = (yyloc);
3900 yyval.instance->insideLoc.start = (yylsp[(1) - (2)]).end;
3901 yyval.instance->insideLoc.end = (yylsp[(2) - (2)]).start;
3907 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
3908 yyval.classFunction->loc = (yyloc);
3914 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(1) - (1)].declarator, (((void *)0)));
3915 yyval.classFunction->loc = (yyloc);
3921 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
3922 yyval.classFunction->isConstructor = 1;
3923 yyval.classFunction->loc = (yyloc);
3924 FreeList(yyvsp[(1) - (3)].list, (void *)(FreeSpecifier));
3930 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
3931 yyval.classFunction->isDestructor = 1;
3932 yyval.classFunction->loc = (yyloc);
3933 FreeList(yyvsp[(2) - (4)].list, (void *)(FreeSpecifier));
3939 yyval.classFunction = MkClassFunction(yyvsp[(2) - (3)].list, (((void *)0)), yyvsp[(3) - (3)].declarator, (((void *)0)));
3940 yyval.classFunction->isVirtual = 1;
3941 yyval.classFunction->loc = (yyloc);
3947 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
3948 yyval.classFunction->isVirtual = 1;
3949 yyval.classFunction->loc = (yyloc);
3955 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
3956 yyval.classFunction->loc = (yyloc);
3962 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
3963 yyval.classFunction->loc = (yyloc);
3969 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, (((void *)0)));
3970 yyval.classFunction->loc = (yyloc);
3976 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
3977 yyval.classFunction->loc = (yyloc);
3983 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
3984 yyval.classFunction->loc = (yyloc);
3990 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
3991 yyval.classFunction->loc = (yyloc);
3997 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
3998 yyval.classFunction->loc = (yyloc);
4004 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
4005 yyval.memberInit->loc = (yyloc);
4006 yyval.memberInit->realLoc = (yyloc);
4007 yyval.memberInit->initializer->loc.start = (yylsp[(2) - (3)]).end;
4013 yyval.memberInit = MkMemberInit((((void *)0)), yyvsp[(1) - (1)].initializer);
4014 yyval.memberInit->loc = (yyloc);
4015 yyval.memberInit->realLoc = (yyloc);
4021 yyval.list = MkList();
4022 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
4028 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
4029 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
4030 yyval.list = yyvsp[(1) - (3)].list;
4036 if((*yyvsp[(1) - (2)].list).last)
4037 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).end;
4038 yyval.list = yyvsp[(1) - (2)].list;
4044 struct MembersInit * members = MkMembersInitList(yyvsp[(1) - (1)].list);
4046 yyval.list = MkList();
4047 ListAdd(yyval.list, members);
4048 members->loc = (yylsp[(1) - (1)]);
4054 yyval.list = MkList();
4055 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(1) - (1)].classFunction));
4056 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
4062 struct MembersInit * members = MkMembersInitList(yyvsp[(2) - (2)].list);
4064 ListAdd(yyval.list, members);
4065 members->loc = (yylsp[(2) - (2)]);
4066 yyval.list = yyvsp[(1) - (2)].list;
4072 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(2) - (2)].classFunction));
4073 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
4074 yyval.list = yyvsp[(1) - (2)].list;
4080 struct MembersInit * members = MkMembersInitList(MkList());
4082 yyval.list = MkList();
4083 ListAdd(yyval.list, members);
4084 members->loc = (yylsp[(1) - (1)]);
4090 struct MembersInit * members = MkMembersInitList(MkList());
4092 ListAdd(yyval.list, members);
4093 members->loc = (yylsp[(2) - (2)]);
4094 yyval.list = yyvsp[(1) - (2)].list;
4100 yyval.list = MkList();
4101 ListAdd(yyval.list, MkMembersInitList(yyvsp[(1) - (1)].list));
4102 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
4108 ListAdd(yyvsp[(1) - (2)].list, MkMembersInitList(yyvsp[(2) - (2)].list));
4109 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
4115 parsedExpression = yyvsp[(1) - (1)].exp;
4124 if(expression_yydebug)
4126 fprintf((bsl_stderr()), "%s ", "-> $$ =");
4127 yy_symbol_print((bsl_stderr()), yyr1[yyn], &yyval, &yyloc);
4128 fprintf((bsl_stderr()), "\n");
4131 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
4135 if(expression_yydebug)
4136 yy_stack_print((yyss), (yyssp));
4141 yystate = yypgoto[yyn - 146] + *yyssp;
4142 if(0 <= yystate && yystate <= 7763 && yycheck[yystate] == *yyssp)
4143 yystate = yytable[yystate];
4145 yystate = yydefgoto[yyn - 146];
4150 ++expression_yynerrs;
4151 yyerror("syntax error");
4153 yyerror_range[0] = expression_yylloc;
4154 if(yyerrstatus == 3)
4156 if(expression_yychar <= 0)
4158 if(expression_yychar == 0)
4163 yydestruct("Error: discarding", yytoken, &expression_yylval, &expression_yylloc);
4164 expression_yychar = (-2);
4171 yyerror_range[0] = yylsp[1 - yylen];
4172 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
4176 if(expression_yydebug)
4177 yy_stack_print((yyss), (yyssp));
4185 yyn = yypact[yystate];
4189 if(0 <= yyn && yyn <= 7763 && yycheck[yyn] == 1)
4198 yyerror_range[0] = *yylsp;
4199 yydestruct("Error: popping", yystos[yystate], yyvsp, yylsp);
4200 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
4204 if(expression_yydebug)
4205 yy_stack_print((yyss), (yyssp));
4208 *++yyvsp = expression_yylval;
4209 yyerror_range[1] = expression_yylloc;
4210 (yyloc.start = ((yyerror_range - 1))[1].start);
4211 (yyloc.end = ((yyerror_range - 1))[2].end);
4216 if(expression_yydebug)
4218 fprintf((bsl_stderr()), "%s ", "Shifting");
4219 yy_symbol_print((bsl_stderr()), yystos[yyn], yyvsp, yylsp);
4220 fprintf((bsl_stderr()), "\n");
4232 yyerror("memory exhausted");
4235 if(expression_yychar != (-2))
4236 yydestruct("Cleanup: discarding lookahead", yytoken, &expression_yylval, &expression_yylloc);
4237 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
4240 if(expression_yydebug)
4241 yy_stack_print((yyss), (yyssp));
4243 while(yyssp != yyss)
4245 yydestruct("Cleanup: popping", yystos[*yyssp], yyvsp, yylsp);
4246 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
4253 struct __ecereNameSpace__ecere__com__NameSpace;
4255 struct __ecereNameSpace__ecere__com__NameSpace
4258 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
4259 struct __ecereNameSpace__ecere__com__NameSpace * left;
4260 struct __ecereNameSpace__ecere__com__NameSpace * right;
4262 struct __ecereNameSpace__ecere__com__NameSpace * parent;
4263 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
4264 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
4265 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
4266 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
4269 struct __ecereNameSpace__ecere__com__Application
4272 const char * * argv;
4274 unsigned int isGUIApp;
4275 struct __ecereNameSpace__ecere__sys__OldList allModules;
4276 char * parsedCommand;
4277 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
4280 struct __ecereNameSpace__ecere__com__DataMember;
4282 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
4288 const char * dataTypeString;
4289 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
4290 } ecere_gcc_struct __anon1;
4291 struct __ecereNameSpace__ecere__com__DataValue expression;
4294 const char * memberString;
4297 struct __ecereNameSpace__ecere__com__DataMember * member;
4298 struct __ecereNameSpace__ecere__com__Property * prop;
4299 struct __ecereNameSpace__ecere__com__Method * method;
4300 } ecere_gcc_struct __anon1;
4301 } ecere_gcc_struct __anon2;
4302 } ecere_gcc_struct __anon1;
4305 struct __ecereNameSpace__ecere__com__DataMember
4307 struct __ecereNameSpace__ecere__com__DataMember * prev;
4308 struct __ecereNameSpace__ecere__com__DataMember * next;
4310 unsigned int isProperty;
4313 struct __ecereNameSpace__ecere__com__Class * _class;
4314 const char * dataTypeString;
4315 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
4316 struct Type * dataType;
4320 struct __ecereNameSpace__ecere__sys__OldList members;
4321 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
4323 short structAlignment;
4324 short pointerAlignment;
4327 struct __ecereNameSpace__ecere__com__Module;
4329 struct __ecereNameSpace__ecere__com__Module
4331 struct __ecereNameSpace__ecere__com__Instance * application;
4332 struct __ecereNameSpace__ecere__sys__OldList classes;
4333 struct __ecereNameSpace__ecere__sys__OldList defines;
4334 struct __ecereNameSpace__ecere__sys__OldList functions;
4335 struct __ecereNameSpace__ecere__sys__OldList modules;
4336 struct __ecereNameSpace__ecere__com__Instance * prev;
4337 struct __ecereNameSpace__ecere__com__Instance * next;
4343 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
4344 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
4347 struct __ecereNameSpace__ecere__com__Class
4349 struct __ecereNameSpace__ecere__com__Class * prev;
4350 struct __ecereNameSpace__ecere__com__Class * next;
4356 unsigned int (* Constructor)(void * );
4357 void (* Destructor)(void * );
4360 struct __ecereNameSpace__ecere__com__Class * base;
4361 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
4362 struct __ecereNameSpace__ecere__sys__BinaryTree members;
4363 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
4364 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
4365 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
4366 struct __ecereNameSpace__ecere__sys__OldList derivatives;
4370 struct __ecereNameSpace__ecere__com__Instance * module;
4371 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
4372 const char * dataTypeString;
4373 struct Type * dataType;
4375 int defaultAlignment;
4376 void (* Initialize)();
4378 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
4379 const char * designerClass;
4380 unsigned int noExpansion;
4381 const char * defaultProperty;
4382 unsigned int comRedefinition;
4385 unsigned int internalDecl;
4387 unsigned int computeSize;
4388 short structAlignment;
4389 short pointerAlignment;
4390 int destructionWatchOffset;
4392 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
4393 int inheritanceAccess;
4394 const char * fullName;
4396 struct __ecereNameSpace__ecere__sys__OldList conversions;
4397 struct __ecereNameSpace__ecere__sys__OldList templateParams;
4398 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
4399 struct __ecereNameSpace__ecere__com__Class * templateClass;
4400 struct __ecereNameSpace__ecere__sys__OldList templatized;
4402 unsigned int isInstanceClass;
4403 unsigned int byValueSystemClass;
4406 void __ecereRegisterModule_expression(struct __ecereNameSpace__ecere__com__Instance * module)
4408 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
4412 void __ecereUnregisterModule_expression(struct __ecereNameSpace__ecere__com__Instance * module)
4417 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
4419 static void yydestruct(const char * yymsg, int yytype, YYSTYPE * yyvaluep, struct Location * yylocationp)
4422 ((void)(yylocationp));
4427 if(expression_yydebug)
4429 fprintf((bsl_stderr()), "%s ", yymsg);
4430 yy_symbol_print((bsl_stderr()), yytype, yyvaluep, yylocationp);
4431 fprintf((bsl_stderr()), "\n");
4438 FreeIdentifier((*yyvaluep).id);
4444 FreeExpression((*yyvaluep).exp);
4450 FreeExpression((*yyvaluep).exp);
4456 FreeList((*yyvaluep).list, (void *)(FreeExpression));
4462 FreeExpression((*yyvaluep).exp);
4468 FreeExpression((*yyvaluep).exp);
4474 FreeExpression((*yyvaluep).exp);
4480 FreeExpression((*yyvaluep).exp);
4486 FreeExpression((*yyvaluep).exp);
4492 FreeExpression((*yyvaluep).exp);
4498 FreeExpression((*yyvaluep).exp);
4504 FreeExpression((*yyvaluep).exp);
4510 FreeExpression((*yyvaluep).exp);
4516 FreeExpression((*yyvaluep).exp);
4522 FreeExpression((*yyvaluep).exp);
4528 FreeExpression((*yyvaluep).exp);
4534 FreeExpression((*yyvaluep).exp);
4540 FreeExpression((*yyvaluep).exp);
4546 FreeList((*yyvaluep).list, (void *)(FreeExpression));
4552 FreeExpression((*yyvaluep).exp);
4558 FreeDeclaration((*yyvaluep).declaration);
4564 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
4570 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
4576 FreeList((*yyvaluep).list, (void *)(FreeInitDeclarator));
4582 FreeInitDeclarator((*yyvaluep).initDeclarator);
4588 FreeSpecifier((*yyvaluep).specifier);
4594 FreeExtDecl((*yyvaluep).extDecl);
4600 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
4606 FreeAttribute((*yyvaluep).attribute);
4612 FreeList((*yyvaluep).list, (void *)(FreeAttribute));
4618 FreeAttrib((*yyvaluep).attrib);
4624 FreeSpecifier((*yyvaluep).specifier);
4630 FreeSpecifier((*yyvaluep).specifier);
4636 FreeSpecifier((*yyvaluep).specifier);
4642 FreeSpecifier((*yyvaluep).specifier);
4648 FreeSpecifier((*yyvaluep).specifier);
4654 FreeSpecifier((*yyvaluep).specifier);
4660 FreeSpecifier((*yyvaluep).specifier);
4666 FreeList((*yyvaluep).list, (void *)(FreeClassDef));
4672 FreeMemberInit((*yyvaluep).memberInit);
4678 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
4684 FreeProperty((*yyvaluep).prop);
4690 FreeClassDef((*yyvaluep).classDef);
4696 FreeList((*yyvaluep).list, (void *)(FreeDeclarator));
4702 FreeDeclarator((*yyvaluep).declarator);
4708 FreeSpecifier((*yyvaluep).specifier);
4714 FreeSpecifier((*yyvaluep).specifier);
4720 FreeList((*yyvaluep).list, (void *)(FreeEnumerator));
4726 FreeEnumerator((*yyvaluep).enumerator);
4732 FreeDeclarator((*yyvaluep).declarator);
4738 FreeDeclarator((*yyvaluep).declarator);
4744 FreeDeclarator((*yyvaluep).declarator);
4750 FreeDeclarator((*yyvaluep).declarator);
4756 FreeDeclarator((*yyvaluep).declarator);
4762 FreeDeclarator((*yyvaluep).declarator);
4768 FreeDeclarator((*yyvaluep).declarator);
4774 FreeDeclarator((*yyvaluep).declarator);
4780 FreeDeclarator((*yyvaluep).declarator);
4786 FreeDeclarator((*yyvaluep).declarator);
4792 FreeList((*yyvaluep).list, (void *)(FreeSpecifier));
4798 FreePointer((*yyvaluep).pointer);
4804 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
4810 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
4816 FreeTypeName((*yyvaluep).typeName);
4822 FreeList((*yyvaluep).list, (void *)(FreeTypeName));
4828 FreeTypeName((*yyvaluep).typeName);
4834 FreeInitializer((*yyvaluep).initializer);
4840 FreeInitializer((*yyvaluep).initializer);
4846 FreeList((*yyvaluep).list, (void *)(FreeInitializer));
4852 FreeStatement((*yyvaluep).stmt);
4858 FreeStatement((*yyvaluep).stmt);
4864 FreeList((*yyvaluep).list, (void *)(FreeDeclaration));
4870 FreeList((*yyvaluep).list, (void *)(FreeStatement));
4876 FreeStatement((*yyvaluep).stmt);
4882 PopContext((*yyvaluep).context);
4883 FreeContext((*yyvaluep).context);
4884 (((*yyvaluep).context ? __extension__ ({
4885 void * __ecerePtrToDelete = ((*yyvaluep).context);
4887 __ecereClass_Context->Destructor ? __ecereClass_Context->Destructor((void *)__ecerePtrToDelete) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(__ecerePtrToDelete);
4888 }) : 0), (*yyvaluep).context = 0);
4894 FreeStatement((*yyvaluep).stmt);
4900 FreeStatement((*yyvaluep).stmt);
4906 FreeStatement((*yyvaluep).stmt);
4912 FreeStatement((*yyvaluep).stmt);
4918 FreeStatement((*yyvaluep).stmt);
4924 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
4930 FreeInstance((*yyvaluep).instance);
4936 FreeInstance((*yyvaluep).instance);
4942 FreeClassFunction((*yyvaluep).classFunction);
4948 FreeClassFunction((*yyvaluep).classFunction);
4954 FreeClassFunction((*yyvaluep).classFunction);
4960 FreeClassFunction((*yyvaluep).classFunction);
4966 FreeClassFunction((*yyvaluep).classFunction);
4972 FreeClassFunction((*yyvaluep).classFunction);
4978 FreeClassFunction((*yyvaluep).classFunction);
4984 FreeMemberInit((*yyvaluep).memberInit);
4990 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
4996 FreeList((*yyvaluep).list, (void *)(FreeMemberInit));
5002 FreeList((*yyvaluep).list, (void *)(FreeMembersInit));
5008 FreeList((*yyvaluep).list, (void *)(FreeMembersInit));