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