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