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