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