24580bad429ada198e20ede8f5b60547c608ddcb
[sdk] / compiler / bootstrap / libec / bootstrap / lexer.c
1 /* Code generated from eC source file: lexer.ec */
2 #if defined(_WIN32)
3 #define __runtimePlatform 1
4 #elif defined(__APPLE__)
5 #define __runtimePlatform 3
6 #else
7 #define __runtimePlatform 2
8 #endif
9 #if defined(__GNUC__)
10 typedef long long int64;
11 typedef unsigned long long uint64;
12 #ifndef _WIN32
13 #define __declspec(x)
14 #endif
15 #elif defined(__TINYC__)
16 #include <stdarg.h>
17 #define __builtin_va_list va_list
18 #define __builtin_va_start va_start
19 #define __builtin_va_end va_end
20 #ifdef _WIN32
21 #define strcasecmp stricmp
22 #define strncasecmp strnicmp
23 #define __declspec(x) __attribute__((x))
24 #else
25 #define __declspec(x)
26 #endif
27 typedef long long int64;
28 typedef unsigned long long uint64;
29 #else
30 typedef __int64 int64;
31 typedef unsigned __int64 uint64;
32 #endif
33 #ifdef __BIG_ENDIAN__
34 #define __ENDIAN_PAD(x) (8 - (x))
35 #else
36 #define __ENDIAN_PAD(x) 0
37 #endif
38 #include <stdint.h>
39 #include <sys/types.h>
40 void exit(int status);
41
42 void * calloc(size_t nmemb, size_t size);
43
44 void free(void * ptr);
45
46 void * malloc(size_t size);
47
48 void * realloc(void * ptr, size_t size);
49
50 long int strtol(const char * nptr, char ** endptr, int base);
51
52 long long int strtoll(const char * nptr, char ** endptr, int base);
53
54 unsigned long long int strtoull(const char * nptr, char ** endptr, int base);
55
56 typedef __builtin_va_list va_list;
57
58 typedef void FILE;
59
60 FILE * bsl_stdin(void);
61
62 FILE * bsl_stdout(void);
63
64 FILE * bsl_stderr(void);
65
66 char * fgets(char * s, int size, FILE * stream);
67
68 FILE * fopen(const char * path, const char * mode);
69
70 int fclose(FILE * fp);
71
72 int fflush(FILE * stream);
73
74 int fgetc(FILE * stream);
75
76 int fprintf(FILE * stream, const char * format, ...);
77
78 int fputc(int c, FILE * stream);
79
80 size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
81
82 size_t fwrite(const void * ptr, size_t size, size_t nmemb, FILE * stream);
83
84 int vsnprintf(char *, size_t, const char *, va_list args);
85
86 int snprintf(char * str, size_t, const char * format, ...);
87
88 int fseek(FILE * stream, long offset, int whence);
89
90 long ftell(FILE * stream);
91
92 int feof(FILE * stream);
93
94 int ferror(FILE * stream);
95
96 int fileno(FILE * stream);
97
98 typedef struct yy_buffer_state * YY_BUFFER_STATE;
99
100 extern int yyleng;
101
102 extern FILE * yyin, * yyout;
103
104 typedef unsigned int yy_size_t;
105
106 struct yy_buffer_state
107 {
108 FILE * yy_input_file;
109 char * yy_ch_buf;
110 char * yy_buf_pos;
111 yy_size_t yy_buf_size;
112 int yy_n_chars;
113 int yy_is_our_buffer;
114 int yy_is_interactive;
115 int yy_at_bol;
116 int yy_fill_buffer;
117 int yy_buffer_status;
118 } __attribute__ ((gcc_struct));
119
120 static char yy_hold_char;
121
122 static int yy_n_chars;
123
124 int yyleng;
125
126 static char * yy_c_buf_p = (char *)0;
127
128 static int yy_init = 1;
129
130 static int yy_start = 0;
131
132 static int yy_did_buffer_switch_on_eof;
133
134 void yyrestart(FILE * input_file);
135
136 void yy_load_buffer_state(void);
137
138 static void * yy_flex_alloc(yy_size_t);
139
140 static void * yy_flex_realloc(void *, yy_size_t);
141
142 static void yy_flex_free(void *);
143
144 typedef unsigned char YY_CHAR;
145
146 FILE * yyin = (FILE *)0, * yyout = (FILE *)0;
147
148 typedef int yy_state_type;
149
150 extern char * yytext;
151
152 static yy_state_type yy_get_previous_state(void);
153
154 static yy_state_type yy_try_NUL_trans(yy_state_type current_state);
155
156 static int yy_get_next_buffer(void);
157
158 static void yy_fatal_error(const char msg[]);
159
160 static const short int yy_accept[721] =
161 {
162 (short)0, (short)112, (short)112, (short)178, (short)176, (short)174, (short)173, (short)172, (short)175, (short)159, (short)176, (short)1, (short)171, (short)165, (short)158, (short)176, (short)153, (short)154, (short)163, (short)162, (short)150, (short)161, (short)157, (short)164, (short)118, (short)118, (short)151, (short)147, (short)166, (short)152, (short)167, (short)170, (short)112, (short)112, (short)112, (short)155, (short)156, (short)168, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)148, (short)169, (short)149, (short)160, (short)146, (short)0, (short)123, (short)0, (short)132, (short)149, (short)141, (short)133, (short)0, (short)0, (short)130, (short)138, (short)128, (short)139, (short)129, (short)140, (short)0, (short)121, (short)2, (short)3, (short)131, (short)122, (short)117, (short)0, (short)118, (short)0, (short)118, (short)112, (short)156, (short)148, (short)155, (short)137, (short)143, (short)145, (short)144, (short)136, (short)0, (short)112, (short)0, (short)112, (short)0, (short)0, (short)134, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)11, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)19, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)135, (short)142, (short)119, (short)125, (short)0, (short)121, (short)121, (short)0, (short)122, (short)117, (short)0, (short)120, (short)0, (short)113, (short)112, (short)127, (short)126, (short)112, (short)112, (short)0, (short)124, (short)0, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)92, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)17, (short)45, (short)112, (short)112, (short)112, (short)112, (short)20, (short)112, (short)112, (short)112, (short)51, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)44, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)0, (short)121, (short)0, (short)121, (short)0, (short)122, (short)120, (short)115, (short)116, (short)113, (short)0, (short)61, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)4, (short)112, (short)6, (short)7, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)13, (short)14, (short)112, (short)112, (short)112, (short)18, (short)112, (short)112, (short)112, (short)112, (short)112, (short)22, (short)112, (short)52, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)21, (short)112, (short)112, (short)112, (short)38, (short)112, (short)112, (short)112, (short)0, (short)121, (short)115, (short)115, (short)0, (short)115, (short)115, (short)116, (short)0, (short)0, (short)114, (short)62, (short)112, (short)112, (short)112, (short)93, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)5, (short)47, (short)8, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)16, (short)112, (short)112, (short)112, (short)58, (short)46, (short)112, (short)112, (short)112, (short)112, (short)112, (short)53, (short)112, (short)112, (short)25, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)36, (short)112, (short)112, (short)112, (short)95, (short)42, (short)0, (short)115, (short)115, (short)115, (short)0, (short)0, (short)116, (short)114, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)56, (short)50, (short)112, (short)112, (short)12, (short)15, (short)112, (short)55, (short)88, (short)72, (short)112, (short)112, (short)112, (short)84, (short)112, (short)54, (short)112, (short)24, (short)26, (short)29, (short)31, (short)112, (short)112, (short)33, (short)112, (short)34, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)0, (short)115, (short)112, (short)112, (short)112, (short)91, (short)112, (short)112, (short)76, (short)82, (short)112, (short)112, (short)112, (short)57, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)70, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)109, (short)110, (short)108, (short)10, (short)112, (short)112, (short)112, (short)112, (short)85, (short)112, (short)112, (short)112, (short)80, (short)112, (short)112, (short)112, (short)112, (short)35, (short)112, (short)49, (short)112, (short)112, (short)63, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)71, (short)112, (short)27, (short)112, (short)32, (short)94, (short)112, (short)112, (short)79, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)9, (short)112, (short)112, (short)112, (short)112, (short)112, (short)43, (short)23, (short)65, (short)112, (short)106, (short)112, (short)112, (short)37, (short)39, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)77, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)74, (short)75, (short)112, (short)107, (short)112, (short)112, (short)48, (short)112, (short)98, (short)64, (short)112, (short)112, (short)112, (short)112, (short)112, (short)69, (short)81, (short)28, (short)112, (short)41, (short)112, (short)87, (short)104, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)30, (short)68, (short)112, (short)0, (short)112, (short)112, (short)78, (short)112, (short)90, (short)112, (short)112, (short)101, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)73, (short)0, (short)112, (short)83, (short)40, (short)112, (short)112, (short)112, (short)112, (short)112, (short)97, (short)112, (short)96, (short)86, (short)67, (short)112, (short)112, (short)89, (short)112, (short)112, (short)112, (short)112, (short)111, (short)112, (short)112, (short)112, (short)112, (short)112, (short)99, (short)112, (short)105, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)60, (short)112, (short)112, (short)112, (short)112, (short)112, (short)59, (short)112, (short)112, (short)103, (short)112, (short)112, (short)100, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)112, (short)102, (short)112, (short)66, (short)0
163 };
164
165 static const int yy_ec[256] =
166 {
167 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 4, 4, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 22, 22, 23, 22, 24, 22, 22, 22, 25, 26, 27, 28, 29, 30, 1, 31, 32, 33, 31, 34, 35, 36, 36, 37, 38, 36, 39, 36, 36, 36, 40, 36, 36, 36, 36, 41, 36, 36, 42, 36, 36, 43, 44, 45, 46, 47, 1, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 36, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1
168 };
169
170 static const int yy_meta[77] =
171 {
172 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 1, 4, 1, 1, 1, 1, 5, 1, 6, 6, 6, 6, 2, 1, 1, 1, 1, 1, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 1, 1, 1, 1, 8, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 1, 1, 1, 1
173 };
174
175 static const short int yy_base[729] =
176 {
177 (short)0, (short)0, (short)0, (short)254, (short)2575, (short)2575, (short)2575, (short)2575, (short)2575, (short)219, (short)70, (short)2575, (short)2575, (short)50, (short)69, (short)201, (short)2575, (short)2575, (short)199, (short)65, (short)2575, (short)66, (short)64, (short)76, (short)96, (short)79, (short)80, (short)2575, (short)97, (short)194, (short)61, (short)2575, (short)81, (short)88, (short)116, (short)2575, (short)2575, (short)183, (short)132, (short)115, (short)87, (short)143, (short)147, (short)131, (short)148, (short)156, (short)160, (short)121, (short)164, (short)136, (short)203, (short)204, (short)206, (short)208, (short)212, (short)224, (short)2575, (short)88, (short)2575, (short)2575, (short)2575, (short)101, (short)2575, (short)184, (short)2575, (short)2575, (short)2575, (short)2575, (short)182, (short)174, (short)2575, (short)2575, (short)2575, (short)2575, (short)2575, (short)2575, (short)159, (short)259, (short)2575, (short)2575, (short)2575, (short)298, (short)339, (short)218, (short)247, (short)151, (short)0, (short)0, (short)2575, (short)2575, (short)2575, (short)116, (short)2575, (short)2575, (short)2575, (short)111, (short)111, (short)149, (short)106, (short)213, (short)186, (short)85, (short)2575, (short)233, (short)237, (short)232, (short)396, (short)221, (short)240, (short)241, (short)242, (short)265, (short)298, (short)313, (short)306, (short)318, (short)319, (short)323, (short)315, (short)316, (short)334, (short)331, (short)363, (short)364, (short)372, (short)328, (short)374, (short)375, (short)390, (short)391, (short)392, (short)393, (short)400, (short)409, (short)401, (short)394, (short)411, (short)398, (short)416, (short)424, (short)431, (short)399, (short)458, (short)459, (short)463, (short)466, (short)465, (short)468, (short)469, (short)475, (short)470, (short)476, (short)478, (short)487, (short)491, (short)2575, (short)2575, (short)2575, (short)2575, (short)527, (short)517, (short)556, (short)541, (short)546, (short)530, (short)483, (short)595, (short)0, (short)601, (short)403, (short)2575, (short)2575, (short)0, (short)533, (short)243, (short)2575, (short)108, (short)498, (short)550, (short)589, (short)596, (short)600, (short)618, (short)571, (short)611, (short)624, (short)620, (short)645, (short)517, (short)648, (short)652, (short)654, (short)663, (short)665, (short)497, (short)664, (short)667, (short)671, (short)672, (short)673, (short)675, (short)680, (short)683, (short)682, (short)684, (short)705, (short)692, (short)695, (short)708, (short)710, (short)720, (short)723, (short)731, (short)738, (short)508, (short)735, (short)739, (short)741, (short)743, (short)744, (short)747, (short)754, (short)748, (short)756, (short)763, (short)765, (short)766, (short)767, (short)771, (short)784, (short)774, (short)786, (short)787, (short)793, (short)794, (short)799, (short)803, (short)806, (short)805, (short)809, (short)810, (short)812, (short)814, (short)821, (short)827, (short)833, (short)834, (short)836, (short)837, (short)838, (short)839, (short)855, (short)860, (short)875, (short)889, (short)880, (short)899, (short)907, (short)905, (short)910, (short)953, (short)941, (short)997, (short)860, (short)866, (short)883, (short)881, (short)876, (short)970, (short)945, (short)927, (short)1003, (short)946, (short)1006, (short)1011, (short)1012, (short)1014, (short)940, (short)1013, (short)1016, (short)1018, (short)1015, (short)1021, (short)943, (short)1022, (short)1023, (short)1024, (short)1033, (short)1034, (short)1040, (short)1041, (short)1042, (short)1043, (short)1051, (short)1050, (short)1058, (short)1071, (short)1059, (short)1076, (short)1078, (short)1079, (short)1082, (short)1086, (short)1087, (short)1094, (short)1099, (short)1102, (short)1103, (short)1104, (short)1106, (short)1105, (short)1107, (short)1110, (short)1111, (short)1114, (short)1123, (short)1127, (short)1130, (short)1129, (short)1135, (short)1136, (short)1139, (short)1140, (short)1142, (short)1147, (short)1148, (short)1155, (short)1151, (short)1164, (short)1168, (short)1171, (short)1172, (short)1173, (short)1174, (short)1184, (short)1191, (short)1194, (short)1200, (short)1203, (short)1204, (short)1207, (short)1209, (short)1211, (short)1217, (short)1222, (short)0, (short)1212, (short)1259, (short)1249, (short)0, (short)1257, (short)1299, (short)1236, (short)1303, (short)1237, (short)1241, (short)1242, (short)1265, (short)1282, (short)1286, (short)1274, (short)1293, (short)1319, (short)1320, (short)1321, (short)1324, (short)1323, (short)1326, (short)1328, (short)1341, (short)1343, (short)1344, (short)1346, (short)1347, (short)1350, (short)1352, (short)1353, (short)1356, (short)1363, (short)1365, (short)1372, (short)1374, (short)1376, (short)1382, (short)1387, (short)1392, (short)1393, (short)1395, (short)1394, (short)1398, (short)1402, (short)1403, (short)1404, (short)1405, (short)1413, (short)1414, (short)1425, (short)1415, (short)1430, (short)1431, (short)1433, (short)1437, (short)1438, (short)1448, (short)1449, (short)1455, (short)1457, (short)1458, (short)1461, (short)1460, (short)1465, (short)1464, (short)1473, (short)1467, (short)1480, (short)1470, (short)1482, (short)1485, (short)1491, (short)1492, (short)1495, (short)1511, (short)1513, (short)1515, (short)1523, (short)1547, (short)0, (short)1519, (short)1571, (short)1527, (short)1586, (short)1576, (short)1549, (short)1541, (short)1566, (short)1572, (short)1601, (short)1554, (short)1605, (short)1606, (short)1611, (short)1623, (short)1626, (short)1627, (short)1629, (short)1630, (short)1548, (short)1633, (short)1635, (short)1636, (short)1638, (short)1642, (short)1645, (short)1648, (short)1655, (short)1654, (short)1658, (short)1660, (short)1663, (short)1667, (short)1664, (short)1666, (short)1675, (short)1684, (short)1685, (short)1687, (short)1688, (short)1690, (short)1703, (short)1706, (short)1709, (short)1711, (short)1713, (short)1714, (short)1715, (short)1716, (short)1718, (short)1724, (short)1726, (short)1733, (short)1737, (short)1739, (short)1741, (short)1742, (short)1744, (short)1746, (short)1750, (short)1759, (short)1752, (short)1762, (short)1761, (short)1765, (short)1767, (short)1768, (short)1773, (short)1806, (short)1777, (short)1774, (short)1778, (short)1780, (short)1787, (short)1793, (short)1795, (short)1798, (short)1808, (short)1810, (short)1814, (short)1821, (short)1823, (short)1826, (short)1827, (short)1831, (short)1839, (short)1842, (short)1843, (short)1844, (short)1847, (short)1849, (short)1859, (short)1862, (short)1865, (short)1869, (short)1870, (short)1872, (short)1877, (short)1878, (short)1880, (short)1885, (short)1889, (short)1898, (short)1901, (short)1904, (short)1905, (short)1906, (short)1909, (short)1910, (short)1914, (short)1917, (short)1921, (short)1925, (short)1930, (short)1927, (short)1932, (short)1933, (short)1936, (short)1934, (short)1938, (short)1945, (short)1949, (short)1953, (short)1955, (short)1960, (short)1957, (short)1964, (short)1973, (short)1970, (short)1976, (short)1980, (short)1981, (short)1983, (short)1985, (short)1989, (short)1993, (short)1996, (short)2004, (short)2008, (short)2011, (short)2013, (short)2014, (short)2016, (short)2015, (short)2019, (short)2021, (short)2020, (short)2023, (short)2026, (short)2039, (short)2041, (short)2042, (short)2043, (short)2048, (short)2049, (short)2054, (short)2066, (short)2069, (short)2072, (short)2073, (short)2075, (short)2076, (short)2079, (short)2077, (short)2078, (short)2081, (short)2082, (short)2084, (short)2088, (short)2100, (short)2105, (short)2106, (short)2109, (short)2110, (short)2112, (short)2121, (short)2127, (short)2122, (short)2131, (short)2134, (short)2132, (short)2144, (short)2147, (short)2149, (short)2150, (short)2152, (short)2156, (short)2157, (short)2160, (short)2162, (short)2165, (short)2168, (short)2172, (short)2180, (short)2181, (short)2184, (short)2185, (short)2188, (short)2189, (short)2190, (short)2196, (short)2197, (short)2208, (short)2200, (short)2209, (short)2212, (short)2213, (short)2217, (short)2215, (short)2228, (short)2225, (short)2232, (short)2233, (short)96, (short)2235, (short)2237, (short)2230, (short)2241, (short)2243, (short)2258, (short)2260, (short)2261, (short)2262, (short)2269, (short)2278, (short)2279, (short)2280, (short)2281, (short)2282, (short)2285, (short)2284, (short)2575, (short)68, (short)2287, (short)2286, (short)2288, (short)2289, (short)2290, (short)2291, (short)2297, (short)2312, (short)2313, (short)2315, (short)2316, (short)2318, (short)2334, (short)2336, (short)2339, (short)2340, (short)2343, (short)2341, (short)2345, (short)2346, (short)2347, (short)2349, (short)2351, (short)2358, (short)2364, (short)2366, (short)2367, (short)2368, (short)2369, (short)2370, (short)2371, (short)2374, (short)2375, (short)2386, (short)2390, (short)2391, (short)2393, (short)2396, (short)2398, (short)2399, (short)2401, (short)2402, (short)2419, (short)2414, (short)2423, (short)2426, (short)2427, (short)2431, (short)2432, (short)2442, (short)2443, (short)2447, (short)2449, (short)2451, (short)2455, (short)2460, (short)2466, (short)2464, (short)2467, (short)2470, (short)2575, (short)2531, (short)2539, (short)2546, (short)2550, (short)2551, (short)2559, (short)2562, (short)2566
178 };
179
180 static const short int yy_def[729] =
181 {
182 (short)0, (short)720, (short)1, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)721, (short)720, (short)720, (short)720, (short)720, (short)722, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)24, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)723, (short)723, (short)723, (short)720, (short)720, (short)720, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)720, (short)720, (short)720, (short)720, (short)720, (short)721, (short)720, (short)721, (short)720, (short)720, (short)720, (short)720, (short)722, (short)722, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)724, (short)25, (short)725, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)723, (short)720, (short)723, (short)726, (short)722, (short)720, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)727, (short)724, (short)723, (short)720, (short)720, (short)725, (short)723, (short)726, (short)720, (short)726, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)720, (short)77, (short)720, (short)720, (short)720, (short)81, (short)720, (short)727, (short)720, (short)720, (short)720, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)720, (short)161, (short)259, (short)720, (short)720, (short)260, (short)348, (short)720, (short)720, (short)720, (short)720, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)720, (short)720, (short)348, (short)720, (short)720, (short)720, (short)720, (short)720, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)720, (short)720, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)728, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)720, (short)728, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)723, (short)0, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720
183 };
184
185 static const short int yy_nxt[2652] =
186 {
187 (short)0, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)25, (short)25, (short)25, (short)26, (short)27, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)32, (short)32, (short)32, (short)32, (short)32, (short)32, (short)34, (short)32, (short)32, (short)32, (short)35, (short)4, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)32, (short)46, (short)32, (short)32, (short)47, (short)32, (short)48, (short)32, (short)49, (short)50, (short)51, (short)52, (short)53, (short)54, (short)55, (short)32, (short)32, (short)32, (short)56, (short)57, (short)58, (short)59, (short)62, (short)64, (short)65, (short)66, (short)71, (short)658, (short)76, (short)73, (short)77, (short)77, (short)77, (short)77, (short)94, (short)95, (short)78, (short)96, (short)72, (short)74, (short)75, (short)79, (short)67, (short)96, (short)96, (short)86, (short)86, (short)86, (short)86, (short)80, (short)87, (short)98, (short)89, (short)62, (short)88, (short)658, (short)720, (short)98, (short)98, (short)63, (short)81, (short)155, (short)82, (short)82, (short)82, (short)82, (short)720, (short)90, (short)100, (short)91, (short)92, (short)96, (short)96, (short)101, (short)69, (short)83, (short)172, (short)96, (short)84, (short)84, (short)84, (short)98, (short)84, (short)85, (short)171, (short)98, (short)98, (short)96, (short)96, (short)170, (short)63, (short)98, (short)96, (short)83, (short)720, (short)99, (short)113, (short)84, (short)84, (short)96, (short)84, (short)98, (short)98, (short)96, (short)96, (short)96, (short)98, (short)156, (short)84, (short)103, (short)104, (short)85, (short)96, (short)98, (short)105, (short)167, (short)96, (short)98, (short)98, (short)98, (short)96, (short)110, (short)720, (short)158, (short)106, (short)111, (short)98, (short)112, (short)135, (short)107, (short)98, (short)68, (short)720, (short)108, (short)98, (short)123, (short)114, (short)124, (short)175, (short)157, (short)118, (short)119, (short)109, (short)115, (short)120, (short)138, (short)125, (short)116, (short)139, (short)126, (short)117, (short)121, (short)127, (short)129, (short)122, (short)128, (short)102, (short)136, (short)131, (short)96, (short)96, (short)137, (short)96, (short)130, (short)96, (short)132, (short)133, (short)93, (short)96, (short)96, (short)134, (short)69, (short)70, (short)98, (short)98, (short)176, (short)98, (short)96, (short)98, (short)165, (short)96, (short)165, (short)98, (short)98, (short)166, (short)166, (short)166, (short)166, (short)96, (short)96, (short)69, (short)98, (short)60, (short)96, (short)98, (short)175, (short)96, (short)96, (short)96, (short)720, (short)140, (short)141, (short)98, (short)98, (short)142, (short)143, (short)147, (short)98, (short)720, (short)149, (short)98, (short)98, (short)98, (short)151, (short)150, (short)144, (short)145, (short)153, (short)146, (short)152, (short)173, (short)96, (short)148, (short)720, (short)154, (short)77, (short)77, (short)77, (short)77, (short)84, (short)84, (short)84, (short)176, (short)84, (short)720, (short)98, (short)190, (short)179, (short)159, (short)160, (short)177, (short)160, (short)160, (short)160, (short)178, (short)720, (short)191, (short)720, (short)84, (short)84, (short)720, (short)84, (short)192, (short)720, (short)96, (short)720, (short)159, (short)160, (short)193, (short)84, (short)160, (short)160, (short)96, (short)160, (short)161, (short)161, (short)161, (short)161, (short)98, (short)96, (short)194, (short)96, (short)96, (short)720, (short)96, (short)96, (short)98, (short)162, (short)163, (short)96, (short)163, (short)163, (short)163, (short)98, (short)96, (short)98, (short)98, (short)96, (short)98, (short)98, (short)96, (short)720, (short)720, (short)98, (short)720, (short)162, (short)163, (short)720, (short)98, (short)163, (short)163, (short)98, (short)163, (short)81, (short)98, (short)82, (short)82, (short)82, (short)82, (short)195, (short)196, (short)198, (short)199, (short)720, (short)202, (short)720, (short)197, (short)203, (short)83, (short)96, (short)96, (short)164, (short)164, (short)164, (short)720, (short)164, (short)201, (short)204, (short)96, (short)200, (short)96, (short)96, (short)205, (short)98, (short)98, (short)207, (short)83, (short)720, (short)206, (short)211, (short)164, (short)164, (short)98, (short)164, (short)98, (short)98, (short)96, (short)96, (short)96, (short)96, (short)96, (short)164, (short)96, (short)720, (short)96, (short)96, (short)96, (short)96, (short)720, (short)96, (short)98, (short)98, (short)98, (short)98, (short)98, (short)96, (short)98, (short)96, (short)98, (short)98, (short)98, (short)98, (short)96, (short)98, (short)209, (short)208, (short)720, (short)720, (short)720, (short)98, (short)96, (short)98, (short)213, (short)212, (short)210, (short)720, (short)98, (short)96, (short)720, (short)180, (short)181, (short)182, (short)183, (short)184, (short)98, (short)720, (short)720, (short)185, (short)720, (short)214, (short)222, (short)98, (short)215, (short)216, (short)218, (short)186, (short)187, (short)188, (short)217, (short)189, (short)232, (short)221, (short)224, (short)219, (short)96, (short)96, (short)223, (short)225, (short)227, (short)96, (short)220, (short)96, (short)96, (short)226, (short)96, (short)96, (short)96, (short)720, (short)98, (short)98, (short)228, (short)96, (short)96, (short)98, (short)96, (short)98, (short)98, (short)229, (short)98, (short)98, (short)98, (short)230, (short)231, (short)96, (short)720, (short)98, (short)98, (short)96, (short)98, (short)166, (short)166, (short)166, (short)166, (short)96, (short)96, (short)720, (short)236, (short)98, (short)234, (short)237, (short)240, (short)98, (short)720, (short)720, (short)96, (short)233, (short)241, (short)98, (short)98, (short)242, (short)238, (short)245, (short)239, (short)96, (short)720, (short)720, (short)235, (short)243, (short)98, (short)248, (short)246, (short)244, (short)249, (short)720, (short)720, (short)247, (short)720, (short)98, (short)252, (short)96, (short)252, (short)720, (short)251, (short)253, (short)253, (short)253, (short)253, (short)160, (short)250, (short)160, (short)160, (short)160, (short)256, (short)98, (short)256, (short)264, (short)96, (short)257, (short)257, (short)257, (short)257, (short)720, (short)164, (short)164, (short)164, (short)160, (short)164, (short)279, (short)160, (short)160, (short)98, (short)160, (short)161, (short)161, (short)161, (short)161, (short)163, (short)96, (short)163, (short)163, (short)163, (short)164, (short)164, (short)280, (short)164, (short)254, (short)255, (short)263, (short)255, (short)255, (short)255, (short)98, (short)164, (short)720, (short)163, (short)96, (short)720, (short)163, (short)163, (short)720, (short)163, (short)720, (short)96, (short)254, (short)255, (short)265, (short)96, (short)255, (short)255, (short)98, (short)255, (short)166, (short)166, (short)166, (short)166, (short)260, (short)98, (short)96, (short)273, (short)720, (short)98, (short)720, (short)720, (short)720, (short)96, (short)258, (short)96, (short)258, (short)258, (short)258, (short)96, (short)98, (short)266, (short)261, (short)261, (short)261, (short)262, (short)261, (short)98, (short)720, (short)98, (short)720, (short)720, (short)258, (short)98, (short)720, (short)258, (short)258, (short)720, (short)258, (short)267, (short)96, (short)261, (short)261, (short)96, (short)261, (short)268, (short)269, (short)96, (short)262, (short)96, (short)720, (short)270, (short)261, (short)271, (short)98, (short)720, (short)276, (short)98, (short)96, (short)96, (short)96, (short)98, (short)96, (short)98, (short)272, (short)274, (short)96, (short)96, (short)96, (short)275, (short)96, (short)720, (short)98, (short)98, (short)98, (short)96, (short)98, (short)96, (short)96, (short)96, (short)98, (short)98, (short)98, (short)720, (short)98, (short)277, (short)720, (short)96, (short)720, (short)98, (short)96, (short)98, (short)98, (short)98, (short)281, (short)278, (short)285, (short)283, (short)284, (short)287, (short)96, (short)98, (short)282, (short)96, (short)98, (short)96, (short)720, (short)288, (short)720, (short)720, (short)286, (short)720, (short)293, (short)720, (short)98, (short)96, (short)296, (short)98, (short)96, (short)98, (short)289, (short)720, (short)290, (short)294, (short)291, (short)292, (short)96, (short)295, (short)299, (short)98, (short)96, (short)300, (short)98, (short)96, (short)96, (short)301, (short)96, (short)297, (short)96, (short)96, (short)98, (short)302, (short)96, (short)96, (short)98, (short)298, (short)303, (short)98, (short)98, (short)96, (short)98, (short)96, (short)98, (short)98, (short)720, (short)312, (short)98, (short)98, (short)96, (short)305, (short)96, (short)96, (short)96, (short)98, (short)304, (short)98, (short)96, (short)306, (short)316, (short)96, (short)307, (short)720, (short)98, (short)720, (short)98, (short)98, (short)98, (short)720, (short)720, (short)96, (short)98, (short)96, (short)96, (short)98, (short)311, (short)308, (short)314, (short)309, (short)96, (short)96, (short)313, (short)310, (short)315, (short)98, (short)96, (short)98, (short)98, (short)720, (short)96, (short)720, (short)96, (short)96, (short)98, (short)98, (short)96, (short)96, (short)720, (short)96, (short)98, (short)96, (short)319, (short)320, (short)98, (short)318, (short)98, (short)98, (short)96, (short)317, (short)98, (short)98, (short)321, (short)98, (short)96, (short)98, (short)322, (short)720, (short)720, (short)720, (short)96, (short)96, (short)98, (short)96, (short)96, (short)96, (short)96, (short)326, (short)98, (short)323, (short)720, (short)325, (short)328, (short)324, (short)98, (short)98, (short)331, (short)98, (short)98, (short)98, (short)98, (short)720, (short)96, (short)720, (short)329, (short)327, (short)720, (short)96, (short)720, (short)334, (short)720, (short)720, (short)330, (short)96, (short)332, (short)333, (short)98, (short)253, (short)253, (short)253, (short)253, (short)98, (short)340, (short)96, (short)339, (short)341, (short)337, (short)98, (short)96, (short)335, (short)96, (short)336, (short)253, (short)253, (short)253, (short)253, (short)720, (short)98, (short)338, (short)720, (short)720, (short)343, (short)98, (short)343, (short)98, (short)720, (short)344, (short)344, (short)344, (short)344, (short)342, (short)255, (short)720, (short)255, (short)255, (short)255, (short)257, (short)257, (short)257, (short)257, (short)720, (short)354, (short)720, (short)720, (short)257, (short)257, (short)257, (short)257, (short)357, (short)255, (short)720, (short)356, (short)255, (short)255, (short)96, (short)255, (short)258, (short)720, (short)258, (short)258, (short)258, (short)345, (short)355, (short)346, (short)346, (short)346, (short)347, (short)96, (short)98, (short)720, (short)96, (short)720, (short)96, (short)96, (short)258, (short)720, (short)720, (short)258, (short)258, (short)345, (short)258, (short)98, (short)346, (short)346, (short)98, (short)346, (short)98, (short)98, (short)720, (short)347, (short)348, (short)348, (short)348, (short)348, (short)261, (short)261, (short)261, (short)96, (short)261, (short)360, (short)348, (short)348, (short)348, (short)348, (short)349, (short)720, (short)350, (short)350, (short)350, (short)351, (short)368, (short)98, (short)720, (short)261, (short)261, (short)374, (short)261, (short)348, (short)348, (short)348, (short)348, (short)348, (short)349, (short)362, (short)261, (short)350, (short)350, (short)359, (short)350, (short)352, (short)96, (short)352, (short)351, (short)96, (short)353, (short)353, (short)353, (short)353, (short)96, (short)96, (short)96, (short)96, (short)96, (short)96, (short)98, (short)96, (short)358, (short)98, (short)96, (short)96, (short)96, (short)96, (short)98, (short)98, (short)98, (short)98, (short)98, (short)98, (short)720, (short)98, (short)96, (short)96, (short)98, (short)98, (short)98, (short)98, (short)720, (short)96, (short)96, (short)96, (short)96, (short)361, (short)363, (short)720, (short)98, (short)98, (short)720, (short)96, (short)96, (short)720, (short)369, (short)98, (short)98, (short)98, (short)98, (short)96, (short)96, (short)365, (short)375, (short)373, (short)372, (short)98, (short)98, (short)364, (short)366, (short)367, (short)370, (short)371, (short)96, (short)98, (short)98, (short)376, (short)720, (short)96, (short)720, (short)96, (short)96, (short)377, (short)720, (short)96, (short)720, (short)720, (short)98, (short)96, (short)96, (short)380, (short)381, (short)98, (short)382, (short)98, (short)98, (short)96, (short)378, (short)98, (short)379, (short)383, (short)96, (short)98, (short)98, (short)96, (short)96, (short)96, (short)96, (short)96, (short)96, (short)98, (short)384, (short)96, (short)96, (short)720, (short)98, (short)96, (short)385, (short)98, (short)98, (short)98, (short)98, (short)98, (short)98, (short)397, (short)96, (short)98, (short)98, (short)386, (short)96, (short)98, (short)96, (short)96, (short)389, (short)720, (short)387, (short)390, (short)96, (short)96, (short)98, (short)388, (short)96, (short)96, (short)98, (short)96, (short)98, (short)98, (short)720, (short)395, (short)96, (short)96, (short)98, (short)98, (short)96, (short)391, (short)98, (short)98, (short)96, (short)98, (short)396, (short)393, (short)394, (short)392, (short)98, (short)98, (short)720, (short)96, (short)98, (short)398, (short)400, (short)96, (short)98, (short)401, (short)96, (short)96, (short)96, (short)96, (short)720, (short)720, (short)399, (short)98, (short)720, (short)402, (short)720, (short)98, (short)720, (short)96, (short)98, (short)98, (short)98, (short)98, (short)408, (short)403, (short)96, (short)720, (short)405, (short)96, (short)406, (short)410, (short)404, (short)98, (short)720, (short)96, (short)411, (short)407, (short)96, (short)96, (short)98, (short)409, (short)96, (short)98, (short)96, (short)413, (short)96, (short)415, (short)416, (short)98, (short)720, (short)720, (short)98, (short)98, (short)720, (short)414, (short)98, (short)720, (short)98, (short)417, (short)98, (short)412, (short)344, (short)344, (short)344, (short)344, (short)720, (short)344, (short)344, (short)344, (short)344, (short)346, (short)96, (short)346, (short)346, (short)346, (short)96, (short)96, (short)419, (short)418, (short)720, (short)353, (short)353, (short)353, (short)353, (short)720, (short)98, (short)423, (short)422, (short)346, (short)98, (short)98, (short)346, (short)346, (short)420, (short)346, (short)720, (short)421, (short)720, (short)424, (short)96, (short)424, (short)720, (short)720, (short)425, (short)425, (short)425, (short)425, (short)426, (short)96, (short)427, (short)427, (short)427, (short)428, (short)98, (short)720, (short)350, (short)96, (short)350, (short)350, (short)350, (short)96, (short)433, (short)98, (short)432, (short)720, (short)426, (short)720, (short)96, (short)427, (short)427, (short)98, (short)427, (short)720, (short)350, (short)98, (short)428, (short)350, (short)350, (short)429, (short)350, (short)429, (short)98, (short)434, (short)430, (short)430, (short)430, (short)430, (short)353, (short)353, (short)353, (short)353, (short)720, (short)435, (short)96, (short)96, (short)96, (short)437, (short)96, (short)96, (short)720, (short)96, (short)431, (short)96, (short)431, (short)431, (short)431, (short)438, (short)98, (short)98, (short)98, (short)443, (short)98, (short)98, (short)436, (short)98, (short)96, (short)98, (short)96, (short)96, (short)431, (short)96, (short)96, (short)431, (short)431, (short)96, (short)431, (short)96, (short)96, (short)720, (short)98, (short)96, (short)98, (short)98, (short)720, (short)98, (short)98, (short)441, (short)96, (short)98, (short)96, (short)98, (short)98, (short)440, (short)442, (short)98, (short)720, (short)96, (short)439, (short)96, (short)720, (short)96, (short)98, (short)445, (short)98, (short)446, (short)444, (short)96, (short)449, (short)447, (short)448, (short)98, (short)96, (short)98, (short)452, (short)98, (short)453, (short)96, (short)96, (short)96, (short)96, (short)98, (short)450, (short)96, (short)454, (short)451, (short)98, (short)96, (short)96, (short)96, (short)96, (short)98, (short)98, (short)98, (short)98, (short)720, (short)456, (short)98, (short)96, (short)96, (short)96, (short)98, (short)98, (short)98, (short)98, (short)720, (short)720, (short)455, (short)458, (short)457, (short)96, (short)720, (short)98, (short)98, (short)98, (short)96, (short)96, (short)720, (short)96, (short)461, (short)459, (short)462, (short)96, (short)96, (short)98, (short)460, (short)467, (short)720, (short)465, (short)98, (short)98, (short)463, (short)98, (short)96, (short)96, (short)464, (short)98, (short)98, (short)466, (short)720, (short)96, (short)469, (short)96, (short)96, (short)476, (short)96, (short)96, (short)98, (short)98, (short)96, (short)96, (short)470, (short)96, (short)468, (short)98, (short)96, (short)98, (short)98, (short)96, (short)98, (short)98, (short)720, (short)474, (short)98, (short)98, (short)96, (short)98, (short)96, (short)471, (short)98, (short)96, (short)720, (short)98, (short)472, (short)720, (short)473, (short)96, (short)96, (short)720, (short)98, (short)96, (short)98, (short)720, (short)720, (short)98, (short)477, (short)479, (short)480, (short)475, (short)481, (short)98, (short)98, (short)478, (short)720, (short)98, (short)483, (short)96, (short)482, (short)96, (short)486, (short)96, (short)720, (short)485, (short)720, (short)720, (short)720, (short)488, (short)484, (short)720, (short)720, (short)98, (short)489, (short)98, (short)720, (short)98, (short)487, (short)720, (short)491, (short)425, (short)425, (short)425, (short)425, (short)430, (short)430, (short)430, (short)430, (short)96, (short)490, (short)427, (short)720, (short)427, (short)427, (short)427, (short)96, (short)96, (short)493, (short)720, (short)720, (short)720, (short)96, (short)98, (short)492, (short)425, (short)425, (short)425, (short)425, (short)427, (short)98, (short)98, (short)427, (short)427, (short)96, (short)427, (short)98, (short)720, (short)720, (short)346, (short)96, (short)346, (short)346, (short)346, (short)494, (short)720, (short)494, (short)720, (short)98, (short)495, (short)495, (short)495, (short)495, (short)510, (short)98, (short)720, (short)720, (short)346, (short)496, (short)497, (short)346, (short)346, (short)720, (short)346, (short)430, (short)430, (short)430, (short)430, (short)431, (short)96, (short)431, (short)431, (short)431, (short)96, (short)96, (short)720, (short)499, (short)501, (short)350, (short)96, (short)350, (short)350, (short)350, (short)98, (short)498, (short)720, (short)431, (short)98, (short)98, (short)431, (short)431, (short)96, (short)431, (short)98, (short)96, (short)96, (short)350, (short)96, (short)96, (short)350, (short)350, (short)96, (short)350, (short)96, (short)96, (short)98, (short)96, (short)507, (short)98, (short)98, (short)96, (short)98, (short)98, (short)96, (short)500, (short)98, (short)96, (short)98, (short)98, (short)720, (short)98, (short)502, (short)96, (short)96, (short)98, (short)720, (short)96, (short)98, (short)96, (short)503, (short)98, (short)96, (short)96, (short)504, (short)96, (short)96, (short)98, (short)98, (short)511, (short)509, (short)98, (short)505, (short)98, (short)96, (short)506, (short)98, (short)98, (short)720, (short)98, (short)98, (short)508, (short)515, (short)96, (short)96, (short)512, (short)96, (short)96, (short)98, (short)96, (short)513, (short)514, (short)516, (short)517, (short)518, (short)720, (short)519, (short)98, (short)98, (short)524, (short)98, (short)98, (short)96, (short)98, (short)520, (short)96, (short)521, (short)526, (short)96, (short)522, (short)96, (short)523, (short)96, (short)96, (short)96, (short)96, (short)98, (short)96, (short)527, (short)98, (short)720, (short)525, (short)98, (short)96, (short)98, (short)96, (short)98, (short)98, (short)98, (short)98, (short)720, (short)98, (short)96, (short)720, (short)528, (short)529, (short)96, (short)98, (short)96, (short)98, (short)96, (short)96, (short)720, (short)96, (short)530, (short)96, (short)98, (short)531, (short)720, (short)96, (short)98, (short)96, (short)98, (short)532, (short)98, (short)98, (short)534, (short)98, (short)96, (short)98, (short)96, (short)96, (short)535, (short)98, (short)96, (short)98, (short)96, (short)96, (short)533, (short)720, (short)720, (short)720, (short)98, (short)96, (short)98, (short)98, (short)96, (short)96, (short)98, (short)96, (short)98, (short)98, (short)495, (short)495, (short)495, (short)495, (short)96, (short)98, (short)536, (short)720, (short)98, (short)98, (short)96, (short)98, (short)96, (short)539, (short)537, (short)96, (short)720, (short)538, (short)98, (short)542, (short)540, (short)541, (short)720, (short)545, (short)98, (short)96, (short)98, (short)96, (short)547, (short)98, (short)543, (short)96, (short)544, (short)495, (short)495, (short)495, (short)495, (short)720, (short)96, (short)98, (short)96, (short)98, (short)549, (short)96, (short)96, (short)98, (short)548, (short)427, (short)96, (short)427, (short)427, (short)427, (short)98, (short)546, (short)98, (short)550, (short)96, (short)98, (short)98, (short)96, (short)96, (short)96, (short)98, (short)720, (short)96, (short)427, (short)96, (short)720, (short)427, (short)427, (short)98, (short)427, (short)553, (short)98, (short)98, (short)98, (short)96, (short)551, (short)98, (short)96, (short)98, (short)552, (short)96, (short)555, (short)720, (short)554, (short)96, (short)96, (short)557, (short)96, (short)98, (short)720, (short)556, (short)98, (short)96, (short)96, (short)98, (short)96, (short)558, (short)720, (short)98, (short)98, (short)96, (short)98, (short)559, (short)560, (short)96, (short)562, (short)98, (short)98, (short)720, (short)98, (short)561, (short)563, (short)720, (short)96, (short)98, (short)564, (short)96, (short)720, (short)98, (short)96, (short)96, (short)96, (short)565, (short)720, (short)96, (short)96, (short)568, (short)98, (short)569, (short)96, (short)98, (short)566, (short)96, (short)98, (short)98, (short)98, (short)96, (short)567, (short)98, (short)98, (short)96, (short)720, (short)96, (short)98, (short)720, (short)96, (short)98, (short)96, (short)96, (short)96, (short)98, (short)96, (short)720, (short)96, (short)98, (short)572, (short)98, (short)570, (short)573, (short)98, (short)96, (short)98, (short)98, (short)98, (short)96, (short)98, (short)571, (short)98, (short)96, (short)720, (short)96, (short)577, (short)96, (short)720, (short)98, (short)96, (short)720, (short)575, (short)98, (short)96, (short)576, (short)574, (short)98, (short)580, (short)98, (short)96, (short)98, (short)581, (short)96, (short)98, (short)578, (short)96, (short)582, (short)98, (short)579, (short)96, (short)96, (short)583, (short)96, (short)98, (short)96, (short)720, (short)98, (short)720, (short)96, (short)98, (short)585, (short)720, (short)96, (short)98, (short)98, (short)96, (short)98, (short)584, (short)98, (short)590, (short)588, (short)589, (short)98, (short)96, (short)587, (short)592, (short)98, (short)96, (short)586, (short)98, (short)96, (short)591, (short)96, (short)96, (short)96, (short)96, (short)720, (short)98, (short)96, (short)96, (short)96, (short)98, (short)96, (short)593, (short)98, (short)96, (short)98, (short)98, (short)98, (short)98, (short)594, (short)596, (short)98, (short)98, (short)98, (short)595, (short)98, (short)720, (short)96, (short)98, (short)96, (short)96, (short)96, (short)720, (short)720, (short)598, (short)601, (short)96, (short)96, (short)720, (short)597, (short)603, (short)98, (short)96, (short)98, (short)98, (short)98, (short)599, (short)608, (short)720, (short)607, (short)98, (short)98, (short)602, (short)606, (short)96, (short)600, (short)98, (short)96, (short)604, (short)720, (short)96, (short)96, (short)605, (short)96, (short)96, (short)96, (short)96, (short)96, (short)98, (short)96, (short)96, (short)98, (short)96, (short)609, (short)98, (short)98, (short)96, (short)98, (short)98, (short)98, (short)98, (short)98, (short)611, (short)98, (short)98, (short)610, (short)98, (short)720, (short)96, (short)720, (short)98, (short)720, (short)720, (short)96, (short)96, (short)612, (short)614, (short)96, (short)96, (short)616, (short)96, (short)619, (short)98, (short)617, (short)720, (short)621, (short)622, (short)98, (short)98, (short)96, (short)96, (short)98, (short)98, (short)623, (short)98, (short)96, (short)615, (short)613, (short)618, (short)96, (short)96, (short)620, (short)96, (short)98, (short)98, (short)720, (short)624, (short)720, (short)720, (short)98, (short)626, (short)627, (short)96, (short)98, (short)98, (short)96, (short)98, (short)96, (short)96, (short)629, (short)96, (short)630, (short)628, (short)625, (short)96, (short)96, (short)98, (short)720, (short)96, (short)98, (short)96, (short)98, (short)98, (short)96, (short)98, (short)640, (short)96, (short)720, (short)98, (short)98, (short)96, (short)631, (short)98, (short)633, (short)98, (short)720, (short)632, (short)98, (short)96, (short)96, (short)98, (short)634, (short)96, (short)96, (short)98, (short)720, (short)96, (short)96, (short)96, (short)636, (short)635, (short)637, (short)98, (short)98, (short)96, (short)96, (short)98, (short)98, (short)96, (short)638, (short)98, (short)98, (short)98, (short)720, (short)720, (short)720, (short)96, (short)96, (short)98, (short)98, (short)96, (short)96, (short)98, (short)96, (short)642, (short)96, (short)641, (short)639, (short)643, (short)644, (short)98, (short)98, (short)645, (short)96, (short)98, (short)98, (short)96, (short)98, (short)96, (short)98, (short)96, (short)96, (short)720, (short)96, (short)720, (short)96, (short)720, (short)98, (short)647, (short)96, (short)98, (short)96, (short)98, (short)720, (short)98, (short)98, (short)648, (short)98, (short)650, (short)98, (short)646, (short)720, (short)653, (short)98, (short)720, (short)98, (short)96, (short)649, (short)96, (short)96, (short)96, (short)720, (short)651, (short)654, (short)652, (short)655, (short)656, (short)96, (short)657, (short)660, (short)98, (short)661, (short)98, (short)98, (short)98, (short)662, (short)96, (short)96, (short)96, (short)96, (short)96, (short)98, (short)96, (short)96, (short)96, (short)96, (short)96, (short)96, (short)96, (short)96, (short)98, (short)98, (short)98, (short)98, (short)98, (short)96, (short)98, (short)98, (short)98, (short)98, (short)98, (short)98, (short)98, (short)98, (short)663, (short)720, (short)720, (short)720, (short)664, (short)98, (short)96, (short)96, (short)665, (short)96, (short)96, (short)720, (short)96, (short)667, (short)674, (short)672, (short)666, (short)675, (short)670, (short)673, (short)98, (short)98, (short)678, (short)98, (short)98, (short)677, (short)98, (short)668, (short)96, (short)669, (short)96, (short)671, (short)720, (short)96, (short)96, (short)96, (short)720, (short)96, (short)676, (short)96, (short)96, (short)96, (short)98, (short)96, (short)98, (short)96, (short)679, (short)98, (short)98, (short)98, (short)681, (short)98, (short)96, (short)98, (short)98, (short)98, (short)680, (short)98, (short)96, (short)98, (short)96, (short)96, (short)96, (short)96, (short)96, (short)96, (short)98, (short)720, (short)96, (short)96, (short)683, (short)682, (short)98, (short)685, (short)98, (short)98, (short)98, (short)98, (short)98, (short)98, (short)96, (short)684, (short)98, (short)98, (short)96, (short)96, (short)689, (short)96, (short)686, (short)687, (short)96, (short)720, (short)96, (short)96, (short)98, (short)96, (short)96, (short)690, (short)98, (short)98, (short)688, (short)98, (short)720, (short)692, (short)98, (short)691, (short)98, (short)98, (short)96, (short)98, (short)98, (short)697, (short)693, (short)96, (short)720, (short)695, (short)694, (short)96, (short)696, (short)720, (short)96, (short)96, (short)98, (short)698, (short)720, (short)96, (short)96, (short)98, (short)702, (short)700, (short)720, (short)98, (short)720, (short)699, (short)98, (short)98, (short)96, (short)96, (short)701, (short)98, (short)98, (short)96, (short)720, (short)96, (short)704, (short)96, (short)705, (short)703, (short)720, (short)96, (short)98, (short)98, (short)707, (short)720, (short)96, (short)98, (short)706, (short)98, (short)96, (short)98, (short)96, (short)96, (short)710, (short)98, (short)96, (short)720, (short)720, (short)711, (short)98, (short)708, (short)709, (short)720, (short)98, (short)720, (short)98, (short)98, (short)720, (short)720, (short)98, (short)720, (short)720, (short)720, (short)720, (short)720, (short)714, (short)720, (short)720, (short)720, (short)720, (short)716, (short)720, (short)720, (short)712, (short)720, (short)713, (short)720, (short)718, (short)719, (short)720, (short)720, (short)715, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)717, (short)61, (short)61, (short)61, (short)61, (short)61, (short)61, (short)61, (short)61, (short)68, (short)68, (short)720, (short)68, (short)68, (short)68, (short)68, (short)68, (short)97, (short)720, (short)720, (short)720, (short)97, (short)97, (short)97, (short)168, (short)168, (short)168, (short)169, (short)169, (short)174, (short)174, (short)174, (short)174, (short)174, (short)174, (short)174, (short)174, (short)259, (short)259, (short)659, (short)720, (short)659, (short)659, (short)659, (short)3, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720
188 };
189
190 static const short int yy_chk[2652] =
191 {
192 (short)0, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)1, (short)10, (short)13, (short)13, (short)14, (short)19, (short)659, (short)22, (short)21, (short)22, (short)22, (short)22, (short)22, (short)30, (short)30, (short)23, (short)32, (short)19, (short)21, (short)21, (short)23, (short)14, (short)40, (short)33, (short)25, (short)25, (short)25, (short)25, (short)23, (short)26, (short)32, (short)28, (short)61, (short)26, (short)640, (short)176, (short)40, (short)33, (short)10, (short)24, (short)57, (short)24, (short)24, (short)24, (short)24, (short)25, (short)28, (short)34, (short)28, (short)28, (short)39, (short)34, (short)34, (short)101, (short)24, (short)98, (short)47, (short)24, (short)24, (short)24, (short)96, (short)24, (short)24, (short)95, (short)39, (short)34, (short)43, (short)38, (short)91, (short)61, (short)47, (short)49, (short)24, (short)25, (short)33, (short)40, (short)24, (short)24, (short)41, (short)24, (short)43, (short)38, (short)42, (short)44, (short)97, (short)49, (short)57, (short)24, (short)38, (short)38, (short)24, (short)45, (short)41, (short)38, (short)85, (short)46, (short)42, (short)44, (short)97, (short)48, (short)39, (short)69, (short)76, (short)38, (short)39, (short)45, (short)39, (short)47, (short)38, (short)46, (short)69, (short)63, (short)38, (short)48, (short)43, (short)41, (short)43, (short)100, (short)68, (short)42, (short)42, (short)38, (short)41, (short)42, (short)49, (short)43, (short)41, (short)49, (short)44, (short)41, (short)42, (short)44, (short)45, (short)42, (short)44, (short)37, (short)48, (short)46, (short)50, (short)51, (short)48, (short)52, (short)45, (short)53, (short)46, (short)46, (short)29, (short)54, (short)99, (short)46, (short)68, (short)18, (short)50, (short)51, (short)100, (short)52, (short)107, (short)53, (short)83, (short)55, (short)83, (short)54, (short)99, (short)83, (short)83, (short)83, (short)83, (short)105, (short)103, (short)15, (short)107, (short)9, (short)104, (short)55, (short)174, (short)108, (short)109, (short)110, (short)3, (short)50, (short)51, (short)105, (short)103, (short)51, (short)51, (short)52, (short)104, (short)0, (short)53, (short)108, (short)109, (short)110, (short)54, (short)53, (short)51, (short)51, (short)55, (short)51, (short)54, (short)99, (short)111, (short)52, (short)0, (short)55, (short)77, (short)77, (short)77, (short)77, (short)84, (short)84, (short)84, (short)174, (short)84, (short)0, (short)111, (short)107, (short)105, (short)77, (short)77, (short)103, (short)77, (short)77, (short)77, (short)104, (short)0, (short)108, (short)0, (short)84, (short)84, (short)0, (short)84, (short)109, (short)0, (short)112, (short)0, (short)77, (short)77, (short)110, (short)84, (short)77, (short)77, (short)114, (short)77, (short)81, (short)81, (short)81, (short)81, (short)112, (short)113, (short)111, (short)118, (short)119, (short)0, (short)115, (short)116, (short)114, (short)81, (short)81, (short)117, (short)81, (short)81, (short)81, (short)113, (short)125, (short)118, (short)119, (short)121, (short)115, (short)116, (short)120, (short)0, (short)0, (short)117, (short)0, (short)81, (short)81, (short)0, (short)125, (short)81, (short)81, (short)121, (short)81, (short)82, (short)120, (short)82, (short)82, (short)82, (short)82, (short)112, (short)113, (short)115, (short)116, (short)0, (short)119, (short)0, (short)114, (short)119, (short)82, (short)122, (short)123, (short)82, (short)82, (short)82, (short)0, (short)82, (short)118, (short)119, (short)124, (short)117, (short)126, (short)127, (short)120, (short)122, (short)123, (short)121, (short)82, (short)0, (short)120, (short)125, (short)82, (short)82, (short)124, (short)82, (short)126, (short)127, (short)128, (short)129, (short)130, (short)131, (short)135, (short)82, (short)106, (short)0, (short)137, (short)141, (short)132, (short)134, (short)0, (short)169, (short)128, (short)129, (short)130, (short)131, (short)135, (short)133, (short)106, (short)136, (short)137, (short)141, (short)132, (short)134, (short)138, (short)169, (short)123, (short)122, (short)0, (short)0, (short)0, (short)133, (short)139, (short)136, (short)127, (short)126, (short)124, (short)0, (short)138, (short)140, (short)0, (short)106, (short)106, (short)106, (short)106, (short)106, (short)139, (short)0, (short)0, (short)106, (short)0, (short)128, (short)135, (short)140, (short)129, (short)130, (short)133, (short)106, (short)106, (short)106, (short)132, (short)106, (short)141, (short)134, (short)137, (short)133, (short)142, (short)143, (short)136, (short)138, (short)139, (short)144, (short)133, (short)146, (short)145, (short)138, (short)147, (short)148, (short)150, (short)0, (short)142, (short)143, (short)140, (short)149, (short)151, (short)144, (short)152, (short)146, (short)145, (short)140, (short)147, (short)148, (short)150, (short)140, (short)140, (short)153, (short)0, (short)149, (short)151, (short)154, (short)152, (short)165, (short)165, (short)165, (short)165, (short)194, (short)177, (short)0, (short)144, (short)153, (short)143, (short)144, (short)145, (short)154, (short)0, (short)0, (short)214, (short)142, (short)146, (short)194, (short)177, (short)147, (short)144, (short)150, (short)144, (short)188, (short)0, (short)0, (short)143, (short)148, (short)214, (short)152, (short)150, (short)149, (short)152, (short)0, (short)0, (short)151, (short)0, (short)188, (short)159, (short)173, (short)159, (short)0, (short)154, (short)159, (short)159, (short)159, (short)159, (short)160, (short)153, (short)160, (short)160, (short)160, (short)162, (short)173, (short)162, (short)177, (short)178, (short)162, (short)162, (short)162, (short)162, (short)0, (short)164, (short)164, (short)164, (short)160, (short)164, (short)188, (short)160, (short)160, (short)178, (short)160, (short)161, (short)161, (short)161, (short)161, (short)163, (short)183, (short)163, (short)163, (short)163, (short)164, (short)164, (short)188, (short)164, (short)161, (short)161, (short)173, (short)161, (short)161, (short)161, (short)183, (short)164, (short)0, (short)163, (short)179, (short)0, (short)163, (short)163, (short)0, (short)163, (short)0, (short)180, (short)161, (short)161, (short)178, (short)181, (short)161, (short)161, (short)179, (short)161, (short)166, (short)166, (short)166, (short)166, (short)168, (short)180, (short)184, (short)183, (short)0, (short)181, (short)0, (short)0, (short)0, (short)182, (short)166, (short)186, (short)166, (short)166, (short)166, (short)185, (short)184, (short)179, (short)168, (short)168, (short)168, (short)168, (short)168, (short)182, (short)0, (short)186, (short)0, (short)0, (short)166, (short)185, (short)0, (short)166, (short)166, (short)0, (short)166, (short)180, (short)187, (short)168, (short)168, (short)189, (short)168, (short)180, (short)180, (short)190, (short)168, (short)191, (short)0, (short)181, (short)168, (short)182, (short)187, (short)0, (short)186, (short)189, (short)192, (short)195, (short)193, (short)190, (short)196, (short)191, (short)182, (short)184, (short)197, (short)198, (short)199, (short)185, (short)200, (short)0, (short)192, (short)195, (short)193, (short)201, (short)196, (short)203, (short)202, (short)204, (short)197, (short)198, (short)199, (short)0, (short)200, (short)187, (short)0, (short)206, (short)0, (short)201, (short)207, (short)203, (short)202, (short)204, (short)189, (short)187, (short)193, (short)191, (short)192, (short)196, (short)205, (short)206, (short)190, (short)208, (short)207, (short)209, (short)0, (short)197, (short)0, (short)0, (short)195, (short)0, (short)201, (short)0, (short)205, (short)210, (short)204, (short)208, (short)211, (short)209, (short)198, (short)0, (short)199, (short)202, (short)200, (short)200, (short)212, (short)203, (short)206, (short)210, (short)215, (short)207, (short)211, (short)213, (short)216, (short)207, (short)217, (short)205, (short)218, (short)219, (short)212, (short)208, (short)220, (short)222, (short)215, (short)205, (short)209, (short)213, (short)216, (short)221, (short)217, (short)223, (short)218, (short)219, (short)0, (short)220, (short)220, (short)222, (short)224, (short)211, (short)225, (short)226, (short)227, (short)221, (short)210, (short)223, (short)228, (short)212, (short)224, (short)230, (short)213, (short)0, (short)224, (short)0, (short)225, (short)226, (short)227, (short)0, (short)0, (short)229, (short)228, (short)231, (short)232, (short)230, (short)219, (short)216, (short)222, (short)217, (short)233, (short)234, (short)221, (short)218, (short)223, (short)229, (short)235, (short)231, (short)232, (short)0, (short)236, (short)0, (short)238, (short)237, (short)233, (short)234, (short)239, (short)240, (short)0, (short)241, (short)235, (short)242, (short)227, (short)228, (short)236, (short)226, (short)238, (short)237, (short)243, (short)225, (short)239, (short)240, (short)229, (short)241, (short)244, (short)242, (short)230, (short)0, (short)0, (short)0, (short)245, (short)246, (short)243, (short)247, (short)248, (short)249, (short)250, (short)235, (short)244, (short)231, (short)0, (short)234, (short)237, (short)233, (short)245, (short)246, (short)240, (short)247, (short)248, (short)249, (short)250, (short)0, (short)251, (short)0, (short)238, (short)236, (short)0, (short)263, (short)0, (short)243, (short)0, (short)0, (short)239, (short)264, (short)241, (short)242, (short)251, (short)252, (short)252, (short)252, (short)252, (short)263, (short)249, (short)267, (short)248, (short)250, (short)246, (short)264, (short)266, (short)244, (short)265, (short)245, (short)253, (short)253, (short)253, (short)253, (short)0, (short)267, (short)247, (short)0, (short)0, (short)254, (short)266, (short)254, (short)265, (short)253, (short)254, (short)254, (short)254, (short)254, (short)251, (short)255, (short)0, (short)255, (short)255, (short)255, (short)256, (short)256, (short)256, (short)256, (short)0, (short)264, (short)0, (short)253, (short)257, (short)257, (short)257, (short)257, (short)267, (short)255, (short)0, (short)266, (short)255, (short)255, (short)270, (short)255, (short)258, (short)257, (short)258, (short)258, (short)258, (short)259, (short)265, (short)259, (short)259, (short)259, (short)259, (short)277, (short)270, (short)0, (short)283, (short)0, (short)269, (short)272, (short)258, (short)257, (short)0, (short)258, (short)258, (short)259, (short)258, (short)277, (short)259, (short)259, (short)283, (short)259, (short)269, (short)272, (short)0, (short)259, (short)260, (short)260, (short)260, (short)260, (short)261, (short)261, (short)261, (short)268, (short)261, (short)270, (short)260, (short)260, (short)260, (short)260, (short)260, (short)0, (short)260, (short)260, (short)260, (short)260, (short)277, (short)268, (short)0, (short)261, (short)261, (short)283, (short)261, (short)260, (short)260, (short)260, (short)260, (short)260, (short)260, (short)272, (short)261, (short)260, (short)260, (short)269, (short)260, (short)262, (short)271, (short)262, (short)260, (short)273, (short)262, (short)262, (short)262, (short)262, (short)274, (short)275, (short)278, (short)276, (short)281, (short)279, (short)271, (short)280, (short)268, (short)273, (short)282, (short)284, (short)285, (short)286, (short)274, (short)275, (short)278, (short)276, (short)281, (short)279, (short)0, (short)280, (short)287, (short)288, (short)282, (short)284, (short)285, (short)286, (short)0, (short)289, (short)290, (short)291, (short)292, (short)271, (short)273, (short)0, (short)287, (short)288, (short)0, (short)294, (short)293, (short)0, (short)278, (short)289, (short)290, (short)291, (short)292, (short)295, (short)297, (short)275, (short)284, (short)282, (short)281, (short)294, (short)293, (short)274, (short)275, (short)276, (short)279, (short)280, (short)296, (short)295, (short)297, (short)285, (short)0, (short)298, (short)0, (short)299, (short)300, (short)287, (short)0, (short)301, (short)0, (short)0, (short)296, (short)302, (short)303, (short)292, (short)293, (short)298, (short)294, (short)299, (short)300, (short)304, (short)290, (short)301, (short)291, (short)295, (short)305, (short)302, (short)303, (short)306, (short)307, (short)308, (short)310, (short)309, (short)311, (short)304, (short)296, (short)312, (short)313, (short)0, (short)305, (short)314, (short)297, (short)306, (short)307, (short)308, (short)310, (short)309, (short)311, (short)312, (short)315, (short)312, (short)313, (short)298, (short)316, (short)314, (short)318, (short)317, (short)301, (short)0, (short)299, (short)302, (short)319, (short)320, (short)315, (short)300, (short)321, (short)322, (short)316, (short)323, (short)318, (short)317, (short)0, (short)310, (short)324, (short)325, (short)319, (short)320, (short)327, (short)305, (short)321, (short)322, (short)326, (short)323, (short)311, (short)307, (short)309, (short)306, (short)324, (short)325, (short)0, (short)328, (short)327, (short)313, (short)317, (short)329, (short)326, (short)318, (short)330, (short)331, (short)332, (short)333, (short)0, (short)0, (short)315, (short)328, (short)0, (short)319, (short)0, (short)329, (short)0, (short)334, (short)330, (short)331, (short)332, (short)333, (short)325, (short)320, (short)335, (short)0, (short)322, (short)336, (short)323, (short)327, (short)321, (short)334, (short)0, (short)337, (short)328, (short)324, (short)338, (short)339, (short)335, (short)326, (short)340, (short)336, (short)341, (short)330, (short)342, (short)332, (short)333, (short)337, (short)0, (short)0, (short)338, (short)339, (short)0, (short)331, (short)340, (short)0, (short)341, (short)334, (short)342, (short)329, (short)343, (short)343, (short)343, (short)343, (short)0, (short)344, (short)344, (short)344, (short)344, (short)346, (short)354, (short)346, (short)346, (short)346, (short)355, (short)356, (short)337, (short)336, (short)344, (short)352, (short)352, (short)352, (short)352, (short)0, (short)354, (short)342, (short)341, (short)346, (short)355, (short)356, (short)346, (short)346, (short)338, (short)346, (short)0, (short)340, (short)344, (short)347, (short)357, (short)347, (short)0, (short)0, (short)347, (short)347, (short)347, (short)347, (short)348, (short)360, (short)348, (short)348, (short)348, (short)348, (short)357, (short)0, (short)350, (short)358, (short)350, (short)350, (short)350, (short)359, (short)356, (short)360, (short)355, (short)0, (short)348, (short)0, (short)361, (short)348, (short)348, (short)358, (short)348, (short)0, (short)350, (short)359, (short)348, (short)350, (short)350, (short)351, (short)350, (short)351, (short)361, (short)357, (short)351, (short)351, (short)351, (short)351, (short)353, (short)353, (short)353, (short)353, (short)0, (short)358, (short)362, (short)363, (short)364, (short)360, (short)366, (short)365, (short)0, (short)367, (short)353, (short)368, (short)353, (short)353, (short)353, (short)361, (short)362, (short)363, (short)364, (short)366, (short)366, (short)365, (short)359, (short)367, (short)369, (short)368, (short)370, (short)371, (short)353, (short)372, (short)373, (short)353, (short)353, (short)374, (short)353, (short)375, (short)376, (short)0, (short)369, (short)377, (short)370, (short)371, (short)0, (short)372, (short)373, (short)364, (short)378, (short)374, (short)379, (short)375, (short)376, (short)363, (short)365, (short)377, (short)0, (short)380, (short)362, (short)381, (short)0, (short)382, (short)378, (short)368, (short)379, (short)369, (short)367, (short)383, (short)372, (short)370, (short)371, (short)380, (short)384, (short)381, (short)375, (short)382, (short)376, (short)385, (short)386, (short)388, (short)387, (short)383, (short)373, (short)389, (short)378, (short)374, (short)384, (short)390, (short)391, (short)392, (short)393, (short)385, (short)386, (short)388, (short)387, (short)0, (short)381, (short)389, (short)394, (short)395, (short)397, (short)390, (short)391, (short)392, (short)393, (short)0, (short)0, (short)380, (short)383, (short)382, (short)396, (short)0, (short)394, (short)395, (short)397, (short)398, (short)399, (short)0, (short)400, (short)386, (short)384, (short)387, (short)401, (short)402, (short)396, (short)385, (short)392, (short)0, (short)390, (short)398, (short)399, (short)388, (short)400, (short)403, (short)404, (short)389, (short)401, (short)402, (short)391, (short)0, (short)405, (short)395, (short)406, (short)407, (short)404, (short)409, (short)408, (short)403, (short)404, (short)411, (short)410, (short)396, (short)413, (short)394, (short)405, (short)415, (short)406, (short)407, (short)412, (short)409, (short)408, (short)0, (short)402, (short)411, (short)410, (short)414, (short)413, (short)416, (short)399, (short)415, (short)417, (short)0, (short)412, (short)400, (short)0, (short)401, (short)418, (short)419, (short)0, (short)414, (short)420, (short)416, (short)0, (short)0, (short)417, (short)405, (short)408, (short)409, (short)403, (short)410, (short)418, (short)419, (short)406, (short)0, (short)420, (short)412, (short)421, (short)411, (short)422, (short)415, (short)423, (short)0, (short)414, (short)0, (short)0, (short)0, (short)417, (short)413, (short)0, (short)0, (short)421, (short)417, (short)422, (short)0, (short)423, (short)416, (short)0, (short)420, (short)424, (short)424, (short)424, (short)424, (short)429, (short)429, (short)429, (short)429, (short)433, (short)419, (short)427, (short)0, (short)427, (short)427, (short)427, (short)446, (short)432, (short)422, (short)0, (short)0, (short)0, (short)437, (short)433, (short)421, (short)425, (short)425, (short)425, (short)425, (short)427, (short)446, (short)432, (short)427, (short)427, (short)434, (short)427, (short)437, (short)0, (short)0, (short)425, (short)435, (short)425, (short)425, (short)425, (short)428, (short)0, (short)428, (short)0, (short)434, (short)428, (short)428, (short)428, (short)428, (short)446, (short)435, (short)0, (short)0, (short)425, (short)432, (short)433, (short)425, (short)425, (short)0, (short)425, (short)430, (short)430, (short)430, (short)430, (short)431, (short)436, (short)431, (short)431, (short)431, (short)438, (short)439, (short)0, (short)435, (short)437, (short)430, (short)440, (short)430, (short)430, (short)430, (short)436, (short)434, (short)0, (short)431, (short)438, (short)439, (short)431, (short)431, (short)441, (short)431, (short)440, (short)442, (short)443, (short)430, (short)444, (short)445, (short)430, (short)430, (short)447, (short)430, (short)448, (short)449, (short)441, (short)450, (short)443, (short)442, (short)443, (short)451, (short)444, (short)445, (short)452, (short)436, (short)447, (short)453, (short)448, (short)449, (short)0, (short)450, (short)438, (short)455, (short)454, (short)451, (short)0, (short)456, (short)452, (short)457, (short)439, (short)453, (short)458, (short)460, (short)440, (short)461, (short)459, (short)455, (short)454, (short)447, (short)445, (short)456, (short)441, (short)457, (short)462, (short)442, (short)458, (short)460, (short)0, (short)461, (short)459, (short)444, (short)451, (short)463, (short)464, (short)448, (short)465, (short)466, (short)462, (short)467, (short)449, (short)450, (short)452, (short)453, (short)454, (short)0, (short)454, (short)463, (short)464, (short)457, (short)465, (short)466, (short)468, (short)467, (short)454, (short)469, (short)454, (short)459, (short)470, (short)455, (short)471, (short)456, (short)472, (short)473, (short)474, (short)475, (short)468, (short)476, (short)460, (short)469, (short)0, (short)458, (short)470, (short)477, (short)471, (short)478, (short)472, (short)473, (short)474, (short)475, (short)0, (short)476, (short)479, (short)0, (short)463, (short)464, (short)480, (short)477, (short)481, (short)478, (short)482, (short)483, (short)0, (short)484, (short)467, (short)485, (short)479, (short)471, (short)0, (short)486, (short)480, (short)488, (short)481, (short)472, (short)482, (short)483, (short)475, (short)484, (short)487, (short)485, (short)490, (short)489, (short)477, (short)486, (short)491, (short)488, (short)492, (short)493, (short)473, (short)0, (short)0, (short)0, (short)487, (short)497, (short)490, (short)489, (short)496, (short)498, (short)491, (short)499, (short)492, (short)493, (short)494, (short)494, (short)494, (short)494, (short)500, (short)497, (short)482, (short)0, (short)496, (short)498, (short)501, (short)499, (short)502, (short)487, (short)483, (short)503, (short)0, (short)485, (short)500, (short)490, (short)488, (short)489, (short)0, (short)493, (short)501, (short)504, (short)502, (short)505, (short)497, (short)503, (short)491, (short)506, (short)492, (short)495, (short)495, (short)495, (short)495, (short)0, (short)507, (short)504, (short)508, (short)505, (short)500, (short)509, (short)510, (short)506, (short)498, (short)495, (short)511, (short)495, (short)495, (short)495, (short)507, (short)496, (short)508, (short)501, (short)512, (short)509, (short)510, (short)513, (short)514, (short)515, (short)511, (short)0, (short)516, (short)495, (short)517, (short)0, (short)495, (short)495, (short)512, (short)495, (short)506, (short)513, (short)514, (short)515, (short)518, (short)504, (short)516, (short)519, (short)517, (short)505, (short)520, (short)509, (short)0, (short)508, (short)521, (short)522, (short)511, (short)523, (short)518, (short)0, (short)510, (short)519, (short)524, (short)525, (short)520, (short)526, (short)512, (short)0, (short)521, (short)522, (short)527, (short)523, (short)513, (short)514, (short)528, (short)517, (short)524, (short)525, (short)0, (short)526, (short)516, (short)518, (short)0, (short)529, (short)527, (short)518, (short)530, (short)0, (short)528, (short)531, (short)532, (short)533, (short)519, (short)0, (short)534, (short)535, (short)522, (short)529, (short)523, (short)536, (short)530, (short)520, (short)537, (short)531, (short)532, (short)533, (short)538, (short)521, (short)534, (short)535, (short)539, (short)0, (short)541, (short)536, (short)0, (short)540, (short)537, (short)542, (short)543, (short)545, (short)538, (short)544, (short)0, (short)546, (short)539, (short)530, (short)541, (short)528, (short)531, (short)540, (short)547, (short)542, (short)543, (short)545, (short)548, (short)544, (short)529, (short)546, (short)549, (short)0, (short)550, (short)537, (short)552, (short)0, (short)547, (short)551, (short)0, (short)534, (short)548, (short)553, (short)535, (short)533, (short)549, (short)540, (short)550, (short)555, (short)552, (short)542, (short)554, (short)551, (short)538, (short)556, (short)544, (short)553, (short)539, (short)557, (short)558, (short)545, (short)559, (short)555, (short)560, (short)0, (short)554, (short)0, (short)561, (short)556, (short)548, (short)0, (short)562, (short)557, (short)558, (short)563, (short)559, (short)547, (short)560, (short)553, (short)551, (short)552, (short)561, (short)564, (short)550, (short)555, (short)562, (short)565, (short)549, (short)563, (short)566, (short)554, (short)567, (short)568, (short)570, (short)569, (short)0, (short)564, (short)571, (short)573, (short)572, (short)565, (short)574, (short)556, (short)566, (short)575, (short)567, (short)568, (short)570, (short)569, (short)559, (short)562, (short)571, (short)573, (short)572, (short)560, (short)574, (short)0, (short)576, (short)575, (short)577, (short)578, (short)579, (short)0, (short)0, (short)564, (short)566, (short)580, (short)581, (short)0, (short)563, (short)569, (short)576, (short)582, (short)577, (short)578, (short)579, (short)564, (short)574, (short)0, (short)573, (short)580, (short)581, (short)567, (short)572, (short)583, (short)565, (short)582, (short)584, (short)570, (short)0, (short)585, (short)586, (short)571, (short)587, (short)588, (short)590, (short)591, (short)589, (short)583, (short)592, (short)593, (short)584, (short)594, (short)577, (short)585, (short)586, (short)595, (short)587, (short)588, (short)590, (short)591, (short)589, (short)580, (short)592, (short)593, (short)579, (short)594, (short)0, (short)596, (short)0, (short)595, (short)0, (short)0, (short)597, (short)598, (short)583, (short)585, (short)599, (short)600, (short)587, (short)601, (short)590, (short)596, (short)588, (short)0, (short)592, (short)593, (short)597, (short)598, (short)602, (short)604, (short)599, (short)600, (short)594, (short)601, (short)603, (short)586, (short)584, (short)589, (short)605, (short)607, (short)591, (short)606, (short)602, (short)604, (short)0, (short)595, (short)0, (short)0, (short)603, (short)597, (short)598, (short)608, (short)605, (short)607, (short)609, (short)606, (short)610, (short)611, (short)600, (short)612, (short)601, (short)599, (short)596, (short)613, (short)614, (short)608, (short)0, (short)615, (short)609, (short)616, (short)610, (short)611, (short)617, (short)612, (short)617, (short)618, (short)0, (short)613, (short)614, (short)619, (short)602, (short)615, (short)606, (short)616, (short)0, (short)603, (short)617, (short)620, (short)621, (short)618, (short)608, (short)622, (short)623, (short)619, (short)0, (short)624, (short)625, (short)626, (short)611, (short)609, (short)614, (short)620, (short)621, (short)627, (short)628, (short)622, (short)623, (short)630, (short)615, (short)624, (short)625, (short)626, (short)0, (short)0, (short)0, (short)629, (short)631, (short)627, (short)628, (short)632, (short)633, (short)630, (short)635, (short)620, (short)634, (short)618, (short)616, (short)622, (short)623, (short)629, (short)631, (short)624, (short)637, (short)632, (short)633, (short)636, (short)635, (short)643, (short)634, (short)638, (short)639, (short)0, (short)641, (short)0, (short)642, (short)0, (short)637, (short)628, (short)644, (short)636, (short)645, (short)643, (short)0, (short)638, (short)639, (short)629, (short)641, (short)631, (short)642, (short)627, (short)0, (short)634, (short)644, (short)0, (short)645, (short)646, (short)630, (short)647, (short)648, (short)649, (short)0, (short)632, (short)635, (short)633, (short)636, (short)638, (short)650, (short)639, (short)641, (short)646, (short)642, (short)647, (short)648, (short)649, (short)644, (short)651, (short)652, (short)653, (short)654, (short)655, (short)650, (short)657, (short)656, (short)661, (short)660, (short)662, (short)663, (short)664, (short)665, (short)651, (short)652, (short)653, (short)654, (short)655, (short)666, (short)657, (short)656, (short)661, (short)660, (short)662, (short)663, (short)664, (short)665, (short)646, (short)0, (short)0, (short)0, (short)647, (short)666, (short)667, (short)668, (short)649, (short)669, (short)670, (short)0, (short)671, (short)651, (short)657, (short)656, (short)650, (short)660, (short)654, (short)656, (short)667, (short)668, (short)665, (short)669, (short)670, (short)664, (short)671, (short)652, (short)672, (short)653, (short)673, (short)655, (short)0, (short)674, (short)675, (short)677, (short)0, (short)676, (short)663, (short)678, (short)679, (short)680, (short)672, (short)681, (short)673, (short)682, (short)666, (short)674, (short)675, (short)677, (short)669, (short)676, (short)683, (short)678, (short)679, (short)680, (short)667, (short)681, (short)684, (short)682, (short)685, (short)686, (short)687, (short)688, (short)689, (short)690, (short)683, (short)0, (short)691, (short)692, (short)674, (short)673, (short)684, (short)676, (short)685, (short)686, (short)687, (short)688, (short)689, (short)690, (short)693, (short)674, (short)691, (short)692, (short)694, (short)695, (short)681, (short)696, (short)677, (short)678, (short)697, (short)0, (short)698, (short)699, (short)693, (short)700, (short)701, (short)682, (short)694, (short)695, (short)679, (short)696, (short)0, (short)684, (short)697, (short)683, (short)698, (short)699, (short)703, (short)700, (short)701, (short)691, (short)685, (short)702, (short)0, (short)689, (short)687, (short)704, (short)690, (short)0, (short)705, (short)706, (short)703, (short)692, (short)0, (short)707, (short)708, (short)702, (short)696, (short)694, (short)0, (short)704, (short)0, (short)693, (short)705, (short)706, (short)709, (short)710, (short)695, (short)707, (short)708, (short)711, (short)0, (short)712, (short)699, (short)713, (short)700, (short)698, (short)0, (short)714, (short)709, (short)710, (short)702, (short)0, (short)715, (short)711, (short)701, (short)712, (short)717, (short)713, (short)716, (short)718, (short)707, (short)714, (short)719, (short)0, (short)0, (short)708, (short)715, (short)704, (short)705, (short)0, (short)717, (short)0, (short)716, (short)718, (short)0, (short)0, (short)719, (short)0, (short)0, (short)0, (short)0, (short)0, (short)712, (short)0, (short)0, (short)0, (short)0, (short)714, (short)0, (short)0, (short)710, (short)0, (short)711, (short)0, (short)716, (short)718, (short)0, (short)0, (short)713, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)715, (short)721, (short)721, (short)721, (short)721, (short)721, (short)721, (short)721, (short)721, (short)722, (short)722, (short)0, (short)722, (short)722, (short)722, (short)722, (short)722, (short)723, (short)0, (short)0, (short)0, (short)723, (short)723, (short)723, (short)724, (short)724, (short)724, (short)725, (short)725, (short)726, (short)726, (short)726, (short)726, (short)726, (short)726, (short)726, (short)726, (short)727, (short)727, (short)728, (short)0, (short)728, (short)728, (short)728, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720, (short)720
193 };
194
195 static yy_state_type yy_last_accepting_state;
196
197 static char * yy_last_accepting_cpos;
198
199 char * yytext;
200
201 enum yytokentype
202 {
203 IDENTIFIER = 258, CONSTANT = 259, STRING_LITERAL = 260, SIZEOF = 261, PTR_OP = 262, INC_OP = 263, DEC_OP = 264, LEFT_OP = 265, RIGHT_OP = 266, LE_OP = 267, GE_OP = 268, EQ_OP = 269, NE_OP = 270, AND_OP = 271, OR_OP = 272, MUL_ASSIGN = 273, DIV_ASSIGN = 274, MOD_ASSIGN = 275, ADD_ASSIGN = 276, SUB_ASSIGN = 277, LEFT_ASSIGN = 278, RIGHT_ASSIGN = 279, AND_ASSIGN = 280, XOR_ASSIGN = 281, OR_ASSIGN = 282, TYPE_NAME = 283, TYPEDEF = 284, EXTERN = 285, STATIC = 286, AUTO = 287, REGISTER = 288, CHAR = 289, SHORT = 290, INT = 291, UINT = 292, INT64 = 293, LONG = 294, SIGNED = 295, UNSIGNED = 296, FLOAT = 297, DOUBLE = 298, CONST = 299, VOLATILE = 300, VOID = 301, VALIST = 302, STRUCT = 303, UNION = 304, ENUM = 305, ELLIPSIS = 306, CASE = 307, DEFAULT = 308, IF = 309, SWITCH = 310, WHILE = 311, DO = 312, FOR = 313, GOTO = 314, CONTINUE = 315, BREAK = 316, RETURN = 317, IFX = 318, ELSE = 319, CLASS = 320, THISCLASS = 321, CLASS_NAME = 322, PROPERTY = 323, SETPROP = 324, GETPROP = 325, NEWOP = 326, RENEW = 327, DELETE = 328, EXT_DECL = 329, EXT_STORAGE = 330, IMPORT = 331, DEFINE = 332, VIRTUAL = 333, ATTRIB = 334, PUBLIC = 335, PRIVATE = 336, TYPED_OBJECT = 337, ANY_OBJECT = 338, _INCREF = 339, EXTENSION = 340, ASM = 341, TYPEOF = 342, WATCH = 343, STOPWATCHING = 344, FIREWATCHERS = 345, WATCHABLE = 346, CLASS_DESIGNER = 347, CLASS_NO_EXPANSION = 348, CLASS_FIXED = 349, ISPROPSET = 350, CLASS_DEFAULT_PROPERTY = 351, PROPERTY_CATEGORY = 352, CLASS_DATA = 353, CLASS_PROPERTY = 354, SUBCLASS = 355, NAMESPACE = 356, NEW0OP = 357, RENEW0 = 358, VAARG = 359, DBTABLE = 360, DBFIELD = 361, DBINDEX = 362, DATABASE_OPEN = 363, ALIGNOF = 364, ATTRIB_DEP = 365, __ATTRIB = 366, BOOL = 367, _BOOL = 368, _COMPLEX = 369, _IMAGINARY = 370, RESTRICT = 371, THREAD = 372, WIDE_STRING_LITERAL = 373
204 };
205
206 unsigned int echoOn = 1;
207
208 int preprocessor();
209
210 int comment();
211
212 char sourceFileStack[30][797];
213
214 int declModeStack[30];
215
216 int include_stack_ptr = 0;
217
218 extern int yywrap(void);
219
220 static int input(void);
221
222 extern int defaultDeclMode;
223
224 extern int declMode;
225
226 extern int structDeclMode;
227
228 extern unsigned int inCompiler;
229
230 int yywrap()
231 {
232 return (1);
233 }
234
235 extern int yychar;
236
237 struct __ecereNameSpace__ecere__sys__BTNode;
238
239 struct __ecereNameSpace__ecere__sys__OldList
240 {
241 void *  first;
242 void *  last;
243 int count;
244 unsigned int offset;
245 unsigned int circ;
246 } __attribute__ ((gcc_struct));
247
248 struct Type;
249
250 struct __ecereNameSpace__ecere__com__DataValue
251 {
252 union
253 {
254 char c;
255 unsigned char uc;
256 short s;
257 unsigned short us;
258 int i;
259 unsigned int ui;
260 void *  p;
261 float f;
262 double d;
263 long long i64;
264 uint64 ui64;
265 } __attribute__ ((gcc_struct)) __anon1;
266 } __attribute__ ((gcc_struct));
267
268 struct __ecereNameSpace__ecere__com__SerialBuffer
269 {
270 unsigned char *  _buffer;
271 unsigned int count;
272 unsigned int _size;
273 unsigned int pos;
274 } __attribute__ ((gcc_struct));
275
276 extern void *  __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
277
278 extern void *  __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
279
280 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew(void *  memory, unsigned int size);
281
282 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew0(void *  memory, unsigned int size);
283
284 extern void __ecereNameSpace__ecere__com__eSystem_Delete(void *  memory);
285
286 struct Identifier;
287
288 struct Expression;
289
290 struct Specifier;
291
292 struct Enumerator;
293
294 struct Declarator;
295
296 struct Pointer;
297
298 struct Initializer;
299
300 struct InitDeclarator;
301
302 struct TypeName;
303
304 struct Declaration;
305
306 struct Statement;
307
308 struct FunctionDefinition;
309
310 struct External;
311
312 struct Context;
313
314 struct AsmField;
315
316 struct Attrib;
317
318 struct ExtDecl;
319
320 struct Attribute;
321
322 struct Instantiation;
323
324 struct MembersInit;
325
326 struct MemberInit;
327
328 struct ClassFunction;
329
330 struct ClassDefinition;
331
332 struct ClassDef;
333
334 struct PropertyDef;
335
336 struct Symbol;
337
338 struct PropertyWatch;
339
340 struct TemplateParameter;
341
342 struct TemplateArgument;
343
344 struct TemplateDatatype;
345
346 struct DBTableEntry;
347
348 struct DBIndexItem;
349
350 struct DBTableDef;
351
352 struct CodePosition
353 {
354 int line;
355 int charPos;
356 int pos;
357 int included;
358 } __attribute__ ((gcc_struct));
359
360 extern char *  strcpy(char * , const char * );
361
362 extern int check_type(void);
363
364 extern int printf(const char * , ...);
365
366 extern int yyerror(void);
367
368 extern int __ecereNameSpace__ecere__sys__GetValue(char * *  buffer);
369
370 extern unsigned int __ecereNameSpace__ecere__sys__GetString(char * *  buffer, char *  string, int max);
371
372 extern char *  __ecereNameSpace__ecere__sys__GetExtension(const char *  string, char *  output);
373
374 extern int strcmp(const char * , const char * );
375
376 extern int GetIncludeFileID(char *  includeFile);
377
378 extern char *  __ecereNameSpace__ecere__sys__TrimLSpaces(const char *  string, char *  output);
379
380 extern int strncmp(const char * , const char * , size_t n);
381
382 extern void *  memmove(void * , const void * , size_t size);
383
384 extern size_t strlen(const char * );
385
386 extern char *  strncpy(char * , const char * , size_t n);
387
388 extern const char *  __ecereNameSpace__ecere__GetTranslatedString(const char * name, const char *  string, const char *  stringAndContext);
389
390 extern int FindIncludeFileID(char *  includeFile);
391
392 extern void *  memcpy(void * , const void * , size_t size);
393
394 struct __ecereNameSpace__ecere__com__GlobalFunction;
395
396 static void yy_flex_free(void * ptr)
397 {
398 free(ptr);
399 }
400
401 static void * yy_flex_alloc(yy_size_t size)
402 {
403 return (void *)malloc(size);
404 }
405
406 static void * yy_flex_realloc(void * ptr, yy_size_t size)
407 {
408 return (void *)realloc((char *)ptr, size);
409 }
410
411 static void yy_fatal_error(const char msg[])
412 {
413 (void)fprintf((bsl_stderr()), "%s\n", msg);
414 exit(2);
415 }
416
417 static YY_BUFFER_STATE yy_current_buffer = 0;
418
419 void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer);
420
421 YY_BUFFER_STATE yy_create_buffer(FILE * file, int size);
422
423 void yy_delete_buffer(YY_BUFFER_STATE b);
424
425 void yy_init_buffer(YY_BUFFER_STATE b, FILE * file);
426
427 void yy_flush_buffer(YY_BUFFER_STATE b);
428
429 YY_BUFFER_STATE yy_scan_buffer(char * base, yy_size_t size);
430
431 YY_BUFFER_STATE yy_scan_string(const char * yy_str);
432
433 YY_BUFFER_STATE yy_scan_bytes(const char * bytes, int len);
434
435 YY_BUFFER_STATE include_stack[30];
436
437 static yy_state_type yy_get_previous_state()
438 {
439 register yy_state_type yy_current_state;
440 register char * yy_cp;
441
442 yy_current_state = yy_start;
443 for(yy_cp = yytext + 0; yy_cp < yy_c_buf_p; ++yy_cp)
444 {
445 register YY_CHAR yy_c = (*yy_cp ? yy_ec[((unsigned int)(unsigned char)*yy_cp)] : (unsigned char)1);
446
447 if(yy_accept[yy_current_state])
448 {
449 yy_last_accepting_state = yy_current_state;
450 yy_last_accepting_cpos = yy_cp;
451 }
452 while(yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state)
453 {
454 yy_current_state = (int)yy_def[yy_current_state];
455 if(yy_current_state >= 721)
456 yy_c = yy_meta[(unsigned int)yy_c];
457 }
458 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int)yy_c];
459 }
460 return yy_current_state;
461 }
462
463 static yy_state_type yy_try_NUL_trans(yy_state_type yy_current_state)
464 {
465 register int yy_is_jam;
466 register char * yy_cp = yy_c_buf_p;
467 register YY_CHAR yy_c = (unsigned char)1;
468
469 if(yy_accept[yy_current_state])
470 {
471 yy_last_accepting_state = yy_current_state;
472 yy_last_accepting_cpos = yy_cp;
473 }
474 while(yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state)
475 {
476 yy_current_state = (int)yy_def[yy_current_state];
477 if(yy_current_state >= 721)
478 yy_c = yy_meta[(unsigned int)yy_c];
479 }
480 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int)yy_c];
481 yy_is_jam = (yy_current_state == 720);
482 return yy_is_jam ? 0 : yy_current_state;
483 }
484
485 void SetEchoOn(unsigned int b)
486 {
487 echoOn = b;
488 }
489
490 typedef union YYSTYPE
491 {
492 int specifierType;
493 int i;
494 int declMode;
495 struct Identifier * id;
496 struct Expression * exp;
497 struct Specifier * specifier;
498 struct __ecereNameSpace__ecere__sys__OldList * list;
499 struct Enumerator * enumerator;
500 struct Declarator * declarator;
501 struct Pointer * pointer;
502 struct Initializer * initializer;
503 struct InitDeclarator * initDeclarator;
504 struct TypeName * typeName;
505 struct Declaration * declaration;
506 struct Statement * stmt;
507 struct FunctionDefinition * function;
508 struct External * external;
509 struct Context * context;
510 struct AsmField * asmField;
511 struct Attrib * attrib;
512 struct ExtDecl * extDecl;
513 struct Attribute * attribute;
514 struct Instantiation * instance;
515 struct MembersInit * membersInit;
516 struct MemberInit * memberInit;
517 struct ClassFunction * classFunction;
518 struct ClassDefinition * _class;
519 struct ClassDef * classDef;
520 struct PropertyDef * prop;
521 char * string;
522 struct Symbol * symbol;
523 struct PropertyWatch * propertyWatch;
524 struct TemplateParameter * templateParameter;
525 struct TemplateArgument * templateArgument;
526 struct TemplateDatatype * templateDatatype;
527 struct DBTableEntry * dbtableEntry;
528 struct DBIndexItem * dbindexItem;
529 struct DBTableDef * dbtableDef;
530 } __attribute__ ((gcc_struct)) YYSTYPE;
531
532 extern YYSTYPE yylval;
533
534 struct Location
535 {
536 struct CodePosition start;
537 struct CodePosition end;
538 } __attribute__ ((gcc_struct));
539
540 void SetSomeSourceFileStack(const char * fileName, int index)
541 {
542 strcpy(sourceFileStack[index], fileName);
543 }
544
545 static int input()
546 {
547 int c;
548
549 *yy_c_buf_p = yy_hold_char;
550 if(*yy_c_buf_p == (char)0)
551 {
552 if(yy_c_buf_p < &(*yy_current_buffer).yy_ch_buf[yy_n_chars])
553 *yy_c_buf_p = '\0';
554 else
555 {
556 int offset = yy_c_buf_p - yytext;
557
558 ++yy_c_buf_p;
559 switch(yy_get_next_buffer())
560 {
561 case 2:
562 yyrestart(yyin);
563 case 1:
564 {
565 if(yywrap())
566 return (-1);
567 if(!yy_did_buffer_switch_on_eof)
568 yyrestart(yyin);
569 return input();
570 }
571 case 0:
572 yy_c_buf_p = yytext + offset;
573 break;
574 }
575 }
576 }
577 c = *(unsigned char *)yy_c_buf_p;
578 *yy_c_buf_p = '\0';
579 yy_hold_char = *++yy_c_buf_p;
580 return c;
581 }
582
583 void yy_switch_to_buffer(YY_BUFFER_STATE new_buffer)
584 {
585 if(yy_current_buffer == new_buffer)
586 return ;
587 if(yy_current_buffer)
588 {
589 *yy_c_buf_p = yy_hold_char;
590 (*yy_current_buffer).yy_buf_pos = yy_c_buf_p;
591 (*yy_current_buffer).yy_n_chars = yy_n_chars;
592 }
593 yy_current_buffer = new_buffer;
594 yy_load_buffer_state();
595 yy_did_buffer_switch_on_eof = 1;
596 }
597
598 void yy_load_buffer_state(void)
599 {
600 yy_n_chars = (*yy_current_buffer).yy_n_chars;
601 yytext = yy_c_buf_p = (*yy_current_buffer).yy_buf_pos;
602 yyin = (*yy_current_buffer).yy_input_file;
603 yy_hold_char = *yy_c_buf_p;
604 }
605
606 void yy_delete_buffer(YY_BUFFER_STATE b)
607 {
608 if(!b)
609 return ;
610 if(b == yy_current_buffer)
611 yy_current_buffer = (YY_BUFFER_STATE)0;
612 if((*b).yy_is_our_buffer)
613 yy_flex_free((void *)(*b).yy_ch_buf);
614 yy_flex_free((void *)b);
615 }
616
617 void yy_flush_buffer(YY_BUFFER_STATE b)
618 {
619 if(!b)
620 return ;
621 (*b).yy_n_chars = 0;
622 (*b).yy_ch_buf[0] = (char)0;
623 (*b).yy_ch_buf[1] = (char)0;
624 (*b).yy_buf_pos = &(*b).yy_ch_buf[0];
625 (*b).yy_at_bol = 1;
626 (*b).yy_buffer_status = 0;
627 if(b == yy_current_buffer)
628 yy_load_buffer_state();
629 }
630
631 YY_BUFFER_STATE yy_scan_buffer(char * base, yy_size_t size)
632 {
633 YY_BUFFER_STATE b;
634
635 if(size < 2 || base[size - 2] != (char)0 || base[size - 1] != (char)0)
636 return 0;
637 b = (YY_BUFFER_STATE)yy_flex_alloc(sizeof(struct yy_buffer_state));
638 if(!b)
639 yy_fatal_error("out of dynamic memory in yy_scan_buffer()");
640 (*b).yy_buf_size = size - 2;
641 (*b).yy_buf_pos = (*b).yy_ch_buf = base;
642 (*b).yy_is_our_buffer = 0;
643 (*b).yy_input_file = 0;
644 (*b).yy_n_chars = (*b).yy_buf_size;
645 (*b).yy_is_interactive = 0;
646 (*b).yy_at_bol = 1;
647 (*b).yy_fill_buffer = 0;
648 (*b).yy_buffer_status = 0;
649 yy_switch_to_buffer(b);
650 return b;
651 }
652
653 void yyrestart(FILE * input_file)
654 {
655 if(!yy_current_buffer)
656 yy_current_buffer = yy_create_buffer(yyin, 16384);
657 yy_init_buffer(yy_current_buffer, input_file);
658 yy_load_buffer_state();
659 }
660
661 YY_BUFFER_STATE yy_create_buffer(FILE * file, int size)
662 {
663 YY_BUFFER_STATE b;
664
665 b = (YY_BUFFER_STATE)yy_flex_alloc(sizeof(struct yy_buffer_state));
666 if(!b)
667 yy_fatal_error("out of dynamic memory in yy_create_buffer()");
668 (*b).yy_buf_size = size;
669 (*b).yy_ch_buf = (char *)yy_flex_alloc((*b).yy_buf_size + 2);
670 if(!(*b).yy_ch_buf)
671 yy_fatal_error("out of dynamic memory in yy_create_buffer()");
672 (*b).yy_is_our_buffer = 1;
673 yy_init_buffer(b, file);
674 return b;
675 }
676
677 void yy_init_buffer(YY_BUFFER_STATE b, FILE * file)
678 {
679 yy_flush_buffer(b);
680 (*b).yy_input_file = file;
681 (*b).yy_fill_buffer = 1;
682 (*b).yy_is_interactive = 0;
683 }
684
685 YY_BUFFER_STATE yy_scan_bytes(const char * bytes, int len)
686 {
687 YY_BUFFER_STATE b;
688 char * buf;
689 yy_size_t n;
690 int i;
691
692 n = len + 2;
693 buf = (char *)yy_flex_alloc(n);
694 if(!buf)
695 yy_fatal_error("out of dynamic memory in yy_scan_bytes()");
696 for(i = 0; i < len; ++i)
697 buf[i] = bytes[i];
698 buf[len] = buf[len + 1] = (char)0;
699 b = yy_scan_buffer(buf, n);
700 if(!b)
701 yy_fatal_error("bad buffer in yy_scan_bytes()");
702 (*b).yy_is_our_buffer = 1;
703 return b;
704 }
705
706 YY_BUFFER_STATE yy_scan_string(const char * yy_str)
707 {
708 int len;
709
710 for(len = 0; yy_str[len]; ++len)
711 ;
712 return yy_scan_bytes(yy_str, len);
713 }
714
715 extern struct Location yylloc;
716
717 extern struct Location type_yylloc;
718
719 extern struct Location expression_yylloc;
720
721 struct Location locStack[30];
722
723 int comment()
724 {
725 int c, last = 0;
726
727 for(; ; )
728 {
729 c = input();
730 if(c == (-1))
731 break;
732 if(c == '\n')
733 {
734 yylloc.end.charPos = 1;
735 yylloc.end.pos++;
736 yylloc.end.line++;
737 }
738 else if(c == '\t')
739 {
740 yylloc.end.charPos++;
741 yylloc.end.pos++;
742 }
743 else
744 {
745 yylloc.end.charPos++;
746 yylloc.end.pos++;
747 }
748 if(c == '/' && last == '*')
749 break;
750 last = c;
751 }
752 yylloc.start = yylloc.end;
753 return 0;
754 }
755
756 int commentCPP()
757 {
758 int c;
759
760 for(; ; )
761 {
762 c = input();
763 if(c == (-1))
764 break;
765 if(c == '\n')
766 {
767 yylloc.end.charPos = 1;
768 yylloc.end.pos++;
769 yylloc.end.line++;
770 break;
771 }
772 else if(c == '\t')
773 {
774 yylloc.end.charPos++;
775 yylloc.end.pos++;
776 }
777 else
778 {
779 yylloc.end.charPos++;
780 yylloc.end.pos++;
781 }
782 }
783 yylloc.start = yylloc.end;
784 return 0;
785 }
786
787 void TESTTTT()
788 {
789 yylloc.end.charPos += yyleng;
790 yylloc.end.pos += yyleng;
791 type_yylloc.end.charPos += yyleng;
792 type_yylloc.end.pos += yyleng;
793 expression_yylloc.end.charPos += yyleng;
794 expression_yylloc.end.pos += yyleng;
795 }
796
797 void resetScanner()
798 {
799 yy_flush_buffer(yy_current_buffer);
800 yylloc.start.charPos = yylloc.end.charPos = 1;
801 yylloc.start.line = yylloc.end.line = 1;
802 yylloc.start.pos = yylloc.end.pos = 0;
803 yylloc.start.included = yylloc.end.included = 0;
804 expression_yylloc.start.charPos = expression_yylloc.end.charPos = 1;
805 expression_yylloc.start.line = expression_yylloc.end.line = 1;
806 expression_yylloc.start.pos = expression_yylloc.end.pos = 0;
807 expression_yylloc.start.included = expression_yylloc.end.included = 0;
808 type_yylloc.start.charPos = type_yylloc.end.charPos = 1;
809 type_yylloc.start.line = type_yylloc.end.line = 1;
810 type_yylloc.start.pos = type_yylloc.end.pos = 0;
811 type_yylloc.start.included = type_yylloc.end.included = 0;
812 include_stack_ptr = 0;
813 }
814
815 void resetScannerPos(struct CodePosition * pos)
816 {
817 yy_flush_buffer(yy_current_buffer);
818 yylloc.start = yylloc.end = *pos;
819 type_yylloc.start = type_yylloc.end = *pos;
820 expression_yylloc.start = expression_yylloc.end = *pos;
821 }
822
823 struct __ecereNameSpace__ecere__com__Class;
824
825 struct __ecereNameSpace__ecere__com__Instance
826 {
827 void * *  _vTbl;
828 struct __ecereNameSpace__ecere__com__Class * _class;
829 int _refCount;
830 } __attribute__ ((gcc_struct));
831
832 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name);
833
834 extern void __ecereNameSpace__ecere__com__eClass_SetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name, long long value);
835
836 extern void *  __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
837
838 extern void __ecereNameSpace__ecere__com__eInstance_SetMethod(struct __ecereNameSpace__ecere__com__Instance * instance, const char *  name, void *  function);
839
840 extern void __ecereNameSpace__ecere__com__eInstance_IncRef(struct __ecereNameSpace__ecere__com__Instance * instance);
841
842 extern struct __ecereNameSpace__ecere__com__Instance * fileInput;
843
844 struct __ecereNameSpace__ecere__com__Instance * fileStack[30];
845
846 extern struct __ecereNameSpace__ecere__com__Instance * OpenIncludeFile(char *  includeFile);
847
848 struct LexerBackup
849 {
850 struct Location yylloc;
851 struct Location type_yylloc;
852 struct Location expression_yylloc;
853 int declMode;
854 int defaultDeclMode;
855 struct __ecereNameSpace__ecere__com__Instance * fileInput;
856 YY_BUFFER_STATE include_stack[30];
857 struct __ecereNameSpace__ecere__com__Instance * fileStack[30];
858 char sourceFileStack[30][797];
859 struct Location locStack[30];
860 int declModeStack[30];
861 int include_stack_ptr;
862 YY_BUFFER_STATE buffer;
863 int yy_n_chars;
864 char * yytext;
865 char * yy_c_buf_p;
866 FILE * yyin;
867 char yy_hold_char;
868 int yychar;
869 int yy_init;
870 int yy_start;
871 } __attribute__ ((gcc_struct));
872
873 extern void __ecereNameSpace__ecere__com__eInstance_DecRef(struct __ecereNameSpace__ecere__com__Instance * instance);
874
875 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read;
876
877 int preprocessor()
878 {
879 int c, last = 0;
880 int count = 0;
881 char line[1024];
882
883 line[0] = '\0';
884 for(; ; )
885 {
886 c = input();
887 if(c == (-1))
888 break;
889 if(c == '\n')
890 {
891 yylloc.end.charPos = 1;
892 yylloc.end.pos++;
893 yylloc.end.line++;
894 if(last != '\\')
895 {
896 char * pointer = line + 1;
897 int lineNumber;
898
899 line[count] = (char)0;
900 lineNumber = __ecereNameSpace__ecere__sys__GetValue(&pointer);
901 if(lineNumber)
902 {
903 char fileName[797];
904 int inOut;
905
906 fileName[0] = (char)0;
907 __ecereNameSpace__ecere__sys__GetString(&pointer, fileName, (797));
908 inOut = __ecereNameSpace__ecere__sys__GetValue(&pointer);
909 if(inOut == 1)
910 {
911 char extension[17];
912
913 defaultDeclMode = declModeStack[include_stack_ptr] = declMode;
914 __ecereNameSpace__ecere__sys__GetExtension(fileName, extension);
915 if(!strcmp(extension, "c") || !strcmp(extension, "h"))
916 declMode = defaultDeclMode = structDeclMode = 0;
917 fileStack[include_stack_ptr] = (((void *)0));
918 include_stack_ptr++;
919 }
920 else if(inOut == 2)
921 {
922 include_stack_ptr--;
923 defaultDeclMode = declMode = structDeclMode = declModeStack[include_stack_ptr];
924 }
925 yylloc.end.charPos = 1;
926 yylloc.end.line = lineNumber;
927 if(include_stack_ptr > 0 || (lineNumber && fileName[0]))
928 yylloc.end.included = GetIncludeFileID(fileName);
929 else
930 yylloc.end.included = 0;
931 }
932 break;
933 }
934 count = 0;
935 }
936 else if(c == '\t')
937 {
938 yylloc.end.charPos++;
939 yylloc.end.pos++;
940 line[count++] = c;
941 }
942 else
943 {
944 yylloc.end.pos++;
945 if(c != '\r')
946 {
947 yylloc.end.charPos++;
948 line[count++] = c;
949 }
950 }
951 last = c;
952 }
953 yylloc.start = yylloc.end;
954 line[count] = (char)0;
955 __ecereNameSpace__ecere__sys__TrimLSpaces(line, line);
956 for(c = 0; line[c] && line[c] != ' '; c++)
957 ;
958 if(!strncmp(line, "include", c))
959 {
960 char includeFile[797] = "";
961
962 memmove(line, line + c, strlen(line + c) + 1);
963 __ecereNameSpace__ecere__sys__TrimLSpaces(line, line);
964 if(line[0] == '\"')
965 {
966 for(c = 1; line[c]; c++)
967 {
968 if(line[c] == '\"')
969 {
970 strncpy(includeFile, line + 1, c - 1);
971 includeFile[c - 1] = '\0';
972 break;
973 }
974 }
975 }
976 else if(line[0] == '<')
977 {
978 for(c = 1; line[c]; c++)
979 if(line[c] == '>')
980 {
981 strncpy(includeFile, line + 1, c - 1);
982 includeFile[c - 1] = '\0';
983 break;
984 }
985 }
986 if(include_stack_ptr >= (30))
987 {
988 fprintf((bsl_stderr()), "%s", __ecereNameSpace__ecere__GetTranslatedString("ec", "Includes nested too deeply", (((void *)0))));
989 exit(1);
990 }
991 if(inCompiler || !FindIncludeFileID(includeFile))
992 {
993 struct __ecereNameSpace__ecere__com__Instance * file = OpenIncludeFile(includeFile);
994
995 if(file)
996 {
997 char extension[17];
998
999 fileStack[include_stack_ptr] = fileInput;
1000 locStack[include_stack_ptr] = yylloc;
1001 defaultDeclMode = declModeStack[include_stack_ptr] = declMode;
1002 include_stack[include_stack_ptr++] = yy_current_buffer;
1003 yylloc.start.charPos = yylloc.end.charPos = 1;
1004 yylloc.start.line = yylloc.end.line = 1;
1005 yylloc.start.pos = yylloc.end.pos = 0;
1006 yylloc.start.included = yylloc.end.included = GetIncludeFileID(includeFile);
1007 __ecereNameSpace__ecere__sys__GetExtension(includeFile, extension);
1008 if(!strcmp(extension, "c") || !strcmp(extension, "h"))
1009 declMode = defaultDeclMode = structDeclMode = 0;
1010 fileInput = file;
1011 yy_switch_to_buffer(yy_create_buffer(fileInput, 16384));
1012 yy_start = 1 + 2 * (0);
1013 }
1014 }
1015 }
1016 return 0;
1017 }
1018
1019 int yylex(void)
1020 {
1021 register yy_state_type yy_current_state;
1022 register char * yy_cp, * yy_bp;
1023 register int yy_act;
1024
1025 yylloc.start = yylloc.end;
1026 type_yylloc.start = type_yylloc.end;
1027 expression_yylloc.start = expression_yylloc.end;
1028 if(yy_init)
1029 {
1030 yy_init = 0;
1031 if(!yy_start)
1032 yy_start = 1;
1033 if(!yyin)
1034 yyin = (bsl_stdin());
1035 if(!yyout)
1036 yyout = (bsl_stdout());
1037 if(!yy_current_buffer)
1038 yy_current_buffer = yy_create_buffer(yyin, 16384);
1039 yy_load_buffer_state();
1040 }
1041 while(1)
1042 {
1043 yy_cp = yy_c_buf_p;
1044 *yy_cp = yy_hold_char;
1045 yy_bp = yy_cp;
1046 yy_current_state = yy_start;
1047 yy_match:
1048 do
1049 {
1050 register YY_CHAR yy_c = yy_ec[((unsigned int)(unsigned char)*yy_cp)];
1051
1052 if(yy_accept[yy_current_state])
1053 {
1054 yy_last_accepting_state = yy_current_state;
1055 yy_last_accepting_cpos = yy_cp;
1056 }
1057 while(yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state)
1058 {
1059 yy_current_state = (int)yy_def[yy_current_state];
1060 if(yy_current_state >= 721)
1061 yy_c = yy_meta[(unsigned int)yy_c];
1062 }
1063 yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int)yy_c];
1064 ++yy_cp;
1065 }while(yy_base[yy_current_state] != (short)2575);
1066 yy_find_action:
1067 yy_act = yy_accept[yy_current_state];
1068 if(yy_act == 0)
1069 {
1070 yy_cp = yy_last_accepting_cpos;
1071 yy_current_state = yy_last_accepting_state;
1072 yy_act = yy_accept[yy_current_state];
1073 }
1074 yytext = yy_bp;
1075 yyleng = (int)(yy_cp - yy_bp);
1076 yy_hold_char = *yy_cp;
1077 *yy_cp = '\0';
1078 yy_c_buf_p = yy_cp;
1079 ;
1080 do_action:
1081 switch(yy_act)
1082 {
1083 case 0:
1084 *yy_cp = yy_hold_char;
1085 yy_cp = yy_last_accepting_cpos;
1086 yy_current_state = yy_last_accepting_state;
1087 goto yy_find_action;
1088 case 1:
1089 TESTTTT();
1090 {
1091 preprocessor();
1092 }
1093 break;
1094 case 2:
1095 TESTTTT();
1096 {
1097 comment();
1098 }
1099 break;
1100 case 3:
1101 TESTTTT();
1102 {
1103 commentCPP();
1104 }
1105 break;
1106 case 4:
1107 TESTTTT();
1108 {
1109 return (AUTO);
1110 }
1111 break;
1112 case 5:
1113 TESTTTT();
1114 {
1115 return (BREAK);
1116 }
1117 break;
1118 case 6:
1119 TESTTTT();
1120 {
1121 return (CASE);
1122 }
1123 break;
1124 case 7:
1125 TESTTTT();
1126 {
1127 return (CHAR);
1128 }
1129 break;
1130 case 8:
1131 TESTTTT();
1132 {
1133 return (CONST);
1134 }
1135 break;
1136 case 9:
1137 TESTTTT();
1138 {
1139 return (CONTINUE);
1140 }
1141 break;
1142 case 10:
1143 TESTTTT();
1144 {
1145 return (DEFAULT);
1146 }
1147 break;
1148 case 11:
1149 TESTTTT();
1150 {
1151 return (DO);
1152 }
1153 break;
1154 case 12:
1155 TESTTTT();
1156 {
1157 return (DOUBLE);
1158 }
1159 break;
1160 case 13:
1161 TESTTTT();
1162 {
1163 return (ELSE);
1164 }
1165 break;
1166 case 14:
1167 TESTTTT();
1168 {
1169 return (ENUM);
1170 }
1171 break;
1172 case 15:
1173 TESTTTT();
1174 {
1175 return (EXTERN);
1176 }
1177 break;
1178 case 16:
1179 TESTTTT();
1180 {
1181 return (FLOAT);
1182 }
1183 break;
1184 case 17:
1185 TESTTTT();
1186 {
1187 return (FOR);
1188 }
1189 break;
1190 case 18:
1191 TESTTTT();
1192 {
1193 return (GOTO);
1194 }
1195 break;
1196 case 19:
1197 TESTTTT();
1198 {
1199 return (IF);
1200 }
1201 break;
1202 case 20:
1203 TESTTTT();
1204 {
1205 return (INT);
1206 }
1207 break;
1208 case 21:
1209 TESTTTT();
1210 {
1211 return (UINT);
1212 }
1213 break;
1214 case 22:
1215 TESTTTT();
1216 {
1217 return (LONG);
1218 }
1219 break;
1220 case 23:
1221 TESTTTT();
1222 {
1223 return (REGISTER);
1224 }
1225 break;
1226 case 24:
1227 TESTTTT();
1228 {
1229 return (RETURN);
1230 }
1231 break;
1232 case 25:
1233 TESTTTT();
1234 {
1235 return (SHORT);
1236 }
1237 break;
1238 case 26:
1239 TESTTTT();
1240 {
1241 return (SIGNED);
1242 }
1243 break;
1244 case 27:
1245 TESTTTT();
1246 {
1247 return (SIGNED);
1248 }
1249 break;
1250 case 28:
1251 TESTTTT();
1252 {
1253 return (SIGNED);
1254 }
1255 break;
1256 case 29:
1257 TESTTTT();
1258 {
1259 return (SIZEOF);
1260 }
1261 break;
1262 case 30:
1263 TESTTTT();
1264 {
1265 return (ALIGNOF);
1266 }
1267 break;
1268 case 31:
1269 TESTTTT();
1270 {
1271 return (STATIC);
1272 }
1273 break;
1274 case 32:
1275 TESTTTT();
1276 {
1277 return (THREAD);
1278 }
1279 break;
1280 case 33:
1281 TESTTTT();
1282 {
1283 return (STRUCT);
1284 }
1285 break;
1286 case 34:
1287 TESTTTT();
1288 {
1289 return (SWITCH);
1290 }
1291 break;
1292 case 35:
1293 TESTTTT();
1294 {
1295 return (TYPEDEF);
1296 }
1297 break;
1298 case 36:
1299 TESTTTT();
1300 {
1301 return (UNION);
1302 }
1303 break;
1304 case 37:
1305 TESTTTT();
1306 {
1307 return (UNSIGNED);
1308 }
1309 break;
1310 case 38:
1311 TESTTTT();
1312 {
1313 return (VOID);
1314 }
1315 break;
1316 case 39:
1317 TESTTTT();
1318 {
1319 return (VOLATILE);
1320 }
1321 break;
1322 case 40:
1323 TESTTTT();
1324 {
1325 return (VOLATILE);
1326 }
1327 break;
1328 case 41:
1329 TESTTTT();
1330 {
1331 return (VOLATILE);
1332 }
1333 break;
1334 case 42:
1335 TESTTTT();
1336 {
1337 return (WHILE);
1338 }
1339 break;
1340 case 43:
1341 TESTTTT();
1342 {
1343 return (PROPERTY);
1344 }
1345 break;
1346 case 44:
1347 TESTTTT();
1348 {
1349 return (SETPROP);
1350 }
1351 break;
1352 case 45:
1353 TESTTTT();
1354 {
1355 return (GETPROP);
1356 }
1357 break;
1358 case 46:
1359 TESTTTT();
1360 {
1361 return (ISPROPSET);
1362 }
1363 break;
1364 case 47:
1365 TESTTTT();
1366 {
1367 return (CLASS);
1368 }
1369 break;
1370 case 48:
1371 TESTTTT();
1372 {
1373 return (THISCLASS);
1374 }
1375 break;
1376 case 49:
1377 TESTTTT();
1378 {
1379 return (VIRTUAL);
1380 }
1381 break;
1382 case 50:
1383 TESTTTT();
1384 {
1385 return (DELETE);
1386 }
1387 break;
1388 case 51:
1389 TESTTTT();
1390 {
1391 return (NEWOP);
1392 }
1393 break;
1394 case 52:
1395 TESTTTT();
1396 {
1397 return (NEW0OP);
1398 }
1399 break;
1400 case 53:
1401 TESTTTT();
1402 {
1403 return (RENEW);
1404 }
1405 break;
1406 case 54:
1407 TESTTTT();
1408 {
1409 return (RENEW0);
1410 }
1411 break;
1412 case 55:
1413 TESTTTT();
1414 {
1415 return (IMPORT);
1416 }
1417 break;
1418 case 56:
1419 TESTTTT();
1420 {
1421 return (DEFINE);
1422 }
1423 break;
1424 case 57:
1425 TESTTTT();
1426 {
1427 return (INT64);
1428 }
1429 break;
1430 case 58:
1431 TESTTTT();
1432 {
1433 return (INT64);
1434 }
1435 break;
1436 case 59:
1437 TESTTTT();
1438 {
1439 return (VALIST);
1440 }
1441 break;
1442 case 60:
1443 TESTTTT();
1444 {
1445 return (VAARG);
1446 }
1447 break;
1448 case 61:
1449 TESTTTT();
1450 {
1451 return (BOOL);
1452 }
1453 break;
1454 case 62:
1455 TESTTTT();
1456 {
1457 return (_BOOL);
1458 }
1459 break;
1460 case 63:
1461 TESTTTT();
1462 {
1463 return (_COMPLEX);
1464 }
1465 break;
1466 case 64:
1467 TESTTTT();
1468 {
1469 return (_IMAGINARY);
1470 }
1471 break;
1472 case 65:
1473 TESTTTT();
1474 {
1475 return (EXT_DECL);
1476 }
1477 break;
1478 case 66:
1479 TESTTTT();
1480 {
1481 return ATTRIB_DEP;
1482 }
1483 break;
1484 case 67:
1485 TESTTTT();
1486 {
1487 return ATTRIB;
1488 }
1489 break;
1490 case 68:
1491 TESTTTT();
1492 {
1493 return __ATTRIB;
1494 }
1495 break;
1496 case 69:
1497 TESTTTT();
1498 {
1499 return (EXT_STORAGE);
1500 }
1501 break;
1502 case 70:
1503 TESTTTT();
1504 {
1505 return (EXT_STORAGE);
1506 }
1507 break;
1508 case 71:
1509 TESTTTT();
1510 {
1511 return (EXT_STORAGE);
1512 }
1513 break;
1514 case 72:
1515 TESTTTT();
1516 {
1517 return (EXT_STORAGE);
1518 }
1519 break;
1520 case 73:
1521 TESTTTT();
1522 {
1523 return (EXT_STORAGE);
1524 }
1525 break;
1526 case 74:
1527 TESTTTT();
1528 {
1529 return (EXT_STORAGE);
1530 }
1531 break;
1532 case 75:
1533 TESTTTT();
1534 {
1535 return (EXT_STORAGE);
1536 }
1537 break;
1538 case 76:
1539 TESTTTT();
1540 {
1541 return (EXT_DECL);
1542 }
1543 break;
1544 case 77:
1545 TESTTTT();
1546 {
1547 return (EXT_DECL);
1548 }
1549 break;
1550 case 78:
1551 TESTTTT();
1552 {
1553 return (EXT_DECL);
1554 }
1555 break;
1556 case 79:
1557 TESTTTT();
1558 {
1559 return (EXT_DECL);
1560 }
1561 break;
1562 case 80:
1563 TESTTTT();
1564 {
1565 return (EXT_DECL);
1566 }
1567 break;
1568 case 81:
1569 TESTTTT();
1570 {
1571 return (EXT_DECL);
1572 }
1573 break;
1574 case 82:
1575 TESTTTT();
1576 {
1577 return (CONST);
1578 }
1579 break;
1580 case 83:
1581 TESTTTT();
1582 {
1583 return (EXT_DECL);
1584 }
1585 break;
1586 case 84:
1587 TESTTTT();
1588 {
1589 return (PUBLIC);
1590 }
1591 break;
1592 case 85:
1593 TESTTTT();
1594 {
1595 return (PRIVATE);
1596 }
1597 break;
1598 case 86:
1599 TESTTTT();
1600 {
1601 return (TYPED_OBJECT);
1602 }
1603 break;
1604 case 87:
1605 TESTTTT();
1606 {
1607 return (ANY_OBJECT);
1608 }
1609 break;
1610 case 88:
1611 TESTTTT();
1612 {
1613 return (_INCREF);
1614 }
1615 break;
1616 case 89:
1617 TESTTTT();
1618 {
1619 return (EXTENSION);
1620 }
1621 break;
1622 case 90:
1623 TESTTTT();
1624 {
1625 return (EXTENSION);
1626 }
1627 break;
1628 case 91:
1629 TESTTTT();
1630 {
1631 return (ASM);
1632 }
1633 break;
1634 case 92:
1635 TESTTTT();
1636 {
1637 return (ASM);
1638 }
1639 break;
1640 case 93:
1641 TESTTTT();
1642 {
1643 return (ASM);
1644 }
1645 break;
1646 case 94:
1647 TESTTTT();
1648 {
1649 return (TYPEOF);
1650 }
1651 break;
1652 case 95:
1653 TESTTTT();
1654 {
1655 return (WATCH);
1656 }
1657 break;
1658 case 96:
1659 TESTTTT();
1660 {
1661 return (STOPWATCHING);
1662 }
1663 break;
1664 case 97:
1665 TESTTTT();
1666 {
1667 return (FIREWATCHERS);
1668 }
1669 break;
1670 case 98:
1671 TESTTTT();
1672 {
1673 return (WATCHABLE);
1674 }
1675 break;
1676 case 99:
1677 TESTTTT();
1678 {
1679 return (CLASS_DESIGNER);
1680 }
1681 break;
1682 case 100:
1683 TESTTTT();
1684 {
1685 return (CLASS_NO_EXPANSION);
1686 }
1687 break;
1688 case 101:
1689 TESTTTT();
1690 {
1691 return (CLASS_FIXED);
1692 }
1693 break;
1694 case 102:
1695 TESTTTT();
1696 {
1697 return (CLASS_DEFAULT_PROPERTY);
1698 }
1699 break;
1700 case 103:
1701 TESTTTT();
1702 {
1703 return (PROPERTY_CATEGORY);
1704 }
1705 break;
1706 case 104:
1707 TESTTTT();
1708 {
1709 return (CLASS_DATA);
1710 }
1711 break;
1712 case 105:
1713 TESTTTT();
1714 {
1715 return (CLASS_PROPERTY);
1716 }
1717 break;
1718 case 106:
1719 TESTTTT();
1720 {
1721 return (SUBCLASS);
1722 }
1723 break;
1724 case 107:
1725 TESTTTT();
1726 {
1727 return (NAMESPACE);
1728 }
1729 break;
1730 case 108:
1731 TESTTTT();
1732 {
1733 return (DBTABLE);
1734 }
1735 break;
1736 case 109:
1737 TESTTTT();
1738 {
1739 return (DBFIELD);
1740 }
1741 break;
1742 case 110:
1743 TESTTTT();
1744 {
1745 return (DBINDEX);
1746 }
1747 break;
1748 case 111:
1749 TESTTTT();
1750 {
1751 return (DATABASE_OPEN);
1752 }
1753 break;
1754 case 112:
1755 TESTTTT();
1756 {
1757 return (check_type());
1758 }
1759 break;
1760 case 113:
1761 TESTTTT();
1762 {
1763 return (CONSTANT);
1764 }
1765 break;
1766 case 114:
1767 TESTTTT();
1768 {
1769 return (CONSTANT);
1770 }
1771 break;
1772 case 115:
1773 TESTTTT();
1774 {
1775 return (CONSTANT);
1776 }
1777 break;
1778 case 116:
1779 TESTTTT();
1780 {
1781 return (CONSTANT);
1782 }
1783 break;
1784 case 117:
1785 TESTTTT();
1786 {
1787 return (CONSTANT);
1788 }
1789 break;
1790 case 118:
1791 TESTTTT();
1792 {
1793 return (CONSTANT);
1794 }
1795 break;
1796 case 119:
1797 TESTTTT();
1798 {
1799 return (CONSTANT);
1800 }
1801 break;
1802 case 120:
1803 TESTTTT();
1804 {
1805 return (CONSTANT);
1806 }
1807 break;
1808 case 121:
1809 TESTTTT();
1810 {
1811 return (CONSTANT);
1812 }
1813 break;
1814 case 122:
1815 TESTTTT();
1816 {
1817 return (CONSTANT);
1818 }
1819 break;
1820 case 123:
1821 TESTTTT();
1822 {
1823 return (STRING_LITERAL);
1824 }
1825 break;
1826 case 124:
1827 TESTTTT();
1828 {
1829 return (WIDE_STRING_LITERAL);
1830 }
1831 break;
1832 case 125:
1833 TESTTTT();
1834 {
1835 return (ELLIPSIS);
1836 }
1837 break;
1838 case 126:
1839 TESTTTT();
1840 {
1841 return (RIGHT_ASSIGN);
1842 }
1843 break;
1844 case 127:
1845 TESTTTT();
1846 {
1847 return (LEFT_ASSIGN);
1848 }
1849 break;
1850 case 128:
1851 TESTTTT();
1852 {
1853 return (ADD_ASSIGN);
1854 }
1855 break;
1856 case 129:
1857 TESTTTT();
1858 {
1859 return (SUB_ASSIGN);
1860 }
1861 break;
1862 case 130:
1863 TESTTTT();
1864 {
1865 return (MUL_ASSIGN);
1866 }
1867 break;
1868 case 131:
1869 TESTTTT();
1870 {
1871 return (DIV_ASSIGN);
1872 }
1873 break;
1874 case 132:
1875 TESTTTT();
1876 {
1877 return (MOD_ASSIGN);
1878 }
1879 break;
1880 case 133:
1881 TESTTTT();
1882 {
1883 return (AND_ASSIGN);
1884 }
1885 break;
1886 case 134:
1887 TESTTTT();
1888 {
1889 return (XOR_ASSIGN);
1890 }
1891 break;
1892 case 135:
1893 TESTTTT();
1894 {
1895 return (OR_ASSIGN);
1896 }
1897 break;
1898 case 136:
1899 TESTTTT();
1900 {
1901 return (RIGHT_OP);
1902 }
1903 break;
1904 case 137:
1905 TESTTTT();
1906 {
1907 return (LEFT_OP);
1908 }
1909 break;
1910 case 138:
1911 TESTTTT();
1912 {
1913 return (INC_OP);
1914 }
1915 break;
1916 case 139:
1917 TESTTTT();
1918 {
1919 return (DEC_OP);
1920 }
1921 break;
1922 case 140:
1923 TESTTTT();
1924 {
1925 return (PTR_OP);
1926 }
1927 break;
1928 case 141:
1929 TESTTTT();
1930 {
1931 return (AND_OP);
1932 }
1933 break;
1934 case 142:
1935 TESTTTT();
1936 {
1937 return (OR_OP);
1938 }
1939 break;
1940 case 143:
1941 TESTTTT();
1942 {
1943 return (LE_OP);
1944 }
1945 break;
1946 case 144:
1947 TESTTTT();
1948 {
1949 return (GE_OP);
1950 }
1951 break;
1952 case 145:
1953 TESTTTT();
1954 {
1955 return (EQ_OP);
1956 }
1957 break;
1958 case 146:
1959 TESTTTT();
1960 {
1961 return (NE_OP);
1962 }
1963 break;
1964 case 147:
1965 TESTTTT();
1966 {
1967 return (';');
1968 }
1969 break;
1970 case 148:
1971 TESTTTT();
1972 {
1973 return ('{');
1974 }
1975 break;
1976 case 149:
1977 TESTTTT();
1978 {
1979 return ('}');
1980 }
1981 break;
1982 case 150:
1983 TESTTTT();
1984 {
1985 return (',');
1986 }
1987 break;
1988 case 151:
1989 TESTTTT();
1990 {
1991 return (':');
1992 }
1993 break;
1994 case 152:
1995 TESTTTT();
1996 {
1997 return ('=');
1998 }
1999 break;
2000 case 153:
2001 TESTTTT();
2002 {
2003 return ('(');
2004 }
2005 break;
2006 case 154:
2007 TESTTTT();
2008 {
2009 return (')');
2010 }
2011 break;
2012 case 155:
2013 TESTTTT();
2014 {
2015 return ('[');
2016 }
2017 break;
2018 case 156:
2019 TESTTTT();
2020 {
2021 return (']');
2022 }
2023 break;
2024 case 157:
2025 TESTTTT();
2026 {
2027 return ('.');
2028 }
2029 break;
2030 case 158:
2031 TESTTTT();
2032 {
2033 return ('&');
2034 }
2035 break;
2036 case 159:
2037 TESTTTT();
2038 {
2039 return ('!');
2040 }
2041 break;
2042 case 160:
2043 TESTTTT();
2044 {
2045 return ('~');
2046 }
2047 break;
2048 case 161:
2049 TESTTTT();
2050 {
2051 return ('-');
2052 }
2053 break;
2054 case 162:
2055 TESTTTT();
2056 {
2057 return ('+');
2058 }
2059 break;
2060 case 163:
2061 TESTTTT();
2062 {
2063 return ('*');
2064 }
2065 break;
2066 case 164:
2067 TESTTTT();
2068 {
2069 return ('/');
2070 }
2071 break;
2072 case 165:
2073 TESTTTT();
2074 {
2075 return ('%');
2076 }
2077 break;
2078 case 166:
2079 TESTTTT();
2080 {
2081 return ('<');
2082 }
2083 break;
2084 case 167:
2085 TESTTTT();
2086 {
2087 return ('>');
2088 }
2089 break;
2090 case 168:
2091 TESTTTT();
2092 {
2093 return ('^');
2094 }
2095 break;
2096 case 169:
2097 TESTTTT();
2098 {
2099 return ('|');
2100 }
2101 break;
2102 case 170:
2103 TESTTTT();
2104 {
2105 return ('?');
2106 }
2107 break;
2108 case 171:
2109 TESTTTT();
2110 {
2111 return ('$');
2112 }
2113 break;
2114 case 179:
2115 {
2116 while(include_stack_ptr && !fileStack[include_stack_ptr - 1])
2117 {
2118 --include_stack_ptr;
2119 defaultDeclMode = declMode = structDeclMode = declModeStack[include_stack_ptr];
2120 }
2121 if(--include_stack_ptr < 0)
2122 {
2123 include_stack_ptr = 0;
2124 return 0;
2125 }
2126 else
2127 {
2128 (__ecereNameSpace__ecere__com__eInstance_DecRef(fileInput), fileInput = 0);
2129 yy_delete_buffer(yy_current_buffer);
2130 fileInput = fileStack[include_stack_ptr];
2131 yylloc = locStack[include_stack_ptr];
2132 type_yylloc = locStack[include_stack_ptr];
2133 expression_yylloc = locStack[include_stack_ptr];
2134 yy_switch_to_buffer(include_stack[include_stack_ptr]);
2135 defaultDeclMode = declMode = structDeclMode = declModeStack[include_stack_ptr];
2136 }
2137 }
2138 break;
2139 case 172:
2140 TESTTTT();
2141 {
2142 yylloc.start = yylloc.end;
2143 type_yylloc.start = type_yylloc.end;
2144 expression_yylloc.start = expression_yylloc.end;
2145 }
2146 break;
2147 case 173:
2148 TESTTTT();
2149 {
2150 yylloc.end.charPos = 1;
2151 yylloc.end.line += yyleng;
2152 yylloc.start = yylloc.end;
2153 type_yylloc.end.charPos = 1;
2154 type_yylloc.end.line += yyleng;
2155 type_yylloc.start = type_yylloc.end;
2156 expression_yylloc.end.charPos = 1;
2157 expression_yylloc.end.line += yyleng;
2158 expression_yylloc.start = expression_yylloc.end;
2159 }
2160 break;
2161 case 174:
2162 TESTTTT();
2163 {
2164 yylloc.start.charPos++;
2165 yylloc.end.charPos = yylloc.start.charPos;
2166 yylloc.start.pos = yylloc.end.pos;
2167 expression_yylloc.start.charPos++;
2168 expression_yylloc.end.charPos = expression_yylloc.start.charPos;
2169 expression_yylloc.start.pos = expression_yylloc.end.pos;
2170 type_yylloc.start.charPos++;
2171 type_yylloc.end.charPos = type_yylloc.start.charPos;
2172 type_yylloc.start.pos = type_yylloc.end.pos;
2173 }
2174 break;
2175 case 175:
2176 TESTTTT();
2177 {
2178 yylloc.start = yylloc.end;
2179 expression_yylloc.start = expression_yylloc.end;
2180 type_yylloc.start = type_yylloc.end;
2181 }
2182 break;
2183 case 176:
2184 TESTTTT();
2185 {
2186 yylloc.start = yylloc.end;
2187 expression_yylloc.start = expression_yylloc.end;
2188 type_yylloc.start = type_yylloc.end;
2189 if(inCompiler)
2190 printf("lexer error: invalid char 0x%X at line %d, col %d\n", (unsigned char)yytext[0], yylloc.start.line, yylloc.start.charPos);
2191 yyerror();
2192 }
2193 break;
2194 case 177:
2195 TESTTTT();
2196 (void)fwrite(yytext, yyleng, 1, yyout);
2197 break;
2198 case 178:
2199 {
2200 int yy_amount_of_matched_text = (int)(yy_cp - yytext) - 1;
2201
2202 *yy_cp = yy_hold_char;
2203 if((*yy_current_buffer).yy_buffer_status == 0)
2204 {
2205 yy_n_chars = (*yy_current_buffer).yy_n_chars;
2206 (*yy_current_buffer).yy_input_file = yyin;
2207 (*yy_current_buffer).yy_buffer_status = 1;
2208 }
2209 if(yy_c_buf_p <= &(*yy_current_buffer).yy_ch_buf[yy_n_chars])
2210 {
2211 yy_state_type yy_next_state;
2212
2213 yy_c_buf_p = yytext + yy_amount_of_matched_text;
2214 yy_current_state = yy_get_previous_state();
2215 yy_next_state = yy_try_NUL_trans(yy_current_state);
2216 yy_bp = yytext + 0;
2217 if(yy_next_state)
2218 {
2219 yy_cp = ++yy_c_buf_p;
2220 yy_current_state = yy_next_state;
2221 goto yy_match;
2222 }
2223 else
2224 {
2225 yy_cp = yy_c_buf_p;
2226 goto yy_find_action;
2227 }
2228 }
2229 else
2230 switch(yy_get_next_buffer())
2231 {
2232 case 1:
2233 {
2234 yy_did_buffer_switch_on_eof = 0;
2235 if(yywrap())
2236 {
2237 yy_c_buf_p = yytext + 0;
2238 yy_act = (178 + ((yy_start - 1) / 2) + 1);
2239 goto do_action;
2240 }
2241 else
2242 {
2243 if(!yy_did_buffer_switch_on_eof)
2244 yyrestart(yyin);
2245 }
2246 break;
2247 }
2248 case 0:
2249 yy_c_buf_p = yytext + yy_amount_of_matched_text;
2250 yy_current_state = yy_get_previous_state();
2251 yy_cp = yy_c_buf_p;
2252 yy_bp = yytext + 0;
2253 goto yy_match;
2254 case 2:
2255 yy_c_buf_p = &(*yy_current_buffer).yy_ch_buf[yy_n_chars];
2256 yy_current_state = yy_get_previous_state();
2257 yy_cp = yy_c_buf_p;
2258 yy_bp = yytext + 0;
2259 goto yy_find_action;
2260 }
2261 break;
2262 }
2263 default:
2264 yy_fatal_error("fatal flex scanner internal error--no action found");
2265 }
2266 }
2267 }
2268
2269 struct __ecereNameSpace__ecere__com__Property;
2270
2271 struct __ecereNameSpace__ecere__com__Property
2272 {
2273 struct __ecereNameSpace__ecere__com__Property * prev;
2274 struct __ecereNameSpace__ecere__com__Property * next;
2275 const char *  name;
2276 unsigned int isProperty;
2277 int memberAccess;
2278 int id;
2279 struct __ecereNameSpace__ecere__com__Class * _class;
2280 const char *  dataTypeString;
2281 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
2282 struct Type * dataType;
2283 void (*  Set)(void * , int);
2284 int (*  Get)(void * );
2285 unsigned int (*  IsSet)(void * );
2286 void *  data;
2287 void *  symbol;
2288 int vid;
2289 unsigned int conversion;
2290 unsigned int watcherOffset;
2291 const char *  category;
2292 unsigned int compiled;
2293 unsigned int selfWatchable;
2294 unsigned int isWatchable;
2295 } __attribute__ ((gcc_struct));
2296
2297 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
2298
2299 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);
2300
2301 extern void __ecereNameSpace__ecere__com__eInstance_Watch(void *  instance, struct __ecereNameSpace__ecere__com__Property * _property, void *  object, void (*  callback)(void * , void * ));
2302
2303 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
2304
2305 struct __ecereNameSpace__ecere__sys__BinaryTree;
2306
2307 struct __ecereNameSpace__ecere__sys__BinaryTree
2308 {
2309 struct __ecereNameSpace__ecere__sys__BTNode * root;
2310 int count;
2311 int (*  CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
2312 void (*  FreeKey)(void *  key);
2313 } __attribute__ ((gcc_struct));
2314
2315 struct __ecereNameSpace__ecere__com__Method;
2316
2317 struct __ecereNameSpace__ecere__com__Method
2318 {
2319 const char *  name;
2320 struct __ecereNameSpace__ecere__com__Method * parent;
2321 struct __ecereNameSpace__ecere__com__Method * left;
2322 struct __ecereNameSpace__ecere__com__Method * right;
2323 int depth;
2324 int (*  function)();
2325 int vid;
2326 int type;
2327 struct __ecereNameSpace__ecere__com__Class * _class;
2328 void *  symbol;
2329 const char *  dataTypeString;
2330 struct Type * dataType;
2331 int memberAccess;
2332 } __attribute__ ((gcc_struct));
2333
2334 struct __ecereNameSpace__ecere__com__DataMember;
2335
2336 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
2337 {
2338 union
2339 {
2340 struct
2341 {
2342 const char *  dataTypeString;
2343 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
2344 } __attribute__ ((gcc_struct)) __anon1;
2345 struct __ecereNameSpace__ecere__com__DataValue expression;
2346 struct
2347 {
2348 const char *  memberString;
2349 union
2350 {
2351 struct __ecereNameSpace__ecere__com__DataMember * member;
2352 struct __ecereNameSpace__ecere__com__Property * prop;
2353 struct __ecereNameSpace__ecere__com__Method * method;
2354 } __attribute__ ((gcc_struct)) __anon1;
2355 } __attribute__ ((gcc_struct)) __anon2;
2356 } __attribute__ ((gcc_struct)) __anon1;
2357 } __attribute__ ((gcc_struct));
2358
2359 struct __ecereNameSpace__ecere__com__DataMember
2360 {
2361 struct __ecereNameSpace__ecere__com__DataMember * prev;
2362 struct __ecereNameSpace__ecere__com__DataMember * next;
2363 const char *  name;
2364 unsigned int isProperty;
2365 int memberAccess;
2366 int id;
2367 struct __ecereNameSpace__ecere__com__Class * _class;
2368 const char *  dataTypeString;
2369 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
2370 struct Type * dataType;
2371 int type;
2372 int offset;
2373 int memberID;
2374 struct __ecereNameSpace__ecere__sys__OldList members;
2375 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
2376 int memberOffset;
2377 short structAlignment;
2378 short pointerAlignment;
2379 } __attribute__ ((gcc_struct));
2380
2381 extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_AddDataMember(struct __ecereNameSpace__ecere__com__Class * _class, const char *  name, const char *  type, unsigned int size, unsigned int alignment, int declMode);
2382
2383 struct __ecereNameSpace__ecere__com__Module;
2384
2385 extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, const char *  name, const char *  baseName, int size, int sizeClass, unsigned int (*  Constructor)(void * ), void (*  Destructor)(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess);
2386
2387 extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
2388
2389 extern struct __ecereNameSpace__ecere__com__GlobalFunction * __ecereNameSpace__ecere__com__eSystem_RegisterFunction(const char *  name, const char *  type, void *  func, struct __ecereNameSpace__ecere__com__Instance * module, int declMode);
2390
2391 struct __ecereNameSpace__ecere__com__NameSpace;
2392
2393 struct __ecereNameSpace__ecere__com__NameSpace
2394 {
2395 const char *  name;
2396 struct __ecereNameSpace__ecere__com__NameSpace *  btParent;
2397 struct __ecereNameSpace__ecere__com__NameSpace *  left;
2398 struct __ecereNameSpace__ecere__com__NameSpace *  right;
2399 int depth;
2400 struct __ecereNameSpace__ecere__com__NameSpace *  parent;
2401 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
2402 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
2403 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
2404 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
2405 } __attribute__ ((gcc_struct));
2406
2407 struct __ecereNameSpace__ecere__com__Class
2408 {
2409 struct __ecereNameSpace__ecere__com__Class * prev;
2410 struct __ecereNameSpace__ecere__com__Class * next;
2411 const char *  name;
2412 int offset;
2413 int structSize;
2414 void * *  _vTbl;
2415 int vTblSize;
2416 unsigned int (*  Constructor)(void * );
2417 void (*  Destructor)(void * );
2418 int offsetClass;
2419 int sizeClass;
2420 struct __ecereNameSpace__ecere__com__Class * base;
2421 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
2422 struct __ecereNameSpace__ecere__sys__BinaryTree members;
2423 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
2424 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
2425 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
2426 struct __ecereNameSpace__ecere__sys__OldList derivatives;
2427 int memberID;
2428 int startMemberID;
2429 int type;
2430 struct __ecereNameSpace__ecere__com__Instance * module;
2431 struct __ecereNameSpace__ecere__com__NameSpace *  nameSpace;
2432 const char *  dataTypeString;
2433 struct Type * dataType;
2434 int typeSize;
2435 int defaultAlignment;
2436 void (*  Initialize)();
2437 int memberOffset;
2438 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
2439 const char *  designerClass;
2440 unsigned int noExpansion;
2441 const char *  defaultProperty;
2442 unsigned int comRedefinition;
2443 int count;
2444 int isRemote;
2445 unsigned int internalDecl;
2446 void *  data;
2447 unsigned int computeSize;
2448 short structAlignment;
2449 short pointerAlignment;
2450 int destructionWatchOffset;
2451 unsigned int fixed;
2452 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
2453 int inheritanceAccess;
2454 const char *  fullName;
2455 void *  symbol;
2456 struct __ecereNameSpace__ecere__sys__OldList conversions;
2457 struct __ecereNameSpace__ecere__sys__OldList templateParams;
2458 struct __ecereNameSpace__ecere__com__ClassTemplateArgument *  templateArgs;
2459 struct __ecereNameSpace__ecere__com__Class * templateClass;
2460 struct __ecereNameSpace__ecere__sys__OldList templatized;
2461 int numParams;
2462 unsigned int isInstanceClass;
2463 unsigned int byValueSystemClass;
2464 } __attribute__ ((gcc_struct));
2465
2466 struct __ecereNameSpace__ecere__com__Application
2467 {
2468 int argc;
2469 const char * *  argv;
2470 int exitCode;
2471 unsigned int isGUIApp;
2472 struct __ecereNameSpace__ecere__sys__OldList allModules;
2473 char *  parsedCommand;
2474 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
2475 } __attribute__ ((gcc_struct));
2476
2477 static struct __ecereNameSpace__ecere__com__Class * __ecereClass_yy_buffer_state;
2478
2479 static struct __ecereNameSpace__ecere__com__Class * __ecereClass_LexerBackup;
2480
2481 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__File;
2482
2483 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
2484
2485 struct __ecereNameSpace__ecere__com__Module
2486 {
2487 struct __ecereNameSpace__ecere__com__Instance * application;
2488 struct __ecereNameSpace__ecere__sys__OldList classes;
2489 struct __ecereNameSpace__ecere__sys__OldList defines;
2490 struct __ecereNameSpace__ecere__sys__OldList functions;
2491 struct __ecereNameSpace__ecere__sys__OldList modules;
2492 struct __ecereNameSpace__ecere__com__Instance * prev;
2493 struct __ecereNameSpace__ecere__com__Instance * next;
2494 const char *  name;
2495 void *  library;
2496 void *  Unload;
2497 int importType;
2498 int origImportType;
2499 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
2500 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
2501 } __attribute__ ((gcc_struct));
2502
2503 struct __ecereNameSpace__ecere__com__Instance * pushLexer()
2504 {
2505 struct __ecereNameSpace__ecere__com__Instance * backup = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass_LexerBackup);
2506
2507 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yylloc = yylloc;
2508 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->type_yylloc = type_yylloc;
2509 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->expression_yylloc = expression_yylloc;
2510 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->fileInput = fileInput;
2511 memcpy(((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->include_stack, include_stack, sizeof (include_stack));
2512 memcpy(((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->fileStack, fileStack, sizeof (fileStack));
2513 memcpy(((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->sourceFileStack, sourceFileStack, sizeof (sourceFileStack));
2514 memcpy(((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->locStack, locStack, sizeof (locStack));
2515 memcpy(((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->declModeStack, declModeStack, sizeof (declModeStack));
2516 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->include_stack_ptr = include_stack_ptr;
2517 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->defaultDeclMode = defaultDeclMode;
2518 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->declMode = declMode;
2519 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->buffer = yy_current_buffer;
2520 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_n_chars = yy_n_chars;
2521 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yytext = yytext;
2522 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_c_buf_p = yy_c_buf_p;
2523 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yyin = yyin;
2524 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_hold_char = yy_hold_char;
2525 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yychar = yychar;
2526 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_init = yy_init;
2527 ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_start = yy_start;
2528 yy_init = 1;
2529 yy_current_buffer = 0;
2530 yylloc.start.charPos = yylloc.end.charPos = 1;
2531 yylloc.start.line = yylloc.end.line = 1;
2532 yylloc.start.pos = yylloc.end.pos = 0;
2533 yylloc.start.included = yylloc.end.included = 0;
2534 expression_yylloc.start.charPos = expression_yylloc.end.charPos = 1;
2535 expression_yylloc.start.line = expression_yylloc.end.line = 1;
2536 expression_yylloc.start.pos = expression_yylloc.end.pos = 0;
2537 expression_yylloc.start.included = expression_yylloc.end.included = 0;
2538 type_yylloc.start.charPos = type_yylloc.end.charPos = 1;
2539 type_yylloc.start.line = type_yylloc.end.line = 1;
2540 type_yylloc.start.pos = type_yylloc.end.pos = 0;
2541 type_yylloc.start.included = type_yylloc.end.included = 0;
2542 include_stack_ptr = 0;
2543 return backup;
2544 }
2545
2546 void popLexer(struct __ecereNameSpace__ecere__com__Instance * backup)
2547 {
2548 yylloc = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yylloc;
2549 type_yylloc = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->type_yylloc;
2550 expression_yylloc = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->expression_yylloc;
2551 fileInput = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->fileInput;
2552 memcpy(include_stack, ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->include_stack, sizeof (include_stack));
2553 memcpy(fileStack, ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->fileStack, sizeof (fileStack));
2554 memcpy(sourceFileStack, ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->sourceFileStack, sizeof (sourceFileStack));
2555 memcpy(locStack, ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->locStack, sizeof (locStack));
2556 memcpy(declModeStack, ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->declModeStack, sizeof (declModeStack));
2557 include_stack_ptr = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->include_stack_ptr;
2558 defaultDeclMode = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->defaultDeclMode;
2559 declMode = structDeclMode = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->declMode;
2560 yy_current_buffer = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->buffer;
2561 yy_n_chars = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_n_chars;
2562 yytext = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yytext;
2563 yy_c_buf_p = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_c_buf_p;
2564 yyin = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yyin;
2565 yy_hold_char = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_hold_char;
2566 yychar = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yychar;
2567 yy_init = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_init;
2568 yy_start = ((struct LexerBackup *)(((char *)backup + __ecereClass_LexerBackup->offset)))->yy_start;
2569 (__ecereNameSpace__ecere__com__eInstance_DecRef(backup), backup = 0);
2570 }
2571
2572 static int yy_get_next_buffer()
2573 {
2574 register char * dest = (*yy_current_buffer).yy_ch_buf;
2575 register char * source = yytext;
2576 register int number_to_move, i;
2577 int ret_val;
2578
2579 if(yy_c_buf_p > &(*yy_current_buffer).yy_ch_buf[yy_n_chars + 1])
2580 yy_fatal_error("fatal flex scanner internal error--end of buffer missed");
2581 if((*yy_current_buffer).yy_fill_buffer == 0)
2582 {
2583 if(yy_c_buf_p - yytext - 0 == 1)
2584 {
2585 return 1;
2586 }
2587 else
2588 {
2589 return 2;
2590 }
2591 }
2592 number_to_move = (int)(yy_c_buf_p - yytext) - 1;
2593 for(i = 0; i < number_to_move; ++i)
2594 *(dest++) = *(source++);
2595 if((*yy_current_buffer).yy_buffer_status == 2)
2596 (*yy_current_buffer).yy_n_chars = yy_n_chars = 0;
2597 else
2598 {
2599 int num_to_read = (*yy_current_buffer).yy_buf_size - number_to_move - 1;
2600
2601 while(num_to_read <= 0)
2602 {
2603 YY_BUFFER_STATE b = yy_current_buffer;
2604 int yy_c_buf_p_offset = (int)(yy_c_buf_p - (*b).yy_ch_buf);
2605
2606 if((*b).yy_is_our_buffer)
2607 {
2608 int new_size = (*b).yy_buf_size * 2;
2609
2610 if(new_size <= 0)
2611 (*b).yy_buf_size += (*b).yy_buf_size / 8;
2612 else
2613 (*b).yy_buf_size *= 2;
2614 (*b).yy_ch_buf = (char *)yy_flex_realloc((void *)(*b).yy_ch_buf, (*b).yy_buf_size + 2);
2615 }
2616 else
2617 (*b).yy_ch_buf = 0;
2618 if(!(*b).yy_ch_buf)
2619 yy_fatal_error("fatal error - scanner input buffer overflow");
2620 yy_c_buf_p = &(*b).yy_ch_buf[yy_c_buf_p_offset];
2621 num_to_read = (*yy_current_buffer).yy_buf_size - number_to_move - 1;
2622 }
2623 if(num_to_read > 8192)
2624 num_to_read = 8192;
2625 yy_n_chars = ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void *  buffer, unsigned int size, unsigned int count))__extension__ ({
2626 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2627
2628 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2629 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read])(fileInput, (&(*yy_current_buffer).yy_ch_buf[number_to_move]), 1, num_to_read);
2630 (*yy_current_buffer).yy_n_chars = yy_n_chars;
2631 }
2632 if(yy_n_chars == 0)
2633 {
2634 if(number_to_move == 0)
2635 {
2636 ret_val = 1;
2637 yyrestart(yyin);
2638 }
2639 else
2640 {
2641 ret_val = 2;
2642 (*yy_current_buffer).yy_buffer_status = 2;
2643 }
2644 }
2645 else
2646 ret_val = 0;
2647 yy_n_chars += number_to_move;
2648 (*yy_current_buffer).yy_ch_buf[yy_n_chars] = (char)0;
2649 (*yy_current_buffer).yy_ch_buf[yy_n_chars + 1] = (char)0;
2650 yytext = &(*yy_current_buffer).yy_ch_buf[0];
2651 return ret_val;
2652 }
2653
2654 void __ecereUnregisterModule_lexer(struct __ecereNameSpace__ecere__com__Instance * module)
2655 {
2656
2657 }
2658
2659 void __ecereRegisterModule_lexer(struct __ecereNameSpace__ecere__com__Instance * module)
2660 {
2661 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
2662
2663 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(1, "yy_buffer_state", 0, sizeof(struct yy_buffer_state), 0, (void *)0, (void *)0, module, 2, 1);
2664 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
2665 __ecereClass_yy_buffer_state = class;
2666 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_input_file", "void *", sizeof(void *), 0xF000F000, 1);
2667 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_ch_buf", "char *", sizeof(void *), 0xF000F000, 1);
2668 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_buf_pos", "char *", sizeof(void *), 0xF000F000, 1);
2669 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_buf_size", "uint", 4, 4, 1);
2670 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_n_chars", "int", 4, 4, 1);
2671 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_is_our_buffer", "int", 4, 4, 1);
2672 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_is_interactive", "int", 4, 4, 1);
2673 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_at_bol", "int", 4, 4, 1);
2674 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_fill_buffer", "int", 4, 4, 1);
2675 __ecereNameSpace__ecere__com__eClass_AddDataMember(class, "yy_buffer_status", "int", 4, 4, 1);
2676 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("SetEchoOn", "void SetEchoOn(bool b)", SetEchoOn, module, 1);
2677 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("TESTTTT", "void TESTTTT(void)", TESTTTT, module, 2);
2678 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("SetSomeSourceFileStack", "void SetSomeSourceFileStack(const char * fileName, int index)", SetSomeSourceFileStack, module, 1);
2679 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("yywrap", "int yywrap(void)", yywrap, module, 2);
2680 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("comment", "int comment(void)", comment, module, 2);
2681 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("commentCPP", "int commentCPP(void)", commentCPP, module, 2);
2682 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("preprocessor", "int preprocessor(void)", preprocessor, module, 2);
2683 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("resetScanner", "void resetScanner(void)", resetScanner, module, 1);
2684 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("resetScannerPos", "void resetScannerPos(CodePosition pos)", resetScannerPos, module, 2);
2685 class = __ecereNameSpace__ecere__com__eSystem_RegisterClass(0, "LexerBackup", 0, sizeof(struct LexerBackup), 0, (void *)0, (void *)0, module, 2, 1);
2686 if(((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application == ((struct __ecereNameSpace__ecere__com__Module *)(((char *)__thisModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application && class)
2687 __ecereClass_LexerBackup = class;
2688 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("pushLexer", "LexerBackup pushLexer(void)", pushLexer, module, 2);
2689 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("popLexer", "void popLexer(LexerBackup backup)", popLexer, module, 2);
2690 }
2691