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