compiler/bootstrap: Updated
[sdk] / compiler / bootstrap / libec / bootstrap / type.c
1 #if defined(__GNUC__)
2 typedef long long int64;
3 typedef unsigned long long uint64;
4 #ifndef _WIN32
5 #define __declspec(x)
6 #endif
7 #elif defined(__TINYC__)
8 #include <stdarg.h>
9 #define __builtin_va_list va_list
10 #define __builtin_va_start va_start
11 #define __builtin_va_end va_end
12 #ifdef _WIN32
13 #define strcasecmp stricmp
14 #define strncasecmp strnicmp
15 #define __declspec(x) __attribute__((x))
16 #else
17 #define __declspec(x)
18 #endif
19 typedef long long int64;
20 typedef unsigned long long uint64;
21 #else
22 typedef __int64 int64;
23 typedef unsigned __int64 uint64;
24 #endif
25 #ifdef __BIG_ENDIAN__
26 #define __ENDIAN_PAD(x) (8 - (x))
27 #else
28 #define __ENDIAN_PAD(x) 0
29 #endif
30 #include <stdint.h>
31 #include <sys/types.h>
32 extern void *  __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
33
34 extern void *  __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
35
36 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew(void *  memory, unsigned int size);
37
38 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew0(void *  memory, unsigned int size);
39
40 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
41
42 struct __ecereNameSpace__ecere__sys__BTNode;
43
44 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
45
46 struct __ecereNameSpace__ecere__sys__BinaryTree
47 {
48 struct __ecereNameSpace__ecere__sys__BTNode * root;
49 int count;
50 int (*  CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
51 void (*  FreeKey)(void *  key);
52 } __attribute__ ((gcc_struct));
53
54 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
55
56 struct __ecereNameSpace__ecere__sys__OldList
57 {
58 void *  first;
59 void *  last;
60 int count;
61 unsigned int offset;
62 unsigned int circ;
63 } __attribute__ ((gcc_struct));
64
65 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
66
67 struct __ecereNameSpace__ecere__com__Method
68 {
69 char *  name;
70 struct __ecereNameSpace__ecere__com__Method * parent;
71 struct __ecereNameSpace__ecere__com__Method * left;
72 struct __ecereNameSpace__ecere__com__Method * right;
73 int depth;
74 int (*  function)();
75 int vid;
76 int type;
77 struct __ecereNameSpace__ecere__com__Class * _class;
78 void *  symbol;
79 char *  dataTypeString;
80 struct Type * dataType;
81 int memberAccess;
82 } __attribute__ ((gcc_struct));
83
84 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
85
86 struct __ecereNameSpace__ecere__com__Property
87 {
88 struct __ecereNameSpace__ecere__com__Property * prev;
89 struct __ecereNameSpace__ecere__com__Property * next;
90 char *  name;
91 unsigned int isProperty;
92 int memberAccess;
93 int id;
94 struct __ecereNameSpace__ecere__com__Class * _class;
95 char *  dataTypeString;
96 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
97 struct Type * dataType;
98 void (*  Set)(void * , int);
99 int (*  Get)(void * );
100 unsigned int (*  IsSet)(void * );
101 void *  data;
102 void *  symbol;
103 int vid;
104 unsigned int conversion;
105 unsigned int watcherOffset;
106 char *  category;
107 unsigned int compiled;
108 unsigned int selfWatchable;
109 unsigned int isWatchable;
110 } __attribute__ ((gcc_struct));
111
112 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_CodePosition;
113
114 struct CodePosition
115 {
116 int line;
117 int charPos;
118 int pos;
119 unsigned int included;
120 } __attribute__ ((gcc_struct));
121
122 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Location;
123
124 struct Location
125 {
126 struct CodePosition start;
127 struct CodePosition end;
128 } __attribute__ ((gcc_struct));
129
130 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Attrib;
131
132 struct Attrib
133 {
134 struct Location loc;
135 int type;
136 struct __ecereNameSpace__ecere__sys__OldList *  attribs;
137 } __attribute__ ((gcc_struct));
138
139 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ExtDecl;
140
141 struct ExtDecl;
142
143 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDefinition;
144
145 struct ClassDefinition;
146
147 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
148
149 struct Context
150 {
151 struct Context * parent;
152 struct __ecereNameSpace__ecere__sys__BinaryTree types;
153 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
154 struct __ecereNameSpace__ecere__sys__BinaryTree symbols;
155 struct __ecereNameSpace__ecere__sys__BinaryTree structSymbols;
156 int nextID;
157 int simpleID;
158 struct __ecereNameSpace__ecere__sys__BinaryTree templateTypes;
159 struct ClassDefinition * classDef;
160 unsigned int templateTypesOnly;
161 unsigned int hasNameSpace;
162 } __attribute__ ((gcc_struct));
163
164 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
165
166 struct Instantiation
167 {
168 struct Instantiation * prev;
169 struct Instantiation * next;
170 struct Location loc;
171 struct Specifier * _class;
172 struct Expression * exp;
173 struct __ecereNameSpace__ecere__sys__OldList *  members;
174 struct Symbol * symbol;
175 unsigned int fullSet;
176 unsigned int isConstant;
177 unsigned char *  data;
178 struct Location nameLoc;
179 struct Location insideLoc;
180 unsigned int built;
181 } __attribute__ ((gcc_struct));
182
183 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declaration;
184
185 struct Declaration
186 {
187 struct Declaration * prev;
188 struct Declaration * next;
189 struct Location loc;
190 int type;
191 union
192 {
193 struct
194 {
195 struct __ecereNameSpace__ecere__sys__OldList *  specifiers;
196 struct __ecereNameSpace__ecere__sys__OldList *  declarators;
197 } __attribute__ ((gcc_struct));
198 struct Instantiation * inst;
199 struct
200 {
201 struct Identifier * id;
202 struct Expression * exp;
203 } __attribute__ ((gcc_struct));
204 } __attribute__ ((gcc_struct));
205 struct Specifier * extStorage;
206 struct Symbol * symbol;
207 int declMode;
208 } __attribute__ ((gcc_struct));
209
210 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Statement;
211
212 struct Statement
213 {
214 struct Statement * prev;
215 struct Statement * next;
216 struct Location loc;
217 int type;
218 union
219 {
220 struct __ecereNameSpace__ecere__sys__OldList *  expressions;
221 struct
222 {
223 struct Identifier * id;
224 struct Statement * stmt;
225 } __attribute__ ((gcc_struct)) labeled;
226 struct
227 {
228 struct Expression * exp;
229 struct Statement * stmt;
230 } __attribute__ ((gcc_struct)) caseStmt;
231 struct
232 {
233 struct __ecereNameSpace__ecere__sys__OldList * declarations;
234 struct __ecereNameSpace__ecere__sys__OldList * statements;
235 struct Context * context;
236 unsigned int isSwitch;
237 } __attribute__ ((gcc_struct)) compound;
238 struct
239 {
240 struct __ecereNameSpace__ecere__sys__OldList * exp;
241 struct Statement * stmt;
242 struct Statement * elseStmt;
243 } __attribute__ ((gcc_struct)) ifStmt;
244 struct
245 {
246 struct __ecereNameSpace__ecere__sys__OldList * exp;
247 struct Statement * stmt;
248 } __attribute__ ((gcc_struct)) switchStmt;
249 struct
250 {
251 struct __ecereNameSpace__ecere__sys__OldList * exp;
252 struct Statement * stmt;
253 } __attribute__ ((gcc_struct)) whileStmt;
254 struct
255 {
256 struct __ecereNameSpace__ecere__sys__OldList * exp;
257 struct Statement * stmt;
258 } __attribute__ ((gcc_struct)) doWhile;
259 struct
260 {
261 struct Statement * init;
262 struct Statement * check;
263 struct __ecereNameSpace__ecere__sys__OldList * increment;
264 struct Statement * stmt;
265 } __attribute__ ((gcc_struct)) forStmt;
266 struct
267 {
268 struct Identifier * id;
269 } __attribute__ ((gcc_struct)) gotoStmt;
270 struct
271 {
272 struct Specifier * spec;
273 char * statements;
274 struct __ecereNameSpace__ecere__sys__OldList * inputFields;
275 struct __ecereNameSpace__ecere__sys__OldList * outputFields;
276 struct __ecereNameSpace__ecere__sys__OldList * clobberedFields;
277 } __attribute__ ((gcc_struct)) asmStmt;
278 struct
279 {
280 struct Expression * watcher;
281 struct Expression * object;
282 struct __ecereNameSpace__ecere__sys__OldList * watches;
283 } __attribute__ ((gcc_struct)) _watch;
284 struct
285 {
286 struct Identifier * id;
287 struct __ecereNameSpace__ecere__sys__OldList * exp;
288 struct __ecereNameSpace__ecere__sys__OldList * filter;
289 struct Statement * stmt;
290 } __attribute__ ((gcc_struct)) forEachStmt;
291 struct Declaration * decl;
292 } __attribute__ ((gcc_struct));
293 } __attribute__ ((gcc_struct));
294
295 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
296
297 struct TypeName
298 {
299 struct TypeName * prev;
300 struct TypeName * next;
301 struct Location loc;
302 struct __ecereNameSpace__ecere__sys__OldList *  qualifiers;
303 struct Declarator * declarator;
304 int classObjectType;
305 struct Expression * bitCount;
306 } __attribute__ ((gcc_struct));
307
308 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Initializer;
309
310 struct Initializer
311 {
312 struct Initializer * prev;
313 struct Initializer * next;
314 struct Location loc;
315 int type;
316 union
317 {
318 struct Expression * exp;
319 struct __ecereNameSpace__ecere__sys__OldList *  list;
320 } __attribute__ ((gcc_struct));
321 unsigned int isConstant;
322 } __attribute__ ((gcc_struct));
323
324 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
325
326 struct __ecereNameSpace__ecere__com__DataValue
327 {
328 union
329 {
330 char c;
331 unsigned char uc;
332 short s;
333 unsigned short us;
334 int i;
335 unsigned int ui;
336 void *  p;
337 float f;
338 double d;
339 long long i64;
340 uint64 ui64;
341 } __attribute__ ((gcc_struct));
342 } __attribute__ ((gcc_struct));
343
344 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Expression;
345
346 struct Expression
347 {
348 struct Expression * prev;
349 struct Expression * next;
350 struct Location loc;
351 int type;
352 union
353 {
354 struct
355 {
356 char *  constant;
357 struct Identifier * identifier;
358 } __attribute__ ((gcc_struct));
359 struct Statement * compound;
360 struct Instantiation * instance;
361 char *  string;
362 struct __ecereNameSpace__ecere__sys__OldList *  list;
363 struct
364 {
365 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
366 struct Declarator * decl;
367 } __attribute__ ((gcc_struct)) _classExp;
368 struct
369 {
370 struct Identifier * id;
371 } __attribute__ ((gcc_struct)) classData;
372 struct
373 {
374 struct Expression * exp;
375 struct __ecereNameSpace__ecere__sys__OldList * arguments;
376 struct Location argLoc;
377 } __attribute__ ((gcc_struct)) call;
378 struct
379 {
380 struct Expression * exp;
381 struct __ecereNameSpace__ecere__sys__OldList * index;
382 } __attribute__ ((gcc_struct)) index;
383 struct
384 {
385 struct Expression * exp;
386 struct Identifier * member;
387 int memberType;
388 unsigned int thisPtr;
389 } __attribute__ ((gcc_struct)) member;
390 struct
391 {
392 int op;
393 struct Expression * exp1;
394 struct Expression * exp2;
395 } __attribute__ ((gcc_struct)) op;
396 struct TypeName * typeName;
397 struct Specifier * _class;
398 struct
399 {
400 struct TypeName * typeName;
401 struct Expression * exp;
402 } __attribute__ ((gcc_struct)) cast;
403 struct
404 {
405 struct Expression * cond;
406 struct __ecereNameSpace__ecere__sys__OldList * exp;
407 struct Expression * elseExp;
408 } __attribute__ ((gcc_struct)) cond;
409 struct
410 {
411 struct TypeName * typeName;
412 struct Expression * size;
413 } __attribute__ ((gcc_struct)) _new;
414 struct
415 {
416 struct TypeName * typeName;
417 struct Expression * size;
418 struct Expression * exp;
419 } __attribute__ ((gcc_struct)) _renew;
420 struct
421 {
422 char * table;
423 struct Identifier * id;
424 } __attribute__ ((gcc_struct)) db;
425 struct
426 {
427 struct Expression * ds;
428 struct Expression * name;
429 } __attribute__ ((gcc_struct)) dbopen;
430 struct
431 {
432 struct TypeName * typeName;
433 struct Initializer * initializer;
434 } __attribute__ ((gcc_struct)) initializer;
435 struct
436 {
437 struct Expression * exp;
438 struct TypeName * typeName;
439 } __attribute__ ((gcc_struct)) vaArg;
440 } __attribute__ ((gcc_struct));
441 unsigned int debugValue;
442 struct __ecereNameSpace__ecere__com__DataValue val;
443 uint64 address;
444 unsigned int hasAddress;
445 struct Type * expType;
446 struct Type * destType;
447 unsigned int usage;
448 int tempCount;
449 unsigned int byReference;
450 unsigned int isConstant;
451 unsigned int addedThis;
452 unsigned int needCast;
453 unsigned int thisPtr;
454 } __attribute__ ((gcc_struct));
455
456 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateDatatype;
457
458 struct TemplateDatatype
459 {
460 struct __ecereNameSpace__ecere__sys__OldList *  specifiers;
461 struct Declarator * decl;
462 } __attribute__ ((gcc_struct));
463
464 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateArgument;
465
466 struct TemplateArgument
467 {
468 struct TemplateArgument * prev;
469 struct TemplateArgument * next;
470 struct Location loc;
471 struct Identifier * name;
472 int type;
473 union
474 {
475 struct Expression * expression;
476 struct Identifier * identifier;
477 struct TemplateDatatype * templateDatatype;
478 } __attribute__ ((gcc_struct));
479 } __attribute__ ((gcc_struct));
480
481 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateParameter;
482
483 struct TemplateParameter;
484
485 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Specifier;
486
487 struct Specifier
488 {
489 struct Specifier * prev;
490 struct Specifier * next;
491 struct Location loc;
492 int type;
493 union
494 {
495 int specifier;
496 struct
497 {
498 struct ExtDecl * extDecl;
499 char *  name;
500 struct Symbol * symbol;
501 struct __ecereNameSpace__ecere__sys__OldList *  templateArgs;
502 } __attribute__ ((gcc_struct));
503 struct
504 {
505 struct Identifier * id;
506 struct __ecereNameSpace__ecere__sys__OldList *  list;
507 struct __ecereNameSpace__ecere__sys__OldList *  baseSpecs;
508 struct __ecereNameSpace__ecere__sys__OldList *  definitions;
509 unsigned int addNameSpace;
510 struct Context * ctx;
511 struct ExtDecl * extDeclStruct;
512 } __attribute__ ((gcc_struct));
513 struct Expression * expression;
514 struct Specifier * _class;
515 struct TemplateParameter * templateParameter;
516 } __attribute__ ((gcc_struct));
517 } __attribute__ ((gcc_struct));
518
519 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Identifier;
520
521 struct Identifier
522 {
523 struct Identifier * prev;
524 struct Identifier * next;
525 struct Location loc;
526 struct Symbol * classSym;
527 struct Specifier * _class;
528 char *  string;
529 struct Identifier * badID;
530 } __attribute__ ((gcc_struct));
531
532 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Pointer;
533
534 struct Pointer;
535
536 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declarator;
537
538 struct Declarator
539 {
540 struct Declarator * prev;
541 struct Declarator * next;
542 struct Location loc;
543 int type;
544 struct Symbol * symbol;
545 struct Declarator * declarator;
546 union
547 {
548 struct Identifier * identifier;
549 struct
550 {
551 struct Expression * exp;
552 struct Expression * posExp;
553 struct Attrib * attrib;
554 } __attribute__ ((gcc_struct)) structDecl;
555 struct
556 {
557 struct Expression * exp;
558 struct Specifier * enumClass;
559 } __attribute__ ((gcc_struct)) array;
560 struct
561 {
562 struct __ecereNameSpace__ecere__sys__OldList * parameters;
563 } __attribute__ ((gcc_struct)) function;
564 struct
565 {
566 struct Pointer * pointer;
567 } __attribute__ ((gcc_struct)) pointer;
568 struct
569 {
570 struct ExtDecl * extended;
571 } __attribute__ ((gcc_struct)) extended;
572 } __attribute__ ((gcc_struct));
573 } __attribute__ ((gcc_struct));
574
575 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionDefinition;
576
577 struct FunctionDefinition;
578
579 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableDef;
580
581 struct DBTableDef;
582
583 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_External;
584
585 struct External;
586
587 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ModuleImport;
588
589 struct ModuleImport;
590
591 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassImport;
592
593 struct ClassImport;
594
595 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;
596
597 struct Symbol;
598
599 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
600
601 struct Type;
602
603 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
604
605 struct __ecereNameSpace__ecere__com__Class
606 {
607 struct __ecereNameSpace__ecere__com__Class * prev;
608 struct __ecereNameSpace__ecere__com__Class * next;
609 char *  name;
610 int offset;
611 int structSize;
612 int (* *  _vTbl)();
613 int vTblSize;
614 int (*  Constructor)(struct __ecereNameSpace__ecere__com__Instance *);
615 void (*  Destructor)(struct __ecereNameSpace__ecere__com__Instance *);
616 int offsetClass;
617 int sizeClass;
618 struct __ecereNameSpace__ecere__com__Class * base;
619 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
620 struct __ecereNameSpace__ecere__sys__BinaryTree members;
621 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
622 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
623 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
624 struct __ecereNameSpace__ecere__sys__OldList derivatives;
625 int memberID;
626 int startMemberID;
627 int type;
628 struct __ecereNameSpace__ecere__com__Instance * module;
629 struct __ecereNameSpace__ecere__com__NameSpace *  nameSpace;
630 char *  dataTypeString;
631 struct Type * dataType;
632 int typeSize;
633 int defaultAlignment;
634 void (*  Initialize)();
635 int memberOffset;
636 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
637 char *  designerClass;
638 unsigned int noExpansion;
639 char *  defaultProperty;
640 unsigned int comRedefinition;
641 int count;
642 unsigned int isRemote;
643 unsigned int internalDecl;
644 void *  data;
645 unsigned int computeSize;
646 int structAlignment;
647 int destructionWatchOffset;
648 unsigned int fixed;
649 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
650 int inheritanceAccess;
651 char *  fullName;
652 void *  symbol;
653 struct __ecereNameSpace__ecere__sys__OldList conversions;
654 struct __ecereNameSpace__ecere__sys__OldList templateParams;
655 struct __ecereNameSpace__ecere__com__ClassTemplateArgument *  templateArgs;
656 struct __ecereNameSpace__ecere__com__Class * templateClass;
657 struct __ecereNameSpace__ecere__sys__OldList templatized;
658 int numParams;
659 unsigned int isInstanceClass;
660 } __attribute__ ((gcc_struct));
661
662 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, char *  name);
663
664 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
665
666 struct __ecereNameSpace__ecere__com__Instance
667 {
668 int (* *  _vTbl)();
669 struct __ecereNameSpace__ecere__com__Class * _class;
670 int _refCount;
671 } __attribute__ ((gcc_struct));
672
673 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
674
675 struct __ecereNameSpace__ecere__com__DataMember
676 {
677 struct __ecereNameSpace__ecere__com__DataMember * prev;
678 struct __ecereNameSpace__ecere__com__DataMember * next;
679 char *  name;
680 unsigned int isProperty;
681 int memberAccess;
682 int id;
683 struct __ecereNameSpace__ecere__com__Class * _class;
684 char *  dataTypeString;
685 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
686 struct Type * dataType;
687 int type;
688 int offset;
689 int memberID;
690 struct __ecereNameSpace__ecere__sys__OldList members;
691 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
692 int memberOffset;
693 int structAlignment;
694 } __attribute__ ((gcc_struct));
695
696 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
697
698 struct __ecereNameSpace__ecere__com__SerialBuffer
699 {
700 unsigned char *  _buffer;
701 unsigned int count;
702 unsigned int _size;
703 unsigned int pos;
704 } __attribute__ ((gcc_struct));
705
706 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
707
708 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
709 {
710 union
711 {
712 struct
713 {
714 char *  dataTypeString;
715 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
716 } __attribute__ ((gcc_struct));
717 struct __ecereNameSpace__ecere__com__DataValue expression;
718 struct
719 {
720 char *  memberString;
721 union
722 {
723 struct __ecereNameSpace__ecere__com__DataMember * member;
724 struct __ecereNameSpace__ecere__com__Property * prop;
725 struct __ecereNameSpace__ecere__com__Method * method;
726 } __attribute__ ((gcc_struct));
727 } __attribute__ ((gcc_struct));
728 } __attribute__ ((gcc_struct));
729 } __attribute__ ((gcc_struct));
730
731 enum yytokentype
732 {
733 IDENTIFIER = 258, CONSTANT = 259, STRING_LITERAL = 260, SIZEOF = 261, PTR_OP = 262, INC_OP = 263, DEC_OP = 264, LEFT_OP = 265, RIGHT_OP = 266, LE_OP = 267, GE_OP = 268, EQ_OP = 269, NE_OP = 270, AND_OP = 271, OR_OP = 272, MUL_ASSIGN = 273, DIV_ASSIGN = 274, MOD_ASSIGN = 275, ADD_ASSIGN = 276, SUB_ASSIGN = 277, LEFT_ASSIGN = 278, RIGHT_ASSIGN = 279, AND_ASSIGN = 280, XOR_ASSIGN = 281, OR_ASSIGN = 282, TYPE_NAME = 283, TYPEDEF = 284, EXTERN = 285, STATIC = 286, AUTO = 287, REGISTER = 288, CHAR = 289, SHORT = 290, INT = 291, UINT = 292, INT64 = 293, LONG = 294, SIGNED = 295, UNSIGNED = 296, FLOAT = 297, DOUBLE = 298, CONST = 299, VOLATILE = 300, VOID = 301, VALIST = 302, STRUCT = 303, UNION = 304, ENUM = 305, ELLIPSIS = 306, CASE = 307, DEFAULT = 308, IF = 309, SWITCH = 310, WHILE = 311, DO = 312, FOR = 313, GOTO = 314, CONTINUE = 315, BREAK = 316, RETURN = 317, IFX = 318, ELSE = 319, CLASS = 320, THISCLASS = 321, CLASS_NAME = 322, PROPERTY = 323, SETPROP = 324, GETPROP = 325, NEWOP = 326, RENEW = 327, DELETE = 328, EXT_DECL = 329, EXT_STORAGE = 330, IMPORT = 331, DEFINE = 332, VIRTUAL = 333, ATTRIB = 334, PUBLIC = 335, PRIVATE = 336, TYPED_OBJECT = 337, ANY_OBJECT = 338, _INCREF = 339, EXTENSION = 340, ASM = 341, TYPEOF = 342, WATCH = 343, STOPWATCHING = 344, FIREWATCHERS = 345, WATCHABLE = 346, CLASS_DESIGNER = 347, CLASS_NO_EXPANSION = 348, CLASS_FIXED = 349, ISPROPSET = 350, CLASS_DEFAULT_PROPERTY = 351, PROPERTY_CATEGORY = 352, CLASS_DATA = 353, CLASS_PROPERTY = 354, SUBCLASS = 355, NAMESPACE = 356, NEW0OP = 357, RENEW0 = 358, VAARG = 359, DBTABLE = 360, DBFIELD = 361, DBINDEX = 362, DATABASE_OPEN = 363, ALIGNOF = 364, ATTRIB_DEP = 365, __ATTRIB = 366
734 };
735
736 typedef union YYSTYPE
737 {
738 int specifierType;
739 int i;
740 int declMode;
741 struct Identifier * id;
742 struct Expression * exp;
743 struct Specifier * specifier;
744 struct __ecereNameSpace__ecere__sys__OldList * list;
745 struct Enumerator * enumerator;
746 struct Declarator * declarator;
747 struct Pointer * pointer;
748 struct Initializer * initializer;
749 struct InitDeclarator * initDeclarator;
750 struct TypeName * typeName;
751 struct Declaration * declaration;
752 struct Statement * stmt;
753 struct FunctionDefinition * function;
754 struct External * external;
755 struct Context * context;
756 struct AsmField * asmField;
757 struct Attrib * attrib;
758 struct ExtDecl * extDecl;
759 struct Attribute * attribute;
760 struct Instantiation * instance;
761 struct MembersInit * membersInit;
762 struct MemberInit * memberInit;
763 struct ClassFunction * classFunction;
764 struct ClassDefinition * _class;
765 struct ClassDef * classDef;
766 struct PropertyDef * prop;
767 char * string;
768 struct Symbol * symbol;
769 struct PropertyWatch * propertyWatch;
770 struct TemplateParameter * templateParameter;
771 struct TemplateArgument * templateArgument;
772 struct TemplateDatatype * templateDatatype;
773 struct DBTableEntry * dbtableEntry;
774 struct DBIndexItem * dbindexItem;
775 struct DBTableDef * dbtableDef;
776 } __attribute__ ((gcc_struct)) YYSTYPE;
777
778 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Enumerator;
779
780 struct Enumerator;
781
782 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_InitDeclarator;
783
784 struct InitDeclarator
785 {
786 struct InitDeclarator * prev;
787 struct InitDeclarator * next;
788 struct Location loc;
789 struct Declarator * declarator;
790 struct Initializer * initializer;
791 } __attribute__ ((gcc_struct));
792
793 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_AsmField;
794
795 struct AsmField;
796
797 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Attribute;
798
799 struct Attribute
800 {
801 struct Attribute * prev;
802 struct Attribute * next;
803 struct Location loc;
804 char * attr;
805 struct Expression * exp;
806 } __attribute__ ((gcc_struct));
807
808 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassFunction;
809
810 struct ClassFunction
811 {
812 struct ClassFunction * prev;
813 struct ClassFunction * next;
814 struct Location loc;
815 struct __ecereNameSpace__ecere__sys__OldList *  specifiers;
816 struct Declarator * declarator;
817 struct __ecereNameSpace__ecere__sys__OldList *  declarations;
818 struct Statement * body;
819 struct __ecereNameSpace__ecere__com__Class * _class;
820 struct __ecereNameSpace__ecere__sys__OldList attached;
821 int declMode;
822 struct Type * type;
823 struct Symbol * propSet;
824 unsigned int isVirtual;
825 unsigned int isConstructor;
826 unsigned int isDestructor;
827 unsigned int dontMangle;
828 int id;
829 int idCode;
830 } __attribute__ ((gcc_struct));
831
832 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_MembersInit;
833
834 struct MembersInit
835 {
836 struct MembersInit * prev;
837 struct MembersInit * next;
838 struct Location loc;
839 int type;
840 union
841 {
842 struct __ecereNameSpace__ecere__sys__OldList *  dataMembers;
843 struct ClassFunction * function;
844 } __attribute__ ((gcc_struct));
845 } __attribute__ ((gcc_struct));
846
847 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_MemberInit;
848
849 struct MemberInit
850 {
851 struct MemberInit * prev;
852 struct MemberInit * next;
853 struct Location loc;
854 struct Location realLoc;
855 struct __ecereNameSpace__ecere__sys__OldList *  identifiers;
856 struct Initializer * initializer;
857 unsigned int used;
858 unsigned int variable;
859 unsigned int takeOutExp;
860 } __attribute__ ((gcc_struct));
861
862 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyDef;
863
864 struct PropertyDef
865 {
866 struct PropertyDef * prev;
867 struct PropertyDef * next;
868 struct Location loc;
869 struct __ecereNameSpace__ecere__sys__OldList *  specifiers;
870 struct Declarator * declarator;
871 struct Identifier * id;
872 struct Statement * getStmt;
873 struct Statement * setStmt;
874 struct Statement * issetStmt;
875 struct Symbol * symbol;
876 unsigned int conversion;
877 unsigned int isWatchable;
878 struct Expression * category;
879 } __attribute__ ((gcc_struct));
880
881 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
882
883 struct PropertyWatch;
884
885 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDef;
886
887 struct ClassDef
888 {
889 struct ClassDef * prev;
890 struct ClassDef * next;
891 struct Location loc;
892 int type;
893 union
894 {
895 struct Declaration * decl;
896 struct ClassFunction * function;
897 struct __ecereNameSpace__ecere__sys__OldList *  defProperties;
898 struct PropertyDef * propertyDef;
899 struct PropertyWatch * propertyWatch;
900 char *  designer;
901 struct Identifier * defaultProperty;
902 struct
903 {
904 struct Identifier * id;
905 struct Initializer * initializer;
906 } __attribute__ ((gcc_struct));
907 } __attribute__ ((gcc_struct));
908 int memberAccess;
909 void *  object;
910 } __attribute__ ((gcc_struct));
911
912 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableEntry;
913
914 struct DBTableEntry;
915
916 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBIndexItem;
917
918 struct DBIndexItem;
919
920 extern YYSTYPE yylval;
921
922 extern struct Location yylloc;
923
924 struct TypeName * parsedType;
925
926 extern unsigned int parseTypeError;
927
928 extern struct __ecereNameSpace__ecere__com__Instance * fileInput;
929
930 extern char * yytext;
931
932 int yylex();
933
934 int yyerror();
935
936 typedef unsigned char yytype_uint8;
937
938 typedef signed char yytype_int8;
939
940 typedef unsigned short int yytype_uint16;
941
942 typedef short int yytype_int16;
943
944 void * malloc(size_t size);
945
946 void free(void *);
947
948 union yyalloc
949 {
950 yytype_int16 yyss_alloc;
951 YYSTYPE yyvs_alloc;
952 struct Location yyls_alloc;
953 } __attribute__ ((gcc_struct));
954
955 static const yytype_uint8 yytranslate[] = 
956 {
957 (unsigned char)0, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)126, (unsigned char)2, (unsigned char)2, (unsigned char)118, (unsigned char)128, (unsigned char)123, (unsigned char)2, (unsigned char)115, (unsigned char)116, (unsigned char)112, (unsigned char)124, (unsigned char)122, (unsigned char)125, (unsigned char)119, (unsigned char)127, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)132, (unsigned char)134, (unsigned char)113, (unsigned char)133, (unsigned char)114, (unsigned char)131, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)120, (unsigned char)2, (unsigned char)121, (unsigned char)129, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)135, (unsigned char)130, (unsigned char)136, (unsigned char)117, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)3, (unsigned char)4, (unsigned char)5, (unsigned char)6, (unsigned char)7, (unsigned char)8, (unsigned char)9, (unsigned char)10, (unsigned char)11, (unsigned char)12, (unsigned char)13, (unsigned char)14, (unsigned char)15, (unsigned char)16, (unsigned char)17, (unsigned char)18, (unsigned char)19, (unsigned char)20, (unsigned char)21, (unsigned char)22, (unsigned char)23, (unsigned char)24, (unsigned char)25, (unsigned char)26, (unsigned char)27, (unsigned char)28, (unsigned char)29, (unsigned char)30, (unsigned char)31, (unsigned char)32, (unsigned char)33, (unsigned char)34, (unsigned char)35, (unsigned char)36, (unsigned char)37, (unsigned char)38, (unsigned char)39, (unsigned char)40, (unsigned char)41, (unsigned char)42, (unsigned char)43, (unsigned char)44, (unsigned char)45, (unsigned char)46, (unsigned char)47, (unsigned char)48, (unsigned char)49, (unsigned char)50, (unsigned char)51, (unsigned char)52, (unsigned char)53, (unsigned char)54, (unsigned char)55, (unsigned char)56, (unsigned char)57, (unsigned char)58, (unsigned char)59, (unsigned char)60, (unsigned char)61, (unsigned char)62, (unsigned char)63, (unsigned char)64, (unsigned char)65, (unsigned char)66, (unsigned char)67, (unsigned char)68, (unsigned char)69, (unsigned char)70, (unsigned char)71, (unsigned char)72, (unsigned char)73, (unsigned char)74, (unsigned char)75, (unsigned char)76, (unsigned char)77, (unsigned char)78, (unsigned char)79, (unsigned char)80, (unsigned char)81, (unsigned char)82, (unsigned char)83, (unsigned char)84, (unsigned char)85, (unsigned char)86, (unsigned char)87, (unsigned char)88, (unsigned char)89, (unsigned char)90, (unsigned char)91, (unsigned char)92, (unsigned char)93, (unsigned char)94, (unsigned char)95, (unsigned char)96, (unsigned char)97, (unsigned char)98, (unsigned char)99, (unsigned char)100, (unsigned char)101, (unsigned char)102, (unsigned char)103, (unsigned char)104, (unsigned char)105, (unsigned char)106, (unsigned char)107, (unsigned char)108, (unsigned char)109, (unsigned char)110, (unsigned char)111
958 };
959
960 static const yytype_uint16 yyprhs[] = 
961 {
962 (unsigned short)0, (unsigned short)0, (unsigned short)3, (unsigned short)6, (unsigned short)9, (unsigned short)12, (unsigned short)14, (unsigned short)17, (unsigned short)19, (unsigned short)21, (unsigned short)26, (unsigned short)31, (unsigned short)34, (unsigned short)36, (unsigned short)40, (unsigned short)45, (unsigned short)49, (unsigned short)52, (unsigned short)54, (unsigned short)56, (unsigned short)60, (unsigned short)62, (unsigned short)64, (unsigned short)66, (unsigned short)68, (unsigned short)71, (unsigned short)76, (unsigned short)79, (unsigned short)86, (unsigned short)92, (unsigned short)99, (unsigned short)105, (unsigned short)113, (unsigned short)120, (unsigned short)128, (unsigned short)135, (unsigned short)137, (unsigned short)139, (unsigned short)144, (unsigned short)148, (unsigned short)153, (unsigned short)157, (unsigned short)161, (unsigned short)164, (unsigned short)167, (unsigned short)169, (unsigned short)171, (unsigned short)176, (unsigned short)180, (unsigned short)185, (unsigned short)189, (unsigned short)193, (unsigned short)196, (unsigned short)199, (unsigned short)201, (unsigned short)203, (unsigned short)207, (unsigned short)211, (unsigned short)214, (unsigned short)217, (unsigned short)220, (unsigned short)225, (unsigned short)228, (unsigned short)233, (unsigned short)238, (unsigned short)241, (unsigned short)246, (unsigned short)248, (unsigned short)250, (unsigned short)252, (unsigned short)254, (unsigned short)256, (unsigned short)258, (unsigned short)260, (unsigned short)262, (unsigned short)264, (unsigned short)266, (unsigned short)268, (unsigned short)270, (unsigned short)275, (unsigned short)277, (unsigned short)281, (unsigned short)285, (unsigned short)289, (unsigned short)291, (unsigned short)295, (unsigned short)299, (unsigned short)301, (unsigned short)305, (unsigned short)309, (unsigned short)312, (unsigned short)314, (unsigned short)317, (unsigned short)321, (unsigned short)325, (unsigned short)329, (unsigned short)331, (unsigned short)335, (unsigned short)339, (unsigned short)341, (unsigned short)345, (unsigned short)347, (unsigned short)351, (unsigned short)353, (unsigned short)357, (unsigned short)359, (unsigned short)363, (unsigned short)365, (unsigned short)369, (unsigned short)371, (unsigned short)377, (unsigned short)379, (unsigned short)383, (unsigned short)387, (unsigned short)389, (unsigned short)391, (unsigned short)393, (unsigned short)395, (unsigned short)397, (unsigned short)399, (unsigned short)401, (unsigned short)403, (unsigned short)405, (unsigned short)407, (unsigned short)409, (unsigned short)411, (unsigned short)415, (unsigned short)417, (unsigned short)420, (unsigned short)424, (unsigned short)427, (unsigned short)433, (unsigned short)435, (unsigned short)438, (unsigned short)440, (unsigned short)443, (unsigned short)445, (unsigned short)448, (unsigned short)450, (unsigned short)453, (unsigned short)455, (unsigned short)458, (unsigned short)460, (unsigned short)463, (unsigned short)465, (unsigned short)468, (unsigned short)470, (unsigned short)473, (unsigned short)475, (unsigned short)478, (unsigned short)480, (unsigned short)483, (unsigned short)485, (unsigned short)488, (unsigned short)490, (unsigned short)493, (unsigned short)495, (unsigned short)498, (unsigned short)500, (unsigned short)503, (unsigned short)505, (unsigned short)508, (unsigned short)510, (unsigned short)513, (unsigned short)515, (unsigned short)518, (unsigned short)520, (unsigned short)523, (unsigned short)525, (unsigned short)528, (unsigned short)530, (unsigned short)533, (unsigned short)535, (unsigned short)537, (unsigned short)539, (unsigned short)542, (unsigned short)544, (unsigned short)547, (unsigned short)549, (unsigned short)552, (unsigned short)554, (unsigned short)557, (unsigned short)562, (unsigned short)568, (unsigned short)570, (unsigned short)573, (unsigned short)575, (unsigned short)578, (unsigned short)580, (unsigned short)583, (unsigned short)585, (unsigned short)588, (unsigned short)590, (unsigned short)593, (unsigned short)595, (unsigned short)598, (unsigned short)603, (unsigned short)609, (unsigned short)611, (unsigned short)615, (unsigned short)617, (unsigned short)621, (unsigned short)623, (unsigned short)625, (unsigned short)627, (unsigned short)629, (unsigned short)631, (unsigned short)633, (unsigned short)635, (unsigned short)637, (unsigned short)639, (unsigned short)641, (unsigned short)643, (unsigned short)645, (unsigned short)647, (unsigned short)649, (unsigned short)651, (unsigned short)653, (unsigned short)655, (unsigned short)660, (unsigned short)662, (unsigned short)665, (unsigned short)669, (unsigned short)676, (unsigned short)682, (unsigned short)684, (unsigned short)686, (unsigned short)688, (unsigned short)690, (unsigned short)692, (unsigned short)694, (unsigned short)696, (unsigned short)698, (unsigned short)700, (unsigned short)702, (unsigned short)704, (unsigned short)706, (unsigned short)708, (unsigned short)710, (unsigned short)712, (unsigned short)714, (unsigned short)716, (unsigned short)718, (unsigned short)720, (unsigned short)722, (unsigned short)727, (unsigned short)732, (unsigned short)737, (unsigned short)739, (unsigned short)741, (unsigned short)743, (unsigned short)745, (unsigned short)747, (unsigned short)749, (unsigned short)751, (unsigned short)753, (unsigned short)755, (unsigned short)757, (unsigned short)759, (unsigned short)761, (unsigned short)763, (unsigned short)765, (unsigned short)767, (unsigned short)769, (unsigned short)771, (unsigned short)773, (unsigned short)775, (unsigned short)780, (unsigned short)785, (unsigned short)790, (unsigned short)792, (unsigned short)798, (unsigned short)803, (unsigned short)808, (unsigned short)812, (unsigned short)818, (unsigned short)825, (unsigned short)831, (unsigned short)837, (unsigned short)842, (unsigned short)849, (unsigned short)852, (unsigned short)855, (unsigned short)859, (unsigned short)863, (unsigned short)865, (unsigned short)868, (unsigned short)870, (unsigned short)872, (unsigned short)874, (unsigned short)876, (unsigned short)880, (unsigned short)884, (unsigned short)888, (unsigned short)892, (unsigned short)894, (unsigned short)898, (unsigned short)900, (unsigned short)902, (unsigned short)904, (unsigned short)907, (unsigned short)911, (unsigned short)913, (unsigned short)917, (unsigned short)927, (unsigned short)937, (unsigned short)945, (unsigned short)953, (unsigned short)959, (unsigned short)970, (unsigned short)981, (unsigned short)990, (unsigned short)999, (unsigned short)1006, (unsigned short)1015, (unsigned short)1024, (unsigned short)1031, (unsigned short)1038, (unsigned short)1043, (unsigned short)1053, (unsigned short)1063, (unsigned short)1071, (unsigned short)1079, (unsigned short)1085, (unsigned short)1089, (unsigned short)1092, (unsigned short)1095, (unsigned short)1098, (unsigned short)1100, (unsigned short)1103, (unsigned short)1105, (unsigned short)1107, (unsigned short)1109, (unsigned short)1113, (unsigned short)1115, (unsigned short)1118, (unsigned short)1121, (unsigned short)1125, (unsigned short)1131, (unsigned short)1134, (unsigned short)1137, (unsigned short)1142, (unsigned short)1148, (unsigned short)1156, (unsigned short)1164, (unsigned short)1170, (unsigned short)1172, (unsigned short)1176, (unsigned short)1178, (unsigned short)1182, (unsigned short)1186, (unsigned short)1189, (unsigned short)1193, (unsigned short)1197, (unsigned short)1201, (unsigned short)1206, (unsigned short)1211, (unsigned short)1214, (unsigned short)1218, (unsigned short)1222, (unsigned short)1227, (unsigned short)1231, (unsigned short)1234, (unsigned short)1238, (unsigned short)1242, (unsigned short)1247, (unsigned short)1249, (unsigned short)1251, (unsigned short)1254, (unsigned short)1257, (unsigned short)1260, (unsigned short)1264, (unsigned short)1266, (unsigned short)1268, (unsigned short)1271, (unsigned short)1274, (unsigned short)1277, (unsigned short)1281, (unsigned short)1283, (unsigned short)1286, (unsigned short)1290, (unsigned short)1293, (unsigned short)1295, (unsigned short)1299, (unsigned short)1304, (unsigned short)1308, (unsigned short)1313, (unsigned short)1315, (unsigned short)1318, (unsigned short)1321, (unsigned short)1325, (unsigned short)1329, (unsigned short)1332, (unsigned short)1336, (unsigned short)1340, (unsigned short)1343, (unsigned short)1345, (unsigned short)1347, (unsigned short)1350, (unsigned short)1353, (unsigned short)1355, (unsigned short)1358, (unsigned short)1361, (unsigned short)1365, (unsigned short)1369, (unsigned short)1371, (unsigned short)1374, (unsigned short)1376, (unsigned short)1379, (unsigned short)1382, (unsigned short)1386, (unsigned short)1388, (unsigned short)1392, (unsigned short)1394, (unsigned short)1398, (unsigned short)1401, (unsigned short)1404, (unsigned short)1407, (unsigned short)1411, (unsigned short)1413, (unsigned short)1415, (unsigned short)1417, (unsigned short)1421, (unsigned short)1423, (unsigned short)1426, (unsigned short)1428, (unsigned short)1431, (unsigned short)1433, (unsigned short)1437, (unsigned short)1442, (unsigned short)1444, (unsigned short)1446, (unsigned short)1448, (unsigned short)1452, (unsigned short)1454, (unsigned short)1456, (unsigned short)1458, (unsigned short)1460, (unsigned short)1462, (unsigned short)1464, (unsigned short)1468, (unsigned short)1473, (unsigned short)1477, (unsigned short)1479, (unsigned short)1482, (unsigned short)1484, (unsigned short)1487, (unsigned short)1490, (unsigned short)1492, (unsigned short)1494, (unsigned short)1497, (unsigned short)1499, (unsigned short)1502, (unsigned short)1506, (unsigned short)1508, (unsigned short)1511, (unsigned short)1517, (unsigned short)1525, (unsigned short)1531, (unsigned short)1537, (unsigned short)1545, (unsigned short)1552, (unsigned short)1560, (unsigned short)1565, (unsigned short)1571, (unsigned short)1576, (unsigned short)1580, (unsigned short)1583, (unsigned short)1586, (unsigned short)1589, (unsigned short)1593, (unsigned short)1595, (unsigned short)1601, (unsigned short)1606, (unsigned short)1612, (unsigned short)1617, (unsigned short)1622, (unsigned short)1626, (unsigned short)1631, (unsigned short)1635, (unsigned short)1639, (unsigned short)1642, (unsigned short)1645, (unsigned short)1648, (unsigned short)1651, (unsigned short)1654, (unsigned short)1657, (unsigned short)1660, (unsigned short)1663, (unsigned short)1666, (unsigned short)1670, (unsigned short)1672, (unsigned short)1674, (unsigned short)1678, (unsigned short)1681, (unsigned short)1683, (unsigned short)1685, (unsigned short)1688, (unsigned short)1691, (unsigned short)1693, (unsigned short)1696, (unsigned short)1698, (unsigned short)1700, (unsigned short)1703, (unsigned short)1705
963 };
964
965 static const yytype_int16 yyrhs[] = 
966 {
967 (short)261, (short)0, (short)(-1), (short)147, (short)112, (short)(-1), (short)147, (short)113, (short)(-1), (short)147, (short)1, (short)(-1), (short)142, (short)(-1), (short)147, (short)147, (short)(-1), (short)28, (short)(-1), (short)141, (short)(-1), (short)141, (short)113, (short)202, (short)114, (short)(-1), (short)141, (short)113, (short)202, (short)11, (short)(-1), (short)179, (short)221, (short)(-1), (short)221, (short)(-1), (short)179, (short)115, (short)116, (short)(-1), (short)117, (short)179, (short)115, (short)116, (short)(-1), (short)78, (short)179, (short)221, (short)(-1), (short)78, (short)221, (short)(-1), (short)3, (short)(-1), (short)149, (short)(-1), (short)115, (short)173, (short)116, (short)(-1), (short)147, (short)(-1), (short)251, (short)(-1), (short)4, (short)(-1), (short)248, (short)(-1), (short)118, (short)248, (short)(-1), (short)118, (short)248, (short)119, (short)248, (short)(-1), (short)115, (short)116, (short)(-1), (short)71, (short)179, (short)218, (short)120, (short)174, (short)121, (short)(-1), (short)71, (short)179, (short)120, (short)174, (short)121, (short)(-1), (short)102, (short)179, (short)218, (short)120, (short)174, (short)121, (short)(-1), (short)102, (short)179, (short)120, (short)174, (short)121, (short)(-1), (short)72, (short)174, (short)182, (short)218, (short)120, (short)174, (short)121, (short)(-1), (short)72, (short)174, (short)182, (short)120, (short)174, (short)121, (short)(-1), (short)103, (short)174, (short)182, (short)218, (short)120, (short)174, (short)121, (short)(-1), (short)103, (short)174, (short)182, (short)120, (short)174, (short)121, (short)(-1), (short)1, (short)(-1), (short)148, (short)(-1), (short)150, (short)120, (short)173, (short)121, (short)(-1), (short)150, (short)115, (short)116, (short)(-1), (short)150, (short)115, (short)153, (short)116, (short)(-1), (short)150, (short)119, (short)147, (short)(-1), (short)150, (short)7, (short)147, (short)(-1), (short)150, (short)8, (short)(-1), (short)150, (short)9, (short)(-1), (short)252, (short)(-1), (short)149, (short)(-1), (short)152, (short)120, (short)173, (short)121, (short)(-1), (short)152, (short)115, (short)116, (short)(-1), (short)152, (short)115, (short)153, (short)116, (short)(-1), (short)152, (short)119, (short)147, (short)(-1), (short)152, (short)7, (short)147, (short)(-1), (short)152, (short)8, (short)(-1), (short)152, (short)9, (short)(-1), (short)171, (short)(-1), (short)151, (short)(-1), (short)153, (short)122, (short)171, (short)(-1), (short)153, (short)122, (short)151, (short)(-1), (short)8, (short)155, (short)(-1), (short)9, (short)155, (short)(-1), (short)157, (short)158, (short)(-1), (short)6, (short)115, (short)155, (short)116, (short)(-1), (short)6, (short)156, (short)(-1), (short)6, (short)115, (short)233, (short)116, (short)(-1), (short)109, (short)115, (short)155, (short)116, (short)(-1), (short)109, (short)156, (short)(-1), (short)109, (short)115, (short)233, (short)116, (short)(-1), (short)154, (short)(-1), (short)150, (short)(-1), (short)154, (short)(-1), (short)152, (short)(-1), (short)123, (short)(-1), (short)112, (short)(-1), (short)124, (short)(-1), (short)125, (short)(-1), (short)117, (short)(-1), (short)126, (short)(-1), (short)73, (short)(-1), (short)155, (short)(-1), (short)115, (short)232, (short)116, (short)158, (short)(-1), (short)158, (short)(-1), (short)159, (short)112, (short)158, (short)(-1), (short)159, (short)127, (short)158, (short)(-1), (short)159, (short)128, (short)158, (short)(-1), (short)159, (short)(-1), (short)160, (short)124, (short)159, (short)(-1), (short)160, (short)125, (short)159, (short)(-1), (short)160, (short)(-1), (short)161, (short)10, (short)160, (short)(-1), (short)161, (short)11, (short)160, (short)(-1), (short)163, (short)113, (short)(-1), (short)161, (short)(-1), (short)162, (short)161, (short)(-1), (short)163, (short)114, (short)161, (short)(-1), (short)163, (short)12, (short)161, (short)(-1), (short)163, (short)13, (short)161, (short)(-1), (short)163, (short)(-1), (short)164, (short)14, (short)163, (short)(-1), (short)164, (short)15, (short)163, (short)(-1), (short)164, (short)(-1), (short)165, (short)123, (short)164, (short)(-1), (short)165, (short)(-1), (short)166, (short)129, (short)165, (short)(-1), (short)166, (short)(-1), (short)167, (short)130, (short)166, (short)(-1), (short)167, (short)(-1), (short)168, (short)16, (short)167, (short)(-1), (short)168, (short)(-1), (short)169, (short)17, (short)168, (short)(-1), (short)169, (short)(-1), (short)169, (short)131, (short)173, (short)132, (short)170, (short)(-1), (short)170, (short)(-1), (short)155, (short)172, (short)171, (short)(-1), (short)155, (short)172, (short)151, (short)(-1), (short)133, (short)(-1), (short)18, (short)(-1), (short)19, (short)(-1), (short)20, (short)(-1), (short)21, (short)(-1), (short)22, (short)(-1), (short)23, (short)(-1), (short)24, (short)(-1), (short)25, (short)(-1), (short)26, (short)(-1), (short)27, (short)(-1), (short)171, (short)(-1), (short)173, (short)122, (short)171, (short)(-1), (short)170, (short)(-1), (short)178, (short)134, (short)(-1), (short)178, (short)183, (short)134, (short)(-1), (short)249, (short)134, (short)(-1), (short)77, (short)147, (short)133, (short)174, (short)134, (short)(-1), (short)193, (short)(-1), (short)176, (short)193, (short)(-1), (short)194, (short)(-1), (short)176, (short)194, (short)(-1), (short)212, (short)(-1), (short)176, (short)212, (short)(-1), (short)196, (short)(-1), (short)176, (short)196, (short)(-1), (short)193, (short)(-1), (short)177, (short)193, (short)(-1), (short)194, (short)(-1), (short)177, (short)194, (short)(-1), (short)138, (short)(-1), (short)177, (short)138, (short)(-1), (short)212, (short)(-1), (short)177, (short)212, (short)(-1), (short)196, (short)(-1), (short)177, (short)196, (short)(-1), (short)185, (short)(-1), (short)178, (short)185, (short)(-1), (short)193, (short)(-1), (short)178, (short)193, (short)(-1), (short)194, (short)(-1), (short)178, (short)194, (short)(-1), (short)212, (short)(-1), (short)178, (short)212, (short)(-1), (short)196, (short)(-1), (short)178, (short)196, (short)(-1), (short)185, (short)(-1), (short)179, (short)185, (short)(-1), (short)193, (short)(-1), (short)179, (short)193, (short)(-1), (short)194, (short)(-1), (short)179, (short)194, (short)(-1), (short)138, (short)(-1), (short)179, (short)138, (short)(-1), (short)196, (short)(-1), (short)179, (short)196, (short)(-1), (short)212, (short)(-1), (short)179, (short)212, (short)(-1), (short)179, (short)(-1), (short)139, (short)(-1), (short)185, (short)(-1), (short)181, (short)185, (short)(-1), (short)193, (short)(-1), (short)181, (short)193, (short)(-1), (short)195, (short)(-1), (short)181, (short)195, (short)(-1), (short)147, (short)(-1), (short)181, (short)147, (short)(-1), (short)147, (short)113, (short)202, (short)114, (short)(-1), (short)181, (short)147, (short)113, (short)202, (short)114, (short)(-1), (short)185, (short)(-1), (short)182, (short)185, (short)(-1), (short)193, (short)(-1), (short)182, (short)193, (short)(-1), (short)195, (short)(-1), (short)182, (short)195, (short)(-1), (short)196, (short)(-1), (short)182, (short)196, (short)(-1), (short)212, (short)(-1), (short)182, (short)212, (short)(-1), (short)147, (short)(-1), (short)182, (short)147, (short)(-1), (short)147, (short)113, (short)202, (short)114, (short)(-1), (short)182, (short)147, (short)113, (short)202, (short)114, (short)(-1), (short)184, (short)(-1), (short)183, (short)122, (short)184, (short)(-1), (short)219, (short)(-1), (short)219, (short)133, (short)234, (short)(-1), (short)29, (short)(-1), (short)30, (short)(-1), (short)31, (short)(-1), (short)32, (short)(-1), (short)33, (short)(-1), (short)74, (short)(-1), (short)75, (short)(-1), (short)191, (short)(-1), (short)79, (short)(-1), (short)110, (short)(-1), (short)111, (short)(-1), (short)3, (short)(-1), (short)28, (short)(-1), (short)75, (short)(-1), (short)74, (short)(-1), (short)44, (short)(-1), (short)188, (short)(-1), (short)188, (short)115, (short)173, (short)116, (short)(-1), (short)189, (short)(-1), (short)190, (short)189, (short)(-1), (short)190, (short)122, (short)189, (short)(-1), (short)187, (short)115, (short)115, (short)190, (short)116, (short)116, (short)(-1), (short)187, (short)115, (short)115, (short)116, (short)116, (short)(-1), (short)186, (short)(-1), (short)44, (short)(-1), (short)45, (short)(-1), (short)192, (short)(-1), (short)46, (short)(-1), (short)34, (short)(-1), (short)35, (short)(-1), (short)36, (short)(-1), (short)37, (short)(-1), (short)38, (short)(-1), (short)47, (short)(-1), (short)39, (short)(-1), (short)42, (short)(-1), (short)43, (short)(-1), (short)40, (short)(-1), (short)41, (short)(-1), (short)85, (short)(-1), (short)197, (short)(-1), (short)211, (short)(-1), (short)140, (short)(-1), (short)87, (short)115, (short)171, (short)116, (short)(-1), (short)100, (short)115, (short)140, (short)116, (short)(-1), (short)100, (short)115, (short)147, (short)116, (short)(-1), (short)66, (short)(-1), (short)82, (short)(-1), (short)83, (short)(-1), (short)46, (short)(-1), (short)34, (short)(-1), (short)35, (short)(-1), (short)36, (short)(-1), (short)37, (short)(-1), (short)38, (short)(-1), (short)47, (short)(-1), (short)39, (short)(-1), (short)42, (short)(-1), (short)43, (short)(-1), (short)40, (short)(-1), (short)41, (short)(-1), (short)85, (short)(-1), (short)197, (short)(-1), (short)211, (short)(-1), (short)142, (short)(-1), (short)87, (short)115, (short)171, (short)116, (short)(-1), (short)100, (short)115, (short)140, (short)116, (short)(-1), (short)100, (short)115, (short)147, (short)116, (short)(-1), (short)66, (short)(-1), (short)203, (short)147, (short)135, (short)204, (short)136, (short)(-1), (short)203, (short)135, (short)204, (short)136, (short)(-1), (short)203, (short)147, (short)135, (short)136, (short)(-1), (short)203, (short)135, (short)136, (short)(-1), (short)203, (short)141, (short)135, (short)204, (short)136, (short)(-1), (short)203, (short)186, (short)147, (short)135, (short)204, (short)136, (short)(-1), (short)203, (short)186, (short)135, (short)204, (short)136, (short)(-1), (short)203, (short)186, (short)147, (short)135, (short)136, (short)(-1), (short)203, (short)186, (short)135, (short)136, (short)(-1), (short)203, (short)186, (short)142, (short)135, (short)204, (short)136, (short)(-1), (short)203, (short)147, (short)(-1), (short)203, (short)142, (short)(-1), (short)203, (short)186, (short)147, (short)(-1), (short)203, (short)186, (short)142, (short)(-1), (short)178, (short)(-1), (short)178, (short)217, (short)(-1), (short)198, (short)(-1), (short)161, (short)(-1), (short)200, (short)(-1), (short)199, (short)(-1), (short)147, (short)133, (short)200, (short)(-1), (short)147, (short)133, (short)199, (short)(-1), (short)198, (short)133, (short)200, (short)(-1), (short)198, (short)133, (short)199, (short)(-1), (short)201, (short)(-1), (short)202, (short)122, (short)201, (short)(-1), (short)48, (short)(-1), (short)49, (short)(-1), (short)208, (short)(-1), (short)204, (short)208, (short)(-1), (short)150, (short)133, (short)235, (short)(-1), (short)205, (short)(-1), (short)206, (short)122, (short)205, (short)(-1), (short)68, (short)181, (short)147, (short)135, (short)69, (short)243, (short)70, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)147, (short)135, (short)70, (short)243, (short)69, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)147, (short)135, (short)69, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)147, (short)135, (short)70, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)147, (short)135, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)147, (short)135, (short)69, (short)243, (short)70, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)147, (short)135, (short)70, (short)243, (short)69, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)147, (short)135, (short)69, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)147, (short)135, (short)70, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)147, (short)135, (short)136, (short)(-1), (short)68, (short)181, (short)135, (short)69, (short)243, (short)70, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)135, (short)70, (short)243, (short)69, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)135, (short)69, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)135, (short)70, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)135, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)135, (short)69, (short)243, (short)70, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)135, (short)70, (short)243, (short)69, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)135, (short)69, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)135, (short)70, (short)243, (short)136, (short)(-1), (short)68, (short)181, (short)217, (short)135, (short)136, (short)(-1), (short)179, (short)209, (short)134, (short)(-1), (short)179, (short)134, (short)(-1), (short)251, (short)134, (short)(-1), (short)250, (short)134, (short)(-1), (short)253, (short)(-1), (short)206, (short)134, (short)(-1), (short)207, (short)(-1), (short)134, (short)(-1), (short)210, (short)(-1), (short)209, (short)122, (short)210, (short)(-1), (short)225, (short)(-1), (short)225, (short)191, (short)(-1), (short)132, (short)174, (short)(-1), (short)225, (short)132, (short)174, (short)(-1), (short)225, (short)132, (short)174, (short)132, (short)174, (short)(-1), (short)50, (short)147, (short)(-1), (short)50, (short)142, (short)(-1), (short)50, (short)135, (short)213, (short)136, (short)(-1), (short)50, (short)147, (short)135, (short)213, (short)136, (short)(-1), (short)50, (short)147, (short)135, (short)213, (short)134, (short)204, (short)136, (short)(-1), (short)50, (short)142, (short)135, (short)213, (short)134, (short)204, (short)136, (short)(-1), (short)50, (short)142, (short)135, (short)213, (short)136, (short)(-1), (short)214, (short)(-1), (short)213, (short)122, (short)214, (short)(-1), (short)147, (short)(-1), (short)147, (short)133, (short)174, (short)(-1), (short)115, (short)217, (short)116, (short)(-1), (short)120, (short)121, (short)(-1), (short)120, (short)174, (short)121, (short)(-1), (short)120, (short)140, (short)121, (short)(-1), (short)215, (short)120, (short)121, (short)(-1), (short)215, (short)120, (short)174, (short)121, (short)(-1), (short)215, (short)120, (short)140, (short)121, (short)(-1), (short)115, (short)116, (short)(-1), (short)115, (short)228, (short)116, (short)(-1), (short)215, (short)115, (short)116, (short)(-1), (short)215, (short)115, (short)228, (short)116, (short)(-1), (short)115, (short)218, (short)116, (short)(-1), (short)115, (short)116, (short)(-1), (short)115, (short)228, (short)116, (short)(-1), (short)216, (short)115, (short)116, (short)(-1), (short)216, (short)115, (short)228, (short)116, (short)(-1), (short)227, (short)(-1), (short)215, (short)(-1), (short)227, (short)215, (short)(-1), (short)186, (short)227, (short)(-1), (short)186, (short)215, (short)(-1), (short)186, (short)227, (short)215, (short)(-1), (short)227, (short)(-1), (short)216, (short)(-1), (short)227, (short)216, (short)(-1), (short)186, (short)227, (short)(-1), (short)186, (short)216, (short)(-1), (short)186, (short)227, (short)216, (short)(-1), (short)224, (short)(-1), (short)227, (short)224, (short)(-1), (short)186, (short)227, (short)224, (short)(-1), (short)219, (short)186, (short)(-1), (short)147, (short)(-1), (short)115, (short)219, (short)116, (short)(-1), (short)220, (short)120, (short)174, (short)121, (short)(-1), (short)220, (short)120, (short)121, (short)(-1), (short)220, (short)120, (short)140, (short)121, (short)(-1), (short)223, (short)(-1), (short)227, (short)223, (short)(-1), (short)186, (short)223, (short)(-1), (short)186, (short)227, (short)223, (short)(-1), (short)227, (short)186, (short)223, (short)(-1), (short)220, (short)115, (short)(-1), (short)222, (short)228, (short)116, (short)(-1), (short)222, (short)231, (short)116, (short)(-1), (short)222, (short)116, (short)(-1), (short)223, (short)(-1), (short)220, (short)(-1), (short)186, (short)223, (short)(-1), (short)186, (short)220, (short)(-1), (short)220, (short)(-1), (short)227, (short)220, (short)(-1), (short)186, (short)220, (short)(-1), (short)186, (short)227, (short)220, (short)(-1), (short)227, (short)186, (short)220, (short)(-1), (short)193, (short)(-1), (short)226, (short)193, (short)(-1), (short)112, (short)(-1), (short)112, (short)226, (short)(-1), (short)112, (short)227, (short)(-1), (short)112, (short)226, (short)227, (short)(-1), (short)229, (short)(-1), (short)229, (short)122, (short)51, (short)(-1), (short)230, (short)(-1), (short)229, (short)122, (short)230, (short)(-1), (short)179, (short)219, (short)(-1), (short)179, (short)217, (short)(-1), (short)179, (short)123, (short)(-1), (short)179, (short)123, (short)219, (short)(-1), (short)180, (short)(-1), (short)65, (short)(-1), (short)147, (short)(-1), (short)231, (short)122, (short)147, (short)(-1), (short)176, (short)(-1), (short)176, (short)217, (short)(-1), (short)177, (short)(-1), (short)177, (short)217, (short)(-1), (short)171, (short)(-1), (short)135, (short)236, (short)136, (short)(-1), (short)135, (short)236, (short)122, (short)136, (short)(-1), (short)170, (short)(-1), (short)151, (short)(-1), (short)234, (short)(-1), (short)236, (short)122, (short)234, (short)(-1), (short)238, (short)(-1), (short)243, (short)(-1), (short)244, (short)(-1), (short)245, (short)(-1), (short)246, (short)(-1), (short)247, (short)(-1), (short)147, (short)132, (short)237, (short)(-1), (short)52, (short)174, (short)132, (short)237, (short)(-1), (short)53, (short)132, (short)237, (short)(-1), (short)175, (short)(-1), (short)239, (short)175, (short)(-1), (short)237, (short)(-1), (short)240, (short)237, (short)(-1), (short)240, (short)175, (short)(-1), (short)240, (short)(-1), (short)239, (short)(-1), (short)239, (short)240, (short)(-1), (short)135, (short)(-1), (short)135, (short)136, (short)(-1), (short)242, (short)241, (short)136, (short)(-1), (short)134, (short)(-1), (short)173, (short)134, (short)(-1), (short)54, (short)115, (short)173, (short)116, (short)237, (short)(-1), (short)54, (short)115, (short)173, (short)116, (short)237, (short)64, (short)237, (short)(-1), (short)55, (short)115, (short)173, (short)116, (short)237, (short)(-1), (short)56, (short)115, (short)173, (short)116, (short)237, (short)(-1), (short)57, (short)237, (short)56, (short)115, (short)173, (short)116, (short)134, (short)(-1), (short)58, (short)115, (short)244, (short)244, (short)116, (short)237, (short)(-1), (short)58, (short)115, (short)244, (short)244, (short)173, (short)116, (short)237, (short)(-1), (short)56, (short)115, (short)116, (short)237, (short)(-1), (short)58, (short)115, (short)244, (short)116, (short)237, (short)(-1), (short)58, (short)115, (short)116, (short)237, (short)(-1), (short)59, (short)147, (short)134, (short)(-1), (short)60, (short)134, (short)(-1), (short)61, (short)134, (short)(-1), (short)62, (short)134, (short)(-1), (short)62, (short)173, (short)134, (short)(-1), (short)5, (short)(-1), (short)178, (short)147, (short)135, (short)260, (short)136, (short)(-1), (short)178, (short)147, (short)135, (short)136, (short)(-1), (short)179, (short)147, (short)135, (short)260, (short)136, (short)(-1), (short)179, (short)147, (short)135, (short)136, (short)(-1), (short)140, (short)135, (short)260, (short)136, (short)(-1), (short)140, (short)135, (short)136, (short)(-1), (short)147, (short)135, (short)260, (short)136, (short)(-1), (short)147, (short)135, (short)136, (short)(-1), (short)135, (short)260, (short)136, (short)(-1), (short)135, (short)136, (short)(-1), (short)143, (short)243, (short)(-1), (short)146, (short)243, (short)(-1), (short)146, (short)134, (short)(-1), (short)144, (short)243, (short)(-1), (short)145, (short)243, (short)(-1), (short)178, (short)221, (short)(-1), (short)178, (short)225, (short)(-1), (short)254, (short)243, (short)(-1), (short)150, (short)133, (short)235, (short)(-1), (short)235, (short)(-1), (short)256, (short)(-1), (short)257, (short)122, (short)256, (short)(-1), (short)257, (short)134, (short)(-1), (short)258, (short)(-1), (short)255, (short)(-1), (short)259, (short)258, (short)(-1), (short)259, (short)255, (short)(-1), (short)134, (short)(-1), (short)259, (short)134, (short)(-1), (short)259, (short)(-1), (short)257, (short)(-1), (short)259, (short)257, (short)(-1), (short)230, (short)(-1), (short)230, (short)132, (short)174, (short)(-1)
968 };
969
970 static const yytype_uint16 yyrline[] = 
971 {
972 (unsigned short)0, (unsigned short)225, (unsigned short)225, (unsigned short)243, (unsigned short)277, (unsigned short)327, (unsigned short)328, (unsigned short)355, (unsigned short)359, (unsigned short)360, (unsigned short)361, (unsigned short)378, (unsigned short)380, (unsigned short)385, (unsigned short)390, (unsigned short)395, (unsigned short)397, (unsigned short)402, (unsigned short)407, (unsigned short)408, (unsigned short)413, (unsigned short)415, (unsigned short)417, (unsigned short)419, (unsigned short)421, (unsigned short)422, (unsigned short)423, (unsigned short)426, (unsigned short)427, (unsigned short)428, (unsigned short)429, (unsigned short)430, (unsigned short)431, (unsigned short)432, (unsigned short)433, (unsigned short)434, (unsigned short)438, (unsigned short)439, (unsigned short)440, (unsigned short)441, (unsigned short)442, (unsigned short)443, (unsigned short)444, (unsigned short)445, (unsigned short)449, (unsigned short)454, (unsigned short)455, (unsigned short)456, (unsigned short)457, (unsigned short)458, (unsigned short)459, (unsigned short)460, (unsigned short)461, (unsigned short)465, (unsigned short)466, (unsigned short)467, (unsigned short)468, (unsigned short)472, (unsigned short)473, (unsigned short)474, (unsigned short)475, (unsigned short)476, (unsigned short)477, (unsigned short)478, (unsigned short)479, (unsigned short)480, (unsigned short)484, (unsigned short)485, (unsigned short)489, (unsigned short)490, (unsigned short)494, (unsigned short)495, (unsigned short)496, (unsigned short)497, (unsigned short)498, (unsigned short)499, (unsigned short)500, (unsigned short)504, (unsigned short)505, (unsigned short)509, (unsigned short)510, (unsigned short)511, (unsigned short)512, (unsigned short)516, (unsigned short)517, (unsigned short)518, (unsigned short)522, (unsigned short)523, (unsigned short)524, (unsigned short)528, (unsigned short)536, (unsigned short)537, (unsigned short)538, (unsigned short)539, (unsigned short)540, (unsigned short)544, (unsigned short)545, (unsigned short)546, (unsigned short)550, (unsigned short)551, (unsigned short)555, (unsigned short)556, (unsigned short)560, (unsigned short)561, (unsigned short)565, (unsigned short)566, (unsigned short)570, (unsigned short)571, (unsigned short)575, (unsigned short)576, (unsigned short)580, (unsigned short)581, (unsigned short)582, (unsigned short)586, (unsigned short)587, (unsigned short)588, (unsigned short)589, (unsigned short)590, (unsigned short)591, (unsigned short)592, (unsigned short)593, (unsigned short)594, (unsigned short)595, (unsigned short)596, (unsigned short)600, (unsigned short)601, (unsigned short)605, (unsigned short)609, (unsigned short)610, (unsigned short)611, (unsigned short)612, (unsigned short)616, (unsigned short)617, (unsigned short)618, (unsigned short)619, (unsigned short)620, (unsigned short)621, (unsigned short)622, (unsigned short)623, (unsigned short)627, (unsigned short)628, (unsigned short)629, (unsigned short)630, (unsigned short)631, (unsigned short)632, (unsigned short)633, (unsigned short)634, (unsigned short)635, (unsigned short)636, (unsigned short)640, (unsigned short)641, (unsigned short)642, (unsigned short)643, (unsigned short)644, (unsigned short)645, (unsigned short)646, (unsigned short)647, (unsigned short)648, (unsigned short)649, (unsigned short)653, (unsigned short)654, (unsigned short)655, (unsigned short)656, (unsigned short)657, (unsigned short)658, (unsigned short)659, (unsigned short)660, (unsigned short)661, (unsigned short)662, (unsigned short)663, (unsigned short)664, (unsigned short)668, (unsigned short)669, (unsigned short)673, (unsigned short)674, (unsigned short)675, (unsigned short)676, (unsigned short)677, (unsigned short)678, (unsigned short)679, (unsigned short)680, (unsigned short)681, (unsigned short)699, (unsigned short)716, (unsigned short)717, (unsigned short)718, (unsigned short)719, (unsigned short)720, (unsigned short)721, (unsigned short)722, (unsigned short)723, (unsigned short)724, (unsigned short)725, (unsigned short)726, (unsigned short)727, (unsigned short)728, (unsigned short)746, (unsigned short)763, (unsigned short)764, (unsigned short)768, (unsigned short)769, (unsigned short)773, (unsigned short)774, (unsigned short)775, (unsigned short)776, (unsigned short)777, (unsigned short)781, (unsigned short)782, (unsigned short)783, (unsigned short)787, (unsigned short)788, (unsigned short)789, (unsigned short)794, (unsigned short)795, (unsigned short)796, (unsigned short)797, (unsigned short)798, (unsigned short)802, (unsigned short)803, (unsigned short)807, (unsigned short)808, (unsigned short)809, (unsigned short)813, (unsigned short)814, (unsigned short)818, (unsigned short)822, (unsigned short)823, (unsigned short)824, (unsigned short)829, (unsigned short)830, (unsigned short)831, (unsigned short)832, (unsigned short)833, (unsigned short)834, (unsigned short)835, (unsigned short)836, (unsigned short)837, (unsigned short)838, (unsigned short)839, (unsigned short)840, (unsigned short)841, (unsigned short)842, (unsigned short)843, (unsigned short)844, (unsigned short)845, (unsigned short)846, (unsigned short)847, (unsigned short)848, (unsigned short)849, (unsigned short)850, (unsigned short)854, (unsigned short)855, (unsigned short)856, (unsigned short)857, (unsigned short)858, (unsigned short)859, (unsigned short)860, (unsigned short)861, (unsigned short)862, (unsigned short)863, (unsigned short)864, (unsigned short)865, (unsigned short)866, (unsigned short)867, (unsigned short)868, (unsigned short)869, (unsigned short)870, (unsigned short)871, (unsigned short)872, (unsigned short)873, (unsigned short)878, (unsigned short)879, (unsigned short)880, (unsigned short)881, (unsigned short)882, (unsigned short)885, (unsigned short)886, (unsigned short)887, (unsigned short)888, (unsigned short)889, (unsigned short)894, (unsigned short)895, (unsigned short)898, (unsigned short)900, (unsigned short)905, (unsigned short)906, (unsigned short)911, (unsigned short)921, (unsigned short)925, (unsigned short)927, (unsigned short)928, (unsigned short)930, (unsigned short)931, (unsigned short)955, (unsigned short)970, (unsigned short)971, (unsigned short)975, (unsigned short)976, (unsigned short)980, (unsigned short)981, (unsigned short)985, (unsigned short)989, (unsigned short)990, (unsigned short)994, (unsigned short)996, (unsigned short)998, (unsigned short)1000, (unsigned short)1002, (unsigned short)1005, (unsigned short)1007, (unsigned short)1009, (unsigned short)1011, (unsigned short)1013, (unsigned short)1016, (unsigned short)1018, (unsigned short)1020, (unsigned short)1022, (unsigned short)1024, (unsigned short)1027, (unsigned short)1029, (unsigned short)1031, (unsigned short)1033, (unsigned short)1035, (unsigned short)1040, (unsigned short)1041, (unsigned short)1042, (unsigned short)1043, (unsigned short)1044, (unsigned short)1045, (unsigned short)1046, (unsigned short)1047, (unsigned short)1051, (unsigned short)1053, (unsigned short)1058, (unsigned short)1060, (unsigned short)1062, (unsigned short)1064, (unsigned short)1066, (unsigned short)1071, (unsigned short)1072, (unsigned short)1076, (unsigned short)1078, (unsigned short)1079, (unsigned short)1080, (unsigned short)1081, (unsigned short)1085, (unsigned short)1087, (unsigned short)1092, (unsigned short)1094, (unsigned short)1100, (unsigned short)1102, (unsigned short)1104, (unsigned short)1106, (unsigned short)1108, (unsigned short)1110, (unsigned short)1112, (unsigned short)1114, (unsigned short)1116, (unsigned short)1118, (unsigned short)1120, (unsigned short)1125, (unsigned short)1127, (unsigned short)1129, (unsigned short)1131, (unsigned short)1133, (unsigned short)1138, (unsigned short)1139, (unsigned short)1140, (unsigned short)1141, (unsigned short)1142, (unsigned short)1143, (unsigned short)1147, (unsigned short)1148, (unsigned short)1149, (unsigned short)1150, (unsigned short)1151, (unsigned short)1152, (unsigned short)1198, (unsigned short)1199, (unsigned short)1201, (unsigned short)1203, (unsigned short)1208, (unsigned short)1210, (unsigned short)1212, (unsigned short)1214, (unsigned short)1216, (unsigned short)1221, (unsigned short)1222, (unsigned short)1225, (unsigned short)1227, (unsigned short)1229, (unsigned short)1235, (unsigned short)1239, (unsigned short)1241, (unsigned short)1243, (unsigned short)1248, (unsigned short)1249, (unsigned short)1250, (unsigned short)1252, (unsigned short)1257, (unsigned short)1258, (unsigned short)1259, (unsigned short)1260, (unsigned short)1261, (unsigned short)1265, (unsigned short)1266, (unsigned short)1270, (unsigned short)1271, (unsigned short)1272, (unsigned short)1273, (unsigned short)1277, (unsigned short)1278, (unsigned short)1282, (unsigned short)1283, (unsigned short)1287, (unsigned short)1288, (unsigned short)1289, (unsigned short)1290, (unsigned short)1291, (unsigned short)1302, (unsigned short)1327, (unsigned short)1328, (unsigned short)1332, (unsigned short)1333, (unsigned short)1337, (unsigned short)1338, (unsigned short)1342, (unsigned short)1344, (unsigned short)1346, (unsigned short)1362, (unsigned short)1364, (unsigned short)1386, (unsigned short)1388, (unsigned short)1393, (unsigned short)1394, (unsigned short)1395, (unsigned short)1396, (unsigned short)1397, (unsigned short)1398, (unsigned short)1402, (unsigned short)1404, (unsigned short)1406, (unsigned short)1411, (unsigned short)1412, (unsigned short)1416, (unsigned short)1417, (unsigned short)1420, (unsigned short)1424, (unsigned short)1425, (unsigned short)1426, (unsigned short)1430, (unsigned short)1434, (unsigned short)1442, (unsigned short)1447, (unsigned short)1448, (unsigned short)1452, (unsigned short)1453, (unsigned short)1454, (unsigned short)1458, (unsigned short)1459, (unsigned short)1460, (unsigned short)1461, (unsigned short)1463, (unsigned short)1464, (unsigned short)1465, (unsigned short)1469, (unsigned short)1470, (unsigned short)1471, (unsigned short)1472, (unsigned short)1473, (unsigned short)1477, (unsigned short)1481, (unsigned short)1483, (unsigned short)1488, (unsigned short)1490, (unsigned short)1515, (unsigned short)1517, (unsigned short)1519, (unsigned short)1521, (unsigned short)1526, (unsigned short)1528, (unsigned short)1532, (unsigned short)1534, (unsigned short)1536, (unsigned short)1538, (unsigned short)1540, (unsigned short)1546, (unsigned short)1548, (unsigned short)1553, (unsigned short)1558, (unsigned short)1559, (unsigned short)1563, (unsigned short)1565, (unsigned short)1570, (unsigned short)1575, (unsigned short)1576, (unsigned short)1577, (unsigned short)1578, (unsigned short)1579, (unsigned short)1580, (unsigned short)1584, (unsigned short)1585, (unsigned short)1586, (unsigned short)1590, (unsigned short)1591
973 };
974
975 static const char * const yytname[] = 
976 {
977 "$end", "error", "$undefined", "IDENTIFIER", "CONSTANT", "STRING_LITERAL", "SIZEOF", "PTR_OP", "INC_OP", "DEC_OP", "LEFT_OP", "RIGHT_OP", "LE_OP", "GE_OP", "EQ_OP", "NE_OP", "AND_OP", "OR_OP", "MUL_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "ADD_ASSIGN", "SUB_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN", "TYPE_NAME", "TYPEDEF", "EXTERN", "STATIC", "AUTO", "REGISTER", "CHAR", "SHORT", "INT", "UINT", "INT64", "LONG", "SIGNED", "UNSIGNED", "FLOAT", "DOUBLE", "CONST", "VOLATILE", "VOID", "VALIST", "STRUCT", "UNION", "ENUM", "ELLIPSIS", "CASE", "DEFAULT", "IF", "SWITCH", "WHILE", "DO", "FOR", "GOTO", "CONTINUE", "BREAK", "RETURN", "IFX", "ELSE", "CLASS", "THISCLASS", "CLASS_NAME", "PROPERTY", "SETPROP", "GETPROP", "NEWOP", "RENEW", "DELETE", "EXT_DECL", "EXT_STORAGE", "IMPORT", "DEFINE", "VIRTUAL", "ATTRIB", "PUBLIC", "PRIVATE", "TYPED_OBJECT", "ANY_OBJECT", "_INCREF", "EXTENSION", "ASM", "TYPEOF", "WATCH", "STOPWATCHING", "FIREWATCHERS", "WATCHABLE", "CLASS_DESIGNER", "CLASS_NO_EXPANSION", "CLASS_FIXED", "ISPROPSET", "CLASS_DEFAULT_PROPERTY", "PROPERTY_CATEGORY", "CLASS_DATA", "CLASS_PROPERTY", "SUBCLASS", "NAMESPACE", "NEW0OP", "RENEW0", "VAARG", "DBTABLE", "DBFIELD", "DBINDEX", "DATABASE_OPEN", "ALIGNOF", "ATTRIB_DEP", "__ATTRIB", "'*'", "'<'", "'>'", "'('", "')'", "'~'", "'$'", "'.'", "'['", "']'", "','", "'&'", "'+'", "'-'", "'!'", "'/'", "'%'", "'^'", "'|'", "'?'", "':'", "'='", "';'", "'{'", "'}'", "$accept", "guess_type", "real_guess_type", "type", "base_strict_type", "strict_type", "class_function_definition_start", "constructor_function_definition_start", "destructor_function_definition_start", "virtual_class_function_definition_start", "identifier", "primary_expression", "simple_primary_expression", "postfix_expression", "anon_instantiation_expression", "simple_postfix_expression", "argument_expression_list", "common_unary_expression", "unary_expression", "simple_unary_expression", "unary_operator", "cast_expression", "multiplicative_expression", "additive_expression", "shift_expression", "relational_expression_smaller_than", "relational_expression", "equality_expression", "and_expression", "exclusive_or_expression", "inclusive_or_expression", "logical_and_expression", "logical_or_expression", "conditional_expression", "assignment_expression", "assignment_operator", "expression", "constant_expression", "declaration", "specifier_qualifier_list", "guess_specifier_qualifier_list", "declaration_specifiers", "guess_declaration_specifiers", "real_guess_declaration_specifiers", "property_specifiers", "renew_specifiers", "init_declarator_list", "init_declarator", "storage_class_specifier", "ext_decl", "_attrib", "attribute_word", "attribute", "attribs_list", "attrib", "ext_storage", "type_qualifier", "type_specifier", "strict_type_specifier", "struct_or_union_specifier_compound", "struct_or_union_specifier_nocompound", "template_datatype", "template_type_argument", "template_expression_argument", "template_argument", "template_arguments_list", "struct_or_union", "struct_declaration_list", "default_property", "default_property_list", "property", "struct_declaration", "struct_declarator_list", "struct_declarator", "enum_specifier_nocompound", "enum_specifier_compound", "enumerator_list", "enumerator", "direct_abstract_declarator", "direct_abstract_declarator_noarray", "abstract_declarator", "abstract_declarator_noarray", "declarator", "direct_declarator_nofunction", "declarator_function", "direct_declarator_function_start", "direct_declarator_function", "direct_declarator", "declarator_nofunction", "type_qualifier_list", "pointer", "parameter_type_list", "parameter_list", "parameter_declaration", "identifier_list", "type_name", "guess_type_name", "initializer", "initializer_condition", "initializer_list", "statement", "labeled_statement", "declaration_list", "statement_list", "compound_inside", "compound_start", "compound_statement", "expression_statement", "selection_statement", "iteration_statement", "jump_statement", "string_literal", "instantiation_named", "guess_instantiation_named", "instantiation_unnamed", "instantiation_anon", "class_function_definition", "instance_class_function_definition_start", "instance_class_function_definition", "data_member_initialization", "data_member_initialization_list", "data_member_initialization_list_coloned", "members_initialization_list_coloned", "members_initialization_list", "type_unit", 0
978 };
979
980 static const yytype_uint16 yyr1[] = 
981 {
982 (unsigned short)0, (unsigned short)137, (unsigned short)138, (unsigned short)138, (unsigned short)139, (unsigned short)140, (unsigned short)140, (unsigned short)141, (unsigned short)142, (unsigned short)142, (unsigned short)142, (unsigned short)143, (unsigned short)143, (unsigned short)144, (unsigned short)145, (unsigned short)146, (unsigned short)146, (unsigned short)147, (unsigned short)148, (unsigned short)148, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)149, (unsigned short)150, (unsigned short)150, (unsigned short)150, (unsigned short)150, (unsigned short)150, (unsigned short)150, (unsigned short)150, (unsigned short)150, (unsigned short)151, (unsigned short)152, (unsigned short)152, (unsigned short)152, (unsigned short)152, (unsigned short)152, (unsigned short)152, (unsigned short)152, (unsigned short)152, (unsigned short)153, (unsigned short)153, (unsigned short)153, (unsigned short)153, (unsigned short)154, (unsigned short)154, (unsigned short)154, (unsigned short)154, (unsigned short)154, (unsigned short)154, (unsigned short)154, (unsigned short)154, (unsigned short)154, (unsigned short)155, (unsigned short)155, (unsigned short)156, (unsigned short)156, (unsigned short)157, (unsigned short)157, (unsigned short)157, (unsigned short)157, (unsigned short)157, (unsigned short)157, (unsigned short)157, (unsigned short)158, (unsigned short)158, (unsigned short)159, (unsigned short)159, (unsigned short)159, (unsigned short)159, (unsigned short)160, (unsigned short)160, (unsigned short)160, (unsigned short)161, (unsigned short)161, (unsigned short)161, (unsigned short)162, (unsigned short)163, (unsigned short)163, (unsigned short)163, (unsigned short)163, (unsigned short)163, (unsigned short)164, (unsigned short)164, (unsigned short)164, (unsigned short)165, (unsigned short)165, (unsigned short)166, (unsigned short)166, (unsigned short)167, (unsigned short)167, (unsigned short)168, (unsigned short)168, (unsigned short)169, (unsigned short)169, (unsigned short)170, (unsigned short)170, (unsigned short)171, (unsigned short)171, (unsigned short)171, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)172, (unsigned short)173, (unsigned short)173, (unsigned short)174, (unsigned short)175, (unsigned short)175, (unsigned short)175, (unsigned short)175, (unsigned short)176, (unsigned short)176, (unsigned short)176, (unsigned short)176, (unsigned short)176, (unsigned short)176, (unsigned short)176, (unsigned short)176, (unsigned short)177, (unsigned short)177, (unsigned short)177, (unsigned short)177, (unsigned short)177, (unsigned short)177, (unsigned short)177, (unsigned short)177, (unsigned short)177, (unsigned short)177, (unsigned short)178, (unsigned short)178, (unsigned short)178, (unsigned short)178, (unsigned short)178, (unsigned short)178, (unsigned short)178, (unsigned short)178, (unsigned short)178, (unsigned short)178, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)179, (unsigned short)180, (unsigned short)180, (unsigned short)181, (unsigned short)181, (unsigned short)181, (unsigned short)181, (unsigned short)181, (unsigned short)181, (unsigned short)181, (unsigned short)181, (unsigned short)181, (unsigned short)181, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)182, (unsigned short)183, (unsigned short)183, (unsigned short)184, (unsigned short)184, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)186, (unsigned short)186, (unsigned short)186, (unsigned short)187, (unsigned short)187, (unsigned short)187, (unsigned short)188, (unsigned short)188, (unsigned short)188, (unsigned short)188, (unsigned short)188, (unsigned short)189, (unsigned short)189, (unsigned short)190, (unsigned short)190, (unsigned short)190, (unsigned short)191, (unsigned short)191, (unsigned short)192, (unsigned short)193, (unsigned short)193, (unsigned short)193, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)194, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)195, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)197, (unsigned short)197, (unsigned short)197, (unsigned short)197, (unsigned short)198, (unsigned short)198, (unsigned short)199, (unsigned short)200, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)202, (unsigned short)202, (unsigned short)203, (unsigned short)203, (unsigned short)204, (unsigned short)204, (unsigned short)205, (unsigned short)206, (unsigned short)206, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)207, (unsigned short)208, (unsigned short)208, (unsigned short)208, (unsigned short)208, (unsigned short)208, (unsigned short)208, (unsigned short)208, (unsigned short)208, (unsigned short)209, (unsigned short)209, (unsigned short)210, (unsigned short)210, (unsigned short)210, (unsigned short)210, (unsigned short)210, (unsigned short)211, (unsigned short)211, (unsigned short)212, (unsigned short)212, (unsigned short)212, (unsigned short)212, (unsigned short)212, (unsigned short)213, (unsigned short)213, (unsigned short)214, (unsigned short)214, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)215, (unsigned short)216, (unsigned short)216, (unsigned short)216, (unsigned short)216, (unsigned short)216, (unsigned short)217, (unsigned short)217, (unsigned short)217, (unsigned short)217, (unsigned short)217, (unsigned short)217, (unsigned short)218, (unsigned short)218, (unsigned short)218, (unsigned short)218, (unsigned short)218, (unsigned short)218, (unsigned short)219, (unsigned short)219, (unsigned short)219, (unsigned short)219, (unsigned short)220, (unsigned short)220, (unsigned short)220, (unsigned short)220, (unsigned short)220, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)222, (unsigned short)223, (unsigned short)223, (unsigned short)223, (unsigned short)224, (unsigned short)224, (unsigned short)224, (unsigned short)224, (unsigned short)225, (unsigned short)225, (unsigned short)225, (unsigned short)225, (unsigned short)225, (unsigned short)226, (unsigned short)226, (unsigned short)227, (unsigned short)227, (unsigned short)227, (unsigned short)227, (unsigned short)228, (unsigned short)228, (unsigned short)229, (unsigned short)229, (unsigned short)230, (unsigned short)230, (unsigned short)230, (unsigned short)230, (unsigned short)230, (unsigned short)230, (unsigned short)231, (unsigned short)231, (unsigned short)232, (unsigned short)232, (unsigned short)233, (unsigned short)233, (unsigned short)234, (unsigned short)234, (unsigned short)234, (unsigned short)235, (unsigned short)235, (unsigned short)236, (unsigned short)236, (unsigned short)237, (unsigned short)237, (unsigned short)237, (unsigned short)237, (unsigned short)237, (unsigned short)237, (unsigned short)238, (unsigned short)238, (unsigned short)238, (unsigned short)239, (unsigned short)239, (unsigned short)240, (unsigned short)240, (unsigned short)240, (unsigned short)241, (unsigned short)241, (unsigned short)241, (unsigned short)242, (unsigned short)243, (unsigned short)243, (unsigned short)244, (unsigned short)244, (unsigned short)245, (unsigned short)245, (unsigned short)245, (unsigned short)246, (unsigned short)246, (unsigned short)246, (unsigned short)246, (unsigned short)246, (unsigned short)246, (unsigned short)246, (unsigned short)247, (unsigned short)247, (unsigned short)247, (unsigned short)247, (unsigned short)247, (unsigned short)248, (unsigned short)249, (unsigned short)249, (unsigned short)250, (unsigned short)250, (unsigned short)251, (unsigned short)251, (unsigned short)251, (unsigned short)251, (unsigned short)252, (unsigned short)252, (unsigned short)253, (unsigned short)253, (unsigned short)253, (unsigned short)253, (unsigned short)253, (unsigned short)254, (unsigned short)254, (unsigned short)255, (unsigned short)256, (unsigned short)256, (unsigned short)257, (unsigned short)257, (unsigned short)258, (unsigned short)259, (unsigned short)259, (unsigned short)259, (unsigned short)259, (unsigned short)259, (unsigned short)259, (unsigned short)260, (unsigned short)260, (unsigned short)260, (unsigned short)261, (unsigned short)261
983 };
984
985 static const yytype_uint8 yyr2[] = 
986 {
987 (unsigned char)0, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)4, (unsigned char)4, (unsigned char)2, (unsigned char)1, (unsigned char)3, (unsigned char)4, (unsigned char)3, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)4, (unsigned char)2, (unsigned char)6, (unsigned char)5, (unsigned char)6, (unsigned char)5, (unsigned char)7, (unsigned char)6, (unsigned char)7, (unsigned char)6, (unsigned char)1, (unsigned char)1, (unsigned char)4, (unsigned char)3, (unsigned char)4, (unsigned char)3, (unsigned char)3, (unsigned char)2, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)4, (unsigned char)3, (unsigned char)4, (unsigned char)3, (unsigned char)3, (unsigned char)2, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)3, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)4, (unsigned char)2, (unsigned char)4, (unsigned char)4, (unsigned char)2, (unsigned char)4, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)4, (unsigned char)1, (unsigned char)3, (unsigned char)3, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)3, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)3, (unsigned char)3, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)5, (unsigned char)1, (unsigned char)3, (unsigned char)3, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)2, (unsigned char)3, (unsigned char)2, (unsigned char)5, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)4, (unsigned char)5, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)4, (unsigned char)5, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)4, (unsigned char)1, (unsigned char)2, (unsigned char)3, (unsigned char)6, (unsigned char)5, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)4, (unsigned char)4, (unsigned char)4, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)4, (unsigned char)4, (unsigned char)4, (unsigned char)1, (unsigned char)5, (unsigned char)4, (unsigned char)4, (unsigned char)3, (unsigned char)5, (unsigned char)6, (unsigned char)5, (unsigned char)5, (unsigned char)4, (unsigned char)6, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)3, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)3, (unsigned char)3, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)9, (unsigned char)9, (unsigned char)7, (unsigned char)7, (unsigned char)5, (unsigned char)10, (unsigned char)10, (unsigned char)8, (unsigned char)8, (unsigned char)6, (unsigned char)8, (unsigned char)8, (unsigned char)6, (unsigned char)6, (unsigned char)4, (unsigned char)9, (unsigned char)9, (unsigned char)7, (unsigned char)7, (unsigned char)5, (unsigned char)3, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)5, (unsigned char)2, (unsigned char)2, (unsigned char)4, (unsigned char)5, (unsigned char)7, (unsigned char)7, (unsigned char)5, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)3, (unsigned char)2, (unsigned char)3, (unsigned char)3, (unsigned char)3, (unsigned char)4, (unsigned char)4, (unsigned char)2, (unsigned char)3, (unsigned char)3, (unsigned char)4, (unsigned char)3, (unsigned char)2, (unsigned char)3, (unsigned char)3, (unsigned char)4, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)1, (unsigned char)2, (unsigned char)3, (unsigned char)2, (unsigned char)1, (unsigned char)3, (unsigned char)4, (unsigned char)3, (unsigned char)4, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)3, (unsigned char)2, (unsigned char)3, (unsigned char)3, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)3, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)3, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)3, (unsigned char)4, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)4, (unsigned char)3, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)3, (unsigned char)1, (unsigned char)2, (unsigned char)5, (unsigned char)7, (unsigned char)5, (unsigned char)5, (unsigned char)7, (unsigned char)6, (unsigned char)7, (unsigned char)4, (unsigned char)5, (unsigned char)4, (unsigned char)3, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)1, (unsigned char)5, (unsigned char)4, (unsigned char)5, (unsigned char)4, (unsigned char)4, (unsigned char)3, (unsigned char)4, (unsigned char)3, (unsigned char)3, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)2, (unsigned char)3, (unsigned char)1, (unsigned char)1, (unsigned char)3, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)2, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)1, (unsigned char)2, (unsigned char)1, (unsigned char)3
988 };
989
990 static const yytype_uint16 yydefact[] = 
991 {
992 (unsigned short)0, (unsigned short)17, (unsigned short)7, (unsigned short)201, (unsigned short)202, (unsigned short)203, (unsigned short)204, (unsigned short)205, (unsigned short)229, (unsigned short)230, (unsigned short)231, (unsigned short)232, (unsigned short)233, (unsigned short)235, (unsigned short)238, (unsigned short)239, (unsigned short)236, (unsigned short)237, (unsigned short)225, (unsigned short)226, (unsigned short)228, (unsigned short)234, (unsigned short)296, (unsigned short)297, (unsigned short)0, (unsigned short)419, (unsigned short)247, (unsigned short)206, (unsigned short)207, (unsigned short)209, (unsigned short)248, (unsigned short)249, (unsigned short)240, (unsigned short)0, (unsigned short)0, (unsigned short)210, (unsigned short)211, (unsigned short)165, (unsigned short)172, (unsigned short)243, (unsigned short)8, (unsigned short)5, (unsigned short)0, (unsigned short)171, (unsigned short)418, (unsigned short)159, (unsigned short)224, (unsigned short)0, (unsigned short)208, (unsigned short)227, (unsigned short)161, (unsigned short)163, (unsigned short)167, (unsigned short)241, (unsigned short)0, (unsigned short)242, (unsigned short)169, (unsigned short)503, (unsigned short)0, (unsigned short)0, (unsigned short)339, (unsigned short)338, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)4, (unsigned short)2, (unsigned short)3, (unsigned short)6, (unsigned short)406, (unsigned short)0, (unsigned short)0, (unsigned short)416, (unsigned short)166, (unsigned short)381, (unsigned short)160, (unsigned short)224, (unsigned short)162, (unsigned short)164, (unsigned short)168, (unsigned short)170, (unsigned short)366, (unsigned short)415, (unsigned short)414, (unsigned short)396, (unsigned short)0, (unsigned short)395, (unsigned short)377, (unsigned short)365, (unsigned short)0, (unsigned short)0, (unsigned short)8, (unsigned short)281, (unsigned short)280, (unsigned short)0, (unsigned short)0, (unsigned short)1, (unsigned short)347, (unsigned short)0, (unsigned short)345, (unsigned short)0, (unsigned short)0, (unsigned short)35, (unsigned short)22, (unsigned short)470, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)76, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)71, (unsigned short)0, (unsigned short)74, (unsigned short)0, (unsigned short)70, (unsigned short)72, (unsigned short)73, (unsigned short)75, (unsigned short)0, (unsigned short)20, (unsigned short)36, (unsigned short)18, (unsigned short)67, (unsigned short)66, (unsigned short)77, (unsigned short)0, (unsigned short)79, (unsigned short)83, (unsigned short)86, (unsigned short)90, (unsigned short)0, (unsigned short)95, (unsigned short)98, (unsigned short)100, (unsigned short)102, (unsigned short)104, (unsigned short)106, (unsigned short)108, (unsigned short)110, (unsigned short)0, (unsigned short)23, (unsigned short)21, (unsigned short)0, (unsigned short)0, (unsigned short)243, (unsigned short)20, (unsigned short)77, (unsigned short)287, (unsigned short)284, (unsigned short)149, (unsigned short)151, (unsigned short)153, (unsigned short)157, (unsigned short)286, (unsigned short)289, (unsigned short)288, (unsigned short)294, (unsigned short)0, (unsigned short)155, (unsigned short)404, (unsigned short)407, (unsigned short)408, (unsigned short)356, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)410, (unsigned short)412, (unsigned short)350, (unsigned short)0, (unsigned short)126, (unsigned short)0, (unsigned short)0, (unsigned short)381, (unsigned short)0, (unsigned short)417, (unsigned short)0, (unsigned short)369, (unsigned short)398, (unsigned short)397, (unsigned short)368, (unsigned short)0, (unsigned short)0, (unsigned short)380, (unsigned short)391, (unsigned short)0, (unsigned short)394, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)367, (unsigned short)378, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)330, (unsigned short)273, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)20, (unsigned short)0, (unsigned short)0, (unsigned short)224, (unsigned short)0, (unsigned short)301, (unsigned short)0, (unsigned short)329, (unsigned short)298, (unsigned short)0, (unsigned short)12, (unsigned short)386, (unsigned short)0, (unsigned short)0, (unsigned short)21, (unsigned short)327, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)283, (unsigned short)282, (unsigned short)504, (unsigned short)0, (unsigned short)0, (unsigned short)340, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)45, (unsigned short)69, (unsigned short)68, (unsigned short)61, (unsigned short)0, (unsigned short)57, (unsigned short)58, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)64, (unsigned short)26, (unsigned short)124, (unsigned short)0, (unsigned short)422, (unsigned short)131, (unsigned short)133, (unsigned short)137, (unsigned short)135, (unsigned short)0, (unsigned short)24, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)42, (unsigned short)43, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)114, (unsigned short)115, (unsigned short)116, (unsigned short)117, (unsigned short)118, (unsigned short)119, (unsigned short)120, (unsigned short)121, (unsigned short)122, (unsigned short)123, (unsigned short)113, (unsigned short)0, (unsigned short)59, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)91, (unsigned short)0, (unsigned short)0, (unsigned short)89, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)244, (unsigned short)245, (unsigned short)246, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)150, (unsigned short)224, (unsigned short)152, (unsigned short)154, (unsigned short)158, (unsigned short)156, (unsigned short)285, (unsigned short)365, (unsigned short)0, (unsigned short)10, (unsigned short)9, (unsigned short)0, (unsigned short)405, (unsigned short)409, (unsigned short)349, (unsigned short)382, (unsigned short)357, (unsigned short)0, (unsigned short)352, (unsigned short)351, (unsigned short)0, (unsigned short)370, (unsigned short)379, (unsigned short)358, (unsigned short)0, (unsigned short)353, (unsigned short)0, (unsigned short)0, (unsigned short)384, (unsigned short)0, (unsigned short)0, (unsigned short)392, (unsigned short)393, (unsigned short)0, (unsigned short)212, (unsigned short)213, (unsigned short)216, (unsigned short)215, (unsigned short)214, (unsigned short)0, (unsigned short)217, (unsigned short)219, (unsigned short)0, (unsigned short)251, (unsigned short)252, (unsigned short)253, (unsigned short)254, (unsigned short)255, (unsigned short)257, (unsigned short)260, (unsigned short)261, (unsigned short)258, (unsigned short)259, (unsigned short)250, (unsigned short)256, (unsigned short)0, (unsigned short)269, (unsigned short)262, (unsigned short)0, (unsigned short)0, (unsigned short)265, (unsigned short)179, (unsigned short)0, (unsigned short)173, (unsigned short)175, (unsigned short)177, (unsigned short)263, (unsigned short)0, (unsigned short)264, (unsigned short)0, (unsigned short)16, (unsigned short)71, (unsigned short)0, (unsigned short)20, (unsigned short)0, (unsigned short)450, (unsigned short)0, (unsigned short)481, (unsigned short)484, (unsigned short)485, (unsigned short)483, (unsigned short)482, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)324, (unsigned short)381, (unsigned short)224, (unsigned short)0, (unsigned short)331, (unsigned short)399, (unsigned short)11, (unsigned short)333, (unsigned short)0, (unsigned short)388, (unsigned short)0, (unsigned short)271, (unsigned short)299, (unsigned short)0, (unsigned short)328, (unsigned short)0, (unsigned short)387, (unsigned short)326, (unsigned short)325, (unsigned short)0, (unsigned short)272, (unsigned short)0, (unsigned short)278, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)348, (unsigned short)346, (unsigned short)0, (unsigned short)344, (unsigned short)0, (unsigned short)341, (unsigned short)143, (unsigned short)20, (unsigned short)0, (unsigned short)424, (unsigned short)139, (unsigned short)141, (unsigned short)147, (unsigned short)145, (unsigned short)0, (unsigned short)0, (unsigned short)51, (unsigned short)52, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)224, (unsigned short)372, (unsigned short)0, (unsigned short)371, (unsigned short)193, (unsigned short)0, (unsigned short)183, (unsigned short)185, (unsigned short)187, (unsigned short)189, (unsigned short)191, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)19, (unsigned short)0, (unsigned short)132, (unsigned short)134, (unsigned short)138, (unsigned short)136, (unsigned short)423, (unsigned short)0, (unsigned short)0, (unsigned short)498, (unsigned short)0, (unsigned short)476, (unsigned short)67, (unsigned short)430, (unsigned short)429, (unsigned short)0, (unsigned short)490, (unsigned short)44, (unsigned short)0, (unsigned short)495, (unsigned short)491, (unsigned short)501, (unsigned short)494, (unsigned short)0, (unsigned short)0, (unsigned short)478, (unsigned short)0, (unsigned short)41, (unsigned short)38, (unsigned short)54, (unsigned short)0, (unsigned short)53, (unsigned short)40, (unsigned short)0, (unsigned short)112, (unsigned short)111, (unsigned short)80, (unsigned short)81, (unsigned short)82, (unsigned short)84, (unsigned short)85, (unsigned short)87, (unsigned short)88, (unsigned short)93, (unsigned short)94, (unsigned short)92, (unsigned short)96, (unsigned short)97, (unsigned short)99, (unsigned short)101, (unsigned short)103, (unsigned short)105, (unsigned short)107, (unsigned short)0, (unsigned short)286, (unsigned short)291, (unsigned short)290, (unsigned short)368, (unsigned short)293, (unsigned short)292, (unsigned short)295, (unsigned short)411, (unsigned short)413, (unsigned short)359, (unsigned short)355, (unsigned short)354, (unsigned short)385, (unsigned short)383, (unsigned short)421, (unsigned short)223, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)220, (unsigned short)339, (unsigned short)338, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)180, (unsigned short)174, (unsigned short)176, (unsigned short)178, (unsigned short)0, (unsigned short)280, (unsigned short)0, (unsigned short)15, (unsigned short)224, (unsigned short)0, (unsigned short)451, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)453, (unsigned short)20, (unsigned short)0, (unsigned short)442, (unsigned short)0, (unsigned short)444, (unsigned short)433, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)434, (unsigned short)435, (unsigned short)436, (unsigned short)437, (unsigned short)438, (unsigned short)0, (unsigned short)300, (unsigned short)13, (unsigned short)335, (unsigned short)0, (unsigned short)401, (unsigned short)0, (unsigned short)0, (unsigned short)323, (unsigned short)0, (unsigned short)334, (unsigned short)0, (unsigned short)400, (unsigned short)389, (unsigned short)302, (unsigned short)390, (unsigned short)274, (unsigned short)270, (unsigned short)276, (unsigned short)0, (unsigned short)277, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)60, (unsigned short)144, (unsigned short)140, (unsigned short)142, (unsigned short)148, (unsigned short)146, (unsigned short)425, (unsigned short)62, (unsigned short)50, (unsigned short)47, (unsigned short)0, (unsigned short)49, (unsigned short)0, (unsigned short)361, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)375, (unsigned short)374, (unsigned short)0, (unsigned short)0, (unsigned short)373, (unsigned short)0, (unsigned short)0, (unsigned short)194, (unsigned short)184, (unsigned short)186, (unsigned short)188, (unsigned short)190, (unsigned short)192, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)63, (unsigned short)65, (unsigned short)125, (unsigned short)78, (unsigned short)25, (unsigned short)480, (unsigned short)0, (unsigned short)0, (unsigned short)381, (unsigned short)486, (unsigned short)487, (unsigned short)488, (unsigned short)0, (unsigned short)493, (unsigned short)499, (unsigned short)497, (unsigned short)502, (unsigned short)496, (unsigned short)475, (unsigned short)477, (unsigned short)39, (unsigned short)0, (unsigned short)37, (unsigned short)0, (unsigned short)0, (unsigned short)222, (unsigned short)221, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)317, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)283, (unsigned short)282, (unsigned short)14, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)466, (unsigned short)467, (unsigned short)468, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)454, (unsigned short)127, (unsigned short)381, (unsigned short)0, (unsigned short)197, (unsigned short)199, (unsigned short)443, (unsigned short)0, (unsigned short)446, (unsigned short)445, (unsigned short)452, (unsigned short)129, (unsigned short)474, (unsigned short)0, (unsigned short)402, (unsigned short)0, (unsigned short)332, (unsigned short)399, (unsigned short)0, (unsigned short)336, (unsigned short)403, (unsigned short)279, (unsigned short)275, (unsigned short)343, (unsigned short)342, (unsigned short)48, (unsigned short)46, (unsigned short)360, (unsigned short)362, (unsigned short)28, (unsigned short)376, (unsigned short)363, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)30, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)479, (unsigned short)489, (unsigned short)492, (unsigned short)56, (unsigned short)55, (unsigned short)109, (unsigned short)218, (unsigned short)266, (unsigned short)267, (unsigned short)268, (unsigned short)181, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)307, (unsigned short)0, (unsigned short)0, (unsigned short)322, (unsigned short)0, (unsigned short)0, (unsigned short)441, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)465, (unsigned short)469, (unsigned short)0, (unsigned short)439, (unsigned short)0, (unsigned short)0, (unsigned short)128, (unsigned short)0, (unsigned short)473, (unsigned short)401, (unsigned short)0, (unsigned short)0, (unsigned short)400, (unsigned short)0, (unsigned short)364, (unsigned short)27, (unsigned short)195, (unsigned short)32, (unsigned short)0, (unsigned short)0, (unsigned short)29, (unsigned short)34, (unsigned short)0, (unsigned short)0, (unsigned short)315, (unsigned short)0, (unsigned short)316, (unsigned short)182, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)312, (unsigned short)440, (unsigned short)0, (unsigned short)0, (unsigned short)462, (unsigned short)0, (unsigned short)0, (unsigned short)464, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)472, (unsigned short)0, (unsigned short)198, (unsigned short)0, (unsigned short)426, (unsigned short)200, (unsigned short)402, (unsigned short)403, (unsigned short)337, (unsigned short)196, (unsigned short)31, (unsigned short)33, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)305, (unsigned short)0, (unsigned short)306, (unsigned short)0, (unsigned short)320, (unsigned short)0, (unsigned short)321, (unsigned short)0, (unsigned short)0, (unsigned short)455, (unsigned short)457, (unsigned short)458, (unsigned short)0, (unsigned short)463, (unsigned short)0, (unsigned short)0, (unsigned short)130, (unsigned short)471, (unsigned short)431, (unsigned short)0, (unsigned short)313, (unsigned short)314, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)310, (unsigned short)0, (unsigned short)311, (unsigned short)0, (unsigned short)0, (unsigned short)460, (unsigned short)0, (unsigned short)0, (unsigned short)427, (unsigned short)303, (unsigned short)304, (unsigned short)318, (unsigned short)319, (unsigned short)0, (unsigned short)0, (unsigned short)456, (unsigned short)459, (unsigned short)461, (unsigned short)428, (unsigned short)432, (unsigned short)308, (unsigned short)309
993 };
994
995 static const yytype_int16 yydefgoto[] = 
996 {
997 (short)(-1), (short)37, (short)38, (short)122, (short)40, (short)41, (short)205, (short)206, (short)207, (short)208, (short)123, (short)124, (short)125, (short)126, (short)471, (short)238, (short)488, (short)127, (short)150, (short)240, (short)129, (short)130, (short)131, (short)132, (short)133, (short)134, (short)135, (short)136, (short)137, (short)138, (short)139, (short)140, (short)141, (short)142, (short)252, (short)280, (short)563, (short)176, (short)698, (short)254, (short)428, (short)152, (short)211, (short)44, (short)370, (short)447, (short)693, (short)694, (short)45, (short)46, (short)47, (short)348, (short)349, (short)350, (short)48, (short)49, (short)50, (short)51, (short)450, (short)52, (short)53, (short)157, (short)158, (short)159, (short)160, (short)161, (short)54, (short)213, (short)214, (short)215, (short)216, (short)217, (short)396, (short)397, (short)55, (short)56, (short)98, (short)99, (short)81, (short)443, (short)168, (short)444, (short)169, (short)218, (short)219, (short)85, (short)220, (short)87, (short)400, (short)164, (short)221, (short)170, (short)171, (short)172, (short)194, (short)259, (short)433, (short)812, (short)474, (short)841, (short)566, (short)567, (short)568, (short)569, (short)570, (short)384, (short)571, (short)572, (short)573, (short)574, (short)575, (short)144, (short)576, (short)222, (short)145, (short)475, (short)224, (short)476, (short)477, (short)478, (short)479, (short)480, (short)481, (short)482, (short)58
998 };
999
1000 static const yytype_int16 yypact[] = 
1001 {
1002 (short)8560, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)52, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-71), (short)(-55), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-4), (short)(-761), (short)121, (short)7108, (short)(-761), (short)(-761), (short)(-761), (short)10, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)358, (short)(-761), (short)(-761), (short)51, (short)269, (short)248, (short)147, (short)160, (short)6858, (short)49, (short)6060, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)913, (short)7204, (short)6571, (short)839, (short)(-761), (short)24, (short)(-761), (short)33, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)232, (short)(-761), (short)596, (short)430, (short)8032, (short)(-761), (short)(-761), (short)530, (short)201, (short)3800, (short)(-62), (short)(-761), (short)183, (short)53, (short)6858, (short)(-761), (short)210, (short)84, (short)(-761), (short)248, (short)248, (short)(-761), (short)(-761), (short)(-761), (short)6931, (short)6949, (short)6949, (short)8645, (short)6858, (short)(-761), (short)8645, (short)6858, (short)7007, (short)(-761), (short)6186, (short)(-761), (short)401, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)284, (short)26, (short)(-761), (short)(-761), (short)330, (short)(-761), (short)691, (short)6858, (short)(-761), (short)277, (short)328, (short)361, (short)6858, (short)344, (short)466, (short)222, (short)293, (short)313, (short)440, (short)9, (short)(-761), (short)368, (short)(-761), (short)(-761), (short)382, (short)58, (short)284, (short)29, (short)(-761), (short)361, (short)7390, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)341, (short)(-761), (short)(-761), (short)(-761), (short)228, (short)(-761), (short)(-761), (short)913, (short)(-761), (short)(-761), (short)620, (short)394, (short)611, (short)403, (short)355, (short)(-761), (short)(-761), (short)150, (short)(-761), (short)400, (short)839, (short)(-761), (short)153, (short)596, (short)676, (short)232, (short)430, (short)(-761), (short)530, (short)8121, (short)6627, (short)(-761), (short)(-761), (short)6653, (short)(-761), (short)560, (short)415, (short)(-30), (short)81, (short)232, (short)(-761), (short)774, (short)8730, (short)8299, (short)6494, (short)8645, (short)(-761), (short)(-761), (short)406, (short)406, (short)406, (short)367, (short)16, (short)458, (short)5947, (short)153, (short)3918, (short)(-761), (short)251, (short)(-761), (short)(-761), (short)430, (short)(-761), (short)(-761), (short)676, (short)421, (short)423, (short)(-761), (short)5706, (short)4036, (short)4154, (short)439, (short)441, (short)(-761), (short)6858, (short)248, (short)(-761), (short)140, (short)158, (short)6312, (short)(-761), (short)651, (short)(-761), (short)(-761), (short)6709, (short)(-761), (short)(-761), (short)24, (short)7483, (short)8815, (short)7576, (short)8815, (short)6312, (short)(-761), (short)(-761), (short)(-761), (short)28, (short)7850, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)422, (short)453, (short)2994, (short)3130, (short)248, (short)(-761), (short)(-761), (short)5374, (short)248, (short)6858, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)5507, (short)(-761), (short)6858, (short)6858, (short)6858, (short)6858, (short)6858, (short)6858, (short)6858, (short)361, (short)6858, (short)6858, (short)(-761), (short)6858, (short)6858, (short)6858, (short)6858, (short)6858, (short)6858, (short)6858, (short)6858, (short)6858, (short)(-761), (short)(-761), (short)(-761), (short)6060, (short)7297, (short)248, (short)(-761), (short)405, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)515, (short)6060, (short)(-761), (short)(-761), (short)6060, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)8475, (short)(-761), (short)(-761), (short)676, (short)232, (short)(-761), (short)(-761), (short)468, (short)(-761), (short)241, (short)473, (short)(-761), (short)243, (short)487, (short)(-761), (short)(-761), (short)248, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)494, (short)503, (short)(-761), (short)38, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)49, (short)(-761), (short)(-761), (short)505, (short)509, (short)(-761), (short)513, (short)2150, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)506, (short)(-761), (short)8299, (short)(-761), (short)913, (short)6438, (short)404, (short)8387, (short)500, (short)5216, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)5507, (short)866, (short)6858, (short)(-761), (short)20, (short)153, (short)265, (short)(-761), (short)430, (short)(-761), (short)360, (short)676, (short)(-761), (short)81, (short)(-761), (short)(-761), (short)585, (short)(-761), (short)81, (short)(-761), (short)(-761), (short)(-761), (short)4272, (short)(-761), (short)4390, (short)(-761), (short)4508, (short)5706, (short)4626, (short)(-761), (short)(-761), (short)5706, (short)(-761), (short)5706, (short)(-761), (short)(-761), (short)16, (short)512, (short)7850, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)528, (short)248, (short)(-761), (short)(-761), (short)5447, (short)248, (short)6858, (short)7943, (short)6858, (short)278, (short)531, (short)535, (short)559, (short)568, (short)7669, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)6858, (short)564, (short)7762, (short)575, (short)577, (short)(-761), (short)6858, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)6858, (short)401, (short)(-761), (short)3266, (short)(-761), (short)481, (short)(-761), (short)(-761), (short)8299, (short)(-761), (short)(-761), (short)406, (short)(-761), (short)(-761), (short)291, (short)(-761), (short)3402, (short)562, (short)(-761), (short)588, (short)(-761), (short)(-761), (short)(-761), (short)54, (short)(-761), (short)(-761), (short)471, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)277, (short)277, (short)328, (short)328, (short)361, (short)361, (short)361, (short)344, (short)344, (short)466, (short)222, (short)293, (short)313, (short)440, (short)(-33), (short)(-761), (short)(-761), (short)(-761), (short)515, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)6858, (short)580, (short)285, (short)(-761), (short)(-761), (short)(-761), (short)6858, (short)49, (short)6060, (short)154, (short)(-48), (short)(-761), (short)(-761), (short)(-761), (short)30, (short)(-761), (short)49, (short)(-761), (short)153, (short)612, (short)(-761), (short)6858, (short)572, (short)624, (short)628, (short)629, (short)5301, (short)630, (short)248, (short)618, (short)622, (short)5840, (short)248, (short)(-761), (short)72, (short)307, (short)(-761), (short)2459, (short)(-761), (short)(-761), (short)2586, (short)2722, (short)623, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)631, (short)(-761), (short)(-761), (short)(-761), (short)3538, (short)430, (short)81, (short)31, (short)(-761), (short)6858, (short)(-761), (short)81, (short)430, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)4744, (short)(-761), (short)4862, (short)4980, (short)5098, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)189, (short)(-761), (short)517, (short)(-761), (short)646, (short)652, (short)648, (short)531, (short)559, (short)8210, (short)6858, (short)531, (short)6060, (short)6858, (short)661, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)655, (short)657, (short)6858, (short)6858, (short)656, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)643, (short)5507, (short)248, (short)(-761), (short)(-761), (short)(-761), (short)5507, (short)(-761), (short)(-761), (short)(-761), (short)291, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)5507, (short)(-761), (short)6858, (short)396, (short)(-761), (short)(-761), (short)667, (short)673, (short)59, (short)108, (short)406, (short)406, (short)(-761), (short)6060, (short)230, (short)262, (short)659, (short)(-761), (short)(-761), (short)(-761), (short)660, (short)5301, (short)6858, (short)6858, (short)6782, (short)739, (short)5758, (short)663, (short)(-761), (short)(-761), (short)(-761), (short)308, (short)670, (short)5301, (short)(-761), (short)(-761), (short)36, (short)338, (short)(-761), (short)492, (short)(-761), (short)2858, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)669, (short)430, (short)153, (short)(-761), (short)686, (short)676, (short)677, (short)430, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)531, (short)(-761), (short)695, (short)693, (short)340, (short)694, (short)6060, (short)6858, (short)(-761), (short)696, (short)698, (short)6858, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-21), (short)(-34), (short)372, (short)406, (short)406, (short)(-761), (short)406, (short)406, (short)(-761), (short)279, (short)5301, (short)(-761), (short)427, (short)436, (short)5301, (short)437, (short)697, (short)5301, (short)5791, (short)(-761), (short)(-761), (short)6858, (short)(-761), (short)3674, (short)839, (short)(-761), (short)5580, (short)(-761), (short)686, (short)81, (short)81, (short)686, (short)6858, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)386, (short)700, (short)(-761), (short)(-761), (short)702, (short)406, (short)(-761), (short)406, (short)(-761), (short)(-761), (short)167, (short)(-29), (short)185, (short)(-16), (short)406, (short)406, (short)(-761), (short)(-761), (short)5301, (short)5301, (short)(-761), (short)5301, (short)6858, (short)(-761), (short)5301, (short)6800, (short)692, (short)(-761), (short)689, (short)(-761), (short)5580, (short)(-761), (short)(-761), (short)686, (short)686, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)699, (short)703, (short)406, (short)(-761), (short)406, (short)(-761), (short)406, (short)(-761), (short)406, (short)(-761), (short)190, (short)(-1), (short)763, (short)(-761), (short)(-761), (short)448, (short)(-761), (short)5301, (short)490, (short)(-761), (short)(-761), (short)(-761), (short)247, (short)(-761), (short)(-761), (short)704, (short)705, (short)708, (short)709, (short)406, (short)(-761), (short)406, (short)(-761), (short)5301, (short)712, (short)(-761), (short)5301, (short)2348, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)714, (short)718, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)(-761)
1003 };
1004
1005 static const yytype_int16 yypgoto[] = 
1006 {
1007 (short)(-761), (short)(-31), (short)(-761), (short)816, (short)777, (short)4, (short)(-761), (short)(-761), (short)(-761), (short)(-761), (short)0, (short)(-761), (short)(-22), (short)668, (short)(-264), (short)(-761), (short)391, (short)25, (short)195, (short)720, (short)(-761), (short)(-125), (short)363, (short)364, (short)(-7), (short)(-761), (short)443, (short)538, (short)540, (short)563, (short)539, (short)557, (short)(-761), (short)1822, (short)(-49), (short)(-761), (short)(-12), (short)701, (short)(-370), (short)(-761), (short)(-761), (short)(-215), (short)8, (short)(-761), (short)(-761), (short)617, (short)(-761), (short)99, (short)1677, (short)1091, (short)(-761), (short)(-761), (short)(-340), (short)(-761), (short)467, (short)(-761), (short)1380, (short)1846, (short)(-132), (short)1400, (short)(-177), (short)95, (short)104, (short)130, (short)551, (short)(-491), (short)(-188), (short)109, (short)470, (short)(-761), (short)(-761), (short)(-92), (short)(-761), (short)295, (short)(-151), (short)1595, (short)641, (short)650, (short)(-51), (short)(-427), (short)(-26), (short)(-168), (short)(-42), (short)452, (short)(-180), (short)(-761), (short)96, (short)(-67), (short)416, (short)(-761), (short)1146, (short)(-82), (short)(-761), (short)5, (short)(-761), (short)(-761), (short)647, (short)(-760), (short)(-383), (short)(-761), (short)111, (short)(-761), (short)(-761), (short)329, (short)(-761), (short)(-761), (short)35, (short)(-644), (short)(-761), (short)(-761), (short)(-761), (short)(-111), (short)(-761), (short)(-761), (short)521, (short)(-761), (short)(-761), (short)(-761), (short)417, (short)252, (short)419, (short)424, (short)(-761), (short)(-253), (short)(-761)
1008 };
1009
1010 static const yytype_int16 yytable[] = 
1011 {
1012 (short)42, (short)83, (short)487, (short)193, (short)281, (short)57, (short)260, (short)577, (short)43, (short)484, (short)531, (short)375, (short)73, (short)143, (short)564, (short)617, (short)492, (short)82, (short)621, (short)1, (short)378, (short)197, (short)374, (short)1, (short)61, (short)182, (short)300, (short)1, (short)60, (short)1, (short)180, (short)399, (short)1, (short)1, (short)1, (short)787, (short)1, (short)196, (short)761, (short)1, (short)823, (short)342, (short)68, (short)74, (short)62, (short)665, (short)473, (short)473, (short)376, (short)785, (short)840, (short)64, (short)1, (short)827, (short)93, (short)1, (short)1, (short)151, (short)92, (short)97, (short)63, (short)1, (short)1, (short)147, (short)149, (short)669, (short)343, (short)373, (short)850, (short)374, (short)167, (short)374, (short)178, (short)225, (short)68, (short)1, (short)178, (short)2, (short)43, (short)454, (short)2, (short)2, (short)344, (short)237, (short)1, (short)192, (short)340, (short)670, (short)178, (short)459, (short)209, (short)237, (short)341, (short)43, (short)229, (short)376, (short)868, (short)376, (short)228, (short)658, (short)97, (short)97, (short)788, (short)253, (short)332, (short)27, (short)28, (short)824, (short)244, (short)64, (short)29, (short)244, (short)345, (short)346, (short)197, (short)786, (short)245, (short)805, (short)330, (short)247, (short)828, (short)405, (short)65, (short)68, (short)1, (short)89, (short)314, (short)289, (short)66, (short)67, (short)239, (short)724, (short)66, (short)67, (short)329, (short)851, (short)66, (short)67, (short)239, (short)86, (short)301, (short)35, (short)36, (short)69, (short)458, (short)69, (short)177, (short)68, (short)70, (short)68, (short)459, (short)262, (short)307, (short)71, (short)529, (short)580, (short)1, (short)494, (short)495, (short)496, (short)530, (short)262, (short)305, (short)392, (short)262, (short)671, (short)86, (short)68, (short)86, (short)565, (short)655, (short)766, (short)184, (short)487, (short)304, (short)741, (short)656, (short)178, (short)745, (short)178, (short)73, (short)178, (short)375, (short)95, (short)86, (short)178, (short)42, (short)59, (short)227, (short)253, (short)661, (short)720, (short)68, (short)374, (short)43, (short)178, (short)177, (short)545, (short)696, (short)369, (short)74, (short)381, (short)244, (short)368, (short)689, (short)425, (short)232, (short)262, (short)377, (short)68, (short)382, (short)394, (short)178, (short)209, (short)73, (short)641, (short)73, (short)489, (short)425, (short)376, (short)233, (short)178, (short)742, (short)666, (short)667, (short)209, (short)209, (short)209, (short)464, (short)253, (short)319, (short)493, (short)97, (short)66, (short)67, (short)780, (short)426, (short)821, (short)541, (short)317, (short)385, (short)386, (short)387, (short)389, (short)68, (short)244, (short)446, (short)244, (short)446, (short)426, (short)368, (short)1, (short)368, (short)473, (short)307, (short)825, (short)491, (short)128, (short)182, (short)733, (short)848, (short)330, (short)232, (short)485, (short)196, (short)69, (short)473, (short)490, (short)177, (short)96, (short)374, (short)326, (short)614, (short)86, (short)421, (short)184, (short)422, (short)86, (short)374, (short)630, (short)232, (short)86, (short)100, (short)501, (short)502, (short)261, (short)503, (short)634, (short)342, (short)511, (short)668, (short)184, (short)423, (short)644, (short)424, (short)101, (short)376, (short)86, (short)151, (short)746, (short)747, (short)242, (short)243, (short)822, (short)376, (short)715, (short)42, (short)68, (short)402, (short)151, (short)128, (short)656, (short)151, (short)343, (short)43, (short)627, (short)198, (short)409, (short)226, (short)149, (short)405, (short)826, (short)405, (short)627, (short)405, (short)42, (short)849, (short)703, (short)178, (short)344, (short)520, (short)749, (short)750, (short)43, (short)412, (short)414, (short)416, (short)263, (short)264, (short)265, (short)638, (short)526, (short)318, (short)231, (short)542, (short)296, (short)73, (short)186, (short)794, (short)795, (short)319, (short)73, (short)187, (short)565, (short)565, (short)639, (short)290, (short)291, (short)615, (short)345, (short)346, (short)1, (short)522, (short)533, (short)524, (short)473, (short)748, (short)532, (short)253, (short)856, (short)538, (short)287, (short)288, (short)406, (short)368, (short)543, (short)261, (short)74, (short)261, (short)92, (short)381, (short)68, (short)244, (short)857, (short)562, (short)407, (short)2, (short)583, (short)489, (short)282, (short)69, (short)178, (short)735, (short)440, (short)68, (short)178, (short)128, (short)601, (short)751, (short)584, (short)512, (short)178, (short)606, (short)178, (short)283, (short)284, (short)104, (short)1, (short)178, (short)513, (short)637, (short)512, (short)209, (short)647, (short)209, (short)796, (short)209, (short)209, (short)209, (short)261, (short)516, (short)209, (short)297, (short)209, (short)86, (short)648, (short)68, (short)612, (short)244, (short)459, (short)459, (short)427, (short)27, (short)28, (short)608, (short)514, (short)128, (short)29, (short)611, (short)29, (short)42, (short)690, (short)763, (short)298, (short)456, (short)266, (short)517, (short)624, (short)43, (short)267, (short)268, (short)368, (short)285, (short)286, (short)778, (short)624, (short)299, (short)292, (short)293, (short)368, (short)767, (short)128, (short)319, (short)128, (short)329, (short)263, (short)264, (short)265, (short)35, (short)36, (short)35, (short)36, (short)768, (short)643, (short)316, (short)128, (short)86, (short)325, (short)(-381), (short)(-381), (short)294, (short)295, (short)565, (short)(-381), (short)302, (short)662, (short)789, (short)86, (short)263, (short)264, (short)265, (short)402, (short)585, (short)90, (short)319, (short)84, (short)128, (short)409, (short)303, (short)589, (short)816, (short)388, (short)383, (short)405, (short)591, (short)405, (short)405, (short)405, (short)319, (short)1, (short)322, (short)646, (short)738, (short)808, (short)(-381), (short)(-381), (short)659, (short)69, (short)459, (short)324, (short)306, (short)327, (short)84, (short)695, (short)84, (short)71, (short)595, (short)597, (short)183, (short)151, (short)598, (short)339, (short)599, (short)1, (short)2, (short)664, (short)149, (short)722, (short)465, (short)262, (short)84, (short)383, (short)672, (short)798, (short)674, (short)189, (short)178, (short)687, (short)673, (short)459, (short)190, (short)473, (short)799, (short)801, (short)562, (short)410, (short)683, (short)411, (short)459, (short)459, (short)688, (short)65, (short)68, (short)1, (short)853, (short)692, (short)27, (short)28, (short)562, (short)562, (short)459, (short)29, (short)466, (short)266, (short)417, (short)128, (short)418, (short)267, (short)268, (short)128, (short)27, (short)28, (short)178, (short)178, (short)521, (short)29, (short)102, (short)178, (short)1, (short)103, (short)104, (short)390, (short)657, (short)459, (short)523, (short)209, (short)266, (short)209, (short)209, (short)209, (short)267, (short)268, (short)35, (short)36, (short)27, (short)28, (short)855, (short)736, (short)525, (short)29, (short)527, (short)223, (short)459, (short)2, (short)642, (short)151, (short)35, (short)36, (short)528, (short)42, (short)534, (short)65, (short)149, (short)1, (short)535, (short)769, (short)536, (short)43, (short)600, (short)84, (short)306, (short)183, (short)128, (short)84, (short)128, (short)71, (short)548, (short)84, (short)716, (short)459, (short)35, (short)36, (short)184, (short)68, (short)607, (short)70, (short)619, (short)183, (short)497, (short)498, (short)71, (short)499, (short)500, (short)84, (short)128, (short)620, (short)108, (short)109, (short)434, (short)435, (short)436, (short)86, (short)151, (short)398, (short)68, (short)681, (short)755, (short)756, (short)758, (short)149, (short)27, (short)28, (short)66, (short)67, (short)440, (short)29, (short)(-420), (short)562, (short)589, (short)1, (short)699, (short)622, (short)(-420), (short)591, (short)632, (short)27, (short)28, (short)111, (short)112, (short)562, (short)29, (short)635, (short)68, (short)636, (short)(-381), (short)(-381), (short)660, (short)562, (short)653, (short)(-381), (short)241, (short)743, (short)744, (short)117, (short)677, (short)178, (short)35, (short)36, (short)178, (short)269, (short)270, (short)271, (short)272, (short)273, (short)274, (short)275, (short)276, (short)277, (short)278, (short)151, (short)811, (short)35, (short)36, (short)128, (short)654, (short)695, (short)149, (short)323, (short)675, (short)128, (short)(-381), (short)(-381), (short)66, (short)67, (short)223, (short)(-381), (short)(-381), (short)504, (short)505, (short)678, (short)(-381), (short)234, (short)235, (short)679, (short)680, (short)682, (short)223, (short)223, (short)223, (short)128, (short)27, (short)28, (short)684, (short)562, (short)128, (short)29, (short)685, (short)562, (short)210, (short)700, (short)562, (short)811, (short)717, (short)128, (short)128, (short)701, (short)437, (short)178, (short)718, (short)719, (short)438, (short)439, (short)178, (short)178, (short)726, (short)727, (short)731, (short)342, (short)728, (short)732, (short)84, (short)790, (short)791, (short)739, (short)792, (short)793, (short)35, (short)36, (short)754, (short)740, (short)834, (short)177, (short)753, (short)837, (short)752, (short)759, (short)230, (short)762, (short)562, (short)562, (short)765, (short)562, (short)343, (short)764, (short)562, (short)770, (short)190, (short)811, (short)699, (short)775, (short)246, (short)776, (short)802, (short)248, (short)777, (short)779, (short)39, (short)782, (short)344, (short)783, (short)819, (short)817, (short)820, (short)818, (short)279, (short)839, (short)838, (short)852, (short)610, (short)829, (short)830, (short)91, (short)84, (short)250, (short)506, (short)842, (short)562, (short)507, (short)509, (short)843, (short)858, (short)859, (short)1, (short)84, (short)860, (short)861, (short)865, (short)581, (short)345, (short)346, (short)869, (short)128, (short)562, (short)588, (short)870, (short)562, (short)844, (short)510, (short)845, (short)39, (short)846, (short)508, (short)847, (short)86, (short)797, (short)455, (short)809, (short)586, (short)800, (short)1, (short)518, (short)803, (short)128, (short)128, (short)128, (short)128, (short)590, (short)128, (short)706, (short)146, (short)148, (short)210, (short)420, (short)862, (short)128, (short)863, (short)39, (short)174, (short)335, (short)645, (short)347, (short)338, (short)128, (short)210, (short)210, (short)210, (short)457, (short)697, (short)650, (short)734, (short)651, (short)39, (short)0, (short)0, (short)0, (short)652, (short)148, (short)0, (short)0, (short)831, (short)832, (short)0, (short)833, (short)27, (short)28, (short)835, (short)0, (short)0, (short)29, (short)0, (short)0, (short)0, (short)0, (short)0, (short)39, (short)398, (short)0, (short)39, (short)0, (short)470, (short)470, (short)148, (short)419, (short)223, (short)0, (short)223, (short)0, (short)223, (short)223, (short)223, (short)27, (short)28, (short)223, (short)0, (short)223, (short)29, (short)0, (short)854, (short)128, (short)35, (short)36, (short)69, (short)128, (short)0, (short)177, (short)128, (short)128, (short)18, (short)19, (short)0, (short)0, (short)0, (short)0, (short)864, (short)128, (short)0, (short)866, (short)0, (short)39, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)177, (short)578, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)128, (short)128, (short)0, (short)128, (short)128, (short)183, (short)128, (short)128, (short)0, (short)39, (short)334, (short)0, (short)128, (short)337, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)39, (short)84, (short)39, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)39, (short)0, (short)148, (short)0, (short)128, (short)0, (short)0, (short)704, (short)707, (short)0, (short)0, (short)0, (short)710, (short)0, (short)148, (short)148, (short)148, (short)0, (short)0, (short)0, (short)128, (short)0, (short)0, (short)128, (short)128, (short)148, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)39, (short)0, (short)39, (short)0, (short)148, (short)0, (short)0, (short)0, (short)0, (short)39, (short)0, (short)0, (short)0, (short)210, (short)0, (short)0, (short)148, (short)148, (short)0, (short)210, (short)0, (short)210, (short)0, (short)210, (short)210, (short)210, (short)0, (short)0, (short)210, (short)0, (short)210, (short)0, (short)579, (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, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)223, (short)0, (short)223, (short)223, (short)223, (short)148, (short)39, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)148, (short)0, (short)76, (short)148, (short)470, (short)0, (short)0, (short)0, (short)0, (short)39, (short)616, (short)0, (short)0, (short)94, (short)0, (short)0, (short)0, (short)470, (short)0, (short)0, (short)0, (short)0, (short)631, (short)0, (short)0, (short)771, (short)0, (short)0, (short)774, (short)76, (short)0, (short)179, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)188, (short)0, (short)0, (short)0, (short)0, (short)195, (short)0, (short)212, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)88, (short)0, (short)0, (short)0, (short)39, (short)0, (short)0, (short)148, (short)0, (short)39, (short)0, (short)148, (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)165, (short)88, (short)0, (short)181, (short)84, (short)0, (short)0, (short)185, (short)0, (short)813, (short)814, (short)0, (short)0, (short)148, (short)0, (short)148, (short)0, (short)148, (short)148, (short)148, (short)0, (short)0, (short)148, (short)0, (short)148, (short)0, (short)0, (short)0, (short)309, (short)39, (short)0, (short)0, (short)0, (short)470, (short)0, (short)676, (short)0, (short)0, (short)0, (short)0, (short)0, (short)39, (short)0, (short)0, (short)0, (short)188, (short)0, (short)0, (short)210, (short)0, (short)210, (short)210, (short)210, (short)179, (short)0, (short)0, (short)188, (short)195, (short)0, (short)0, (short)0, (short)195, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)148, (short)0, (short)709, (short)0, (short)0, (short)39, (short)0, (short)212, (short)179, (short)0, (short)0, (short)0, (short)0, (short)148, (short)315, (short)0, (short)0, (short)0, (short)395, (short)0, (short)212, (short)0, (short)0, (short)0, (short)0, (short)0, (short)321, (short)0, (short)408, (short)0, (short)0, (short)470, (short)212, (short)212, (short)212, (short)0, (short)0, (short)723, (short)0, (short)181, (short)725, (short)328, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)729, (short)730, (short)0, (short)442, (short)0, (short)442, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)309, (short)0, (short)181, (short)0, (short)0, (short)0, (short)663, (short)148, (short)0, (short)0, (short)0, (short)0, (short)401, (short)403, (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, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)39, (short)0, (short)0, (short)148, (short)148, (short)0, (short)0, (short)0, (short)0, (short)0, (short)445, (short)0, (short)445, (short)0, (short)0, (short)148, (short)309, (short)0, (short)0, (short)315, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)148, (short)0, (short)148, (short)148, (short)148, (short)0, (short)0, (short)0, (short)195, (short)0, (short)0, (short)0, (short)77, (short)0, (short)0, (short)0, (short)0, (short)781, (short)0, (short)0, (short)0, (short)784, (short)0, (short)470, (short)39, (short)0, (short)0, (short)148, (short)0, (short)0, (short)0, (short)0, (short)79, (short)154, (short)0, (short)0, (short)0, (short)0, (short)163, (short)0, (short)0, (short)315, (short)0, (short)0, (short)515, (short)0, (short)0, (short)0, (short)0, (short)0, (short)309, (short)0, (short)0, (short)156, (short)806, (short)544, (short)0, (short)212, (short)0, (short)0, (short)546, (short)0, (short)0, (short)0, (short)0, (short)815, (short)0, (short)0, (short)0, (short)0, (short)0, (short)179, (short)0, (short)0, (short)148, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)587, (short)0, (short)0, (short)255, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)212, (short)0, (short)212, (short)0, (short)212, (short)212, (short)212, (short)0, (short)0, (short)212, (short)148, (short)212, (short)257, (short)315, (short)0, (short)0, (short)309, (short)0, (short)0, (short)0, (short)0, (short)0, (short)165, (short)181, (short)0, (short)0, (short)0, (short)0, (short)442, (short)310, (short)0, (short)0, (short)0, (short)0, (short)181, (short)442, (short)0, (short)0, (short)582, (short)148, (short)0, (short)320, (short)0, (short)442, (short)0, (short)0, (short)0, (short)0, (short)0, (short)312, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)395, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)315, (short)0, (short)0, (short)0, (short)0, (short)372, (short)0, (short)0, (short)148, (short)0, (short)0, (short)0, (short)445, (short)0, (short)618, (short)0, (short)0, (short)77, (short)0, (short)445, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)445, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)79, (short)0, (short)0, (short)0, (short)0, (short)429, (short)0, (short)0, (short)401, (short)0, (short)0, (short)0, (short)0, (short)0, (short)77, (short)449, (short)77, (short)449, (short)429, (short)0, (short)0, (short)0, (short)0, (short)460, (short)0, (short)431, (short)0, (short)80, (short)0, (short)0, (short)154, (short)154, (short)0, (short)0, (short)79, (short)451, (short)79, (short)451, (short)431, (short)0, (short)0, (short)0, (short)0, (short)462, (short)0, (short)546, (short)0, (short)0, (short)162, (short)0, (short)156, (short)156, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)705, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)154, (short)212, (short)0, (short)212, (short)212, (short)212, (short)0, (short)328, (short)0, (short)0, (short)0, (short)154, (short)0, (short)0, (short)154, (short)0, (short)0, (short)0, (short)0, (short)0, (short)156, (short)0, (short)0, (short)0, (short)0, (short)258, (short)181, (short)0, (short)0, (short)0, (short)0, (short)156, (short)0, (short)0, (short)156, (short)75, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)708, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)153, (short)0, (short)0, (short)0, (short)0, (short)0, (short)313, (short)0, (short)0, (short)540, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)77, (short)0, (short)163, (short)255, (short)0, (short)77, (short)0, (short)154, (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)79, (short)0, (short)0, (short)257, (short)0, (short)79, (short)0, (short)156, (short)0, (short)188, (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)773, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)80, (short)0, (short)602, (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, (short)0, (short)0, (short)626, (short)604, (short)308, (short)0, (short)432, (short)0, (short)0, (short)0, (short)626, (short)0, (short)0, (short)0, (short)0, (short)80, (short)452, (short)80, (short)452, (short)432, (short)0, (short)0, (short)628, (short)154, (short)463, (short)0, (short)772, (short)0, (short)310, (short)0, (short)628, (short)162, (short)162, (short)179, (short)0, (short)0, (short)154, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)156, (short)0, (short)0, (short)0, (short)0, (short)312, (short)0, (short)0, (short)371, (short)0, (short)0, (short)0, (short)0, (short)156, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)75, (short)78, (short)0, (short)0, (short)0, (short)175, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)162, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)155, (short)162, (short)0, (short)181, (short)162, (short)0, (short)154, (short)175, (short)0, (short)0, (short)0, (short)0, (short)75, (short)448, (short)75, (short)448, (short)0, (short)0, (short)0, (short)0, (short)0, (short)175, (short)0, (short)0, (short)175, (short)0, (short)156, (short)0, (short)153, (short)153, (short)0, (short)0, (short)0, (short)0, (short)0, (short)310, (short)0, (short)0, (short)154, (short)154, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)154, (short)256, (short)0, (short)0, (short)0, (short)312, (short)0, (short)0, (short)156, (short)156, (short)0, (short)0, (short)80, (short)0, (short)0, (short)258, (short)0, (short)80, (short)0, (short)162, (short)156, (short)0, (short)153, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)153, (short)0, (short)0, (short)153, (short)0, (short)311, (short)0, (short)0, (short)0, (short)154, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)175, (short)0, (short)0, (short)175, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)156, (short)605, (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, (short)0, (short)0, (short)629, (short)0, (short)0, (short)0, (short)0, (short)539, (short)0, (short)154, (short)629, (short)0, (short)0, (short)175, (short)75, (short)0, (short)0, (short)78, (short)0, (short)75, (short)0, (short)153, (short)0, (short)162, (short)0, (short)0, (short)0, (short)0, (short)313, (short)156, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)162, (short)154, (short)0, (short)0, (short)0, (short)0, (short)430, (short)472, (short)472, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)78, (short)0, (short)78, (short)0, (short)430, (short)0, (short)156, (short)0, (short)0, (short)461, (short)0, (short)0, (short)0, (short)0, (short)0, (short)154, (short)155, (short)155, (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)625, (short)0, (short)156, (short)0, (short)0, (short)0, (short)0, (short)162, (short)625, (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)153, (short)154, (short)0, (short)0, (short)0, (short)308, (short)155, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)153, (short)0, (short)313, (short)0, (short)155, (short)162, (short)162, (short)155, (short)156, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)162, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)351, (short)352, (short)353, (short)354, (short)355, (short)356, (short)357, (short)358, (short)359, (short)360, (short)18, (short)19, (short)361, (short)362, (short)22, (short)23, (short)363, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)472, (short)153, (short)175, (short)0, (short)364, (short)162, (short)0, (short)0, (short)0, (short)0, (short)0, (short)78, (short)27, (short)28, (short)256, (short)0, (short)78, (short)29, (short)155, (short)0, (short)0, (short)0, (short)0, (short)365, (short)0, (short)366, (short)0, (short)0, (short)0, (short)0, (short)308, (short)0, (short)0, (short)153, (short)153, (short)0, (short)0, (short)0, (short)367, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)153, (short)0, (short)0, (short)35, (short)36, (short)69, (short)175, (short)162, (short)306, (short)0, (short)0, (short)0, (short)0, (short)71, (short)0, (short)0, (short)0, (short)603, (short)175, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)537, (short)0, (short)0, (short)0, (short)0, (short)472, (short)0, (short)162, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)153, (short)0, (short)0, (short)0, (short)472, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)155, (short)0, (short)0, (short)0, (short)0, (short)311, (short)0, (short)162, (short)0, (short)0, (short)0, (short)0, (short)0, (short)155, (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, (short)0, (short)0, (short)153, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)162, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)175, (short)0, (short)0, (short)153, (short)0, (short)2, (short)0, (short)0, (short)0, (short)0, (short)0, (short)155, (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, (short)0, (short)0, (short)0, (short)472, (short)153, (short)0, (short)0, (short)0, (short)175, (short)0, (short)0, (short)0, (short)311, (short)0, (short)0, (short)155, (short)155, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)155, (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)175, (short)153, (short)0, (short)175, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)0, (short)0, (short)175, (short)175, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)1, (short)115, (short)472, (short)116, (short)117, (short)0, (short)155, (short)472, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)737, (short)0, (short)0, (short)810, (short)867, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)0, (short)0, (short)0, (short)0, (short)0, (short)155, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)155, (short)32, (short)0, (short)33, (short)0, (short)0, (short)175, (short)0, (short)0, (short)0, (short)175, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)155, (short)0, (short)177, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)175, (short)102, (short)472, (short)1, (short)103, (short)104, (short)105, (short)691, (short)106, (short)107, (short)0, (short)175, (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)155, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)0, (short)549, (short)550, (short)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)0, (short)0, (short)0, (short)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)560, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)561, (short)383, (short)(-448), (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)0, (short)549, (short)550, (short)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)0, (short)0, (short)0, (short)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)560, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)561, (short)383, (short)(-447), (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)0, (short)549, (short)550, (short)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)0, (short)0, (short)0, (short)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)560, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)561, (short)383, (short)(-449), (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)467, (short)468, (short)469, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)467, (short)468, (short)483, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)467, (short)468, (short)640, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)649, (short)468, (short)(-500), (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)467, (short)468, (short)702, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)467, (short)468, (short)807, (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, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)204, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)404, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)413, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)415, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)592, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)593, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)594, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)596, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)711, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)712, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)713, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)201, (short)0, (short)202, (short)117, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)0, (short)714, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)0, (short)549, (short)550, (short)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)0, (short)0, (short)0, (short)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)560, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)102, (short)33, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)2, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)561, (short)383, (short)0, (short)549, (short)550, (short)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)561, (short)383, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)486, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)102, (short)468, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)108, (short)109, (short)110, (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)2, (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)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)609, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)102, (short)468, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)468, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (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, (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)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)102, (short)0, (short)1, (short)103, (short)104, (short)0, (short)0, (short)0, (short)810, (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, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)26, (short)0, (short)199, (short)0, (short)0, (short)108, (short)109, (short)0, (short)27, (short)28, (short)0, (short)0, (short)200, (short)29, (short)2, (short)0, (short)30, (short)31, (short)0, (short)32, (short)102, (short)33, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)2, (short)0, (short)201, (short)0, (short)202, (short)117, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)203, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)108, (short)109, (short)110, (short)0, (short)0, (short)113, (short)2, (short)0, (short)114, (short)0, (short)0, (short)115, (short)760, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)561, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)804, (short)116, (short)117, (short)0, (short)108, (short)109, (short)110, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)561, (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, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)1, (short)0, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)686, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)102, (short)391, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)392, (short)0, (short)393, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)0, (short)0, (short)0, (short)0, (short)0, (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)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)115, (short)251, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)0, (short)0, (short)0, (short)0, (short)0, (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)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)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)114, (short)0, (short)0, (short)241, (short)251, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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, (short)0, (short)0, (short)2, (short)0, (short)0, (short)0, (short)0, (short)0, (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)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)26, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)2, (short)32, (short)0, (short)33, (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)34, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)379, (short)0, (short)0, (short)380, (short)251, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)108, (short)109, (short)110, (short)27, (short)28, (short)0, (short)0, (short)102, (short)29, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (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)111, (short)112, (short)0, (short)2, (short)0, (short)0, (short)0, (short)113, (short)35, (short)36, (short)379, (short)0, (short)0, (short)380, (short)251, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)102, (short)2, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)2, (short)0, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)173, (short)0, (short)118, (short)119, (short)120, (short)121, (short)108, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)0, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)2, (short)0, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)333, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)0, (short)0, (short)336, (short)0, (short)118, (short)119, (short)120, (short)121, (short)108, (short)109, (short)110, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)2, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)251, (short)116, (short)117, (short)2, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (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, (short)0, (short)108, (short)109, (short)110, (short)0, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)2, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)757, (short)116, (short)117, (short)0, (short)111, (short)112, (short)0, (short)118, (short)119, (short)120, (short)121, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)836, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)108, (short)109, (short)110, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)2, (short)111, (short)112, (short)0, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)115, (short)0, (short)116, (short)117, (short)2, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (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, (short)0, (short)108, (short)109, (short)110, (short)0, (short)0, (short)0, (short)102, (short)0, (short)1, (short)103, (short)104, (short)105, (short)0, (short)106, (short)107, (short)0, (short)0, (short)0, (short)108, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)2, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)236, (short)0, (short)116, (short)117, (short)0, (short)111, (short)112, (short)0, (short)118, (short)119, (short)120, (short)121, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)241, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)108, (short)109, (short)110, (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, (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)111, (short)112, (short)1, (short)0, (short)0, (short)0, (short)0, (short)113, (short)0, (short)0, (short)114, (short)0, (short)0, (short)249, (short)0, (short)116, (short)117, (short)0, (short)0, (short)0, (short)0, (short)118, (short)119, (short)120, (short)121, (short)0, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)70, (short)0, (short)0, (short)0, (short)0, (short)71, (short)0, (short)0, (short)72, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)25, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)70, (short)166, (short)0, (short)0, (short)0, (short)71, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)25, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)306, (short)166, (short)0, (short)0, (short)0, (short)71, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)306, (short)0, (short)0, (short)0, (short)0, (short)71, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)440, (short)0, (short)0, (short)0, (short)0, (short)441, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)440, (short)0, (short)0, (short)0, (short)0, (short)453, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)351, (short)352, (short)353, (short)354, (short)355, (short)356, (short)357, (short)358, (short)359, (short)360, (short)18, (short)19, (short)361, (short)362, (short)22, (short)23, (short)24, (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)364, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)0, (short)0, (short)0, (short)365, (short)0, (short)366, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)367, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)440, (short)0, (short)0, (short)0, (short)0, (short)623, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)351, (short)352, (short)353, (short)354, (short)355, (short)356, (short)357, (short)358, (short)359, (short)360, (short)18, (short)19, (short)361, (short)362, (short)22, (short)23, (short)24, (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)364, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)0, (short)0, (short)0, (short)365, (short)0, (short)366, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)367, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)440, (short)2, (short)0, (short)0, (short)0, (short)633, (short)0, (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)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)306, (short)0, (short)0, (short)0, (short)0, (short)71, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)25, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)440, (short)613, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)25, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)0, (short)0, (short)0, (short)191, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)25, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)0, (short)0, (short)0, (short)331, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)25, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)0, (short)0, (short)0, (short)721, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)69, (short)0, (short)0, (short)177, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)0, (short)0, (short)547, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)519, (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)25, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)25, (short)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)8, (short)9, (short)10, (short)11, (short)12, (short)13, (short)14, (short)15, (short)16, (short)17, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)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)26, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)351, (short)352, (short)353, (short)354, (short)355, (short)356, (short)357, (short)358, (short)359, (short)360, (short)18, (short)19, (short)361, (short)362, (short)22, (short)23, (short)363, (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)364, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)0, (short)0, (short)0, (short)365, (short)0, (short)366, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)367, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)351, (short)352, (short)353, (short)354, (short)355, (short)356, (short)357, (short)358, (short)359, (short)360, (short)18, (short)19, (short)361, (short)362, (short)22, (short)23, (short)24, (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)364, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)0, (short)0, (short)0, (short)365, (short)0, (short)366, (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)367, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36
1013 };
1014
1015 static const yytype_int16 yycheck[] = 
1016 {
1017 (short)0, (short)43, (short)266, (short)85, (short)129, (short)0, (short)117, (short)390, (short)0, (short)262, (short)350, (short)199, (short)43, (short)62, (short)384, (short)442, (short)280, (short)43, (short)445, (short)3, (short)200, (short)88, (short)199, (short)3, (short)24, (short)76, (short)17, (short)3, (short)24, (short)3, (short)72, (short)211, (short)3, (short)3, (short)3, (short)69, (short)3, (short)88, (short)682, (short)3, (short)69, (short)3, (short)42, (short)43, (short)115, (short)536, (short)261, (short)262, (short)199, (short)70, (short)810, (short)113, (short)3, (short)69, (short)54, (short)3, (short)3, (short)64, (short)54, (short)59, (short)115, (short)3, (short)3, (short)63, (short)64, (short)113, (short)28, (short)199, (short)69, (short)246, (short)70, (short)248, (short)72, (short)135, (short)74, (short)3, (short)76, (short)28, (short)70, (short)247, (short)28, (short)28, (short)44, (short)105, (short)3, (short)85, (short)116, (short)135, (short)88, (short)122, (short)90, (short)113, (short)122, (short)85, (short)94, (short)246, (short)856, (short)248, (short)94, (short)132, (short)100, (short)101, (short)136, (short)115, (short)186, (short)74, (short)75, (short)136, (short)108, (short)113, (short)79, (short)111, (short)74, (short)75, (short)181, (short)136, (short)108, (short)761, (short)185, (short)111, (short)136, (short)213, (short)1, (short)123, (short)3, (short)115, (short)152, (short)134, (short)112, (short)113, (short)105, (short)622, (short)112, (short)113, (short)185, (short)136, (short)112, (short)113, (short)113, (short)43, (short)131, (short)110, (short)111, (short)112, (short)116, (short)112, (short)115, (short)147, (short)115, (short)149, (short)122, (short)135, (short)152, (short)120, (short)116, (short)135, (short)3, (short)282, (short)283, (short)284, (short)122, (short)135, (short)133, (short)132, (short)135, (short)135, (short)70, (short)167, (short)72, (short)384, (short)116, (short)135, (short)76, (short)437, (short)116, (short)116, (short)122, (short)177, (short)669, (short)179, (short)211, (short)181, (short)370, (short)132, (short)88, (short)185, (short)186, (short)135, (short)135, (short)201, (short)530, (short)618, (short)192, (short)370, (short)186, (short)195, (short)115, (short)377, (short)568, (short)199, (short)200, (short)201, (short)202, (short)199, (short)132, (short)236, (short)122, (short)135, (short)200, (short)209, (short)202, (short)211, (short)212, (short)213, (short)245, (short)468, (short)247, (short)266, (short)249, (short)370, (short)136, (short)221, (short)114, (short)69, (short)70, (short)225, (short)226, (short)227, (short)254, (short)241, (short)122, (short)280, (short)232, (short)112, (short)113, (short)726, (short)236, (short)70, (short)370, (short)11, (short)205, (short)206, (short)207, (short)208, (short)244, (short)245, (short)246, (short)247, (short)248, (short)249, (short)246, (short)3, (short)248, (short)468, (short)254, (short)70, (short)268, (short)62, (short)309, (short)642, (short)70, (short)328, (short)122, (short)263, (short)315, (short)112, (short)481, (short)267, (short)115, (short)0, (short)447, (short)121, (short)440, (short)177, (short)134, (short)179, (short)136, (short)181, (short)455, (short)447, (short)122, (short)185, (short)135, (short)290, (short)291, (short)135, (short)293, (short)455, (short)3, (short)301, (short)136, (short)195, (short)134, (short)473, (short)136, (short)135, (short)447, (short)201, (short)305, (short)69, (short)70, (short)106, (short)107, (short)136, (short)455, (short)116, (short)306, (short)307, (short)212, (short)316, (short)115, (short)122, (short)319, (short)28, (short)306, (short)447, (short)115, (short)221, (short)135, (short)319, (short)412, (short)136, (short)414, (short)455, (short)416, (short)325, (short)136, (short)580, (short)328, (short)44, (short)325, (short)69, (short)70, (short)325, (short)225, (short)226, (short)227, (short)7, (short)8, (short)9, (short)465, (short)341, (short)114, (short)133, (short)370, (short)123, (short)377, (short)115, (short)69, (short)70, (short)122, (short)382, (short)120, (short)568, (short)569, (short)466, (short)12, (short)13, (short)440, (short)74, (short)75, (short)3, (short)121, (short)363, (short)121, (short)580, (short)136, (short)363, (short)380, (short)122, (short)370, (short)10, (short)11, (short)122, (short)370, (short)375, (short)135, (short)377, (short)135, (short)375, (short)380, (short)381, (short)382, (short)136, (short)384, (short)134, (short)28, (short)122, (short)437, (short)112, (short)112, (short)391, (short)656, (short)115, (short)394, (short)395, (short)201, (short)428, (short)136, (short)134, (short)305, (short)401, (short)428, (short)403, (short)127, (short)128, (short)5, (short)3, (short)408, (short)305, (short)459, (short)316, (short)412, (short)122, (short)414, (short)136, (short)416, (short)417, (short)418, (short)135, (short)316, (short)421, (short)129, (short)423, (short)328, (short)134, (short)426, (short)439, (short)428, (short)122, (short)122, (short)236, (short)74, (short)75, (short)434, (short)305, (short)241, (short)79, (short)438, (short)79, (short)440, (short)134, (short)134, (short)130, (short)249, (short)115, (short)316, (short)447, (short)440, (short)119, (short)120, (short)447, (short)124, (short)125, (short)114, (short)455, (short)16, (short)113, (short)114, (short)455, (short)122, (short)266, (short)122, (short)268, (short)515, (short)7, (short)8, (short)9, (short)110, (short)111, (short)110, (short)111, (short)134, (short)473, (short)133, (short)280, (short)380, (short)122, (short)74, (short)75, (short)14, (short)15, (short)697, (short)79, (short)116, (short)534, (short)114, (short)391, (short)7, (short)8, (short)9, (short)395, (short)132, (short)135, (short)122, (short)43, (short)301, (short)401, (short)116, (short)403, (short)114, (short)134, (short)135, (short)595, (short)408, (short)597, (short)598, (short)599, (short)122, (short)3, (short)116, (short)476, (short)116, (short)766, (short)110, (short)111, (short)528, (short)112, (short)122, (short)116, (short)115, (short)121, (short)70, (short)565, (short)72, (short)120, (short)417, (short)418, (short)76, (short)536, (short)421, (short)116, (short)423, (short)3, (short)28, (short)535, (short)536, (short)619, (short)116, (short)135, (short)88, (short)135, (short)542, (short)116, (short)544, (short)115, (short)546, (short)559, (short)544, (short)122, (short)120, (short)766, (short)116, (short)116, (short)554, (short)134, (short)556, (short)134, (short)122, (short)122, (short)560, (short)1, (short)562, (short)3, (short)116, (short)565, (short)74, (short)75, (short)568, (short)569, (short)122, (short)79, (short)119, (short)115, (short)135, (short)380, (short)135, (short)119, (short)120, (short)384, (short)74, (short)75, (short)582, (short)583, (short)116, (short)79, (short)1, (short)587, (short)3, (short)4, (short)5, (short)133, (short)121, (short)122, (short)121, (short)595, (short)115, (short)597, (short)598, (short)599, (short)119, (short)120, (short)110, (short)111, (short)74, (short)75, (short)116, (short)656, (short)121, (short)79, (short)116, (short)90, (short)122, (short)28, (short)133, (short)622, (short)110, (short)111, (short)115, (short)619, (short)115, (short)1, (short)622, (short)3, (short)115, (short)133, (short)113, (short)619, (short)116, (short)177, (short)115, (short)179, (short)437, (short)181, (short)439, (short)120, (short)136, (short)185, (short)121, (short)122, (short)110, (short)111, (short)546, (short)643, (short)116, (short)115, (short)115, (short)195, (short)285, (short)286, (short)120, (short)287, (short)288, (short)201, (short)459, (short)120, (short)71, (short)72, (short)7, (short)8, (short)9, (short)565, (short)669, (short)211, (short)664, (short)554, (short)678, (short)679, (short)680, (short)669, (short)74, (short)75, (short)112, (short)113, (short)115, (short)79, (short)116, (short)677, (short)582, (short)3, (short)569, (short)113, (short)122, (short)587, (short)120, (short)74, (short)75, (short)102, (short)103, (short)689, (short)79, (short)116, (short)692, (short)116, (short)74, (short)75, (short)116, (short)697, (short)136, (short)79, (short)115, (short)666, (short)667, (short)118, (short)132, (short)705, (short)110, (short)111, (short)708, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)25, (short)26, (short)27, (short)726, (short)769, (short)110, (short)111, (short)528, (short)136, (short)767, (short)726, (short)116, (short)116, (short)534, (short)110, (short)111, (short)112, (short)113, (short)213, (short)115, (short)116, (short)294, (short)295, (short)115, (short)120, (short)100, (short)101, (short)115, (short)115, (short)115, (short)225, (short)226, (short)227, (short)554, (short)74, (short)75, (short)134, (short)753, (short)559, (short)79, (short)134, (short)757, (short)90, (short)136, (short)760, (short)810, (short)116, (short)568, (short)569, (short)134, (short)115, (short)767, (short)116, (short)121, (short)119, (short)120, (short)772, (short)773, (short)113, (short)120, (short)120, (short)3, (short)121, (short)136, (short)328, (short)746, (short)747, (short)116, (short)749, (short)750, (short)110, (short)111, (short)677, (short)116, (short)802, (short)115, (short)132, (short)805, (short)135, (short)56, (short)95, (short)134, (short)798, (short)799, (short)689, (short)801, (short)28, (short)133, (short)804, (short)136, (short)120, (short)856, (short)697, (short)132, (short)109, (short)116, (short)115, (short)112, (short)121, (short)121, (short)0, (short)121, (short)44, (short)121, (short)785, (short)121, (short)787, (short)121, (short)133, (short)136, (short)134, (short)64, (short)437, (short)794, (short)795, (short)54, (short)380, (short)113, (short)296, (short)136, (short)836, (short)297, (short)299, (short)136, (short)136, (short)136, (short)3, (short)391, (short)136, (short)136, (short)134, (short)395, (short)74, (short)75, (short)136, (short)656, (short)852, (short)401, (short)136, (short)855, (short)821, (short)300, (short)823, (short)43, (short)825, (short)298, (short)827, (short)767, (short)753, (short)248, (short)767, (short)400, (short)757, (short)3, (short)319, (short)760, (short)677, (short)678, (short)679, (short)680, (short)406, (short)682, (short)583, (short)63, (short)64, (short)213, (short)232, (short)848, (short)689, (short)850, (short)70, (short)71, (short)187, (short)473, (short)116, (short)190, (short)697, (short)225, (short)226, (short)227, (short)249, (short)568, (short)481, (short)647, (short)481, (short)85, (short)(-1), (short)(-1), (short)(-1), (short)481, (short)90, (short)(-1), (short)(-1), (short)798, (short)799, (short)(-1), (short)801, (short)74, (short)75, (short)804, (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)108, (short)473, (short)(-1), (short)111, (short)(-1), (short)261, (short)262, (short)115, (short)231, (short)412, (short)(-1), (short)414, (short)(-1), (short)416, (short)417, (short)418, (short)74, (short)75, (short)421, (short)(-1), (short)423, (short)79, (short)(-1), (short)836, (short)753, (short)110, (short)111, (short)112, (short)757, (short)(-1), (short)115, (short)760, (short)761, (short)44, (short)45, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)852, (short)769, (short)(-1), (short)855, (short)(-1), (short)152, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)798, (short)799, (short)(-1), (short)801, (short)802, (short)546, (short)804, (short)805, (short)(-1), (short)186, (short)187, (short)(-1), (short)810, (short)190, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)200, (short)565, (short)202, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)211, (short)(-1), (short)213, (short)(-1), (short)836, (short)(-1), (short)(-1), (short)582, (short)583, (short)(-1), (short)(-1), (short)(-1), (short)587, (short)(-1), (short)225, (short)226, (short)227, (short)(-1), (short)(-1), (short)(-1), (short)852, (short)(-1), (short)(-1), (short)855, (short)856, (short)236, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)245, (short)(-1), (short)247, (short)(-1), (short)249, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)254, (short)(-1), (short)(-1), (short)(-1), (short)406, (short)(-1), (short)(-1), (short)261, (short)262, (short)(-1), (short)412, (short)(-1), (short)414, (short)(-1), (short)416, (short)417, (short)418, (short)(-1), (short)(-1), (short)421, (short)(-1), (short)423, (short)(-1), (short)392, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)595, (short)(-1), (short)597, (short)598, (short)599, (short)305, (short)306, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)316, (short)(-1), (short)43, (short)319, (short)468, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)325, (short)441, (short)(-1), (short)(-1), (short)54, (short)(-1), (short)(-1), (short)(-1), (short)481, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)453, (short)(-1), (short)(-1), (short)705, (short)(-1), (short)(-1), (short)708, (short)70, (short)(-1), (short)72, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)83, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)88, (short)(-1), (short)90, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)43, (short)(-1), (short)(-1), (short)(-1), (short)377, (short)(-1), (short)(-1), (short)380, (short)(-1), (short)382, (short)(-1), (short)384, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)69, (short)70, (short)(-1), (short)72, (short)767, (short)(-1), (short)(-1), (short)76, (short)(-1), (short)772, (short)773, (short)(-1), (short)(-1), (short)412, (short)(-1), (short)414, (short)(-1), (short)416, (short)417, (short)418, (short)(-1), (short)(-1), (short)421, (short)(-1), (short)423, (short)(-1), (short)(-1), (short)(-1), (short)152, (short)428, (short)(-1), (short)(-1), (short)(-1), (short)580, (short)(-1), (short)549, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)440, (short)(-1), (short)(-1), (short)(-1), (short)169, (short)(-1), (short)(-1), (short)595, (short)(-1), (short)597, (short)598, (short)599, (short)177, (short)(-1), (short)(-1), (short)180, (short)181, (short)(-1), (short)(-1), (short)(-1), (short)185, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)468, (short)(-1), (short)585, (short)(-1), (short)(-1), (short)473, (short)(-1), (short)200, (short)201, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)481, (short)152, (short)(-1), (short)(-1), (short)(-1), (short)211, (short)(-1), (short)213, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)164, (short)(-1), (short)221, (short)(-1), (short)(-1), (short)647, (short)225, (short)226, (short)227, (short)(-1), (short)(-1), (short)620, (short)(-1), (short)177, (short)623, (short)179, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)632, (short)633, (short)(-1), (short)245, (short)(-1), (short)247, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)254, (short)(-1), (short)201, (short)(-1), (short)(-1), (short)(-1), (short)535, (short)536, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)211, (short)212, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)565, (short)(-1), (short)(-1), (short)568, (short)569, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)245, (short)(-1), (short)247, (short)(-1), (short)(-1), (short)580, (short)306, (short)(-1), (short)(-1), (short)254, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)595, (short)(-1), (short)597, (short)598, (short)599, (short)(-1), (short)(-1), (short)(-1), (short)328, (short)(-1), (short)(-1), (short)(-1), (short)43, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)727, (short)(-1), (short)(-1), (short)(-1), (short)731, (short)(-1), (short)766, (short)619, (short)(-1), (short)(-1), (short)622, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)43, (short)64, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)69, (short)(-1), (short)(-1), (short)306, (short)(-1), (short)(-1), (short)309, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)370, (short)(-1), (short)(-1), (short)64, (short)764, (short)375, (short)(-1), (short)377, (short)(-1), (short)(-1), (short)380, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)775, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)391, (short)(-1), (short)(-1), (short)669, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)401, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)412, (short)(-1), (short)414, (short)(-1), (short)416, (short)417, (short)418, (short)(-1), (short)(-1), (short)421, (short)697, (short)423, (short)115, (short)370, (short)(-1), (short)(-1), (short)428, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)379, (short)380, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)440, (short)152, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)391, (short)447, (short)(-1), (short)(-1), (short)395, (short)726, (short)(-1), (short)164, (short)(-1), (short)455, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)152, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)473, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)428, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)199, (short)(-1), (short)(-1), (short)766, (short)(-1), (short)(-1), (short)(-1), (short)440, (short)(-1), (short)442, (short)(-1), (short)(-1), (short)211, (short)(-1), (short)447, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)455, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)211, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)236, (short)(-1), (short)(-1), (short)473, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)245, (short)246, (short)247, (short)248, (short)249, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)254, (short)(-1), (short)236, (short)(-1), (short)43, (short)(-1), (short)(-1), (short)261, (short)262, (short)(-1), (short)(-1), (short)245, (short)246, (short)247, (short)248, (short)249, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)254, (short)(-1), (short)565, (short)(-1), (short)(-1), (short)64, (short)(-1), (short)261, (short)262, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)583, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)305, (short)595, (short)(-1), (short)597, (short)598, (short)599, (short)(-1), (short)546, (short)(-1), (short)(-1), (short)(-1), (short)316, (short)(-1), (short)(-1), (short)319, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)305, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)115, (short)565, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)316, (short)(-1), (short)(-1), (short)319, (short)43, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)583, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)64, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)152, (short)(-1), (short)(-1), (short)370, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)377, (short)(-1), (short)379, (short)380, (short)(-1), (short)382, (short)(-1), (short)384, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)377, (short)(-1), (short)(-1), (short)380, (short)(-1), (short)382, (short)(-1), (short)384, (short)(-1), (short)695, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)708, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)211, (short)(-1), (short)428, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)447, (short)428, (short)152, (short)(-1), (short)236, (short)(-1), (short)(-1), (short)(-1), (short)455, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)245, (short)246, (short)247, (short)248, (short)249, (short)(-1), (short)(-1), (short)447, (short)468, (short)254, (short)(-1), (short)705, (short)(-1), (short)473, (short)(-1), (short)455, (short)261, (short)262, (short)767, (short)(-1), (short)(-1), (short)481, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)468, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)473, (short)(-1), (short)(-1), (short)199, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)481, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)211, (short)43, (short)(-1), (short)(-1), (short)(-1), (short)71, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)305, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)64, (short)316, (short)(-1), (short)767, (short)319, (short)(-1), (short)536, (short)95, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)245, (short)246, (short)247, (short)248, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)536, (short)(-1), (short)261, (short)262, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)565, (short)(-1), (short)(-1), (short)568, (short)569, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)580, (short)115, (short)(-1), (short)(-1), (short)(-1), (short)565, (short)(-1), (short)(-1), (short)568, (short)569, (short)(-1), (short)(-1), (short)377, (short)(-1), (short)(-1), (short)380, (short)(-1), (short)382, (short)(-1), (short)384, (short)580, (short)(-1), (short)305, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)316, (short)(-1), (short)(-1), (short)319, (short)(-1), (short)152, (short)(-1), (short)(-1), (short)(-1), (short)622, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)187, (short)(-1), (short)(-1), (short)190, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)622, (short)428, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)447, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)370, (short)(-1), (short)669, (short)455, (short)(-1), (short)(-1), (short)231, (short)377, (short)(-1), (short)(-1), (short)211, (short)(-1), (short)382, (short)(-1), (short)384, (short)(-1), (short)468, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)473, (short)669, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)481, (short)697, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)236, (short)261, (short)262, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)245, (short)(-1), (short)247, (short)(-1), (short)249, (short)(-1), (short)697, (short)(-1), (short)(-1), (short)254, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)726, (short)261, (short)262, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)447, (short)(-1), (short)726, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)536, (short)455, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)468, (short)766, (short)(-1), (short)(-1), (short)(-1), (short)473, (short)305, (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)481, (short)(-1), (short)565, (short)(-1), (short)316, (short)568, (short)569, (short)319, (short)766, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)580, (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)390, (short)536, (short)392, (short)(-1), (short)66, (short)622, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)377, (short)74, (short)75, (short)380, (short)(-1), (short)382, (short)79, (short)384, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)565, (short)(-1), (short)(-1), (short)568, (short)569, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)580, (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)441, (short)669, (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)120, (short)(-1), (short)(-1), (short)(-1), (short)428, (short)453, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)135, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)468, (short)(-1), (short)697, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)622, (short)(-1), (short)(-1), (short)(-1), (short)481, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)468, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)473, (short)(-1), (short)726, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)481, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)669, (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)766, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)549, (short)(-1), (short)(-1), (short)697, (short)(-1), (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)536, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)580, (short)726, (short)(-1), (short)(-1), (short)(-1), (short)585, (short)(-1), (short)(-1), (short)(-1), (short)565, (short)(-1), (short)(-1), (short)568, (short)569, (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)580, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)620, (short)766, (short)(-1), (short)623, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)632, (short)633, (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)3, (short)115, (short)642, (short)117, (short)118, (short)(-1), (short)622, (short)647, (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)658, (short)(-1), (short)(-1), (short)135, (short)136, (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)669, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)697, (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)727, (short)(-1), (short)(-1), (short)(-1), (short)731, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)726, (short)(-1), (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)764, (short)1, (short)766, (short)3, (short)4, (short)5, (short)6, (short)134, (short)8, (short)9, (short)(-1), (short)775, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)766, (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)52, (short)53, (short)54, (short)55, (short)56, (short)57, (short)58, (short)59, (short)60, (short)61, (short)62, (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)77, (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)52, (short)53, (short)54, (short)55, (short)56, (short)57, (short)58, (short)59, (short)60, (short)61, (short)62, (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)77, (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)52, (short)53, (short)54, (short)55, (short)56, (short)57, (short)58, (short)59, (short)60, (short)61, (short)62, (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)77, (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)134, (short)135, (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)136, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)52, (short)53, (short)54, (short)55, (short)56, (short)57, (short)58, (short)59, (short)60, (short)61, (short)62, (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)77, (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)1, (short)87, (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)28, (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)(-1), (short)52, (short)53, (short)54, (short)55, (short)56, (short)57, (short)58, (short)59, (short)60, (short)61, (short)62, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)135, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)1, (short)135, (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)1, (short)135, (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)135, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)135, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)68, (short)(-1), (short)(-1), (short)71, (short)72, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)78, (short)79, (short)28, (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)1, (short)87, (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)28, (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)109, (short)28, (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)71, (short)72, (short)73, (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)3, (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)134, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)1, (short)115, (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)132, (short)(-1), (short)134, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)28, (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)71, (short)72, (short)73, (short)74, (short)75, (short)(-1), (short)(-1), (short)1, (short)79, (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)28, (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)1, (short)28, (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)28, (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)28, (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)71, (short)72, (short)73, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)28, (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)28, (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)102, (short)103, (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)28, (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)28, (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)102, (short)103, (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)123, (short)124, (short)125, (short)126, (short)(-1), (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)120, (short)(-1), (short)(-1), (short)123, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)65, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)(-1), (short)(-1), (short)(-1), (short)120, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)65, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)(-1), (short)(-1), (short)(-1), (short)120, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)120, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)120, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)120, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)120, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)28, (short)(-1), (short)(-1), (short)(-1), (short)120, (short)(-1), (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)120, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)65, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)116, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)65, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)116, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)65, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)116, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)65, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)116, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)(-1), (short)(-1), (short)115, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)(-1), (short)(-1), (short)115, (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)51, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)65, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)65, (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)82, (short)83, (short)(-1), (short)85, (short)(-1), (short)87, (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)85, (short)(-1), (short)87, (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)28, (short)29, (short)30, (short)31, (short)32, (short)33, (short)34, (short)35, (short)36, (short)37, (short)38, (short)39, (short)40, (short)41, (short)42, (short)43, (short)44, (short)45, (short)46, (short)47, (short)48, (short)49, (short)50, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)66, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)85, (short)(-1), (short)87, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111
1018 };
1019
1020 static const yytype_uint16 yystos[] = 
1021 {
1022 (unsigned short)0, (unsigned short)3, (unsigned short)28, (unsigned short)29, (unsigned short)30, (unsigned short)31, (unsigned short)32, (unsigned short)33, (unsigned short)34, (unsigned short)35, (unsigned short)36, (unsigned short)37, (unsigned short)38, (unsigned short)39, (unsigned short)40, (unsigned short)41, (unsigned short)42, (unsigned short)43, (unsigned short)44, (unsigned short)45, (unsigned short)46, (unsigned short)47, (unsigned short)48, (unsigned short)49, (unsigned short)50, (unsigned short)65, (unsigned short)66, (unsigned short)74, (unsigned short)75, (unsigned short)79, (unsigned short)82, (unsigned short)83, (unsigned short)85, (unsigned short)87, (unsigned short)100, (unsigned short)110, (unsigned short)111, (unsigned short)138, (unsigned short)139, (unsigned short)140, (unsigned short)141, (unsigned short)142, (unsigned short)147, (unsigned short)179, (unsigned short)180, (unsigned short)185, (unsigned short)186, (unsigned short)187, (unsigned short)191, (unsigned short)192, (unsigned short)193, (unsigned short)194, (unsigned short)196, (unsigned short)197, (unsigned short)203, (unsigned short)211, (unsigned short)212, (unsigned short)230, (unsigned short)261, (unsigned short)135, (unsigned short)142, (unsigned short)147, (unsigned short)115, (unsigned short)115, (unsigned short)113, (unsigned short)1, (unsigned short)112, (unsigned short)113, (unsigned short)147, (unsigned short)112, (unsigned short)115, (unsigned short)120, (unsigned short)123, (unsigned short)138, (unsigned short)147, (unsigned short)185, (unsigned short)186, (unsigned short)193, (unsigned short)194, (unsigned short)196, (unsigned short)212, (unsigned short)215, (unsigned short)217, (unsigned short)219, (unsigned short)220, (unsigned short)222, (unsigned short)223, (unsigned short)224, (unsigned short)227, (unsigned short)115, (unsigned short)135, (unsigned short)141, (unsigned short)142, (unsigned short)147, (unsigned short)186, (unsigned short)132, (unsigned short)0, (unsigned short)147, (unsigned short)213, (unsigned short)214, (unsigned short)135, (unsigned short)135, (unsigned short)1, (unsigned short)4, (unsigned short)5, (unsigned short)6, (unsigned short)8, (unsigned short)9, (unsigned short)71, (unsigned short)72, (unsigned short)73, (unsigned short)102, (unsigned short)103, (unsigned short)109, (unsigned short)112, (unsigned short)115, (unsigned short)117, (unsigned short)118, (unsigned short)123, (unsigned short)124, (unsigned short)125, (unsigned short)126, (unsigned short)140, (unsigned short)147, (unsigned short)148, (unsigned short)149, (unsigned short)150, (unsigned short)154, (unsigned short)155, (unsigned short)157, (unsigned short)158, (unsigned short)159, (unsigned short)160, (unsigned short)161, (unsigned short)162, (unsigned short)163, (unsigned short)164, (unsigned short)165, (unsigned short)166, (unsigned short)167, (unsigned short)168, (unsigned short)169, (unsigned short)170, (unsigned short)171, (unsigned short)248, (unsigned short)251, (unsigned short)140, (unsigned short)147, (unsigned short)140, (unsigned short)147, (unsigned short)155, (unsigned short)161, (unsigned short)178, (unsigned short)185, (unsigned short)193, (unsigned short)194, (unsigned short)196, (unsigned short)198, (unsigned short)199, (unsigned short)200, (unsigned short)201, (unsigned short)202, (unsigned short)212, (unsigned short)193, (unsigned short)226, (unsigned short)227, (unsigned short)116, (unsigned short)147, (unsigned short)217, (unsigned short)219, (unsigned short)228, (unsigned short)229, (unsigned short)230, (unsigned short)121, (unsigned short)140, (unsigned short)170, (unsigned short)174, (unsigned short)115, (unsigned short)147, (unsigned short)186, (unsigned short)219, (unsigned short)227, (unsigned short)215, (unsigned short)220, (unsigned short)223, (unsigned short)227, (unsigned short)115, (unsigned short)120, (unsigned short)186, (unsigned short)115, (unsigned short)120, (unsigned short)116, (unsigned short)147, (unsigned short)228, (unsigned short)231, (unsigned short)186, (unsigned short)215, (unsigned short)224, (unsigned short)115, (unsigned short)68, (unsigned short)78, (unsigned short)115, (unsigned short)117, (unsigned short)134, (unsigned short)136, (unsigned short)143, (unsigned short)144, (unsigned short)145, (unsigned short)146, (unsigned short)147, (unsigned short)150, (unsigned short)179, (unsigned short)186, (unsigned short)204, (unsigned short)205, (unsigned short)206, (unsigned short)207, (unsigned short)208, (unsigned short)220, (unsigned short)221, (unsigned short)223, (unsigned short)227, (unsigned short)250, (unsigned short)251, (unsigned short)253, (unsigned short)135, (unsigned short)135, (unsigned short)135, (unsigned short)142, (unsigned short)147, (unsigned short)174, (unsigned short)133, (unsigned short)122, (unsigned short)136, (unsigned short)213, (unsigned short)213, (unsigned short)115, (unsigned short)149, (unsigned short)152, (unsigned short)154, (unsigned short)156, (unsigned short)115, (unsigned short)155, (unsigned short)155, (unsigned short)147, (unsigned short)179, (unsigned short)174, (unsigned short)179, (unsigned short)174, (unsigned short)115, (unsigned short)156, (unsigned short)116, (unsigned short)171, (unsigned short)173, (unsigned short)176, (unsigned short)193, (unsigned short)194, (unsigned short)196, (unsigned short)212, (unsigned short)232, (unsigned short)248, (unsigned short)135, (unsigned short)135, (unsigned short)7, (unsigned short)8, (unsigned short)9, (unsigned short)115, (unsigned short)119, (unsigned short)120, (unsigned short)18, (unsigned short)19, (unsigned short)20, (unsigned short)21, (unsigned short)22, (unsigned short)23, (unsigned short)24, (unsigned short)25, (unsigned short)26, (unsigned short)27, (unsigned short)133, (unsigned short)172, (unsigned short)158, (unsigned short)112, (unsigned short)127, (unsigned short)128, (unsigned short)124, (unsigned short)125, (unsigned short)10, (unsigned short)11, (unsigned short)161, (unsigned short)12, (unsigned short)13, (unsigned short)113, (unsigned short)114, (unsigned short)14, (unsigned short)15, (unsigned short)123, (unsigned short)129, (unsigned short)130, (unsigned short)16, (unsigned short)17, (unsigned short)131, (unsigned short)116, (unsigned short)116, (unsigned short)116, (unsigned short)133, (unsigned short)115, (unsigned short)147, (unsigned short)185, (unsigned short)186, (unsigned short)193, (unsigned short)194, (unsigned short)196, (unsigned short)212, (unsigned short)217, (unsigned short)227, (unsigned short)133, (unsigned short)11, (unsigned short)114, (unsigned short)122, (unsigned short)193, (unsigned short)227, (unsigned short)116, (unsigned short)116, (unsigned short)116, (unsigned short)122, (unsigned short)121, (unsigned short)121, (unsigned short)227, (unsigned short)215, (unsigned short)224, (unsigned short)116, (unsigned short)228, (unsigned short)121, (unsigned short)140, (unsigned short)174, (unsigned short)121, (unsigned short)140, (unsigned short)174, (unsigned short)116, (unsigned short)116, (unsigned short)122, (unsigned short)3, (unsigned short)28, (unsigned short)44, (unsigned short)74, (unsigned short)75, (unsigned short)116, (unsigned short)188, (unsigned short)189, (unsigned short)190, (unsigned short)34, (unsigned short)35, (unsigned short)36, (unsigned short)37, (unsigned short)38, (unsigned short)39, (unsigned short)40, (unsigned short)41, (unsigned short)42, (unsigned short)43, (unsigned short)46, (unsigned short)47, (unsigned short)50, (unsigned short)66, (unsigned short)85, (unsigned short)87, (unsigned short)100, (unsigned short)142, (unsigned short)147, (unsigned short)181, (unsigned short)185, (unsigned short)193, (unsigned short)195, (unsigned short)197, (unsigned short)203, (unsigned short)211, (unsigned short)179, (unsigned short)221, (unsigned short)112, (unsigned short)115, (unsigned short)147, (unsigned short)179, (unsigned short)135, (unsigned short)242, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)134, (unsigned short)243, (unsigned short)133, (unsigned short)115, (unsigned short)132, (unsigned short)134, (unsigned short)147, (unsigned short)186, (unsigned short)209, (unsigned short)210, (unsigned short)220, (unsigned short)221, (unsigned short)225, (unsigned short)227, (unsigned short)223, (unsigned short)227, (unsigned short)136, (unsigned short)208, (unsigned short)122, (unsigned short)134, (unsigned short)186, (unsigned short)223, (unsigned short)134, (unsigned short)134, (unsigned short)204, (unsigned short)136, (unsigned short)204, (unsigned short)136, (unsigned short)204, (unsigned short)135, (unsigned short)135, (unsigned short)174, (unsigned short)214, (unsigned short)134, (unsigned short)136, (unsigned short)134, (unsigned short)136, (unsigned short)138, (unsigned short)147, (unsigned short)155, (unsigned short)177, (unsigned short)193, (unsigned short)194, (unsigned short)196, (unsigned short)212, (unsigned short)233, (unsigned short)7, (unsigned short)8, (unsigned short)9, (unsigned short)115, (unsigned short)119, (unsigned short)120, (unsigned short)115, (unsigned short)120, (unsigned short)186, (unsigned short)216, (unsigned short)218, (unsigned short)227, (unsigned short)147, (unsigned short)182, (unsigned short)185, (unsigned short)193, (unsigned short)195, (unsigned short)196, (unsigned short)212, (unsigned short)120, (unsigned short)218, (unsigned short)182, (unsigned short)155, (unsigned short)233, (unsigned short)116, (unsigned short)122, (unsigned short)193, (unsigned short)194, (unsigned short)196, (unsigned short)212, (unsigned short)217, (unsigned short)116, (unsigned short)119, (unsigned short)134, (unsigned short)135, (unsigned short)136, (unsigned short)150, (unsigned short)151, (unsigned short)170, (unsigned short)178, (unsigned short)235, (unsigned short)252, (unsigned short)254, (unsigned short)255, (unsigned short)256, (unsigned short)257, (unsigned short)258, (unsigned short)259, (unsigned short)260, (unsigned short)136, (unsigned short)260, (unsigned short)147, (unsigned short)116, (unsigned short)151, (unsigned short)153, (unsigned short)171, (unsigned short)147, (unsigned short)173, (unsigned short)151, (unsigned short)171, (unsigned short)158, (unsigned short)158, (unsigned short)158, (unsigned short)159, (unsigned short)159, (unsigned short)160, (unsigned short)160, (unsigned short)161, (unsigned short)161, (unsigned short)161, (unsigned short)163, (unsigned short)163, (unsigned short)164, (unsigned short)165, (unsigned short)166, (unsigned short)167, (unsigned short)168, (unsigned short)173, (unsigned short)198, (unsigned short)199, (unsigned short)200, (unsigned short)227, (unsigned short)199, (unsigned short)200, (unsigned short)201, (unsigned short)51, (unsigned short)230, (unsigned short)116, (unsigned short)121, (unsigned short)121, (unsigned short)121, (unsigned short)121, (unsigned short)147, (unsigned short)116, (unsigned short)115, (unsigned short)116, (unsigned short)122, (unsigned short)189, (unsigned short)142, (unsigned short)147, (unsigned short)115, (unsigned short)115, (unsigned short)113, (unsigned short)135, (unsigned short)147, (unsigned short)185, (unsigned short)193, (unsigned short)195, (unsigned short)217, (unsigned short)147, (unsigned short)186, (unsigned short)221, (unsigned short)186, (unsigned short)115, (unsigned short)136, (unsigned short)52, (unsigned short)53, (unsigned short)54, (unsigned short)55, (unsigned short)56, (unsigned short)57, (unsigned short)58, (unsigned short)59, (unsigned short)60, (unsigned short)61, (unsigned short)62, (unsigned short)77, (unsigned short)134, (unsigned short)147, (unsigned short)173, (unsigned short)175, (unsigned short)178, (unsigned short)237, (unsigned short)238, (unsigned short)239, (unsigned short)240, (unsigned short)241, (unsigned short)243, (unsigned short)244, (unsigned short)245, (unsigned short)246, (unsigned short)247, (unsigned short)249, (unsigned short)235, (unsigned short)116, (unsigned short)174, (unsigned short)135, (unsigned short)220, (unsigned short)227, (unsigned short)122, (unsigned short)134, (unsigned short)132, (unsigned short)191, (unsigned short)186, (unsigned short)220, (unsigned short)223, (unsigned short)205, (unsigned short)223, (unsigned short)136, (unsigned short)136, (unsigned short)136, (unsigned short)204, (unsigned short)136, (unsigned short)204, (unsigned short)204, (unsigned short)204, (unsigned short)116, (unsigned short)138, (unsigned short)193, (unsigned short)194, (unsigned short)196, (unsigned short)212, (unsigned short)217, (unsigned short)116, (unsigned short)147, (unsigned short)116, (unsigned short)153, (unsigned short)147, (unsigned short)173, (unsigned short)116, (unsigned short)218, (unsigned short)228, (unsigned short)174, (unsigned short)216, (unsigned short)227, (unsigned short)115, (unsigned short)120, (unsigned short)216, (unsigned short)113, (unsigned short)120, (unsigned short)147, (unsigned short)185, (unsigned short)193, (unsigned short)195, (unsigned short)196, (unsigned short)212, (unsigned short)218, (unsigned short)174, (unsigned short)120, (unsigned short)120, (unsigned short)218, (unsigned short)116, (unsigned short)116, (unsigned short)171, (unsigned short)158, (unsigned short)248, (unsigned short)136, (unsigned short)260, (unsigned short)133, (unsigned short)147, (unsigned short)221, (unsigned short)225, (unsigned short)243, (unsigned short)122, (unsigned short)134, (unsigned short)134, (unsigned short)255, (unsigned short)257, (unsigned short)258, (unsigned short)136, (unsigned short)136, (unsigned short)116, (unsigned short)122, (unsigned short)121, (unsigned short)132, (unsigned short)173, (unsigned short)116, (unsigned short)189, (unsigned short)171, (unsigned short)140, (unsigned short)147, (unsigned short)202, (unsigned short)69, (unsigned short)70, (unsigned short)136, (unsigned short)113, (unsigned short)135, (unsigned short)135, (unsigned short)147, (unsigned short)142, (unsigned short)147, (unsigned short)116, (unsigned short)174, (unsigned short)132, (unsigned short)115, (unsigned short)115, (unsigned short)115, (unsigned short)237, (unsigned short)115, (unsigned short)147, (unsigned short)134, (unsigned short)134, (unsigned short)134, (unsigned short)173, (unsigned short)147, (unsigned short)132, (unsigned short)134, (unsigned short)134, (unsigned short)147, (unsigned short)183, (unsigned short)184, (unsigned short)219, (unsigned short)175, (unsigned short)240, (unsigned short)175, (unsigned short)237, (unsigned short)136, (unsigned short)134, (unsigned short)136, (unsigned short)260, (unsigned short)220, (unsigned short)186, (unsigned short)210, (unsigned short)220, (unsigned short)227, (unsigned short)174, (unsigned short)220, (unsigned short)136, (unsigned short)136, (unsigned short)136, (unsigned short)136, (unsigned short)116, (unsigned short)121, (unsigned short)116, (unsigned short)116, (unsigned short)121, (unsigned short)216, (unsigned short)116, (unsigned short)228, (unsigned short)174, (unsigned short)202, (unsigned short)174, (unsigned short)113, (unsigned short)120, (unsigned short)121, (unsigned short)174, (unsigned short)174, (unsigned short)120, (unsigned short)136, (unsigned short)235, (unsigned short)256, (unsigned short)151, (unsigned short)171, (unsigned short)170, (unsigned short)116, (unsigned short)116, (unsigned short)116, (unsigned short)116, (unsigned short)114, (unsigned short)243, (unsigned short)243, (unsigned short)202, (unsigned short)69, (unsigned short)70, (unsigned short)136, (unsigned short)69, (unsigned short)70, (unsigned short)136, (unsigned short)135, (unsigned short)132, (unsigned short)237, (unsigned short)173, (unsigned short)173, (unsigned short)116, (unsigned short)173, (unsigned short)56, (unsigned short)116, (unsigned short)244, (unsigned short)134, (unsigned short)134, (unsigned short)133, (unsigned short)237, (unsigned short)135, (unsigned short)122, (unsigned short)134, (unsigned short)133, (unsigned short)136, (unsigned short)220, (unsigned short)227, (unsigned short)186, (unsigned short)220, (unsigned short)132, (unsigned short)116, (unsigned short)121, (unsigned short)114, (unsigned short)121, (unsigned short)202, (unsigned short)174, (unsigned short)121, (unsigned short)121, (unsigned short)174, (unsigned short)70, (unsigned short)136, (unsigned short)69, (unsigned short)136, (unsigned short)114, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)69, (unsigned short)70, (unsigned short)136, (unsigned short)237, (unsigned short)116, (unsigned short)116, (unsigned short)237, (unsigned short)116, (unsigned short)115, (unsigned short)237, (unsigned short)116, (unsigned short)244, (unsigned short)174, (unsigned short)136, (unsigned short)260, (unsigned short)184, (unsigned short)135, (unsigned short)171, (unsigned short)234, (unsigned short)220, (unsigned short)220, (unsigned short)174, (unsigned short)114, (unsigned short)121, (unsigned short)121, (unsigned short)243, (unsigned short)243, (unsigned short)70, (unsigned short)136, (unsigned short)69, (unsigned short)136, (unsigned short)70, (unsigned short)136, (unsigned short)69, (unsigned short)136, (unsigned short)243, (unsigned short)243, (unsigned short)237, (unsigned short)237, (unsigned short)237, (unsigned short)173, (unsigned short)237, (unsigned short)116, (unsigned short)173, (unsigned short)134, (unsigned short)136, (unsigned short)234, (unsigned short)236, (unsigned short)136, (unsigned short)136, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)70, (unsigned short)136, (unsigned short)69, (unsigned short)136, (unsigned short)64, (unsigned short)116, (unsigned short)237, (unsigned short)116, (unsigned short)122, (unsigned short)136, (unsigned short)136, (unsigned short)136, (unsigned short)136, (unsigned short)136, (unsigned short)243, (unsigned short)243, (unsigned short)237, (unsigned short)134, (unsigned short)237, (unsigned short)136, (unsigned short)234, (unsigned short)136, (unsigned short)136
1023 };
1024
1025 void exit(int status);
1026
1027 void * calloc(size_t nmemb, size_t size);
1028
1029 void free(void * ptr);
1030
1031 void * realloc(void * ptr, size_t size);
1032
1033 long int strtol(const char * nptr, char ** endptr, int base);
1034
1035 long long int strtoll(const char * nptr, char ** endptr, int base);
1036
1037 unsigned long long int strtoull(const char * nptr, char ** endptr, int base);
1038
1039 typedef __builtin_va_list va_list;
1040
1041 typedef void FILE;
1042
1043 FILE * bsl_stdin(void);
1044
1045 FILE * bsl_stdout(void);
1046
1047 FILE * bsl_stderr(void);
1048
1049 char * fgets(char * s, int size, FILE * stream);
1050
1051 FILE * fopen(const char * path, const char * mode);
1052
1053 int fclose(FILE * fp);
1054
1055 int fflush(FILE * stream);
1056
1057 int fgetc(FILE * stream);
1058
1059 int fprintf(FILE * stream, const char * format, ...);
1060
1061 int fputc(int c, FILE * stream);
1062
1063 size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
1064
1065 size_t fwrite(const void * ptr, size_t size, size_t nmemb, FILE * stream);
1066
1067 int vsnprintf(char *, size_t, const char *, ...);
1068
1069 int snprintf(char * str, size_t, const char * format, ...);
1070
1071 int fseek(FILE * stream, long offset, int whence);
1072
1073 long ftell(FILE * stream);
1074
1075 int feof(FILE * stream);
1076
1077 int ferror(FILE * stream);
1078
1079 int fileno(FILE * stream);
1080
1081 static void yy_symbol_value_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1082 {
1083 if(!yyvaluep)
1084 return ;
1085 ((void)(yylocationp));
1086 ((void)(yyoutput));
1087 switch(yytype)
1088 {
1089 default:
1090 break;
1091 }
1092 }
1093
1094 static void yy_symbol_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1095 {
1096 if(yytype < 137)
1097 fprintf(yyoutput, "token %s (", yytname[yytype]);
1098 else
1099 fprintf(yyoutput, "nterm %s (", yytname[yytype]);
1100 ((void)0);
1101 fprintf(yyoutput, ": ");
1102 yy_symbol_value_print(yyoutput, yytype, yyvaluep, yylocationp);
1103 fprintf(yyoutput, ")");
1104 }
1105
1106 static void yy_stack_print(yytype_int16 * yybottom, yytype_int16 * yytop)
1107 {
1108 fprintf((bsl_stderr()), "Stack now");
1109 for(; yybottom <= yytop; yybottom++)
1110 {
1111 int yybot = *yybottom;
1112
1113 fprintf((bsl_stderr()), " %d", yybot);
1114 }
1115 fprintf((bsl_stderr()), "\n");
1116 }
1117
1118 static void yy_reduce_print(YYSTYPE * yyvsp, struct Location * yylsp, int yyrule)
1119 {
1120 int yynrhs = yyr2[yyrule];
1121 int yyi;
1122 unsigned long int yylno = yyrline[yyrule];
1123
1124 fprintf((bsl_stderr()), "Reducing stack by rule %d (line %lu):\n", yyrule - 1, yylno);
1125 for(yyi = 0; yyi < yynrhs; yyi++)
1126 {
1127 fprintf((bsl_stderr()), "   $%d = ", yyi + 1);
1128 yy_symbol_print((bsl_stderr()), yyrhs[yyprhs[yyrule] + yyi], &(yyvsp[(yyi + 1) - (yynrhs)]), &(yylsp[(yyi + 1) - (yynrhs)]));
1129 fprintf((bsl_stderr()), "\n");
1130 }
1131 }
1132
1133 int type_yydebug;
1134
1135 extern void FreeSpecifier(struct Specifier * spec);
1136
1137 extern void FreeClassFunction(struct ClassFunction * func);
1138
1139 extern void FreeIdentifier(struct Identifier * id);
1140
1141 extern void FreeExpression(struct Expression * exp);
1142
1143 extern void FreeList(struct __ecereNameSpace__ecere__sys__OldList * list, void (*  FreeFunction)(void * ));
1144
1145 extern void FreeDeclaration(struct Declaration * decl);
1146
1147 extern void FreeInitDeclarator(struct InitDeclarator * decl);
1148
1149 extern void FreeExtDecl(struct ExtDecl * extDecl);
1150
1151 extern void FreeAttribute(struct Attribute * attr);
1152
1153 extern void FreeAttrib(struct Attrib * attr);
1154
1155 extern void FreeTemplateDataType(struct TemplateDatatype * type);
1156
1157 extern void FreeTemplateArgument(struct TemplateArgument * arg);
1158
1159 extern void FreeClassDef(struct ClassDef * def);
1160
1161 extern void FreeMemberInit(struct MemberInit * init);
1162
1163 extern void FreeProperty(struct PropertyDef * def);
1164
1165 extern void FreeDeclarator(struct Declarator * decl);
1166
1167 extern void FreeEnumerator(struct Enumerator * enumerator);
1168
1169 extern void FreePointer(struct Pointer * pointer);
1170
1171 extern void FreeTypeName(struct TypeName * typeName);
1172
1173 extern void FreeInitializer(struct Initializer * initializer);
1174
1175 extern void FreeStatement(struct Statement * stmt);
1176
1177 extern void PopContext(struct Context * ctx);
1178
1179 extern void FreeContext(struct Context * context);
1180
1181 extern void FreeInstance(struct Instantiation * inst);
1182
1183 extern void FreeMembersInit(struct MembersInit * init);
1184
1185 static void yydestruct(const char * yymsg, int yytype, YYSTYPE * yyvaluep, struct Location * yylocationp)
1186 {
1187 ((void)(yyvaluep));
1188 ((void)(yylocationp));
1189 if(!yymsg)
1190 yymsg = "Deleting";
1191 do
1192 {
1193 if(type_yydebug)
1194 {
1195 fprintf((bsl_stderr()), "%s ", yymsg);
1196 yy_symbol_print((bsl_stderr()), yytype, yyvaluep, yylocationp);
1197 fprintf((bsl_stderr()), "\n");
1198 }
1199 }while((0));
1200 switch(yytype)
1201 {
1202 case 138:
1203 {
1204 FreeSpecifier((*yyvaluep).specifier);
1205 }
1206 ;
1207 break;
1208 case 140:
1209 {
1210 FreeSpecifier((*yyvaluep).specifier);
1211 }
1212 ;
1213 break;
1214 case 141:
1215 {
1216 FreeSpecifier((*yyvaluep).specifier);
1217 }
1218 ;
1219 break;
1220 case 142:
1221 {
1222 FreeSpecifier((*yyvaluep).specifier);
1223 }
1224 ;
1225 break;
1226 case 143:
1227 {
1228 FreeClassFunction((*yyvaluep).classFunction);
1229 }
1230 ;
1231 break;
1232 case 144:
1233 {
1234 FreeClassFunction((*yyvaluep).classFunction);
1235 }
1236 ;
1237 break;
1238 case 145:
1239 {
1240 FreeClassFunction((*yyvaluep).classFunction);
1241 }
1242 ;
1243 break;
1244 case 146:
1245 {
1246 FreeClassFunction((*yyvaluep).classFunction);
1247 }
1248 ;
1249 break;
1250 case 147:
1251 {
1252 FreeIdentifier((*yyvaluep).id);
1253 }
1254 ;
1255 break;
1256 case 148:
1257 {
1258 FreeExpression((*yyvaluep).exp);
1259 }
1260 ;
1261 break;
1262 case 150:
1263 {
1264 FreeExpression((*yyvaluep).exp);
1265 }
1266 ;
1267 break;
1268 case 153:
1269 {
1270 FreeList((*yyvaluep).list, FreeExpression);
1271 }
1272 ;
1273 break;
1274 case 155:
1275 {
1276 FreeExpression((*yyvaluep).exp);
1277 }
1278 ;
1279 break;
1280 case 158:
1281 {
1282 FreeExpression((*yyvaluep).exp);
1283 }
1284 ;
1285 break;
1286 case 159:
1287 {
1288 FreeExpression((*yyvaluep).exp);
1289 }
1290 ;
1291 break;
1292 case 160:
1293 {
1294 FreeExpression((*yyvaluep).exp);
1295 }
1296 ;
1297 break;
1298 case 161:
1299 {
1300 FreeExpression((*yyvaluep).exp);
1301 }
1302 ;
1303 break;
1304 case 163:
1305 {
1306 FreeExpression((*yyvaluep).exp);
1307 }
1308 ;
1309 break;
1310 case 164:
1311 {
1312 FreeExpression((*yyvaluep).exp);
1313 }
1314 ;
1315 break;
1316 case 165:
1317 {
1318 FreeExpression((*yyvaluep).exp);
1319 }
1320 ;
1321 break;
1322 case 166:
1323 {
1324 FreeExpression((*yyvaluep).exp);
1325 }
1326 ;
1327 break;
1328 case 167:
1329 {
1330 FreeExpression((*yyvaluep).exp);
1331 }
1332 ;
1333 break;
1334 case 168:
1335 {
1336 FreeExpression((*yyvaluep).exp);
1337 }
1338 ;
1339 break;
1340 case 169:
1341 {
1342 FreeExpression((*yyvaluep).exp);
1343 }
1344 ;
1345 break;
1346 case 170:
1347 {
1348 FreeExpression((*yyvaluep).exp);
1349 }
1350 ;
1351 break;
1352 case 171:
1353 {
1354 FreeExpression((*yyvaluep).exp);
1355 }
1356 ;
1357 break;
1358 case 173:
1359 {
1360 FreeList((*yyvaluep).list, FreeExpression);
1361 }
1362 ;
1363 break;
1364 case 174:
1365 {
1366 FreeExpression((*yyvaluep).exp);
1367 }
1368 ;
1369 break;
1370 case 175:
1371 {
1372 FreeDeclaration((*yyvaluep).declaration);
1373 }
1374 ;
1375 break;
1376 case 176:
1377 {
1378 FreeList((*yyvaluep).list, FreeSpecifier);
1379 }
1380 ;
1381 break;
1382 case 177:
1383 {
1384 FreeList((*yyvaluep).list, FreeSpecifier);
1385 }
1386 ;
1387 break;
1388 case 178:
1389 {
1390 FreeList((*yyvaluep).list, FreeSpecifier);
1391 }
1392 ;
1393 break;
1394 case 179:
1395 {
1396 FreeList((*yyvaluep).list, FreeSpecifier);
1397 }
1398 ;
1399 break;
1400 case 183:
1401 {
1402 FreeList((*yyvaluep).list, FreeInitDeclarator);
1403 }
1404 ;
1405 break;
1406 case 184:
1407 {
1408 FreeInitDeclarator((*yyvaluep).initDeclarator);
1409 }
1410 ;
1411 break;
1412 case 185:
1413 {
1414 FreeSpecifier((*yyvaluep).specifier);
1415 }
1416 ;
1417 break;
1418 case 186:
1419 {
1420 FreeExtDecl((*yyvaluep).extDecl);
1421 }
1422 ;
1423 break;
1424 case 188:
1425 {
1426 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
1427 }
1428 ;
1429 break;
1430 case 189:
1431 {
1432 FreeAttribute((*yyvaluep).attribute);
1433 }
1434 ;
1435 break;
1436 case 190:
1437 {
1438 FreeList((*yyvaluep).list, FreeAttribute);
1439 }
1440 ;
1441 break;
1442 case 191:
1443 {
1444 FreeAttrib((*yyvaluep).attrib);
1445 }
1446 ;
1447 break;
1448 case 192:
1449 {
1450 FreeSpecifier((*yyvaluep).specifier);
1451 }
1452 ;
1453 break;
1454 case 193:
1455 {
1456 FreeSpecifier((*yyvaluep).specifier);
1457 }
1458 ;
1459 break;
1460 case 194:
1461 {
1462 FreeSpecifier((*yyvaluep).specifier);
1463 }
1464 ;
1465 break;
1466 case 195:
1467 {
1468 FreeSpecifier((*yyvaluep).specifier);
1469 }
1470 ;
1471 break;
1472 case 196:
1473 {
1474 FreeSpecifier((*yyvaluep).specifier);
1475 }
1476 ;
1477 break;
1478 case 197:
1479 {
1480 FreeSpecifier((*yyvaluep).specifier);
1481 }
1482 ;
1483 break;
1484 case 198:
1485 {
1486 FreeTemplateDataType((*yyvaluep).templateDatatype);
1487 }
1488 ;
1489 break;
1490 case 199:
1491 {
1492 FreeTemplateArgument((*yyvaluep).templateArgument);
1493 }
1494 ;
1495 break;
1496 case 200:
1497 {
1498 FreeTemplateArgument((*yyvaluep).templateArgument);
1499 }
1500 ;
1501 break;
1502 case 201:
1503 {
1504 FreeTemplateArgument((*yyvaluep).templateArgument);
1505 }
1506 ;
1507 break;
1508 case 204:
1509 {
1510 FreeList((*yyvaluep).list, FreeClassDef);
1511 }
1512 ;
1513 break;
1514 case 205:
1515 {
1516 FreeMemberInit((*yyvaluep).memberInit);
1517 }
1518 ;
1519 break;
1520 case 206:
1521 {
1522 FreeList((*yyvaluep).list, FreeMemberInit);
1523 }
1524 ;
1525 break;
1526 case 207:
1527 {
1528 FreeProperty((*yyvaluep).prop);
1529 }
1530 ;
1531 break;
1532 case 208:
1533 {
1534 FreeClassDef((*yyvaluep).classDef);
1535 }
1536 ;
1537 break;
1538 case 209:
1539 {
1540 FreeList((*yyvaluep).list, FreeDeclarator);
1541 }
1542 ;
1543 break;
1544 case 210:
1545 {
1546 FreeDeclarator((*yyvaluep).declarator);
1547 }
1548 ;
1549 break;
1550 case 211:
1551 {
1552 FreeSpecifier((*yyvaluep).specifier);
1553 }
1554 ;
1555 break;
1556 case 212:
1557 {
1558 FreeSpecifier((*yyvaluep).specifier);
1559 }
1560 ;
1561 break;
1562 case 213:
1563 {
1564 FreeList((*yyvaluep).list, FreeEnumerator);
1565 }
1566 ;
1567 break;
1568 case 214:
1569 {
1570 FreeEnumerator((*yyvaluep).enumerator);
1571 }
1572 ;
1573 break;
1574 case 215:
1575 {
1576 FreeDeclarator((*yyvaluep).declarator);
1577 }
1578 ;
1579 break;
1580 case 216:
1581 {
1582 FreeDeclarator((*yyvaluep).declarator);
1583 }
1584 ;
1585 break;
1586 case 217:
1587 {
1588 FreeDeclarator((*yyvaluep).declarator);
1589 }
1590 ;
1591 break;
1592 case 218:
1593 {
1594 FreeDeclarator((*yyvaluep).declarator);
1595 }
1596 ;
1597 break;
1598 case 219:
1599 {
1600 FreeDeclarator((*yyvaluep).declarator);
1601 }
1602 ;
1603 break;
1604 case 220:
1605 {
1606 FreeDeclarator((*yyvaluep).declarator);
1607 }
1608 ;
1609 break;
1610 case 221:
1611 {
1612 FreeDeclarator((*yyvaluep).declarator);
1613 }
1614 ;
1615 break;
1616 case 222:
1617 {
1618 FreeDeclarator((*yyvaluep).declarator);
1619 }
1620 ;
1621 break;
1622 case 223:
1623 {
1624 FreeDeclarator((*yyvaluep).declarator);
1625 }
1626 ;
1627 break;
1628 case 224:
1629 {
1630 FreeDeclarator((*yyvaluep).declarator);
1631 }
1632 ;
1633 break;
1634 case 225:
1635 {
1636 FreeDeclarator((*yyvaluep).declarator);
1637 }
1638 ;
1639 break;
1640 case 226:
1641 {
1642 FreeList((*yyvaluep).list, FreeSpecifier);
1643 }
1644 ;
1645 break;
1646 case 227:
1647 {
1648 FreePointer((*yyvaluep).pointer);
1649 }
1650 ;
1651 break;
1652 case 228:
1653 {
1654 FreeList((*yyvaluep).list, FreeTypeName);
1655 }
1656 ;
1657 break;
1658 case 229:
1659 {
1660 FreeList((*yyvaluep).list, FreeTypeName);
1661 }
1662 ;
1663 break;
1664 case 230:
1665 {
1666 FreeTypeName((*yyvaluep).typeName);
1667 }
1668 ;
1669 break;
1670 case 231:
1671 {
1672 FreeList((*yyvaluep).list, FreeTypeName);
1673 }
1674 ;
1675 break;
1676 case 232:
1677 {
1678 FreeTypeName((*yyvaluep).typeName);
1679 }
1680 ;
1681 break;
1682 case 233:
1683 {
1684 FreeTypeName((*yyvaluep).typeName);
1685 }
1686 ;
1687 break;
1688 case 234:
1689 {
1690 FreeInitializer((*yyvaluep).initializer);
1691 }
1692 ;
1693 break;
1694 case 235:
1695 {
1696 FreeInitializer((*yyvaluep).initializer);
1697 }
1698 ;
1699 break;
1700 case 236:
1701 {
1702 FreeList((*yyvaluep).list, FreeInitializer);
1703 }
1704 ;
1705 break;
1706 case 237:
1707 {
1708 FreeStatement((*yyvaluep).stmt);
1709 }
1710 ;
1711 break;
1712 case 238:
1713 {
1714 FreeStatement((*yyvaluep).stmt);
1715 }
1716 ;
1717 break;
1718 case 239:
1719 {
1720 FreeList((*yyvaluep).list, FreeDeclaration);
1721 }
1722 ;
1723 break;
1724 case 240:
1725 {
1726 FreeList((*yyvaluep).list, FreeStatement);
1727 }
1728 ;
1729 break;
1730 case 241:
1731 {
1732 FreeStatement((*yyvaluep).stmt);
1733 }
1734 ;
1735 break;
1736 case 242:
1737 {
1738 PopContext((*yyvaluep).context);
1739 FreeContext((*yyvaluep).context);
1740 (((*yyvaluep).context ? (__ecereClass_Context->Destructor ? __ecereClass_Context->Destructor((*yyvaluep).context) : 0, __ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).context)) : 0), (*yyvaluep).context = 0);
1741 }
1742 ;
1743 break;
1744 case 243:
1745 {
1746 FreeStatement((*yyvaluep).stmt);
1747 }
1748 ;
1749 break;
1750 case 244:
1751 {
1752 FreeStatement((*yyvaluep).stmt);
1753 }
1754 ;
1755 break;
1756 case 245:
1757 {
1758 FreeStatement((*yyvaluep).stmt);
1759 }
1760 ;
1761 break;
1762 case 246:
1763 {
1764 FreeStatement((*yyvaluep).stmt);
1765 }
1766 ;
1767 break;
1768 case 247:
1769 {
1770 FreeStatement((*yyvaluep).stmt);
1771 }
1772 ;
1773 break;
1774 case 248:
1775 {
1776 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
1777 }
1778 ;
1779 break;
1780 case 249:
1781 {
1782 FreeInstance((*yyvaluep).instance);
1783 }
1784 ;
1785 break;
1786 case 251:
1787 {
1788 FreeInstance((*yyvaluep).instance);
1789 }
1790 ;
1791 break;
1792 case 253:
1793 {
1794 FreeClassFunction((*yyvaluep).classFunction);
1795 }
1796 ;
1797 break;
1798 case 254:
1799 {
1800 FreeClassFunction((*yyvaluep).classFunction);
1801 }
1802 ;
1803 break;
1804 case 255:
1805 {
1806 FreeClassFunction((*yyvaluep).classFunction);
1807 }
1808 ;
1809 break;
1810 case 256:
1811 {
1812 FreeMemberInit((*yyvaluep).memberInit);
1813 }
1814 ;
1815 break;
1816 case 257:
1817 {
1818 FreeList((*yyvaluep).list, FreeMemberInit);
1819 }
1820 ;
1821 break;
1822 case 258:
1823 {
1824 FreeList((*yyvaluep).list, FreeMemberInit);
1825 }
1826 ;
1827 break;
1828 case 259:
1829 {
1830 FreeList((*yyvaluep).list, FreeMembersInit);
1831 }
1832 ;
1833 break;
1834 case 260:
1835 {
1836 FreeList((*yyvaluep).list, FreeMembersInit);
1837 }
1838 ;
1839 break;
1840 default:
1841 break;
1842 }
1843 }
1844
1845 int type_yyparse(void);
1846
1847 int type_yychar;
1848
1849 YYSTYPE type_yylval;
1850
1851 struct Location type_yylloc;
1852
1853 int type_yynerrs;
1854
1855 extern struct Symbol * DeclClass(int symbolID, char *  name);
1856
1857 extern void resetScannerPos(struct CodePosition * pos);
1858
1859 extern char *  strcpy(char * , const char * );
1860
1861 extern char *  strcat(char * , const char * );
1862
1863 extern struct Symbol * _DeclClass(int symbolID, char *  name);
1864
1865 extern struct Specifier * MkSpecifierName(char *  name);
1866
1867 extern void SetClassTemplateArgs(struct Specifier * spec, struct __ecereNameSpace__ecere__sys__OldList * templateArgs);
1868
1869 extern struct ClassFunction * MkClassFunction(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct Specifier * _class, struct Declarator * decl, struct __ecereNameSpace__ecere__sys__OldList * declList);
1870
1871 extern struct Context * globalContext;
1872
1873 extern struct Identifier * MkIdentifier(char *  string);
1874
1875 extern struct Expression * MkExpBrackets(struct __ecereNameSpace__ecere__sys__OldList * expressions);
1876
1877 extern struct Expression * MkExpIdentifier(struct Identifier * id);
1878
1879 extern struct Expression * MkExpInstance(struct Instantiation * inst);
1880
1881 extern struct Expression * MkExpConstant(char *  string);
1882
1883 extern struct Expression * MkExpString(char *  string);
1884
1885 extern struct Expression * MkExpIntlString(char *  string, char *  context);
1886
1887 extern struct Expression * MkExpDummy(void);
1888
1889 extern struct __ecereNameSpace__ecere__sys__OldList *  MkListOne(void *  item);
1890
1891 extern struct Expression * MkExpNew(struct TypeName * type, struct Expression * size);
1892
1893 extern struct TypeName * MkTypeName(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Declarator * declarator);
1894
1895 extern struct Expression * MkExpNew0(struct TypeName * type, struct Expression * size);
1896
1897 extern struct Expression * MkExpRenew(struct Expression * memExp, struct TypeName * type, struct Expression * size);
1898
1899 extern struct Expression * MkExpRenew0(struct Expression * memExp, struct TypeName * type, struct Expression * size);
1900
1901 extern struct Expression * MkExpIndex(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * index);
1902
1903 extern struct Expression * MkExpCall(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * arguments);
1904
1905 extern struct __ecereNameSpace__ecere__sys__OldList *  MkList(void);
1906
1907 extern struct Expression * MkExpMember(struct Expression * expression, struct Identifier * member);
1908
1909 extern struct Expression * MkExpPointer(struct Expression * expression, struct Identifier * member);
1910
1911 extern struct Expression * MkExpOp(struct Expression * exp1, int op, struct Expression * exp2);
1912
1913 extern void ListAdd(struct __ecereNameSpace__ecere__sys__OldList * list, void *  item);
1914
1915 extern struct Expression * MkExpTypeSize(struct TypeName * typeName);
1916
1917 extern struct Expression * MkExpTypeAlign(struct TypeName * typeName);
1918
1919 extern struct Expression * MkExpCast(struct TypeName * typeName, struct Expression * expression);
1920
1921 extern unsigned int skipErrors;
1922
1923 extern struct Expression * MkExpCondition(struct Expression * cond, struct __ecereNameSpace__ecere__sys__OldList * expressions, struct Expression * elseExp);
1924
1925 extern struct Declaration * MkDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * initDeclarators);
1926
1927 extern struct Declaration * MkDeclarationInst(struct Instantiation * inst);
1928
1929 extern struct Declaration * MkDeclarationDefine(struct Identifier * id, struct Expression * exp);
1930
1931 extern struct Specifier * MkSpecifierNameArgs(char *  name, struct __ecereNameSpace__ecere__sys__OldList *  templateArgs);
1932
1933 extern struct InitDeclarator * MkInitDeclarator(struct Declarator * declarator, struct Initializer * initializer);
1934
1935 extern struct Specifier * MkSpecifier(int specifier);
1936
1937 extern struct ExtDecl * MkExtDeclString(char * s);
1938
1939 extern char *  __ecereNameSpace__ecere__sys__CopyString(char *  string);
1940
1941 extern struct ExtDecl * MkExtDeclAttrib(struct Attrib * attr);
1942
1943 extern struct Attribute * MkAttribute(char * attr, struct Expression * exp);
1944
1945 extern struct Attrib * MkAttrib(int type, struct __ecereNameSpace__ecere__sys__OldList *  attribs);
1946
1947 extern struct Specifier * MkSpecifierExtended(struct ExtDecl * extDecl);
1948
1949 extern struct Specifier * MkSpecifierTypeOf(struct Expression * expression);
1950
1951 extern struct Specifier * MkSpecifierSubClass(struct Specifier * _class);
1952
1953 extern struct Specifier * MkStructOrUnion(int type, struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * definitions);
1954
1955 extern int declMode;
1956
1957 extern struct TemplateDatatype * MkTemplateDatatype(struct __ecereNameSpace__ecere__sys__OldList *  specifiers, struct Declarator * decl);
1958
1959 extern struct TemplateArgument * MkTemplateTypeArgument(struct TemplateDatatype * tplDatatype);
1960
1961 extern struct TemplateArgument * MkTemplateExpressionArgument(struct Expression * expr);
1962
1963 extern struct MemberInit * MkMemberInitExp(struct Expression * idExp, struct Initializer * initializer);
1964
1965 extern struct PropertyDef * MkProperty(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * decl, struct Identifier * id, struct Statement * setStmt, struct Statement * getStmt);
1966
1967 extern struct ClassDef * MkClassDefDeclaration(struct Declaration * decl);
1968
1969 extern struct Declaration * MkStructDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * declarators, struct Specifier * extStorage);
1970
1971 extern struct Declaration * MkDeclarationClassInst(struct Instantiation * inst);
1972
1973 extern struct ClassDef * MkClassDefFunction(struct ClassFunction * function);
1974
1975 extern struct ClassDef * MkClassDefDefaultProperty(struct __ecereNameSpace__ecere__sys__OldList * defProperties);
1976
1977 extern struct ClassDef * MkClassDefProperty(struct PropertyDef * propertyDef);
1978
1979 extern struct Declarator * MkStructDeclarator(struct Declarator * declarator, struct Expression * exp);
1980
1981 extern struct Specifier * MkEnum(struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * list);
1982
1983 extern struct Enumerator * MkEnumerator(struct Identifier * id, struct Expression * exp);
1984
1985 extern struct Declarator * MkDeclaratorBrackets(struct Declarator * declarator);
1986
1987 extern struct Declarator * MkDeclaratorArray(struct Declarator * declarator, struct Expression * exp);
1988
1989 extern struct Declarator * MkDeclaratorEnumArray(struct Declarator * declarator, struct Specifier * _class);
1990
1991 extern struct Declarator * MkDeclaratorFunction(struct Declarator * declarator, struct __ecereNameSpace__ecere__sys__OldList * parameters);
1992
1993 extern struct Declarator * MkDeclaratorPointer(struct Pointer * pointer, struct Declarator * declarator);
1994
1995 extern struct Declarator * MkDeclaratorExtended(struct ExtDecl * extended, struct Declarator * declarator);
1996
1997 extern struct Declarator * MkDeclaratorExtendedEnd(struct ExtDecl * extended, struct Declarator * declarator);
1998
1999 extern struct Declarator * MkDeclaratorIdentifier(struct Identifier * id);
2000
2001 extern struct Pointer * MkPointer(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Pointer * pointer);
2002
2003 extern struct Initializer * MkInitializerAssignment(struct Expression * exp);
2004
2005 extern struct Initializer * MkInitializerList(struct __ecereNameSpace__ecere__sys__OldList * list);
2006
2007 extern struct Statement * MkLabeledStmt(struct Identifier * id, struct Statement * statement);
2008
2009 extern struct Statement * MkCaseStmt(struct Expression * exp, struct Statement * statement);
2010
2011 extern struct Statement * MkBadDeclStmt(struct Declaration * decl);
2012
2013 extern struct Statement * MkCompoundStmt(struct __ecereNameSpace__ecere__sys__OldList * declarations, struct __ecereNameSpace__ecere__sys__OldList * statements);
2014
2015 extern struct Context * PushContext(void);
2016
2017 extern struct Statement * MkExpressionStmt(struct __ecereNameSpace__ecere__sys__OldList * expressions);
2018
2019 extern struct Statement * MkIfStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement, struct Statement * elseStmt);
2020
2021 extern struct Statement * MkSwitchStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
2022
2023 extern struct Statement * MkWhileStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
2024
2025 extern struct Statement * MkDoWhileStmt(struct Statement * statement, struct __ecereNameSpace__ecere__sys__OldList * exp);
2026
2027 extern struct Statement * MkForStmt(struct Statement * init, struct Statement * check, struct __ecereNameSpace__ecere__sys__OldList * inc, struct Statement * statement);
2028
2029 extern struct Statement * MkGotoStmt(struct Identifier * id);
2030
2031 extern struct Statement * MkContinueStmt(void);
2032
2033 extern struct Statement * MkBreakStmt(void);
2034
2035 extern struct Statement * MkReturnStmt(struct __ecereNameSpace__ecere__sys__OldList * exp);
2036
2037 extern struct Instantiation * MkInstantiationNamed(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
2038
2039 extern struct Instantiation * MkInstantiation(struct Specifier * _class, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
2040
2041 extern void ProcessClassFunctionBody(struct ClassFunction * func, struct Statement * body);
2042
2043 extern struct MemberInit * MkMemberInit(struct __ecereNameSpace__ecere__sys__OldList * ids, struct Initializer * initializer);
2044
2045 extern struct MembersInit * MkMembersInitList(struct __ecereNameSpace__ecere__sys__OldList * dataMembers);
2046
2047 extern struct MembersInit * MkMembersInitMethod(struct ClassFunction * function);
2048
2049 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
2050
2051 int type_yyparse(void)
2052 {
2053 int yystate;
2054 int yyerrstatus;
2055 yytype_int16 yyssa[200];
2056 yytype_int16 * yyss;
2057 yytype_int16 * yyssp;
2058 YYSTYPE yyvsa[200];
2059 YYSTYPE * yyvs;
2060 YYSTYPE * yyvsp;
2061 struct Location yylsa[200];
2062 struct Location * yyls;
2063 struct Location * yylsp;
2064 struct Location yyerror_range[2];
2065 unsigned int yystacksize;
2066 int yyn;
2067 int yyresult;
2068 int yytoken;
2069 YYSTYPE yyval;
2070 struct Location yyloc;
2071 int yylen = 0;
2072
2073 yytoken = 0;
2074 yyss = yyssa;
2075 yyvs = yyvsa;
2076 yyls = yylsa;
2077 yystacksize = 200;
2078 do
2079 {
2080 if(type_yydebug)
2081 fprintf((bsl_stderr()), "Starting parse\n");
2082 }while((0));
2083 yystate = 0;
2084 yyerrstatus = 0;
2085 type_yynerrs = 0;
2086 type_yychar = (-2);
2087 yyssp = yyss;
2088 yyvsp = yyvs;
2089 yylsp = yyls;
2090 goto yysetstate;
2091 yynewstate:
2092 yyssp++;
2093 yysetstate:
2094 *yyssp = yystate;
2095 if(yyss + yystacksize - 1 <= yyssp)
2096 {
2097 unsigned int yysize = yyssp - yyss + 1;
2098
2099 if(10000 <= yystacksize)
2100 goto yyexhaustedlab;
2101 yystacksize *= 2;
2102 if(10000 < yystacksize)
2103 yystacksize = 10000;
2104 {
2105 yytype_int16 * yyss1 = yyss;
2106 union yyalloc * yyptr = (union yyalloc *)malloc(((yystacksize) * (sizeof(yytype_int16) + sizeof(YYSTYPE) + sizeof(struct Location)) + 2 * (sizeof(union yyalloc) - 1)));
2107
2108 if(!yyptr)
2109 goto yyexhaustedlab;
2110 do
2111 {
2112 unsigned int yynewbytes;
2113
2114 __builtin_memcpy(&(*yyptr).yyss_alloc, yyss, (yysize) * sizeof *(yyss));
2115 yyss = &(*yyptr).yyss_alloc;
2116 yynewbytes = yystacksize * sizeof *yyss + (sizeof(union yyalloc) - 1);
2117 yyptr += yynewbytes / sizeof *yyptr;
2118 }while((0));
2119 do
2120 {
2121 unsigned int yynewbytes;
2122
2123 __builtin_memcpy(&(*yyptr).yyvs_alloc, yyvs, (yysize) * sizeof *(yyvs));
2124 yyvs = &(*yyptr).yyvs_alloc;
2125 yynewbytes = yystacksize * sizeof *yyvs + (sizeof(union yyalloc) - 1);
2126 yyptr += yynewbytes / sizeof *yyptr;
2127 }while((0));
2128 do
2129 {
2130 unsigned int yynewbytes;
2131
2132 __builtin_memcpy(&(*yyptr).yyls_alloc, yyls, (yysize) * sizeof *(yyls));
2133 yyls = &(*yyptr).yyls_alloc;
2134 yynewbytes = yystacksize * sizeof *yyls + (sizeof(union yyalloc) - 1);
2135 yyptr += yynewbytes / sizeof *yyptr;
2136 }while((0));
2137 if(yyss1 != yyssa)
2138 free(yyss1);
2139 }
2140 yyssp = yyss + yysize - 1;
2141 yyvsp = yyvs + yysize - 1;
2142 yylsp = yyls + yysize - 1;
2143 do
2144 {
2145 if(type_yydebug)
2146 fprintf((bsl_stderr()), "Stack size increased to %lu\n", yystacksize);
2147 }while((0));
2148 if(yyss + yystacksize - 1 <= yyssp)
2149 goto yyabortlab;
2150 }
2151 do
2152 {
2153 if(type_yydebug)
2154 fprintf((bsl_stderr()), "Entering state %d\n", yystate);
2155 }while((0));
2156 if(yystate == 96)
2157 goto yyacceptlab;
2158 goto yybackup;
2159 yybackup:
2160 yyn = yypact[yystate];
2161 if(yyn == -761)
2162 goto yydefault;
2163 if(type_yychar == (-2))
2164 {
2165 do
2166 {
2167 if(type_yydebug)
2168 fprintf((bsl_stderr()), "Reading a token: ");
2169 }while((0));
2170 type_yychar = yylex();
2171 }
2172 if(type_yychar <= 0)
2173 {
2174 type_yychar = yytoken = 0;
2175 do
2176 {
2177 if(type_yydebug)
2178 fprintf((bsl_stderr()), "Now at end of input.\n");
2179 }while((0));
2180 }
2181 else
2182 {
2183 yytoken = ((unsigned int)(type_yychar) <= 366 ? yytranslate[type_yychar] : 2);
2184 do
2185 {
2186 if(type_yydebug)
2187 {
2188 fprintf((bsl_stderr()), "%s ", "Next token is");
2189 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2190 fprintf((bsl_stderr()), "\n");
2191 }
2192 }while((0));
2193 }
2194 yyn += yytoken;
2195 if(yyn < 0 || 8926 < yyn || yycheck[yyn] != yytoken)
2196 goto yydefault;
2197 yyn = yytable[yyn];
2198 if(yyn <= 0)
2199 {
2200 if(yyn == 0 || yyn == -501)
2201 goto yyerrlab;
2202 yyn = -yyn;
2203 goto yyreduce;
2204 }
2205 if(yyerrstatus)
2206 yyerrstatus--;
2207 do
2208 {
2209 if(type_yydebug)
2210 {
2211 fprintf((bsl_stderr()), "%s ", "Shifting");
2212 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2213 fprintf((bsl_stderr()), "\n");
2214 }
2215 }while((0));
2216 type_yychar = (-2);
2217 yystate = yyn;
2218 *++yyvsp = type_yylval;
2219 *++yylsp = type_yylloc;
2220 goto yynewstate;
2221 yydefault:
2222 yyn = yydefact[yystate];
2223 if(yyn == 0)
2224 goto yyerrlab;
2225 goto yyreduce;
2226 yyreduce:
2227 yylen = yyr2[yyn];
2228 yyval = yyvsp[1 - yylen];
2229 (yyloc.start = ((yylsp - yylen))[1].start);
2230 (yyloc.end = ((yylsp - yylen))[yylen].end);
2231 ;
2232 do
2233 {
2234 if(type_yydebug)
2235 yy_reduce_print(yyvsp, yylsp, yyn);
2236 }while((0));
2237 switch(yyn)
2238 {
2239 case 2:
2240 {
2241 yyval.specifier = (((void *)0));
2242 DeclClass(0, yyvsp[(1) - (2)].id->string);
2243 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))fileInput->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2244 resetScannerPos(&(yylsp[(1) - (2)]).start);
2245 (type_yychar = (-2));
2246 FreeIdentifier(yyvsp[(1) - (2)].id);
2247 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2248 yystate = *yyssp;
2249 do
2250 {
2251 if(type_yydebug)
2252 yy_stack_print((yyss), (yyssp));
2253 }while((0));
2254 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2255 yystate = *yyssp;
2256 do
2257 {
2258 if(type_yydebug)
2259 yy_stack_print((yyss), (yyssp));
2260 }while((0));
2261 goto yysetstate;
2262 ;
2263 }
2264 break;
2265 case 3:
2266 {
2267 yyval.specifier = (((void *)0));
2268 if(yyvsp[(1) - (2)].id->_class)
2269 {
2270 char name[1024];
2271
2272 strcpy(name, yyvsp[(1) - (2)].id->_class->name ? yyvsp[(1) - (2)].id->_class->name : "");
2273 strcat(name, "::");
2274 strcat(name, yyvsp[(1) - (2)].id->string);
2275 _DeclClass(0, name);
2276 }
2277 else
2278 _DeclClass(0, yyvsp[(1) - (2)].id->string);
2279 FreeIdentifier(yyvsp[(1) - (2)].id);
2280 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))fileInput->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2281 resetScannerPos(&(yylsp[(1) - (2)]).start);
2282 (type_yychar = (-2));
2283 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2284 yystate = *yyssp;
2285 do
2286 {
2287 if(type_yydebug)
2288 yy_stack_print((yyss), (yyssp));
2289 }while((0));
2290 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2291 yystate = *yyssp;
2292 do
2293 {
2294 if(type_yydebug)
2295 yy_stack_print((yyss), (yyssp));
2296 }while((0));
2297 goto yysetstate;
2298 ;
2299 }
2300 break;
2301 case 4:
2302 {
2303 DeclClass(0, yyvsp[(1) - (2)].id->string);
2304 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))fileInput->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2305 parseTypeError = (unsigned int)0;
2306 resetScannerPos(&(yylsp[(1) - (2)]).start);
2307 (type_yychar = (-2));
2308 FreeIdentifier(yyvsp[(1) - (2)].id);
2309 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2310 yystate = *yyssp;
2311 do
2312 {
2313 if(type_yydebug)
2314 yy_stack_print((yyss), (yyssp));
2315 }while((0));
2316 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2317 yystate = *yyssp;
2318 do
2319 {
2320 if(type_yydebug)
2321 yy_stack_print((yyss), (yyssp));
2322 }while((0));
2323 goto yysetstate;
2324 ;
2325 }
2326 break;
2327 case 5:
2328 {
2329 yyval.specifier = yyvsp[(1) - (1)].specifier;
2330 ;
2331 }
2332 break;
2333 case 6:
2334 {
2335 DeclClass(0, yyvsp[(1) - (2)].id->string);
2336 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))fileInput->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2337 resetScannerPos(&(yylsp[(1) - (2)]).start);
2338 (type_yychar = (-2));
2339 FreeIdentifier(yyvsp[(1) - (2)].id);
2340 FreeIdentifier(yyvsp[(2) - (2)].id);
2341 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2342 yystate = *yyssp;
2343 do
2344 {
2345 if(type_yydebug)
2346 yy_stack_print((yyss), (yyssp));
2347 }while((0));
2348 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2349 yystate = *yyssp;
2350 do
2351 {
2352 if(type_yydebug)
2353 yy_stack_print((yyss), (yyssp));
2354 }while((0));
2355 goto yysetstate;
2356 ;
2357 }
2358 break;
2359 case 7:
2360 {
2361 yyval.specifier = MkSpecifierName(yytext);
2362 ;
2363 }
2364 break;
2365 case 9:
2366 {
2367 yyval.specifier = yyvsp[(1) - (4)].specifier;
2368 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2369 yyval.specifier->loc = (yyloc);
2370 ;
2371 }
2372 break;
2373 case 10:
2374 {
2375 yyval.specifier = yyvsp[(1) - (4)].specifier;
2376 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2377 yyval.specifier->loc = (yyloc);
2378 (yylsp[(4) - (4)]).end.pos--;
2379 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))fileInput->_vTbl[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(4) - (4)]).end.pos, 0);
2380 resetScannerPos(&(yylsp[(4) - (4)]).end);
2381 (type_yychar = (-2));
2382 ;
2383 }
2384 break;
2385 case 11:
2386 {
2387 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2388 yyval.classFunction->loc = (yyloc);
2389 yyval.classFunction->id = ++globalContext->nextID;
2390 ;
2391 }
2392 break;
2393 case 12:
2394 {
2395 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(1) - (1)].declarator, (((void *)0)));
2396 yyval.classFunction->loc = (yyloc);
2397 yyval.classFunction->id = ++globalContext->nextID;
2398 ;
2399 }
2400 break;
2401 case 13:
2402 {
2403 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2404 yyval.classFunction->isConstructor = 0x1;
2405 yyval.classFunction->loc = (yyloc);
2406 yyval.classFunction->id = ++globalContext->nextID;
2407 FreeList(yyvsp[(1) - (3)].list, FreeSpecifier);
2408 ;
2409 }
2410 break;
2411 case 14:
2412 {
2413 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2414 yyval.classFunction->isDestructor = 0x1;
2415 yyval.classFunction->loc = (yyloc);
2416 yyval.classFunction->id = ++globalContext->nextID;
2417 FreeList(yyvsp[(2) - (4)].list, FreeSpecifier);
2418 ;
2419 }
2420 break;
2421 case 15:
2422 {
2423 yyval.classFunction = MkClassFunction(yyvsp[(2) - (3)].list, (((void *)0)), yyvsp[(3) - (3)].declarator, (((void *)0)));
2424 yyval.classFunction->isVirtual = 0x1;
2425 yyval.classFunction->loc = (yyloc);
2426 yyval.classFunction->id = ++globalContext->nextID;
2427 ;
2428 }
2429 break;
2430 case 16:
2431 {
2432 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2433 yyval.classFunction->isVirtual = 0x1;
2434 yyval.classFunction->loc = (yyloc);
2435 yyval.classFunction->id = ++globalContext->nextID;
2436 ;
2437 }
2438 break;
2439 case 17:
2440 {
2441 yyval.id = MkIdentifier(yytext);
2442 yyval.id->loc = (yylsp[(1) - (1)]);
2443 ;
2444 }
2445 break;
2446 case 19:
2447 {
2448 yyval.exp = MkExpBrackets(yyvsp[(2) - (3)].list);
2449 yyval.exp->loc = (yyloc);
2450 ;
2451 }
2452 break;
2453 case 20:
2454 {
2455 yyval.exp = MkExpIdentifier(yyvsp[(1) - (1)].id);
2456 yyval.exp->loc = (yyloc);
2457 ;
2458 }
2459 break;
2460 case 21:
2461 {
2462 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2463 yyval.exp->loc = (yyloc);
2464 ;
2465 }
2466 break;
2467 case 22:
2468 {
2469 yyval.exp = MkExpConstant(yytext);
2470 yyval.exp->loc = (yyloc);
2471 ;
2472 }
2473 break;
2474 case 23:
2475 {
2476 yyval.exp = MkExpString(yyvsp[(1) - (1)].string);
2477 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(1) - (1)].string), yyvsp[(1) - (1)].string = 0);
2478 yyval.exp->loc = (yyloc);
2479 ;
2480 }
2481 break;
2482 case 24:
2483 {
2484 yyval.exp = MkExpIntlString(yyvsp[(2) - (2)].string, (((void *)0)));
2485 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (2)].string), yyvsp[(2) - (2)].string = 0);
2486 yyval.exp->loc = (yyloc);
2487 ;
2488 }
2489 break;
2490 case 25:
2491 {
2492 yyval.exp = MkExpIntlString(yyvsp[(4) - (4)].string, yyvsp[(2) - (4)].string);
2493 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (4)].string), yyvsp[(2) - (4)].string = 0);
2494 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(4) - (4)].string), yyvsp[(4) - (4)].string = 0);
2495 yyval.exp->loc = (yyloc);
2496 ;
2497 }
2498 break;
2499 case 26:
2500 {
2501 struct Expression * exp = MkExpDummy();
2502
2503 exp->loc.start = (yylsp[(1) - (2)]).end;
2504 exp->loc.end = (yylsp[(2) - (2)]).start;
2505 yyval.exp = MkExpBrackets(MkListOne(exp));
2506 yyval.exp->loc = (yyloc);
2507 yyerror();
2508 ;
2509 }
2510 break;
2511 case 27:
2512 {
2513 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2514 yyval.exp->loc = (yyloc);
2515 ;
2516 }
2517 break;
2518 case 28:
2519 {
2520 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2521 yyval.exp->loc = (yyloc);
2522 ;
2523 }
2524 break;
2525 case 29:
2526 {
2527 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2528 yyval.exp->loc = (yyloc);
2529 ;
2530 }
2531 break;
2532 case 30:
2533 {
2534 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2535 yyval.exp->loc = (yyloc);
2536 ;
2537 }
2538 break;
2539 case 31:
2540 {
2541 yyval.exp = MkExpRenew(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2542 yyval.exp->loc = (yyloc);
2543 ;
2544 }
2545 break;
2546 case 32:
2547 {
2548 yyval.exp = MkExpRenew(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2549 yyval.exp->loc = (yyloc);
2550 ;
2551 }
2552 break;
2553 case 33:
2554 {
2555 yyval.exp = MkExpRenew0(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2556 yyval.exp->loc = (yyloc);
2557 ;
2558 }
2559 break;
2560 case 34:
2561 {
2562 yyval.exp = MkExpRenew0(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2563 yyval.exp->loc = (yyloc);
2564 ;
2565 }
2566 break;
2567 case 35:
2568 {
2569 yyval.exp = MkExpDummy();
2570 ;
2571 }
2572 break;
2573 case 37:
2574 {
2575 yyval.exp = MkExpIndex(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2576 yyval.exp->loc = (yyloc);
2577 ;
2578 }
2579 break;
2580 case 38:
2581 {
2582 yyval.exp = MkExpCall(yyvsp[(1) - (3)].exp, MkList());
2583 yyval.exp->call.argLoc.start = (yylsp[(2) - (3)]).start;
2584 yyval.exp->call.argLoc.end = (yylsp[(3) - (3)]).end;
2585 yyval.exp->loc = (yyloc);
2586 ;
2587 }
2588 break;
2589 case 39:
2590 {
2591 yyval.exp = MkExpCall(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2592 yyval.exp->call.argLoc.start = (yylsp[(2) - (4)]).start;
2593 yyval.exp->call.argLoc.end = (yylsp[(4) - (4)]).end;
2594 yyval.exp->loc = (yyloc);
2595 ;
2596 }
2597 break;
2598 case 40:
2599 {
2600 yyval.exp = MkExpMember(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2601 yyval.exp->loc = (yyloc);
2602 ;
2603 }
2604 break;
2605 case 41:
2606 {
2607 yyval.exp = MkExpPointer(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2608 yyval.exp->loc = (yyloc);
2609 ;
2610 }
2611 break;
2612 case 42:
2613 {
2614 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, INC_OP, (((void *)0)));
2615 yyval.exp->loc = (yyloc);
2616 ;
2617 }
2618 break;
2619 case 43:
2620 {
2621 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, DEC_OP, (((void *)0)));
2622 yyval.exp->loc = (yyloc);
2623 ;
2624 }
2625 break;
2626 case 44:
2627 {
2628 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2629 yyval.exp->loc = (yyloc);
2630 ;
2631 }
2632 break;
2633 case 46:
2634 {
2635 yyval.exp = MkExpIndex(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2636 yyval.exp->loc = (yyloc);
2637 ;
2638 }
2639 break;
2640 case 47:
2641 {
2642 yyval.exp = MkExpCall(yyvsp[(1) - (3)].exp, MkList());
2643 yyval.exp->call.argLoc.start = (yylsp[(2) - (3)]).start;
2644 yyval.exp->call.argLoc.end = (yylsp[(3) - (3)]).end;
2645 yyval.exp->loc = (yyloc);
2646 ;
2647 }
2648 break;
2649 case 48:
2650 {
2651 yyval.exp = MkExpCall(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2652 yyval.exp->call.argLoc.start = (yylsp[(2) - (4)]).start;
2653 yyval.exp->call.argLoc.end = (yylsp[(4) - (4)]).end;
2654 yyval.exp->loc = (yyloc);
2655 ;
2656 }
2657 break;
2658 case 49:
2659 {
2660 yyval.exp = MkExpMember(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2661 yyval.exp->loc = (yyloc);
2662 ;
2663 }
2664 break;
2665 case 50:
2666 {
2667 yyval.exp = MkExpPointer(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2668 yyval.exp->loc = (yyloc);
2669 ;
2670 }
2671 break;
2672 case 51:
2673 {
2674 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, INC_OP, (((void *)0)));
2675 yyval.exp->loc = (yyloc);
2676 ;
2677 }
2678 break;
2679 case 52:
2680 {
2681 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, DEC_OP, (((void *)0)));
2682 yyval.exp->loc = (yyloc);
2683 ;
2684 }
2685 break;
2686 case 53:
2687 {
2688 yyval.list = MkList();
2689 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2690 ;
2691 }
2692 break;
2693 case 54:
2694 {
2695 yyval.list = MkList();
2696 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2697 ;
2698 }
2699 break;
2700 case 55:
2701 {
2702 yyval.list = yyvsp[(1) - (3)].list;
2703 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2704 ;
2705 }
2706 break;
2707 case 56:
2708 {
2709 yyval.list = yyvsp[(1) - (3)].list;
2710 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2711 ;
2712 }
2713 break;
2714 case 57:
2715 {
2716 yyval.exp = MkExpOp((((void *)0)), INC_OP, yyvsp[(2) - (2)].exp);
2717 yyval.exp->loc = (yyloc);
2718 ;
2719 }
2720 break;
2721 case 58:
2722 {
2723 yyval.exp = MkExpOp((((void *)0)), DEC_OP, yyvsp[(2) - (2)].exp);
2724 yyval.exp->loc = (yyloc);
2725 ;
2726 }
2727 break;
2728 case 59:
2729 {
2730 yyval.exp = MkExpOp((((void *)0)), yyvsp[(1) - (2)].i, yyvsp[(2) - (2)].exp);
2731 yyval.exp->loc = (yyloc);
2732 ;
2733 }
2734 break;
2735 case 60:
2736 {
2737 yyval.exp = MkExpOp((((void *)0)), SIZEOF, yyvsp[(3) - (4)].exp);
2738 yyval.exp->loc = (yyloc);
2739 ;
2740 }
2741 break;
2742 case 61:
2743 {
2744 yyval.exp = MkExpOp((((void *)0)), SIZEOF, yyvsp[(2) - (2)].exp);
2745 yyval.exp->loc = (yyloc);
2746 ;
2747 }
2748 break;
2749 case 62:
2750 {
2751 yyval.exp = MkExpTypeSize(yyvsp[(3) - (4)].typeName);
2752 yyval.exp->loc = (yyloc);
2753 ;
2754 }
2755 break;
2756 case 63:
2757 {
2758 yyval.exp = MkExpOp((((void *)0)), ALIGNOF, yyvsp[(3) - (4)].exp);
2759 yyval.exp->loc = (yyloc);
2760 ;
2761 }
2762 break;
2763 case 64:
2764 {
2765 yyval.exp = MkExpOp((((void *)0)), ALIGNOF, yyvsp[(2) - (2)].exp);
2766 yyval.exp->loc = (yyloc);
2767 ;
2768 }
2769 break;
2770 case 65:
2771 {
2772 yyval.exp = MkExpTypeAlign(yyvsp[(3) - (4)].typeName);
2773 yyval.exp->loc = (yyloc);
2774 ;
2775 }
2776 break;
2777 case 70:
2778 {
2779 yyval.i = '&';
2780 ;
2781 }
2782 break;
2783 case 71:
2784 {
2785 yyval.i = '*';
2786 ;
2787 }
2788 break;
2789 case 72:
2790 {
2791 yyval.i = '+';
2792 ;
2793 }
2794 break;
2795 case 73:
2796 {
2797 yyval.i = '-';
2798 ;
2799 }
2800 break;
2801 case 74:
2802 {
2803 yyval.i = '~';
2804 ;
2805 }
2806 break;
2807 case 75:
2808 {
2809 yyval.i = '!';
2810 ;
2811 }
2812 break;
2813 case 76:
2814 {
2815 yyval.i = DELETE;
2816 ;
2817 }
2818 break;
2819 case 78:
2820 {
2821 yyval.exp = MkExpCast(yyvsp[(2) - (4)].typeName, yyvsp[(4) - (4)].exp);
2822 yyval.exp->loc = (yyloc);
2823 ;
2824 }
2825 break;
2826 case 80:
2827 {
2828 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '*', yyvsp[(3) - (3)].exp);
2829 yyval.exp->loc = (yyloc);
2830 ;
2831 }
2832 break;
2833 case 81:
2834 {
2835 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '/', yyvsp[(3) - (3)].exp);
2836 yyval.exp->loc = (yyloc);
2837 ;
2838 }
2839 break;
2840 case 82:
2841 {
2842 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '%', yyvsp[(3) - (3)].exp);
2843 yyval.exp->loc = (yyloc);
2844 ;
2845 }
2846 break;
2847 case 84:
2848 {
2849 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '+', yyvsp[(3) - (3)].exp);
2850 yyval.exp->loc = (yyloc);
2851 ;
2852 }
2853 break;
2854 case 85:
2855 {
2856 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '-', yyvsp[(3) - (3)].exp);
2857 yyval.exp->loc = (yyloc);
2858 ;
2859 }
2860 break;
2861 case 87:
2862 {
2863 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LEFT_OP, yyvsp[(3) - (3)].exp);
2864 yyval.exp->loc = (yyloc);
2865 ;
2866 }
2867 break;
2868 case 88:
2869 {
2870 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, RIGHT_OP, yyvsp[(3) - (3)].exp);
2871 yyval.exp->loc = (yyloc);
2872 ;
2873 }
2874 break;
2875 case 89:
2876 {
2877 yyval.exp = yyvsp[(1) - (2)].exp;
2878 skipErrors = 0x1;
2879 ;
2880 }
2881 break;
2882 case 91:
2883 {
2884 skipErrors = 0x0;
2885 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, '<', yyvsp[(2) - (2)].exp);
2886 yyval.exp->loc = (yyloc);
2887 ;
2888 }
2889 break;
2890 case 92:
2891 {
2892 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '>', yyvsp[(3) - (3)].exp);
2893 yyval.exp->loc = (yyloc);
2894 ;
2895 }
2896 break;
2897 case 93:
2898 {
2899 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LE_OP, yyvsp[(3) - (3)].exp);
2900 yyval.exp->loc = (yyloc);
2901 ;
2902 }
2903 break;
2904 case 94:
2905 {
2906 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, GE_OP, yyvsp[(3) - (3)].exp);
2907 yyval.exp->loc = (yyloc);
2908 ;
2909 }
2910 break;
2911 case 96:
2912 {
2913 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, EQ_OP, yyvsp[(3) - (3)].exp);
2914 yyval.exp->loc = (yyloc);
2915 ;
2916 }
2917 break;
2918 case 97:
2919 {
2920 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, NE_OP, yyvsp[(3) - (3)].exp);
2921 yyval.exp->loc = (yyloc);
2922 ;
2923 }
2924 break;
2925 case 99:
2926 {
2927 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '&', yyvsp[(3) - (3)].exp);
2928 yyval.exp->loc = (yyloc);
2929 ;
2930 }
2931 break;
2932 case 101:
2933 {
2934 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '^', yyvsp[(3) - (3)].exp);
2935 yyval.exp->loc = (yyloc);
2936 ;
2937 }
2938 break;
2939 case 103:
2940 {
2941 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '|', yyvsp[(3) - (3)].exp);
2942 yyval.exp->loc = (yyloc);
2943 ;
2944 }
2945 break;
2946 case 105:
2947 {
2948 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, AND_OP, yyvsp[(3) - (3)].exp);
2949 yyval.exp->loc = (yyloc);
2950 ;
2951 }
2952 break;
2953 case 107:
2954 {
2955 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, OR_OP, yyvsp[(3) - (3)].exp);
2956 yyval.exp->loc = (yyloc);
2957 ;
2958 }
2959 break;
2960 case 109:
2961 {
2962 yyval.exp = MkExpCondition(yyvsp[(1) - (5)].exp, yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].exp);
2963 yyval.exp->loc = (yyloc);
2964 ;
2965 }
2966 break;
2967 case 111:
2968 {
2969 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
2970 yyval.exp->loc = (yyloc);
2971 ;
2972 }
2973 break;
2974 case 112:
2975 {
2976 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
2977 yyval.exp->loc = (yyloc);
2978 ;
2979 }
2980 break;
2981 case 113:
2982 {
2983 yyval.i = '=';
2984 ;
2985 }
2986 break;
2987 case 114:
2988 {
2989 yyval.i = MUL_ASSIGN;
2990 ;
2991 }
2992 break;
2993 case 115:
2994 {
2995 yyval.i = DIV_ASSIGN;
2996 ;
2997 }
2998 break;
2999 case 116:
3000 {
3001 yyval.i = MOD_ASSIGN;
3002 ;
3003 }
3004 break;
3005 case 117:
3006 {
3007 yyval.i = ADD_ASSIGN;
3008 ;
3009 }
3010 break;
3011 case 118:
3012 {
3013 yyval.i = SUB_ASSIGN;
3014 ;
3015 }
3016 break;
3017 case 119:
3018 {
3019 yyval.i = LEFT_ASSIGN;
3020 ;
3021 }
3022 break;
3023 case 120:
3024 {
3025 yyval.i = RIGHT_ASSIGN;
3026 ;
3027 }
3028 break;
3029 case 121:
3030 {
3031 yyval.i = AND_ASSIGN;
3032 ;
3033 }
3034 break;
3035 case 122:
3036 {
3037 yyval.i = XOR_ASSIGN;
3038 ;
3039 }
3040 break;
3041 case 123:
3042 {
3043 yyval.i = OR_ASSIGN;
3044 ;
3045 }
3046 break;
3047 case 124:
3048 {
3049 yyval.list = MkList();
3050 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
3051 ;
3052 }
3053 break;
3054 case 125:
3055 {
3056 yyval.list = yyvsp[(1) - (3)].list;
3057 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
3058 ;
3059 }
3060 break;
3061 case 127:
3062 {
3063 yyval.declaration = MkDeclaration(yyvsp[(1) - (2)].list, (((void *)0)));
3064 yyval.declaration->loc = (yyloc);
3065 ;
3066 }
3067 break;
3068 case 128:
3069 {
3070 yyval.declaration = MkDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list);
3071 yyval.declaration->loc = (yyloc);
3072 ;
3073 }
3074 break;
3075 case 129:
3076 {
3077 yyval.declaration = MkDeclarationInst(yyvsp[(1) - (2)].instance);
3078 yyval.declaration->loc = (yyloc);
3079 ;
3080 }
3081 break;
3082 case 130:
3083 {
3084 yyval.declaration = MkDeclarationDefine(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].exp);
3085 yyval.declaration->loc = (yyloc);
3086 ;
3087 }
3088 break;
3089 case 131:
3090 {
3091 yyval.list = MkList();
3092 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3093 ;
3094 }
3095 break;
3096 case 132:
3097 {
3098 yyval.list = yyvsp[(1) - (2)].list;
3099 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3100 ;
3101 }
3102 break;
3103 case 133:
3104 {
3105 yyval.list = MkList();
3106 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3107 ;
3108 }
3109 break;
3110 case 134:
3111 {
3112 yyval.list = yyvsp[(1) - (2)].list;
3113 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3114 ;
3115 }
3116 break;
3117 case 135:
3118 {
3119 yyval.list = MkList();
3120 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3121 ;
3122 }
3123 break;
3124 case 136:
3125 {
3126 yyval.list = yyvsp[(1) - (2)].list;
3127 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3128 ;
3129 }
3130 break;
3131 case 137:
3132 {
3133 yyval.list = MkList();
3134 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3135 ;
3136 }
3137 break;
3138 case 138:
3139 {
3140 yyval.list = yyvsp[(1) - (2)].list;
3141 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3142 ;
3143 }
3144 break;
3145 case 139:
3146 {
3147 yyval.list = MkList();
3148 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3149 ;
3150 }
3151 break;
3152 case 140:
3153 {
3154 yyval.list = yyvsp[(1) - (2)].list;
3155 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3156 ;
3157 }
3158 break;
3159 case 141:
3160 {
3161 yyval.list = MkList();
3162 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3163 ;
3164 }
3165 break;
3166 case 142:
3167 {
3168 yyval.list = yyvsp[(1) - (2)].list;
3169 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3170 ;
3171 }
3172 break;
3173 case 143:
3174 {
3175 yyval.list = MkList();
3176 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3177 ;
3178 }
3179 break;
3180 case 144:
3181 {
3182 yyval.list = yyvsp[(1) - (2)].list;
3183 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3184 ;
3185 }
3186 break;
3187 case 145:
3188 {
3189 yyval.list = MkList();
3190 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3191 ;
3192 }
3193 break;
3194 case 146:
3195 {
3196 yyval.list = yyvsp[(1) - (2)].list;
3197 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3198 ;
3199 }
3200 break;
3201 case 147:
3202 {
3203 yyval.list = MkList();
3204 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3205 ;
3206 }
3207 break;
3208 case 148:
3209 {
3210 yyval.list = yyvsp[(1) - (2)].list;
3211 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3212 ;
3213 }
3214 break;
3215 case 149:
3216 {
3217 yyval.list = MkList();
3218 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3219 ;
3220 }
3221 break;
3222 case 150:
3223 {
3224 yyval.list = yyvsp[(1) - (2)].list;
3225 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3226 ;
3227 }
3228 break;
3229 case 151:
3230 {
3231 yyval.list = MkList();
3232 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3233 ;
3234 }
3235 break;
3236 case 152:
3237 {
3238 yyval.list = yyvsp[(1) - (2)].list;
3239 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3240 ;
3241 }
3242 break;
3243 case 153:
3244 {
3245 yyval.list = MkList();
3246 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3247 ;
3248 }
3249 break;
3250 case 154:
3251 {
3252 yyval.list = yyvsp[(1) - (2)].list;
3253 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3254 ;
3255 }
3256 break;
3257 case 155:
3258 {
3259 yyval.list = MkList();
3260 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3261 ;
3262 }
3263 break;
3264 case 156:
3265 {
3266 yyval.list = yyvsp[(1) - (2)].list;
3267 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3268 ;
3269 }
3270 break;
3271 case 157:
3272 {
3273 yyval.list = MkList();
3274 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3275 ;
3276 }
3277 break;
3278 case 158:
3279 {
3280 yyval.list = yyvsp[(1) - (2)].list;
3281 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3282 ;
3283 }
3284 break;
3285 case 159:
3286 {
3287 yyval.list = MkList();
3288 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3289 ;
3290 }
3291 break;
3292 case 160:
3293 {
3294 yyval.list = yyvsp[(1) - (2)].list;
3295 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3296 ;
3297 }
3298 break;
3299 case 161:
3300 {
3301 yyval.list = MkList();
3302 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3303 ;
3304 }
3305 break;
3306 case 162:
3307 {
3308 yyval.list = yyvsp[(1) - (2)].list;
3309 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3310 ;
3311 }
3312 break;
3313 case 163:
3314 {
3315 yyval.list = MkList();
3316 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3317 ;
3318 }
3319 break;
3320 case 164:
3321 {
3322 yyval.list = yyvsp[(1) - (2)].list;
3323 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3324 ;
3325 }
3326 break;
3327 case 165:
3328 {
3329 yyval.list = MkList();
3330 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3331 ;
3332 }
3333 break;
3334 case 166:
3335 {
3336 yyval.list = yyvsp[(1) - (2)].list;
3337 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3338 ;
3339 }
3340 break;
3341 case 167:
3342 {
3343 yyval.list = MkList();
3344 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3345 ;
3346 }
3347 break;
3348 case 168:
3349 {
3350 yyval.list = yyvsp[(1) - (2)].list;
3351 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3352 ;
3353 }
3354 break;
3355 case 169:
3356 {
3357 yyval.list = MkList();
3358 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3359 ;
3360 }
3361 break;
3362 case 170:
3363 {
3364 yyval.list = yyvsp[(1) - (2)].list;
3365 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3366 ;
3367 }
3368 break;
3369 case 171:
3370 {
3371 yyval.list = yyvsp[(1) - (1)].list;
3372 ;
3373 }
3374 break;
3375 case 172:
3376 {
3377 yyval.list = MkList();
3378 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3379 ;
3380 }
3381 break;
3382 case 173:
3383 {
3384 yyval.list = MkList();
3385 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3386 ;
3387 }
3388 break;
3389 case 174:
3390 {
3391 yyval.list = yyvsp[(1) - (2)].list;
3392 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3393 ;
3394 }
3395 break;
3396 case 175:
3397 {
3398 yyval.list = MkList();
3399 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3400 ;
3401 }
3402 break;
3403 case 176:
3404 {
3405 yyval.list = yyvsp[(1) - (2)].list;
3406 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3407 ;
3408 }
3409 break;
3410 case 177:
3411 {
3412 yyval.list = MkList();
3413 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3414 ;
3415 }
3416 break;
3417 case 178:
3418 {
3419 yyval.list = yyvsp[(1) - (2)].list;
3420 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3421 ;
3422 }
3423 break;
3424 case 179:
3425 {
3426 yyval.list = MkList();
3427 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3428 FreeIdentifier(yyvsp[(1) - (1)].id);
3429 ;
3430 }
3431 break;
3432 case 180:
3433 {
3434 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3435 FreeIdentifier(yyvsp[(2) - (2)].id);
3436 ;
3437 }
3438 break;
3439 case 181:
3440 {
3441 if(yyvsp[(1) - (4)].id->_class)
3442 {
3443 char name[1024];
3444
3445 strcpy(name, yyvsp[(1) - (4)].id->_class->name ? yyvsp[(1) - (4)].id->_class->name : "");
3446 strcat(name, "::");
3447 strcat(name, yyvsp[(1) - (4)].id->string);
3448 _DeclClass(0, name);
3449 }
3450 else
3451 _DeclClass(0, yyvsp[(1) - (4)].id->string);
3452 yyval.list = MkList();
3453 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3454 FreeIdentifier(yyvsp[(1) - (4)].id);
3455 ;
3456 }
3457 break;
3458 case 182:
3459 {
3460 if(yyvsp[(2) - (5)].id->_class && !yyvsp[(2) - (5)].id->_class->name)
3461 {
3462 char name[1024];
3463
3464 strcpy(name, "::");
3465 strcat(name, yyvsp[(2) - (5)].id->string);
3466 _DeclClass(0, name);
3467 }
3468 else
3469 _DeclClass(0, yyvsp[(2) - (5)].id->string);
3470 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3471 FreeIdentifier(yyvsp[(2) - (5)].id);
3472 ;
3473 }
3474 break;
3475 case 183:
3476 {
3477 yyval.list = MkList();
3478 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3479 ;
3480 }
3481 break;
3482 case 184:
3483 {
3484 yyval.list = yyvsp[(1) - (2)].list;
3485 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3486 ;
3487 }
3488 break;
3489 case 185:
3490 {
3491 yyval.list = MkList();
3492 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3493 ;
3494 }
3495 break;
3496 case 186:
3497 {
3498 yyval.list = yyvsp[(1) - (2)].list;
3499 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3500 ;
3501 }
3502 break;
3503 case 187:
3504 {
3505 yyval.list = MkList();
3506 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3507 ;
3508 }
3509 break;
3510 case 188:
3511 {
3512 yyval.list = yyvsp[(1) - (2)].list;
3513 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3514 ;
3515 }
3516 break;
3517 case 189:
3518 {
3519 yyval.list = MkList();
3520 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3521 ;
3522 }
3523 break;
3524 case 190:
3525 {
3526 yyval.list = yyvsp[(1) - (2)].list;
3527 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3528 ;
3529 }
3530 break;
3531 case 191:
3532 {
3533 yyval.list = MkList();
3534 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3535 ;
3536 }
3537 break;
3538 case 192:
3539 {
3540 yyval.list = yyvsp[(1) - (2)].list;
3541 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3542 ;
3543 }
3544 break;
3545 case 193:
3546 {
3547 yyval.list = MkList();
3548 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3549 FreeIdentifier(yyvsp[(1) - (1)].id);
3550 ;
3551 }
3552 break;
3553 case 194:
3554 {
3555 yyval.list = yyvsp[(1) - (2)].list;
3556 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3557 FreeIdentifier(yyvsp[(2) - (2)].id);
3558 }
3559 break;
3560 case 195:
3561 {
3562 if(yyvsp[(1) - (4)].id->_class)
3563 {
3564 char name[1024];
3565
3566 strcpy(name, yyvsp[(1) - (4)].id->_class->name ? yyvsp[(1) - (4)].id->_class->name : "");
3567 strcat(name, "::");
3568 strcat(name, yyvsp[(1) - (4)].id->string);
3569 _DeclClass(0, name);
3570 }
3571 else
3572 _DeclClass(0, yyvsp[(1) - (4)].id->string);
3573 yyval.list = MkList();
3574 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3575 FreeIdentifier(yyvsp[(1) - (4)].id);
3576 ;
3577 }
3578 break;
3579 case 196:
3580 {
3581 if(yyvsp[(2) - (5)].id->_class && !yyvsp[(2) - (5)].id->_class->name)
3582 {
3583 char name[1024];
3584
3585 strcpy(name, "::");
3586 strcat(name, yyvsp[(2) - (5)].id->string);
3587 _DeclClass(0, name);
3588 }
3589 else
3590 _DeclClass(0, yyvsp[(2) - (5)].id->string);
3591 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3592 FreeIdentifier(yyvsp[(2) - (5)].id);
3593 ;
3594 }
3595 break;
3596 case 197:
3597 {
3598 yyval.list = MkList();
3599 ListAdd(yyval.list, yyvsp[(1) - (1)].initDeclarator);
3600 ;
3601 }
3602 break;
3603 case 198:
3604 {
3605 yyval.list = yyvsp[(1) - (3)].list;
3606 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initDeclarator);
3607 ;
3608 }
3609 break;
3610 case 199:
3611 {
3612 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
3613 yyval.initDeclarator->loc = (yyloc);
3614 ;
3615 }
3616 break;
3617 case 200:
3618 {
3619 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].initializer);
3620 yyval.initDeclarator->loc = (yyloc);
3621 yyval.initDeclarator->initializer->loc.start = (yylsp[(2) - (3)]).end;
3622 ;
3623 }
3624 break;
3625 case 201:
3626 {
3627 yyval.specifier = MkSpecifier(TYPEDEF);
3628 ;
3629 }
3630 break;
3631 case 202:
3632 {
3633 yyval.specifier = MkSpecifier(EXTERN);
3634 ;
3635 }
3636 break;
3637 case 203:
3638 {
3639 yyval.specifier = MkSpecifier(STATIC);
3640 ;
3641 }
3642 break;
3643 case 204:
3644 {
3645 yyval.specifier = MkSpecifier(AUTO);
3646 ;
3647 }
3648 break;
3649 case 205:
3650 {
3651 yyval.specifier = MkSpecifier(REGISTER);
3652 ;
3653 }
3654 break;
3655 case 206:
3656 {
3657 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
3658 ;
3659 }
3660 break;
3661 case 207:
3662 {
3663 yyval.extDecl = MkExtDeclString(__ecereNameSpace__ecere__sys__CopyString(yytext));
3664 ;
3665 }
3666 break;
3667 case 208:
3668 {
3669 yyval.extDecl = MkExtDeclAttrib(yyvsp[(1) - (1)].attrib);
3670 ;
3671 }
3672 break;
3673 case 209:
3674 {
3675 yyval.i = ATTRIB;
3676 ;
3677 }
3678 break;
3679 case 210:
3680 {
3681 yyval.i = ATTRIB_DEP;
3682 ;
3683 }
3684 break;
3685 case 211:
3686 {
3687 yyval.i = __ATTRIB;
3688 ;
3689 }
3690 break;
3691 case 212:
3692 {
3693 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3694 ;
3695 }
3696 break;
3697 case 213:
3698 {
3699 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3700 ;
3701 }
3702 break;
3703 case 214:
3704 {
3705 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3706 ;
3707 }
3708 break;
3709 case 215:
3710 {
3711 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3712 ;
3713 }
3714 break;
3715 case 216:
3716 {
3717 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
3718 ;
3719 }
3720 break;
3721 case 217:
3722 {
3723 yyval.attribute = MkAttribute(yyvsp[(1) - (1)].string, (((void *)0)));
3724 yyval.attribute->loc = (yyloc);
3725 ;
3726 }
3727 break;
3728 case 218:
3729 {
3730 yyval.attribute = MkAttribute(yyvsp[(1) - (4)].string, MkExpBrackets(yyvsp[(3) - (4)].list));
3731 yyval.attribute->loc = (yyloc);
3732 ;
3733 }
3734 break;
3735 case 219:
3736 {
3737 yyval.list = MkListOne(yyvsp[(1) - (1)].attribute);
3738 ;
3739 }
3740 break;
3741 case 220:
3742 {
3743 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].attribute);
3744 yyval.list = yyvsp[(1) - (2)].list;
3745 ;
3746 }
3747 break;
3748 case 221:
3749 {
3750 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].attribute);
3751 yyval.list = yyvsp[(1) - (3)].list;
3752 ;
3753 }
3754 break;
3755 case 222:
3756 {
3757 yyval.attrib = MkAttrib(yyvsp[(1) - (6)].i, yyvsp[(4) - (6)].list);
3758 yyval.attrib->loc = (yyloc);
3759 ;
3760 }
3761 break;
3762 case 223:
3763 {
3764 yyval.attrib = MkAttrib(yyvsp[(1) - (5)].i, (((void *)0)));
3765 yyval.attrib->loc = (yyloc);
3766 ;
3767 }
3768 break;
3769 case 224:
3770 {
3771 yyval.specifier = MkSpecifierExtended(yyvsp[(1) - (1)].extDecl);
3772 ;
3773 }
3774 break;
3775 case 225:
3776 {
3777 yyval.specifier = MkSpecifier(CONST);
3778 ;
3779 }
3780 break;
3781 case 226:
3782 {
3783 yyval.specifier = MkSpecifier(VOLATILE);
3784 ;
3785 }
3786 break;
3787 case 227:
3788 {
3789 yyval.specifier = yyvsp[(1) - (1)].specifier;
3790 ;
3791 }
3792 break;
3793 case 228:
3794 {
3795 yyval.specifier = MkSpecifier(VOID);
3796 ;
3797 }
3798 break;
3799 case 229:
3800 {
3801 yyval.specifier = MkSpecifier(CHAR);
3802 ;
3803 }
3804 break;
3805 case 230:
3806 {
3807 yyval.specifier = MkSpecifier(SHORT);
3808 ;
3809 }
3810 break;
3811 case 231:
3812 {
3813 yyval.specifier = MkSpecifier(INT);
3814 ;
3815 }
3816 break;
3817 case 232:
3818 {
3819 yyval.specifier = MkSpecifier(UINT);
3820 ;
3821 }
3822 break;
3823 case 233:
3824 {
3825 yyval.specifier = MkSpecifier(INT64);
3826 ;
3827 }
3828 break;
3829 case 234:
3830 {
3831 yyval.specifier = MkSpecifier(VALIST);
3832 ;
3833 }
3834 break;
3835 case 235:
3836 {
3837 yyval.specifier = MkSpecifier(LONG);
3838 ;
3839 }
3840 break;
3841 case 236:
3842 {
3843 yyval.specifier = MkSpecifier(FLOAT);
3844 ;
3845 }
3846 break;
3847 case 237:
3848 {
3849 yyval.specifier = MkSpecifier(DOUBLE);
3850 ;
3851 }
3852 break;
3853 case 238:
3854 {
3855 yyval.specifier = MkSpecifier(SIGNED);
3856 ;
3857 }
3858 break;
3859 case 239:
3860 {
3861 yyval.specifier = MkSpecifier(UNSIGNED);
3862 ;
3863 }
3864 break;
3865 case 240:
3866 {
3867 yyval.specifier = MkSpecifier(EXTENSION);
3868 ;
3869 }
3870 break;
3871 case 244:
3872 {
3873 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
3874 ;
3875 }
3876 break;
3877 case 245:
3878 {
3879 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
3880 ;
3881 }
3882 break;
3883 case 246:
3884 {
3885 _DeclClass(0, yyvsp[(3) - (4)].id->string);
3886 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
3887 FreeIdentifier(yyvsp[(3) - (4)].id);
3888 ;
3889 }
3890 break;
3891 case 247:
3892 {
3893 yyval.specifier = MkSpecifier(THISCLASS);
3894 ;
3895 }
3896 break;
3897 case 248:
3898 {
3899 yyval.specifier = MkSpecifier(TYPED_OBJECT);
3900 ;
3901 }
3902 break;
3903 case 249:
3904 {
3905 yyval.specifier = MkSpecifier(ANY_OBJECT);
3906 ;
3907 }
3908 break;
3909 case 250:
3910 {
3911 yyval.specifier = MkSpecifier(VOID);
3912 ;
3913 }
3914 break;
3915 case 251:
3916 {
3917 yyval.specifier = MkSpecifier(CHAR);
3918 ;
3919 }
3920 break;
3921 case 252:
3922 {
3923 yyval.specifier = MkSpecifier(SHORT);
3924 ;
3925 }
3926 break;
3927 case 253:
3928 {
3929 yyval.specifier = MkSpecifier(INT);
3930 ;
3931 }
3932 break;
3933 case 254:
3934 {
3935 yyval.specifier = MkSpecifier(UINT);
3936 ;
3937 }
3938 break;
3939 case 255:
3940 {
3941 yyval.specifier = MkSpecifier(INT64);
3942 ;
3943 }
3944 break;
3945 case 256:
3946 {
3947 yyval.specifier = MkSpecifier(VALIST);
3948 ;
3949 }
3950 break;
3951 case 257:
3952 {
3953 yyval.specifier = MkSpecifier(LONG);
3954 ;
3955 }
3956 break;
3957 case 258:
3958 {
3959 yyval.specifier = MkSpecifier(FLOAT);
3960 ;
3961 }
3962 break;
3963 case 259:
3964 {
3965 yyval.specifier = MkSpecifier(DOUBLE);
3966 ;
3967 }
3968 break;
3969 case 260:
3970 {
3971 yyval.specifier = MkSpecifier(SIGNED);
3972 ;
3973 }
3974 break;
3975 case 261:
3976 {
3977 yyval.specifier = MkSpecifier(UNSIGNED);
3978 ;
3979 }
3980 break;
3981 case 262:
3982 {
3983 yyval.specifier = MkSpecifier(EXTENSION);
3984 ;
3985 }
3986 break;
3987 case 266:
3988 {
3989 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
3990 ;
3991 }
3992 break;
3993 case 267:
3994 {
3995 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
3996 ;
3997 }
3998 break;
3999 case 268:
4000 {
4001 _DeclClass(0, yyvsp[(3) - (4)].id->string);
4002 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
4003 FreeIdentifier(yyvsp[(3) - (4)].id);
4004 ;
4005 }
4006 break;
4007 case 269:
4008 {
4009 yyval.specifier = MkSpecifier(THISCLASS);
4010 ;
4011 }
4012 break;
4013 case 270:
4014 {
4015 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4016 if(declMode)
4017 DeclClass(globalContext->nextID++, yyvsp[(2) - (5)].id->string);
4018 ;
4019 }
4020 break;
4021 case 271:
4022 {
4023 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), yyvsp[(3) - (4)].list);
4024 ;
4025 }
4026 break;
4027 case 272:
4028 {
4029 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, yyvsp[(2) - (4)].id, (((void *)0)));
4030 if(declMode)
4031 DeclClass(globalContext->nextID++, yyvsp[(2) - (4)].id->string);
4032 ;
4033 }
4034 break;
4035 case 273:
4036 {
4037 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, (((void *)0)), (((void *)0)));
4038 ;
4039 }
4040 break;
4041 case 274:
4042 {
4043 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, MkIdentifier(yyvsp[(2) - (5)].specifier->name), yyvsp[(4) - (5)].list);
4044 if(declMode)
4045 DeclClass(globalContext->nextID++, yyvsp[(2) - (5)].specifier->name);
4046 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4047 ;
4048 }
4049 break;
4050 case 275:
4051 {
4052 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, yyvsp[(3) - (6)].id, yyvsp[(5) - (6)].list);
4053 yyval.specifier->extDeclStruct = yyvsp[(2) - (6)].extDecl;
4054 if(declMode)
4055 DeclClass(globalContext->nextID++, yyvsp[(3) - (6)].id->string);
4056 ;
4057 }
4058 break;
4059 case 276:
4060 {
4061 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, (((void *)0)), yyvsp[(4) - (5)].list);
4062 yyval.specifier->extDeclStruct = yyvsp[(2) - (5)].extDecl;
4063 ;
4064 }
4065 break;
4066 case 277:
4067 {
4068 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(3) - (5)].id, (((void *)0)));
4069 yyval.specifier->extDeclStruct = yyvsp[(2) - (5)].extDecl;
4070 if(declMode)
4071 DeclClass(globalContext->nextID++, yyvsp[(3) - (5)].id->string);
4072 ;
4073 }
4074 break;
4075 case 278:
4076 {
4077 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), (((void *)0)));
4078 yyval.specifier->extDeclStruct = yyvsp[(2) - (4)].extDecl;
4079 ;
4080 }
4081 break;
4082 case 279:
4083 {
4084 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, MkIdentifier(yyvsp[(3) - (6)].specifier->name), yyvsp[(5) - (6)].list);
4085 yyval.specifier->extDeclStruct = yyvsp[(2) - (6)].extDecl;
4086 if(declMode)
4087 DeclClass(globalContext->nextID++, yyvsp[(3) - (6)].specifier->name);
4088 FreeSpecifier(yyvsp[(3) - (6)].specifier);
4089 ;
4090 }
4091 break;
4092 case 280:
4093 {
4094 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, yyvsp[(2) - (2)].id, (((void *)0)));
4095 if(declMode)
4096 DeclClass(0, yyvsp[(2) - (2)].id->string);
4097 ;
4098 }
4099 break;
4100 case 281:
4101 {
4102 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, MkIdentifier(yyvsp[(2) - (2)].specifier->name), (((void *)0)));
4103 if(declMode)
4104 DeclClass(0, yyvsp[(2) - (2)].specifier->name);
4105 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4106 ;
4107 }
4108 break;
4109 case 282:
4110 {
4111 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, yyvsp[(3) - (3)].id, (((void *)0)));
4112 yyval.specifier->extDeclStruct = yyvsp[(2) - (3)].extDecl;
4113 if(declMode)
4114 DeclClass(0, yyvsp[(3) - (3)].id->string);
4115 ;
4116 }
4117 break;
4118 case 283:
4119 {
4120 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, MkIdentifier(yyvsp[(3) - (3)].specifier->name), (((void *)0)));
4121 yyval.specifier->extDeclStruct = yyvsp[(2) - (3)].extDecl;
4122 if(declMode)
4123 DeclClass(0, yyvsp[(3) - (3)].specifier->name);
4124 FreeSpecifier(yyvsp[(3) - (3)].specifier);
4125 ;
4126 }
4127 break;
4128 case 284:
4129 {
4130 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0)));
4131 ;
4132 }
4133 break;
4134 case 285:
4135 {
4136 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4137 ;
4138 }
4139 break;
4140 case 286:
4141 {
4142 yyval.templateArgument = MkTemplateTypeArgument(yyvsp[(1) - (1)].templateDatatype);
4143 ;
4144 }
4145 break;
4146 case 287:
4147 {
4148 yyval.templateArgument = MkTemplateExpressionArgument(yyvsp[(1) - (1)].exp);
4149 ;
4150 }
4151 break;
4152 case 290:
4153 {
4154 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4155 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4156 yyval.templateArgument->loc = (yyloc);
4157 ;
4158 }
4159 break;
4160 case 291:
4161 {
4162 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4163 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4164 yyval.templateArgument->loc = (yyloc);
4165 ;
4166 }
4167 break;
4168 case 292:
4169 {
4170 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4171 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4172 {
4173 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4174
4175 if(spec->type == 1)
4176 yyval.templateArgument->name = MkIdentifier(spec->name);
4177 }
4178 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4179 yyval.templateArgument->loc = (yyloc);
4180 ;
4181 }
4182 break;
4183 case 293:
4184 {
4185 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4186 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4187 {
4188 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4189
4190 if(spec->type == 1)
4191 yyval.templateArgument->name = MkIdentifier(spec->name);
4192 }
4193 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4194 yyval.templateArgument->loc = (yyloc);
4195 ;
4196 }
4197 break;
4198 case 294:
4199 {
4200 yyval.list = MkList();
4201 ListAdd(yyval.list, yyvsp[(1) - (1)].templateArgument);
4202 ;
4203 }
4204 break;
4205 case 295:
4206 {
4207 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].templateArgument);
4208 ;
4209 }
4210 break;
4211 case 296:
4212 {
4213 yyval.specifierType = 3;
4214 ;
4215 }
4216 break;
4217 case 297:
4218 {
4219 yyval.specifierType = 4;
4220 ;
4221 }
4222 break;
4223 case 298:
4224 {
4225 yyval.list = MkList();
4226 ListAdd(yyval.list, yyvsp[(1) - (1)].classDef);
4227 ;
4228 }
4229 break;
4230 case 299:
4231 {
4232 yyval.list = yyvsp[(1) - (2)].list;
4233 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].classDef);
4234 ;
4235 }
4236 break;
4237 case 300:
4238 {
4239 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
4240 yyval.memberInit->loc = (yyloc);
4241 yyval.memberInit->realLoc = (yyloc);
4242 ;
4243 }
4244 break;
4245 case 301:
4246 {
4247 yyval.list = MkList();
4248 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
4249 ((struct MemberInit *)(*yyval.list).last)->loc = (yyloc);
4250 ;
4251 }
4252 break;
4253 case 302:
4254 {
4255 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
4256 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
4257 yyval.list = yyvsp[(1) - (3)].list;
4258 ;
4259 }
4260 break;
4261 case 303:
4262 {
4263 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4264 yyval.prop->loc = (yyloc);
4265 ;
4266 }
4267 break;
4268 case 304:
4269 {
4270 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4271 yyval.prop->loc = (yyloc);
4272 ;
4273 }
4274 break;
4275 case 305:
4276 {
4277 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, yyvsp[(6) - (7)].stmt, (((void *)0)));
4278 yyval.prop->loc = (yyloc);
4279 ;
4280 }
4281 break;
4282 case 306:
4283 {
4284 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, (((void *)0)), yyvsp[(6) - (7)].stmt);
4285 yyval.prop->loc = (yyloc);
4286 ;
4287 }
4288 break;
4289 case 307:
4290 {
4291 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, (((void *)0)), yyvsp[(3) - (5)].id, (((void *)0)), (((void *)0)));
4292 yyval.prop->loc = (yyloc);
4293 ;
4294 }
4295 break;
4296 case 308:
4297 {
4298 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(7) - (10)].stmt, yyvsp[(9) - (10)].stmt);
4299 yyval.prop->loc = (yyloc);
4300 ;
4301 }
4302 break;
4303 case 309:
4304 {
4305 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(9) - (10)].stmt, yyvsp[(7) - (10)].stmt);
4306 yyval.prop->loc = (yyloc);
4307 ;
4308 }
4309 break;
4310 case 310:
4311 {
4312 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, yyvsp[(7) - (8)].stmt, (((void *)0)));
4313 yyval.prop->loc = (yyloc);
4314 ;
4315 }
4316 break;
4317 case 311:
4318 {
4319 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, (((void *)0)), yyvsp[(7) - (8)].stmt);
4320 yyval.prop->loc = (yyloc);
4321 ;
4322 }
4323 break;
4324 case 312:
4325 {
4326 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator, yyvsp[(4) - (6)].id, (((void *)0)), (((void *)0)));
4327 yyval.prop->loc = (yyloc);
4328 ;
4329 }
4330 break;
4331 case 313:
4332 {
4333 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (8)].stmt, yyvsp[(7) - (8)].stmt);
4334 yyval.prop->loc = (yyloc);
4335 ;
4336 }
4337 break;
4338 case 314:
4339 {
4340 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(7) - (8)].stmt, yyvsp[(5) - (8)].stmt);
4341 yyval.prop->loc = (yyloc);
4342 ;
4343 }
4344 break;
4345 case 315:
4346 {
4347 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt, (((void *)0)));
4348 yyval.prop->loc = (yyloc);
4349 ;
4350 }
4351 break;
4352 case 316:
4353 {
4354 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt);
4355 yyval.prop->loc = (yyloc);
4356 ;
4357 }
4358 break;
4359 case 317:
4360 {
4361 yyval.prop = MkProperty(yyvsp[(2) - (4)].list, (((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
4362 yyval.prop->loc = (yyloc);
4363 ;
4364 }
4365 break;
4366 case 318:
4367 {
4368 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4369 yyval.prop->loc = (yyloc);
4370 ;
4371 }
4372 break;
4373 case 319:
4374 {
4375 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4376 yyval.prop->loc = (yyloc);
4377 ;
4378 }
4379 break;
4380 case 320:
4381 {
4382 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), yyvsp[(6) - (7)].stmt, (((void *)0)));
4383 yyval.prop->loc = (yyloc);
4384 ;
4385 }
4386 break;
4387 case 321:
4388 {
4389 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), (((void *)0)), yyvsp[(6) - (7)].stmt);
4390 yyval.prop->loc = (yyloc);
4391 ;
4392 }
4393 break;
4394 case 322:
4395 {
4396 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, yyvsp[(3) - (5)].declarator, (((void *)0)), (((void *)0)), (((void *)0)));
4397 yyval.prop->loc = (yyloc);
4398 ;
4399 }
4400 break;
4401 case 323:
4402 {
4403 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list, (((void *)0))));
4404 yyval.classDef->decl->loc = (yyloc);
4405 yyval.classDef->loc = (yyloc);
4406 ;
4407 }
4408 break;
4409 case 324:
4410 {
4411 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (2)].list, (((void *)0)), (((void *)0))));
4412 yyval.classDef->decl->loc = (yyloc);
4413 yyval.classDef->loc = (yyloc);
4414 ;
4415 }
4416 break;
4417 case 325:
4418 {
4419 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4420 yyval.classDef->loc = (yyloc);
4421 yyval.classDef->decl->loc = (yyloc);
4422 ;
4423 }
4424 break;
4425 case 326:
4426 {
4427 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4428 yyval.classDef->loc = (yyloc);
4429 yyval.classDef->decl->loc = (yyloc);
4430 ;
4431 }
4432 break;
4433 case 327:
4434 {
4435 yyval.classDef = MkClassDefFunction(yyvsp[(1) - (1)].classFunction);
4436 yyval.classDef->loc = (yyloc);
4437 ;
4438 }
4439 break;
4440 case 328:
4441 {
4442 yyval.classDef = MkClassDefDefaultProperty(yyvsp[(1) - (2)].list);
4443 if((*yyvsp[(1) - (2)].list).last)
4444 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).start;
4445 yyval.classDef->loc = (yyloc);
4446 ;
4447 }
4448 break;
4449 case 329:
4450 {
4451 yyval.classDef = MkClassDefProperty(yyvsp[(1) - (1)].prop);
4452 yyval.classDef->loc = (yyloc);
4453 globalContext->nextID++;
4454 ;
4455 }
4456 break;
4457 case 330:
4458 {
4459 yyval.classDef = (((void *)0));
4460 ;
4461 }
4462 break;
4463 case 331:
4464 {
4465 yyval.list = MkList();
4466 ListAdd(yyval.list, yyvsp[(1) - (1)].declarator);
4467 ;
4468 }
4469 break;
4470 case 332:
4471 {
4472 yyval.list = yyvsp[(1) - (3)].list;
4473 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].declarator);
4474 ;
4475 }
4476 break;
4477 case 333:
4478 {
4479 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
4480 yyval.declarator->loc = (yyloc);
4481 ;
4482 }
4483 break;
4484 case 334:
4485 {
4486 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (2)].declarator, (((void *)0)));
4487 yyval.declarator->structDecl.attrib = yyvsp[(2) - (2)].attrib;
4488 yyval.declarator->loc = (yyloc);
4489 ;
4490 }
4491 break;
4492 case 335:
4493 {
4494 yyval.declarator = MkStructDeclarator((((void *)0)), yyvsp[(2) - (2)].exp);
4495 yyval.declarator->loc = (yyloc);
4496 ;
4497 }
4498 break;
4499 case 336:
4500 {
4501 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].exp);
4502 yyval.declarator->loc = (yyloc);
4503 ;
4504 }
4505 break;
4506 case 337:
4507 {
4508 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (5)].declarator, yyvsp[(3) - (5)].exp);
4509 yyval.declarator->structDecl.posExp = yyvsp[(5) - (5)].exp;
4510 yyval.declarator->loc = (yyloc);
4511 ;
4512 }
4513 break;
4514 case 338:
4515 {
4516 yyval.specifier = MkEnum(yyvsp[(2) - (2)].id, (((void *)0)));
4517 if(declMode)
4518 DeclClass(0, yyvsp[(2) - (2)].id->string);
4519 ;
4520 }
4521 break;
4522 case 339:
4523 {
4524 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (2)].specifier->name), (((void *)0)));
4525 if(declMode)
4526 DeclClass(0, yyvsp[(2) - (2)].specifier->name);
4527 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4528 ;
4529 }
4530 break;
4531 case 340:
4532 {
4533 yyval.specifier = MkEnum((((void *)0)), yyvsp[(3) - (4)].list);
4534 ;
4535 }
4536 break;
4537 case 341:
4538 {
4539 yyval.specifier = MkEnum(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4540 if(declMode)
4541 DeclClass(globalContext->nextID++, yyvsp[(2) - (5)].id->string);
4542 ;
4543 }
4544 break;
4545 case 342:
4546 {
4547 yyval.specifier = MkEnum(yyvsp[(2) - (7)].id, yyvsp[(4) - (7)].list);
4548 yyval.specifier->definitions = yyvsp[(6) - (7)].list;
4549 if(declMode)
4550 DeclClass(globalContext->nextID++, yyvsp[(2) - (7)].id->string);
4551 ;
4552 }
4553 break;
4554 case 343:
4555 {
4556 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (7)].specifier->name), yyvsp[(4) - (7)].list);
4557 yyval.specifier->definitions = yyvsp[(6) - (7)].list;
4558 if(declMode)
4559 DeclClass(globalContext->nextID++, yyvsp[(2) - (7)].specifier->name);
4560 FreeSpecifier(yyvsp[(2) - (7)].specifier);
4561 ;
4562 }
4563 break;
4564 case 344:
4565 {
4566 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (5)].specifier->name), yyvsp[(4) - (5)].list);
4567 if(declMode)
4568 DeclClass(globalContext->nextID++, yyvsp[(2) - (5)].specifier->name);
4569 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4570 ;
4571 }
4572 break;
4573 case 345:
4574 {
4575 yyval.list = MkList();
4576 ListAdd(yyval.list, yyvsp[(1) - (1)].enumerator);
4577 ;
4578 }
4579 break;
4580 case 346:
4581 {
4582 yyval.list = yyvsp[(1) - (3)].list;
4583 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].enumerator);
4584 ;
4585 }
4586 break;
4587 case 347:
4588 {
4589 yyval.enumerator = MkEnumerator(yyvsp[(1) - (1)].id, (((void *)0)));
4590 ;
4591 }
4592 break;
4593 case 348:
4594 {
4595 yyval.enumerator = MkEnumerator(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].exp);
4596 ;
4597 }
4598 break;
4599 case 349:
4600 {
4601 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4602 ;
4603 }
4604 break;
4605 case 350:
4606 {
4607 yyval.declarator = MkDeclaratorArray((((void *)0)), (((void *)0)));
4608 ;
4609 }
4610 break;
4611 case 351:
4612 {
4613 yyval.declarator = MkDeclaratorArray((((void *)0)), yyvsp[(2) - (3)].exp);
4614 ;
4615 }
4616 break;
4617 case 352:
4618 {
4619 yyval.declarator = MkDeclaratorEnumArray((((void *)0)), yyvsp[(2) - (3)].specifier);
4620 ;
4621 }
4622 break;
4623 case 353:
4624 {
4625 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4626 ;
4627 }
4628 break;
4629 case 354:
4630 {
4631 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4632 ;
4633 }
4634 break;
4635 case 355:
4636 {
4637 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4638 ;
4639 }
4640 break;
4641 case 356:
4642 {
4643 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4644 ;
4645 }
4646 break;
4647 case 357:
4648 {
4649 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4650 ;
4651 }
4652 break;
4653 case 358:
4654 {
4655 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4656 ;
4657 }
4658 break;
4659 case 359:
4660 {
4661 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4662 ;
4663 }
4664 break;
4665 case 360:
4666 {
4667 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4668 ;
4669 }
4670 break;
4671 case 361:
4672 {
4673 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4674 ;
4675 }
4676 break;
4677 case 362:
4678 {
4679 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4680 ;
4681 }
4682 break;
4683 case 363:
4684 {
4685 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4686 ;
4687 }
4688 break;
4689 case 364:
4690 {
4691 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4692 ;
4693 }
4694 break;
4695 case 365:
4696 {
4697 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4698 ;
4699 }
4700 break;
4701 case 367:
4702 {
4703 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4704 ;
4705 }
4706 break;
4707 case 368:
4708 {
4709 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4710 ;
4711 }
4712 break;
4713 case 369:
4714 {
4715 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4716 ;
4717 }
4718 break;
4719 case 370:
4720 {
4721 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4722 ;
4723 }
4724 break;
4725 case 371:
4726 {
4727 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4728 ;
4729 }
4730 break;
4731 case 373:
4732 {
4733 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4734 ;
4735 }
4736 break;
4737 case 374:
4738 {
4739 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4740 ;
4741 }
4742 break;
4743 case 375:
4744 {
4745 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4746 ;
4747 }
4748 break;
4749 case 376:
4750 {
4751 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4752 ;
4753 }
4754 break;
4755 case 378:
4756 {
4757 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4758 ;
4759 }
4760 break;
4761 case 379:
4762 {
4763 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4764 ;
4765 }
4766 break;
4767 case 380:
4768 {
4769 yyval.declarator = MkDeclaratorExtendedEnd(yyvsp[(2) - (2)].extDecl, yyvsp[(1) - (2)].declarator);
4770 ;
4771 }
4772 break;
4773 case 381:
4774 {
4775 yyval.declarator = MkDeclaratorIdentifier(yyvsp[(1) - (1)].id);
4776 ;
4777 }
4778 break;
4779 case 382:
4780 {
4781 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4782 ;
4783 }
4784 break;
4785 case 383:
4786 {
4787 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4788 ;
4789 }
4790 break;
4791 case 384:
4792 {
4793 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4794 ;
4795 }
4796 break;
4797 case 385:
4798 {
4799 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4800 ;
4801 }
4802 break;
4803 case 387:
4804 {
4805 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4806 ;
4807 }
4808 break;
4809 case 388:
4810 {
4811 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4812 ;
4813 }
4814 break;
4815 case 389:
4816 {
4817 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4818 ;
4819 }
4820 break;
4821 case 390:
4822 {
4823 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4824 ;
4825 }
4826 break;
4827 case 392:
4828 {
4829 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4830 ;
4831 }
4832 break;
4833 case 393:
4834 {
4835 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4836 ;
4837 }
4838 break;
4839 case 394:
4840 {
4841 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (2)].declarator, (((void *)0)));
4842 ;
4843 }
4844 break;
4845 case 397:
4846 {
4847 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4848 ;
4849 }
4850 break;
4851 case 398:
4852 {
4853 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4854 ;
4855 }
4856 break;
4857 case 400:
4858 {
4859 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4860 ;
4861 }
4862 break;
4863 case 401:
4864 {
4865 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4866 ;
4867 }
4868 break;
4869 case 402:
4870 {
4871 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4872 ;
4873 }
4874 break;
4875 case 403:
4876 {
4877 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4878 ;
4879 }
4880 break;
4881 case 404:
4882 {
4883 yyval.list = MkList();
4884 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
4885 ;
4886 }
4887 break;
4888 case 405:
4889 {
4890 yyval.list = yyvsp[(1) - (2)].list;
4891 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
4892 ;
4893 }
4894 break;
4895 case 406:
4896 {
4897 yyval.pointer = MkPointer((((void *)0)), (((void *)0)));
4898 ;
4899 }
4900 break;
4901 case 407:
4902 {
4903 yyval.pointer = MkPointer(yyvsp[(2) - (2)].list, (((void *)0)));
4904 ;
4905 }
4906 break;
4907 case 408:
4908 {
4909 yyval.pointer = MkPointer((((void *)0)), yyvsp[(2) - (2)].pointer);
4910 ;
4911 }
4912 break;
4913 case 409:
4914 {
4915 yyval.pointer = MkPointer(yyvsp[(2) - (3)].list, yyvsp[(3) - (3)].pointer);
4916 ;
4917 }
4918 break;
4919 case 411:
4920 {
4921 yyval.list = yyvsp[(1) - (3)].list;
4922 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), (((void *)0))));
4923 ;
4924 }
4925 break;
4926 case 412:
4927 {
4928 yyval.list = MkList();
4929 ListAdd(yyval.list, yyvsp[(1) - (1)].typeName);
4930 ;
4931 }
4932 break;
4933 case 413:
4934 {
4935 yyval.list = yyvsp[(1) - (3)].list;
4936 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].typeName);
4937 ;
4938 }
4939 break;
4940 case 414:
4941 {
4942 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4943 ;
4944 }
4945 break;
4946 case 415:
4947 {
4948 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4949 ;
4950 }
4951 break;
4952 case 416:
4953 {
4954 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), (((void *)0))));
4955 ;
4956 }
4957 break;
4958 case 417:
4959 {
4960 yyval.typeName = MkTypeName(yyvsp[(1) - (3)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), yyvsp[(3) - (3)].declarator));
4961 ;
4962 }
4963 break;
4964 case 418:
4965 {
4966 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
4967 ;
4968 }
4969 break;
4970 case 419:
4971 {
4972 yyval.typeName = MkTypeName(MkListOne(MkSpecifier(CLASS)), (((void *)0)));
4973 ;
4974 }
4975 break;
4976 case 420:
4977 {
4978 yyval.list = MkList();
4979 ListAdd(yyval.list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(1) - (1)].id)));
4980 ;
4981 }
4982 break;
4983 case 421:
4984 {
4985 yyval.list = yyvsp[(1) - (3)].list;
4986 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(3) - (3)].id)));
4987 ;
4988 }
4989 break;
4990 case 422:
4991 {
4992 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
4993 ;
4994 }
4995 break;
4996 case 423:
4997 {
4998 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4999 ;
5000 }
5001 break;
5002 case 424:
5003 {
5004 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5005 ;
5006 }
5007 break;
5008 case 425:
5009 {
5010 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5011 ;
5012 }
5013 break;
5014 case 426:
5015 {
5016 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5017 yyval.initializer->loc = (yyloc);
5018 ;
5019 }
5020 break;
5021 case 427:
5022 {
5023 yyval.initializer = MkInitializerList(yyvsp[(2) - (3)].list);
5024 yyval.initializer->loc = (yyloc);
5025 ;
5026 }
5027 break;
5028 case 428:
5029 {
5030 yyval.initializer = MkInitializerList(yyvsp[(2) - (4)].list);
5031 yyval.initializer->loc = (yyloc);
5032 {
5033 struct Expression * exp = MkExpDummy();
5034 struct Initializer * init = MkInitializerAssignment(exp);
5035
5036 init->loc = (yylsp[(3) - (4)]);
5037 exp->loc = (yylsp[(3) - (4)]);
5038 ListAdd(yyvsp[(2) - (4)].list, init);
5039 }
5040 ;
5041 }
5042 break;
5043 case 429:
5044 {
5045 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5046 yyval.initializer->loc = (yyloc);
5047 ;
5048 }
5049 break;
5050 case 430:
5051 {
5052 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5053 yyval.initializer->loc = (yyloc);
5054 ;
5055 }
5056 break;
5057 case 431:
5058 {
5059 yyval.list = MkList();
5060 ListAdd(yyval.list, yyvsp[(1) - (1)].initializer);
5061 ;
5062 }
5063 break;
5064 case 432:
5065 {
5066 yyval.list = yyvsp[(1) - (3)].list;
5067 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initializer);
5068 ;
5069 }
5070 break;
5071 case 439:
5072 {
5073 yyval.stmt = MkLabeledStmt(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].stmt);
5074 yyval.stmt->loc = (yyloc);
5075 ;
5076 }
5077 break;
5078 case 440:
5079 {
5080 yyval.stmt = MkCaseStmt(yyvsp[(2) - (4)].exp, yyvsp[(4) - (4)].stmt);
5081 yyval.stmt->loc = (yyloc);
5082 yyvsp[(2) - (4)].exp->loc.start = (yylsp[(1) - (4)]).end;
5083 ;
5084 }
5085 break;
5086 case 441:
5087 {
5088 yyval.stmt = MkCaseStmt((((void *)0)), yyvsp[(3) - (3)].stmt);
5089 yyval.stmt->loc = (yyloc);
5090 ;
5091 }
5092 break;
5093 case 442:
5094 {
5095 yyval.list = MkList();
5096 ListAdd(yyval.list, yyvsp[(1) - (1)].declaration);
5097 ;
5098 }
5099 break;
5100 case 443:
5101 {
5102 yyval.list = yyvsp[(1) - (2)].list;
5103 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declaration);
5104 ;
5105 }
5106 break;
5107 case 444:
5108 {
5109 yyval.list = MkList();
5110 ListAdd(yyval.list, yyvsp[(1) - (1)].stmt);
5111 ;
5112 }
5113 break;
5114 case 445:
5115 {
5116 yyval.list = yyvsp[(1) - (2)].list;
5117 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].stmt);
5118 ;
5119 }
5120 break;
5121 case 446:
5122 {
5123 struct Statement * stmt = MkBadDeclStmt(yyvsp[(2) - (2)].declaration);
5124
5125 stmt->loc = (yylsp[(2) - (2)]);
5126 ListAdd(yyvsp[(1) - (2)].list, stmt);
5127 yyval.list = yyvsp[(1) - (2)].list;
5128 ;
5129 }
5130 break;
5131 case 447:
5132 {
5133 yyval.stmt = MkCompoundStmt((((void *)0)), yyvsp[(1) - (1)].list);
5134 ;
5135 }
5136 break;
5137 case 448:
5138 {
5139 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (1)].list, (((void *)0)));
5140 ;
5141 }
5142 break;
5143 case 449:
5144 {
5145 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].list);
5146 ;
5147 }
5148 break;
5149 case 450:
5150 {
5151 yyval.context = PushContext();
5152 ;
5153 }
5154 break;
5155 case 451:
5156 {
5157 yyval.stmt = MkCompoundStmt((((void *)0)), (((void *)0)));
5158 yyval.stmt->compound.context = PushContext();
5159 PopContext(yyval.stmt->compound.context);
5160 yyval.stmt->loc = (yyloc);
5161 ;
5162 }
5163 break;
5164 case 452:
5165 {
5166 yyval.stmt = yyvsp[(2) - (3)].stmt;
5167 yyval.stmt->compound.context = yyvsp[(1) - (3)].context;
5168 PopContext(yyvsp[(1) - (3)].context);
5169 yyval.stmt->loc = (yyloc);
5170 ;
5171 }
5172 break;
5173 case 453:
5174 {
5175 yyval.stmt = MkExpressionStmt((((void *)0)));
5176 yyval.stmt->loc = (yyloc);
5177 ;
5178 }
5179 break;
5180 case 454:
5181 {
5182 yyval.stmt = MkExpressionStmt(yyvsp[(1) - (2)].list);
5183 yyval.stmt->loc = (yyloc);
5184 ;
5185 }
5186 break;
5187 case 455:
5188 {
5189 yyval.stmt = MkIfStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt, (((void *)0)));
5190 yyval.stmt->loc = (yyloc);
5191 ;
5192 }
5193 break;
5194 case 456:
5195 {
5196 yyval.stmt = MkIfStmt(yyvsp[(3) - (7)].list, yyvsp[(5) - (7)].stmt, yyvsp[(7) - (7)].stmt);
5197 yyval.stmt->loc = (yyloc);
5198 ;
5199 }
5200 break;
5201 case 457:
5202 {
5203 yyval.stmt = MkSwitchStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5204 yyval.stmt->loc = (yyloc);
5205 ;
5206 }
5207 break;
5208 case 458:
5209 {
5210 yyval.stmt = MkWhileStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5211 yyval.stmt->loc = (yyloc);
5212 ;
5213 }
5214 break;
5215 case 459:
5216 {
5217 yyval.stmt = MkDoWhileStmt(yyvsp[(2) - (7)].stmt, yyvsp[(5) - (7)].list);
5218 yyval.stmt->loc = (yyloc);
5219 ;
5220 }
5221 break;
5222 case 460:
5223 {
5224 yyval.stmt = MkForStmt(yyvsp[(3) - (6)].stmt, yyvsp[(4) - (6)].stmt, (((void *)0)), yyvsp[(6) - (6)].stmt);
5225 yyval.stmt->loc = (yyloc);
5226 ;
5227 }
5228 break;
5229 case 461:
5230 {
5231 yyval.stmt = MkForStmt(yyvsp[(3) - (7)].stmt, yyvsp[(4) - (7)].stmt, yyvsp[(5) - (7)].list, yyvsp[(7) - (7)].stmt);
5232 yyval.stmt->loc = (yyloc);
5233 ;
5234 }
5235 break;
5236 case 462:
5237 {
5238 yyval.stmt = MkWhileStmt((((void *)0)), yyvsp[(4) - (4)].stmt);
5239 yyval.stmt->loc = (yyloc);
5240 ;
5241 }
5242 break;
5243 case 463:
5244 {
5245 yyval.stmt = MkForStmt(yyvsp[(3) - (5)].stmt, (((void *)0)), (((void *)0)), yyvsp[(5) - (5)].stmt);
5246 yyval.stmt->loc = (yyloc);
5247 ;
5248 }
5249 break;
5250 case 464:
5251 {
5252 yyval.stmt = MkForStmt((((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(4) - (4)].stmt);
5253 yyval.stmt->loc = (yyloc);
5254 ;
5255 }
5256 break;
5257 case 465:
5258 {
5259 yyval.stmt = MkGotoStmt(yyvsp[(2) - (3)].id);
5260 yyval.stmt->loc = (yyloc);
5261 ;
5262 }
5263 break;
5264 case 466:
5265 {
5266 yyval.stmt = MkContinueStmt();
5267 yyval.stmt->loc = (yyloc);
5268 ;
5269 }
5270 break;
5271 case 467:
5272 {
5273 yyval.stmt = MkBreakStmt();
5274 yyval.stmt->loc = (yyloc);
5275 ;
5276 }
5277 break;
5278 case 468:
5279 {
5280 struct Expression * exp = MkExpDummy();
5281
5282 yyval.stmt = MkReturnStmt(MkListOne(exp));
5283 yyval.stmt->loc = (yyloc);
5284 exp->loc = (yylsp[(2) - (2)]);
5285 ;
5286 }
5287 break;
5288 case 469:
5289 {
5290 yyval.stmt = MkReturnStmt(yyvsp[(2) - (3)].list);
5291 yyval.stmt->loc = (yyloc);
5292 ;
5293 }
5294 break;
5295 case 470:
5296 {
5297 yyval.string = __ecereNameSpace__ecere__sys__CopyString(yytext);
5298 ;
5299 }
5300 break;
5301 case 471:
5302 {
5303 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5304 yyval.instance->loc = (yyloc);
5305 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5306 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5307 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5308 ;
5309 }
5310 break;
5311 case 472:
5312 {
5313 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5314 yyval.instance->loc = (yyloc);
5315 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5316 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5317 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5318 ;
5319 }
5320 break;
5321 case 473:
5322 {
5323 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5324 yyval.instance->loc = (yyloc);
5325 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5326 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5327 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5328 ;
5329 }
5330 break;
5331 case 474:
5332 {
5333 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5334 yyval.instance->loc = (yyloc);
5335 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5336 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5337 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5338 ;
5339 }
5340 break;
5341 case 475:
5342 {
5343 yyval.instance = MkInstantiation(yyvsp[(1) - (4)].specifier, (((void *)0)), yyvsp[(3) - (4)].list);
5344 yyval.instance->loc = (yyloc);
5345 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5346 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5347 ;
5348 }
5349 break;
5350 case 476:
5351 {
5352 yyval.instance = MkInstantiation(yyvsp[(1) - (3)].specifier, (((void *)0)), MkList());
5353 yyval.instance->loc = (yyloc);
5354 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5355 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5356 ;
5357 }
5358 break;
5359 case 477:
5360 {
5361 struct Location tmpLoc = type_yylloc;
5362
5363 type_yylloc = (yylsp[(1) - (4)]);
5364 type_yylloc = tmpLoc;
5365 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (4)].id->string), (((void *)0)), yyvsp[(3) - (4)].list);
5366 yyval.instance->loc = (yyloc);
5367 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5368 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5369 FreeIdentifier(yyvsp[(1) - (4)].id);
5370 ;
5371 }
5372 break;
5373 case 478:
5374 {
5375 struct Location tmpLoc = type_yylloc;
5376
5377 type_yylloc = (yylsp[(1) - (3)]);
5378 type_yylloc = tmpLoc;
5379 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (3)].id->string), (((void *)0)), MkList());
5380 yyval.instance->loc = (yyloc);
5381 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5382 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5383 FreeIdentifier(yyvsp[(1) - (3)].id);
5384 ;
5385 }
5386 break;
5387 case 479:
5388 {
5389 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), yyvsp[(2) - (3)].list);
5390 yyval.instance->loc = (yyloc);
5391 yyval.instance->insideLoc.start = (yylsp[(1) - (3)]).end;
5392 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5393 ;
5394 }
5395 break;
5396 case 480:
5397 {
5398 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), MkList());
5399 yyval.instance->loc = (yyloc);
5400 yyval.instance->insideLoc.start = (yylsp[(1) - (2)]).end;
5401 yyval.instance->insideLoc.end = (yylsp[(2) - (2)]).start;
5402 ;
5403 }
5404 break;
5405 case 481:
5406 {
5407 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5408 yyval.classFunction->loc = (yyloc);
5409 ;
5410 }
5411 break;
5412 case 482:
5413 {
5414 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5415 yyval.classFunction->loc = (yyloc);
5416 ;
5417 }
5418 break;
5419 case 483:
5420 {
5421 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, (((void *)0)));
5422 yyval.classFunction->loc = (yyloc);
5423 ;
5424 }
5425 break;
5426 case 484:
5427 {
5428 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5429 yyval.classFunction->loc = (yyloc);
5430 ;
5431 }
5432 break;
5433 case 485:
5434 {
5435 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5436 yyval.classFunction->loc = (yyloc);
5437 ;
5438 }
5439 break;
5440 case 486:
5441 {
5442 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5443 yyval.classFunction->loc = (yyloc);
5444 yyval.classFunction->id = ++globalContext->nextID;
5445 ;
5446 }
5447 break;
5448 case 487:
5449 {
5450 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5451 yyval.classFunction->loc = (yyloc);
5452 yyval.classFunction->id = ++globalContext->nextID;
5453 ;
5454 }
5455 break;
5456 case 488:
5457 {
5458 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5459 yyval.classFunction->loc = (yyloc);
5460 ;
5461 }
5462 break;
5463 case 489:
5464 {
5465 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
5466 yyval.memberInit->loc = (yyloc);
5467 yyval.memberInit->realLoc = (yyloc);
5468 yyval.memberInit->initializer->loc.start = (yylsp[(2) - (3)]).end;
5469 ;
5470 }
5471 break;
5472 case 490:
5473 {
5474 yyval.memberInit = MkMemberInit((((void *)0)), yyvsp[(1) - (1)].initializer);
5475 yyval.memberInit->loc = (yyloc);
5476 yyval.memberInit->realLoc = (yyloc);
5477 ;
5478 }
5479 break;
5480 case 491:
5481 {
5482 yyval.list = MkList();
5483 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
5484 ;
5485 }
5486 break;
5487 case 492:
5488 {
5489 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
5490 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
5491 yyval.list = yyvsp[(1) - (3)].list;
5492 ;
5493 }
5494 break;
5495 case 493:
5496 {
5497 if((*yyvsp[(1) - (2)].list).last)
5498 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).end;
5499 yyval.list = yyvsp[(1) - (2)].list;
5500 ;
5501 }
5502 break;
5503 case 494:
5504 {
5505 struct MembersInit * members = MkMembersInitList(yyvsp[(1) - (1)].list);
5506
5507 yyval.list = MkList();
5508 ListAdd(yyval.list, members);
5509 members->loc = (yylsp[(1) - (1)]);
5510 ;
5511 }
5512 break;
5513 case 495:
5514 {
5515 yyval.list = MkList();
5516 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(1) - (1)].classFunction));
5517 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5518 ;
5519 }
5520 break;
5521 case 496:
5522 {
5523 struct MembersInit * members = MkMembersInitList(yyvsp[(2) - (2)].list);
5524
5525 ListAdd(yyval.list, members);
5526 members->loc = (yylsp[(2) - (2)]);
5527 yyval.list = yyvsp[(1) - (2)].list;
5528 ;
5529 }
5530 break;
5531 case 497:
5532 {
5533 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(2) - (2)].classFunction));
5534 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5535 yyval.list = yyvsp[(1) - (2)].list;
5536 ;
5537 }
5538 break;
5539 case 498:
5540 {
5541 struct MembersInit * members = MkMembersInitList(MkList());
5542
5543 yyval.list = MkList();
5544 ListAdd(yyval.list, members);
5545 members->loc = (yylsp[(1) - (1)]);
5546 ;
5547 }
5548 break;
5549 case 499:
5550 {
5551 struct MembersInit * members = MkMembersInitList(MkList());
5552
5553 ListAdd(yyval.list, members);
5554 members->loc = (yylsp[(2) - (2)]);
5555 yyval.list = yyvsp[(1) - (2)].list;
5556 ;
5557 }
5558 break;
5559 case 501:
5560 {
5561 yyval.list = MkList();
5562 ListAdd(yyval.list, MkMembersInitList(yyvsp[(1) - (1)].list));
5563 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5564 ;
5565 }
5566 break;
5567 case 502:
5568 {
5569 ListAdd(yyvsp[(1) - (2)].list, MkMembersInitList(yyvsp[(2) - (2)].list));
5570 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5571 ;
5572 }
5573 break;
5574 case 503:
5575 {
5576 parsedType = yyvsp[(1) - (1)].typeName;
5577 ;
5578 }
5579 break;
5580 case 504:
5581 {
5582 parsedType = yyvsp[(1) - (3)].typeName;
5583 parsedType->bitCount = yyvsp[(3) - (3)].exp;
5584 ;
5585 }
5586 break;
5587 default:
5588 break;
5589 }
5590 do
5591 {
5592 if(type_yydebug)
5593 {
5594 fprintf((bsl_stderr()), "%s ", "-> $$ =");
5595 yy_symbol_print((bsl_stderr()), yyr1[yyn], &yyval, &yyloc);
5596 fprintf((bsl_stderr()), "\n");
5597 }
5598 }while((0));
5599 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5600 yylen = 0;
5601 do
5602 {
5603 if(type_yydebug)
5604 yy_stack_print((yyss), (yyssp));
5605 }while((0));
5606 *++yyvsp = yyval;
5607 *++yylsp = yyloc;
5608 yyn = yyr1[yyn];
5609 yystate = yypgoto[yyn - 137] + *yyssp;
5610 if(0 <= yystate && yystate <= 8926 && yycheck[yystate] == *yyssp)
5611 yystate = yytable[yystate];
5612 else
5613 yystate = yydefgoto[yyn - 137];
5614 goto yynewstate;
5615 yyerrlab:
5616 if(!yyerrstatus)
5617 {
5618 ++type_yynerrs;
5619 yyerror("syntax error");
5620 }
5621 yyerror_range[0] = type_yylloc;
5622 if(yyerrstatus == 3)
5623 {
5624 if(type_yychar <= 0)
5625 {
5626 if(type_yychar == 0)
5627 goto yyabortlab;
5628 }
5629 else
5630 {
5631 yydestruct("Error: discarding", yytoken, &type_yylval, &type_yylloc);
5632 type_yychar = (-2);
5633 }
5634 }
5635 goto yyerrlab1;
5636 yyerrorlab:
5637 if(0)
5638 goto yyerrorlab;
5639 yyerror_range[0] = yylsp[1 - yylen];
5640 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5641 yylen = 0;
5642 do
5643 {
5644 if(type_yydebug)
5645 yy_stack_print((yyss), (yyssp));
5646 }while((0));
5647 yystate = *yyssp;
5648 goto yyerrlab1;
5649 yyerrlab1:
5650 yyerrstatus = 3;
5651 for(; ; )
5652 {
5653 yyn = yypact[yystate];
5654 if(yyn != -761)
5655 {
5656 yyn += 1;
5657 if(0 <= yyn && yyn <= 8926 && yycheck[yyn] == (short)1)
5658 {
5659 yyn = yytable[yyn];
5660 if(0 < yyn)
5661 break;
5662 }
5663 }
5664 if(yyssp == yyss)
5665 goto yyabortlab;
5666 yyerror_range[0] = *yylsp;
5667 yydestruct("Error: popping", yystos[yystate], yyvsp, yylsp);
5668 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
5669 yystate = *yyssp;
5670 do
5671 {
5672 if(type_yydebug)
5673 yy_stack_print((yyss), (yyssp));
5674 }while((0));
5675 }
5676 *++yyvsp = type_yylval;
5677 yyerror_range[1] = type_yylloc;
5678 (yyloc.start = ((yyerror_range - 1))[1].start);
5679 (yyloc.end = ((yyerror_range - 1))[2].end);
5680 ;
5681 *++yylsp = yyloc;
5682 do
5683 {
5684 if(type_yydebug)
5685 {
5686 fprintf((bsl_stderr()), "%s ", "Shifting");
5687 yy_symbol_print((bsl_stderr()), yystos[yyn], yyvsp, yylsp);
5688 fprintf((bsl_stderr()), "\n");
5689 }
5690 }while((0));
5691 yystate = yyn;
5692 goto yynewstate;
5693 yyacceptlab:
5694 yyresult = 0;
5695 goto yyreturn;
5696 yyabortlab:
5697 yyresult = 1;
5698 goto yyreturn;
5699 yyexhaustedlab:
5700 yyerror("memory exhausted");
5701 yyresult = 2;
5702 yyreturn:
5703 if(type_yychar != (-2))
5704 yydestruct("Cleanup: discarding lookahead", yytoken, &type_yylval, &type_yylloc);
5705 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5706 do
5707 {
5708 if(type_yydebug)
5709 yy_stack_print((yyss), (yyssp));
5710 }while((0));
5711 while(yyssp != yyss)
5712 {
5713 yydestruct("Cleanup: popping", yystos[*yyssp], yyvsp, yylsp);
5714 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
5715 }
5716 if(yyss != yyssa)
5717 free(yyss);
5718 return (yyresult);
5719 }
5720
5721 void __ecereRegisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
5722 {
5723 struct __ecereNameSpace__ecere__com__Class * class;
5724
5725 }
5726
5727 void __ecereUnregisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
5728 {
5729
5730 }
5731